Chalk Labs
Need help deploying ticket-driven?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/tax-mux-ticket-driven
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/ticket-driven
What's inside
- Skill name
ticket-driven- Description
- チケット駆動開発の全体ワークフロー。Redmineチケットを起点に開発タスクを駆動する。
- License
- MIT
- Instructions
- 146 lines in SKILL.md · view on GitHub
Files (15)
- SKILL.md
- after-split.md · sections/
- close-audit.md · sections/
- delegate-pack.md · sections/
- delegate-subagent-hermes.md · sections/
- delegate-subagent-opencode.md · sections/
- delegate-subagent.md · sections/
- dispatch.md · sections/
- journal.md · sections/
- ops.md · sections/
- refactor.md · sections/
- request-eval.md · sections/
- resume.md · sections/
- test-plan.md · sections/
- ui-verify.md · sections/
SKILL.md (first lines)
# チケット駆動開発 (Ticket-Driven Development)
Redmine チケットを起点に開発タスクを駆動する。
**常時読むのは本ファイルだけ。** 本文は目録の条件に合うファイルだけ開く。`sections/` をまとめて読まない。
**パス解釈:** 本スキル内の `sections/*.md` は **スキル正本**(例: `~/.agents/skills/ticket-driven/sections/`)への参照。**作業リポジトリ内のパスではない。** `.ticket-driven/` 等のローカルディレクトリは **作らない・読まない**。
## ジャーナルとは(誤解防止)
| 用語 | 正体 | 読み方 |
|------|------|--------|
| **ジャーナル**(作業ログ) | Redmine チケットの **`journals`**(各 `notes` の履歴) | `redmine_issues` **get** + `include: ["journals"]`(Tier は `ops.md`) |
| **`sections/journal.md`** | 上記 `notes` の **書式・タイミングの説明書**(スキル内 Markdown) | 形式が分からないときだけ開く。**作業ログの実体ではない** |
- **禁止:** `read` / `read_file` / `glob` でプロジェクト内からジャーナルを探す(`.ticket-driven/`、`journal.md`、`.redmine/` 等)
- **禁止:** 外部記憶(任意の MCP・ローカルメモ等)だけを正本にして Redmine journals を読まない(外部記憶は **補助のみ・未接続でも可**。再開・分割証拠は Redmine 優先)
- **禁止:** ジャーナル未取得のまま「情報不足」とユーザーに丸投げ(先に Redmine get)
## チケットの役割
- ユーザーが渡すのは **絡まった依頼** でよい(渡し方の問題ではない)
- エージェントが **計画をチケットに書く**(refine / 分割 / 委任パック / ジャーナル)
- **正本**: description(DoD)+ **Redmine journals**(作業ログ)。**非正本**: チャット、圧縮サマリ、セッション履歴、外部記憶の要約単体
- 受け取ったあと **方針を建て直す** のはエージェントの仕事。再開時は作業ログを見て **リプラン要否を判定**(毎回ゼロから組み直す必要はない)→ `resume.md`
## HARD GATE(最優先)
次を満たすまで **コード変更・コミット・PR をしない**。
1. `issue_id` がある(ユーザー指定 or `ticket-create` で作成)
2. **要件が充足**され、完了条件が **検証可能**(中身は `ticket-refine`)
3. **分割の証拠**がある(自己申告だけでは不可):
- 親ジャーナルに `分割: ...`(子 ID 列挙)がある、**または**
- 親ジャーナルに `分割不要: {理由}` がある(理由フォーマットはスキル `sections/journal.md`。機械的必須分割に該当する親では **禁止**)
- **証拠にならないもの(禁止の代替)**: 子の `parent_issue_id` 紐付けだけ/チャット上の「分割した」/ワークスペース内のローカルメモファイル。これらがあっても親ジャーナルの `分割:` / `分割不要:` が無ければ **着手禁止**。書き方は `ops.md`(notes 最短例)
4. 着手ジャーナル(**実装チケット=子がある場合は必ず子**。親への着手・親 In Progress は禁止)。**委任パック必須**(`delegate-pack.md`)
5. **Redmine フィールド更新**(下記「Redmine 更新」)。`notes` だけ書いて **status / done_ratio を触らない** のは未着手・未完了扱い
**分割判定はスキップしない。** refine 直後に必ず `ticket-split` を開き、子作成か `分割不要:` ノートまでやってから着手する。
**再開**は日常フローの **入口に分岐1つ** 足すだけ(出口は同じ)。作業ログを読み **リプラン要否** を決める。必要なら refine/分割で計画を書き直してから着手。不要なら作業単位を確認して実装続行。把握したらすぐ edit しない(`resume.md`)。
**自動精緻化**: 確認せず `ticket-refine`。DoD があっても命題未展開・品質観点未反映・範囲/失敗時/テスト不足・分割候補未記載なら更新。充足なら更新スキップ。読み分けは refine の目録。
**自動分割**: refine 直後に `ticket-split` 二段判定。必須トリガ A–G(DoD≥4 / 独立塊≥2 / 中心成果≥2 / 中心パス≥4 / 同居禁止 / 改修入口≥2 等。事前に数える指標のみ)に当たれば **必ず子を作る**。分割するなら親の切り出し(プレースホルダ禁止)。子は合格ライン(DoD 1〜3 等)。**障害・エラーは現象確認→調査→解決**(`ticket-create` の `bug-flow.md` / split の `policy.md`)。分割後の順は `after-split.md`。
refine 後も DoD 不能/外部情報必須 → 質問は最大3つ。例外: 質問・設計のみ/読み取りのみ/「チケット不要」明示。
起動例: `#N 着手` / `#N 再開` / `#N 評価して`(評価は `ticket-evaluate`)
## 目録
| 開く条件 | 読むファイル |
|----------|----------------|
| `#N 評価` / 実装点検 / DoD 照合してジャーナルへ(コード変更なし) | スキル **`ticket-evaluate`**(本目録外。`skills/ticket-evaluate/SKILL.md`) |
| ジャーナル **書式**(`分割:` / `着手:` / `評価:` 等の文言。実体は Redmine get) | スキル `sections/journal.md` |
| 子(または単一票)の着手直前・委任の境界 | `sections/delegate-pack.md` |
| 子をサブエージェントへ委任する(共通・並列禁止) | `sections/delegate-subagent.md` |
| 上記 + OpenCode | `sections/delegate-subagent-opencode.md` |
| 上記 + Hermes | `sections/delegate-subagent-hermes.md` |
| Resolved 直前のクローズ監査 | `sections/close-audit.md` |
| 条件別の重い手順の自動判定表 | `sections/dispatch.md` |
| 途中停止・モデル切替・状況把握して再開 | `sections/resume.md` |
| テスト計画の確認・実行 | `sections/test-plan.md` |
| UI・画面・見た目の変更 | `sections/ui-verify.md` |
| 実装中の予防/実装後のリファクタ検討 | `sections/refactor.md` |
| 子チケットがある・分割直後 | `sections/after-split.md` |
| 別途評価エージェントが定義されている(ask-*-eval 等) | `sections/request-eval.md` |
| MCP・ステータス・操作例・コミット/PR | `sections/ops.md` |
スキルトリガー表は `skills/navigation-protocol.md`。
## 共通ステップ(新規・再開で同じ出口)
新規は A から、再開は **A の前に `resume.md` の B(リプラン要否)** を挟む。それ以外同じ。
```
A. get(#N) + 計画をチケットに書く
→ ticket-refine(足りていればスキップ)
→ ticket-split → 親に `分割:` または `分割不要:`(Redmine notes。書式は sections/journal.md)
→ **別途評価エージェント定義時**(`request-eval.md`): `評価依頼: 計画` +連絡し結果待ち。不合格なら着手禁止
B. 着手
→ `着手:` + 委任パック + **status_id=進行中**(子があるなら **子のみ**)→ delegate-pack.md / ops.md
C. 実装
→ test-plan 確認 → 実装(refactor.md 予防)→ DoD 区切りで **done_ratio** → テスト実行 + DoD 検証
→ **UI・画面を触ったら** スクショをチケット添付(`ui-verify.md`。不能時は `UI証拠なし:`)
D. レビュー提出
→ 実装検証が終わったら **`status_id`=レビュー**(目安 id=7。必ず `redmine_metadata` で確認)+ `notes`(`レビュー提出:` 可)
→ **別途評価エージェント定義時**: `評価依頼: 実装` +連絡(自己 `評価:` 禁止)。未定義なら E で自己実行可
→ **進行中のまま解決しない**(レビューを飛ばして Resolved は禁止)
E. 評価(別視点。原則 Cursor / `ticket-evaluate`)
→ 票が **レビュー** のあいだに `評価:` を `notes` のみで書く(status / done_ratio は触らない)
→ **定義時**は評価側が書く。実装側は書かない(`request-eval.md`)
→ **不合格**: 実装側が **レビュー→進行中** に差し戻し、修正して D からやり直し。この時点で Resolved 禁止
→ **合格 / 条件付き合格(ブロッカーなし)**: 実装側が F へ
F. 完了
→ close-audit.md(評価済み含む)→ 完了ノート + **`done_ratio`=100** + **`status_id`=Resolved**(レビュー→解決)→ コミット/PR は依頼時のみ(ops.md)
→ 子 Resolved 直後は **親 done_ratio** を更新(after-split.md)
```
## Redmine 更新(省略禁止)
**チャット報告や `notes` だけでは進捗にならない。** `redmine_api_request` でフィールドを更新する(操作例は `ops.md`)。
| タイミング | 対象票 | 必須 |
|------------|--------|------|
| A create / refine / split | 実装チケット(子、または分割不要の単一票)。親ハブは推奨 | **`estimated_hours`**=**人手想定**(エージェント無しの人時。エージェント前提で短くしない)。未設定のまま B に進まない。`due_date` はカレンダー用でブースト計算に使わない |
| B 着手 | 実装チケット | `notes`(`着手:` + 委任パック)+ **`status_id`=進行中**(`estimated_hours` 未設定なら先に埋める) |
| C 途中 | 同左 | 主要 DoD 完了ごとに **`done_ratio`**(0→25→50→75。詰まり報告以外の連投は不要) |
| D レビュー提出 | 同左 | **`status_id`=レビュー**(metadata で ID 確認。本環境目安 **7**) |
| E 評価 | 同左 | `ticket-evaluate` が `評価:` **notes のみ**(status 変更禁止)。不合格時は実装側が **レビュー→進行中** |
| F 完了 | 同左 | `notes`(`完了:` + クローズ監査 + **`ブースト:`**)+ **`done_ratio`=100** + **`status_id`=Resolved**(レビューから) |
| 子が Resolved | **親** | **`done_ratio`** = 完了子数 / 子総数(%)。全子後に親 Resolved |From tax-mux/ticket-driven, MIT.
More from tax-mux/ticket-driven
- 0.565score
ticket-evaluate
tax-mux
チケットの DoD・範囲・検証計画に照らして計画または実装を点検し、評価を Redmine ジャーナルへ追記する。 Use when the user asks to evaluate/review/inspect a ticket plan or implementation (#N 評価 / #N の計画を評価…
SkillAFreshness: AClaude Code +9 - 0.555score
ticket-refine
tax-mux
Redmineチケットの要件を分割前に充足する。命題のリッチ化・品質観点・範囲・失敗時・テスト・完了条件。
SkillAFreshness: AClaude Code +9 - 0.555score
ticket-status
tax-mux
チケットのステータスに応じた対応手順。ステータス別アクションと優先度別対応を含む。
SkillAFreshness: AClaude Code +9 - 0.555score
ticket-update
tax-mux
既存Redmineチケットの状態・情報を更新する。進捗率・担当者・ステータス変更を含む。
SkillAFreshness: AClaude Code +9 - 0.555score
ticket-create
tax-mux
Redmineに新しいチケットを作成する。必須/任意フィールド、種別別テンプレート付き。
SkillAFreshness: AClaude Code +9 - 0.555score
ticket-split
tax-mux
親チケットを機能構成→セッション完走単位の子チケットに分割する。分割方針・テンプレート・関連付け手順付き。
SkillAFreshness: AClaude Code +9 - 0.518score
code-refactor
tax-mux
実装中の予防的リファクタと、600行超分割・ネスト5超浅化の事後検討。コーディング時の肥大化防止・分割・ネスト解消に使う。
SkillBFreshness: BClaude Code +9 - 0.515score
git-pr
tax-mux
PR作成。gh cliまたはGitBucket API対応。diff確認、タイトル/本文生成。
SkillBFreshness: BClaude Code +9 - 0.515score
git-commit
tax-mux
Gitコミット。コミットメッセージ生成、ステージング、hooks対応。
SkillBFreshness: BClaude Code +9 - 0.515score
ticket-list
tax-mux
条件に合うRedmineチケットを取得する。ステータス/担当者/トラッカー別フィルタ、ページネーション対応。
SkillBFreshness: BClaude Code +9 - 0.515score
ticket-relation
tax-mux
Redmineチケット間の依存関係・関連付けを管理する。関連種別追加・削除・一覧取得。
SkillBFreshness: BClaude Code +9 - 0.512score
git-rebase
tax-mux
リベース操作。衝突解決、interactiveリベース。
SkillBFreshness: BClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 21, 2026 (9 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/tax-mux/ticket-driven
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from tax-mux
- 0.565score
ticket-evaluate
tax-mux
チケットの DoD・範囲・検証計画に照らして計画または実装を点検し、評価を Redmine ジャーナルへ追記する。 Use when the user asks to evaluate/review/inspect a ticket plan or implementation (#N 評価 / #N の計画を評価…
SkillAFreshness: AClaude Code +9 - 0.555score
ticket-split
tax-mux
親チケットを機能構成→セッション完走単位の子チケットに分割する。分割方針・テンプレート・関連付け手順付き。
SkillAFreshness: AClaude Code +9 - 0.555score
ticket-status
tax-mux
チケットのステータスに応じた対応手順。ステータス別アクションと優先度別対応を含む。
SkillAFreshness: AClaude Code +9 - 0.555score
ticket-refine
tax-mux
Redmineチケットの要件を分割前に充足する。命題のリッチ化・品質観点・範囲・失敗時・テスト・完了条件。
SkillAFreshness: AClaude Code +9 - 0.555score
ticket-create
tax-mux
Redmineに新しいチケットを作成する。必須/任意フィールド、種別別テンプレート付き。
SkillAFreshness: AClaude Code +9 - 0.555score
ticket-update
tax-mux
既存Redmineチケットの状態・情報を更新する。進捗率・担当者・ステータス変更を含む。
SkillAFreshness: AClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get ticket-driven running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
ticket-driven skill. Agent Mart. https://agentmart.dev/skills/tax-mux-ticket-driven (last updated 2026-10-24)