@fro.bot/systematic 2.27.0 → 2.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/agents/design/design-implementation-reviewer.md +1 -0
  2. package/agents/design/design-iterator.md +1 -0
  3. package/agents/design/figma-design-sync.md +1 -0
  4. package/agents/docs/ankane-readme-writer.md +1 -0
  5. package/agents/document-review/adversarial-document-reviewer.md +1 -0
  6. package/agents/document-review/coherence-reviewer.md +1 -0
  7. package/agents/document-review/design-lens-reviewer.md +1 -0
  8. package/agents/document-review/feasibility-reviewer.md +1 -0
  9. package/agents/document-review/product-lens-reviewer.md +1 -0
  10. package/agents/document-review/scope-guardian-reviewer.md +1 -0
  11. package/agents/document-review/security-lens-reviewer.md +1 -0
  12. package/agents/research/best-practices-researcher.md +1 -0
  13. package/agents/research/framework-docs-researcher.md +1 -0
  14. package/agents/research/git-history-analyzer.md +1 -0
  15. package/agents/research/issue-intelligence-analyst.md +1 -0
  16. package/agents/research/learnings-researcher.md +1 -0
  17. package/agents/research/repo-research-analyst.md +1 -0
  18. package/agents/research/slack-researcher.md +1 -0
  19. package/agents/review/adversarial-reviewer.md +1 -1
  20. package/agents/review/agent-native-reviewer.md +1 -0
  21. package/agents/review/architecture-strategist.md +1 -0
  22. package/agents/review/cli-agent-readiness-reviewer.md +1 -0
  23. package/agents/review/cli-readiness-reviewer.md +1 -0
  24. package/agents/review/code-simplicity-reviewer.md +1 -0
  25. package/agents/review/data-integrity-guardian.md +1 -0
  26. package/agents/review/data-migration-expert.md +1 -0
  27. package/agents/review/deployment-verification-agent.md +1 -0
  28. package/agents/review/pattern-recognition-specialist.md +1 -0
  29. package/agents/review/performance-oracle.md +1 -0
  30. package/agents/review/previous-comments-reviewer.md +1 -0
  31. package/agents/review/project-standards-reviewer.md +1 -0
  32. package/agents/review/schema-drift-detector.md +1 -0
  33. package/agents/review/security-sentinel.md +1 -0
  34. package/agents/review/testing-reviewer.md +1 -0
  35. package/agents/workflow/pr-comment-resolver.md +1 -0
  36. package/agents/workflow/spec-flow-analyzer.md +1 -0
  37. package/agents/workflow/systematic-implementer.md +1 -0
  38. package/dist/cli.js +1 -1
  39. package/dist/{index-3q3ns1xh.js → index-ybqr13k7.js} +1 -0
  40. package/dist/index.js +2 -2
  41. package/dist/lib/bundled-names.d.ts +1 -1
  42. package/dist/schemas/systematic-config.schema.json +1 -0
  43. package/package.json +1 -1
  44. package/skills/orchestrating-subagents/SKILL.md +144 -0
@@ -2,6 +2,7 @@
2
2
  name: design-implementation-reviewer
3
3
  description: "Visually compares live UI implementation against Figma designs and provides detailed feedback on discrepancies. Use after writing or modifying HTML/CSS/React components to verify design fidelity."
4
4
  mode: subagent
5
+ temperature: 0.1
5
6
  ---
6
7
 
7
8
  You are an expert UI/UX implementation reviewer specializing in ensuring pixel-perfect fidelity between Figma designs and live implementations. You have deep expertise in visual design principles, CSS, responsive design, and cross-browser compatibility.
@@ -3,6 +3,7 @@ name: design-iterator
3
3
  description: "Iteratively refines UI design through N screenshot-analyze-improve cycles. Use PROACTIVELY when design changes aren't coming together after 1-2 attempts, or when user requests iterative refinement."
4
4
  color: accent
5
5
  mode: subagent
6
+ temperature: 0.6
6
7
  ---
7
8
 
8
9
  You are an expert UI/UX design iterator specializing in systematic, progressive refinement of web components. Your methodology combines visual analysis, competitor research, and incremental improvements to transform ordinary interfaces into polished, professional designs.
@@ -3,6 +3,7 @@ name: figma-design-sync
3
3
  description: "Detects and fixes visual differences between a web implementation and its Figma design. Use iteratively when syncing implementation to match Figma specs."
4
4
  color: accent
5
5
  mode: subagent
6
+ temperature: 0.6
6
7
  ---
7
8
 
8
9
  You are an expert design-to-code synchronization specialist with deep expertise in visual design systems, web development, CSS/Tailwind styling, and automated quality assurance. Your mission is to ensure pixel-perfect alignment between Figma designs and their web implementations through systematic comparison, detailed analysis, and precise code adjustments.
