@jetrabbits/agentic 0.3.2 → 0.4.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/CHANGELOG.md +21 -0
- package/Makefile +6 -1
- package/README.md +8 -2
- package/agentic +730 -66
- package/docs/agentic-stabilization/README.md +6 -5
- package/docs/agentic-usage.md +20 -3
- package/docs/mcp/README.md +28 -0
- package/docs/opencode_setup.md +12 -2
- package/docs/review-pipeline/examples/instruction-review.example.md +95 -0
- package/docs/review-pipeline/examples/memory-curation.example.md +56 -0
- package/docs/review-pipeline/examples/summary.example.md +18 -0
- package/extensions/opencode/agents/developer.md +1 -1
- package/extensions/opencode/agents/devops-engineer.md +1 -1
- package/extensions/opencode/agents/instruction_reviewer.md +1 -1
- package/extensions/opencode/agents/memory_curator.md +1 -1
- package/extensions/opencode/agents/team-lead.md +1 -1
- package/extensions/opencode/opencode.json +16 -36
- package/extensions/opencode/profiles/githubcopilot/opencode.json +88 -0
- package/extensions/opencode/profiles/openai/opencode.json +100 -0
- package/package.json +1 -1
- package/extensions/opencode/plugins/agent-model-mapper.ts +0 -117
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
- Post-install doctor checks run independently for `codex`, `opencode`, `claude`, and `gemini`.
|
|
6
6
|
- `AGENTIC_DOCTOR_TIMEOUT_SECONDS` defaults to `10`; a timeout is reported as a doctor failure and install continues.
|
|
7
7
|
- Codex doctor runs non-interactively with `--ephemeral`, `--sandbox workspace-write`, and the same lightweight smoke prompt as other supported doctor targets.
|
|
8
|
-
- OpenCode uses `agent-model-mapper` instead of the removed `model-checker` artifacts.
|
|
8
|
+
- OpenCode uses an install-time `agent-model-mapper` flow instead of the removed `model-checker` artifacts.
|
|
9
9
|
- `agent-model-mapper` writes `.opencode/opencode.json` during interactive install only after confirmation.
|
|
10
|
-
- `agent-model-mapper` uses `fzf` for install-time model dropdowns when available
|
|
11
|
-
-
|
|
10
|
+
- `agent-model-mapper` uses `fzf` for install-time model dropdowns when available.
|
|
11
|
+
- No runtime OpenCode plugin is shipped for `agent-model-mapper`, so OpenCode startup never opens `fzf`, asks questions, or writes project files.
|
|
12
12
|
- Context7 offers an interactive key mode: configure without a key or enter `CONTEXT7_API_KEY` for the selected target configs.
|
|
13
13
|
- OpenCode MemPalace setup writes `mempalace-mcp` config and initializes/mines project memory into a project-specific wing without LLM calls.
|
|
14
14
|
- Telegram notification credentials are read from project `.agentic.json` when the plugin is enabled.
|
|
@@ -24,8 +24,9 @@
|
|
|
24
24
|
- Hung agent doctor commands time out and do not stop remaining selected agents from running.
|
|
25
25
|
- Doctor output includes timeout duration, exit status, and per-agent elapsed time.
|
|
26
26
|
- `extensions/opencode/plugins/model-checker.ts` and `model-checker.json` are absent.
|
|
27
|
-
- `extensions/opencode/
|
|
28
|
-
-
|
|
27
|
+
- `extensions/opencode/plugins/agent-model-mapper.ts` is absent.
|
|
28
|
+
- `extensions/opencode/opencode.json` does not list `agent-model-mapper`.
|
|
29
|
+
- Install-time model mapper execution still writes confirmed role model mappings.
|
|
29
30
|
- Telegram plugin tests prove environment-only credentials and no secret output.
|
|
30
31
|
- Real blackbox tests print created files, managed guidance sources, and MCP config evidence, then save instruction evidence to a temp file without printing Telegram secrets.
|
|
31
32
|
|
package/docs/agentic-usage.md
CHANGED
|
@@ -90,7 +90,16 @@ agentic install \
|
|
|
90
90
|
--specializations software.general,software.backend
|
|
91
91
|
```
|
|
92
92
|
|
|
93
|
-
After install, `agentic` writes `.agentic.json` in the target project. It records copied/generated files and their hashes. A later install rerun updates only manifest-managed files and skips files changed by the user. Generated guidance is written to root `AGENTS.md
|
|
93
|
+
After install, `agentic` writes `.agentic.json` in the target project. It records copied/generated files and their hashes. A later install rerun updates only manifest-managed files and skips files changed by the user. Generated guidance is always written to root `AGENTS.md`; when OpenCode is selected, `agentic` also writes `.opencode/AGENTS.md`.
|
|
94
|
+
|
|
95
|
+
When Codex is selected, `agentic` creates or updates the project-local `.codex/config.toml` with Codex memories enabled:
|
|
96
|
+
|
|
97
|
+
```toml
|
|
98
|
+
[features]
|
|
99
|
+
memories = true
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
This config file follows the same manifest-managed safeguards as other generated project files.
|
|
94
103
|
|
|
95
104
|
After the project files are generated, `agentic` starts timestamped operational logging and mirrors install output to a temporary log file such as:
|
|
96
105
|
|
|
@@ -137,6 +146,8 @@ TUI uses `fzf` for interactive selection. If `fzf` is missing, `agentic` can:
|
|
|
137
146
|
|
|
138
147
|
`--install-fzf` only affects `self-install`. If auto-install fails, self-install still completes.
|
|
139
148
|
|
|
149
|
+
The CLI supports the system bash 3.2 shipped with macOS and does not require installing a newer bash.
|
|
150
|
+
|
|
140
151
|
Manual install examples:
|
|
141
152
|
|
|
142
153
|
Linux:
|
|
@@ -163,13 +174,19 @@ scoop install fzf
|
|
|
163
174
|
|
|
164
175
|
## OpenCode optional plugins
|
|
165
176
|
|
|
166
|
-
When `opencode` is selected, interactive installs ask whether to enable Telegram
|
|
177
|
+
When `opencode` is selected, interactive installs ask whether to enable `Telegram Notifications` and `Agent Model Mapping`. These are readable menu labels for the stable internal ids `telegram-notification` and `agent-model-mapper`. The answer is stored globally in:
|
|
167
178
|
|
|
168
179
|
```text
|
|
169
180
|
~/.config/agentic/opencode-plugins.json
|
|
170
181
|
```
|
|
171
182
|
|
|
172
|
-
Non-interactive installs create a disabled config when no config exists. Interactive installs ask for Telegram `botToken` and `chatId` when `telegram-notification` is selected. Those credentials are written to the target project `.agentic.json` under `settings.opencode_plugins.telegram`, not to `~/.config/agentic/opencode-plugins.json`. Treat `.agentic.json` as plaintext secret-bearing project config when Telegram is enabled and do not commit it to public repositories. When enabled, `agent-model-mapper` runs during interactive `agentic install`/`agentic tui`, uses `fzf` as a dropdown picker when available, and writes `.opencode/opencode.json` only after a Confirm action. OpenCode startup
|
|
183
|
+
Non-interactive installs create a disabled config when no config exists. Interactive installs ask for Telegram `botToken` and `chatId` when `telegram-notification` is selected. Those credentials are written to the target project `.agentic.json` under `settings.opencode_plugins.telegram`, not to `~/.config/agentic/opencode-plugins.json`. Treat `.agentic.json` as plaintext secret-bearing project config when Telegram is enabled and do not commit it to public repositories. When enabled, `agent-model-mapper` runs during interactive `agentic install`/`agentic tui`, uses `fzf` as a dropdown picker when available, and writes `.opencode/opencode.json` only after a Confirm action. OpenCode startup does not load a mapper runtime plugin or prompt for model mapping.
|
|
184
|
+
|
|
185
|
+
OpenCode model profiles are stored in `extensions/opencode/profiles` and appear in the same optional OpenCode selection menu as the plugin choices. The built-in choices are `OpenAI Model Profile` and `GitHub Copilot Model Profile`; non-interactive installs can choose them with `AGENTIC_OPENCODE_PROFILE=openai` or `AGENTIC_OPENCODE_PROFILE=githubcopilot`. Profile selection merges agent model mappings into `.opencode/opencode.json`, then MCP configuration is merged afterward.
|
|
186
|
+
|
|
187
|
+
OpenCode MCP config uses top-level `mcp`, not `mcpServers`. Agentic migrates legacy OpenCode `mcpServers` entries into `mcp` during install. Codex continues to use `.codex/config.toml` with `[mcp_servers.*]` sections.
|
|
188
|
+
|
|
189
|
+
For selected Kubernetes and Docker MCP integrations, `agentic` performs non-fatal local checks after config generation: `kubectl version` for Kubernetes and `docker mcp --version` for Docker MCP. Failed checks appear as warnings in the final install report with official setup links. Docker MCP server entries are generated under the server name `docker`.
|
|
173
190
|
|
|
174
191
|
## Context7
|
|
175
192
|
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Agentic MCP server selection
|
|
2
|
+
|
|
3
|
+
`agentic tui` includes a dedicated `Select MCP servers to enable:` step after target agent platform selection. The fzf flow supports multi-select with Space or Tab, Enter to confirm, Esc to skip, and a `None / skip` entry for users who do not want MCP configuration generated for the current install.
|
|
4
|
+
|
|
5
|
+
The MCP menu is driven by the CLI MCP registry rather than hardcoded UI rows. The registry tracks each server's id, display title, description, security level, default disabled state, and generated config block.
|
|
6
|
+
|
|
7
|
+
Supported registry ids:
|
|
8
|
+
|
|
9
|
+
| id | Description | Security |
|
|
10
|
+
| --- | --- | --- |
|
|
11
|
+
| `opencode-docs` | OpenCode docs MCP | safe |
|
|
12
|
+
| `playwright` | Browser automation via Playwright MCP | sensitive |
|
|
13
|
+
| `kubernetes` | Kubernetes pods/logs/exec management | dangerous |
|
|
14
|
+
| `youtube-transcript` | YouTube transcript extraction | safe |
|
|
15
|
+
| `docker-mcp` | Docker MCP Gateway | dangerous |
|
|
16
|
+
| `context7` | Fresh library documentation | safe |
|
|
17
|
+
| `mempalace` | Persistent project memory | sensitive |
|
|
18
|
+
| `anydb` | Database access MCP | dangerous |
|
|
19
|
+
|
|
20
|
+
For non-interactive installs, set `AGENTIC_ENABLE_MCPS` to a comma-separated list of registry ids. Dangerous MCPs require explicit confirmation before config is written. In non-interactive installs, set `AGENTIC_CONFIRM_DANGEROUS_MCP=1` to enable selected dangerous MCPs; otherwise agentic skips them and reports a warning.
|
|
21
|
+
|
|
22
|
+
OpenCode config generation writes current OpenCode-compatible top-level `mcp` entries, not legacy `mcpServers`. Re-running agentic preserves existing unknown fields, preserves an existing `$schema`, updates only the selected MCP entries, and migrates any existing OpenCode `mcpServers` entries into `mcp` before removing the invalid legacy key.
|
|
23
|
+
|
|
24
|
+
Codex config generation remains TOML-based and writes `[mcp_servers.<name>]` sections in `.codex/config.toml`.
|
|
25
|
+
|
|
26
|
+
When `kubernetes` is selected, `agentic` checks whether `kubectl version` succeeds. If it does not, install continues and the final report warns with the official kubectl setup guide: <https://kubernetes.io/docs/tasks/tools/>.
|
|
27
|
+
|
|
28
|
+
When `docker-mcp` is selected, generated MCP server names use `docker` instead of the older `MCP_DOCKER`. `agentic` checks whether `docker mcp --version` succeeds. If it does not, install continues and the final report warns with Docker setup links: <https://docs.docker.com/get-started/get-docker/> and <https://docs.docker.com/ai/mcp-catalog-and-toolkit/>.
|
package/docs/opencode_setup.md
CHANGED
|
@@ -33,7 +33,7 @@ When `agentic` installs the OpenCode extension, it configures optional plugins i
|
|
|
33
33
|
~/.config/agentic/opencode-plugins.json
|
|
34
34
|
```
|
|
35
35
|
|
|
36
|
-
Telegram notifications and agent model mapping are opt-in. Interactive `agentic install` and `agentic tui` ask for OpenCode plugin selection whenever `opencode` is selected
|
|
36
|
+
Telegram notifications and agent model mapping are opt-in. Interactive `agentic install` and `agentic tui` ask for OpenCode plugin selection whenever `opencode` is selected. The menu uses readable labels (`Telegram Notifications` and `Agent Model Mapping`) while keeping the stored internal ids `telegram-notification` and `agent-model-mapper`. The answer rewrites this config. During manifest-based upgrade/re-install sync, existing plugin settings are kept so automated refreshes do not open prompts. If the config is absent or a plugin is disabled, the plugin returns no hooks and OpenCode continues without that behavior.
|
|
37
37
|
|
|
38
38
|
When `telegram-notification` is selected interactively, `agentic` asks for `botToken` and `chatId` and stores them in the target project's `.agentic.json`:
|
|
39
39
|
|
|
@@ -46,7 +46,17 @@ The runtime plugin reads credentials from the project `.agentic.json`; it does n
|
|
|
46
46
|
|
|
47
47
|
Non-interactive `agentic install` defaults optional plugins to disabled when no config exists.
|
|
48
48
|
|
|
49
|
-
`agent-model-mapper` reads roles from target `.opencode/agents/*.md` and discovers model names from `~/.config/opencode/opencode.json`, then adds models from active providers in `~/.local/share/opencode/auth.json` using non-deprecated entries in `~/.cache/opencode/models.json`. When enabled, interactive `agentic install`/`agentic tui` prompts for a main and fallback model per role, using `fzf` as a dropdown picker when available, and writes `.opencode/opencode.json` only after a Confirm action. OpenCode startup never opens `fzf` or waits for model input
|
|
49
|
+
`agent-model-mapper` reads roles from target `.opencode/agents/*.md` and discovers model names from `~/.config/opencode/opencode.json`, then adds models from active providers in `~/.local/share/opencode/auth.json` using non-deprecated entries in `~/.cache/opencode/models.json`. When enabled, interactive `agentic install`/`agentic tui` prompts for a main and fallback model per role, using `fzf` as a dropdown picker when available, and writes `.opencode/opencode.json` only after a Confirm action. OpenCode startup never opens `fzf` or waits for model input because no mapper runtime plugin is shipped or registered.
|
|
50
|
+
|
|
51
|
+
Agentic also ships reusable OpenCode model profiles in:
|
|
52
|
+
|
|
53
|
+
```text
|
|
54
|
+
extensions/opencode/profiles/
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
The current profiles are `OpenAI Model Profile` (`openai/opencode.json`) and `GitHub Copilot Model Profile` (`githubcopilot/opencode.json`). They appear in the same optional OpenCode selection menu as the plugin choices. Selecting one merges its agent model mapping into `.opencode/opencode.json`; later MCP configuration is merged on top, so profile selection does not block future MCP sections.
|
|
58
|
+
|
|
59
|
+
For MCP servers, OpenCode uses top-level `mcp` entries. Agentic migrates legacy `mcpServers` in OpenCode configs to `mcp` and removes the invalid key.
|
|
50
60
|
|
|
51
61
|
For OpenCode targets, `agentic` writes generated operating guidance to `.opencode/AGENTS.md`. If OpenCode is installed
|
|
52
62
|
alongside another agent target, root `AGENTS.md` is generated as well for the non-OpenCode target.
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
# Instruction Effectiveness Review
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
The instruction set helped the task stay inside the existing extension layout and prevented the new roles from being
|
|
6
|
+
added to the mandatory SDLC matrix. Tool discipline was mostly strong because repository facts were discovered before
|
|
7
|
+
editing. The main gap was that review pipeline behavior had to be inferred from docs rather than a dedicated guidance
|
|
8
|
+
section. No code quality findings are included because they are outside this role's scope.
|
|
9
|
+
|
|
10
|
+
## Scores
|
|
11
|
+
|
|
12
|
+
| Category | Score 0-10 | Notes |
|
|
13
|
+
|---|---:|---|
|
|
14
|
+
| Clarity | 8 | Role boundaries were clear after reading README and SDLC rules. |
|
|
15
|
+
| Usefulness | 8 | Existing extension patterns made implementation straightforward. |
|
|
16
|
+
| Tool discipline | 8 | File inspection was targeted and avoided repeated broad loops. |
|
|
17
|
+
| Memory discipline | 7 | Memory rules existed, but post-task curation was not documented. |
|
|
18
|
+
| Ambiguity resistance | 7 | The repo lacked a review pipeline section, causing one product decision. |
|
|
19
|
+
| Token efficiency | 7 | Some duplicate role text is necessary for installed agents. |
|
|
20
|
+
| Overall | 8 | Minor instruction additions are enough. |
|
|
21
|
+
|
|
22
|
+
## Effective instructions
|
|
23
|
+
|
|
24
|
+
| Instruction | Impact | Evidence |
|
|
25
|
+
|---|---|---|
|
|
26
|
+
| Keep SDLC roles one-to-one | Prevented specialist roles from replacing core SDLC owners. | `sdlc-role-responsibilities.md` keeps the mandatory matrix unchanged. |
|
|
27
|
+
| Discover project guidance before implementation | Found the extension-based agent layout. | Existing files live under `extensions/*/agents`. |
|
|
28
|
+
|
|
29
|
+
## Harmful instructions
|
|
30
|
+
|
|
31
|
+
| Instruction | Problem | Evidence |
|
|
32
|
+
|---|---|---|
|
|
33
|
+
| None | No instruction directly caused task failure. | The task completed with scoped docs and tests. |
|
|
34
|
+
|
|
35
|
+
## Missing instructions
|
|
36
|
+
|
|
37
|
+
| Missing instruction | Why needed | Suggested text |
|
|
38
|
+
|---|---|---|
|
|
39
|
+
| Post-task review pipeline guidance | Future agents need to know when specialists run and where reports go. | Add a review pipeline section that lists optional roles and `.reviews/<task-id>/` output paths. |
|
|
40
|
+
|
|
41
|
+
## Redundant instructions
|
|
42
|
+
|
|
43
|
+
| Instruction | Reason |
|
|
44
|
+
|---|---|
|
|
45
|
+
| Repeated role boundaries across extension files | Required because each installed agent file must be self-contained. |
|
|
46
|
+
|
|
47
|
+
## Tool usage findings
|
|
48
|
+
|
|
49
|
+
| Tool | Calls | Useful | Waste | Notes |
|
|
50
|
+
|---|---:|---:|---:|---|
|
|
51
|
+
| `rg` | 4 | 4 | 0 | Located role and installer references quickly. |
|
|
52
|
+
| `sed` | 5 | 5 | 0 | Confirmed local file formats before edits. |
|
|
53
|
+
| `apply_patch` | 3 | 3 | 0 | Added and updated tracked files. |
|
|
54
|
+
|
|
55
|
+
## Suggested edits
|
|
56
|
+
|
|
57
|
+
### Remove
|
|
58
|
+
|
|
59
|
+
```md
|
|
60
|
+
None.
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
### Replace
|
|
64
|
+
|
|
65
|
+
```md
|
|
66
|
+
The same 7-agent team works across supported IDEs.
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
with:
|
|
70
|
+
|
|
71
|
+
```md
|
|
72
|
+
The same 7-agent SDLC team works across supported IDEs, with optional post-task review specialists.
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### Add
|
|
76
|
+
|
|
77
|
+
```md
|
|
78
|
+
Use `instruction_reviewer` and `memory_curator` after non-trivial tasks when instruction quality or memory hygiene needs review.
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
## Estimated waste
|
|
82
|
+
|
|
83
|
+
| Metric | Estimate |
|
|
84
|
+
|---|---:|
|
|
85
|
+
| Extra tokens | 500 |
|
|
86
|
+
| Extra tool calls | 1 |
|
|
87
|
+
| Extra retries | 0 |
|
|
88
|
+
| Extra runtime | 2 minutes |
|
|
89
|
+
|
|
90
|
+
## Final recommendation
|
|
91
|
+
|
|
92
|
+
Minor edits
|
|
93
|
+
|
|
94
|
+
The instruction set is generally effective. Add explicit review pipeline guidance so future runs do not have to infer
|
|
95
|
+
how specialist agents should be used.
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# Memory Curation Report
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
The task introduced a durable convention: post-task review specialists are optional and remain outside the mandatory
|
|
6
|
+
SDLC role matrix. That convention is likely to help future agent-system changes. Temporary test output, command logs,
|
|
7
|
+
and generated report examples should not be stored as memory. No automatic memory write is recommended without user or
|
|
8
|
+
orchestrator approval.
|
|
9
|
+
|
|
10
|
+
## Store
|
|
11
|
+
|
|
12
|
+
| Priority | Fact | Reason | Suggested memory text |
|
|
13
|
+
|---|---|---|---|
|
|
14
|
+
| High | `instruction_reviewer` and `memory_curator` are optional post-task specialists, not SDLC owners. | Prevents future role-boundary drift. | Agentic treats `instruction_reviewer` and `memory_curator` as optional post-task review specialists outside the mandatory SDLC role matrix. |
|
|
15
|
+
| Medium | Review artifacts use `.reviews/<task-id>/` or timestamp fallback. | Helps future tasks place reports consistently. | Post-task review reports should be written under `.reviews/<task-id>/`, or `.reviews/YYYY-MM-DD-HHMMSS/` when no task id exists. |
|
|
16
|
+
|
|
17
|
+
## Update
|
|
18
|
+
|
|
19
|
+
| Existing memory | Replace with | Reason |
|
|
20
|
+
|---|---|---|
|
|
21
|
+
| None | None | No stale memory was identified. |
|
|
22
|
+
|
|
23
|
+
## Merge
|
|
24
|
+
|
|
25
|
+
| Memory A | Memory B | Merged memory | Reason |
|
|
26
|
+
|---|---|---|---|
|
|
27
|
+
| None | None | None | No duplicate memory was identified. |
|
|
28
|
+
|
|
29
|
+
## Ignore
|
|
30
|
+
|
|
31
|
+
| Fact | Reason |
|
|
32
|
+
|---|---|
|
|
33
|
+
| Exact shell output from test runs | Temporary logs are low-value memory. |
|
|
34
|
+
| Generated example report wording | Generated code/docs examples should remain in files, not memory. |
|
|
35
|
+
| One-time task status | Current task state is transient. |
|
|
36
|
+
|
|
37
|
+
## Delete candidates
|
|
38
|
+
|
|
39
|
+
| Memory | Reason |
|
|
40
|
+
|---|---|
|
|
41
|
+
| None | No delete candidate was found. |
|
|
42
|
+
|
|
43
|
+
## Contradictions
|
|
44
|
+
|
|
45
|
+
| Memory | New information | Resolution |
|
|
46
|
+
|---|---|---|
|
|
47
|
+
| None | None | No contradiction found. |
|
|
48
|
+
|
|
49
|
+
## Final recommendation
|
|
50
|
+
|
|
51
|
+
Store count: 2
|
|
52
|
+
Update count: 0
|
|
53
|
+
Merge count: 0
|
|
54
|
+
Delete candidate count: 0
|
|
55
|
+
Memory quality score: 8/10
|
|
56
|
+
Store only the two durable conventions. Ignore logs, generated examples, and current task progress.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Review Summary
|
|
2
|
+
|
|
3
|
+
## Instruction review
|
|
4
|
+
|
|
5
|
+
Overall score: 8/10
|
|
6
|
+
Recommendation: Minor edits
|
|
7
|
+
|
|
8
|
+
## Memory curation
|
|
9
|
+
|
|
10
|
+
Store: 2
|
|
11
|
+
Update: 0
|
|
12
|
+
Delete candidates: 0
|
|
13
|
+
|
|
14
|
+
## Action items
|
|
15
|
+
|
|
16
|
+
- [ ] Document optional post-task specialists in README.
|
|
17
|
+
- [ ] Keep specialist roles outside the mandatory SDLC matrix.
|
|
18
|
+
- [ ] Store only durable review-pipeline conventions, not logs or generated examples.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: Instruction Reviewer for post-task reports on instruction effectiveness, tool discipline, memory discipline, and context efficiency
|
|
3
|
-
mode:
|
|
3
|
+
mode: all
|
|
4
4
|
vibe: Reviews the instructions that shaped the work, not the code that was produced.
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://opencode.ai/config.json",
|
|
3
3
|
"plugin": [
|
|
4
|
-
"agent-model-mapper",
|
|
5
4
|
"sound-notification",
|
|
6
5
|
"telegram-notification"
|
|
7
6
|
],
|
|
@@ -9,10 +8,8 @@
|
|
|
9
8
|
"product-owner": {
|
|
10
9
|
"description": "Main coordinator for feature development workflow",
|
|
11
10
|
"mode": "primary",
|
|
12
|
-
"model": "
|
|
11
|
+
"model": "",
|
|
13
12
|
"fallback": [
|
|
14
|
-
"openai/gpt-5.4",
|
|
15
|
-
"opencode/minimax-m2.5-free"
|
|
16
13
|
],
|
|
17
14
|
"permission": {
|
|
18
15
|
"task": {
|
|
@@ -29,88 +26,71 @@
|
|
|
29
26
|
"pm": {
|
|
30
27
|
"description": "Project Manager - coordinates workflow",
|
|
31
28
|
"mode": "subagent",
|
|
32
|
-
"model": "
|
|
29
|
+
"model": "",
|
|
33
30
|
"fallback": [
|
|
34
|
-
"openai/gpt-5.4",
|
|
35
|
-
"opencode/minimax-m2.5-free"
|
|
36
31
|
],
|
|
37
32
|
"permission": {
|
|
38
33
|
"task": {
|
|
39
34
|
"team-lead": "allow",
|
|
40
35
|
"designer": "allow",
|
|
41
36
|
"developer": "allow",
|
|
42
|
-
"qa": "allow"
|
|
43
|
-
"instruction_reviewer": "allow",
|
|
44
|
-
"memory_curator": "allow"
|
|
37
|
+
"qa": "allow"
|
|
45
38
|
}
|
|
46
39
|
}
|
|
47
40
|
},
|
|
48
41
|
"team-lead": {
|
|
49
42
|
"description": "Team Lead - planning and code review",
|
|
50
|
-
"mode": "
|
|
51
|
-
"model": "
|
|
43
|
+
"mode": "all",
|
|
44
|
+
"model": "",
|
|
52
45
|
"fallback": [
|
|
53
|
-
"openai/gpt-5.3-codex"
|
|
54
46
|
],
|
|
55
47
|
"permission": {
|
|
56
48
|
"task": {
|
|
57
49
|
"developer": "allow",
|
|
58
|
-
"qa": "allow"
|
|
59
|
-
"instruction_reviewer": "allow",
|
|
60
|
-
"memory_curator": "allow"
|
|
50
|
+
"qa": "allow"
|
|
61
51
|
}
|
|
62
52
|
}
|
|
63
53
|
},
|
|
64
54
|
"developer": {
|
|
65
55
|
"description": "Developer - implements code",
|
|
66
|
-
"mode": "
|
|
67
|
-
"model": "
|
|
56
|
+
"mode": "all",
|
|
57
|
+
"model": "",
|
|
68
58
|
"fallback": [
|
|
69
|
-
"openai/gpt-5.3-codex"
|
|
70
59
|
]
|
|
71
60
|
},
|
|
72
61
|
"devops-engineer": {
|
|
73
62
|
"description": "DevOps Engineer - infrastructure, CI/CD, and platform reliability",
|
|
74
|
-
"mode": "
|
|
75
|
-
"model": "
|
|
63
|
+
"mode": "all",
|
|
64
|
+
"model": "",
|
|
76
65
|
"fallback": [
|
|
77
|
-
"openai/gpt-5.3-codex"
|
|
78
66
|
]
|
|
79
67
|
},
|
|
80
68
|
"instruction_reviewer": {
|
|
81
69
|
"description": "Instruction Reviewer - post-task review of instruction effectiveness and tool discipline",
|
|
82
|
-
"mode": "
|
|
83
|
-
"model": "
|
|
70
|
+
"mode": "all",
|
|
71
|
+
"model": "",
|
|
84
72
|
"fallback": [
|
|
85
|
-
"openai/gpt-5.4",
|
|
86
|
-
"opencode/minimax-m2.5-free"
|
|
87
73
|
]
|
|
88
74
|
},
|
|
89
75
|
"memory_curator": {
|
|
90
76
|
"description": "Memory Curator - post-task memory hygiene recommendations without automatic writes",
|
|
91
|
-
"mode": "
|
|
92
|
-
"model": "
|
|
77
|
+
"mode": "all",
|
|
78
|
+
"model": "",
|
|
93
79
|
"fallback": [
|
|
94
|
-
"openai/gpt-5.4",
|
|
95
|
-
"opencode/minimax-m2.5-free"
|
|
96
80
|
]
|
|
97
81
|
},
|
|
98
82
|
"qa": {
|
|
99
83
|
"description": "QA Engineer - runs tests",
|
|
100
84
|
"mode": "subagent",
|
|
101
|
-
"model": "
|
|
85
|
+
"model": "",
|
|
102
86
|
"fallback": [
|
|
103
|
-
"opencode/minimax-m2.5-free",
|
|
104
|
-
"openai/gpt-5.4"
|
|
105
87
|
]
|
|
106
88
|
},
|
|
107
89
|
"designer": {
|
|
108
90
|
"description": "Designer - UI/UX validation",
|
|
109
91
|
"mode": "subagent",
|
|
110
|
-
"model": "
|
|
92
|
+
"model": "",
|
|
111
93
|
"fallback": [
|
|
112
|
-
"opencode/minimax-m2.5-free",
|
|
113
|
-
"openai/gpt-5.4"
|
|
114
94
|
]
|
|
115
95
|
}
|
|
116
96
|
}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://opencode.ai/config.json",
|
|
3
|
+
"plugin": [
|
|
4
|
+
"sound-notification",
|
|
5
|
+
"telegram-notification"
|
|
6
|
+
],
|
|
7
|
+
"agent": {
|
|
8
|
+
"product-owner": {
|
|
9
|
+
"description": "Main coordinator for feature development workflow",
|
|
10
|
+
"mode": "primary",
|
|
11
|
+
"model": "github-copilot/gpt-5.5",
|
|
12
|
+
"fallback": [],
|
|
13
|
+
"permission": {
|
|
14
|
+
"task": {
|
|
15
|
+
"pm": "allow",
|
|
16
|
+
"team-lead": "allow",
|
|
17
|
+
"designer": "allow",
|
|
18
|
+
"developer": "allow",
|
|
19
|
+
"qa": "allow",
|
|
20
|
+
"instruction_reviewer": "allow",
|
|
21
|
+
"memory_curator": "allow"
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"pm": {
|
|
26
|
+
"description": "Project Manager - coordinates workflow",
|
|
27
|
+
"mode": "subagent",
|
|
28
|
+
"model": "github-copilot/gpt-5.3-codex",
|
|
29
|
+
"fallback": [],
|
|
30
|
+
"permission": {
|
|
31
|
+
"task": {
|
|
32
|
+
"team-lead": "allow",
|
|
33
|
+
"designer": "allow",
|
|
34
|
+
"developer": "allow",
|
|
35
|
+
"qa": "allow"
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
"team-lead": {
|
|
40
|
+
"description": "Team Lead - planning and code review",
|
|
41
|
+
"mode": "all",
|
|
42
|
+
"model": "github-copilot/claude-opus-4.7",
|
|
43
|
+
"fallback": [],
|
|
44
|
+
"permission": {
|
|
45
|
+
"task": {
|
|
46
|
+
"developer": "allow",
|
|
47
|
+
"qa": "allow"
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
"developer": {
|
|
52
|
+
"description": "Developer - implements code",
|
|
53
|
+
"mode": "all",
|
|
54
|
+
"model": "github-copilot/gpt-5.3-codex",
|
|
55
|
+
"fallback": []
|
|
56
|
+
},
|
|
57
|
+
"devops-engineer": {
|
|
58
|
+
"description": "DevOps Engineer - infrastructure, CI/CD, and platform reliability",
|
|
59
|
+
"mode": "all",
|
|
60
|
+
"model": "github-copilot/claude-sonnet-4.6",
|
|
61
|
+
"fallback": []
|
|
62
|
+
},
|
|
63
|
+
"instruction_reviewer": {
|
|
64
|
+
"description": "Instruction Reviewer - post-task review of instruction effectiveness and tool discipline",
|
|
65
|
+
"mode": "all",
|
|
66
|
+
"model": "github-copilot/claude-sonnet-4.6",
|
|
67
|
+
"fallback": []
|
|
68
|
+
},
|
|
69
|
+
"memory_curator": {
|
|
70
|
+
"description": "Memory Curator - post-task memory hygiene recommendations without automatic writes",
|
|
71
|
+
"mode": "all",
|
|
72
|
+
"model": "github-copilot/gpt-5-mini",
|
|
73
|
+
"fallback": []
|
|
74
|
+
},
|
|
75
|
+
"qa": {
|
|
76
|
+
"description": "QA Engineer - runs tests",
|
|
77
|
+
"mode": "subagent",
|
|
78
|
+
"model": "github-copilot/gpt-5.3-codex",
|
|
79
|
+
"fallback": []
|
|
80
|
+
},
|
|
81
|
+
"designer": {
|
|
82
|
+
"description": "Designer - UI/UX validation",
|
|
83
|
+
"mode": "subagent",
|
|
84
|
+
"model": "github-copilot/gemini-3.5-flash",
|
|
85
|
+
"fallback": []
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|