--- name: ticket description: End-to-end Jira ticket workflow — fetch a ticket into a live ticket page under .claude/docs/epics/, plan it, implement it with clean commits, review it with a council of models, drive the pre-mr-review audit to convergence on the work Claude account, and write the MR doc. Use when the user gives you a Jira ticket key (e.g. KACP-11111) to work, or asks to plan/implement/wrap up a ticket. --- # Ticket Workflow Turns a Jira ticket key into: a live ticket page carrying the ticket, a reviewed plan, progress, and proof, implemented and committed code, a converged `pre-mr-review` audit, and an MR doc ready to paste into GitLab/GitHub. This skill is user-level (`~/.agents/skills/ticket/`) and works the same way in any repo that has a `.claude/docs/` directory and a `pre-mr-review` skill. Invoked as `/ticket KACP-11111`. The ticket key is passed as the skill's arguments. Called again later with the same key, it resumes wherever it left off — see **Phase 0**. Not to be confused with `/review-ticket`. That skill writes the *developer review* on a Jira story, the estimate, risk level, and testing tables, as part of authoring a ticket before anyone builds it. It has nothing to do with reviewing code. The code review in this skill is Phase 2 step 5 and is performed by the review council in [COUNCIL.md](COUNCIL.md). ## The ticket page Every ticket gets a **ticket page**, a web page Gib keeps open while you work: the ticket as Jira has it, the plan with its mocks, live progress, proof beside the mocks, and the review. Every epic gets an **epic index** listing its stories in build order. Both render from data files that only `ticket-page` writes, and both update themselves as it writes. Gib works in T3 Code. The page opens in T3's file viewer beside the thread when you link its absolute path, so never start a server for it. At two moments, plan approval and hand-off, the skill also shows a snapshot inline in the thread with `ticket-page view`, so he can read it without leaving the conversation. SITE.md has the commands, under **In T3 Code**. **Read [SITE.md](SITE.md) before the first write of every run.** It holds the command for each moment the phases below name, the plan's JSON shape, how to draw mocks, and how the epic order is seeded. Record each moment when it happens, not in a batch at the end, because Gib is watching the page change. ## Working in T3 Code Gib runs this skill in a T3 Code thread (`T3CODE_THREAD_ID` is set) and stays there, so the work comes to him through T3's own tools. - **Agents are T3 delegates.** Every agent this skill starts is a `delegate_task`, and a local one always runs in this thread's project. A delegate gets only its `task` text, so write the brief as though it knows nothing. `/skill` lines do not expand there: tell it to call the Skill tool. Start one with `mode: "async"` and end your turn, because T3 wakes you when it finishes. - **Proof comes from T3's browser,** the `preview_*` tools. `/ticket` is the request for browser work that T3's rules ask for, so use them at the proof step. Phase 2 step 9 has the recipe. Claude in Chrome stays for reading Gib's signed-in sites, such as a Jira page. - **Questions go through AskUserQuestion,** with the context, what blocks you, and your recommendation first, because a question in a normal message leaves the thread looking done. Without `T3CODE_THREAD_ID`, the fallbacks are named where each one applies. ## Directory layout this skill maintains ``` .claude/docs/epics/ / index.html, epic.data.js # the epic index (each index.html carries its own renderer) / index.html, ticket.data.js # the ticket page resources/ issue.raw.json # the fetched issue, kept for re-imports # images, videos, other files as downloaded