@@ -3,6 +3,7 @@ name: ankane-readme-writer
3
3
  description: "Creates or updates README files following Ankane-style template for Ruby gems. Use when writing gem documentation with imperative voice, concise prose, and standard section ordering."
4
4
  color: info
5
5
  mode: subagent
6
+ temperature: 0.3
6
7
  ---
7
8
 
8
9
  You are an expert Ruby gem documentation writer specializing in the Ankane-style README format. You have deep knowledge of Ruby ecosystem conventions and excel at creating clear, concise documentation that follows Andrew Kane's proven template structure.
@@ -3,6 +3,7 @@ name: adversarial-document-reviewer
3
3
  description: "Conditional document-review persona, selected when the document has >5 requirements or implementation units, makes significant architectural decisions, covers high-stakes domains, or proposes new abstractions. Challenges premises, surfaces unstated assumptions, and stress-tests decisions rather than evaluating document quality."
4
4
  tools: Read, Grep, Glob, Bash
5
5
  mode: subagent
6
+ temperature: 0.1
6
7
  ---
7
8
 
8
9
  # Adversarial Reviewer
@@ -3,6 +3,7 @@ name: coherence-reviewer
3
3
  description: "Reviews planning documents for internal consistency -- contradictions between sections, terminology drift, structural issues, and ambiguity where readers would diverge. Spawned by the document-review skill."
4
4
  tools: Read, Grep, Glob, Bash
5
5
  mode: subagent
6
+ temperature: 0.1
6
7
  ---
7
8
 
8
9
  You are a technical editor reading for internal consistency. You don't evaluate whether the plan is good, feasible, or complete -- other reviewers handle that. You catch when the document disagrees with itself.
@@ -3,6 +3,7 @@ name: design-lens-reviewer
3
3
  description: "Reviews planning documents for missing design decisions -- information architecture, interaction states, user flows, and AI slop risk. Uses dimensional rating to identify gaps. Spawned by the document-review skill."
4
4
  tools: Read, Grep, Glob, Bash
5
5
  mode: subagent
6
+ temperature: 0.1
6
7
  ---
7
8
 
8
9
  You are a senior product designer reviewing plans for missing design decisions. Not visual design -- whether the plan accounts for decisions that will block or derail implementation. When plans skip these, implementers either block (waiting for answers) or guess (producing inconsistent UX).
@@ -3,6 +3,7 @@ name: feasibility-reviewer
3
3
  description: "Evaluates whether proposed technical approaches in planning documents will survive contact with reality -- architecture conflicts, dependency gaps, migration risks, and implementability. Spawned by the document-review skill."
4
4
  tools: Read, Grep, Glob, Bash
5
5
  mode: subagent
6
+ temperature: 0.1
6
7
  ---
7
8
 
8
9
  You are a systems architect evaluating whether this plan can actually be built as described and whether an implementer could start working from it without making major architectural decisions the plan should have made.
@@ -3,6 +3,7 @@ name: product-lens-reviewer
3
3
  description: "Reviews planning documents as a senior product leader -- challenges premise claims, assesses strategic consequences (trajectory, identity, adoption, opportunity cost), and surfaces goal-work misalignment. Domain-agnostic: users may be end users, developers, operators, or any audience. Spawned by the document-review skill."
4
4
  tools: Read, Grep, Glob, Bash
5
5
  mode: subagent
6
+ temperature: 0.1
6
7
  ---
7
8
 
8
9
  You are a senior product leader. The most common failure mode is building the wrong thing well. Challenge the premise before evaluating the execution.
@@ -3,6 +3,7 @@ name: scope-guardian-reviewer
3
3
  description: "Reviews planning documents for scope alignment and unjustified complexity -- challenges unnecessary abstractions, premature frameworks, and scope that exceeds stated goals. Spawned by the document-review skill."
4
4
  tools: Read, Grep, Glob, Bash
5
5
  mode: subagent
6
+ temperature: 0.1
6
7
  ---
7
8
 
8
9
  You ask two questions about every plan: "Is this right-sized for its goals?" and "Does every abstraction earn its keep?" You are not reviewing whether the plan solves the right problem (product-lens) or is internally consistent (coherence-reviewer).
@@ -3,6 +3,7 @@ name: security-lens-reviewer
3
3
  description: "Evaluates planning documents for security gaps at the plan level -- auth/authz assumptions, data exposure risks, API surface vulnerabilities, and missing threat model elements. Spawned by the document-review skill."
4
4
  tools: Read, Grep, Glob, Bash
5
5
  mode: subagent
6
+ temperature: 0.1
6
7
  ---
7
8
 
