ワンクリックで
auto-jira
Autonomously work on Jira backlog tickets, creating PRs and shepherding them to merge
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Autonomously work on Jira backlog tickets, creating PRs and shepherding them to merge
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Generate the Agent Supply Chain newsletter by researching team activity on GitHub and Confluence, then creating a Confluence draft and Gmail draft
Give your AI agents something more useful than a prompt. Velocity through clarity.
Extract an Allium specification from an existing codebase. Use when the user has existing code and wants to distil behaviour into a spec, reverse engineer a specification from implementation, generate a spec from code, turn implementation into a behavioural specification, or document what a codebase does in Allium terms.
Run a structured discovery session to build an Allium specification through conversation. Use when the user wants to create a new spec from scratch, elicit or gather requirements, capture domain behaviour, specify a feature or system, define what a system should do, or is describing functionality and needs help shaping it into a specification.
Generate tests from Allium specifications. Use when the user wants to propagate tests, generate test files from a spec, write tests for a specification, create property-based tests, produce state machine tests, check test coverage against spec obligations, or understand what tests a specification requires.
Create a new Fx component using the modern def/fx/impl pattern (NOT legacy)
| name | auto-jira |
| description | Autonomously work on Jira backlog tickets, creating PRs and shepherding them to merge |
| argument-hint | <BOARD-KEY> [--max-cards N] [--before-date YYYY-MM-DD] [--exclude word1,word2] |
| model | sonnet |
This skill autonomously identifies Jira backlog tickets for a given board that can be worked on without human intervention, implements the code change, and creates draft PRs. Once a draft PR is open, the skill moves on to the next ticket.
Arguments: $ARGUMENTS
For every write action:
Write actions include: creating PRs, posting Jira comments, pushing commits, transitioning ticket status, assigning tickets.
Track all work in AUTO_JIRA.md (gitignored, local only):
NEVER commit this file. Update it as you work, removing notes for completed work and keeping focus on in-progress state and next steps.
Per-ticket loop (repeat until --max-cards reached or no eligible tickets):
1. SELECT TICKET -> Find eligible ticket from board backlog
2. CLAIM TICKET -> Assign to user + add to current sprint
3. IMPLEMENT -> Code change
4. VERIFY -> Run dda inv test + dda inv linter.go on affected packages (fix before continuing)
5. COMMIT & PUSH -> Single focused commit, then git push
6. CREATE PR (DRAFT) -> Open draft PR against main
7. FIX PR TITLE -> Rename to [auto-jira][<KEY>] <description> using gh pr edit
8. LINK & COMMENT -> Post PR link on Jira ticket
| When you need to... | Read this |
|---|---|
| Select or claim a Jira ticket | ticket-workflow.md |
| Create a PR | pr-workflow.md |
| Evaluate a ticket that links to CI logs | ci-validation.md |
| Debug common issues | troubleshooting.md |
Do NOT load all docs at once. Only read what is relevant to the current task.
Parse $ARGUMENTS:
ACTP, AGENTCFG, CONTINT3)If BOARD is missing, stop and ask the user.
Initialize AUTO_JIRA.md:
# Auto-JIRA Run — <BOARD> — <TODAY>
## Configuration
- Board: <BOARD>
- Max cards: <N>
- Before date: <BEFORE_DATE>
- Exclude: <EXCLUDED_WORDS or "none">
## In Progress
_none_
## Skipped
_none_
Use the Atlassian MCP tools as the primary method:
mcp__atlassian__searchJiraIssuesUsingJql — query tickets
mcp__atlassian__getJiraIssue — fetch ticket details
mcp__atlassian__editJiraIssue — assign, update fields
mcp__atlassian__transitionJiraIssue — change status
mcp__atlassian__addCommentToJiraIssue — add comments
mcp__atlassian__getTransitionsForJiraIssue — list available transitions
mcp__atlassian__atlassianUserInfo — get your account ID
All calls use cloudId: datadoghq.atlassian.net.
If MCP authentication fails for any reason, STOP. Mark the ticket HOLD and report the failure.
Discover the repository root from the current working tree:
git rev-parse --show-toplevel
Always work from this directory. If this command fails (not in a git repo), stop and inform the user.
Local checks catch problems before CI. Do not skip or work around them:
--no-verifydda inv install-toolsDO work on tickets that:
jira_statuses for the team in .ddqa/config.toml (typically To Do)<BEFORE_DATE>do-not-autosolve is NOT setDO NOT work on tickets that:
When uncertain → skip. The goal is reliable autonomous completion, not ambitious attempts that get stuck.
Check eligibility quickly — do a codebase search to confirm the issue is not already fixed before starting any implementation work.
Every interaction must be clearly attributed as coming from Auto-JIRA.
| Platform | Format |
|---|---|
| Jira comment | End with: — Auto-JIRA (https://github.com/DataDog/datadog-agent/blob/main/.agents/skills/auto-jira/SKILL.md) |
| GitHub PR body | Include: _Created by [Auto-JIRA](https://github.com/DataDog/datadog-agent/blob/main/.agents/skills/auto-jira/SKILL.md)._ |
| GitHub comment | End with: _— [Auto-JIRA](https://github.com/DataDog/datadog-agent/blob/main/.agents/skills/auto-jira/SKILL.md)_ |
| Commit | Co-author line: Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
When something requires human intervention:
AUTO_JIRA.md with the blockerTriggers:
Print TASK COMPLETED only when ALL are true:
--max-cards limit has been reachedPrint TASK FAILED only when:
After completing one ticket, always check for more work before stopping.
Every write action needs PRE-CHECK and POST-CHECK.
PRE-ACTION:
Agent(
prompt="""You are a Critic agent.
MODE: PRE-ACTION
PROPOSED ACTION:
[What you are about to do]
PROPOSED CONTENT:
[The exact message / comment / command]
Verify all factual claims and links. Respond APPROVED or REJECTED with evidence.""",
subagent_type="general-purpose"
)
POST-ACTION:
Agent(
prompt="""You are a Critic agent.
MODE: POST-ACTION
ACTION TAKEN:
[What was supposed to happen]
EXPECTED RESULT:
[What should be visible now]
Verify the action actually succeeded. Respond APPROVED or REJECTED with evidence.""",
subagent_type="general-purpose"
)
If Critic rejects: fix the issues, try again, get a clean APPROVED before continuing.
--no-verify) or force-push to main.git add -A or git add . — stage specific files by name.AUTO_JIRA.md — local tracking only..agents/skills/auto-jira/ — the auto-jira skill must not edit itself. If a ticket would require changes to these files, skip it.| State | When to use |
|---|---|
| In Progress | Actively working on implementation |
| HOLD | Blocked, needs human intervention |
Branch naming: auto-jira/<KEY>-brief-description (lowercase, hyphens only)