claude: Use non-interactive jj split for subagents
Subagents can't respond to interactive prompts, so jj split without -m
would hang waiting for input.
Assisted-by: Claude Opus 4.5 via Claude Code
diff --git a/ai/claude/settings.json b/ai/claude/settings.json
index a43ec4b6..4b0a948a 100644
--- a/ai/claude/settings.json
+++ b/ai/claude/settings.json
@@ -19,18 +19,17 @@
]
},
"enabledMcpjsonServers": [
- "dash-api",
"episodic-memory"
],
+ "statusLine": {
+ "type": "command",
+ "command": "~/.claude/statusline.sh"
+ },
"enabledPlugins": {
"elements-of-style@superpowers-marketplace": true,
"superpowers-developing-for-claude-code@superpowers-marketplace": true,
"episodic-memory@superpowers-marketplace": true,
"superpowers@superpowers-marketplace": true,
- "playwright-cli@playwright-cli": true
- },
- "statusLine": {
- "type": "command",
- "command": "~/.claude/statusline.sh"
+ "claude-md-management@claude-plugins-official": true
}
}
diff --git a/ai/claude/skills/jj-workspaces/SKILL.md b/ai/claude/skills/jj-workspaces/SKILL.md
index 8580e3e4..315e30c2 100644
--- a/ai/claude/skills/jj-workspaces/SKILL.md
+++ b/ai/claude/skills/jj-workspaces/SKILL.md
@@ -109,10 +109,10 @@ Use Task tool to dispatch in parallel. **Start agents in the workspace directory
1. `cd` into workspace directory first—all work happens FROM that directory
2. Make file edits to implement task
3. Run verification (tests, type checks)
-4. Split changes to parent: `jj split .` then provide commit message when prompted (selects all files, creates parent commit with changes, leaves working copy empty)
+4. Split changes to parent: `jj split -m '<description>' .` (selects all files, creates parent commit with changes, leaves working copy empty)
5. Report: what changed, verification output, change ID
-**Why `jj split` instead of `jj commit`:** Splitting moves changes into a new parent commit while leaving the workspace's working copy commit empty. This keeps the workspace commit as the megamerge parent, maintaining the DAG structure.
+**Why `jj split` instead of `jj commit`:** Splitting moves changes into a new parent commit while leaving the workspace's working copy commit empty. This keeps the workspace commit as the megamerge parent, maintaining the DAG structure. The `-m` flag provides the description inline, avoiding interactive prompts.
**FORBIDDEN for agents:**
- `jj workspace` commands
@@ -164,7 +164,7 @@ jj workspace update-stale
|---------|-----|
| Working from wrong directory | Agent must `cd` into workspace directory first—all commands run FROM there |
| Skipping DAG placement | Must run `jj rebase` to place in DAG (with `-B mm` if megamerge exists) |
-| Agent skipping split | Agent must run `jj split .` to finalize changes |
+| Agent skipping split | Agent must run `jj split -m '<description>' .` to finalize changes |
| Skipping `jj workspace update-stale` | Run in main workspace after workspace operations |
| Creating workspaces during dispatch | Create ALL workspaces BEFORE dispatch |
| Agent touching other workspaces | Agents work ONLY in assigned path |
@@ -177,7 +177,7 @@ jj workspace update-stale
|---------|---------|
| "I can work from the main workspace" | Must `cd` into workspace directory—jj context depends on cwd |
| "I'll skip DAG placement" | Must place in DAG for clean integration |
-| "Agent doesn't need to split" | Agent must run `jj split .` to finalize changes |
+| "Agent doesn't need to split" | Agent must run `jj split -m '<description>' .` to finalize changes |
| "I'll create workspaces during dispatch" | Create ALL workspaces first |
| "Custom directory is fine" | Always use `work/` directory |
| "This is overkill for one agent" | Single-agent workflow maintains consistency |