task-storelisted
Install: claude install-skill app-vitals/shipwright
# Task Store — Skill
Use this skill to interact with the Shipwright task store via its HTTP API.
The task store is a REST service — call it with curl, no script discovery needed.
> **The HTTP API is the only interface.** Never edit the underlying database directly.
> The unit you work with is the **task** (see [task-schema.md](references/task-schema.md)).
---
## Setup
Before using this skill, verify the required environment variables are set:
```bash
echo "URL: ${SHIPWRIGHT_TASK_STORE_URL:-(missing)}"
echo "Token: ${SHIPWRIGHT_TASK_STORE_TOKEN:+(set)}"
```
**`SHIPWRIGHT_TASK_STORE_URL` missing?** Contact your administrator — this URL is provisioned at deployment time and is not something you generate yourself.
**`SHIPWRIGHT_TASK_STORE_TOKEN` missing?** Mint a scoped token directly against the task store, using the admin token (`SHIPWRIGHT_TASK_STORE_ADMIN_TOKEN`):
```bash
# Local / HITL use — omit agentId so the token is unscoped.
curl -sf -X POST "$SHIPWRIGHT_TASK_STORE_URL/tokens" \
-H "Authorization: Bearer $SHIPWRIGHT_TASK_STORE_ADMIN_TOKEN" \
-H "Content-Type: application/json" \
-d '{"label": "my-local-agent"}' | jq .
# Managed Shipwright agent — scope the token to that agent's ID.
curl -sf -X POST "$SHIPWRIGHT_TASK_STORE_URL/tokens" \
-H "Authorization: Bearer $SHIPWRIGHT_TASK_STORE_ADMIN_TOKEN" \
-H "Content-Type: application/json" \
-d '{"label": "my-agent-name", "agentId": "<agent-id>"}' | jq .
```
- **`agentId`** — leave it out of the body