Claude Code: Fully Automating from Jira Ticket to PR — Commit and PR Without Thinking
This article is the Day 5 entry of the KINTO Technologies Advent Calendar 2025🎅🎄
Introduction
The KINTO Development Division Frontend Team handles frontend development using React/Next.js.
We use Jira for task management and have adopted a ticket-based development flow.
As the team has grown, we felt that standardizing development flow conventions and reducing cognitive overhead — such as branch naming conventions, commit message formats, and PR template selection — had become a challenge.
This article introduces how we combined Claude Code with Atlassian MCP to automate these things you don't have to think about, creating an environment where developers can focus on solving real problems.
Technology Stack
- Claude Code: AI-driven development assistant
- Atlassian MCP: API integration with Jira/Confluence (automatic ticket information retrieval)
- GitHub CLI (gh): PR operation automation
- CLAUDE.md: Project-specific rule definitions
Background and Challenge: The Cognitive Load Problem in Development Flows
What developers should really focus on is writing code.
However, in actual development, cognitive resources were being consumed by non-essential tasks like these:
- "What was that ticket number again? Let me open Jira to check..."
- "What should the branch name be? What goes after
feature/JIRAKEY-1234/?" - "Should I branch from develop? Or from the project branch?"
- "Which emoji was it for the commit message,
:sparkles:or:wrench:?" - "Do I add
:m:to the PR title or not?" - "Which PR template should I use?
for_dev.md? The default one?"
These may seem trivial, but they are decisions that occur multiple times a day. When accumulated, they significantly drain developers' focus.
Solution: Achieving a "No-Thinking" Development Flow
"Just provide the ticket number, and everything else is automated."
To achieve this, we combined Claude Code with Atlassian MCP.
What the Developer Does
Developer: "Create a branch for JIRAKEY-1234"
What Claude Code Does (Automatically)
- ✅ Retrieves ticket information via Jira API
- ✅ Checks project affiliation through epic determination
- ✅ Automatically generates the appropriate branch name (
feature/JIRAKEY-1234/update_claude_docs) - ✅ Automatically determines the appropriate base branch (develop or project branch)
- ✅ Creates the branch
What the Developer Does
Developer: "Commit"
What Claude Code Does (Automatically)
- ✅ Analyzes the changes
- ✅ Selects the appropriate emoji shortcode (
:pencil:,:bug:,:sparkles:, etc.) - ✅ Executes the commit
What the Developer Does
Developer: "Create a PR"
What Claude Code Does (Automatically)
- ✅ Extracts the ticket number from the branch name
- ✅ Retrieves the ticket title via Jira API
- ✅ Automatically generates the PR title (
JIRAKEY-1234: Standardizing Claude Code Operation Rules) - ✅ Automatically determines the base branch (develop or project branch)
- ✅ Automatically selects the appropriate PR template
- ✅ Executes PR creation
The developer only needs to give three instructions. Branch creation, commit execution, and PR creation are all handled automatically by Claude Code.
Implementation: CLAUDE.md — A "Rulebook for AI to Read"
All automation is achieved through rules written in a document called CLAUDE.md.
### Branch Naming Conventions
Project base branch: `feature/project-name`
- Example: `feature/simulation`
- Base branch: `develop`
Feature branch (under project): `feature/JIRAKEY-ticket-number/description`
- Example: `feature/JIRAKEY-1234/add_simulation_list`
- Base branch: `feature/project-name`
Regular feature branch (outside project): `feature/JIRAKEY-ticket-number/description`
- Example: `feature/JIRAKEY-1234/fix_bug`
- Base branch: `develop`
For parent-child tickets:
- Parent branch: `feature/JIRAKEY-parent-ticket-number/develop`
- Child branch: `feature/JIRAKEY-parent-ticket-number/JIRAKEY-child-ticket-number/description`
Relationship Between Epics and Project Base Branches
- Epic determination: If `parent.fields.issuetype.name` of a Jira ticket is "Epic", that ticket belongs to a project
- Important: When creating branches for tasks under an epic, always confirm the project base branch name with the user
### Commit Message Format
- Required format: `:emoji: JIRAKEY-ticket-number: subject`
- Refer to `.commit_template` for emoji shortcodes
- Commit examples:
:bug: JIRAKEY-1234: Fix crash during login
:sparkles: JIRAKEY-2345: Add user profile image upload feature
:robot: JIRAKEY-3456: Add tests for login component
### PR Creation Rules
- Title format:
- Project base branch → develop: `:m: JIRAKEY-ticket-number: ticket-title`
- Parent branch → develop: `:m: JIRAKEY-parent-ticket-number: ticket-title`
- Regular feature branch → develop: `JIRAKEY-ticket-number: ticket-title`
- Other PRs: `JIRAKEY-ticket-number: ticket-title`
- Template usage:
- PRs with `:m:`: `.github/for_dev_template.md`
- PRs without `:m:`: `.github/pull_request_template.md`
That's it. No code changes whatsoever.
Actual Operation Flow
Impact: The Value Gained from "No Thinking"
Dramatic Reduction in Cognitive Load
- ✅ Creating branch names
- ✅ Checking the base branch
- ✅ Remembering commit message formats
- ✅ Copying and pasting PR titles from tickets
- ✅ Selecting PR templates
→ Everything is completed by "just providing the ticket number"
Ensuring Consistency
- Branch names, commit messages, and PR titles are 100% compliant with project rules
- The hassle of reviewers pointing out "this doesn't follow the naming convention" has disappeared
Reduced Onboarding Time
- New team members don’t need to worry about memorizing the branch naming rules."
- Instead of "look at CLAUDE.md", it's just "ask Claude Code"
Improved Development Speed
- The back-and-forth of "opening Jira and copying the ticket title" has disappeared
- Fewer decisions make it easier to maintain flow state
Future Outlook
Context Window Optimization Through Sub-agent Utilization
In the current implementation, there is an issue where using Atlassian MCP consumes the context window. As a solution, we are considering leveraging sub-agents for hierarchical task distribution.
What Are Sub-agents?
Claude Code sub-agents are AI assistants specialized for specific tasks, with independent context windows.
This enables:
- ✅ Not polluting the main agent's context
- ✅ Efficient processing of specialized tasks
- ✅ Separating bulk information retrieval and processing
Implementation Plan: Three Specialized Sub-agents
1. Jira Information Retrieval Sub-agent (jira-researcher)
**Role**:
- Retrieve ticket information via Atlassian MCP
- Extract only necessary information (ticket number, title, epic, status)
2. Branch Strategy Determination Sub-agent (branch-strategist)
**Role**:
- Generate branch names from ticket information
- Determine parent-child ticket relationships
- Decide base branch from branching patterns
3. PR Creation Sub-agent (pr-creator)
**Role**:
- Execute PR creation branching logic
- Select appropriate templates
Conclusion: AI Assistants Enable "No-Thinking Development"
"Just provide the ticket number, and branch creation, commits, and PR creation are all completed."
This was achieved with just CLAUDE.md — a "document that AI can read" — and MCP integration. Zero code changes. Zero impact on existing systems.
The key point is that we clearly identified what developers don't have to think about and delegated it to AI.
By evolving AI assistants from "code completion tools" to "partners for the entire development flow", we can realize a world where developers can focus solely on solving real problems.
関連記事 | Related Posts
Claude Code: Fully Automating from Jira Ticket to PR — Commit and PR Without Thinking
Lambda×Strands AgentsでGA4への問い合わせ画面を構築した話
まだClaude Codeを素のまま使ってますか?― Android開発者がSubAgents & Skillsを試してみた
開発チームに生成AIを導入して変化したこと 〜KINTO FACTORYでの活用事例〜
コードとブログの両方を効率的にレビューする仕組みについて:PR-Agent(Amazon Bedrock Claude3)の導入

2025年QAG入社メンバー奮闘記
We are hiring!
【UI/UXデザイナー】クリエイティブ室/東京・大阪・福岡
クリエイティブGについてKINTOやトヨタが抱えている課題やサービスの状況に応じて、色々なプロジェクトが発生しそれにクリエイティブ力で応えるグループです。所属しているメンバーはそれぞれ異なる技術や経験を持っているので、クリエイティブの側面からサービスの改善案を出し、周りを巻き込みながらプロジェクトを進めています。
【クラウドエンジニア】Cloud Infrastructure G/東京・大阪・福岡
KINTO Tech BlogWantedlyストーリーCloud InfrastructureグループについてAWSを主としたクラウドインフラの設計、構築、運用を主に担当しています。

