بنقرة واحدة
brain-task
Task management — create, update, list, log, and track progress for spec implementation tasks.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Task management — create, update, list, log, and track progress for spec implementation tasks.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Initialize a .brain-spec/ workspace with directory tree, config, steering documents, and optional CLAUDE.md generation.
Spec lifecycle management — create, interview, list, get, update, delete, and archive feature specifications.
Display a quick overview of the Brain Spec workspace with steering doc status, specs, tasks, and progress.
| name | brain-task |
| description | Task management — create, update, list, log, and track progress for spec implementation tasks. |
| argument-hint | <subcommand> [args] — create|update|list|log|progress |
| allowed-tools | Glob, Read, Write, Edit, Bash |
Create, update, list, and log implementation tasks for specs stored in .brain-spec/tasks/.
/brain-task <subcommand> [arguments]
Subcommands:
create <slug> <title> [--parent <id>] — Create a task for a specupdate <slug> <id> [--status <s>] [--progress <n>] — Update a tasklist <slug> [--status <s>] — List tasks for a speclog <slug> <id> — Log implementation details for a completed taskprogress [slug] — Show aggregated progress for one or all specsParse $ARGUMENTS to determine the subcommand. The first word is the subcommand; remaining words are arguments. Parse --flag value style options.
Tasks are stored in .brain-spec/tasks/{slug}/tasks.json:
{
"specSlug": "string",
"tasks": [
{
"id": "string (hierarchical: 1, 2, 2.1, 2.2)",
"title": "string",
"description": "string",
"status": "pending | in-progress | completed",
"parentTaskId": "string | null",
"acceptanceCriteria": ["string"],
"requirements": ["string"],
"leverage": "string",
"files": ["string"],
"prompt": "string",
"progress": 0,
"notes": "string",
"createdAt": "ISO 8601",
"updatedAt": "ISO 8601"
}
]
}
Logs are written to .brain-spec/tasks/{slug}/logs/{id}.log.md:
# Implementation Log — Task {id}
## Summary
{summary}
## Git Reference
- **Commit**: {commitSha}
- **Branch**: {branch}
- **Date**: {timestamp}
- **Session**: ${CLAUDE_SESSION_ID}
## Files Changed
### Modified
- `{file}`
### Created
- `{file}`
## Code Statistics
- Lines Added: {linesAdded}
- Lines Removed: {linesRemoved}
- Files Changed: {totalFiles}
## Artifacts
### API Endpoints
- **{METHOD}** `{path}` — {purpose}
### Functions
- `{name}` — {purpose}
- Signature: `{signature}`
- Exported: yes/no
- Module: `{module}`
### Classes
- `{name}` — {purpose}
- Methods: {methods}
- Module: `{module}`
### UI Components
- `{name}` — {purpose}
- Props: {props}
- Module: `{module}`
### Integrations
- {from} → {to}
## Notes
{notes}
Only include sections that have content. Omit empty sections.
createUsage: /brain-task create my-feature "Implement login form" or /brain-task create my-feature "Add validation" --parent 1
.brain-spec/tasks/ exists. If not, tell user to run /brain-init..brain-spec/specs/{slug}.meta.json. If not found, error..brain-spec/tasks/{slug}/ directory if it doesn't exist..brain-spec/tasks/{slug}/tasks.json or create a new one if it doesn't exist:
{ "specSlug": "{slug}", "tasks": [] }
--parent <id> if present.status: "pending"progress: 0parentTaskId: from --parent or nullcreatedAt/updatedAt: current ISO timestamptasks.json.updateUsage: /brain-task update my-feature 1 --status in-progress or /brain-task update my-feature 1.2 --progress 75
.brain-spec/tasks/{slug}/tasks.json. If not found, error.--status <pending|in-progress|completed>: Update status. If set to "completed", also set progress to 100.--progress <0-100>: Update progress percentage.--notes <text>: Append to notes.updatedAt timestamp.tasks.json.listUsage: /brain-task list my-feature or /brain-task list my-feature --status pending
.brain-spec/tasks/{slug}/tasks.json. If not found, show "No tasks for spec '{slug}'."--status provided, filter tasks.ID Title Status Progress
──── ─────────────────────── ──────────── ──────────────────
1 Implement login form in-progress ━━━━━━━━━───────── 50%
1.1 Add email validation completed ━━━━━━━━━━━━━━━━━━ 100%
1.2 Add password rules pending ────────────────── 0%
2 Design API endpoints pending ────────────────── 0%
Progress bar: Use ━ for filled and ─ for empty, 18 characters wide. Calculate fill: round(progress / 100 * 18).
Subtasks (IDs containing ".") should be indented with 2 spaces.
After the table, show summary: "{completed}/{total} tasks completed ({percentage}%)"
logUsage: /brain-task log my-feature 1
Create an implementation log for a task, documenting what was done.
.brain-spec/tasks/{slug}/tasks.json. Find the task by ID. If not found, error..brain-spec/tasks/{slug}/logs/ directory if it doesn't exist.git status --porcelain first to determine which path applies. The dirty/clean state changes both the diff range and which commit metadata is meaningful:
git rev-parse --abbrev-ref HEAD — current branchgit diff --name-only (unstaged) and git diff --name-only --cached (staged)git rev-parse HEAD — current commit SHA (the commit that finished the task)git rev-parse --abbrev-ref HEAD — current branchgit log -1 --format=%cI HEAD — that commit's ISO timestampHEAD~1..HEADgit diff --name-only for dirty, git diff --name-only HEAD~1..HEAD for clean) — confirm with the user before saving:
git diff --name-only --diff-filter=A over the same range).brain-spec/tasks/{slug}/logs/{id}.log.md.status to "completed", progress to 100, update updatedAt.tasks.json.progressUsage: /brain-task progress or /brain-task progress my-feature
If a slug is provided:
.brain-spec/tasks/{slug}/tasks.json. Calculate and display progress for that spec.If no slug:
.brain-spec/tasks/*/tasks.json files.For each spec, calculate:
(completed / total * 100) or 0 if no tasksDisplay format:
Single spec:
Progress: my-feature
━━━━━━━━━━━━━━━━━━━━ 60% (3/5 tasks)
Completed: 3 tasks
In Progress: 1 task
Pending: 1 task
Progress bar: 20 characters wide. Use ━ for filled, ─ for empty.
All specs:
Overall Progress
my-feature ━━━━━━━━━━━━━━━━━━━━ 60% (3/5)
api-redesign ━━━━━━━━━━──────────── 25% (1/4)
user-auth ━━━━━━━━━━━━━━━━━━━━ 100% (2/2)
Total: 6/11 tasks completed (55%)