@fro.bot/systematic 2.33.2 → 2.33.4
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 +6 -6
- package/skills/agent-native-audit/SKILL.md +1 -1
- package/skills/ce-ideate/SKILL.md +1 -1
- package/skills/ce-plan/references/deepening-workflow.md +24 -24
- package/skills/ce-plan/references/universal-planning.md +1 -1
- package/skills/ce-review/SKILL.md +2 -6
- package/skills/gemini-imagegen/requirements.txt +1 -1
- package/skills/orchestrating-swarms/SKILL.md +1 -4
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fro.bot/systematic",
|
|
3
|
-
"version": "2.33.
|
|
3
|
+
"version": "2.33.4",
|
|
4
4
|
"description": "Structured engineering workflows for OpenCode",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"homepage": "https://fro.bot/systematic",
|
|
@@ -65,19 +65,19 @@
|
|
|
65
65
|
"@opencode-ai/plugin": "^1.1.30"
|
|
66
66
|
},
|
|
67
67
|
"devDependencies": {
|
|
68
|
-
"@biomejs/biome": "2.5.
|
|
69
|
-
"@opencode-ai/plugin": "1.17.
|
|
70
|
-
"@opencode-ai/sdk": "1.17.
|
|
68
|
+
"@biomejs/biome": "2.5.3",
|
|
69
|
+
"@opencode-ai/plugin": "1.17.18",
|
|
70
|
+
"@opencode-ai/sdk": "1.17.18",
|
|
71
71
|
"@semantic-release/exec": "7.1.0",
|
|
72
72
|
"@types/bun": "latest",
|
|
73
73
|
"@types/js-yaml": "4.0.9",
|
|
74
|
-
"@types/node": "24.13.
|
|
74
|
+
"@types/node": "24.13.3",
|
|
75
75
|
"ajv": "8.20.0",
|
|
76
76
|
"ajv-formats": "3.0.1",
|
|
77
77
|
"conventional-changelog-conventionalcommits": "9.3.1",
|
|
78
78
|
"markdownlint-cli": "0.48.0",
|
|
79
79
|
"rimraf": "6.1.3",
|
|
80
|
-
"semantic-release": "25.0.
|
|
80
|
+
"semantic-release": "25.0.6",
|
|
81
81
|
"semantic-release-export-data": "1.2.0",
|
|
82
82
|
"typescript": "6.0.3"
|
|
83
83
|
},
|
|
@@ -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
|
|
@@ -97,7 +97,7 @@ Before generating ideas, gather codebase context.
|
|
|
97
97
|
|
|
98
98
|
Run agents in parallel in the **foreground** (do not use background dispatch — the results are needed before proceeding):
|
|
99
99
|
|
|
100
|
-
1. **Quick context scan** — dispatch
|
|
100
|
+
1. **Quick context scan** — dispatch `systematic:research:repo-research-analyst` with this prompt:
|
|
101
101
|
|
|
102
102
|
> 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:
|
|
103
103
|
> - project shape (language, framework, top-level directory layout)
|
|
@@ -99,43 +99,43 @@ 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-oracle` for scalability, latency, throughput, and resource-risk analysis
|
|
129
|
+
- `systematic:review:security-sentinel` for auth, validation, exploit surfaces, and security boundary review
|
|
130
|
+
- `systematic:review:data-integrity-guardian` 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
|
-
- `
|
|
138
|
-
- `
|
|
134
|
+
- `systematic:review:security-sentinel` for security, auth, privacy, and exploit risk
|
|
135
|
+
- `systematic:review:data-integrity-guardian` for persistent data safety, constraints, and transaction boundaries
|
|
136
|
+
- `systematic:review:data-migration-expert` for migration realism, backfills, and production data transformation risk
|
|
137
|
+
- `systematic:review:deployment-verification-agent` for rollout checklists, rollback planning, and launch verification
|
|
138
|
+
- `systematic:review:performance-oracle` for capacity, latency, and scaling concerns
|
|
139
139
|
|
|
140
140
|
**Agent Prompt Shape:**
|
|
141
141
|
|
|
@@ -201,7 +201,7 @@ Skip this step in auto mode — proceed directly to 5.3.7.
|
|
|
201
201
|
|
|
202
202
|
In interactive mode, present each agent's findings to the user before integration. For each agent that returned findings:
|
|
203
203
|
|
|
204
|
-
1. **Summarize the agent and its target section** — e.g., "The
|
|
204
|
+
1. **Summarize the agent and its target section** — e.g., "The systematic:review:architecture-strategist reviewed Key Technical Decisions and found:"
|
|
205
205
|
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.
|
|
206
206
|
3. **Ask the user** using the platform's blocking question tool when available (see Interaction Method):
|
|
207
207
|
- **Accept** — integrate these findings into the plan
|
|
@@ -28,7 +28,7 @@ Evaluate two things before planning:
|
|
|
28
28
|
| Research need | Signals | Action |
|
|
29
29
|
|--------------|---------|--------|
|
|
30
30
|
| **None** | Generic, timeless, or conceptual plan (study curriculum methodology, project management approach, personal goal breakdown) | Skip research. Model knowledge is sufficient. After structuring the plan, offer: "I based this on general knowledge. Want me to search for [specific thing research would improve]?" — e.g., sourced recipes, current product recommendations, expert frameworks. Only if the user accepts. |
|
|
31
|
-
| **Recommended** | Plan references specific locations, venues, dates, prices, schedules, seasonal availability, or current events — anything where stale information would break the plan (closed restaurants, changed prices, cancelled events, wrong seasonal dates). | Research before planning. Decompose into 2-5 focused research questions and dispatch parallel web searches.
|
|
31
|
+
| **Recommended** | Plan references specific locations, venues, dates, prices, schedules, seasonal availability, or current events — anything where stale information would break the plan (closed restaurants, changed prices, cancelled events, wrong seasonal dates). | Research before planning. Decompose into 2-5 focused research questions and dispatch parallel web searches. Collate findings before structuring the plan. |
|
|
32
32
|
|
|
33
33
|
When research is recommended, do it — don't just offer. Stale recommendations (closed restaurants, rethemed attractions, outdated prices) are worse than no recommendations. The user invoked `ce:plan` because they want a good plan, not a disclaimer about training data.
|
|
34
34
|
|
|
@@ -377,13 +377,9 @@ Pass the resulting path list to the `project-standards` persona inside a `<stand
|
|
|
377
377
|
|
|
378
378
|
### Stage 4: Spawn sub-agents
|
|
379
379
|
|
|
380
|
-
#### Model
|
|
380
|
+
#### Model assignment
|
|
381
381
|
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
Use the platform's mid-tier model for all persona and CE sub-agents. In OpenCode, pass `model: "sonnet"` in the Agent tool call. On other platforms, use the equivalent mid-tier (e.g., `gpt-4o` in Codex). If the platform has no model override mechanism or the available model names are unknown, omit the model parameter and let agents inherit the default -- a working review on the parent model is better than a broken dispatch from an unrecognized model name.
|
|
385
|
-
|
|
386
|
-
CE always-on agents (agent-native-reviewer, learnings-researcher) and CE conditional agents (schema-drift-detector, deployment-verification-agent) also use the mid-tier model since they perform scoped, focused work.
|
|
382
|
+
Dispatch each persona and CE sub-agent by its bundled agent name so the user's configured model assignment applies. Model policy is user-owned configuration, not a skill-level dispatch parameter; do not pass a `model` parameter in the Agent tool call.
|
|
387
383
|
|
|
388
384
|
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.
|
|
389
385
|
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
google-genai>=1.0.0
|
|
2
|
-
Pillow>=12.
|
|
2
|
+
Pillow>=12.3.0
|
|
@@ -165,7 +165,6 @@ A swarm consists of:
|
|
|
165
165
|
"agentId": "worker-1@my-project",
|
|
166
166
|
"name": "worker-1",
|
|
167
167
|
"agentType": "Explore",
|
|
168
|
-
"model": "haiku",
|
|
169
168
|
"prompt": "Analyze the codebase structure...",
|
|
170
169
|
"color": "#D94A4A",
|
|
171
170
|
"planModeRequired": false,
|
|
@@ -191,7 +190,6 @@ task({
|
|
|
191
190
|
subagent_type: "Explore",
|
|
192
191
|
description: "Find auth files",
|
|
193
192
|
prompt: "Find all authentication-related files in this codebase",
|
|
194
|
-
model: "haiku" // Optional: haiku, sonnet, opus
|
|
195
193
|
})
|
|
196
194
|
```
|
|
197
195
|
|
|
@@ -260,11 +258,10 @@ task({
|
|
|
260
258
|
subagent_type: "Explore",
|
|
261
259
|
description: "Find API endpoints",
|
|
262
260
|
prompt: "Find all API endpoints in this codebase. Be very thorough.",
|
|
263
|
-
model: "haiku" // Fast and cheap
|
|
264
261
|
})
|
|
265
262
|
```
|
|
266
263
|
- **Tools:** All read-only tools (no Edit, Write, NotebookEdit, Task)
|
|
267
|
-
- **Model:**
|
|
264
|
+
- **Model:** Inherits from the parent
|
|
268
265
|
- **Best for:** Codebase exploration, file searches, code understanding
|
|
269
266
|
- **Thoroughness levels:** "quick", "medium", "very thorough"
|
|
270
267
|
|