docs/ja-JP/skills/jira-integration/SKILL.md
Jira チケットの取得、要件分析、チケットステータスの更新、コメントの追加、またはイシューのトランジションを行う際に使用します。MCP または直接 REST 呼び出しによる Jira API パターンを提供します。
npx skillsauth add affaan-m/everything-claude-code jira-integrationInstall 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.
AI コーディングワークフローから直接 Jira チケットを取得・分析・更新します。MCP ベース(推奨)と直接 REST API の両アプローチをサポートします。
mcp-atlassian MCP サーバーをインストールします。これにより Jira ツールが AI エージェントに直接公開されます。
要件:
uvx(uv から)、パッケージマネージャーまたは公式 uv インストールドキュメントからインストールMCP 設定に追加(例: ~/.claude.json → mcpServers):
{
"jira": {
"command": "uvx",
"args": ["mcp-atlassian==0.21.0"],
"env": {
"JIRA_URL": "https://YOUR_ORG.atlassian.net",
"JIRA_EMAIL": "[email protected]",
"JIRA_API_TOKEN": "your-api-token"
},
"description": "Jira issue tracking — search, create, update, comment, transition"
}
}
セキュリティ: シークレットをハードコードしないでください。
JIRA_URL、JIRA_EMAIL、JIRA_API_TOKENはシステム環境変数またはシークレットマネージャーに設定することを推奨します。MCP のenvブロックはローカルのコミットされていない設定ファイルにのみ使用してください。
Jira API トークンの取得方法:
MCP が利用できない場合は、curl またはヘルパースクリプトで Jira REST API v3 を直接使用します。
必要な環境変数:
| 変数 | 説明 |
|------|------|
| JIRA_URL | Jira インスタンスの URL(例: https://yourorg.atlassian.net) |
| JIRA_EMAIL | Atlassian アカウントのメールアドレス |
| JIRA_API_TOKEN | id.atlassian.com からの API トークン |
シェル環境変数、シークレットマネージャー、またはリポジトリにコミットしないローカル環境ファイルに保存してください。
直接 curl 例では、Jira ユーザー設定を標準入力で渡し、認証情報がコマンドライン引数に出ないようにします。
jira_curl() {
printf 'user = "%s:%s"\n' "$JIRA_EMAIL" "$JIRA_API_TOKEN" |
curl -s -K - "$@"
}
mcp-atlassian MCP サーバーが設定されている場合、以下のツールが利用可能です。
| ツール | 目的 | 例 |
|--------|------|-----|
| jira_search | JQL クエリ | project = PROJ AND status = "In Progress" |
| jira_get_issue | キーで完全なイシュー詳細を取得 | PROJ-1234 |
| jira_create_issue | イシューの作成(タスク、バグ、ストーリー、エピック) | 新しいバグレポート |
| jira_update_issue | フィールドの更新(概要、説明、担当者) | 担当者の変更 |
| jira_transition_issue | ステータスの変更 | "In Review" に移動 |
| jira_add_comment | コメントの追加 | 進捗更新 |
| jira_get_sprint_issues | スプリント内のイシュー一覧 | アクティブスプリントレビュー |
| jira_create_issue_link | イシューのリンク(Blocks、Relates to) | 依存関係の追跡 |
| jira_get_issue_development_info | リンクされた PR、ブランチ、コミットの確認 | 開発コンテキスト |
ヒント: トランジション前に必ず
jira_get_transitionsを呼び出してください。トランジション ID はプロジェクトのワークフローによって異なります。
jira_curl \
-H "Content-Type: application/json" \
"$JIRA_URL/rest/api/3/issue/PROJ-1234" | jq '{
key: .key,
summary: .fields.summary,
status: .fields.status.name,
priority: .fields.priority.name,
type: .fields.issuetype.name,
assignee: .fields.assignee.displayName,
labels: .fields.labels,
description: .fields.description
}'
jira_curl \
-H "Content-Type: application/json" \
"$JIRA_URL/rest/api/3/issue/PROJ-1234?fields=comment" | jq '.fields.comment.comments[] | {
author: .author.displayName,
created: .created[:10],
body: .body
}'
jira_curl -X POST \
-H "Content-Type: application/json" \
-d '{
"body": {
"version": 1,
"type": "doc",
"content": [{
"type": "paragraph",
"content": [{"type": "text", "text": "Your comment here"}]
}]
}
}' \
"$JIRA_URL/rest/api/3/issue/PROJ-1234/comment"
# 1. 利用可能なトランジションを取得
jira_curl \
"$JIRA_URL/rest/api/3/issue/PROJ-1234/transitions" | jq '.transitions[] | {id, name: .name}'
# 2. トランジションを実行(TRANSITION_ID を置き換える)
jira_curl -X POST \
-H "Content-Type: application/json" \
-d '{"transition": {"id": "TRANSITION_ID"}}' \
"$JIRA_URL/rest/api/3/issue/PROJ-1234/transitions"
jira_curl -G \
--data-urlencode "jql=project = PROJ AND status = 'In Progress'" \
"$JIRA_URL/rest/api/3/search"
開発またはテスト自動化のためにチケットを取得する際に抽出する内容:
Ticket: PROJ-1234
Summary: [チケットタイトル]
Status: [現在のステータス]
Priority: [High/Medium/Low]
Test Types: Unit, Integration, E2E
Requirements:
1. [要件 1]
2. [要件 2]
Acceptance Criteria:
- [ ] [基準 1]
- [ ] [基準 2]
Test Scenarios:
- Happy Path: [説明]
- Error Case: [説明]
- Edge Case: [説明]
Test Data Needed:
- [データ項目 1]
- [データ項目 2]
Dependencies:
- [依存関係 1]
- [依存関係 2]
| ワークフローステップ | Jira の更新 | |---|---| | 作業開始 | "In Progress" にトランジション | | テスト作成完了 | テストカバレッジサマリーをコメント | | ブランチ作成 | ブランチ名をコメント | | PR/MR 作成 | リンク付きコメント、イシューをリンク | | テスト通過 | 結果サマリーをコメント | | PR/MR マージ | "Done" または "In Review" にトランジション |
作業開始:
Starting implementation for this ticket.
Branch: feat/PROJ-1234-feature-name
テスト実装完了:
Automated tests implemented:
Unit Tests:
- [テストファイル 1] — [カバー内容]
- [テストファイル 2] — [カバー内容]
Integration Tests:
- [テストファイル] — [カバーするエンドポイント/フロー]
All tests passing locally. Coverage: XX%
PR 作成:
Pull request created:
[PR Title](https://github.com/org/repo/pull/XXX)
Ready for review.
作業完了:
Implementation complete.
PR merged: [link]
Test results: All passing (X/Y)
Coverage: XX%
.env を .gitignore に追加する| エラー | 原因 | 対処法 |
|---|---|---|
| 401 Unauthorized | API トークンが無効または期限切れ | id.atlassian.com で再生成 |
| 403 Forbidden | トークンにプロジェクト権限がない | トークンのスコープとプロジェクトアクセスを確認 |
| 404 Not Found | チケットキーまたはベース URL が間違っている | JIRA_URL とチケットキーを確認 |
| spawn uvx ENOENT | IDE が PATH で uvx を見つけられない | フルパス(例: ~/.local/bin/uvx)を使用するか、~/.zprofile に PATH を設定 |
| 接続タイムアウト | ネットワーク/VPN の問題 | VPN 接続とファイアウォールルールを確認 |
development
Share durable, inspectable context and handoffs between Claude, Codex, Hermes, Cursor, OpenCode, and other agents through the local ECC Memory Vault. Use when an agent must save work state, transfer context, resume another agent's task, or search shared project knowledge.
development
Use when multiple consumers and providers must evolve an API or event schema without field drift, integration surprises, or one side silently redefining the interface.
tools
Query live GPU inventory, submit an authenticated Itô fixed-rate RFQ, inspect RFQ or procurement status, and run explicitly gated node qualification through the separately installed canonical CLI. Use when a user asks to find H100/H200 capacity, request a fixed compute rate, check Itô compute status, or validate GPU nodes.
data-ai
Instinct-based learning system that observes sessions via hooks, creates atomic instincts with confidence scoring, and evolves them into skills/commands/agents. v2.1 adds project-scoped instincts to prevent cross-project contamination.