agentsys 5.0.1 → 5.0.3
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/.claude-plugin/marketplace.json +13 -13
- package/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +10 -0
- package/README.md +1 -0
- package/adapters/codex/skills/consult/SKILL.md +2 -2
- package/adapters/opencode/agents/consult-agent.md +1 -1
- package/adapters/opencode/commands/consult.md +2 -2
- package/adapters/opencode/skills/agnix/SKILL.md +1 -1
- package/adapters/opencode/skills/consult/SKILL.md +22 -6
- package/adapters/opencode/skills/deslop/SKILL.md +1 -1
- package/adapters/opencode/skills/discover-tasks/SKILL.md +1 -1
- package/adapters/opencode/skills/drift-analysis/SKILL.md +1 -1
- package/adapters/opencode/skills/enhance-agent-prompts/SKILL.md +1 -1
- package/adapters/opencode/skills/enhance-claude-memory/SKILL.md +1 -1
- package/adapters/opencode/skills/enhance-cross-file/SKILL.md +1 -1
- package/adapters/opencode/skills/enhance-docs/SKILL.md +1 -1
- package/adapters/opencode/skills/enhance-hooks/SKILL.md +1 -1
- package/adapters/opencode/skills/enhance-orchestrator/SKILL.md +1 -1
- package/adapters/opencode/skills/enhance-plugins/SKILL.md +1 -1
- package/adapters/opencode/skills/enhance-prompts/SKILL.md +1 -1
- package/adapters/opencode/skills/enhance-skills/SKILL.md +1 -1
- package/adapters/opencode/skills/learn/SKILL.md +1 -1
- package/adapters/opencode/skills/perf-analyzer/SKILL.md +1 -1
- package/adapters/opencode/skills/perf-baseline-manager/SKILL.md +1 -1
- package/adapters/opencode/skills/perf-benchmarker/SKILL.md +1 -1
- package/adapters/opencode/skills/perf-code-paths/SKILL.md +1 -1
- package/adapters/opencode/skills/perf-investigation-logger/SKILL.md +1 -1
- package/adapters/opencode/skills/perf-profiler/SKILL.md +1 -1
- package/adapters/opencode/skills/perf-theory-gatherer/SKILL.md +1 -1
- package/adapters/opencode/skills/perf-theory-tester/SKILL.md +1 -1
- package/adapters/opencode/skills/sync-docs/SKILL.md +1 -1
- package/adapters/opencode/skills/validate-delivery/SKILL.md +1 -1
- package/bin/cli.js +25 -6
- package/bin/dev-cli.js +16 -6
- package/lib/collectors/github.js +76 -12
- package/lib/perf/benchmark-runner.js +11 -6
- package/lib/perf/investigation-state.js +12 -13
- package/lib/perf/profiling-runner.js +23 -4
- package/lib/repo-map/concurrency.js +29 -0
- package/lib/repo-map/runner.js +218 -19
- package/lib/repo-map/updater.js +115 -27
- package/lib/state/workflow-state.js +31 -30
- package/lib/utils/command-parser.js +0 -0
- package/lib/utils/state-helpers.js +61 -0
- package/package.json +1 -1
- package/plugins/agnix/.claude-plugin/plugin.json +1 -1
- package/plugins/agnix/skills/agnix/SKILL.md +1 -1
- package/plugins/audit-project/.claude-plugin/plugin.json +1 -1
- package/plugins/audit-project/lib/collectors/github.js +76 -12
- package/plugins/audit-project/lib/perf/benchmark-runner.js +11 -6
- package/plugins/audit-project/lib/perf/investigation-state.js +12 -13
- package/plugins/audit-project/lib/perf/profiling-runner.js +23 -4
- package/plugins/audit-project/lib/repo-map/concurrency.js +29 -0
- package/plugins/audit-project/lib/repo-map/runner.js +218 -19
- package/plugins/audit-project/lib/repo-map/updater.js +115 -27
- package/plugins/audit-project/lib/state/workflow-state.js +31 -30
- package/plugins/audit-project/lib/utils/command-parser.js +0 -0
- package/plugins/audit-project/lib/utils/state-helpers.js +61 -0
- package/plugins/consult/.claude-plugin/plugin.json +1 -1
- package/plugins/consult/agents/consult-agent.md +1 -1
- package/plugins/consult/commands/consult.md +2 -2
- package/plugins/consult/skills/consult/SKILL.md +22 -6
- package/plugins/deslop/.claude-plugin/plugin.json +1 -1
- package/plugins/deslop/lib/collectors/github.js +76 -12
- package/plugins/deslop/lib/perf/benchmark-runner.js +11 -6
- package/plugins/deslop/lib/perf/investigation-state.js +12 -13
- package/plugins/deslop/lib/perf/profiling-runner.js +23 -4
- package/plugins/deslop/lib/repo-map/concurrency.js +29 -0
- package/plugins/deslop/lib/repo-map/runner.js +218 -19
- package/plugins/deslop/lib/repo-map/updater.js +115 -27
- package/plugins/deslop/lib/state/workflow-state.js +31 -30
- package/plugins/deslop/lib/utils/command-parser.js +0 -0
- package/plugins/deslop/lib/utils/state-helpers.js +61 -0
- package/plugins/deslop/skills/deslop/SKILL.md +1 -1
- package/plugins/drift-detect/.claude-plugin/plugin.json +1 -1
- package/plugins/drift-detect/lib/collectors/github.js +76 -12
- package/plugins/drift-detect/lib/perf/benchmark-runner.js +11 -6
- package/plugins/drift-detect/lib/perf/investigation-state.js +12 -13
- package/plugins/drift-detect/lib/perf/profiling-runner.js +23 -4
- package/plugins/drift-detect/lib/repo-map/concurrency.js +29 -0
- package/plugins/drift-detect/lib/repo-map/runner.js +218 -19
- package/plugins/drift-detect/lib/repo-map/updater.js +115 -27
- package/plugins/drift-detect/lib/state/workflow-state.js +31 -30
- package/plugins/drift-detect/lib/utils/command-parser.js +0 -0
- package/plugins/drift-detect/lib/utils/state-helpers.js +61 -0
- package/plugins/drift-detect/skills/drift-analysis/SKILL.md +1 -1
- package/plugins/enhance/.claude-plugin/plugin.json +1 -1
- package/plugins/enhance/lib/collectors/github.js +76 -12
- package/plugins/enhance/lib/perf/benchmark-runner.js +11 -6
- package/plugins/enhance/lib/perf/investigation-state.js +12 -13
- package/plugins/enhance/lib/perf/profiling-runner.js +23 -4
- package/plugins/enhance/lib/repo-map/concurrency.js +29 -0
- package/plugins/enhance/lib/repo-map/runner.js +218 -19
- package/plugins/enhance/lib/repo-map/updater.js +115 -27
- package/plugins/enhance/lib/state/workflow-state.js +31 -30
- package/plugins/enhance/lib/utils/command-parser.js +0 -0
- package/plugins/enhance/lib/utils/state-helpers.js +61 -0
- package/plugins/enhance/skills/enhance-agent-prompts/SKILL.md +1 -1
- package/plugins/enhance/skills/enhance-claude-memory/SKILL.md +1 -1
- package/plugins/enhance/skills/enhance-cross-file/SKILL.md +1 -1
- package/plugins/enhance/skills/enhance-docs/SKILL.md +1 -1
- package/plugins/enhance/skills/enhance-hooks/SKILL.md +1 -1
- package/plugins/enhance/skills/enhance-orchestrator/SKILL.md +1 -1
- package/plugins/enhance/skills/enhance-plugins/SKILL.md +1 -1
- package/plugins/enhance/skills/enhance-prompts/SKILL.md +1 -1
- package/plugins/enhance/skills/enhance-skills/SKILL.md +1 -1
- package/plugins/learn/.claude-plugin/plugin.json +1 -1
- package/plugins/learn/lib/collectors/github.js +76 -12
- package/plugins/learn/lib/perf/benchmark-runner.js +11 -6
- package/plugins/learn/lib/perf/investigation-state.js +12 -13
- package/plugins/learn/lib/perf/profiling-runner.js +23 -4
- package/plugins/learn/lib/repo-map/concurrency.js +29 -0
- package/plugins/learn/lib/repo-map/runner.js +218 -19
- package/plugins/learn/lib/repo-map/updater.js +115 -27
- package/plugins/learn/lib/state/workflow-state.js +31 -30
- package/plugins/learn/lib/utils/command-parser.js +0 -0
- package/plugins/learn/lib/utils/state-helpers.js +61 -0
- package/plugins/learn/skills/learn/SKILL.md +1 -1
- package/plugins/next-task/.claude-plugin/plugin.json +1 -1
- package/plugins/next-task/lib/collectors/github.js +76 -12
- package/plugins/next-task/lib/perf/benchmark-runner.js +11 -6
- package/plugins/next-task/lib/perf/investigation-state.js +12 -13
- package/plugins/next-task/lib/perf/profiling-runner.js +23 -4
- package/plugins/next-task/lib/repo-map/concurrency.js +29 -0
- package/plugins/next-task/lib/repo-map/runner.js +218 -19
- package/plugins/next-task/lib/repo-map/updater.js +115 -27
- package/plugins/next-task/lib/state/workflow-state.js +31 -30
- package/plugins/next-task/lib/utils/command-parser.js +0 -0
- package/plugins/next-task/lib/utils/state-helpers.js +61 -0
- package/plugins/next-task/skills/discover-tasks/SKILL.md +1 -1
- package/plugins/next-task/skills/validate-delivery/SKILL.md +1 -1
- package/plugins/perf/.claude-plugin/plugin.json +1 -1
- package/plugins/perf/lib/collectors/github.js +76 -12
- package/plugins/perf/lib/perf/benchmark-runner.js +11 -6
- package/plugins/perf/lib/perf/investigation-state.js +12 -13
- package/plugins/perf/lib/perf/profiling-runner.js +23 -4
- package/plugins/perf/lib/repo-map/concurrency.js +29 -0
- package/plugins/perf/lib/repo-map/runner.js +218 -19
- package/plugins/perf/lib/repo-map/updater.js +115 -27
- package/plugins/perf/lib/state/workflow-state.js +31 -30
- package/plugins/perf/lib/utils/command-parser.js +0 -0
- package/plugins/perf/lib/utils/state-helpers.js +61 -0
- package/plugins/perf/skills/perf-analyzer/SKILL.md +1 -1
- package/plugins/perf/skills/perf-baseline-manager/SKILL.md +1 -1
- package/plugins/perf/skills/perf-benchmarker/SKILL.md +1 -1
- package/plugins/perf/skills/perf-code-paths/SKILL.md +1 -1
- package/plugins/perf/skills/perf-investigation-logger/SKILL.md +1 -1
- package/plugins/perf/skills/perf-profiler/SKILL.md +1 -1
- package/plugins/perf/skills/perf-theory-gatherer/SKILL.md +1 -1
- package/plugins/perf/skills/perf-theory-tester/SKILL.md +1 -1
- package/plugins/repo-map/.claude-plugin/plugin.json +1 -1
- package/plugins/repo-map/lib/collectors/github.js +76 -12
- package/plugins/repo-map/lib/perf/benchmark-runner.js +11 -6
- package/plugins/repo-map/lib/perf/investigation-state.js +12 -13
- package/plugins/repo-map/lib/perf/profiling-runner.js +23 -4
- package/plugins/repo-map/lib/repo-map/concurrency.js +29 -0
- package/plugins/repo-map/lib/repo-map/runner.js +218 -19
- package/plugins/repo-map/lib/repo-map/updater.js +115 -27
- package/plugins/repo-map/lib/state/workflow-state.js +31 -30
- package/plugins/repo-map/lib/utils/command-parser.js +0 -0
- package/plugins/repo-map/lib/utils/state-helpers.js +61 -0
- package/plugins/ship/.claude-plugin/plugin.json +1 -1
- package/plugins/ship/lib/collectors/github.js +76 -12
- package/plugins/ship/lib/perf/benchmark-runner.js +11 -6
- package/plugins/ship/lib/perf/investigation-state.js +12 -13
- package/plugins/ship/lib/perf/profiling-runner.js +23 -4
- package/plugins/ship/lib/repo-map/concurrency.js +29 -0
- package/plugins/ship/lib/repo-map/runner.js +218 -19
- package/plugins/ship/lib/repo-map/updater.js +115 -27
- package/plugins/ship/lib/state/workflow-state.js +31 -30
- package/plugins/ship/lib/utils/command-parser.js +0 -0
- package/plugins/ship/lib/utils/state-helpers.js +61 -0
- package/plugins/sync-docs/.claude-plugin/plugin.json +1 -1
- package/plugins/sync-docs/lib/collectors/github.js +76 -12
- package/plugins/sync-docs/lib/perf/benchmark-runner.js +11 -6
- package/plugins/sync-docs/lib/perf/investigation-state.js +12 -13
- package/plugins/sync-docs/lib/perf/profiling-runner.js +23 -4
- package/plugins/sync-docs/lib/repo-map/concurrency.js +29 -0
- package/plugins/sync-docs/lib/repo-map/runner.js +218 -19
- package/plugins/sync-docs/lib/repo-map/updater.js +115 -27
- package/plugins/sync-docs/lib/state/workflow-state.js +31 -30
- package/plugins/sync-docs/lib/utils/command-parser.js +0 -0
- package/plugins/sync-docs/lib/utils/state-helpers.js +61 -0
- package/plugins/sync-docs/skills/sync-docs/SKILL.md +1 -1
- package/site/content.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agentsys",
|
|
3
3
|
"description": "12 specialized plugins for AI workflow automation - task orchestration, PR workflow, slop detection, code review, drift detection, enhancement analysis, documentation sync, repo mapping, perf investigations, topic research, agent config linting, and cross-tool AI consultation",
|
|
4
|
-
"version": "5.0.
|
|
4
|
+
"version": "5.0.3",
|
|
5
5
|
"owner": {
|
|
6
6
|
"name": "Avi Fenesh",
|
|
7
7
|
"url": "https://github.com/avifenesh"
|
|
@@ -26,84 +26,84 @@
|
|
|
26
26
|
"name": "next-task",
|
|
27
27
|
"source": "./plugins/next-task",
|
|
28
28
|
"description": "Master workflow orchestrator: autonomous workflow with model optimization (opus/sonnet/haiku), two-file state management, workflow enforcement gates, 14 specialist agents",
|
|
29
|
-
"version": "5.0.
|
|
29
|
+
"version": "5.0.3",
|
|
30
30
|
"category": "productivity"
|
|
31
31
|
},
|
|
32
32
|
{
|
|
33
33
|
"name": "ship",
|
|
34
34
|
"source": "./plugins/ship",
|
|
35
35
|
"description": "Complete PR workflow: commit to production, skips review when called from next-task, removes task from registry on cleanup, automatic rollback",
|
|
36
|
-
"version": "5.0.
|
|
36
|
+
"version": "5.0.3",
|
|
37
37
|
"category": "deployment"
|
|
38
38
|
},
|
|
39
39
|
{
|
|
40
40
|
"name": "deslop",
|
|
41
41
|
"source": "./plugins/deslop",
|
|
42
42
|
"description": "3-phase AI slop detection: regex patterns (HIGH), multi-pass analyzers (MEDIUM), CLI tools (LOW)",
|
|
43
|
-
"version": "5.0.
|
|
43
|
+
"version": "5.0.3",
|
|
44
44
|
"category": "development"
|
|
45
45
|
},
|
|
46
46
|
{
|
|
47
47
|
"name": "audit-project",
|
|
48
48
|
"source": "./plugins/audit-project",
|
|
49
49
|
"description": "Multi-agent iterative code review until zero issues remain",
|
|
50
|
-
"version": "5.0.
|
|
50
|
+
"version": "5.0.3",
|
|
51
51
|
"category": "development"
|
|
52
52
|
},
|
|
53
53
|
{
|
|
54
54
|
"name": "drift-detect",
|
|
55
55
|
"source": "./plugins/drift-detect",
|
|
56
56
|
"description": "Deep repository analysis to realign project plans with code reality - detects drift, gaps, and creates prioritized reconstruction plans",
|
|
57
|
-
"version": "5.0.
|
|
57
|
+
"version": "5.0.3",
|
|
58
58
|
"category": "productivity"
|
|
59
59
|
},
|
|
60
60
|
{
|
|
61
61
|
"name": "enhance",
|
|
62
62
|
"source": "./plugins/enhance",
|
|
63
63
|
"description": "Master enhancement orchestrator: parallel analyzer execution for plugins, agents, docs, CLAUDE.md, and prompts with unified reporting",
|
|
64
|
-
"version": "5.0.
|
|
64
|
+
"version": "5.0.3",
|
|
65
65
|
"category": "development"
|
|
66
66
|
},
|
|
67
67
|
{
|
|
68
68
|
"name": "sync-docs",
|
|
69
69
|
"source": "./plugins/sync-docs",
|
|
70
70
|
"description": "Standalone documentation sync: find outdated refs, update CHANGELOG, flag stale examples based on code changes",
|
|
71
|
-
"version": "5.0.
|
|
71
|
+
"version": "5.0.3",
|
|
72
72
|
"category": "development"
|
|
73
73
|
},
|
|
74
74
|
{
|
|
75
75
|
"name": "repo-map",
|
|
76
76
|
"source": "./plugins/repo-map",
|
|
77
77
|
"description": "AST-based repository map generation using ast-grep with incremental updates for faster drift analysis",
|
|
78
|
-
"version": "5.0.
|
|
78
|
+
"version": "5.0.3",
|
|
79
79
|
"category": "development"
|
|
80
80
|
},
|
|
81
81
|
{
|
|
82
82
|
"name": "perf",
|
|
83
83
|
"source": "./plugins/perf",
|
|
84
84
|
"description": "Rigorous performance investigation workflow with baselines, profiling, hypotheses, and evidence-backed decisions",
|
|
85
|
-
"version": "5.0.
|
|
85
|
+
"version": "5.0.3",
|
|
86
86
|
"category": "development"
|
|
87
87
|
},
|
|
88
88
|
{
|
|
89
89
|
"name": "learn",
|
|
90
90
|
"source": "./plugins/learn",
|
|
91
91
|
"description": "Research topics online and create comprehensive learning guides with RAG-optimized indexes",
|
|
92
|
-
"version": "5.0.
|
|
92
|
+
"version": "5.0.3",
|
|
93
93
|
"category": "productivity"
|
|
94
94
|
},
|
|
95
95
|
{
|
|
96
96
|
"name": "agnix",
|
|
97
97
|
"source": "./plugins/agnix",
|
|
98
98
|
"description": "Lint agent configuration files (SKILL.md, CLAUDE.md, hooks, MCP) against 155 rules across 10+ AI tools",
|
|
99
|
-
"version": "5.0.
|
|
99
|
+
"version": "5.0.3",
|
|
100
100
|
"category": "development"
|
|
101
101
|
},
|
|
102
102
|
{
|
|
103
103
|
"name": "consult",
|
|
104
104
|
"source": "./plugins/consult",
|
|
105
105
|
"description": "Cross-tool AI consultation: get second opinions from Gemini CLI, Codex CLI, Claude Code, OpenCode, or Copilot CLI with model and thinking effort control",
|
|
106
|
-
"version": "5.0.
|
|
106
|
+
"version": "5.0.3",
|
|
107
107
|
"category": "productivity"
|
|
108
108
|
}
|
|
109
109
|
]
|
package/CHANGELOG.md
CHANGED
|
@@ -9,6 +9,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
9
9
|
|
|
10
10
|
## [Unreleased]
|
|
11
11
|
|
|
12
|
+
## [5.0.3] - 2026-02-17
|
|
13
|
+
|
|
14
|
+
### Fixed
|
|
15
|
+
- **Consult: Codex command corrected to `codex exec`** - Codex CLI uses `codex exec` for non-interactive mode (not `-q` flag). Non-interactive resume uses `codex exec resume SESSION_ID "prompt" --json`. All four tools (Claude, Gemini, Codex, OpenCode) now have correct native session resume support.
|
|
16
|
+
|
|
17
|
+
## [5.0.2] - 2026-02-17
|
|
18
|
+
|
|
19
|
+
### Fixed
|
|
20
|
+
- **Consult: Codex and OpenCode marked as continuable** - Both tools support session resume but were incorrectly marked as non-continuable. OpenCode supports `--session SESSION_ID` and `--continue` flags in non-interactive mode.
|
|
21
|
+
|
|
12
22
|
## [5.0.1] - 2026-02-14
|
|
13
23
|
|
|
14
24
|
### Fixed
|
package/README.md
CHANGED
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
<a href="https://github.com/avifenesh/agentsys/stargazers"><img src="https://img.shields.io/github/stars/avifenesh/agentsys?style=social" alt="GitHub stars"></a>
|
|
18
18
|
<a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT"></a>
|
|
19
19
|
<a href="https://avifenesh.github.io/agentsys/"><img src="https://img.shields.io/badge/Website-AgentSys-blue?style=flat&logo=github" alt="Website"></a>
|
|
20
|
+
<a href="https://github.com/hesreallyhim/awesome-claude-code"><img src="https://awesome.re/mentioned-badge.svg" alt="Mentioned in Awesome Claude Code"></a>
|
|
20
21
|
</p>
|
|
21
22
|
|
|
22
23
|
<p align="center">
|
|
@@ -209,9 +209,9 @@ The results of the consultation are:
|
|
|
209
209
|
{response}
|
|
210
210
|
```
|
|
211
211
|
|
|
212
|
-
For continuable tools (Claude
|
|
212
|
+
For continuable tools (Claude, Gemini, Codex, OpenCode), display: `Session: {session_id} - use /consult --continue to resume`
|
|
213
213
|
|
|
214
|
-
Save session state for continuable tools (Claude, Gemini) to `{AI_STATE_DIR}/consult/last-session.json`.
|
|
214
|
+
Save session state for continuable tools (Claude, Gemini, Codex, OpenCode) to `{AI_STATE_DIR}/consult/last-session.json`.
|
|
215
215
|
|
|
216
216
|
Platform state directory:
|
|
217
217
|
- Claude Code: `.claude/`
|
|
@@ -75,7 +75,7 @@ The results of the consultation are:
|
|
|
75
75
|
{response}
|
|
76
76
|
```
|
|
77
77
|
|
|
78
|
-
Set `continuable: true`
|
|
78
|
+
Set `continuable: true` for Claude, Gemini, Codex, and OpenCode (tools with session resume support). Only Copilot is non-continuable. Each tool uses a different resume mechanism: Claude/Gemini use `--resume`, Codex uses `codex exec resume`, OpenCode uses `--session`/`--continue`.
|
|
79
79
|
|
|
80
80
|
### 5. Save Session State
|
|
81
81
|
|
|
@@ -216,9 +216,9 @@ The results of the consultation are:
|
|
|
216
216
|
{response}
|
|
217
217
|
```
|
|
218
218
|
|
|
219
|
-
For continuable tools (Claude
|
|
219
|
+
For continuable tools (Claude, Gemini, Codex, OpenCode), display: `Session: {session_id} - use /consult --continue to resume`
|
|
220
220
|
|
|
221
|
-
Save session state for continuable tools (Claude, Gemini) to `{AI_STATE_DIR}/consult/last-session.json`.
|
|
221
|
+
Save session state for continuable tools (Claude, Gemini, Codex, OpenCode) to `{AI_STATE_DIR}/consult/last-session.json`.
|
|
222
222
|
|
|
223
223
|
Platform state directory:
|
|
224
224
|
- Claude Code: `.opencode/`
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
---
|
|
3
3
|
name: agnix
|
|
4
4
|
description: "Use when user asks to 'lint agent configs', 'validate skills', 'check CLAUDE.md', 'validate hooks', 'lint MCP'. Validates agent configuration files against 155 rules across 10+ AI tools."
|
|
5
|
-
version: 5.0.
|
|
5
|
+
version: 5.0.3
|
|
6
6
|
argument-hint: "[path] [--fix] [--strict] [--target=claude-code|cursor|codex]"
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
---
|
|
3
3
|
name: consult
|
|
4
4
|
description: "Cross-tool AI consultation. Use when user asks to 'consult gemini', 'ask codex', 'get second opinion', 'cross-check with claude', 'consult another AI', 'ask opencode', 'copilot opinion', or wants a second opinion from a different AI tool."
|
|
5
|
-
version: 5.0.
|
|
5
|
+
version: 5.0.3
|
|
6
6
|
argument-hint: "[question] [--tool] [--effort] [--model] [--context] [--continue]"
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -82,9 +82,13 @@ Models: gemini-2.5-flash, gemini-2.5-pro, gemini-3-flash-preview, gemini-3-pro-p
|
|
|
82
82
|
### Codex
|
|
83
83
|
|
|
84
84
|
```
|
|
85
|
-
Command: codex
|
|
85
|
+
Command: codex exec "QUESTION" --json -m "MODEL" -a suggest -c model_reasoning_effort="LEVEL"
|
|
86
|
+
Session resume: codex exec resume SESSION_ID "QUESTION" --json
|
|
87
|
+
Session resume (latest): codex exec resume --last "QUESTION" --json
|
|
86
88
|
```
|
|
87
89
|
|
|
90
|
+
Note: `codex exec` is the non-interactive/headless mode. There is no `-q` flag. The TUI mode is `codex` (no subcommand).
|
|
91
|
+
|
|
88
92
|
Models: gpt-5.1-codex-mini, gpt-5-codex, gpt-5.1-codex, gpt-5.2-codex, gpt-5.3-codex, gpt-5.1-codex-max
|
|
89
93
|
|
|
90
94
|
| Effort | Model | Reasoning |
|
|
@@ -95,12 +99,14 @@ Models: gpt-5.1-codex-mini, gpt-5-codex, gpt-5.1-codex, gpt-5.2-codex, gpt-5.3-c
|
|
|
95
99
|
| max | gpt-5.3-codex | xhigh |
|
|
96
100
|
|
|
97
101
|
**Parse output**: `JSON.parse(stdout).message` or raw text
|
|
98
|
-
**
|
|
102
|
+
**Session ID**: Codex prints a resume hint at session end (e.g., `codex resume SESSION_ID`). Extract the session ID from stdout or from `JSON.parse(stdout).session_id` if available.
|
|
103
|
+
**Continuable**: Yes. Sessions are stored as JSONL rollout files at `~/.codex/sessions/`. Non-interactive resume uses `codex exec resume SESSION_ID "follow-up prompt" --json`. Use `--last` instead of a session ID to resume the most recent session.
|
|
99
104
|
|
|
100
105
|
### OpenCode
|
|
101
106
|
|
|
102
107
|
```
|
|
103
108
|
Command: opencode run "QUESTION" --format json --model "MODEL" --variant "VARIANT"
|
|
109
|
+
Session resume: opencode run "QUESTION" --format json --model "MODEL" --variant "VARIANT" --continue (most recent) or --session "SESSION_ID"
|
|
104
110
|
With thinking: add --thinking flag
|
|
105
111
|
```
|
|
106
112
|
|
|
@@ -114,7 +120,8 @@ Models: 75+ via providers (format: provider/model). Top picks: claude-sonnet-4-5
|
|
|
114
120
|
| max | (user-selected or default) | high + --thinking |
|
|
115
121
|
|
|
116
122
|
**Parse output**: Parse JSON events from stdout, extract final text response
|
|
117
|
-
**
|
|
123
|
+
**Session ID**: Extract from JSON output if available, or use `--continue` to auto-resume the most recent session.
|
|
124
|
+
**Continuable**: Yes (via `--continue` or `--session`). Sessions are stored in a SQLite database in the OpenCode data directory. Use `--session SESSION_ID` for a specific session, or `--continue` for the most recent.
|
|
118
125
|
|
|
119
126
|
### Copilot
|
|
120
127
|
|
|
@@ -156,7 +163,10 @@ If `--model` is specified, use it directly. Otherwise, use the effort-based mode
|
|
|
156
163
|
|
|
157
164
|
Use the command template from the provider's configuration section. Substitute QUESTION, MODEL, TURNS, LEVEL, and VARIANT with resolved values.
|
|
158
165
|
|
|
159
|
-
If continuing a session
|
|
166
|
+
If continuing a session:
|
|
167
|
+
- **Claude or Gemini**: append `--resume SESSION_ID` to the command.
|
|
168
|
+
- **Codex**: use `codex exec resume SESSION_ID "QUESTION" --json` instead of the standard command. Use `--last` instead of a session ID for the most recent session.
|
|
169
|
+
- **OpenCode**: append `--session SESSION_ID` to the command. If no session_id is saved, use `--continue` instead (resumes most recent session).
|
|
160
170
|
If OpenCode at max effort: append `--thinking`.
|
|
161
171
|
|
|
162
172
|
### Step 3: Context Packaging
|
|
@@ -181,9 +191,15 @@ User-provided question text MUST NOT be interpolated into shell command strings.
|
|
|
181
191
|
| Provider | Safe command pattern |
|
|
182
192
|
|----------|---------------------|
|
|
183
193
|
| Claude | `claude -p - --output-format json --model "MODEL" --max-turns TURNS --allowedTools "Read,Glob,Grep" < "{AI_STATE_DIR}/consult/question.tmp"` |
|
|
194
|
+
| Claude (resume) | `claude -p - --output-format json --model "MODEL" --max-turns TURNS --allowedTools "Read,Glob,Grep" --resume "SESSION_ID" < "{AI_STATE_DIR}/consult/question.tmp"` |
|
|
184
195
|
| Gemini | `gemini -p - --output-format json -m "MODEL" < "{AI_STATE_DIR}/consult/question.tmp"` |
|
|
185
|
-
|
|
|
196
|
+
| Gemini (resume) | `gemini -p - --output-format json -m "MODEL" --resume "SESSION_ID" < "{AI_STATE_DIR}/consult/question.tmp"` |
|
|
197
|
+
| Codex | `codex exec "$(cat "{AI_STATE_DIR}/consult/question.tmp")" --json -m "MODEL" -a suggest` (Codex exec lacks stdin mode -- cat reads from platform-controlled path, not user input) |
|
|
198
|
+
| Codex (resume) | `codex exec resume SESSION_ID "$(cat "{AI_STATE_DIR}/consult/question.tmp")" --json -m "MODEL"` |
|
|
199
|
+
| Codex (resume latest) | `codex exec resume --last "$(cat "{AI_STATE_DIR}/consult/question.tmp")" --json -m "MODEL"` |
|
|
186
200
|
| OpenCode | `opencode run - --format json --model "MODEL" --variant "VARIANT" < "{AI_STATE_DIR}/consult/question.tmp"` |
|
|
201
|
+
| OpenCode (resume by ID) | `opencode run - --format json --model "MODEL" --variant "VARIANT" --session "SESSION_ID" < "{AI_STATE_DIR}/consult/question.tmp"` |
|
|
202
|
+
| OpenCode (resume latest) | `opencode run - --format json --model "MODEL" --variant "VARIANT" --continue < "{AI_STATE_DIR}/consult/question.tmp"` |
|
|
187
203
|
| Copilot | `copilot -p - < "{AI_STATE_DIR}/consult/question.tmp"` |
|
|
188
204
|
|
|
189
205
|
3. **Delete the temp file** after the command completes (success or failure). Always clean up to prevent accumulation.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
---
|
|
3
3
|
name: deslop
|
|
4
4
|
description: "Use when user wants to clean AI slop from code. Use for cleanup, remove debug statements, find ghost code, repo hygiene."
|
|
5
|
-
version: 5.0.
|
|
5
|
+
version: 5.0.3
|
|
6
6
|
argument-hint: "[report|apply] [--scope=all|diff|path] [--thoroughness=quick|normal|deep]"
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
---
|
|
3
3
|
name: discover-tasks
|
|
4
4
|
description: "Use when user asks to \"discover tasks\", \"find next task\", or \"prioritize issues\". Discovers and ranks tasks from GitHub, GitLab, local files, and custom sources."
|
|
5
|
-
version: 5.0.
|
|
5
|
+
version: 5.0.3
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
# discover-tasks
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
---
|
|
3
3
|
name: drift-analysis
|
|
4
4
|
description: Use when the user asks about plan drift, reality check, comparing docs to code, project state analysis, roadmap alignment, implementation gaps, or needs guidance on identifying discrepancies between documented plans and actual implementation state.
|
|
5
|
-
version: 5.0.
|
|
5
|
+
version: 5.0.3
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
# Drift Analysis
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
---
|
|
3
3
|
name: learn
|
|
4
4
|
description: "Research any topic online and create learning guides. Use when user asks to 'learn about', 'research topic', 'create learning guide', 'build knowledge base', or 'study subject'."
|
|
5
|
-
version: 5.0.
|
|
5
|
+
version: 5.0.3
|
|
6
6
|
argument-hint: "[topic] [--depth=brief|medium|deep]"
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
---
|
|
3
3
|
name: perf-benchmarker
|
|
4
4
|
description: "Use when running performance benchmarks, establishing baselines, or validating regressions with sequential runs. Enforces 60s minimum runs (30s only for binary search) and no parallel benchmarks."
|
|
5
|
-
version: 5.0.
|
|
5
|
+
version: 5.0.3
|
|
6
6
|
argument-hint: "[command] [duration]"
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
---
|
|
3
3
|
name: sync-docs
|
|
4
4
|
description: "Sync documentation with code. Use when user asks to update docs, check docs, fix stale documentation, update changelog, or after code changes."
|
|
5
|
-
version: 5.0.
|
|
5
|
+
version: 5.0.3
|
|
6
6
|
argument-hint: "[report|apply] [--scope=all|recent|before-pr] [--include-undocumented]"
|
|
7
7
|
allowed-tools: Bash(git:*), Read, Grep, Glob
|
|
8
8
|
---
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
---
|
|
3
3
|
name: validate-delivery
|
|
4
4
|
description: "Use when user asks to \"validate delivery\", \"check readiness\", or \"verify completion\". Runs tests, build, and requirement checks with pass/fail instructions."
|
|
5
|
-
version: 5.0.
|
|
5
|
+
version: 5.0.3
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
# validate-delivery
|
package/bin/cli.js
CHANGED
|
@@ -214,6 +214,7 @@ function installForClaude() {
|
|
|
214
214
|
|
|
215
215
|
// Discover plugins from filesystem convention
|
|
216
216
|
const plugins = discovery.discoverPlugins(PACKAGE_DIR);
|
|
217
|
+
const failedPlugins = [];
|
|
217
218
|
for (const plugin of plugins) {
|
|
218
219
|
// Validate plugin name before shell use (prevents injection)
|
|
219
220
|
if (!/^[a-z0-9][a-z0-9-]*$/.test(plugin)) continue;
|
|
@@ -232,11 +233,17 @@ function installForClaude() {
|
|
|
232
233
|
try {
|
|
233
234
|
execSync(`claude plugin update ${plugin}@agentsys`, { stdio: 'pipe' });
|
|
234
235
|
} catch {
|
|
235
|
-
|
|
236
|
+
failedPlugins.push(plugin);
|
|
236
237
|
}
|
|
237
238
|
}
|
|
238
239
|
}
|
|
239
240
|
|
|
241
|
+
if (failedPlugins.length > 0) {
|
|
242
|
+
console.log(`\n[ERROR] Failed to install/update ${failedPlugins.length} plugin(s): ${failedPlugins.join(', ')}`);
|
|
243
|
+
console.log('Retry with: /plugin install <plugin>@agentsys');
|
|
244
|
+
return false;
|
|
245
|
+
}
|
|
246
|
+
|
|
240
247
|
console.log('\n[OK] Claude Code installation complete!\n');
|
|
241
248
|
console.log('Commands: ' + plugins.map(p => '/' + p).join(', '));
|
|
242
249
|
return true;
|
|
@@ -696,24 +703,36 @@ async function main() {
|
|
|
696
703
|
}
|
|
697
704
|
|
|
698
705
|
// Install for each platform
|
|
706
|
+
const failedPlatforms = [];
|
|
699
707
|
for (const platform of selected) {
|
|
700
708
|
switch (platform) {
|
|
701
709
|
case 'claude':
|
|
702
|
-
if (args.development) {
|
|
703
|
-
|
|
710
|
+
if (args.development && !installForClaudeDevelopment()) {
|
|
711
|
+
failedPlatforms.push('claude');
|
|
704
712
|
} else {
|
|
705
|
-
installForClaude()
|
|
713
|
+
if (!args.development && !installForClaude()) {
|
|
714
|
+
failedPlatforms.push('claude');
|
|
715
|
+
}
|
|
706
716
|
}
|
|
707
717
|
break;
|
|
708
718
|
case 'opencode':
|
|
709
|
-
installForOpenCode(installDir, { stripModels: args.stripModels })
|
|
719
|
+
if (!installForOpenCode(installDir, { stripModels: args.stripModels })) {
|
|
720
|
+
failedPlatforms.push('opencode');
|
|
721
|
+
}
|
|
710
722
|
break;
|
|
711
723
|
case 'codex':
|
|
712
|
-
installForCodex(installDir)
|
|
724
|
+
if (!installForCodex(installDir)) {
|
|
725
|
+
failedPlatforms.push('codex');
|
|
726
|
+
}
|
|
713
727
|
break;
|
|
714
728
|
}
|
|
715
729
|
}
|
|
716
730
|
|
|
731
|
+
if (failedPlatforms.length > 0) {
|
|
732
|
+
console.log(`\n[ERROR] Installation failed for: ${failedPlatforms.join(', ')}`);
|
|
733
|
+
process.exitCode = 1;
|
|
734
|
+
}
|
|
735
|
+
|
|
717
736
|
console.log('─'.repeat(45));
|
|
718
737
|
if (installDir) {
|
|
719
738
|
console.log(`\nInstallation directory: ${installDir}`);
|
package/bin/dev-cli.js
CHANGED
|
@@ -13,7 +13,8 @@
|
|
|
13
13
|
*/
|
|
14
14
|
|
|
15
15
|
const path = require('path');
|
|
16
|
-
const { execSync } = require('child_process');
|
|
16
|
+
const { execSync, spawnSync } = require('child_process');
|
|
17
|
+
const { resolveExecutableForPlatform } = require('../lib/utils/command-parser');
|
|
17
18
|
|
|
18
19
|
const VERSION = require('../package.json').version;
|
|
19
20
|
const ROOT_DIR = path.join(__dirname, '..');
|
|
@@ -293,13 +294,22 @@ const COMMANDS = {
|
|
|
293
294
|
description: 'Run test suite',
|
|
294
295
|
handler: (args) => {
|
|
295
296
|
try {
|
|
296
|
-
const
|
|
297
|
+
const cmdArgs = ['test'];
|
|
297
298
|
if (args.length > 0) {
|
|
298
|
-
|
|
299
|
-
|
|
299
|
+
cmdArgs.push('--');
|
|
300
|
+
cmdArgs.push(...args);
|
|
300
301
|
}
|
|
301
|
-
|
|
302
|
-
|
|
302
|
+
const npmExecutable = resolveExecutableForPlatform('npm');
|
|
303
|
+
const result = spawnSync(npmExecutable, cmdArgs, {
|
|
304
|
+
cwd: ROOT_DIR,
|
|
305
|
+
stdio: 'inherit',
|
|
306
|
+
shell: false,
|
|
307
|
+
windowsHide: true
|
|
308
|
+
});
|
|
309
|
+
if (result.error) {
|
|
310
|
+
throw result.error;
|
|
311
|
+
}
|
|
312
|
+
return typeof result.status === 'number' ? result.status : 1;
|
|
303
313
|
} catch (err) {
|
|
304
314
|
return err.status || 1;
|
|
305
315
|
}
|