siftcoder Workflow Skill
Full autonomous multi-agent workflow for implementing features.
Description
This skill orchestrates the complete siftcoder workflow: Planning → Coding → QA Review → QA Fix. It manages agent handoffs, state transitions, and auto-continuation.
When to Use
This skill is automatically invoked when:
- •A feature implementation starts
- •Auto-continuation triggers next subtask
- •QA review requires fixes
- •Workflow needs to resume
Instructions
You are the siftcoder workflow orchestrator. You coordinate multiple agents to implement features autonomously.
Workflow States
┌─────────────────────────────────────────────────────────────┐ │ siftcoder WORKFLOW │ ├─────────────────────────────────────────────────────────────┤ │ │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────┐ │ │ │ PLANNING │ -> │ CODING │ -> │ QA │ -> │ DONE │ │ │ └──────────┘ └──────────┘ └──────────┘ └──────┘ │ │ │ │ │ │ │ v v v │ │ [Planner] [Coder] [Reviewer] │ │ │ │ │ v │ │ [QA Fixer] │ │ (if needed) │ │ │ └─────────────────────────────────────────────────────────────┘
Phase 1: Planning
- •
Load Feature Read from
features.jsonto get feature details. - •
Invoke Planner Agent
codeTask: Create implementation plan for feature [ID] Context: - Feature: [title] - Description: [description] - Acceptance Criteria: [criteria] Output: Structured plan with subtasks
- •
Store Plan Save plan to feature's subtasks in
features.json. - •
Transition Update state to
coding, move to first subtask.
Phase 2: Coding (Per Subtask)
- •
Load Subtask Get current subtask from feature.
- •
Invoke Coder Agent
codeTask: Implement subtask [ID] Context: - Subtask: [title] - Feature: [parent feature] - Previous subtasks: [completed subtasks] Constraints: - Follow project patterns - Write tests - Run quality gates
- •
Quality Gates Automatic via PostToolUse hooks:
- •Format code
- •Run linter
- •Type check
- •
Mark Complete Update subtask status to
completed. - •
Auto-Continue Stop hook triggers
should-continue.sh:- •If more subtasks: continue to next
- •If all subtasks done: transition to QA
Phase 3: QA Review
- •
Invoke QA Reviewer
codeTask: Validate feature [ID] implementation Context: - Feature: [title] - Acceptance Criteria: [criteria] - Files Modified: [list] Checks: - All acceptance criteria met - Tests pass - No regressions - Code quality acceptable Output: PASS or FAIL with issues
- •
Handle Result
- •PASS: Transition to completion
- •FAIL: Transition to QA Fix
Phase 4: QA Fix (If Needed)
- •
Invoke QA Fixer
codeTask: Fix issues from QA review Issues: [List of issues from reviewer] Constraints: - Fix ONLY the listed issues - Don't refactor unrelated code - Re-run affected tests Output: Fixes applied
- •
Re-Review Return to QA Review phase.
- •
Iteration Limit Max 3 QA iterations. If still failing:
- •Mark feature as
needs_human_review - •Log issues
- •Notify user
- •Mark feature as
Phase 5: Completion
- •
Update State
- •Mark feature as
completed - •Update
features.json - •Log to
implementation-log.jsonl
- •Mark feature as
- •
Create Checkpoint
- •Git commit with descriptive message
- •Store ref in checkpoints
- •
Update Knowledge
- •Store any new patterns discovered
- •Log any gotchas encountered
- •
Sync to Cloud (Pro Tier)
- •Check if cloud sync is configured
- •Check if auto-sync is enabled
- •If both true:
bash
# Push updated knowledge to cloud siftcoder/scripts/cloud-sync.sh push
- •Display sync status in completion report
- •
Report
code✅ FEATURE COMPLETE: [ID] Subtasks: 5/5 completed QA Iterations: 1 Files Modified: 8 Tests Added: 12 Time: 15 minutes Summary: [brief description of what was implemented]
- •
Auto-Continue to Next Feature If more features in queue and autonomous mode:
- •Load next pending feature
- •Start from Planning phase
State Machine
{
"states": {
"pending": { "next": "planning" },
"planning": { "next": "coding" },
"coding": { "next": "qa_review" },
"qa_review": {
"next": "completed",
"fail": "qa_fix"
},
"qa_fix": { "next": "qa_review" },
"completed": { "terminal": true },
"needs_human_review": { "terminal": true }
}
}
Error Handling
- •
Agent Failure
- •Log error
- •Retry up to 2 times
- •If still failing, pause and notify user
- •
Infinite Loop Detection
- •Track QA issue hashes
- •If same issue appears 3 times, break loop
- •Mark as
needs_human_review
- •
Context Overflow
- •If context getting large, summarize completed work
- •Start fresh agent with summary
Pause/Resume
Pause:
- •Save current state to
current-task.json - •Stop auto-continuation
- •User can use
/siftcoder:statusto check
Resume:
- •Load state from
current-task.json - •Resume from last phase/subtask
- •Continue auto-continuation
Configuration
Read from .claude/siftcoder-state/config.json:
{
"mode": "autonomous",
"autoContinue": true,
"maxIterations": 10,
"maxQARetries": 3,
"autoCommit": true,
"agentModels": {
"planner": "sonnet",
"coder": "sonnet",
"qaReviewer": "sonnet",
"qaFixer": "sonnet"
},
"cloudSync": {
"enabled": false,
"autoSyncOnKnowledgeChange": false,
"autoSyncOnFeatureComplete": false
}
}
Cloud Sync Settings
When cloudSync.enabled = true:
- •Session Start: Execute
cloud-sync.sh pullto get latest knowledge - •Knowledge Add: Trigger
cloud-sync.sh push(ifautoSyncOnKnowledgeChange = true) - •Feature Complete: Trigger
cloud-sync.sh push(ifautoSyncOnFeatureComplete = true)
Check cloud configuration at ~/.config/siftcoder/cloud.toml before sync operations.
Runtime Implementation
This skill includes a minimal skill.ts entry point to satisfy plugin requirements.
The primary value remains in this documentation - see sections above for:
- •Workflow orchestration patterns
- •State management
- •Agent coordination
The runtime entry point can be extended with actual functionality as needed.
Allowed Tools
Read, Write, Edit, Bash, Glob, Grep, Task (for subagents)