### Tracking Spec Kit work with tix
This project uses GitHub Spec Kit (detected via `.specify/`). Use tix to track its tasks:
- Filing a Spec Kit task/work package → `tix create --title "<feature>: <task>" --labels speckit`
- **Mirror the whole tree idempotently** → `tix import --target speckit` (one
parent issue per feature, one subissue per task, plus bugs and assessments;
safe to re-run after `/speckit-analyze` appends tasks).
- Add the feature's spec/plan/task context in the issue markdown body.
- Opening an issue → `tix list --status "todo"`
- Associating work with a project → `tix project add <id> <sel>…`; `tix list
--project <id>` lists a project's issues
- Recording an issue's health → `tix health set <n> --state <state> --rationale "<why>"`
(states: unknown, on_track, needs_attention, at_risk; `tix health show <n>` reads one back)
- Marking a task done → `tix move <number> done` (interactive) or
`tix move <number> done --commit <hash>` (non-interactive)
- Commenting on a task issue → `tix edit <number>` (body/comment section is plain markdown)
- **REQUIRED — always use `tix mcp` to create and move tix issues** while
tracking Spec Kit tasks. The MCP server is wired into this repo
(`opencode.jsonc`), so in opencode call the `tix_*` tools directly:
`create_issue` to file a new task issue, `move_issue` to advance it (moving
to `done` records the commit via the `commit` argument), and the read tools
(`list_issues`, `get_issue`, `board_status`, `search_issues`) to inspect the
board. Do NOT hand-edit issue files or drive status changes through the CLI
prompts. See `docs/mcp.md`.
- **REQUIRED — mirror every Spec Kit task as a tix subissue.** Create one parent
issue per feature (`tix create --title "<feature>" --labels speckit`) and file
every task in `specs/NNN-<feature>/tasks.md` as its own **child** issue
(`tix create --title "<task>" --parent <feature-issue>`); bugs
(`.specify/bugs/<slug>/`) and assessments (`.specify/assessments/<slug>/`) each
get their own `--labels speckit` issue. Use `tix parent children
<feature-issue>` to see the decomposition. Mark matching issues
`done --commit <hash>` when the feature lands.
- **REQUIRED — record findings and progress on the issue as you work it.** When
you run `/speckit-analyze` (or otherwise assess a task), append its findings and
every decision taken to that issue's comments (`tix edit <number>`, or MCP
`comment_on_issue`), and keep the status moving — `tix move <number> "in
progress"` while in flight, `done --commit <hash>` when it lands. A finding or a
decision that lives only in the chat is one the board does not have.
- **`/speckit-taskstoissues` is GitHub-only.** Do not use it as the tix board:
it requires a GitHub `origin` remote and the GitHub MCP tools, and creates
duplicate issues. Mirror to tix as above instead.