基于 SOC 职业分类
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/DataDog/datadog-agent --skill auto-jira命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
Monitor the current PR's GitLab pipeline to completion, then report success or investigate a failure. Use when the user asks to follow, babysit, watch, or wait on a PR/pipeline, or just after pushing to / creating a PR.
Classify a failed CI as either caused by an active incident, flakiness, or a true code regression. Use when a PR's pipeline is red and it isn't obvious whether the PR's own changes are at fault. Trigger phrases include: - "investigate this CI failure" - "please fix CI" - "why did this job fail" - "is there an incident affecting CI" - "should I retry this" This should also be invoked whenever the user asks you to investigate _or fix_ a failing CI, to ensure we don't spend hours trying to fix something broken upstream.
Write or extend Datadog Agent new-e2e tests, including fakeintake coverage and the GitLab wiring that runs them; derives scope from the current diff when no target is named. Not for running tests that already exist (run-e2e, run-windows-e2e), or for judging whether a behavior belongs in E2E at all (e2e-audit).
| 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)