Skip to content

weselben/RooForge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

89 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🎯 RooForge

A structured multi-agent orchestration system for Zoo Code

A hierarchical pipeline of specialized AI modes β€” from strategic planning to atomic execution.

License: Apache 2.0 GitHub release Conventional Commits


Jump to: Overview Β· Pipeline Β· Modes Β· Commands Β· Native Rules Β· Installation Β· MCP Servers Β· Contributing


⚠️ Prerequisites

Before installing, enable the Run Slash Command experimental feature in Zoo Code β€” the entire pipeline depends on it:

  1. Open Zoo Code settings (gear icon)
  2. Go to Experimental Settings
  3. Enable "Run Slash Command"
  4. Restart VS Code if prompted

Without this setting, agents cannot execute /plan, /delegate, /blueprint, or any other slash command. See run_slash_command docs for details.


πŸ“‹ Overview

This project provides a curated set of custom mode export files, slash commands, and a Forge skill that together define a disciplined, multi-layered agent orchestration workflow for Zoo Code. Each mode is a specialist with a clearly defined role, connected by standardized commands that cascade into each other to eliminate duplication.

πŸ”„ The Pipeline

1. Top-Level Orchestration Tree

flowchart TD
    U["πŸ‘€ User"] -->|"request"| O["🎯 Orchestrator"]

    O -->|"/forge-init"| INIT["πŸ’» Code<br/>init"]
    INIT -->|"workspace ready"| O

    O -->|"/plan [PLAN]"| SO_P["βš™οΈ Subtask Orchestrator<br/>planning"]
    SO_P -->|"Blueprint"| O

    O -->|"/execute [EXEC]"| SO_E["βš™οΈ Subtask Orchestrator<br/>execution"]
    SO_E -->|"phase result"| O
    O -->|"/delegate"| G["πŸ“¦ Git<br/>commit phase"]
    G -->|"committed"| O

    O -->|"all phases done"| F["🎯 Orchestrator<br/>finalize"]
    F -->|"result"| U

    style U fill:#95A5A6,color:#fff,stroke:#7F8C8D
    style O fill:#4A90D9,color:#fff,stroke:#2C5F8A
    style F fill:#4A90D9,color:#fff,stroke:#2C5F8A
    style INIT fill:#8E44AD,color:#fff,stroke:#5B2D6E
    style SO_P fill:#27AE60,color:#fff,stroke:#1A7A42
    style SO_E fill:#27AE60,color:#fff,stroke:#1A7A42
    style G fill:#F39C12,color:#fff,stroke:#B8750E
Loading

2. Planning Phase Detail

flowchart TD
    SO["βš™οΈ Subtask Orchestrator"] -->|"/clarify"| U["πŸ‘€ User"]
    U -->|"answers"| SO
    SO -->|"/research"| A["πŸ” Ask"]
    A -->|"State of Intel"| SO
    SO -->|"/delegate"| AR["πŸ—οΈ Architect"]
    AR -->|"/clarify"| U
    U -->|"scope"| AR
    AR -->|"/blueprint"| B["πŸ“„ Blueprint"]
    B -->|"summary"| SO

    style U fill:#95A5A6,color:#fff,stroke:#7F8C8D
    style SO fill:#27AE60,color:#fff,stroke:#1A7A42
    style A fill:#7B68EE,color:#fff,stroke:#4B3F8A
    style AR fill:#E67E22,color:#fff,stroke:#A05A15
    style B fill:#2C3E50,color:#fff,stroke:#1A252F
Loading

3. Execution Phase Detail

flowchart TB
    O["🎯 Orchestrator"] -->|"/execute"| SO["βš™οΈ Subtask Orchestrator"]
    SO -->|"/delegate"| C["πŸ’» Code"]
    C -->|"/debug"| D["πŸͺ² Debug"]
    D -->|"fix"| C
    C -->|"done"| SO
    SO -->|"phase result"| O
    O -->|"/delegate"| G["πŸ“¦ Git"]
    G -->|"committed"| O
    SO -->|"/debug"| D
    D -->|"bugfix result"| SO

    style O fill:#4A90D9,color:#fff,stroke:#2C5F8A
    style SO fill:#27AE60,color:#fff,stroke:#1A7A42
    style C fill:#8E44AD,color:#fff,stroke:#5B2D6E
    style D fill:#C0392B,color:#fff,stroke:#8A2520
    style G fill:#F39C12,color:#fff,stroke:#B8750E
