ticket-bridge

ticket-bridge is a skill for Claude Code from kimsanguine/hplan. It costs 177 tokens per session (5,454 once invoked), scanned B, original, MIT.

A translator between GitHub Issues, Linear, or Jira and hplan, a planning and execution system. It moves task descriptions, estimates, and status information between those systems without creating the estimates or progress data itself.

In plain words
What is it for?
Import issue descriptions as possible work breakdown tasks, add predicted time ranges to issues, report code, pull request, CI/CD, and review status in issue comments, and create issues from planning tasks.
Why use it?
It removes the need to copy work items and updates manually between a ticket tracker and the planning workflow. Changes are not written back automatically; batch mode groups the confirmation step.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter. Also seen: model in frontmatter; reads .claude/ paths; mentions Claude Code.

Part of the deliver plugin — 10 skills, 1 command shipped together

Good fit Import issue descriptions as possible work breakdown tasks, add predicted time ranges to issues, report code, pull request, CI/CD, and review status in issue comments, and create issues from planning tasks.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/kimsanguine/hplan/ticket-bridge
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add kimsanguine/hplan --skill ticket-bridge
Clone the repo
git clone --depth 1 https://github.com/kimsanguine/hplan

Made for: Claude Code.

Or install deliver, the plugin that ships this one along with the rest of its 10 skills, 1 command.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for ticket-bridge

