Skip to content

Commit c824d3e

Browse files
authored
Merge pull request #228 from avifenesh/fix/enhance-debate-consult-findings
chore: release v5.1.0
2 parents 49f3613 + 97ceb69 commit c824d3e

File tree

75 files changed

+142
-102
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

75 files changed

+142
-102
lines changed

.claude-plugin/marketplace.json

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "agentsys",
33
"description": "13 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, cross-tool AI consultation, and structured AI debate",
4-
"version": "5.0.3",
4+
"version": "5.1.0",
55
"owner": {
66
"name": "Avi Fenesh",
77
"url": "https://github.com/avifenesh"
@@ -26,91 +26,91 @@
2626
"name": "next-task",
2727
"source": "./plugins/next-task",
2828
"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.3",
29+
"version": "5.1.0",
3030
"category": "productivity"
3131
},
3232
{
3333
"name": "ship",
3434
"source": "./plugins/ship",
3535
"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.3",
36+
"version": "5.1.0",
3737
"category": "deployment"
3838
},
3939
{
4040
"name": "deslop",
4141
"source": "./plugins/deslop",
4242
"description": "3-phase AI slop detection: regex patterns (HIGH), multi-pass analyzers (MEDIUM), CLI tools (LOW)",
43-
"version": "5.0.3",
43+
"version": "5.1.0",
4444
"category": "development"
4545
},
4646
{
4747
"name": "audit-project",
4848
"source": "./plugins/audit-project",
4949
"description": "Multi-agent iterative code review until zero issues remain",
50-
"version": "5.0.3",
50+
"version": "5.1.0",
5151
"category": "development"
5252
},
5353
{
5454
"name": "drift-detect",
5555
"source": "./plugins/drift-detect",
5656
"description": "Deep repository analysis to realign project plans with code reality - detects drift, gaps, and creates prioritized reconstruction plans",
57-
"version": "5.0.3",
57+
"version": "5.1.0",
5858
"category": "productivity"
5959
},
6060
{
6161
"name": "enhance",
6262
"source": "./plugins/enhance",
6363
"description": "Master enhancement orchestrator: parallel analyzer execution for plugins, agents, docs, CLAUDE.md, and prompts with unified reporting",
64-
"version": "5.0.3",
64+
"version": "5.1.0",
6565
"category": "development"
6666
},
6767
{
6868
"name": "sync-docs",
6969
"source": "./plugins/sync-docs",
7070
"description": "Standalone documentation sync: find outdated refs, update CHANGELOG, flag stale examples based on code changes",
71-
"version": "5.0.3",
71+
"version": "5.1.0",
7272
"category": "development"
7373
},
7474
{
7575
"name": "repo-map",
7676
"source": "./plugins/repo-map",
7777
"description": "AST-based repository map generation using ast-grep with incremental updates for faster drift analysis",
78-
"version": "5.0.3",
78+
"version": "5.1.0",
7979
"category": "development"
8080
},
8181
{
8282
"name": "perf",
8383
"source": "./plugins/perf",
8484
"description": "Rigorous performance investigation workflow with baselines, profiling, hypotheses, and evidence-backed decisions",
85-
"version": "5.0.3",
85+
"version": "5.1.0",
8686
"category": "development"
8787
},
8888
{
8989
"name": "learn",
9090
"source": "./plugins/learn",
9191
"description": "Research topics online and create comprehensive learning guides with RAG-optimized indexes",
92-
"version": "5.0.3",
92+
"version": "5.1.0",
9393
"category": "productivity"
9494
},
9595
{
9696
"name": "agnix",
9797
"source": "./plugins/agnix",
9898
"description": "Lint agent configuration files (SKILL.md, CLAUDE.md, hooks, MCP) against 155 rules across 10+ AI tools",
99-
"version": "5.0.3",
99+
"version": "5.1.0",
100100
"category": "development"
101101
},
102102
{
103103
"name": "consult",
104104
"source": "./plugins/consult",
105105
"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.3",
106+
"version": "5.1.0",
107107
"category": "productivity"
108108
},
109109
{
110110
"name": "debate",
111111
"source": "./plugins/debate",
112112
"description": "Structured multi-round debate between AI tools with proposer/challenger roles and verdict",
113-
"version": "5.0.3",
113+
"version": "5.1.0",
114114
"category": "productivity"
115115
}
116116
]

