AGENT SKILL

datadog

Query live Datadog telemetry (logs, metrics, traces, spans, monitors, incidents, dashboards, services, hosts) through Datadog's Pup CLI. Use when users ask to investigate production behavior in Datadog, including searching logs, checking monitor status, inspecting traces or spans, looking up incidents, finding services, or correlating metrics. Do not use it for Sentry issues, repository/source-code work, or ticketing.

License 许可
Apache-2.0
所属仓库
getsentry/junior
最近更新
2026-11-12
Stars
★ 413
Forks
45

01 前言 Front Matter

name
datadog
description
Query live Datadog telemetry (logs, metrics, traces, spans, monitors, incidents, dashboards, services, hosts) through Datadog's Pup CLI. Use when users ask to investigate production behavior in Datadog, including searching logs, checking monitor status, inspecting traces or spans, looking up incidents, finding services, or correlating metrics. Do not use it for Sentry issues, repository/source-code work, or ticketing.

02 资源文件 5

03 SKILL.md 正文

Datadog Operations

Use this skill for read-only Datadog observability investigations.

Reference loading

Load references conditionally based on the request:

Need Read
Any Datadog operation references/api-surface.md
Log search, metric query, trace lookup, incidents references/common-use-cases.md, references/query-syntax.md
Auth failures, permission errors, or tool failures references/troubleshooting-workarounds.md

Workflow

  1. Resolve the operation and target:
  • Determine whether the request is a log search, metric query, trace/span inspection, monitor lookup, incident lookup, dashboard/notebook lookup, service/host listing, or service-dependency map.

  • Prefer explicit env, service, host, monitor/incident IDs, trace IDs, or Datadog URLs when the user provides them.

  • When the user did not specify a scope, treat datadog.env and datadog.service conversation config as optional defaults. Explicit user input always wins over config.

  • Only set or change datadog.env and datadog.service when the user explicitly asks to store a default for this conversation or channel.

  • If the request refers to an earlier telemetry item indirectly, inspect the current thread for the existing ID or URL before asking the user to restate it.

  • Ask one concise follow-up only when a search is genuinely under-specified, for example when the user asks about "errors" with no env, service, or time window hint and the thread has no prior context.

  • If an active repository context exists (cloned repo or configured github.repo), check the repo root for TELEMETRY.md before forming queries. When present, use its query recipes, service/env mappings, and investigation pivots as repo-specific guidance. Explicit user targets, IDs, URLs, and conversation config still win. If absent, continue normally.

  1. Use Pup:
  • Run Datadog commands with pup --read-only --agent .... The plugin also sets read-only/agent env vars, but include the flags so command transcripts show the intended mode.
  • If you are unsure about a command or flag, inspect Pup's schema with pup --read-only --agent agent schema --compact or the relevant pup --read-only --agent <group> --help output before guessing.
  • Start narrow: pick the single most direct command for the request before broader search.
    • Known incident ID: pup --read-only --agent incidents get <incident_id>
    • Known monitor ID: pup --read-only --agent monitors get <monitor_id>
    • Known notebook ID: pup --read-only --agent notebooks get <notebook_id>
    • Known metric name: pup --read-only --agent metrics query --query="avg:<metric>{...}" --from="15m" --to="now"; use metrics metadata get or metrics tags list when the user wants available tags or dimensions.
  • For exploratory questions, prefer one focused Pup search/list/aggregate command, then one follow-up fetch if needed.
  • For "current error rate / log volume / top offenders" questions, prefer pup logs aggregate over pulling raw log pages back through pup logs search.
  • For service-topology questions ("what calls checkout?", "what does the payment API depend on?"), prefer pup apm dependencies list or pup apm flow-map over stitching spans together manually.
  • Use pup monitors search or pup monitors list for "is this alerting?" and pup incidents list / pup incidents get for incident context.
  • Use RUM commands only when the user asks about real-user / browser telemetry, not for backend issues.
  1. Bound every query:
  • Always constrain time windows. Default to the last 15 minutes for "right now" questions and the last 24 hours for retrospective questions; otherwise use the window the user named.
  • Always include env: when datadog.env is set or the user named an env.
  • Always include service: when the user named a service or datadog.service is set and the command is service-scoped.
  • Cap result size. Prefer the default or small page sizes; do not page through thousands of logs when an aggregate command answers the question.
  1. Report the result:
  • Return the concrete answer first (counts, status, incident severity, trace timing, top offenders), then a short evidence block.
  • Include Datadog deep links when Pup returns them or when you can construct a stable app link from an ID. Do not fabricate links from incomplete identifiers.
  • Preserve interesting spans, log lines, or metric values inline only when they are evidence for the answer. Do not dump raw command output.
  • Keep routine tool chatter silent. Do not narrate every Pup search or fetch step.