README.md
[![agentmods](https://agentmods.dev/badge/skills/kimsanguine/hplan/ticket-bridge/github.svg)](https://agentmods.dev/skills/kimsanguine/hplan/ticket-bridge)
Your own site
<a href="https://agentmods.dev/skills/kimsanguine/hplan/ticket-bridge"><img src="https://agentmods.dev/badge/skills/kimsanguine/hplan/ticket-bridge/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for ticket-bridge

Your own site · 80×15
<a href="https://agentmods.dev/skills/kimsanguine/hplan/ticket-bridge"><img src="https://agentmods.dev/badge/skills/kimsanguine/hplan/ticket-bridge.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 177 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 5,454 The whole file, excluding the scripts and references it only reads on demand.
Security scan B 1 finding. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00177 $0.05454
Opus 5 $0.00088 $0.02727
Sonnet 5 $0.00035 $0.01091
Haiku 4.5 $0.00018 $0.00545

Measured 8d ago against content hash e6df45bdf2bc, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-08, from the pricing page.

Security

Grade B, and why

ticket-bridge scanned grade B with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Reads agent configuration directoriesmediumAgent snooping

.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.

// ~/.claude/settings.json → mcpServers 항목에 추가
deliver/skills/ticket-bridge/SKILL.md · 409 lines

How it starts

The opening of the file, as written. The whole thing — 409 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Core Goal

GitHub Issues / Linear / Jira(system of record)와 hplan의 닫힌 실행 레이어(sprint.track/)를 잇는다. ticket-bridge는 번역기다 — 추정치나 진척을 생성하지 않고, sprint/conductor의 산출물을 티켓 시스템 포맷으로 전달하거나 그 반대로 변환만 한다.

모드 책임 입력 → 출력 LLM
--mode pull 이슈 → WBS 태스크 후보 list_issuesharness/ticket-import.md ✅ body 분해만
--mode estimate predicted.json p50/p90 → 이슈 코멘트 .track/predicted.json + ticket-map.jsonadd_comment ✅ 산문만
--mode status .track/ + git/PR/CI/review 상태 → 이슈 코멘트 actual_log.jsonl + list_commits/pull_request_readadd_comment ✅ 산문만
--mode push WBS 태스크 → 이슈 생성 harness/ticket-import.md + ticket-map.jsoncreate_issue ✅ 제목/설명 생성만

기본값: --mode 미명시 → fail loud + 모드 목록 안내. auto-run 금지.


Rule 5 준수 경계

작업 LLM 사용 근거
Issue body → 태스크 후보 분해 (pull) ✅ 분류 자연어 → sub-task 분류. sprint WBS와 동일 성격
코멘트 산문 생성 (estimate/status) ✅ 자연어 생성 Rule 5 허용 영역
size 라벨 → complexity bucket 매핑 결정론 lookup §매핑 규칙 순수 테이블
complexity → baseline percentile 전달 결정론 predicted.json 값 직접 인용
태스크 ↔ 이슈 매칭 ❌ 결정론 harness/ticket-map.json 명시 매핑 lookup
commit/PR ↔ 태스크 매칭 ❌ 결정론 ticket-map의 issue 번호 → commit/branch 정규식
중복 코멘트 감지 ❌ 결정론 마커 문자열 + 태스크 ID grep

자체 점검: 라벨 매핑·estimate 전달·태스크 매칭에서 LLM 호출이 감지되면 즉시 fail — Rule 5 위반.


Trigger Gate

Use This Skill When

  • "이 이슈들 스프린트 계획에 넣어줘" → --mode pull
  • "추정치를 이슈에 달아줘" → --mode estimate
  • "진행 상황을 이슈에 업데이트해줘" → --mode status

Route to Other Skills When

  • WBS 수치 예측 계산deliver/sprint --step plan (ticket-bridge는 계산 안 함)
  • 태스크 실제 실행 → deliver/conductor
  • 추적 환경 초기화 → deliver/sprint --step init

Boundary Checks

  • --mode 미명시 → fail loud, 모드 목록 출력
  • 지정한 --system의 MCP 미연결 → fail loud (대체 API client 만들지 않음)
  • write-back 전 항상 사용자 확인 게이트 통과 (자동 코멘트 금지)

Inputs

입력 출처 처리
--mode $ARGUMENTS pull/estimate/status 분기
--system $ARGUMENTS github(기본)/linear/jira 선택
issue 번호/필터 $ARGUMENTS 나머지 대상 이슈 선택
.track/predicted.json sprint plan 산출 estimate 전달 소스
.track/actual_log.jsonl sprint init+probe status 전달 소스
harness/ticket-map.json pull 산출 또는 수동 태스크 ID ↔ 이슈 번호 매핑

Read the full file on GitHub · 409 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 8d ago First seen · 409 lines · 177 tokens per session scan B e6df45bdf2bc

Subscribe to this mod's changes

ticket-bridge is a skill published in the GitHub repository kimsanguine/hplan (2 stars, last pushed 23d ago), licensed MIT. It adds 177 tokens to every session and 5,454 once invoked, about $0.0009 per session on Opus 5. A static security scan graded it B with 1 finding (reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

create-request

Create, update, or scan per-task request tickets for progress tracking. These are date-prefixed non-lifecycle docs under requests/, NOT feature-level requirements (use /req-analyze for those). Use when: tracking task progress, updating completion status, scanning incomplete requests, checking request status dashboard.…

sd0xdev/sd0x-harness · 112 tokens

req-analyze

A requirements-analysis tool that breaks a problem into needs, stakeholders, and priorities before a technical solution is chosen.

sd0xdev/sd0x-harness · 101 tokens

recap-ask

Interactive Q&A over an existing recap document. Use when: user wants to ask follow-up questions about a briefing-recap- .md produced by /recap-doc, with recap-bounded context + out-of-scope redirect + optional promote-to-request. Not for: generating a new recap (use /recap-doc), general project Q&A (use /ask), code…

sd0xdev/sd0x-harness · 106 tokens

recap-doc

Post-development recap document generator. Use when: AI/Codex has implemented a feature and the user needs a guided walkthrough of what changed and why, with blind-spot detection and anticipated questions. Not for: Q&A follow-up (use /recap-ask), technical share-out for teammates (use /tech-brief), or generic code…

sd0xdev/sd0x-harness · 114 tokens

runbook

Generate and update feature release runbooks from existing docs and codebase. Use when: creating operational runbook, release handbook, deployment checklist, pre-release preparation. Not for: incident response (v2), code review (use codex-code-review), architecture design (use architecture).

sd0xdev/sd0x-harness · 59 tokens

jira

Jira integration — view issues, generate branches, create tickets, transition status. Use when: user mentions Jira ticket key (XX-123), says /jira, wants to create branch from ticket, create a new ticket, or update Jira status. Not for: GitHub issues (use issue-analyze).

sd0xdev/sd0x-harness · 64 tokens