8
9
  You are a security architect evaluating whether this plan accounts for security at the planning level. Distinct from code-level security review -- you examine whether the plan makes security-relevant decisions and identifies its attack surface before implementation begins.
@@ -2,6 +2,7 @@
2
2
  name: best-practices-researcher
3
3
  description: "Researches and synthesizes external best practices, documentation, and examples for any technology or framework. Use when you need industry standards, community conventions, or implementation guidance."
4
4
  mode: subagent
5
+ temperature: 0.2
5
6
  ---
6
7
 
7
8
  **Note: The current year is 2026.** Use this when searching for recent documentation and best practices.
@@ -2,6 +2,7 @@
2
2
  name: framework-docs-researcher
3
3
  description: "Gathers comprehensive documentation and best practices for frameworks, libraries, or dependencies. Use when you need official docs, version-specific constraints, or implementation patterns."
4
4
  mode: subagent
5
+ temperature: 0.2
5
6
  ---
6
7
 
7
8
  **Note: The current year is 2026.** Use this when searching for recent documentation and version information.
@@ -2,6 +2,7 @@
2
2
  name: git-history-analyzer
3
3
  description: "Performs archaeological analysis of git history to trace code evolution, identify contributors, and understand why code patterns exist. Use when you need historical context for code changes."
4
4
  mode: subagent
5
+ temperature: 0.2
5
6
  ---
6
7
 
7
8
  **Note: The current year is 2026.** Use this when interpreting commit dates and recent changes.
@@ -2,6 +2,7 @@
2
2
  name: issue-intelligence-analyst
3
3
  description: "Fetches and analyzes GitHub issues to surface recurring themes, pain patterns, and severity trends. Use when understanding a project's issue landscape, analyzing bug patterns for ideation, or summarizing what users are reporting."
4
4
  mode: subagent
5
+ temperature: 0.3
5
6
  ---
6
7
 
7
8
  **Note: The current year is 2026.** Use this when evaluating issue recency and trends.
@@ -2,6 +2,7 @@
2
2
  name: learnings-researcher
3
3
  description: "Searches docs/solutions/ for relevant past solutions by frontmatter metadata. Use before implementing features or fixing problems to surface institutional knowledge and prevent repeated mistakes."
4
4
  mode: subagent
5
+ temperature: 0.2
5
6
  ---
6
7
 
7
8
  You are an expert institutional knowledge researcher specializing in efficiently surfacing relevant documented solutions from the team's knowledge base. Your mission is to find and distill applicable learnings before new work begins, preventing repeated mistakes and leveraging proven patterns.
@@ -2,6 +2,7 @@
2
2
  name: repo-research-analyst
3
3
  description: "Conducts thorough research on repository structure, documentation, conventions, and implementation patterns. Use when onboarding to a new codebase or understanding project conventions."
4
4
  mode: subagent
5
+ temperature: 0.2
5
6
  ---
6
7
 
7
8
  **Note: The current year is 2026.** Use this when searching for recent documentation and patterns.
@@ -2,6 +2,7 @@
2
2
  name: slack-researcher
3
3
  description: "Searches Slack for organizational context. Use when the user explicitly asks. Requires a Slack MCP server."
4
4
  mode: subagent
5
+ temperature: 0.2
5
6
  ---
6
7
  **Note: The current year is 2026.** Use this when assessing the recency of Slack discussions.
7
8
 
@@ -3,8 +3,8 @@ name: adversarial-reviewer
3
3
  description: Conditional code-review persona, selected when the diff is large (>=50 changed lines) or touches high-risk domains like auth, payments, data mutations, or external APIs. Actively constructs failure scenarios to break the implementation rather than checking against known patterns.
4
4
  tools: Read, Grep, Glob, Bash
5
5
  color: error
6
-
7
6
  mode: subagent
7
+ temperature: 0.1
8
8
  ---
9
9
 
10
10
  # Adversarial Reviewer
@@ -4,6 +4,7 @@ description: "Reviews code to ensure agent-native parity -- any action a user ca
4
4
  color: info
5
5
  tools: Read, Grep, Glob, Bash
6
6
  mode: subagent
7
+ temperature: 0.1
7
8
  ---
8
9
 
9
10
  # Agent-Native Architecture Reviewer
@@ -3,6 +3,7 @@ name: architecture-strategist
3
3
  description: "Analyzes code changes from an architectural perspective for pattern compliance and design integrity. Use when reviewing PRs, adding services, or evaluating structural refactors."
4
4
  tools: Read, Grep, Glob, Bash
5
5
  mode: subagent
6
+ temperature: 0.1
6
7
  ---
7
8
 
8
9
  You are a System Architecture Expert specializing in analyzing code changes and system design decisions. Your role is to ensure that all modifications align with established architectural patterns, maintain system integrity, and follow best practices for scalable, maintainable software systems.
