feat: add hammer-dashboard skill
API reference, task workflow, deployment docs, project management rules. Ensures consistent task tracking and documentation.
This commit is contained in:
115
skills/hammer-dashboard/SKILL.md
Normal file
115
skills/hammer-dashboard/SKILL.md
Normal file
@@ -0,0 +1,115 @@
|
||||
---
|
||||
name: hammer-dashboard
|
||||
description: Manage tasks, projects, and progress in Hammer Dashboard (dash.donovankelly.xyz). Use when creating tasks, updating task status, adding progress notes, managing projects, assigning work, or checking what to work on. Also use for any task queue or project management operations.
|
||||
---
|
||||
|
||||
# Hammer Dashboard
|
||||
|
||||
Hammer Dashboard is the task management system at `dash.donovankelly.xyz`. All work is tracked here — tasks, projects, progress notes, assignments.
|
||||
|
||||
## Rules
|
||||
|
||||
1. **Every piece of work gets a task.** If Donovan asks for something, create a task.
|
||||
2. **Update progress as you work.** Add progress notes via the API after each meaningful step.
|
||||
3. **Keep projects documented.** Every project should have context (architecture, repos, credentials refs, decisions).
|
||||
4. **Assign yourself** when starting work. Set `assigneeName: "Hammer"` and `assigneeId: "1HltUpL3R0qZkVxIu0oQ3UoqBCHuuMpV"`.
|
||||
5. **Build and test before pushing.** Run `bun run build` or equivalent before git push.
|
||||
6. **Deploy after pushing.** Trigger Dokploy deploy via API.
|
||||
7. **Mark tasks done** when complete. Don't leave stale active tasks.
|
||||
|
||||
## API Reference
|
||||
|
||||
Base URL: `https://dash.donovankelly.xyz/api`
|
||||
Auth: `Authorization: Bearer 62490648ae3f8712e2a30eb0ca46ac2f`
|
||||
|
||||
### Tasks
|
||||
|
||||
```bash
|
||||
# List all tasks
|
||||
GET /tasks
|
||||
|
||||
# Get single task (by UUID, task number, or HQ-N)
|
||||
GET /tasks/:id
|
||||
|
||||
# Create task
|
||||
POST /tasks
|
||||
{
|
||||
"title": "string (required)",
|
||||
"description": "string",
|
||||
"source": "donovan|david|hammer|heartbeat|cron|other",
|
||||
"priority": "critical|high|medium|low",
|
||||
"status": "queued|active|blocked|completed|cancelled",
|
||||
"projectId": "uuid",
|
||||
"assigneeId": "string",
|
||||
"assigneeName": "string",
|
||||
"dueDate": "ISO datetime",
|
||||
"estimatedHours": number,
|
||||
"recurrence": { "frequency": "daily|weekly|biweekly|monthly", "autoActivate": bool }
|
||||
}
|
||||
|
||||
# Update task
|
||||
PATCH /tasks/:id
|
||||
# Same fields as create, all optional
|
||||
|
||||
# Add progress note
|
||||
POST /tasks/:id/notes
|
||||
{ "note": "string" }
|
||||
|
||||
# Manage subtasks
|
||||
POST /tasks/:id/subtasks { "title": "string" }
|
||||
PATCH /tasks/:id/subtasks/:subtaskId { "completed": bool }
|
||||
DELETE /tasks/:id/subtasks/:subtaskId
|
||||
|
||||
# Reorder queue
|
||||
PATCH /tasks/reorder
|
||||
{ "ids": ["uuid", ...] }
|
||||
```
|
||||
|
||||
### Projects
|
||||
|
||||
```bash
|
||||
# List projects
|
||||
GET /projects
|
||||
|
||||
# Get project
|
||||
GET /projects/:id
|
||||
|
||||
# Create project
|
||||
POST /projects
|
||||
{
|
||||
"name": "string (required)",
|
||||
"description": "string",
|
||||
"context": "string (markdown — architecture, credentials refs, decisions)",
|
||||
"repos": ["url", ...],
|
||||
"links": ["url", ...]
|
||||
}
|
||||
|
||||
# Update project
|
||||
PATCH /projects/:id
|
||||
```
|
||||
|
||||
### Velocity Stats
|
||||
|
||||
```bash
|
||||
GET /tasks/stats/velocity
|
||||
# Returns: daily completions (14d), this-week count, avg/week, estimated hours remaining
|
||||
```
|
||||
|
||||
## Task Workflow
|
||||
|
||||
1. **New request** → Create task with appropriate priority and project
|
||||
2. **Starting work** → Set status `active`, assign to self, add progress note
|
||||
3. **Making progress** → Add progress notes after each meaningful step
|
||||
4. **Blocked** → Set status `blocked`, explain in progress note
|
||||
5. **Done** → Set status `completed`, final progress note summarizing what shipped
|
||||
6. **Recurring work** → Set recurrence field; system auto-spawns next instance on completion
|
||||
|
||||
## Dokploy Deployment
|
||||
|
||||
For dashboard changes only. See [references/dokploy.md](references/dokploy.md).
|
||||
|
||||
## Key IDs
|
||||
|
||||
- Hammer assigneeId: `1HltUpL3R0qZkVxIu0oQ3UoqBCHuuMpV`
|
||||
- Dashboard Dokploy compose ID: `kBdwrcZodIRyNIvQ-wrzG`
|
||||
- Task API bearer: `62490648ae3f8712e2a30eb0ca46ac2f`
|
||||
Reference in New Issue
Block a user