Skip to content

Commit ec8513f

Browse files
fix(.claude): allow Skill tool + correct acli comment list syntax (DSPX-3302)
Headless dogfooding (runs 1 and 2 of scenario-from-ticket on DSPX-2719) surfaced two real gaps: - The `Skill` tool was denied on both runs because the allowlist didn't cover it, so the body of SKILL.md wasn't injected on invocation; the agent had to manually `Read` the skill file ~25 turns in, wasting time and biasing exploration toward grepping unrelated files first. Add `Skill(*)` to settings.json and per-skill `Skill(<name>)` entries to plugin.json (the latter enumerates exactly what downstream installs get, since they shouldn't inherit a wildcard). - `acli jira workitem comment list` requires `--key <KEY>` (the subcommand differs from `view`, which takes the key positionally). Both scenario-from-ticket and feature-design had the wrong form; corrected, with a one-line note about the asymmetry so the next agent doesn't paraphrase. Verified via run-3 on DSPX-2719: 41 turns / 5m16s / $1.07 (vs run-1's 48 turns / 6m44s / $1.27). Skill tool returned success on first call, both acli commands ran cleanly, the Story/Task branch produced `source.ref: main` pins correctly (no more incorrectly defaulting to `dist: lts`), and the agent's `actual:` field correctly enumerated all three test-infrastructure prerequisites including a `with_ecdsa_binding` parameter that run-1's scenario missed. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent a9f2fd4 commit ec8513f

4 files changed

Lines changed: 12 additions & 4 deletions

File tree

.claude/plugin/plugin.json

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,13 @@
3232
"Bash(acli jira workitem attachment list *)",
3333
"Bash(acli jira workitem link list *)",
3434
"Bash(acli jira project view *)",
35+
"Skill(feature-design)",
36+
"Skill(scenario-from-ticket)",
37+
"Skill(scenario-matrix)",
38+
"Skill(scenario-up)",
39+
"Skill(scenario-run)",
40+
"Skill(scenario-tear-down)",
41+
"Skill(instance-status)",
3542
"Write(xtest/scenarios/**)",
3643
"Write(xtest/features/**)",
3744
"Write(xtest/bug_*_test.py)",

.claude/settings.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
"Bash(acli jira project view *)",
2424
"Bash(acli jira board view *)",
2525
"Bash(acli jira sprint view *)",
26+
"Skill(*)",
2627
"Write(xtest/scenarios/**)",
2728
"Write(xtest/features/**)",
2829
"Write(xtest/bug_*_test.py)",

.claude/skills/feature-design/SKILL.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,11 @@ Two ideas to internalize before reading the steps:
2222

2323
### Step 1 — Pull the Jira context
2424

25-
If a Jira key was given, run both — comments often carry scope refinements that aren't in the description:
25+
If a Jira key was given, run both — `view` takes the key positionally, `comment list` requires `--key`; comments often carry scope refinements that aren't in the description:
2626

2727
```bash
2828
acli jira workitem view <JIRA-KEY> --fields '*all' --json
29-
acli jira workitem comment list <JIRA-KEY>
29+
acli jira workitem comment list --key <JIRA-KEY>
3030
```
3131

3232
Extract Issue Type, summary, description, status, and any comments about scope or implementation notes. If no Jira key, the user's description IS the spec input.

.claude/skills/scenario-from-ticket/SKILL.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@ The Jira key also becomes the working **branch name** (`<JIRA-KEY>-repro` for Bu
1717

1818
## Step 1 — Pull the Jira ticket into context
1919

20-
**Always run BOTH commands**. Don't skip the comment list — comments often carry the most recent reproduction status, "what changed" notes, or "fixed by PR #N" pointers that aren't in the original description:
20+
**Always run BOTH commands** — exactly as shown; the two subcommands take the key differently (`view` is positional, `comment list` requires `--key`). Don't skip the comment list — comments often carry the most recent reproduction status, "what changed" notes, or "fixed by PR #N" pointers that aren't in the original description:
2121

2222
```bash
2323
acli jira workitem view <JIRA-KEY> --fields '*all' --json
24-
acli jira workitem comment list <JIRA-KEY>
24+
acli jira workitem comment list --key <JIRA-KEY>
2525
```
2626

2727
From the JSON output of the first command, extract:

0 commit comments

Comments
 (0)