agentsys 5.0.1 → 5.0.2

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.
Files changed (185) hide show
  1. package/.claude-plugin/marketplace.json +13 -13
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/CHANGELOG.md +5 -0
  4. package/README.md +1 -0
  5. package/adapters/codex/skills/consult/SKILL.md +3 -2
  6. package/adapters/opencode/agents/consult-agent.md +1 -1
  7. package/adapters/opencode/commands/consult.md +3 -2
  8. package/adapters/opencode/skills/agnix/SKILL.md +1 -1
  9. package/adapters/opencode/skills/consult/SKILL.md +16 -4
  10. package/adapters/opencode/skills/deslop/SKILL.md +1 -1
  11. package/adapters/opencode/skills/discover-tasks/SKILL.md +1 -1
  12. package/adapters/opencode/skills/drift-analysis/SKILL.md +1 -1
  13. package/adapters/opencode/skills/enhance-agent-prompts/SKILL.md +1 -1
  14. package/adapters/opencode/skills/enhance-claude-memory/SKILL.md +1 -1
  15. package/adapters/opencode/skills/enhance-cross-file/SKILL.md +1 -1
  16. package/adapters/opencode/skills/enhance-docs/SKILL.md +1 -1
  17. package/adapters/opencode/skills/enhance-hooks/SKILL.md +1 -1
  18. package/adapters/opencode/skills/enhance-orchestrator/SKILL.md +1 -1
  19. package/adapters/opencode/skills/enhance-plugins/SKILL.md +1 -1
  20. package/adapters/opencode/skills/enhance-prompts/SKILL.md +1 -1
  21. package/adapters/opencode/skills/enhance-skills/SKILL.md +1 -1
  22. package/adapters/opencode/skills/learn/SKILL.md +1 -1
  23. package/adapters/opencode/skills/perf-analyzer/SKILL.md +1 -1
  24. package/adapters/opencode/skills/perf-baseline-manager/SKILL.md +1 -1
  25. package/adapters/opencode/skills/perf-benchmarker/SKILL.md +1 -1
  26. package/adapters/opencode/skills/perf-code-paths/SKILL.md +1 -1
  27. package/adapters/opencode/skills/perf-investigation-logger/SKILL.md +1 -1
  28. package/adapters/opencode/skills/perf-profiler/SKILL.md +1 -1
  29. package/adapters/opencode/skills/perf-theory-gatherer/SKILL.md +1 -1
  30. package/adapters/opencode/skills/perf-theory-tester/SKILL.md +1 -1
  31. package/adapters/opencode/skills/sync-docs/SKILL.md +1 -1
  32. package/adapters/opencode/skills/validate-delivery/SKILL.md +1 -1
  33. package/bin/cli.js +25 -6
  34. package/bin/dev-cli.js +16 -6
  35. package/lib/collectors/github.js +76 -12
  36. package/lib/perf/benchmark-runner.js +11 -6
  37. package/lib/perf/investigation-state.js +12 -13
  38. package/lib/perf/profiling-runner.js +23 -4
  39. package/lib/repo-map/concurrency.js +29 -0
  40. package/lib/repo-map/runner.js +218 -19
  41. package/lib/repo-map/updater.js +115 -27
  42. package/lib/state/workflow-state.js +31 -30
  43. package/lib/utils/command-parser.js +0 -0
  44. package/lib/utils/state-helpers.js +61 -0
  45. package/package.json +1 -1
  46. package/plugins/agnix/.claude-plugin/plugin.json +1 -1
  47. package/plugins/agnix/skills/agnix/SKILL.md +1 -1
  48. package/plugins/audit-project/.claude-plugin/plugin.json +1 -1
  49. package/plugins/audit-project/lib/collectors/github.js +76 -12
  50. package/plugins/audit-project/lib/perf/benchmark-runner.js +11 -6
  51. package/plugins/audit-project/lib/perf/investigation-state.js +12 -13
  52. package/plugins/audit-project/lib/perf/profiling-runner.js +23 -4
  53. package/plugins/audit-project/lib/repo-map/concurrency.js +29 -0
  54. package/plugins/audit-project/lib/repo-map/runner.js +218 -19
  55. package/plugins/audit-project/lib/repo-map/updater.js +115 -27
  56. package/plugins/audit-project/lib/state/workflow-state.js +31 -30
  57. package/plugins/audit-project/lib/utils/command-parser.js +0 -0
  58. package/plugins/audit-project/lib/utils/state-helpers.js +61 -0
  59. package/plugins/consult/.claude-plugin/plugin.json +1 -1
  60. package/plugins/consult/agents/consult-agent.md +1 -1
  61. package/plugins/consult/commands/consult.md +3 -2
  62. package/plugins/consult/skills/consult/SKILL.md +16 -4
  63. package/plugins/deslop/.claude-plugin/plugin.json +1 -1
  64. package/plugins/deslop/lib/collectors/github.js +76 -12
  65. package/plugins/deslop/lib/perf/benchmark-runner.js +11 -6
  66. package/plugins/deslop/lib/perf/investigation-state.js +12 -13
  67. package/plugins/deslop/lib/perf/profiling-runner.js +23 -4
  68. package/plugins/deslop/lib/repo-map/concurrency.js +29 -0
  69. package/plugins/deslop/lib/repo-map/runner.js +218 -19
  70. package/plugins/deslop/lib/repo-map/updater.js +115 -27
  71. package/plugins/deslop/lib/state/workflow-state.js +31 -30
  72. package/plugins/deslop/lib/utils/command-parser.js +0 -0
  73. package/plugins/deslop/lib/utils/state-helpers.js +61 -0
  74. package/plugins/deslop/skills/deslop/SKILL.md +1 -1
  75. package/plugins/drift-detect/.claude-plugin/plugin.json +1 -1
  76. package/plugins/drift-detect/lib/collectors/github.js +76 -12
  77. package/plugins/drift-detect/lib/perf/benchmark-runner.js +11 -6
  78. package/plugins/drift-detect/lib/perf/investigation-state.js +12 -13
  79. package/plugins/drift-detect/lib/perf/profiling-runner.js +23 -4
  80. package/plugins/drift-detect/lib/repo-map/concurrency.js +29 -0
  81. package/plugins/drift-detect/lib/repo-map/runner.js +218 -19
  82. package/plugins/drift-detect/lib/repo-map/updater.js +115 -27
  83. package/plugins/drift-detect/lib/state/workflow-state.js +31 -30
  84. package/plugins/drift-detect/lib/utils/command-parser.js +0 -0
  85. package/plugins/drift-detect/lib/utils/state-helpers.js +61 -0
  86. package/plugins/drift-detect/skills/drift-analysis/SKILL.md +1 -1
  87. package/plugins/enhance/.claude-plugin/plugin.json +1 -1
  88. package/plugins/enhance/lib/collectors/github.js +76 -12
  89. package/plugins/enhance/lib/perf/benchmark-runner.js +11 -6
  90. package/plugins/enhance/lib/perf/investigation-state.js +12 -13
  91. package/plugins/enhance/lib/perf/profiling-runner.js +23 -4
  92. package/plugins/enhance/lib/repo-map/concurrency.js +29 -0
  93. package/plugins/enhance/lib/repo-map/runner.js +218 -19
  94. package/plugins/enhance/lib/repo-map/updater.js +115 -27
  95. package/plugins/enhance/lib/state/workflow-state.js +31 -30
  96. package/plugins/enhance/lib/utils/command-parser.js +0 -0
  97. package/plugins/enhance/lib/utils/state-helpers.js +61 -0
  98. package/plugins/enhance/skills/enhance-agent-prompts/SKILL.md +1 -1
  99. package/plugins/enhance/skills/enhance-claude-memory/SKILL.md +1 -1
  100. package/plugins/enhance/skills/enhance-cross-file/SKILL.md +1 -1
  101. package/plugins/enhance/skills/enhance-docs/SKILL.md +1 -1
  102. package/plugins/enhance/skills/enhance-hooks/SKILL.md +1 -1
  103. package/plugins/enhance/skills/enhance-orchestrator/SKILL.md +1 -1
  104. package/plugins/enhance/skills/enhance-plugins/SKILL.md +1 -1
  105. package/plugins/enhance/skills/enhance-prompts/SKILL.md +1 -1
  106. package/plugins/enhance/skills/enhance-skills/SKILL.md +1 -1
  107. package/plugins/learn/.claude-plugin/plugin.json +1 -1
  108. package/plugins/learn/lib/collectors/github.js +76 -12
  109. package/plugins/learn/lib/perf/benchmark-runner.js +11 -6
  110. package/plugins/learn/lib/perf/investigation-state.js +12 -13
  111. package/plugins/learn/lib/perf/profiling-runner.js +23 -4
  112. package/plugins/learn/lib/repo-map/concurrency.js +29 -0
  113. package/plugins/learn/lib/repo-map/runner.js +218 -19
  114. package/plugins/learn/lib/repo-map/updater.js +115 -27
  115. package/plugins/learn/lib/state/workflow-state.js +31 -30
  116. package/plugins/learn/lib/utils/command-parser.js +0 -0
  117. package/plugins/learn/lib/utils/state-helpers.js +61 -0
  118. package/plugins/learn/skills/learn/SKILL.md +1 -1
  119. package/plugins/next-task/.claude-plugin/plugin.json +1 -1
  120. package/plugins/next-task/lib/collectors/github.js +76 -12
  121. package/plugins/next-task/lib/perf/benchmark-runner.js +11 -6
  122. package/plugins/next-task/lib/perf/investigation-state.js +12 -13
  123. package/plugins/next-task/lib/perf/profiling-runner.js +23 -4
  124. package/plugins/next-task/lib/repo-map/concurrency.js +29 -0
  125. package/plugins/next-task/lib/repo-map/runner.js +218 -19
  126. package/plugins/next-task/lib/repo-map/updater.js +115 -27
  127. package/plugins/next-task/lib/state/workflow-state.js +31 -30
  128. package/plugins/next-task/lib/utils/command-parser.js +0 -0
  129. package/plugins/next-task/lib/utils/state-helpers.js +61 -0
  130. package/plugins/next-task/skills/discover-tasks/SKILL.md +1 -1
  131. package/plugins/next-task/skills/validate-delivery/SKILL.md +1 -1
  132. package/plugins/perf/.claude-plugin/plugin.json +1 -1
  133. package/plugins/perf/lib/collectors/github.js +76 -12
  134. package/plugins/perf/lib/perf/benchmark-runner.js +11 -6
  135. package/plugins/perf/lib/perf/investigation-state.js +12 -13
  136. package/plugins/perf/lib/perf/profiling-runner.js +23 -4
  137. package/plugins/perf/lib/repo-map/concurrency.js +29 -0
  138. package/plugins/perf/lib/repo-map/runner.js +218 -19
  139. package/plugins/perf/lib/repo-map/updater.js +115 -27
  140. package/plugins/perf/lib/state/workflow-state.js +31 -30
  141. package/plugins/perf/lib/utils/command-parser.js +0 -0
  142. package/plugins/perf/lib/utils/state-helpers.js +61 -0
  143. package/plugins/perf/skills/perf-analyzer/SKILL.md +1 -1
  144. package/plugins/perf/skills/perf-baseline-manager/SKILL.md +1 -1
  145. package/plugins/perf/skills/perf-benchmarker/SKILL.md +1 -1
  146. package/plugins/perf/skills/perf-code-paths/SKILL.md +1 -1
  147. package/plugins/perf/skills/perf-investigation-logger/SKILL.md +1 -1
  148. package/plugins/perf/skills/perf-profiler/SKILL.md +1 -1
  149. package/plugins/perf/skills/perf-theory-gatherer/SKILL.md +1 -1
  150. package/plugins/perf/skills/perf-theory-tester/SKILL.md +1 -1
  151. package/plugins/repo-map/.claude-plugin/plugin.json +1 -1
  152. package/plugins/repo-map/lib/collectors/github.js +76 -12
  153. package/plugins/repo-map/lib/perf/benchmark-runner.js +11 -6
  154. package/plugins/repo-map/lib/perf/investigation-state.js +12 -13
  155. package/plugins/repo-map/lib/perf/profiling-runner.js +23 -4
  156. package/plugins/repo-map/lib/repo-map/concurrency.js +29 -0
  157. package/plugins/repo-map/lib/repo-map/runner.js +218 -19
  158. package/plugins/repo-map/lib/repo-map/updater.js +115 -27
  159. package/plugins/repo-map/lib/state/workflow-state.js +31 -30
  160. package/plugins/repo-map/lib/utils/command-parser.js +0 -0
  161. package/plugins/repo-map/lib/utils/state-helpers.js +61 -0
  162. package/plugins/ship/.claude-plugin/plugin.json +1 -1
  163. package/plugins/ship/lib/collectors/github.js +76 -12
  164. package/plugins/ship/lib/perf/benchmark-runner.js +11 -6
  165. package/plugins/ship/lib/perf/investigation-state.js +12 -13
  166. package/plugins/ship/lib/perf/profiling-runner.js +23 -4
  167. package/plugins/ship/lib/repo-map/concurrency.js +29 -0
  168. package/plugins/ship/lib/repo-map/runner.js +218 -19
  169. package/plugins/ship/lib/repo-map/updater.js +115 -27
  170. package/plugins/ship/lib/state/workflow-state.js +31 -30
  171. package/plugins/ship/lib/utils/command-parser.js +0 -0
  172. package/plugins/ship/lib/utils/state-helpers.js +61 -0
  173. package/plugins/sync-docs/.claude-plugin/plugin.json +1 -1
  174. package/plugins/sync-docs/lib/collectors/github.js +76 -12
  175. package/plugins/sync-docs/lib/perf/benchmark-runner.js +11 -6
  176. package/plugins/sync-docs/lib/perf/investigation-state.js +12 -13
  177. package/plugins/sync-docs/lib/perf/profiling-runner.js +23 -4
  178. package/plugins/sync-docs/lib/repo-map/concurrency.js +29 -0
  179. package/plugins/sync-docs/lib/repo-map/runner.js +218 -19
  180. package/plugins/sync-docs/lib/repo-map/updater.js +115 -27
  181. package/plugins/sync-docs/lib/state/workflow-state.js +31 -30
  182. package/plugins/sync-docs/lib/utils/command-parser.js +0 -0
  183. package/plugins/sync-docs/lib/utils/state-helpers.js +61 -0
  184. package/plugins/sync-docs/skills/sync-docs/SKILL.md +1 -1
  185. 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.1",
