issue
issue
Create, update, and search issues without caring which tracker the repo uses. One skill, two backends — GitHub (via gh) or Linear (via its MCP server) — picked per-repo by a small committed config. The skill drafts the issue from your free-text description plus the session context, shows it once, and writes it only after you confirm — or just prints the command when you ask for a plan.
Workflow
1. Load config & cache (guided setup on first run)
- Config — read
$(git rev-parse --show-toplevel)/.tituskirch-skills.jsonwithjq(missing file/jq→ run setup, or warn and fall back to GitHub detection). Theissue.*section holds the backend and rules. Resolution per setting: config → native → built-in default. - No / incomplete config, or
/issue setup→ run the guided setup (step below). Setup is also where the catalog cache is first filled. - Catalog cache — read
$(git rev-parse --git-common-dir)/tituskirch-skills/issue(JSON). Reuse when younger than ~3 days and thebackendis unchanged; refresh when missing, stale, the backend changed, or the user passes--refresh. Label staleness in the plan header (Catalogs (cached, 2d ago): …).
Config/cache schema, the full setup flow, and backend recipes: REFERENCE.md.
2. Determine the backend
From issue.backend (github | linear). Then check availability: GitHub → gh repo view --json nameWithOwner; Linear → confirm the Linear MCP tools are present and authenticated. Unavailable/unauthenticated → say so and point to the fix (e.g. authenticate the Linear MCP), don't guess the other backend.