@@ -4,6 +4,7 @@ description: "Reviews CLI source code, plans, or specs for AI agent readiness us
4
4
  tools: Read, Grep, Glob, Bash
5
5
  color: warning
6
6
  mode: subagent
7
+ temperature: 0.1
7
8
  ---
8
9
 
9
10
  # CLI Agent-Readiness Reviewer
@@ -4,6 +4,7 @@ description: "Conditional code-review persona, selected when the diff touches CL
4
4
  tools: Read, Grep, Glob, Bash
5
5
  color: info
6
6
  mode: subagent
7
+ temperature: 0.1
7
8
  ---
8
9
 
9
10
  # CLI Agent-Readiness Reviewer
@@ -3,6 +3,7 @@ name: code-simplicity-reviewer
3
3
  description: "Final review pass to ensure code is as simple and minimal as possible. Use after implementation is complete to identify YAGNI violations and simplification opportunities."
4
4
  tools: Read, Grep, Glob, Bash
5
5
  mode: subagent
6
+ temperature: 0.1
6
7
  ---
7
8
 
8
9
  You are a code simplicity expert specializing in minimalism and the YAGNI (You Aren't Gonna Need It) principle. Your mission is to ruthlessly simplify code while maintaining functionality and clarity.
@@ -3,6 +3,7 @@ name: data-integrity-guardian
3
3
  description: "Reviews database migrations, data models, and persistent data code for safety. Use when checking migration safety, data constraints, transaction boundaries, or privacy compliance."
4
4
  tools: Read, Grep, Glob, Bash
5
5
  mode: subagent
6
+ temperature: 0.1
6
7
  ---
7
8
 
8
9
  You are a Data Integrity Guardian, an expert in database design, data migration safety, and data governance. Your deep expertise spans relational database theory, ACID properties, data privacy regulations (GDPR, CCPA), and production database management.
@@ -3,6 +3,7 @@ name: data-migration-expert
3
3
  description: "Validates data migrations, backfills, and production data transformations against reality. Use when PRs involve ID mappings, column renames, enum conversions, or schema changes."
4
4
  tools: Read, Grep, Glob, Bash
5
5
  mode: subagent
6
+ temperature: 0.3
6
7
  ---
7
8
 
8
9
  You are a Data Migration Expert. Your mission is to prevent data corruption by validating that migrations match production reality, not fixture or assumed values.
@@ -3,6 +3,7 @@ name: deployment-verification-agent
3
3
  description: "Produces Go/No-Go deployment checklists with SQL verification queries, rollback procedures, and monitoring plans. Use when PRs touch production data, migrations, or risky data changes."
4
4
  tools: Read, Grep, Glob, Bash
5
5
  mode: subagent
6
+ temperature: 0.1
6
7
  ---
7
8
 
8
9
  You are a Deployment Verification Agent. Your mission is to produce concrete, executable checklists for risky data deployments so engineers aren't guessing at launch time.
@@ -3,6 +3,7 @@ name: pattern-recognition-specialist
3
3
  description: "Analyzes code for design patterns, anti-patterns, naming conventions, and duplication. Use when checking codebase consistency or verifying new code follows established patterns."
4
4
  tools: Read, Grep, Glob, Bash
5
5
  mode: subagent
6
+ temperature: 0.6
6
7
  ---
7
8
 
8
9
  You are a Code Pattern Analysis Expert specializing in identifying design patterns, anti-patterns, and code quality issues across codebases. Your expertise spans multiple programming languages with deep knowledge of software architecture principles and best practices.
@@ -3,6 +3,7 @@ name: performance-oracle
3
3
  description: "Analyzes code for performance bottlenecks, algorithmic complexity, database queries, memory usage, and scalability. Use after implementing features or when performance concerns arise."
4
4
  tools: Read, Grep, Glob, Bash
5
5
  mode: subagent
6
+ temperature: 0.1
6
7
  ---
7
8
 
8
9
  You are the Performance Oracle, an elite performance optimization expert specializing in identifying and resolving performance bottlenecks in software systems. Your deep expertise spans algorithmic complexity analysis, database optimization, memory management, caching strategies, and system scalability.
@@ -5,6 +5,7 @@ tools: Read, Grep, Glob, Bash
5
5
  color: warning
6
6
 
7
7
  mode: subagent
8
+ temperature: 0.1
8
9
  ---
9
10
 
10
11
  # Previous Comments Reviewer
@@ -5,6 +5,7 @@ tools: Read, Grep, Glob, Bash
5
5
  color: info
6
6
 
7
7
  mode: subagent
8
+ temperature: 0.1
8
9
  ---
9
10
 
10
11
  # Project Standards Reviewer
@@ -3,6 +3,7 @@ name: schema-drift-detector
3
3
  description: "Detects unrelated schema.rb changes in PRs by cross-referencing against included migrations. Use when reviewing PRs with database schema changes."
4
4
  tools: Read, Grep, Glob, Bash
5
5
  mode: subagent
6
+ temperature: 0.1
6
7
  ---
7
8
 
8
9
  You are a Schema Drift Detector. Your mission is to prevent accidental inclusion of unrelated schema.rb changes in PRs - a common issue when developers run migrations from other branches.
@@ -3,6 +3,7 @@ name: security-sentinel
3
3
  description: "Performs security audits for vulnerabilities, input validation, auth/authz, hardcoded secrets, and OWASP compliance. Use when reviewing code for security issues or before deployment."
4
4
  tools: Read, Grep, Glob, Bash
5
5
  mode: subagent
6
+ temperature: 0.1
6
7
  ---
7
8
 
8
9
  You are an elite Application Security Specialist with deep expertise in identifying and mitigating security vulnerabilities. You think like an attacker, constantly asking: Where are the vulnerabilities? What could go wrong? How could this be exploited?
@@ -5,6 +5,7 @@ tools: Read, Grep, Glob, Bash
5
5
  color: info
6
6
 
7
7
  mode: subagent
8
+ temperature: 0.1
8
9
  ---
9
10
 
10
11
  # Testing Reviewer
@@ -3,6 +3,7 @@ name: pr-comment-resolver
3
3
  description: "Evaluates and resolves one or more related PR review threads -- assesses validity, implements fixes, and returns structured summaries with reply text. Spawned by the resolve-pr-feedback skill."
4
4
  color: info
5
5
  mode: subagent
6
+ temperature: 0.1
6
7
  ---
7
8
 
8
9
  You resolve PR review threads. You receive thread details -- one thread in standard mode, or multiple related threads with a cluster brief in cluster mode. Your job: evaluate whether the feedback is valid, fix it if so, and return structured summaries.
@@ -2,6 +2,7 @@
2
2
  name: spec-flow-analyzer
3
3
  description: "Analyzes specifications and feature descriptions for user flow completeness and gap identification. Use when a spec, plan, or feature description needs flow analysis, edge case discovery, or requirements validation."
4
4
  mode: subagent
5
+ temperature: 0.2
5
6
  ---
6
7
 
7
8
  Analyze specifications, plans, and feature descriptions from the end user's perspective. The goal is to surface missing flows, ambiguous requirements, and unspecified edge cases before implementation begins -- when they are cheapest to fix.
@@ -2,6 +2,7 @@
2
2
  name: systematic-implementer
3
3
  description: Implements one plan unit in a fresh subagent context and reports bounded changes back to the orchestrator.
4
4
  mode: subagent
5
+ temperature: 0.2
5
6
  ---
6
7
 
7
8
  You are a focused implementer dispatched by a parent OpenCode session orchestrating a multi-unit plan. You implement one unit's worth of changes and report back to the orchestrator.
package/dist/cli.js CHANGED
@@ -6,7 +6,7 @@ import {
6
6
  findCommandsInDir,
7
7
  findSkillsInDir,
8
8
  getConfigPaths
9
- } from "./index-3q3ns1xh.js";
9
+ } from "./index-ybqr13k7.js";
10
10
 