4
+ "version": "5.0.2",
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.1",
29
+ "version": "5.0.2",
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.1",
36
+ "version": "5.0.2",
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.1",
43
+ "version": "5.0.2",
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.1",
50
+ "version": "5.0.2",
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.1",
57
+ "version": "5.0.2",
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.1",
64
+ "version": "5.0.2",
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.1",
71
+ "version": "5.0.2",
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.1",
78
+ "version": "5.0.2",
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.1",
85
+ "version": "5.0.2",
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.1",
92
+ "version": "5.0.2",
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.1",
99
+ "version": "5.0.2",
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.1",
106
+ "version": "5.0.2",
107
107
  "category": "productivity"
108
108
  }
109
109
  ]
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agentsys",
3
- "version": "5.0.1",
3
+ "version": "5.0.2",
4
4
  "description": "Professional-grade slash commands for Claude Code with cross-platform support",
5
5
  "keywords": [
6
6
  "workflow",
package/CHANGELOG.md CHANGED
@@ -9,6 +9,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
9
9
 
10
10
  ## [Unreleased]
11
11
 
12
+ ## [5.0.2] - 2026-02-17
13
+
14
+ ### Fixed
15
+ - **Consult: Codex and OpenCode marked as continuable** - Both tools support session resume but were incorrectly marked as non-continuable. Codex supports `codex resume` (TUI-only; non-interactive uses context prepending). OpenCode supports `--session SESSION_ID` and `--continue` flags in non-interactive mode.
16
+
12
17
  ## [5.0.1] - 2026-02-14
13
18
 
14
19
  ### 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,10 @@ The results of the consultation are:
209
209
  {response}
210
210
  ```
211
211
 
212
- For continuable tools (Claude/Gemini), also display: `Session: {session_id} - use /consult --continue to resume`
212
+ For continuable tools with a session_id (Claude, Gemini, OpenCode), display: `Session: {session_id} - use /consult --continue to resume`
213
+ For Codex (context-based continuation, no session_id), display: `Use /consult --continue to continue this conversation (prior context will be prepended)`
213
214
 
214
- Save session state for continuable tools (Claude, Gemini) to `{AI_STATE_DIR}/consult/last-session.json`.
215
+ Save session state for continuable tools (Claude, Gemini, Codex, OpenCode) to `{AI_STATE_DIR}/consult/last-session.json`.
215
216
 
216
217
  Platform state directory:
217
218
  - Claude Code: `.claude/`
@@ -75,7 +75,7 @@ The results of the consultation are:
75
75
  {response}
76
76
  ```
77
77
 
78
- Set `continuable: true` only for Claude and Gemini (tools with session resumption support).
78
+ Set `continuable: true` for Claude, Gemini, Codex, and OpenCode (tools with continuation support). Codex continuation is context-based (prior Q&A prepended to prompt) since `codex resume` is TUI-only. Claude, Gemini, and OpenCode support native session resume flags. Only Copilot is non-continuable.
79
79
 
80
80
  ### 5. Save Session State
81
81
 
@@ -216,9 +216,10 @@ The results of the consultation are:
216
216
  {response}
217
217
  ```
218
218
 
219
- For continuable tools (Claude/Gemini), also display: `Session: {session_id} - use /consult --continue to resume`
219
+ For continuable tools with a session_id (Claude, Gemini, OpenCode), display: `Session: {session_id} - use /consult --continue to resume`
220
+ For Codex (context-based continuation, no session_id), display: `Use /consult --continue to continue this conversation (prior context will be prepended)`
220
221
 
221
- Save session state for continuable tools (Claude, Gemini) to `{AI_STATE_DIR}/consult/last-session.json`.
222
+ Save session state for continuable tools (Claude, Gemini, Codex, OpenCode) to `{AI_STATE_DIR}/consult/last-session.json`.
222
223
 
223
224
  Platform state directory:
224
225
  - 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.1
5
+ version: 5.0.2
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.1
5
+ version: 5.0.2
6
6
  argument-hint: "[question] [--tool] [--effort] [--model] [--context] [--continue]"
7
7
  ---
8
8
 
@@ -83,6 +83,7 @@ Models: gemini-2.5-flash, gemini-2.5-pro, gemini-3-flash-preview, gemini-3-pro-p
83
83
 
84
84
  ```
85
85
  Command: codex -q "QUESTION" --json -m "MODEL" -a suggest -c model_reasoning_effort="LEVEL"
86
+ Session resume: codex resume "SESSION_ID"
86
87
  ```
87
88
 
88
89
  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
@@ -95,12 +96,14 @@ Models: gpt-5.1-codex-mini, gpt-5-codex, gpt-5.1-codex, gpt-5.2-codex, gpt-5.3-c
95
96
  | max | gpt-5.3-codex | xhigh |
96
97
 
97
98
  **Parse output**: `JSON.parse(stdout).message` or raw text
98
- **Continuable**: No
99
+ **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.
100
+ **Continuable**: Yes, but interactive only. Sessions are stored as JSONL rollout files at `~/.codex/sessions/`. The `codex resume SESSION_ID` subcommand resumes in TUI mode -- it does not support `-q` for non-interactive use. For non-interactive continuation, prepend prior conversation context to the new question text instead.
99
101
 
100
102
  ### OpenCode
101
103
 
102
104
  ```
103
105
  Command: opencode run "QUESTION" --format json --model "MODEL" --variant "VARIANT"
106
+ Session resume: opencode run "QUESTION" --format json --model "MODEL" --variant "VARIANT" --continue (most recent) or --session "SESSION_ID"
104
107
  With thinking: add --thinking flag
105
108
  ```
106
109
 
@@ -114,7 +117,8 @@ Models: 75+ via providers (format: provider/model). Top picks: claude-sonnet-4-5
114
117
  | max | (user-selected or default) | high + --thinking |
115
118
 
116
119
  **Parse output**: Parse JSON events from stdout, extract final text response
117
- **Continuable**: No
120
+ **Session ID**: Extract from JSON output if available, or use `--continue` to auto-resume the most recent session.
121
+ **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
122
 
119
123
  ### Copilot
120
124
 
@@ -156,7 +160,10 @@ If `--model` is specified, use it directly. Otherwise, use the effort-based mode
156
160
 
157
161
  Use the command template from the provider's configuration section. Substitute QUESTION, MODEL, TURNS, LEVEL, and VARIANT with resolved values.
158
162
 
159
- If continuing a session (Claude or Gemini): append `--resume SESSION_ID`.
163
+ If continuing a session:
164
+ - **Claude or Gemini**: append `--resume SESSION_ID` to the command.
165
+ - **Codex**: no non-interactive resume flag exists. Prepend the prior Q&A context to the new question text before passing to `codex -q`.
166
+ - **OpenCode**: append `--session SESSION_ID` to the command. If no session_id is saved, use `--continue` instead (resumes most recent session).
160
167
  If OpenCode at max effort: append `--thinking`.
161
168
 
162
169
  ### Step 3: Context Packaging
@@ -181,9 +188,14 @@ User-provided question text MUST NOT be interpolated into shell command strings.
181
188
  | Provider | Safe command pattern |
182
189
  |----------|---------------------|
183
190
  | Claude | `claude -p - --output-format json --model "MODEL" --max-turns TURNS --allowedTools "Read,Glob,Grep" < "{AI_STATE_DIR}/consult/question.tmp"` |
191
+ | 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
192
  | Gemini | `gemini -p - --output-format json -m "MODEL" < "{AI_STATE_DIR}/consult/question.tmp"` |
193
+ | Gemini (resume) | `gemini -p - --output-format json -m "MODEL" --resume "SESSION_ID" < "{AI_STATE_DIR}/consult/question.tmp"` |
185
194
  | Codex | `codex -q "$(cat "{AI_STATE_DIR}/consult/question.tmp")" --json -m "MODEL" -a suggest` (Codex lacks stdin mode -- cat reads from platform-controlled path, not user input) |
195
+ | Codex (continue) | No non-interactive resume. Prepend prior context to question, then use standard Codex command above. |
186
196
  | OpenCode | `opencode run - --format json --model "MODEL" --variant "VARIANT" < "{AI_STATE_DIR}/consult/question.tmp"` |
197
+ | OpenCode (resume by ID) | `opencode run - --format json --model "MODEL" --variant "VARIANT" --session "SESSION_ID" < "{AI_STATE_DIR}/consult/question.tmp"` |
198
+ | OpenCode (resume latest) | `opencode run - --format json --model "MODEL" --variant "VARIANT" --continue < "{AI_STATE_DIR}/consult/question.tmp"` |
187
199
  | Copilot | `copilot -p - < "{AI_STATE_DIR}/consult/question.tmp"` |
188
200
 
189
201
  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.1
5
+ version: 5.0.2
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.1
5
+ version: 5.0.2
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.1
5
+ version: 5.0.2
6
6
  ---
7
7
 
8
8
  # Drift Analysis
@@ -2,7 +2,7 @@
2
2
  ---
3
3
  name: enhance-agent-prompts
4
4
  description: "Use when improving agent prompts, frontmatter, and tool restrictions."
5
- version: 5.0.1
5
+ version: 5.0.2
6
6
  argument-hint: "[path] [--fix] [--verbose]"
7
7
  ---
8
8
 
@@ -2,7 +2,7 @@
2
2
  ---
3
3
  name: enhance-claude-memory
4
4
  description: "Use when improving CLAUDE.md or AGENTS.md project memory files."
5
- version: 5.0.1
5
+ version: 5.0.2
6
6
  ---
7
7
 
8
8
  > **OpenCode Note**: Invoke agents using `@agent-name` syntax.
@@ -2,7 +2,7 @@
2
2
  ---
3
3
  name: enhance-cross-file
4
4
  description: "Use when checking cross-file consistency: tools vs frontmatter, agent references, duplicate rules, contradictions."
5
- version: 5.0.1
5
+ version: 5.0.2
6
6
  argument-hint: "[path]"
7
7
  ---
8
8
 
@@ -2,7 +2,7 @@
2
2
  ---
3
3
  name: enhance-docs
4
4
  description: "Use when improving documentation structure, accuracy, and RAG readiness."
5
- version: 5.0.1
5
+ version: 5.0.2
6
6
  argument-hint: "[path] [--fix] [--ai]"
7
7
  ---
8
8
 
@@ -2,7 +2,7 @@
2
2
  ---
3
3
  name: enhance-hooks
4
4
  description: "Use when reviewing hooks for safety, timeouts, and correct frontmatter."
5
- version: 5.0.1
5
+ version: 5.0.2
6
6
  argument-hint: "[path] [--fix]"
7
7
  ---
8
8
 
@@ -2,7 +2,7 @@
2
2
  ---
3
3
  name: enhance-orchestrator
4
4
  description: "Use when coordinating multiple enhancers for /enhance command. Runs analyzers in parallel and produces unified report."
5
- version: 5.0.1
5
+ version: 5.0.2
6
6
  argument-hint: "[path] [--apply] [--focus=TYPE]"
7
7
  ---
8
8
 
@@ -2,7 +2,7 @@
2
2
  ---
3
3
  name: enhance-plugins
4
4
  description: "Use when analyzing plugin structures, MCP tools, and plugin security patterns."
5
- version: 5.0.1
5
+ version: 5.0.2
6
6
  argument-hint: "[path] [--fix]"
7
7
  ---
8
8
 
@@ -2,7 +2,7 @@
2
2
  ---
3
3
  name: enhance-prompts
4
4
  description: "Use when improving general prompts for structure, examples, and constraints."
5
- version: 5.0.1
5
+ version: 5.0.2
6
6
  argument-hint: "[path] [--fix]"
7
7
  ---
8
8
 
@@ -2,7 +2,7 @@
2
2
  ---
3
3
  name: enhance-skills
4
4
  description: "Use when reviewing SKILL.md files for structure and trigger quality."
5
- version: 5.0.1
5
+ version: 5.0.2
6
6
  argument-hint: "[path] [--fix]"
7
7
  ---
8
8
 
@@ -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.1
5
+ version: 5.0.2
6
6
  argument-hint: "[topic] [--depth=brief|medium|deep]"
7
7
  ---
8
8
 
@@ -2,7 +2,7 @@
2
2
  ---
3
3
  name: perf-analyzer
4
4
  description: "Use when synthesizing perf findings into evidence-backed recommendations and decisions."
5
- version: 5.0.1
5
+ version: 5.0.2
6
6
  ---
7
7
 
8
8
  # perf-analyzer
@@ -2,7 +2,7 @@
2
2
  ---
3
3
  name: perf-baseline-manager
4
4
  description: "Use when managing perf baselines, consolidating results, or comparing versions. Ensures one baseline JSON per version."
5
- version: 5.0.1
5
+ version: 5.0.2
6
6
  ---
7
7
 
8
8
  # perf-baseline-manager
@@ -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.1
5
+ version: 5.0.2
6
6
  argument-hint: "[command] [duration]"
7
7
  ---
8
8
 
@@ -2,7 +2,7 @@
2
2
  ---
3
3
  name: perf-code-paths
4
4
  description: "Use when mapping code paths, entrypoints, and likely hot files before profiling."
5
- version: 5.0.1
5
+ version: 5.0.2
6
6
  ---
7
7
 
8
8
  # perf-code-paths
@@ -2,7 +2,7 @@
2
2
  ---
3
3
  name: perf-investigation-logger
4
4
  description: "Use when appending structured perf investigation notes and evidence."
5
- version: 5.0.1
5
+ version: 5.0.2
6
6
  ---
7
7
 
8
8
  # perf-investigation-logger
@@ -2,7 +2,7 @@
2
2
  ---
3
3
  name: perf-profiler
4
4
  description: "Use when profiling CPU/memory hot paths, generating flame graphs, or capturing JFR/perf evidence."
5
- version: 5.0.1
5
+ version: 5.0.2
6
6
  argument-hint: "[tool] [command]"
7
7
  ---
8
8
 
@@ -2,7 +2,7 @@
2
2
  ---
3
3
  name: perf-theory-gatherer
4
4
  description: "Use when generating performance hypotheses backed by git history and code evidence."
5
- version: 5.0.1
5
+ version: 5.0.2
6
6
  ---
7
7
 
8
8
  # perf-theory-gatherer
@@ -2,7 +2,7 @@
2
2
  ---
3
3
  name: perf-theory-tester
4
4
  description: "Use when running controlled perf experiments to validate hypotheses."
5
- version: 5.0.1
5
+ version: 5.0.2
6
6
  ---
7
7
 
8
8
  # perf-theory-tester
@@ -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.1
5
+ version: 5.0.2
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.1
5
+ version: 5.0.2
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
- // Ignore if update also fails
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
- installForClaudeDevelopment();
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 cmd = ['npm', 'test'];
297
+ const cmdArgs = ['test'];
297
298
  if (args.length > 0) {
298
- cmd.push('--');
299
- cmd.push(...args);
299
+ cmdArgs.push('--');
300
+ cmdArgs.push(...args);
300
301
  }
301
- execSync(cmd.join(' '), { cwd: ROOT_DIR, stdio: 'inherit' });
302
- return 0;
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
  }