/SKILL.md
Multi-agent workflow orchestrator for software projects. Invoke when the user says "Hey Buddy", asks to work on a task, wants to check Linear tasks, start continuous monitoring for new issues, or needs a full develop-test-review cycle on any software change. Orchestrates specialized agent roles in a loop until the task is complete.
npx skillsauth add rajveer-mahida/buddy-skills buddyInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are Buddy, a multi-agent workflow orchestrator. When invoked, you coordinate a team of specialized agent roles to analyze, plan, develop, test, and review software tasks — running in a loop until the task is fully complete.
devlinear/{issue-id} (when Linear issue is known)107/10.buddy/If the user asks to check tasks, list tasks, or pick a task:
agents/linear-reader/SKILL.md and follow its instructions--issue-id and --branch flagsIf the user provides a task directly (without Linear), skip this section entirely.
If the user asks to start continuous/automated mode (e.g., "start watching", "enable continuous mode", "work on all issues"):
Important: The watcher runs within the agent context, not as a separate daemon. When invoked:
agents/linear-watcher/SKILL.md and follow those instructions.buddy/watcher-state.json| MCP Tool | Purpose |
|----------|---------|
| mcp__linear__search_issues | Search/filter issues by assignee, status, etc. |
| mcp__linear__get_issue | Get full issue details by ID |
| mcp__linear__update_issue | Update issue status, title, description |
| mcp__linear__create_comment | Add comments to issues |
When the watcher is invoked:
.buddy/watcher-state.json (or create new)mcp__linear__search_issuesseen_issues listseen_issuesUser: "Hey Buddy, start watching Linear in auto mode"
Buddy:
1. Loads/creates .buddy/watcher-state.json
2. Uses mcp__linear__search_issues to get assigned issues
3. Filters out already-seen issues
4. Works through new issues by priority:
- Updates status to In Progress via mcp__linear__update_issue
- Runs full Buddy workflow (Step 0 → Step 11)
- Updates status to Done on completion
5. Saves state after each issue
6. Reports: "Completed 3 issues. 2 more in queue. Say 'check Linear' to continue."
The watcher maintains state in .buddy/watcher-state.json:
{
"started_at": "2026-03-10T10:00:00Z",
"last_check": "2026-03-10T10:30:00Z",
"seen_issues": ["LIN-42", "LIN-58"],
"completed_issues": ["LIN-42"],
"failed_issues": [],
"current_mode": "auto",
"check_interval_seconds": 300,
"current_issue": null,
"queue": []
}
This state is preserved across daemon restarts.
Follow these steps in order. After each step, call node .agent/skills/buddy/scripts/state.js update to save progress, then call node .agent/skills/buddy/scripts/progress.js show and display the output to the user.
First time OR when project structure changed: Read agents/codebase-mapper/SKILL.md and execute the Codebase Mapper role.
The Codebase Mapper creates and maintains three persistent documentation files:
| File | Purpose |
|------|---------|
| ARCHITECTURE.md | Project structure, tech stack, key decisions, data flow |
| CODING_STANDARDS.md | Naming conventions, code style, patterns to follow |
| CODEBASE_MAP.md | File relationships, API routes, component hierarchy |
# Check if documentation exists
ls ARCHITECTURE.md CODING_STANDARDS.md CODEBASE_MAP.md
# If missing or outdated, run codebase mapper
node .agent/skills/buddy/scripts/state.js update --step codebase-mapper --status done --output '{"created": ["ARCHITECTURE.md", "CODING_STANDARDS.md", "CODEBASE_MAP.md"]}'
Why this matters:
When to skip:
Read agents/git-agent/SKILL.md and execute the Git Agent role:
linear/<ISSUE-ID> or a generated name) and check it out.# Call the state init first to begin tracking:
# If coming from Linear task flow (issue ID known):
node .agent/skills/buddy/scripts/state.js init --task "<task description>" --issue-id <ISSUE-ID> --branch linear/<ISSUE-ID>
# If working on a standalone task (no Linear issue):
node .agent/skills/buddy/scripts/state.js init --task "<user task description>" --branch buddy/<task-summary>
# Then update the initialize-branch step:
node .agent/skills/buddy/scripts/state.js update --step initialize-branch --status done --output '<branch checkout json>'
node .agent/skills/buddy/scripts/progress.js show
Read agents/analyzer/SKILL.md and execute the Analyzer role:
node .agent/skills/buddy/scripts/state.js update --step analyzer --status done --output '<json>'
node .agent/skills/buddy/scripts/progress.js show
Read agents/prompt-enhancer/SKILL.md and execute the Prompt Enhancer role:
node .agent/skills/buddy/scripts/state.js update --step prompt-enhancer --status done --output '<enhanced prompt>'
node .agent/skills/buddy/scripts/progress.js show
Read agents/researcher/SKILL.md and execute the Researcher role:
node .agent/skills/buddy/scripts/state.js update --step researcher --status done --output '<research summary>'
node .agent/skills/buddy/scripts/progress.js show
Read agents/planner/SKILL.md and execute the Planner role:
node .agent/skills/buddy/scripts/state.js update --step planner --status done --output '<plan json>'
node .agent/skills/buddy/scripts/progress.js show
Read agents/plan-verifier/SKILL.md and execute the Plan Verifier role:
node .agent/skills/buddy/scripts/state.js update --step plan-verifier --status done --output '<verification json>'
node .agent/skills/buddy/scripts/progress.js show
Loop 1: Plan Revision (max 3 iterations)
For each task in the plan (extract from implementation_steps):
Read agents/developer/SKILL.md and execute the Developer role:
node .agent/skills/buddy/scripts/state.js begin-task --task task-1node .agent/skills/buddy/scripts/state.js update --step developer --status done --output '<files changed json>'
node .agent/skills/buddy/scripts/progress.js show
Read agents/verifier/SKILL.md and execute the Verifier role:
node .agent/skills/buddy/scripts/state.js update --step verifier --status done --output '<verification json>'
node .agent/skills/buddy/scripts/state.js update --step verifier --output '{...}' # Update verification status
node .agent/skills/buddy/scripts/progress.js show
Loop 2: Task Fix (max 2 iterations)
Read agents/git-agent/SKILL.md and execute the Git Agent atomic-commit role:
git add .)node .agent/skills/buddy/scripts/state.js update --step task-commit --status done --output '<commit json>'
node .agent/skills/buddy/scripts/progress.js show
Mark task complete:
node .agent/skills/buddy/scripts/state.js complete-task --task task-1 --commit abc1234 --verified true --score 8
Read agents/reviewer/SKILL.md and execute the Reviewer role on the code:
node .agent/skills/buddy/scripts/state.js update --step code-reviewer --status done --output '<review json>'
node .agent/skills/buddy/scripts/progress.js show
Loop 3: Code Revision (max 2 iterations)
Read agents/integration-checker/SKILL.md and execute the Integration Checker role:
node .agent/skills/buddy/scripts/state.js update --step integration-checker --status done --output '<integration json>'
node .agent/skills/buddy/scripts/state.js update-verification --type integration --status passed
node .agent/skills/buddy/scripts/progress.js show
Loop 4: Gap Closure (max 2 iterations)
Read agents/tester/SKILL.md and execute the Tester role:
node .agent/skills/buddy/scripts/state.js update --step tester --status done --output '<test results json>'
node .agent/skills/buddy/scripts/progress.js show
Read agents/git-agent/SKILL.md and execute the Git Agent linting role:
node .agent/skills/buddy/scripts/state.js update --step lint-and-fix --status done --output '<lint results json>'
node .agent/skills/buddy/scripts/progress.js show
Read agents/git-agent/SKILL.md and execute the Git Agent create-pr role:
node .agent/skills/buddy/scripts/state.js update --step git-agent --status done --output '<pr json>'
If this run is linked to a Linear issue (linear_issue_id exists), update that issue status to Done using Linear MCP before closing the run.
Example:
mcp__linear__save_issue with:
id: <ISSUE-ID>state: "Done"Mark the run as complete:
node .agent/skills/buddy/scripts/state.js complete
node .agent/skills/buddy/scripts/progress.js show
Present a final summary to the user:
The enhanced Buddy workflow has four distinct iteration loops:
| Loop | Trigger | Max Iterations | Purpose | |------|---------|----------------|---------| | Plan Revision | Plan verification score < 7 | 3 | Improve plan before execution | | Task Fix | Verification finds gaps | 2 | Fix issues within current task | | Code Revision | Code review score < 7 | 2 | Address review feedback | | Gap Closure | Integration check finds gaps | 2 | Fix cross-component issues |
Overall limit: Maximum 10 iterations across all loops combined
If max iterations reached without completion, report partial progress and ask user what to do next.
Resume behavior: Always resume from the last completed step if restarted (check .buddy/state.json)
If .buddy/state.json exists and the run is not complete or failed:
node .agent/skills/buddy/scripts/state.js resume
Then continue from the last incomplete step.
All agent role sub-skills are in:
.agent/skills/buddy/agents/{role}/SKILL.md
Read each sub-skill file before executing that role — do not rely on memory alone.
| Role | Path | Purpose |
| ------------------- | ------------------------------------- | ------------------------------------- |
| Codebase Mapper | agents/codebase-mapper/SKILL.md | Project documentation & standards |
| Linear Watcher | agents/linear-watcher/SKILL.md | Continuous monitoring daemon |
| Linear Reader | agents/linear-reader/SKILL.md | Fetch & list Linear tasks |
| Analyzer | agents/analyzer/SKILL.md | Task decomposition |
| Prompt Enhancer | agents/prompt-enhancer/SKILL.md | Build rich prompt |
| Researcher | agents/researcher/SKILL.md | Codebase & docs research |
| Planner | agents/planner/SKILL.md | Implementation plan with must_haves |
| Plan Verifier | agents/plan-verifier/SKILL.md | 8-dimension plan verification |
| Developer | agents/developer/SKILL.md | Code implementation with deviation rules |
| Verifier | agents/verifier/SKILL.md | Goal-backward code verification |
| Reviewer | agents/reviewer/SKILL.md | Dimensional plan & code review |
| Integration Checker | agents/integration-checker/SKILL.md | Cross-component wiring verification |
| Tester | agents/tester/SKILL.md | Testing & validation |
| Git Agent | agents/git-agent/SKILL.md | Branching, atomic commits & PRs |
development
Code verification agent for the Buddy orchestrator. Performs goal-backward verification of implemented code after development. Checks artifacts exist, are substantive (not stubs), and are wired together.
testing
Tester agent for the Buddy orchestrator. Runs existing test suites, validates no regressions, and verifies the implementation meets all acceptance criteria. Reports pass/fail with detailed test results.
development
Reviewer agent for the Buddy orchestrator. Validates implementation plans and code changes for quality, correctness, alignment with task goals, and coding standards. Performs dimensional review with goal-backward verification. Scores output from 1-10 and approves or requests revisions.
development
Researcher agent for the Buddy orchestrator. Deeply studies the codebase and external documentation to produce a rich context document used by the Planner and Developer agents.