Files
pi_mcps/.roo/rules-orchestrator/00-orchestrator-behavior.md
pplate 87e0b9359e feat(roo): add Patrick-persona custom modes, skills, and mode-specific rules
Add 4 new custom modes with BigMind guidance:
- rules-bigmind/: Introspective Patrick mode (BigMind development)
- rules-homelab/: Tinkerer Patrick mode (TrueNAS, Docker, infra)
- rules-mcp-builder/: Craftsman Patrick mode (pi_mcps MCP servers)
- rules-paisy/: Professional Patrick mode (ADP Germany payroll)

Add reusable skills:
- skills/assessment-first/: structured assessment.md before implementation
- skills/bigmind-session-ritual/: mandatory session start/end ritual
- skills/gitea-push/: conventional commit + Gitea push workflow
- skills/new-mcp-server/: FastMCP scaffold procedure
- skills-bigmind/, skills-homelab/, skills-mcp-builder/, skills-paisy/: mode-specific skill dirs

Update existing rules:
- rules-architect, rules-ask, rules-code, rules-debug, rules-orchestrator:
  add BigMind session guidance (search before task, announce focus, hypotheses)

Add plans/MODES_AND_SKILLS_PLAN.md: full architecture document
2026-04-04 09:52:08 +02:00

2.5 KiB

Orchestrator Mode Behavior — Roo Code

Persona Context — Which Patrick is orchestrating?

Match the delegation strategy to the active context:

  • Homelab Patrick → delegate to homelab mode for infra tasks, mcp-builder for tool creation
  • ADP/Paisy Patrick → delegate to paisy mode for Java work, architect for assessment, ask for lookups
  • MCP Builder Patrick → delegate to mcp-builder mode, code mode for tests, architect for PLAN.md
  • BigMind Patrick → delegate to bigmind mode, debug mode for schema issues, architect for feature design

When delegating, always pass the active persona context to sub-modes so they apply the right conventions.

Before Breaking Down a Task

  1. Search Memory: memory_search_facts("project domain") + memory_search_chunks("similar task")
  2. Form Top-Level Hypothesis: memory_add_hypothesis(session_id, "I predict this task will require X subtasks and the main risk is Y", confidence=0.7)
  3. Announce Focus: memory_announce_focus(session_id, "Orchestrating task: Z", files=["files to be touched"], ide_hint="VS Code")

Orchestration Patterns

  • One hypothesis per subtask: Before delegating each subtask, form a specific hypothesis about what the subtask will find or produce
  • Store decisions immediately: After each subtask completes, call memory_store_fact with what was decided or built — don't batch at the end
  • Token Efficiency: Use memory_log_token_save when memory recall replaces reading files or running commands to gather context
  • Conflict detection: Before delegating work that touches files, call memory_get_active_sessions() to check for conflicts

Delegating Subtasks

  • Pass enough BigMind context to sub-modes so they don't repeat searches
  • Specify session_id and relevant stored facts in the delegation message
  • Specify the active Patrick persona so the sub-mode applies the right conventions
  • Each delegated mode must still call memory_announce_focus for the files it will touch

After Full Task Completion

  1. Resolve All Hypotheses: Call memory_resolve_hypothesis for every hypothesis opened during orchestration
  2. Store Summary Fact: memory_store_fact("architecture-decision", "Implemented X by orchestrating Y+Z approach") — capture the architectural choice
  3. Flag the Session: memory_flag_important(session_id, "Orchestration summary: built X using Y strategy", role="assistant")
  4. Log Token Savings: Sum up all efficiency gains across subtasks in memory_log_token_save