@fro.bot/systematic 3.10.1 → 3.11.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.
- package/package.json +2 -2
- package/skills/agent-native-audit/SKILL.md +1 -1
- package/skills/ce-compound/SKILL.md +3 -3
- package/skills/ce-ideate/SKILL.md +1 -1
- package/skills/ce-plan/references/deepening-workflow.md +23 -23
- package/skills/ce-review/SKILL.md +4 -4
- package/skills/using-systematic/references/opencode-profile.md +12 -2
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fro.bot/systematic",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.11.0",
|
|
4
4
|
"description": "Compound-engineering loops for OpenCode, Pi, and Claude Code",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"homepage": "https://fro.bot/systematic",
|
|
@@ -108,7 +108,7 @@
|
|
|
108
108
|
"rimraf": "6.1.3",
|
|
109
109
|
"semantic-release": "25.0.9",
|
|
110
110
|
"semantic-release-export-data": "1.2.0",
|
|
111
|
-
"typebox": "1.3.
|
|
111
|
+
"typebox": "1.3.14",
|
|
112
112
|
"typescript": "7.0.2"
|
|
113
113
|
},
|
|
114
114
|
"dependencies": {
|
|
@@ -34,7 +34,7 @@ Select option 7 (action parity) to load the full reference material.
|
|
|
34
34
|
|
|
35
35
|
### Step 2: Launch Parallel Sub-Agents
|
|
36
36
|
|
|
37
|
-
Launch 8 parallel sub-agents using the
|
|
37
|
+
Launch 8 parallel sub-agents using the bundled `systematic:research:repo-research-analyst` agent, one for each principle. Each agent should:
|
|
38
38
|
|
|
39
39
|
1. Enumerate ALL instances in the codebase (user actions, tools, contexts, data stores, etc.)
|
|
40
40
|
2. Check compliance against the principle
|
|
@@ -86,7 +86,7 @@ Launch research subagents. Each returns text data to the orchestrator.
|
|
|
86
86
|
|
|
87
87
|
<parallel_tasks>
|
|
88
88
|
|
|
89
|
-
#### 1. **Context Analyzer**
|
|
89
|
+
#### 1. **Context Analyzer** — `systematic:research:repo-research-analyst`
|
|
90
90
|
- Extracts conversation history
|
|
91
91
|
- Reads `references/schema.yaml` for enum validation and **track classification**
|
|
92
92
|
- Determines the track (bug or knowledge) from the problem_type
|
|
@@ -100,7 +100,7 @@ Launch research subagents. Each returns text data to the orchestrator.
|
|
|
100
100
|
- Does not invent enum values, categories, or frontmatter fields from memory; reads the schema and mapping files above
|
|
101
101
|
- Does not force bug-track fields onto knowledge-track learnings or vice versa
|
|
102
102
|
|
|
103
|
-
#### 2. **Solution Extractor**
|
|
103
|
+
#### 2. **Solution Extractor** — `systematic:research:repo-research-analyst`
|
|
104
104
|
- Reads `references/schema.yaml` for track classification (bug vs knowledge)
|
|
105
105
|
- Adapts output structure based on the problem_type track
|
|
106
106
|
- Incorporates auto memory excerpts (if provided by the orchestrator) as supplementary evidence -- conversation history and the verified fix take priority; if memory notes contradict the conversation, note the contradiction as cautionary context
|
|
@@ -122,7 +122,7 @@ Launch research subagents. Each returns text data to the orchestrator.
|
|
|
122
122
|
- **When to Apply**: Conditions or situations where this applies
|
|
123
123
|
- **Examples**: Concrete before/after or usage examples showing the practice in action
|
|
124
124
|
|
|
125
|
-
#### 3. **Related Docs Finder**
|
|
125
|
+
#### 3. **Related Docs Finder** — `systematic:research:learnings-researcher`
|
|
126
126
|
- Searches `docs/solutions/` for related documentation
|
|
127
127
|
- Identifies cross-references and links
|
|
128
128
|
- Finds related GitHub issues
|
|
@@ -99,7 +99,7 @@ Before generating ideas, gather codebase context.
|
|
|
99
99
|
|
|
100
100
|
Run agents in parallel in the **foreground** (do not use background dispatch — the results are needed before proceeding):
|
|
101
101
|
|
|
102
|
-
1. **Quick context scan** — dispatch
|
|
102
|
+
1. **Quick context scan** — dispatch `systematic:research:repo-research-analyst` with this prompt:
|
|
103
103
|
|
|
104
104
|
> Read the project's AGENTS.md (or AGENTS.md only as compatibility fallback, then README.md if neither exists), then discover the top-level directory layout using the native file-search/glob tool (e.g., `Glob` with pattern `*` or `*/*` in OpenCode). Return a concise summary (under 30 lines) covering:
|
|
105
105
|
> - project shape (language, framework, top-level directory layout)
|
|
@@ -99,42 +99,42 @@ Use fully-qualified agent names inside Task calls.
|
|
|
99
99
|
**Deterministic Section-to-Agent Mapping:**
|
|
100
100
|
|
|
101
101
|
**Requirements / Open Questions classification**
|
|
102
|
-
- `
|
|
103
|
-
- `
|
|
102
|
+
- `systematic:workflow:spec-flow-analyzer` for missing user flows, edge cases, and handoff gaps
|
|
103
|
+
- `systematic:research:repo-research-analyst` (Scope: `architecture, patterns`) for repo-grounded patterns, conventions, and implementation reality checks
|
|
104
104
|
|
|
105
105
|
**Context & Research / Sources & References gaps**
|
|
106
|
-
- `
|
|
107
|
-
- `
|
|
108
|
-
- `
|
|
109
|
-
- Add `
|
|
106
|
+
- `systematic:research:learnings-researcher` for institutional knowledge and past solved problems
|
|
107
|
+
- `systematic:research:framework-docs-researcher` for official framework or library behavior
|
|
108
|
+
- `systematic:research:best-practices-researcher` for current external patterns and industry guidance
|
|
109
|
+
- Add `systematic:research:git-history-analyzer` only when historical rationale or prior art is materially missing
|
|
110
110
|
|
|
111
111
|
**Key Technical Decisions**
|
|
112
|
-
- `
|
|
113
|
-
- Add `
|
|
112
|
+
- `systematic:review:architecture-strategist` for design integrity, boundaries, and architectural tradeoffs
|
|
113
|
+
- Add `systematic:research:framework-docs-researcher` or `systematic:research:best-practices-researcher` when the decision needs external grounding beyond repo evidence
|
|
114
114
|
|
|
115
115
|
**High-Level Technical Design**
|
|
116
|
-
- `
|
|
117
|
-
- `
|
|
118
|
-
- Add `
|
|
116
|
+
- `systematic:review:architecture-strategist` for validating that the technical design accurately represents the intended approach and identifying gaps
|
|
117
|
+
- `systematic:research:repo-research-analyst` (Scope: `architecture, patterns`) for grounding the technical design in existing repo patterns and conventions
|
|
118
|
+
- Add `systematic:research:best-practices-researcher` when the technical design involves a DSL, API surface, or pattern that benefits from external validation
|
|
119
119
|
|
|
120
120
|
**Implementation Units / Verification**
|
|
121
|
-
- `
|
|
122
|
-
- `
|
|
123
|
-
- Add `
|
|
121
|
+
- `systematic:research:repo-research-analyst` (Scope: `patterns`) for concrete file targets, patterns to follow, and repo-specific sequencing clues
|
|
122
|
+
- `systematic:review:pattern-recognition-specialist` for consistency, duplication risks, and alignment with existing patterns
|
|
123
|
+
- Add `systematic:workflow:spec-flow-analyzer` when sequencing depends on user flow or handoff completeness
|
|
124
124
|
|
|
125
125
|
**System-Wide Impact**
|
|
126
|
-
- `
|
|
126
|
+
- `systematic:review:architecture-strategist` for cross-boundary effects, interface surfaces, and architectural knock-on impact
|
|
127
127
|
- Add the specific specialist that matches the risk:
|
|
128
|
-
- `
|
|
129
|
-
- `
|
|
130
|
-
- `
|
|
128
|
+
- `systematic:review:performance-reviewer` for scalability, latency, throughput, and resource-risk analysis
|
|
129
|
+
- `systematic:review:security-reviewer` for auth, validation, exploit surfaces, and security boundary review
|
|
130
|
+
- `systematic:review:data-migrations-reviewer` for migrations, persistent state safety, consistency, and data lifecycle risks
|
|
131
131
|
|
|
132
132
|
**Risks & Dependencies / Operational Notes**
|
|
133
133
|
- Use the specialist that matches the actual risk:
|
|
134
|
-
- `
|
|
135
|
-
- `
|
|
136
|
-
- `
|
|
137
|
-
- `
|
|
134
|
+
- `systematic:review:security-reviewer` for security, auth, privacy, and exploit risk
|
|
135
|
+
- `systematic:review:data-migrations-reviewer` for persistent data safety, constraints, transaction boundaries, and migration realism
|
|
136
|
+
- `systematic:review:deployment-verification-agent` for rollout checklists, rollback planning, and launch verification
|
|
137
|
+
- `systematic:review:performance-reviewer` for capacity, latency, and scaling concerns
|
|
138
138
|
|
|
139
139
|
**Agent Prompt Shape:**
|
|
140
140
|
|
|
@@ -200,7 +200,7 @@ Skip this step in auto mode — proceed directly to 5.3.7.
|
|
|
200
200
|
|
|
201
201
|
In interactive mode, present each agent's findings to the user before integration. For each agent that returned findings:
|
|
202
202
|
|
|
203
|
-
1. **Summarize the agent and its target section** — e.g., "The
|
|
203
|
+
1. **Summarize the agent and its target section** — e.g., "The systematic:review:architecture-strategist reviewed Key Technical Decisions and found:"
|
|
204
204
|
2. **Present the findings concisely** — bullet the key points, not the raw agent output. Include enough context for the user to evaluate: what the agent found, what evidence supports it, and what plan change it implies.
|
|
205
205
|
3. **Ask the user** using the platform's blocking question tool when available (see Interaction Method):
|
|
206
206
|
- **Accept** — integrate these findings into the plan
|
|
@@ -371,13 +371,13 @@ Pass the resulting path list to the `project-standards` persona inside a `<stand
|
|
|
371
371
|
|
|
372
372
|
### Stage 4: Spawn sub-agents
|
|
373
373
|
|
|
374
|
-
####
|
|
374
|
+
#### Sub-agent dispatch and model policy
|
|
375
375
|
|
|
376
|
-
Persona sub-agents do focused, scoped work
|
|
376
|
+
Persona sub-agents do focused, scoped work. Dispatch the named bundled agent for each role so the user's configured model assignment applies; the orchestrator itself stays on the default model.
|
|
377
377
|
|
|
378
|
-
|
|
378
|
+
Dispatch named bundled agents for all persona and CE sub-agents. The named agent applies the user's configured model assignment; model policy is user-owned configuration, not a skill-level dispatch parameter.
|
|
379
379
|
|
|
380
|
-
CE always-on agents (agent-native-reviewer
|
|
380
|
+
The same applies to CE always-on agents (`systematic:review:agent-native-reviewer`, `systematic:research:learnings-researcher`) and CE conditional agents (`systematic:review:deployment-verification-agent`): dispatch each by its bundled name so its configured assignment applies.
|
|
381
381
|
|
|
382
382
|
The orchestrator (this skill) stays on the default model because it handles intent discovery, reviewer selection, finding merge/dedup, and synthesis -- tasks that benefit from stronger reasoning.
|
|
383
383
|
|
|
@@ -22,16 +22,26 @@ task({
|
|
|
22
22
|
|
|
23
23
|
// Background dispatch (run independent work concurrently; reconcile on completion):
|
|
24
24
|
task({
|
|
25
|
-
subagent_type: "
|
|
25
|
+
subagent_type: "repo-research-analyst",
|
|
26
26
|
description: "Map fixture patterns",
|
|
27
27
|
prompt: "…",
|
|
28
28
|
background: true,
|
|
29
29
|
})
|
|
30
30
|
|
|
31
31
|
// Resume a prior specialist session:
|
|
32
|
-
task({ subagent_type: "
|
|
32
|
+
task({ subagent_type: "systematic-implementer", task_id: "<prior-session-id>", description: "Resume the implementation task", prompt: "…" })
|
|
33
33
|
```
|
|
34
34
|
|
|
35
|
+
`subagent_type` takes a bare agent stem — OpenCode registers bundled agents under
|
|
36
|
+
their filename stem, not a namespaced identifier. Prose that *refers* to an agent
|
|
37
|
+
uses the canonical `systematic:<category>:<name>` form instead, which the
|
|
38
|
+
content-integrity gate validates against real agent files.
|
|
39
|
+
|
|
40
|
+
Both forms are enforced. Examples in bundled content must name agents this
|
|
41
|
+
package actually ships, so they work for every reader. A host may provide
|
|
42
|
+
additional agents through the user's own configuration; those are available at
|
|
43
|
+
runtime but must not appear in bundled examples.
|
|
44
|
+
|
|
35
45
|
### Blocking user interaction
|
|
36
46
|
|
|
37
47
|
```typescript
|