brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
run-taskExecute a single Todo task through In Progress to Review, meeting every acceptance criterion with tests and vibe-lint checks. Refuses Planning-status tasks. Invoked as /agiflow:run-task <task>. Uses get_task, update_task, create_task_comment.
Independent GitHub snapshot · Automated classification · Original documentation governs
name: run-task description: "Execute a single Todo task through In Progress to Review, meeting every acceptance criterion with tests and vibe-lint checks. Refuses Planning-status tasks. Invoked as /agiflow:run-task . Uses get_task, update_task, create_task_comment." tags:
Invoked as
/agiflow:run-task. In hosts without slash-prompts, this skill is triggered by matching intent and drives AgiFlow via its MCP tools.
Usage:
/agiflow:run-task <task-slug-or-id> - Execute specific task/agiflow:run-task - List and select from available tasksExamples:
/agiflow:run-task DXX-2 (using slug)/agiflow:run-task 01K8FABMNEJG1XTA9JGHSNFV40 (using ID)/agiflow:run-task (interactive selection)Guardrails
If a task slug/id is provided, load it with get_task; otherwise list available tasks with list_tasks for selection.
Follow the shared AgiFlow project-management guidelines in references/agiflow-agents.md — agent assignment, the task status workflow and transitions, work-unit best practices, and the tags strategy apply to this workflow.
Task Status Workflow
Tasks move through these statuses in order:
Planning → Todo → In Progress → Testing → Review → Done
Exception paths: Blocked (requires human intervention), Cancelled (terminal).
IMPORTANT: Planning Status Guard
This skill ONLY executes tasks in "Todo" or later status. Tasks in "Planning" have NOT been groomed and are NOT ready for execution. Use backlog-grooming to promote Planning tasks to Todo first.
Steps Track these steps as TODOs and complete them one by one.
If task slug/id NOT provided:
list_tasks MCP tool to show available tasks:
status: "Todo" (sorted by priority automatically)If task slug/id IS provided: 4. Use get_task MCP tool with the provided slug/id to retrieve:
5b. PLANNING STATUS GUARD (MANDATORY):
update_task MCP tool to set status to "In Progress".update_task devInfo:
devInfo: {
currentSession: "<current-session-id>",
startedAt: "<timestamp>"
}
For each acceptance criterion:
vibe-lint MCP get-file-design-pattern (MANDATORY)vibe-lint MCP review-code-change (MANDATORY)devInfo with implementation notes:
devInfo: {
filesChanged: ["path/to/file.ts:42"],
testResults: { passed: true, coverage: "85%" },
notes: "Implementation notes here",
currentSession: "<session-id>"
}
update_taskBetween acceptance criteria:
When ALL acceptance criteria are met:
update_task to move status to "Testing"If tests PASS:
If tests FAIL:
retryCount in devInfo:
devInfo: {
...existing,
retryCount: (existing.retryCount ?? 0) + 1,
lastFailureReason: "<description of what failed>"
}
retryCount >= maxRetries (default maxRetries = 2):
update_task to move status to "Blocked"create_task_comment to document the repeated failure and what human intervention is neededretryCount < maxRetries:
update_task to move status back to "Todo"create_task_comment to document the failure reasonAfter tests pass, review all files changed (use git diff).
Draft a PR description for the task (DO NOT create the PR yet - just draft the text):
[TASK-SLUG] Task title (e.g., [DXX-2] Add user authentication)file.ts:42 format)Use update_task to set status to "Review" and save draft PR text and commit message:
{
status: "Review",
devInfo: {
...existing,
draftCommitMessage: "feat(auth): add user authentication\n\n- Add login endpoint with session management\n- Add password validation\n- Add unit tests for auth flow",
draftPr: {
title: "[DXX-2] Add user authentication",
body: "## Summary\n\nImplemented user authentication feature.\n\n## Changes\n\n- Added login endpoint\n- Added session management\n\n## Files Modified\n\n- src/auth/login.ts:42\n- src/auth/session.ts:15\n\n## Test Results\n\nAll tests passing."
},
finalNotes: "All acceptance criteria met. Files changed: [...]. Tests passing.",
completedBy: "<member-id>",
totalDuration: "45 minutes"
}
}
Note on draftCommitMessage: Write a conventional commit message that will be used for the final git commit. Format: type(scope): description with optional body listing changes.
Use create_task_comment to add final summary:
file.ts:42 format)update_task to set status to "Blocked"update_task to update devInfo with blocker details:
devInfo: {
...existing,
blockedReason: "<why the task is blocked>",
blockedBy: "<memberId or 'system'>"
}
create_task_comment on task with blocker information explaining what human intervention is neededReference
get_task to review task details before startinglist_task_comments to see previous progress updatesupdate_task to track devInfo and acceptance criteria progressIntegration with Other Tools
Common Mistakes to Avoid
get_taskbacklog-grooming first)