Loading

Pipeline Phases

Phase Owner Purpose
0 - Init Code Create .memory/, .gitignore, AGENTS.md, and initialize git if missing
1 - Plan Subtask Orchestrator Clarify scope, research intel, delegate to Architect, return Blueprint
2 - Execute Subtask Orchestrator Decompose Blueprint tasks and delegate to Code/Debug
3 - Commit Git Commit each completed execution phase before the next phase starts

Working Memory

All modes share .memory/ as working memory β€” gitignored, local only. Read via codebase_search, write via /memory.

File Pattern Purpose Behavior
.memory/phase-{N}-{name}.md One file per Blueprint phase Append only β€” never duplicate
.memory/research-{topic}-{date}.md One file per research run (ask mode) New file per topic
.memory/blocker-{desc}.md One file per blocker Standalone, resolvable
.memory/memory.md General fallback (no phase context) Append only
.memory/blueprint-{date}.md Auto-created by /blueprint Overwrite if same date

πŸ€– Modes

Mode File Description
Orchestrator agents/orchestrator-export.yaml Strategic entry point. Navigates Blueprint phases, delegates to subtask-orchestrator, and commits after each phase via Git.
Ask agents/ask-export.yaml Intelligence specialist. Performs web research, PDF acquisition, codebase analysis, and generates "State of Intel" reports.
Architect agents/architect-export.yaml Technical leader. Creates detailed blueprints, system designs, and structured plans from gathered intelligence.
Subtask Orchestrator agents/subtask-orchestrator-export.yaml Dual-role specialist. (1) Planning: coordinates clarify β†’ research β†’ architect to produce Blueprint. (2) Execution: decomposes tasks into atomic subtasks for Code/Debug.
Code agents/code-export.yaml Implementation specialist. Writes, modifies, and refactors code. Delegates errors to Debug mode.
Git agents/git-export.yaml Version control specialist. Handles branch creation (on main), pull/sync, conventional commits with user identity.

⚑ Slash Commands

Standardized tool call formats that cascade into each other, eliminating duplication across agent files.

Base Commands

Command Purpose
/complete attempt_completion format β€” run when work is done
/delegate new_task format β€” run before delegating to any mode

Flow Commands

Command Purpose Used By
/clarify User clarification via ask_followup_question (loads grill-me) Architect, Subtask Orchestrator
/blueprint Phased planning methodology β€” phases with individual tasks Architect
/planning Full planning lifecycle β€” clarify, research, architect, Blueprint Subtask Orchestrator
/finalize Human-readable final output Orchestrator

Tool Commands

Command Purpose Used By
/web Web search + URL reader via SearXNG MCP Ask
/pdf PDF download via curl MCP + read via pdf-reader-mcp Ask
/git Git operations (MCP-first, CLI fallback) Git

Delegation Commands (cascade to /delegate)

Command Target Mode Purpose
/research ask Intel gathering
/plan subtask-orchestrator Planning lifecycle (clarify β†’ research β†’ architect β†’ Blueprint)
/execute subtask-orchestrator Phase-based task execution
/debug debug Error resolution
/memory self (direct edit) Phase-based memory persistence
/forge-init code Project initialization

See the Slash Commands section above for the command tables and cascading architecture.

🧠 Skills

All modes load skills/forge/SKILL.md on startup. It immediately loads skills/caveman/SKILL.md for token-efficient communication.

Skill Trigger Purpose
skills/forge/SKILL.md Startup, all modes Pipeline orientation: flow, command registry, mode roles, conventions
skills/caveman/SKILL.md Auto-loaded by forge Token-efficient communication (full intensity default)
skills/grill-me/SKILL.md /clarify command Relentless user interview β€” stress-test every design decision until shared understanding reached. Mandatory on every /clarify invocation. (source)
skills/planning-and-task-breakdown/SKILL.md /blueprint command Structured planning methodology for phased task breakdown.
skills/deep-research/SKILL.md Auto-loaded by ask mode (after forge) Exhaustive deep research protocol β€” 10+ iteration search loop, recursive reflection, markdown-native reports. Source: moweme
skills/conventional-commits/SKILL.md /git command Conventional Commits v1.0.0 format reference β€” types, SemVer mapping, breaking changes, revert rules

