@fro.bot/systematic 1.23.2 → 2.0.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/README.md +75 -61
- package/agents/research/best-practices-researcher.md +2 -3
- package/agents/research/issue-intelligence-analyst.md +2 -3
- package/package.json +2 -3
- package/skills/ce-brainstorm/SKILL.md +10 -11
- package/skills/ce-compound/SKILL.md +11 -11
- package/skills/ce-compound-refresh/SKILL.md +2 -2
- package/skills/ce-ideate/SKILL.md +3 -4
- package/skills/ce-plan/SKILL.md +8 -8
- package/skills/ce-plan-beta/SKILL.md +9 -10
- package/skills/ce-review/SKILL.md +7 -7
- package/skills/ce-work/SKILL.md +4 -4
- package/skills/ce-work-beta/SKILL.md +556 -0
- package/skills/claude-permissions-optimizer/SKILL.md +161 -0
- package/skills/claude-permissions-optimizer/scripts/extract-commands.mjs +805 -0
- package/skills/deepen-plan/SKILL.md +15 -15
- package/skills/deepen-plan-beta/SKILL.md +3 -3
- package/skills/deploy-docs/SKILL.md +8 -8
- package/skills/file-todos/SKILL.md +2 -1
- package/skills/generate_command/SKILL.md +1 -1
- package/skills/{report-bug → report-bug-ce}/SKILL.md +38 -33
- package/skills/resolve-todo-parallel/SKILL.md +65 -0
- package/skills/setup/SKILL.md +3 -3
- package/skills/test-browser/SKILL.md +3 -4
- package/commands/.gitkeep +0 -0
- package/skills/create-agent-skill/SKILL.md +0 -10
- package/skills/create-agent-skills/SKILL.md +0 -265
- package/skills/create-agent-skills/references/api-security.md +0 -226
- package/skills/create-agent-skills/references/be-clear-and-direct.md +0 -531
- package/skills/create-agent-skills/references/best-practices.md +0 -404
- package/skills/create-agent-skills/references/common-patterns.md +0 -595
- package/skills/create-agent-skills/references/core-principles.md +0 -437
- package/skills/create-agent-skills/references/executable-code.md +0 -175
- package/skills/create-agent-skills/references/iteration-and-testing.md +0 -474
- package/skills/create-agent-skills/references/official-spec.md +0 -134
- package/skills/create-agent-skills/references/recommended-structure.md +0 -168
- package/skills/create-agent-skills/references/skill-structure.md +0 -152
- package/skills/create-agent-skills/references/using-scripts.md +0 -113
- package/skills/create-agent-skills/references/using-templates.md +0 -112
- package/skills/create-agent-skills/references/workflows-and-validation.md +0 -510
- package/skills/create-agent-skills/templates/router-skill.md +0 -73
- package/skills/create-agent-skills/templates/simple-skill.md +0 -33
- package/skills/create-agent-skills/workflows/add-reference.md +0 -96
- package/skills/create-agent-skills/workflows/add-script.md +0 -93
- package/skills/create-agent-skills/workflows/add-template.md +0 -74
- package/skills/create-agent-skills/workflows/add-workflow.md +0 -126
- package/skills/create-agent-skills/workflows/audit-skill.md +0 -138
- package/skills/create-agent-skills/workflows/create-domain-expertise-skill.md +0 -605
- package/skills/create-agent-skills/workflows/create-new-skill.md +0 -197
- package/skills/create-agent-skills/workflows/get-guidance.md +0 -121
- package/skills/create-agent-skills/workflows/upgrade-to-router.md +0 -161
- package/skills/create-agent-skills/workflows/verify-skill.md +0 -204
- package/skills/heal-skill/SKILL.md +0 -148
- package/skills/resolve_parallel/SKILL.md +0 -36
- package/skills/resolve_todo_parallel/SKILL.md +0 -38
|
@@ -10,7 +10,7 @@ argument-hint: '[path to plan file]'
|
|
|
10
10
|
|
|
11
11
|
**Note: The current year is 2026.** Use this when searching for recent documentation and best practices.
|
|
12
12
|
|
|
13
|
-
This command takes an existing plan (from `/
|
|
13
|
+
This command takes an existing plan (from `/ce:plan`) and enhances each section with parallel research agents. Each major element gets its own dedicated research sub-agent to find:
|
|
14
14
|
- Best practices and industry patterns
|
|
15
15
|
- Performance optimizations
|
|
16
16
|
- UI/UX improvements (if applicable)
|
|
@@ -68,9 +68,9 @@ Dynamically discover all available skills and match them to plan sections. Don't
|
|
|
68
68
|
ls .opencode/skills/
|
|
69
69
|
|
|
70
70
|
# 2. User's global skills (~/.config/opencode/)
|
|
71
|
-
ls ~/.opencode/skills/
|
|
71
|
+
ls ~/.config/opencode/skills/
|
|
72
72
|
|
|
73
|
-
# 3.
|
|
73
|
+
# 3. systematic plugin skills
|
|
74
74
|
ls ~/.config/opencode/plugins/cache/*/compound-engineering/*/skills/
|
|
75
75
|
|
|
76
76
|
# 4. ALL other installed plugins - check every plugin for skills
|
|
@@ -137,7 +137,7 @@ Task general-purpose: "Use the frontend-design skill at ~/.config/opencode/plugi
|
|
|
137
137
|
|
|
138
138
|
Task general-purpose: "Use the agent-native-architecture skill at ~/.config/opencode/plugins/.../agent-native-architecture. Read SKILL.md and apply it to: [agent/tool sections of plan]"
|
|
139
139
|
|
|
140
|
-
Task general-purpose: "Use the security-patterns skill at ~/.opencode/skills/security-patterns. Read SKILL.md and apply it to: [full plan]"
|
|
140
|
+
Task general-purpose: "Use the security-patterns skill at ~/.config/opencode/skills/security-patterns. Read SKILL.md and apply it to: [full plan]"
|
|
141
141
|
```
|
|
142
142
|
|
|
143
143
|
**No limit on skill sub-agents. Spawn one for every skill that could possibly be relevant.**
|
|
@@ -145,13 +145,13 @@ Task general-purpose: "Use the security-patterns skill at ~/.opencode/skills/sec
|
|
|
145
145
|
### 3. Discover and Apply Learnings/Solutions
|
|
146
146
|
|
|
147
147
|
<thinking>
|
|
148
|
-
Check for documented learnings from /
|
|
148
|
+
Check for documented learnings from /ce:compound. These are solved problems stored as markdown files. Spawn a sub-agent for each learning to check if it's relevant.
|
|
149
149
|
</thinking>
|
|
150
150
|
|
|
151
151
|
**LEARNINGS LOCATION - Check these exact folders:**
|
|
152
152
|
|
|
153
153
|
```
|
|
154
|
-
docs/solutions/ <-- PRIMARY: Project-level learnings (created by /
|
|
154
|
+
docs/solutions/ <-- PRIMARY: Project-level learnings (created by /ce:compound)
|
|
155
155
|
├── performance-issues/
|
|
156
156
|
│ └── *.md
|
|
157
157
|
├── debugging-patterns/
|
|
@@ -175,7 +175,7 @@ Run these commands to get every learning file:
|
|
|
175
175
|
find docs/solutions -name "*.md" -type f 2>/dev/null
|
|
176
176
|
|
|
177
177
|
# If docs/solutions doesn't exist, check alternate locations:
|
|
178
|
-
find .
|
|
178
|
+
find .opencode/docs -name "*.md" -type f 2>/dev/null
|
|
179
179
|
find ~/.config/opencode/docs -name "*.md" -type f 2>/dev/null
|
|
180
180
|
```
|
|
181
181
|
|
|
@@ -305,12 +305,12 @@ Dynamically discover every available agent and run them ALL against the plan. Do
|
|
|
305
305
|
|
|
306
306
|
```bash
|
|
307
307
|
# 1. Project-local agents (highest priority - project-specific)
|
|
308
|
-
find .
|
|
308
|
+
find .opencode/agents -name "*.md" 2>/dev/null
|
|
309
309
|
|
|
310
310
|
# 2. User's global agents (~/.config/opencode/)
|
|
311
311
|
find ~/.config/opencode/agents -name "*.md" 2>/dev/null
|
|
312
312
|
|
|
313
|
-
# 3.
|
|
313
|
+
# 3. systematic plugin agents (all subdirectories)
|
|
314
314
|
find ~/.config/opencode/plugins/cache/*/compound-engineering/*/agents -name "*.md" 2>/dev/null
|
|
315
315
|
|
|
316
316
|
# 4. ALL other installed plugins - check every plugin for agents
|
|
@@ -324,13 +324,13 @@ cat ~/.config/opencode/plugins/installed_plugins.json
|
|
|
324
324
|
```
|
|
325
325
|
|
|
326
326
|
**Important:** Check EVERY source. Include agents from:
|
|
327
|
-
- Project `.
|
|
327
|
+
- Project `.opencode/agents/`
|
|
328
328
|
- User's `~/.config/opencode/agents/`
|
|
329
|
-
-
|
|
329
|
+
- systematic plugin (but SKIP workflow/ agents - only use review/, research/, design/, docs/)
|
|
330
330
|
- ALL other installed plugins (agent-sdk-dev, frontend-design, etc.)
|
|
331
331
|
- Any local plugins
|
|
332
332
|
|
|
333
|
-
**For
|
|
333
|
+
**For systematic plugin specifically:**
|
|
334
334
|
- USE: `agents/review/*` (all reviewers)
|
|
335
335
|
- USE: `agents/research/*` (all researchers)
|
|
336
336
|
- USE: `agents/design/*` (design agents)
|
|
@@ -370,7 +370,7 @@ Wait for ALL parallel agents to complete - skills, research agents, review agent
|
|
|
370
370
|
**Collect outputs from ALL sources:**
|
|
371
371
|
|
|
372
372
|
1. **Skill-based sub-agents** - Each skill's full output (code examples, patterns, recommendations)
|
|
373
|
-
2. **Learnings/Solutions sub-agents** - Relevant documented learnings from /
|
|
373
|
+
2. **Learnings/Solutions sub-agents** - Relevant documented learnings from /ce:compound
|
|
374
374
|
3. **Research agents** - Best practices, documentation, real-world examples
|
|
375
375
|
4. **Review agents** - All feedback from every reviewer (architecture, security, performance, simplicity, etc.)
|
|
376
376
|
5. **Context7 queries** - Framework documentation and patterns
|
|
@@ -480,13 +480,13 @@ After writing the enhanced plan, use the **question tool** to present these opti
|
|
|
480
480
|
|
|
481
481
|
**Options:**
|
|
482
482
|
1. **View diff** - Show what was added/changed
|
|
483
|
-
2. **Start `/
|
|
483
|
+
2. **Start `/ce:work`** - Begin implementing this enhanced plan
|
|
484
484
|
3. **Deepen further** - Run another round of research on specific sections
|
|
485
485
|
4. **Revert** - Restore original plan (if backup exists)
|
|
486
486
|
|
|
487
487
|
Based on selection:
|
|
488
488
|
- **View diff** → Run `git diff [plan_path]` or show before/after
|
|
489
|
-
- **`/
|
|
489
|
+
- **`/ce:work`** → Call the /ce:work command with the plan file path
|
|
490
490
|
- **Deepen further** → Ask which sections need more research, then re-run those agents
|
|
491
491
|
- **Revert** → Restore from git or backup
|
|
492
492
|
|
|
@@ -23,7 +23,7 @@ This skill does **not** turn plans into implementation scripts. It identifies we
|
|
|
23
23
|
|
|
24
24
|
## Interaction Method
|
|
25
25
|
|
|
26
|
-
Use the platform's question tool when available. When asking the user a question, prefer the platform's blocking question tool if one exists (`
|
|
26
|
+
Use the platform's question tool when available. When asking the user a question, prefer the platform's blocking question tool if one exists (`question` in OpenCode, `request_user_input` in Codex, `ask_user` in Gemini). Otherwise, present numbered options in chat and wait for the user's reply before proceeding.
|
|
27
27
|
|
|
28
28
|
Ask one question at a time. Prefer a concise single-select choice when natural options exist.
|
|
29
29
|
|
|
@@ -83,7 +83,7 @@ Use this default:
|
|
|
83
83
|
|
|
84
84
|
If the plan already appears sufficiently grounded:
|
|
85
85
|
- Say so briefly
|
|
86
|
-
- Recommend moving to `/
|
|
86
|
+
- Recommend moving to `/ce:work` or the `document-review` skill
|
|
87
87
|
- If the user explicitly asked to deepen anyway, continue with a light pass and deepen at most 1-2 sections
|
|
88
88
|
|
|
89
89
|
### Phase 1: Parse the Current `ce:plan-beta` Structure
|
|
@@ -317,7 +317,7 @@ Based on selection:
|
|
|
317
317
|
|
|
318
318
|
If no substantive changes were warranted:
|
|
319
319
|
- Say that the plan already appears sufficiently grounded
|
|
320
|
-
- Offer the `document-review` skill or `/
|
|
320
|
+
- Offer the `document-review` skill or `/ce:work` as the next step instead
|
|
321
321
|
|
|
322
322
|
NEVER CODE! Research, challenge, and strengthen the plan.
|
|
323
323
|
|
|
@@ -14,16 +14,16 @@ Run these checks:
|
|
|
14
14
|
|
|
15
15
|
```bash
|
|
16
16
|
# Count components
|
|
17
|
-
echo "Agents: $(ls plugins/
|
|
18
|
-
echo "Skills: $(ls -d plugins/
|
|
17
|
+
echo "Agents: $(ls plugins/systematic/agents/*.md | wc -l)"
|
|
18
|
+
echo "Skills: $(ls -d plugins/systematic/skills/*/ 2>/dev/null | wc -l)"
|
|
19
19
|
|
|
20
20
|
# Validate JSON
|
|
21
21
|
cat .claude-plugin/marketplace.json | jq . > /dev/null && echo "✓ marketplace.json valid"
|
|
22
|
-
cat plugins/
|
|
22
|
+
cat plugins/systematic/.claude-plugin/plugin.json | jq . > /dev/null && echo "✓ plugin.json valid"
|
|
23
23
|
|
|
24
24
|
# Check all HTML files exist
|
|
25
25
|
for page in index agents commands skills mcp-servers changelog getting-started; do
|
|
26
|
-
if [ -f "plugins/
|
|
26
|
+
if [ -f "plugins/systematic/docs/pages/${page}.html" ] || [ -f "plugins/systematic/docs/${page}.html" ]; then
|
|
27
27
|
echo "✓ ${page}.html exists"
|
|
28
28
|
else
|
|
29
29
|
echo "✗ ${page}.html MISSING"
|
|
@@ -34,7 +34,7 @@ done
|
|
|
34
34
|
## Step 2: Check for Uncommitted Changes
|
|
35
35
|
|
|
36
36
|
```bash
|
|
37
|
-
git status --porcelain plugins/
|
|
37
|
+
git status --porcelain plugins/systematic/docs/
|
|
38
38
|
```
|
|
39
39
|
|
|
40
40
|
If there are uncommitted changes, warn the user to commit first.
|
|
@@ -66,7 +66,7 @@ on:
|
|
|
66
66
|
push:
|
|
67
67
|
branches: [main]
|
|
68
68
|
paths:
|
|
69
|
-
- 'plugins/
|
|
69
|
+
- 'plugins/systematic/docs/**'
|
|
70
70
|
workflow_dispatch:
|
|
71
71
|
|
|
72
72
|
permissions:
|
|
@@ -89,7 +89,7 @@ jobs:
|
|
|
89
89
|
- uses: actions/configure-pages@v4
|
|
90
90
|
- uses: actions/upload-pages-artifact@v3
|
|
91
91
|
with:
|
|
92
|
-
path: 'plugins/
|
|
92
|
+
path: 'plugins/systematic/docs'
|
|
93
93
|
- uses: actions/deploy-pages@v4
|
|
94
94
|
```
|
|
95
95
|
|
|
@@ -108,6 +108,6 @@ Provide a summary:
|
|
|
108
108
|
- [ ] Commit any pending changes
|
|
109
109
|
- [ ] Push to main branch
|
|
110
110
|
- [ ] Verify GitHub Pages workflow exists
|
|
111
|
-
- [ ] Check deployment at https://everyinc.github.io/
|
|
111
|
+
- [ ] Check deployment at https://everyinc.github.io/systematic/
|
|
112
112
|
```
|
|
113
113
|
|
|
@@ -185,7 +185,7 @@ Work logs serve as:
|
|
|
185
185
|
|
|
186
186
|
| Trigger | Flow | Tool |
|
|
187
187
|
|---------|------|------|
|
|
188
|
-
| Code review | `/
|
|
188
|
+
| Code review | `/ce:review` → Findings → `/triage` → Todos | Review agent + skill |
|
|
189
189
|
| PR comments | `/resolve_pr_parallel` → Individual fixes → Todos | gh CLI + skill |
|
|
190
190
|
| Code TODOs | `/resolve_todo_parallel` → Fixes + Complex todos | Agent + skill |
|
|
191
191
|
| Planning | Brainstorm → Create todo → Work → Complete | Skill |
|
|
@@ -250,3 +250,4 @@ grep -r "payment" todos/
|
|
|
250
250
|
- Temporary tracking for single conversation
|
|
251
251
|
- Not persisted to disk
|
|
252
252
|
- Different from both systems above
|
|
253
|
+
|
|
@@ -114,7 +114,7 @@ Implement #$ARGUMENTS following these steps:
|
|
|
114
114
|
3. Implement
|
|
115
115
|
- Follow existing code patterns (reference specific files)
|
|
116
116
|
- Write tests first if doing TDD
|
|
117
|
-
- Ensure code follows
|
|
117
|
+
- Ensure code follows AGENTS.md conventions
|
|
118
118
|
|
|
119
119
|
4. Verify
|
|
120
120
|
- Run tests: `bin/rails test`
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: report-bug
|
|
3
|
-
description:
|
|
2
|
+
name: report-bug-ce
|
|
3
|
+
description: Use this skill when a user needs to report a bug in the Systematic plugin with complete reproduction details and environment data, then open a GitHub issue directly from the CLI.
|
|
4
4
|
argument-hint: '[optional: brief description of the bug]'
|
|
5
5
|
disable-model-invocation: true
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
# Report a
|
|
8
|
+
# Report a Systematic Plugin Bug
|
|
9
9
|
|
|
10
|
-
Report bugs encountered while using the
|
|
10
|
+
Report bugs encountered while using the Systematic plugin. This skill gathers structured information and creates a GitHub issue for maintainers.
|
|
11
11
|
|
|
12
12
|
## Step 1: Gather Bug Information
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
Ask the user the following questions (using the platform's blocking question tool — e.g., `question` in OpenCode, `request_user_input` in Codex, `ask_user` in Gemini — or present numbered options and wait for a reply):
|
|
15
15
|
|
|
16
16
|
**Question 1: Bug Category**
|
|
17
17
|
- What type of issue are you experiencing?
|
|
@@ -39,18 +39,25 @@ Use the question tool to collect the following information:
|
|
|
39
39
|
|
|
40
40
|
## Step 2: Collect Environment Information
|
|
41
41
|
|
|
42
|
-
Automatically gather:
|
|
43
|
-
```bash
|
|
44
|
-
# Get plugin version
|
|
45
|
-
cat ~/.config/opencode/plugins/installed_plugins.json 2>/dev/null | grep -A5 "compound-engineering" | head -10 || echo "Plugin info not found"
|
|
46
|
-
|
|
47
|
-
# Get OpenCode version
|
|
48
|
-
claude --version 2>/dev/null || echo "Claude CLI version unknown"
|
|
42
|
+
Automatically gather environment details. Detect the coding agent platform and collect what is available:
|
|
49
43
|
|
|
50
|
-
|
|
44
|
+
**OS info (all platforms):**
|
|
45
|
+
```bash
|
|
51
46
|
uname -a
|
|
52
47
|
```
|
|
53
48
|
|
|
49
|
+
**Plugin version:** Read the plugin manifest or installed plugin metadata. Common locations:
|
|
50
|
+
- OpenCode: `~/.config/opencode/plugins/installed_plugins.json`
|
|
51
|
+
- Codex: `.codex/plugins/` or project config
|
|
52
|
+
- Other platforms: check the platform's plugin registry
|
|
53
|
+
|
|
54
|
+
**Agent CLI version:** Run the platform's version command:
|
|
55
|
+
- OpenCode: `opencode --version`
|
|
56
|
+
- Codex: `codex --version`
|
|
57
|
+
- Other platforms: use the appropriate CLI version flag
|
|
58
|
+
|
|
59
|
+
If any of these fail, note "unknown" and continue — do not block the report.
|
|
60
|
+
|
|
54
61
|
## Step 3: Format the Bug Report
|
|
55
62
|
|
|
56
63
|
Create a well-structured bug report with:
|
|
@@ -63,8 +70,9 @@ Create a well-structured bug report with:
|
|
|
63
70
|
|
|
64
71
|
## Environment
|
|
65
72
|
|
|
66
|
-
- **Plugin Version:** [from
|
|
67
|
-
- **
|
|
73
|
+
- **Plugin Version:** [from plugin manifest/registry]
|
|
74
|
+
- **Agent Platform:** [e.g., OpenCode, Codex, Copilot, Pi, Kilo]
|
|
75
|
+
- **Agent Version:** [from CLI version command]
|
|
68
76
|
- **OS:** [from uname]
|
|
69
77
|
|
|
70
78
|
## What Happened
|
|
@@ -83,16 +91,14 @@ Create a well-structured bug report with:
|
|
|
83
91
|
|
|
84
92
|
## Error Messages
|
|
85
93
|
|
|
86
|
-
```
|
|
87
94
|
[Any error output]
|
|
88
|
-
```
|
|
89
95
|
|
|
90
96
|
## Additional Context
|
|
91
97
|
|
|
92
98
|
[Any other relevant information]
|
|
93
99
|
|
|
94
100
|
---
|
|
95
|
-
*Reported via `/report-bug`
|
|
101
|
+
*Reported via `/report-bug-ce` skill*
|
|
96
102
|
```
|
|
97
103
|
|
|
98
104
|
## Step 4: Create GitHub Issue
|
|
@@ -101,17 +107,17 @@ Use the GitHub CLI to create the issue:
|
|
|
101
107
|
|
|
102
108
|
```bash
|
|
103
109
|
gh issue create \
|
|
104
|
-
--repo
|
|
105
|
-
--title "[
|
|
110
|
+
--repo marcusrbrown/systematic \
|
|
111
|
+
--title "[systematic] Bug: [Brief description]" \
|
|
106
112
|
--body "[Formatted bug report from Step 3]" \
|
|
107
|
-
--label "bug
|
|
113
|
+
--label "bug"
|
|
108
114
|
```
|
|
109
115
|
|
|
110
116
|
**Note:** If labels don't exist, create without labels:
|
|
111
117
|
```bash
|
|
112
118
|
gh issue create \
|
|
113
|
-
--repo
|
|
114
|
-
--title "[
|
|
119
|
+
--repo marcusrbrown/systematic \
|
|
120
|
+
--title "[systematic] Bug: [Brief description]" \
|
|
115
121
|
--body "[Formatted bug report]"
|
|
116
122
|
```
|
|
117
123
|
|
|
@@ -125,28 +131,27 @@ After the issue is created:
|
|
|
125
131
|
## Output Format
|
|
126
132
|
|
|
127
133
|
```
|
|
128
|
-
|
|
134
|
+
Bug report submitted successfully!
|
|
129
135
|
|
|
130
|
-
Issue: https://github.com/
|
|
131
|
-
Title: [
|
|
136
|
+
Issue: https://github.com/marcusrbrown/systematic/issues/[NUMBER]
|
|
137
|
+
Title: [systematic] Bug: [description]
|
|
132
138
|
|
|
133
|
-
Thank you for helping improve
|
|
139
|
+
Thank you for helping improve Systematic!
|
|
134
140
|
The maintainer will review your report and respond as soon as possible.
|
|
135
141
|
```
|
|
136
142
|
|
|
137
143
|
## Error Handling
|
|
138
144
|
|
|
139
|
-
- If `gh` CLI is not authenticated:
|
|
140
|
-
- If issue creation fails:
|
|
141
|
-
- If required information is missing:
|
|
145
|
+
- If `gh` CLI is not installed or not authenticated: prompt the user to install/authenticate first
|
|
146
|
+
- If issue creation fails: display the formatted report so the user can manually create the issue
|
|
147
|
+
- If required information is missing: re-prompt for that specific field
|
|
142
148
|
|
|
143
149
|
## Privacy Notice
|
|
144
150
|
|
|
145
|
-
This
|
|
151
|
+
This skill does NOT collect:
|
|
146
152
|
- Personal information
|
|
147
153
|
- API keys or credentials
|
|
148
|
-
- Private code from
|
|
154
|
+
- Private code from projects
|
|
149
155
|
- File paths beyond basic OS info
|
|
150
156
|
|
|
151
157
|
Only technical information about the bug is included in the report.
|
|
152
|
-
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: resolve-todo-parallel
|
|
3
|
+
description: Use this skill when there are multiple unresolved CLI todo files and you want to resolve them in parallel, document learnings, and clean up completed entries in one disciplined pass.
|
|
4
|
+
argument-hint: '[optional: specific todo ID or pattern]'
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Resolve all TODO comments using parallel processing, document lessons learned, then clean up completed todos.
|
|
8
|
+
|
|
9
|
+
## Workflow
|
|
10
|
+
|
|
11
|
+
### 1. Analyze
|
|
12
|
+
|
|
13
|
+
Get all unresolved TODOs from the /todos/*.md directory
|
|
14
|
+
|
|
15
|
+
If any todo recommends deleting, removing, or gitignoring files in `docs/brainstorms/`, `docs/plans/`, or `docs/solutions/`, skip it and mark it as `wont_fix`. These are Systematic workflow artifacts that are intentional and permanent.
|
|
16
|
+
|
|
17
|
+
### 2. Plan
|
|
18
|
+
|
|
19
|
+
Create a task list of all unresolved items grouped by type (e.g., `todowrite` in OpenCode, `update_plan` in Codex). Analyze dependencies and prioritize items that others depend on. For example, if a rename is needed, it must complete before dependent items. Output a mermaid flow diagram showing execution order — what can run in parallel, and what must run first.
|
|
20
|
+
|
|
21
|
+
### 3. Implement (PARALLEL)
|
|
22
|
+
|
|
23
|
+
Spawn a `pr-comment-resolver` agent for each unresolved item.
|
|
24
|
+
|
|
25
|
+
If there are 3 items, spawn 3 agents — one per item. Prefer running all agents in parallel; if the platform does not support parallel dispatch, run them sequentially respecting the dependency order from step 2.
|
|
26
|
+
|
|
27
|
+
Keep parent-context pressure bounded:
|
|
28
|
+
- If there are 1-4 unresolved items, direct parallel returns are fine
|
|
29
|
+
- If there are 5+ unresolved items, launch in batches of at most 4 agents at a time
|
|
30
|
+
- Require each resolver agent to return only a short status summary to the parent: todo handled, files changed, tests run or skipped, and any blocker that still needs follow-up
|
|
31
|
+
|
|
32
|
+
If the todo set is large enough that even batched short returns are likely to get noisy, use a per-run scratch directory such as `.context/systematic/resolve-todo-parallel/<run-id>/`:
|
|
33
|
+
- Have each resolver write a compact artifact for its todo there
|
|
34
|
+
- Return only a completion summary to the parent
|
|
35
|
+
- Re-read only the artifacts that are needed to summarize outcomes, document learnings, or decide whether a todo is truly resolved
|
|
36
|
+
|
|
37
|
+
### 4. Commit & Resolve
|
|
38
|
+
|
|
39
|
+
- Commit changes
|
|
40
|
+
- Remove the TODO from the file, and mark it as resolved.
|
|
41
|
+
- Push to remote
|
|
42
|
+
|
|
43
|
+
GATE: STOP. Verify that todos have been resolved and changes committed. Do NOT proceed to step 5 if no todos were resolved.
|
|
44
|
+
|
|
45
|
+
### 5. Compound on Lessons Learned
|
|
46
|
+
|
|
47
|
+
Load the `ce:compound` skill to document what was learned from resolving the todos.
|
|
48
|
+
|
|
49
|
+
The todo resolutions often surface patterns, recurring issues, or architectural insights worth capturing. This step ensures that knowledge compounds rather than being lost.
|
|
50
|
+
|
|
51
|
+
GATE: STOP. Verify that the compound skill produced a solution document in `docs/solutions/`. If no document was created (user declined or no non-trivial learnings), continue to step 6.
|
|
52
|
+
|
|
53
|
+
### 6. Clean Up Completed Todos
|
|
54
|
+
|
|
55
|
+
List all todos and identify those with `done` or `resolved` status, then delete them to keep the todo list clean and actionable.
|
|
56
|
+
|
|
57
|
+
If a scratch directory was used and the user did not ask to inspect it, clean it up after todo cleanup succeeds.
|
|
58
|
+
|
|
59
|
+
After cleanup, output a summary:
|
|
60
|
+
|
|
61
|
+
```
|
|
62
|
+
Todos resolved: [count]
|
|
63
|
+
Lessons documented: [path to solution doc, or "skipped"]
|
|
64
|
+
Todos cleaned up: [count deleted]
|
|
65
|
+
```
|
package/skills/setup/SKILL.md
CHANGED
|
@@ -8,7 +8,7 @@ disable-model-invocation: true
|
|
|
8
8
|
|
|
9
9
|
## Interaction Method
|
|
10
10
|
|
|
11
|
-
If `
|
|
11
|
+
If `question` is available, use it for all prompts below.
|
|
12
12
|
|
|
13
13
|
If not, present each question as a numbered list and wait for a reply before proceeding to the next step. For multiSelect questions, accept comma-separated numbers (e.g. `1, 3`). Never skip or auto-configure.
|
|
14
14
|
|
|
@@ -16,7 +16,7 @@ Interactive setup for `systematic.local.md` — configures which agents run duri
|
|
|
16
16
|
|
|
17
17
|
## Step 1: Check Existing Config
|
|
18
18
|
|
|
19
|
-
Read `systematic.local.md` in the project root. If it exists, display current settings summary and use
|
|
19
|
+
Read `systematic.local.md` in the project root. If it exists, display current settings summary and use question:
|
|
20
20
|
|
|
21
21
|
```
|
|
22
22
|
question: "Settings file already exists. What would you like to do?"
|
|
@@ -47,7 +47,7 @@ test -f requirements.txt && echo "python" || \
|
|
|
47
47
|
echo "general"
|
|
48
48
|
```
|
|
49
49
|
|
|
50
|
-
Use
|
|
50
|
+
Use question:
|
|
51
51
|
|
|
52
52
|
```
|
|
53
53
|
question: "Detected {type} project. How would you like to configure?"
|
|
@@ -133,8 +133,8 @@ If the user passed a port number (e.g., `/test-browser 5000` or `/test-browser -
|
|
|
133
133
|
|
|
134
134
|
**Priority 2: AGENTS.md / project instructions**
|
|
135
135
|
```bash
|
|
136
|
-
# Check
|
|
137
|
-
grep -Eio '(port\s*[:=]\s*|localhost:)([0-9]{4,5})'
|
|
136
|
+
# Check AGENTS.md for port references
|
|
137
|
+
grep -Eio '(port\s*[:=]\s*|localhost:)([0-9]{4,5})' AGENTS.md 2>/dev/null | grep -Eo '[0-9]{4,5}' | head -1
|
|
138
138
|
```
|
|
139
139
|
|
|
140
140
|
**Priority 3: package.json scripts**
|
|
@@ -158,7 +158,7 @@ Store the result in a `PORT` variable for use in all subsequent steps.
|
|
|
158
158
|
# Combined detection (run this)
|
|
159
159
|
PORT="${EXPLICIT_PORT:-}"
|
|
160
160
|
if [ -z "$PORT" ]; then
|
|
161
|
-
PORT=$(grep -Eio '(port\s*[:=]\s*|localhost:)([0-9]{4,5})'
|
|
161
|
+
PORT=$(grep -Eio '(port\s*[:=]\s*|localhost:)([0-9]{4,5})' AGENTS.md 2>/dev/null | grep -Eo '[0-9]{4,5}' | head -1)
|
|
162
162
|
fi
|
|
163
163
|
if [ -z "$PORT" ]; then
|
|
164
164
|
PORT=$(grep -Eo '\-\-port[= ]+[0-9]{4,5}' package.json 2>/dev/null | grep -Eo '[0-9]{4,5}' | head -1)
|
|
@@ -391,4 +391,3 @@ agent-browser --headed click @e1 # Click in visible browser
|
|
|
391
391
|
agent-browser wait @e1 # Wait for element
|
|
392
392
|
agent-browser wait 2000 # Wait milliseconds
|
|
393
393
|
```
|
|
394
|
-
|
package/commands/.gitkeep
DELETED
|
File without changes
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: create-agent-skill
|
|
3
|
-
description: Create or edit OpenCode skills with expert guidance on structure and best practices
|
|
4
|
-
allowed-tools: Skill(create-agent-skills)
|
|
5
|
-
argument-hint: '[skill description or requirements]'
|
|
6
|
-
disable-model-invocation: true
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
Invoke the create-agent-skills skill for: $ARGUMENTS
|
|
10
|
-
|