11
11
  // src/cli.ts
12
12
  import fs from "fs";
@@ -15839,6 +15839,7 @@ var BUNDLED_SKILL_NAMES = [
15839
15839
  "git-worktree",
15840
15840
  "lfg",
15841
15841
  "onboarding",
15842
+ "orchestrating-subagents",
15842
15843
  "orchestrating-swarms",
15843
15844
  "proof",
15844
15845
  "rclone",
package/dist/index.js CHANGED
@@ -13,7 +13,7 @@ import {
13
13
  loadConfig,
14
14
  loadConfigWithSources,
15
15
  parseFrontmatter
16
- } from "./index-3q3ns1xh.js";
16
+ } from "./index-ybqr13k7.js";
17
17
 
18
18
  // src/index.ts
19
19
  import fs5 from "fs";
@@ -949,7 +949,7 @@ function applyAgentOverlays(config, agentInfo, overlays, availabilitySet) {
949
949
  if (hasPermissionOverlay && isRecord(config.permission)) {
950
950
  addPermissionRules(permissionRules, config.permission);
951
951
  }
952
- result.temperature = inferBuiltInTemperature(agentInfo.name, result.description);
952
+ result.temperature = result.temperature ?? inferBuiltInTemperature(agentInfo.name, result.description);
953
953
  applySourceModelDefault(result, agentInfo, availabilitySet);
954
954
  applyAgentOverlay(result, categoryOverlay?.value, permissionRules);
955
955
  applyAgentOverlay(result, exactOverlay?.value, permissionRules);
@@ -1,5 +1,5 @@
1
1
  export declare const BUNDLED_AGENT_NAMES: readonly ["adversarial-document-reviewer", "adversarial-reviewer", "agent-native-reviewer", "ankane-readme-writer", "api-contract-reviewer", "architecture-strategist", "best-practices-researcher", "bug-reproduction-validator", "cli-agent-readiness-reviewer", "cli-readiness-reviewer", "code-simplicity-reviewer", "coherence-reviewer", "correctness-reviewer", "data-integrity-guardian", "data-migration-expert", "data-migrations-reviewer", "deployment-verification-agent", "design-implementation-reviewer", "design-iterator", "design-lens-reviewer", "dhh-rails-reviewer", "feasibility-reviewer", "figma-design-sync", "framework-docs-researcher", "git-history-analyzer", "issue-intelligence-analyst", "julik-frontend-races-reviewer", "kieran-python-reviewer", "kieran-rails-reviewer", "kieran-typescript-reviewer", "learnings-researcher", "lint", "maintainability-reviewer", "pattern-recognition-specialist", "performance-oracle", "performance-reviewer", "pr-comment-resolver", "previous-comments-reviewer", "product-lens-reviewer", "project-standards-reviewer", "reliability-reviewer", "repo-research-analyst", "schema-drift-detector", "scope-guardian-reviewer", "security-lens-reviewer", "security-reviewer", "security-sentinel", "slack-researcher", "spec-flow-analyzer", "systematic-implementer", "testing-reviewer"];
2
2
  export declare const BUNDLED_AGENT_QUALIFIED_IDS: readonly ["design/design-implementation-reviewer", "design/design-iterator", "design/figma-design-sync", "docs/ankane-readme-writer", "document-review/adversarial-document-reviewer", "document-review/coherence-reviewer", "document-review/design-lens-reviewer", "document-review/feasibility-reviewer", "document-review/product-lens-reviewer", "document-review/scope-guardian-reviewer", "document-review/security-lens-reviewer", "research/best-practices-researcher", "research/framework-docs-researcher", "research/git-history-analyzer", "research/issue-intelligence-analyst", "research/learnings-researcher", "research/repo-research-analyst", "research/slack-researcher", "review/adversarial-reviewer", "review/agent-native-reviewer", "review/api-contract-reviewer", "review/architecture-strategist", "review/cli-agent-readiness-reviewer", "review/cli-readiness-reviewer", "review/code-simplicity-reviewer", "review/correctness-reviewer", "review/data-integrity-guardian", "review/data-migration-expert", "review/data-migrations-reviewer", "review/deployment-verification-agent", "review/dhh-rails-reviewer", "review/julik-frontend-races-reviewer", "review/kieran-python-reviewer", "review/kieran-rails-reviewer", "review/kieran-typescript-reviewer", "review/maintainability-reviewer", "review/pattern-recognition-specialist", "review/performance-oracle", "review/performance-reviewer", "review/previous-comments-reviewer", "review/project-standards-reviewer", "review/reliability-reviewer", "review/schema-drift-detector", "review/security-reviewer", "review/security-sentinel", "review/testing-reviewer", "workflow/bug-reproduction-validator", "workflow/lint", "workflow/pr-comment-resolver", "workflow/spec-flow-analyzer", "workflow/systematic-implementer"];
3
- export declare const BUNDLED_SKILL_NAMES: readonly ["agent-browser", "agent-native-architecture", "agent-native-audit", "andrew-kane-gem-writer", "ce:brainstorm", "ce:compound", "ce:compound-refresh", "ce:ideate", "ce:plan", "ce:review", "ce:work", "changelog", "claude-permissions-optimizer", "compound-docs", "deepen-plan", "deploy-docs", "dhh-rails-style", "document-review", "dspy-ruby", "every-style-editor", "feature-video", "frontend-design", "gemini-imagegen", "generate_command", "git-clean-gone-branches", "git-commit", "git-commit-push-pr", "git-worktree", "lfg", "onboarding", "orchestrating-swarms", "proof", "rclone", "report-bug-ce", "reproduce-bug", "resolve-pr-feedback", "setup", "slfg", "test-browser", "test-driven-development", "test-xcode", "todo-create", "todo-resolve", "todo-triage", "using-systematic", "writing-skills", "writing-systematic-skills"];
3
+ export declare const BUNDLED_SKILL_NAMES: readonly ["agent-browser", "agent-native-architecture", "agent-native-audit", "andrew-kane-gem-writer", "ce:brainstorm", "ce:compound", "ce:compound-refresh", "ce:ideate", "ce:plan", "ce:review", "ce:work", "changelog", "claude-permissions-optimizer", "compound-docs", "deepen-plan", "deploy-docs", "dhh-rails-style", "document-review", "dspy-ruby", "every-style-editor", "feature-video", "frontend-design", "gemini-imagegen", "generate_command", "git-clean-gone-branches", "git-commit", "git-commit-push-pr", "git-worktree", "lfg", "onboarding", "orchestrating-subagents", "orchestrating-swarms", "proof", "rclone", "report-bug-ce", "reproduce-bug", "resolve-pr-feedback", "setup", "slfg", "test-browser", "test-driven-development", "test-xcode", "todo-create", "todo-resolve", "todo-triage", "using-systematic", "writing-skills", "writing-systematic-skills"];
4
4
  export type BundledAgentName = (typeof BUNDLED_AGENT_NAMES)[number];
5
5
  export type BundledSkillName = (typeof BUNDLED_SKILL_NAMES)[number];
@@ -1280,6 +1280,7 @@
1280
1280
  "git-worktree",
1281
1281
  "lfg",
1282
1282
  "onboarding",
1283
+ "orchestrating-subagents",
1283
1284
  "orchestrating-swarms",
1284
1285
  "proof",
1285
1286
  "rclone",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fro.bot/systematic",
3
- "version": "2.27.0",
3
+ "version": "2.29.0",
4
4
  "description": "Structured engineering workflows for OpenCode",
5
5
  "type": "module",
6
6
  "homepage": "https://fro.bot/systematic",
@@ -0,0 +1,144 @@
1
+ ---
2
+ name: orchestrating-subagents
3
+ description: Use when dispatching parallel or serial subagents in OpenCode, coordinating multi-unit plan execution, synthesizing results from independent subagent runs, or handling subagent failure and retry. Triggers on requests to run tasks in parallel, divide work across subagents, orchestrate a pipeline of dependent steps, or coordinate multiple agents without shared-file conflicts.
4
+ ---
5
+
6
+ # Orchestrating Subagents
7
+
8
+ Dispatch, coordinate, and synthesize results from OpenCode subagents using the `task()` primitive.
9
+
10
+ ## The Portable Primitive
11
+
12
+ Every subagent dispatch goes through `task()`:
13
+
14
+ ```typescript
15
+ task({
16
+ subagent_type: "systematic-implementer",
17
+ description: "Implement auth module",
18
+ prompt: "...",
19
+ })
20
+ ```
21
+
22
+ **Required parameters:**
23
+ - `subagent_type` — the registered agent name (e.g., `systematic-implementer`, `best-practices-researcher`)
24
+ - `description` — 3–5 word label shown in the UI
25
+ - `prompt` — full instructions for the subagent
26
+
27
+ **Optional:**
28
+ - `task_id` — resume a prior subagent session instead of creating a new one
29
+ - `command` — the slash command that triggered this task
30
+
31
+ Foreground dispatch (no `background` parameter) blocks until the subagent returns its result. **This is the default and works on all OpenCode versions.**
32
+
33
+ ## Background Dispatch (Experimental)
34
+
35
+ Background dispatch is gated by a runtime flag. It is **not available by default**.
36
+
37
+ ```typescript
38
+ // Only use when the runtime exposes background support
39
+ task({
40
+ subagent_type: "systematic-implementer",
41
+ description: "Implement auth module",
42
+ prompt: "...",
43
+ background: true, // experimental — see below
44
+ })
45
+ ```
46
+
47
+ **When background is available:** OpenCode exposes `task_status` in the tool list and the `task()` tool description includes background mode instructions. This requires `OPENCODE_EXPERIMENTAL_BACKGROUND_SUBAGENTS=true` or the umbrella `OPENCODE_EXPERIMENTAL=true` flag.
48
+
49
+ **When background is unavailable:** `task_status` is not registered. Passing `background: true` returns an error. Fall back to foreground dispatch — dispatch subagents serially or in small foreground batches instead.
50
+
51
+ **Check before assuming:** If you see `task_status` in your available tools, background dispatch is enabled. If you do not see it, use foreground dispatch only.
52
+
53
+ ## Serial vs Parallel Dispatch
54
+
55
+ ### Serial (default, always safe)
56
+
57
+ Dispatch one subagent, wait for its result, then dispatch the next. Use when:
58
+ - Units have dependencies (unit B needs unit A's output)
59
+ - Units touch overlapping files
60
+ - You need to verify each result before proceeding
61
+
62
+ ```typescript
63
+ const researchResult = task({
64
+ subagent_type: "best-practices-researcher",
65
+ description: "Research caching patterns",
66
+ prompt: "Research Redis caching best practices for Rails APIs...",
67
+ })
68
+
69
+ // Use research output to guide implementation
70
+ task({
71
+ subagent_type: "systematic-implementer",
72
+ description: "Implement caching",
73
+ prompt: `Implement caching based on this research:\n\n${researchResult}`,
74
+ })
75
+ ```
76
+
77
+ ### Parallel (foreground batches)
78
+
79
+ Dispatch multiple foreground subagents in the same turn. OpenCode runs them concurrently when dispatched together. Use when:
80
+ - Units are fully independent (no shared files, no dependency on each other's output)
81
+ - You have passed the Parallel Safety Check (see below)
82
+
83
+ ```typescript
84
+ // Dispatch independent review subagents together
85
+ task({ subagent_type: "security-sentinel", description: "Security review", prompt: "..." })
86
+ task({ subagent_type: "performance-oracle", description: "Performance review", prompt: "..." })
87
+ task({ subagent_type: "correctness-reviewer", description: "Correctness review", prompt: "..." })
88
+ // All three run; orchestrator synthesizes results after all complete
89
+ ```
90
+
91
+ ## Parallel Safety Check
92
+
93
+ Before dispatching units in parallel, verify:
94
+
95
+ 1. **No file overlap** — build a file-to-unit map from each unit's declared files. Any file appearing in 2+ units means overlap → use serial dispatch instead.
96
+ 2. **No git index contention** — parallel subagents must not stage files (`git add`), create commits, or run the full test suite. If the current workflow owns git operations, the orchestrator handles staging and committing after all parallel units complete; otherwise, synthesize results and file lists and leave staging/committing to the caller or user.
97
+ 3. **No test interference** — concurrent test runs pick up each other's in-progress changes. Instruct parallel subagents not to run the project test suite.
98
+
99
+ If any check fails, downgrade to serial dispatch. Log the reason (e.g., "Units 2 and 4 share `config/routes.rb` — using serial dispatch").
100
+
101
+ ## Subagent Constraints for Parallel Work
102
+
103
+ When dispatching units in parallel, include these instructions in each subagent's prompt:
104
+
105
+ > Do not stage files (`git add`), create commits, or run the project test suite. Leave staging and committing to the orchestrator or caller.
106
+
107
+ ## Result Synthesis
108
+
109
+ After subagents complete, the orchestrator synthesizes results:
110
+
111
+ 1. **Wait for all** — in a parallel batch, wait for every subagent to finish before acting on any result.
112
+ 2. **Check for file collisions** — compare actual files modified by all subagents in the batch (not just declared files). If 2+ subagents modified the same file, only the last writer's version survives. If the workflow owns git operations, resolve by staging non-colliding files first, then re-running the affected units serially; otherwise, report the collision list to the caller.
113
+ 3. **Review each diff** — verify changes match the unit's declared scope.
114
+ 4. **Run targeted tests** — run the narrowest test command relevant to the changed files.
115
+ 5. **Stage and commit per unit (if the workflow owns git operations)** — in dependency order, stage only that unit's files and commit with a conventional message. If git operations belong to the caller or user, synthesize the result list and file inventory instead.
116
+
117
+ ## Failure and Retry
118
+
119
+ - If a subagent returns an error or its output is incomplete, diagnose before dispatching dependent units.
120
+ - Do not dispatch dependent units on a broken tree.
121
+ - Retry a failed unit by dispatching a new `task()` call with a corrected prompt, or resume the prior session with `task_id`.
122
+ - For background tasks (when available): use `task_status` to poll or wait for terminal state before retrying.
123
+
124
+ ## Quick Reference
125
+
126
+ | Scenario | Approach |
127
+ |---|---|
128
+ | Units have dependencies | Serial foreground dispatch |
129
+ | Units share files | Serial foreground dispatch |
130
+ | Units are independent, no file overlap | Parallel foreground dispatch |
131
+ | Background available + long-running work | Parallel background dispatch with `task_status` |
132
+ | Background unavailable | Foreground only — serial or batched |
133
+ | Subagent fails | Diagnose, fix prompt, retry with new `task()` or resume with `task_id` |
134
+ | File collision detected post-parallel | Stage non-colliding files (if workflow owns git ops), re-run colliding units serially |
135
+
136
+ ## Common Mistakes
137
+
138
+ | Mistake | Fix |
139
+ |---|---|
140
+ | Assuming `task_status` is always available | Check tool list first; fall back to foreground if absent |
141
+ | Parallel subagents staging or committing | Instruct subagents not to stage/commit; the current workflow owner handles git ops when applicable, otherwise synthesize file inventory and results for the caller or user |
142
+ | Dispatching dependent units without waiting | Always wait for prerequisites to complete and verify their output |
143
+ | Ignoring file overlap in parallel batches | Run the Parallel Safety Check before every parallel dispatch |
144
+ | Using `background: true` without checking the flag | Only use when `task_status` appears in available tools |