spectra-commitlisted
Install: claude install-skill jurislm/jurislm-tools
Commit files related to a specific Spectra change.
This is a **utility skill** (not a workflow step). It reads source file tracking data and artifact changes to stage and commit only the files belonging to one change — useful when multiple changes are in progress simultaneously.
**Input**: Optionally specify a change name after `/spectra-commit` (e.g., `/spectra-commit add-auth`). If omitted, check if it can be inferred from conversation context. If vague or ambiguous you MUST prompt for available changes.
**Prerequisites**: This skill requires `git`. Run `git --version`. If git is not available (command not found or similar error), inform the user to install git and STOP.
**Steps**
1. **Select the change**
If a name is provided, use it. Otherwise:
- Infer from conversation context if the user mentioned a change
- Auto-select if only one active change exists
- If ambiguous, run `spectra list --json` to get available changes. Use the **AskUserQuestion tool** to let the user select
Always announce: "Committing for change: <name>"
2. **Read tracking file**
Check for `.spectra/touched/<change-name>.json`. If it exists, parse it to get source files grouped by task.
Expected format:
```json
{
"change": "<change-name>",
"touched": [
{
"task_id": "1",
"task_desc": "Task description",
"files": ["src/file1.ts", "src/file2.ts"]
}
]
}
```
If the file does not exist, proceed without sou