skills/jira-ticket-desk/SKILL.md
Read Jira tickets through Atlassian MCP, merge local handling rules for intentionally ignored or deferred work, optionally consult Lazyweb for desktop dashboard design references, and render a secure offline pure HTML personal ticket desk from a reusable template plus replaceable JSON data. Use when the user wants to review, triage, plan, or report on Jira tickets without mutating Jira.
npx skillsauth add keelim/keelim-skill jira-ticket-deskInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use this skill to turn Jira tickets into a local operating desk. The workflow is read-only toward Jira: it may inspect tickets through Atlassian MCP, but it must not change status, labels, assignees, comments, or fields.
The final HTML must work in a secure offline environment. Lazyweb is only a design-reference source before template changes; never leave Lazyweb, Jira, CDN, font, image, or script URLs in the generated HTML.
key, summary, status, assignee, priority, due, updated, project, issue_type, labels, and optional bucket.ticket-desk.rules.json.scripts/render_ticket_desk.py --data-output.assets/ticket-desk-template.html.open ticket-desk.html is acceptable. If the environment cannot open files, return the absolute HTML path and say that opening was unavailable.Use local rules for tickets that should not be handled automatically. This makes intentional non-action visible instead of letting those tickets look forgotten.
Minimal JSON shape:
{
"tickets": {
"PROJ-123": {
"bucket": "ignored",
"reason": "belongs to another owner",
"review_after": "2026-05-31",
"note": "Watch only if dependency changes."
}
}
}
Supported buckets are focus, next, waiting, blocked, monitoring, and ignored. Treat unknown bucket names as next unless the user explicitly asks for custom sections.
The normal repeated-use path is template plus data JSON:
python3 scripts/render_ticket_desk.py --tickets tickets.json --rules ticket-desk.rules.json --data-output ticket-desk.data.json
python3 scripts/render_ticket_desk.py --data ticket-desk.data.json --output ticket-desk.html
The first command can be run only when Jira data changes. The second command can be rerun whenever the user edits ticket-desk.data.json locally.
For a one-shot render:
python3 scripts/render_ticket_desk.py --tickets tickets.json --rules ticket-desk.rules.json --output ticket-desk.html
For a quick smoke test:
python3 scripts/render_ticket_desk.py --demo --data-output /tmp/jira-ticket-desk.data.json
python3 scripts/render_ticket_desk.py --data /tmp/jira-ticket-desk.data.json --output /tmp/jira-ticket-desk-demo.html
python3 scripts/render_ticket_desk.py --check-html /tmp/jira-ticket-desk-demo.html
open /tmp/jira-ticket-desk-demo.html
The renderer accepts either a Jira search response with issues or a plain array of issue objects. It intentionally omits remote URLs from the generated data and HTML.
The bundled template lives at assets/ticket-desk-template.html. It is inspired by Lazyweb references for Jira template galleries, Trello-style task boards, project-dashboard view tabs, and operations-dashboard KPI cards.
Do not edit runtime data directly into the template except through the __TICKET_DESK_DATA__ placeholder. Use --data to inject JSON into a fresh output copy.
Generated HTML must be a single file with inline CSS and inline JavaScript only. It must not contain:
http:// or https://script src or link href@importfetch(, XMLHttpRequest, or WebSocketUse inline SVG or CSS for small visual indicators. If an input ticket includes remote URLs, keep them out of the HTML and show the issue key as text.
Read references/ticket-desk-rules.md when you need the bucket definitions, data schema, JQL examples, design guidance, or offline validation checklist.
tools
Use when writing first-person technical posts in a personal engineer voice, especially build logs, case studies, workflow write-ups, or series posts about tools, systems, and engineering habits.
tools
Build a secure offline HTML dashboard and JSON summary from Codex and Claude session JSONL logs. Use when the user wants to track agent tool usage, skill invocations, subagent kinds, session harness activity, or usage counts for Codex/Claude runs without exposing raw prompts, tool arguments, or tool outputs.
documentation
Capture session observations through opt-in hooks, review learning candidates, and promote stable lessons into AGENTS.md, README.md, skills, or docs without letting hooks mutate canonical project files directly.
tools
Use when preparing a date-based Android release from develop to main, updating versionCode, aligning an existing release PR with recent conventions, or dispatching app_deploy through GitHub Actions.