πŸ“ Native Rules

Zoo Code native rules installed to ~/.roo/rules-git/. Loaded automatically when the rule's file pattern matches.

Rule Install Path Purpose
rules/git/mandatory-commit-guardrail.md ~/.roo/rules-git/ Git commit subject enforcement β€” anti-pattern detection, pipeline jargon ban, DO/DON'T guardrails. Supplements /git.

πŸš€ Installation

Install / Update (CLI)

git clone https://github.com/weselben/RooForge.git
cd RooForge
mkdir -p ~/.roo/commands ~/.roo/skills ~/.roo/rules-git ~/.roo/mcp
cp -rf commands/* ~/.roo/commands/
# Only remove known RooForge skills β€” never rm -rf ~/.roo/skills/* to protect user-installed skills
rm -rf ~/.roo/skills/caveman ~/.roo/skills/forge ~/.roo/skills/grill-me ~/.roo/skills/planning-and-task-breakdown ~/.roo/skills/conventional-commits
# Only remove known RooForge rules β€” never rm -rf ~/.roo/rules-git/* to protect user-installed rules
rm -rf ~/.roo/rules-git/mandatory-commit-guardrail.md
rm -f ~/.roo/mcp/pdf-curl-server.sh
cp -rf skills/* ~/.roo/skills/
cp -rf rules/git/* ~/.roo/rules-git/
cp -rf mcp/* ~/.roo/mcp/
chmod +x ~/.roo/mcp/pdf-curl-server.sh

To install a specific version, clone by tag instead:

git clone --branch v1.2.3 --depth 1 https://github.com/weselben/RooForge.git
cd RooForge
mkdir -p ~/.roo/commands ~/.roo/skills ~/.roo/rules-git ~/.roo/mcp
cp -rf commands/* ~/.roo/commands/
# Only remove known RooForge skills β€” never rm -rf ~/.roo/skills/* to protect user-installed skills
rm -rf ~/.roo/skills/caveman ~/.roo/skills/forge ~/.roo/skills/grill-me ~/.roo/skills/planning-and-task-breakdown ~/.roo/skills/conventional-commits
# Only remove known RooForge rules β€” never rm -rf ~/.roo/rules-git/* to protect user-installed rules
rm -rf ~/.roo/rules-git/mandatory-commit-guardrail.md
rm -f ~/.roo/mcp/pdf-curl-server.sh
cp -rf skills/* ~/.roo/skills/
cp -rf rules/git/* ~/.roo/rules-git/
cp -rf mcp/* ~/.roo/mcp/
chmod +x ~/.roo/mcp/pdf-curl-server.sh

Why remove specific skills, not all? The rm -rf targets only known RooForge skills (caveman, conventional-commits, forge, grill-me, planning-and-task-breakdown). This prevents accidental deletion of user-installed skills (e.g. via npx skills add or manual installs). If you add a new skill to this repo, you must add it to the rm -rf line in both install commands above.

See Zoo Code Slash Commands docs, Skills docs, and Rules docs for details on global directories.

Import Agent Modes

  1. Download the export YAML files from the latest release.
  2. Open Zoo Code in VS Code.
  3. Navigate to Zoo Code Settings β†’ Custom Modes.
  4. Click Import and select the downloaded .yaml file(s).
  5. The modes will appear in your mode selector.

Tip: Import all six modes for the full orchestration pipeline experience.

Configure MCP Servers

See MCP Servers below for required server setup.

πŸͺŸ Windows Installation (PowerShell)
# Clone the repo
$repo = "$env:USERPROFILE\RooForge"
if (-not (Test-Path $repo)) {
    git clone https://github.com/weselben/RooForge.git $repo
}

# Create directories and copy files
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.roo\commands" | Out-Null
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.roo\skills" | Out-Null
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.roo\rules-git" | Out-Null
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.roo\mcp" | Out-Null
# Copy commands (flat files)
Copy-Item -Path "$repo\commands\*" -Destination "$env:USERPROFILE\.roo\commands\" -Force

# Only remove known RooForge skills β€” never rm -rf ~/.roo/skills/* to protect user-installed skills
Remove-Item -Recurse -Force "$env:USERPROFILE\.roo\skills\caveman" -ErrorAction SilentlyContinue
Remove-Item -Recurse -Force "$env:USERPROFILE\.roo\skills\forge" -ErrorAction SilentlyContinue
Remove-Item -Recurse -Force "$env:USERPROFILE\.roo\skills\grill-me" -ErrorAction SilentlyContinue
Remove-Item -Recurse -Force "$env:USERPROFILE\.roo\skills\planning-and-task-breakdown" -ErrorAction SilentlyContinue
Remove-Item -Recurse -Force "$env:USERPROFILE\.roo\skills\conventional-commits" -ErrorAction SilentlyContinue

# Copy skills (with subdirectories β€” Get-ChildItem avoids Copy-Item wildcard flattening bug)
Get-ChildItem "$repo\skills" | ForEach-Object {
    Copy-Item -Path $_.FullName -Destination "$env:USERPROFILE\.roo\skills\" -Recurse -Force
}

# Only remove known RooForge rules
Remove-Item -Recurse -Force "$env:USERPROFILE\.roo\rules-git\mandatory-commit-guardrail.md" -ErrorAction SilentlyContinue

# Copy rules and mcp (flat files)
Copy-Item -Path "$repo\rules\git\*" -Destination "$env:USERPROFILE\.roo\rules-git\" -Force
Copy-Item -Path "$repo\mcp\*" -Destination "$env:USERPROFILE\.roo\mcp\" -Force

Windows users: The curl-download MCP server also ships as a PowerShell script (pdf-curl-server.ps1). Copy it alongside the shell script and use the Windows config shown in mcp.md.

πŸ”„ Automated Releases

This repository uses automated semantic versioning powered by Conventional Commits:

flowchart LR
    P["⬆️ Push to main"] --> W["βš™οΈ GitHub Actions Workflow"]
    W --> V["πŸ”’ Compute next version<br/>from commit messages"]
    V --> T["🏷️ Create git tag<br/>(e.g. v1.2.3)"]
    T --> R["πŸš€ Publish GitHub Release<br/>with YAML assets"]

    style P fill:#95A5A6,color:#fff,stroke:#7F8C8D
    style W fill:#4A90D9,color:#fff,stroke:#2C5F8A
    style V fill:#E67E22,color:#fff,stroke:#A05A15
    style T fill:#27AE60,color:#fff,stroke:#1A7A42
    style R fill:#8E44AD,color:#fff,stroke:#5B2D6E
Loading

Commit Convention

Prefix Version Bump Example
feat: Minor feat: add debug mode export
fix: Patch fix: correct orchestrator role definition
feat!: or BREAKING CHANGE: Major feat!: redesign pipeline architecture
docs: None docs: update README
style: None style: fix indentation in agent yaml
refactor: None refactor: simplify subtask logic
perf: None perf: optimize memory search
test: None test: add validation for exports
build: None build: update release workflow
ci: None ci: add linting step
chore: None chore: update workflow
revert: None revert: undo broken refactor

πŸ”Œ MCP Servers

The orchestration pipeline requires the following MCP (Model Context Protocol) servers for full functionality. These servers extend the capabilities of specific modes in the pipeline.

Server Required By Purpose
SearXNG Ask Web search & URL reading
curl-download Ask PDF download from URLs (1 tool)
pdf-reader-mcp Ask Extract and parse text from PDFs (7 tools)
Git MCP Git Git operations (CLI fallback)

πŸ’‘ See mcp.md for full setup instructions, configuration details, and usage examples.

πŸ“ Repository Structure

.
β”œβ”€β”€ .github/
β”‚   β”œβ”€β”€ workflows/
β”‚   β”‚   └── release.yml              # Auto-versioning & release workflow
β”‚   └── ISSUE_TEMPLATE/              # Bug reports, features, questions
β”œβ”€β”€ agents/
β”‚   β”œβ”€β”€ orchestrator-export.yaml     # Orchestrator mode
β”‚   β”œβ”€β”€ subtask-orchestrator-export.yaml  # Subtask Orchestrator mode
β”‚   β”œβ”€β”€ architect-export.yaml        # Architect mode
β”‚   β”œβ”€β”€ ask-export.yaml              # Ask (research) mode
β”‚   β”œβ”€β”€ code-export.yaml             # Code (implementation) mode
β”‚   └── git-export.yaml              # Git mode
β”œβ”€β”€ commands/
β”‚   β”œβ”€β”€ complete.md                  # /complete β€” attempt_completion format (includes blocked variant)
β”‚   β”œβ”€β”€ delegate.md                  # /delegate β€” new_task format
β”‚   β”œβ”€β”€ clarify.md                   # /clarify β€” user clarification protocol
β”‚   β”œβ”€β”€ blueprint.md                 # /blueprint β€” phased planning methodology
β”‚   β”œβ”€β”€ planning.md                  # /planning β€” SO planning lifecycle (clarify β†’ research β†’ architect)
β”‚   β”œβ”€β”€ finalize.md                  # /finalize β€” human-readable output
β”‚   β”œβ”€β”€ web.md                       # /web β€” web search + URL reader
β”‚   β”œβ”€β”€ pdf.md                       # /pdf β€” PDF download via curl MCP
β”‚   β”œβ”€β”€ git.md                       # /git β€” git operations (MCP + CLI + branch setup)
β”‚   β”œβ”€β”€ research.md                  # /research β€” intel delegation
β”‚   β”œβ”€β”€ plan.md                      # /plan β€” routing to SO for planning
β”‚   β”œβ”€β”€ execute.md                   # /execute β€” phase-based task execution
β”‚   β”œβ”€β”€ debug.md                     # /debug β€” error resolution
β”‚   β”œβ”€β”€ memory.md                    # /memory β€” phase-based memory persistence
β”‚   └── forge-init.md                # /forge-init β€” project initialization
β”œβ”€β”€ rules/
β”‚   └── git/
β”‚       └── mandatory-commit-guardrail.md  # Git commit guardrails (installed to ~/.roo/rules-git/)
β”œβ”€β”€ skills/
β”‚   β”œβ”€β”€ forge/
β”‚   β”‚   β”œβ”€β”€ README.md                # Forge skill overview
β”‚   β”‚   └── SKILL.md                 # Pipeline orientation skill
β”‚   β”œβ”€β”€ caveman/
β”‚   β”‚   └── SKILL.md                 # Token-efficient communication skill
β”‚   β”œβ”€β”€ deep-research/
β”‚   β”‚   └── SKILL.md                 # Deep research protocol skill (moweme)
β”‚   β”œβ”€β”€ conventional-commits/
β”‚   β”‚   └── SKILL.md                 # Conventional Commits v1.0.0 spec reference
β”‚   β”œβ”€β”€ grill-me/
β”‚   β”‚   └── SKILL.md                 # Relentless user interview skill
β”‚   └── planning-and-task-breakdown/
β”‚       └── SKILL.md                 # Planning methodology skill
β”œβ”€β”€ mcp/
β”‚   β”œβ”€β”€ pdf-curl-server.sh          # POSIX shell script for PDF download MCP
β”‚   └── pdf-curl-server.ps1         # PowerShell script for PDF download MCP (Windows)
β”œβ”€β”€ mcp.md                          # MCP server configuration (SearXNG + curl-download + pdf-reader-mcp + Git MCP)
β”œβ”€β”€ CONTRIBUTING.md                  # Contribution guidelines
β”œβ”€β”€ LICENSE                          # Apache License 2.0
└── README.md                        # This file

🀝 Contributing

We welcome community involvement! However, please note that pull requests are not automatically accepted. All contributions go through an evaluation process.

See CONTRIBUTING.md for full details on:

  • Our PR evaluation process
  • Conventional Commits (extended) requirements
  • Feature branch workflow
  • Testing expectations

πŸ“„ License

Licensed under the Apache License 2.0.

Copyright 2026 weselben

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

⭐ Acknowledgments

  • Built for Zoo Code - an AI-powered coding assistant for VS Code.
  • Inspired by hierarchical task decomposition and multi-agent orchestration patterns.
  • Caveman by JuliusBrussee - token-efficient communication skill for AI agents.

About

A structured multi-agent orchestration stack for Roo Code - hierarchical pipeline of specialized AI modes from strategic planning to atomic execution, with automated semantic versioning and releases. Runs way past 48 Hrs with latest long running Models!

Topics

Resources

Contributing

Stars

Watchers

Forks

Releases

Contributors

Languages