.claude-plugin/plugin.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "agentsys",
3-
"version": "5.0.3",
3+
"version": "5.1.0",
44
"description": "Professional-grade slash commands for Claude Code with cross-platform support",
55
"keywords": [
66
"workflow",

CHANGELOG.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
99

1010
## [Unreleased]
1111

12+
## [5.1.0] - 2026-02-18
13+
14+
### Added
15+
16+
- **`/debate` plugin** — New plugin for structured multi-round AI dialectic. Pick two tools (e.g. `codex vs gemini`), set 1–5 rounds, and get a proposer/challenger debate with a synthesized verdict. Supports natural language input, effort levels (`--effort=low|high|max`), and context injection (`--context=diff` or `--context=file=PATH`). Available on Claude Code, OpenCode, and Codex CLI.
17+
- **`/consult` multi-instance support** — Run N parallel consultations with the same tool using `--count=N` (or natural language: "ask 3 gemini about this"). Responses are numbered and a brief synthesis highlights agreements and differences.
18+
- **`/consult` natural language parsing** — Free-form queries are now parsed automatically without requiring explicit flags. "with codex about my auth approach", "ask gemini thoroughly about this design", or "3 claude opinions on error handling" all work out of the box.
19+
20+
### Changed
21+
22+
- **Agent model optimization**`exploration-agent` and `learn-agent` switched from opus to sonnet, reducing cost and latency for exploration and research passes with no quality regression.
23+
24+
### Fixed
25+
26+
- **Debate `--context=file` path validation** — Added path containment checks to prevent directory traversal when passing file paths as context.
27+
- **Debate prompt hardening** — Context passthrough, canonical output redaction, and relaxed disagreement rules applied consistently across all debate rounds.
28+
- **Consult model/flag issues** — Hardened model flag handling and non-interactive invocation across all four supported tools (Claude, Gemini, Codex, OpenCode).
29+
1230
## [5.0.3] - 2026-02-17
1331

1432
### Fixed

adapters/codex/skills/debate/SKILL.md

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,8 @@ Use a SINGLE request_user_input call for all missing params:
8181
request_user_input:
8282
> **Codex**: Each question MUST include a unique `id` field (e.g., `id: "q1"`).
8383
questions:
84-
- header: "Proposer" # SKIP if proposer resolved
84+
- id: "debate-proposer"
85+
header: "Proposer" # SKIP if proposer resolved
8586
question: "Which tool should PROPOSE (argue for)?"
8687
options (only installed tools):
8788
- label: "Claude" description: "Deep code reasoning"
@@ -90,28 +91,32 @@ request_user_input:
9091
- label: "OpenCode" description: "Flexible model choice"
9192
- label: "Copilot" description: "GitHub-integrated AI"
9293
93-
- header: "Challenger" # SKIP if challenger resolved
94+
- id: "debate-challenger"
95+
header: "Challenger" # SKIP if challenger resolved
9496
question: "Which tool should CHALLENGE (find flaws)?"
9597
options (only installed, excluding proposer):
9698
[same list minus the proposer tool]
9799
98-
- header: "Effort" # SKIP if effort resolved
100+
- id: "debate-effort"
101+
header: "Effort" # SKIP if effort resolved
99102
question: "What thinking effort level?"
100103
options:
101104
- label: "High (Recommended)" description: "Thorough analysis for debate"
102105
- label: "Medium" description: "Balanced speed and quality"
103106
- label: "Low" description: "Fast, minimal reasoning"
104107
- label: "Max" description: "Maximum reasoning depth"
105108
106-
- header: "Rounds" # SKIP if rounds resolved
109+
- id: "debate-rounds"
110+
header: "Rounds" # SKIP if rounds resolved
107111
question: "How many debate rounds?"
108112
options:
109113
- label: "2 (Recommended)" description: "Propose + challenge + defend + respond"
110114
- label: "1 (Quick)" description: "Single propose + challenge"
111115
- label: "3 (Extended)" description: "Three full exchanges"
112116
- label: "5 (Exhaustive)" description: "Five rounds, deep exploration"
113117
114-
- header: "Context" # SKIP if --context resolved
118+
- id: "debate-context"
119+
header: "Context" # SKIP if --context resolved
115120
question: "Include codebase context for both tools?"
116121
options:
117122
- label: "None (Recommended)" description: "No extra context, just the topic"
@@ -127,7 +132,8 @@ If context resolved to "file":
127132
request_user_input:
128133
> **Codex**: Each question MUST include a unique `id` field (e.g., `id: "q1"`).
129134
questions:
130-
- header: "File path"
135+
- id: "debate-file-path"
136+
header: "File path"
131137
question: "Which file should both tools see?"
132138
options:
133139
- label: "src/" description: "Source directory file"

adapters/opencode/commands/debate.md

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,8 @@ Use a SINGLE AskUserQuestion call for all missing params:
8686
```
8787
AskUserQuestion:
8888
questions:
89-
- header: "Proposer" # SKIP if proposer resolved
89+
- id: "debate-proposer"
90+
header: "Proposer" # SKIP if proposer resolved
9091
question: "Which tool should PROPOSE (argue for)?"
9192
multiSelect: false
9293
options (only installed tools):
@@ -96,13 +97,15 @@ AskUserQuestion:
9697
- label: "OpenCode" description: "Flexible model choice"
9798
- label: "Copilot" description: "GitHub-integrated AI"
9899
99-
- header: "Challenger" # SKIP if challenger resolved
100+
- id: "debate-challenger"
101+
header: "Challenger" # SKIP if challenger resolved
100102
question: "Which tool should CHALLENGE (find flaws)?"
101103
multiSelect: false
102104
options (only installed, excluding proposer):
103105
[same list minus the proposer tool]
104106
105-
- header: "Effort" # SKIP if effort resolved
107+
- id: "debate-effort"
108+
header: "Effort" # SKIP if effort resolved
106109
question: "What thinking effort level?"
107110
multiSelect: false
108111
options:
@@ -111,7 +114,8 @@ AskUserQuestion:
111114
- label: "Low" description: "Fast, minimal reasoning"
112115
- label: "Max" description: "Maximum reasoning depth"
113116
114-
- header: "Rounds" # SKIP if rounds resolved
117+
- id: "debate-rounds"
118+
header: "Rounds" # SKIP if rounds resolved
115119
question: "How many debate rounds?"
116120
multiSelect: false
117121
options:
@@ -120,7 +124,8 @@ AskUserQuestion:
120124
- label: "3 (Extended)" description: "Three full exchanges"
121125
- label: "5 (Exhaustive)" description: "Five rounds, deep exploration"
122126
123-
- header: "Context" # SKIP if --context resolved
127+
- id: "debate-context"
128+
header: "Context" # SKIP if --context resolved
124129
question: "Include codebase context for both tools?"
125130
multiSelect: false
126131
options:
@@ -136,7 +141,8 @@ If context resolved to "file":
136141
```
137142
AskUserQuestion:
138143
questions:
139-
- header: "File path"
144+
- id: "debate-file-path"
145+
header: "File path"
140146
question: "Which file should both tools see?"
141147
multiSelect: false
142148
options:

adapters/opencode/skills/agnix/SKILL.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
name: agnix
33
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."
4-
version: 5.0.3
4+
version: 5.1.0
55
argument-hint: "[path] [--fix] [--strict] [--target=claude-code|cursor|codex]"
66
---
77

adapters/opencode/skills/consult/SKILL.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
name: consult
33
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."
4-
version: 5.0.3
4+
version: 5.1.0
55
argument-hint: "[question] [--tool] [--effort] [--model] [--context] [--continue]"
66
---
77

adapters/opencode/skills/debate/SKILL.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
name: debate
33
description: "Structured AI debate templates and synthesis. Use when orchestrating multi-round debates between AI tools, 'debate topic', 'argue about', 'stress test idea', 'devil advocate'."
4-
version: 5.0.3
4+
version: 5.1.0
55
argument-hint: "[topic] [--proposer=tool] [--challenger=tool] [--rounds=N] [--effort=level]"
66
---
77

adapters/opencode/skills/deslop/SKILL.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
name: deslop
33
description: "Use when user wants to clean AI slop from code. Use for cleanup, remove debug statements, find ghost code, repo hygiene."
4-
version: 5.0.3
4+
version: 5.1.0
55
argument-hint: "[report|apply] [--scope=all|diff|path] [--thoroughness=quick|normal|deep]"
66
---
77

adapters/opencode/skills/discover-tasks/SKILL.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
name: discover-tasks
33
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."
4-
version: 5.0.3
4+
version: 5.1.0
55
---
66

77
# discover-tasks

0 commit comments

Comments
 (0)