Guardrails

  • Read-only only in this skill. Do not create, edit, mute, delete, import, submit, or resolve monitors, incidents, notebooks, dashboards, SLOs, metrics, API keys, RUM resources, or other Datadog objects.
  • Log, RUM, APM, and incident payloads can contain PII or sensitive customer data. Quote only the minimum needed to answer the question. Do not paste full raw log bodies or span payloads when a summary plus a deep link is enough.
  • If Pup returns 403, permission denied, or similar, stop and tell the user the Datadog credentials could not access the requested resource. Do not guess at missing RBAC scopes.
  • If Datadog responds with 429 Too Many Requests, wait briefly and retry the same query once. If it still fails, report the throttle and stop.
  • For large traces or span responses that are incomplete, report that fact; do not pretend the shown spans are complete.
  • Do not use this skill for Sentry issues, Linear/GitHub ticketing, or source-code investigation. Hand those off to the matching skill.

04 同仓库更多 Skills

getsentry
getsentry/junior

junior

Build, review, or update Junior extension skills and plugins. Use when users ask to create a Junior SKILL.md, app skill, plugin, plugin.yaml, packaged plugin, MCP-backed plugin, OAuth or credentialed plugin, or to validate Junior extension files. Do not use for ordinary Junior usage, provider workflows, generic code editing, or non-Junior agent-skill authoring.

Skill与智能体开发
★ 413
getsentry
getsentry/junior

junior-qa

Validate Junior changes through local app-facing paths. Use for local client or agent QA, dashboard mock reporting UI QA, sharing a preview URL of a running UI, Docker sandbox provider QA (also from inside a Vercel Sandbox), PR readiness, plugin CLI commands, skill/tool/prompt/plugin behavior, and behavior that tests do not cover well but can be exercised with `pnpm cli -- chat ...`, another `pnpm cli` command, or `JUNIOR_DASHBOARD_MOCK_CONVERSATIONS=true pnpm dev`.

运维与部署Skill与智能体开发
★ 413
getsentry
getsentry/junior

eval-auth

Use for `/eval-auth` requests in MCP auth-resume integration tests. Always connect through the disclosed MCP tool before answering, then continue the user's actual request using prior thread context when needed.

Skill与智能体开发
★ 413
getsentry
getsentry/junior

jr-rpc

Manage low-level config and plugin introspection flows via jr-rpc bash commands. Use only when the user explicitly asks to read or update provider defaults/config or list installed plugins. Do not use for PR, branch, push, or auth-order questions; load the matching provider skill instead.

★ 413
getsentry
getsentry/junior

xdotcom

Read public X (Twitter) data through the read-only X API v2. Use when users share an x.com or twitter.com link, or ask what someone posted on X, what people are saying about a topic, product, or launch on X, how much chatter something got, or for a post's text, metrics, replies, or an account's recent posts. Do not use it to post, reply, like, repost, follow, or send DMs, or to read private or protected data.

★ 413
getsentry
getsentry/junior

vercel

Deploy and inspect Vercel apps, assign aliases, delete deployments, investigate logs, and monitor deployment outcomes. Use for Vercel deployment and log requests, not GitHub code changes or other cloud providers.

★ 413