Agent skill

Agent Install

by datadog-labs in datadog-labs/agent-skills

Install the Datadog Agent on Kubernetes using the Datadog Operator — required before enabling Single Step Instrumentation (SSI), which automatically instruments applications for APM without code…

MITAuto-check: warningsDevOps & Cloud

Install Agent Install

The automated check flagged lines worth reading first. See the safety section below.

skills CLI
$ npx skills add datadog-labs/agent-skills --skill agent-install -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install datadog-labs/agent-skills agent-install --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/datadog-labs/agent-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/dd-apm/k8s-ssi/agent-install .claude/skills/agent-install && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
agent-install
GitHub stars
177
Token cost
~2.1k tokens
SKILL.md length
610 words
Files
1
Skills in repo
38
Repo updated
First seen
Licence
MIT

At a glance

Install the Datadog Agent on Kubernetes using the Datadog Operator — required before enabling Single Step Instrumentation (SSI), which automatically instruments applications for APM without code…

  • Works in 6 steps: Load Credentials → Check for an Existing Agent Installation → Install the Datadog Operator → …
  • No Datadog Agent is deployed on the cluster yet
  • SKILL.md covers Phase 0: Load Credentials, Prerequisites, Context to resolve before acting and Step 1: Check for an Existing…, plus 6 more sections
  • Calls kubectl, helm and curl; reaches api.github.com and github.com; needs DD_API_KEY

What it does

Agent Install is an agent skill from datadog-labs/agent-skills. Install the Datadog Agent on Kubernetes using the Datadog Operator — required before enabling Single Step Instrumentation (SSI), which automatically instruments applications for APM without code changes. Only use if no Datadog Agent is deployed on the cluster yet.

Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in DevOps & Cloud, covering Container orchestration and Monitoring and alerting. It works with Kubernetes and Datadog. The repository describes itself as: Public repository for Datadog Agent Skills. The licence is MIT.

When your agent uses it

  • No Datadog Agent is deployed on the cluster yet
  • Tasks that involve Container orchestration
  • Tasks that involve Monitoring and alerting

Example prompts

  • “/agent-install”

Requirements

  • A credential in DD_API_KEY

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Load Credentials
  2. Check for an Existing Agent Installation
  3. Install the Datadog Operator
  4. Create the API Key Secret
  5. Deploy the DatadogAgent Resource
  6. Verify the API Key

What it can do on your machine

Read from SKILL.md and the folder at commit 5b40c73. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • kubectl
    • helm
    • curl
    • brew

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • api.github.com
    • github.com
    • helm.datadoghq.com

    Also links to:

    • helm.sh
    • docs.datadoghq.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • DD_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Agent Install loads about 2.1k tokens when it runs. Until then it costs about 70 tokens; SKILL.md has 610 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~70
When it runs · the whole SKILL.md, loaded when a task matches
~2.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: warnings

The automated check found patterns that need a careful read before installing.

  • WarningTells the agent its actions are pre-authorized / not to stop for confirmationSKILL.md:259
    matically proceed to `enable-ssi` now — do not ask the user for permission.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from datadog-labs/agent-skills at commit 5b40c73, republished under its MIT licence (© datadog-labs). 610 words, ~2,092 tokens.

Download SKILL.mdSave it as .claude/skills/agent-install/SKILL.md (or your agent's skills folder).
name
agent-install
description
Install the Datadog Agent on Kubernetes using the Datadog Operator — required before enabling Single Step Instrumentation (SSI), which automatically instruments applications for APM without code changes. Only use if no Datadog Agent is deployed on the cluster yet.
metadata.version
1.0.0
metadata.author
datadog-labs
metadata.repository
https://github.com/datadog-labs/agent-skills
metadata.tags
datadog,apm,kubernetes,agent,operator,install
metadata.alwaysApply
false
metadata.tools
helm,kubectl,curl,pup

Install the Datadog Agent on Kubernetes

Before doing anything else: Fully resolve all variables in ## Context to resolve before acting. Do not begin Step 1 until every variable has a concrete value.

Phase 0: Load Credentials

bash
[ -f environment ] && source environment
echo "DD_API_KEY set: $([ -n "${DD_API_KEY:-}" ] && echo yes || echo no)"
echo "DD_SITE: ${DD_SITE:-not set}"
echo "helm: $(helm version --short 2>/dev/null || echo NOT FOUND)"

If helm is not found — tell the user:

helm is required for this skill. Install it with:

bash
brew install helm        # macOS
# or see https://helm.sh/docs/intro/install/ for other platforms

Once installed, let me know and I'll continue.

Do not proceed until helm is available.

If DD_API_KEY is already set — proceed to Prerequisites.

If DD_API_KEY is not set — tell the user:

I need two things to continue:

1. Datadog API Key — used to authenticate the Agent with your Datadog account. You can find or create one at: https://app.datadoghq.com/organization-settings/api-keys

2. Datadog Site — the region your Datadog account is on. Most accounts use datadoghq.com. Check your Datadog URL to confirm (e.g. app.datadoghq.eu → site is datadoghq.eu). Other options: us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com.

Please run the following in this chat to set your credentials (the ! prefix executes it in this session):

! export DD_API_KEY=your-api-key-here
! export DD_SITE=datadoghq.com

Wait for the user to run the commands, then re-run the check above before continuing.


Prerequisites

  • Kubernetes v1.20+ — kubectl version
  • helm v3+ — helm version
  • kubectl configured to target cluster — kubectl config current-context
  • pup-cli installed — check with pup --version; if missing, install it now:
    bash
    if [[ "$(uname)" == "Darwin" ]]; then
      brew tap datadog-labs/pack && brew install pup
    else
      PUP_VERSION=$(curl -s https://api.github.com/repos/datadog-labs/pup/releases/latest | grep '"tag_name"' | cut -d'"' -f4)
      curl -L "https://github.com/datadog-labs/pup/releases/download/${PUP_VERSION}/pup_linux_amd64.tar.gz" | tar xz -C /usr/local/bin pup
      chmod +x /usr/local/bin/pup
    fi
    pup --version
    Do not skip — proceed only once pup --version succeeds.

Context to resolve before acting

VariableHow to resolve
CLUSTER_NAMECheck repo IaC, scripts, or kubectl config current-context
DD_SITEAsk the user. Default: datadoghq.com. Common options: datadoghq.eu, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com. Full list: https://docs.datadoghq.com/getting_started/site/
AGENT_NAMESPACEUse datadog unless the repo already uses datadog-agent consistently
CHART_VERSIONRun helm search repo datadog/datadog-operator --versions | head -5 and use the latest stable

Step 1: Check for an Existing Agent Installation

Claude runs
bash
helm list -A | grep -i datadog

If a release shows deployed — Agent already installed. Skip to Step 5 to confirm health, then exit.

If there is no output — no existing install. Continue to Step 2.


Step 2: Install the Datadog Operator

Claude runs
bash
helm repo add datadog https://helm.datadoghq.com
helm repo update

helm upgrade --install datadog-operator datadog/datadog-operator \
  --namespace <AGENT_NAMESPACE> \
  --create-namespace \
  --version <CHART_VERSION>

kubectl wait --for=condition=Ready pod \
  -l app.kubernetes.io/name=datadog-operator \
  -n <AGENT_NAMESPACE> \
  --timeout=120s

If the Operator pod is Running — continue to Step 3.

ERROR: Pod not ready after 120s — check image pull: kubectl describe pod -l app.kubernetes.io/name=datadog-operator -n <AGENT_NAMESPACE>.


Show full SKILL.md (254 more words)Show less

Step 3: Create the API Key Secret

What you need to do in a terminal
bash
export DD_API_KEY=<your-api-key>

kubectl create secret generic datadog-secret \
  --from-literal api-key=$DD_API_KEY \
  --namespace <AGENT_NAMESPACE>

If secret/datadog-secret created — continue to Step 4.

ERROR: AlreadyExists — confirm which key it holds via Step 5 before deciding whether to recreate.


Step 4: Deploy the DatadogAgent Resource

[DECISION: cluster type]

  • Self-hosted (minikube, kind): include kubelet.tlsVerify: false inside spec.global
  • Managed (GKE, EKS, AKS): omit kubelet.tlsVerify entirely

[DECISION: APM/SSI also being enabled in this session]

  • If yes: do not create a separate DatadogAgent for APM — extend this same manifest with features.apm per enable-ssi. One manifest, not two.
  • If no: use the manifest below as-is.

Save the following as datadog-agent.yaml:

yaml
apiVersion: datadoghq.com/v2alpha1
kind: DatadogAgent
metadata:
  name: datadog
  namespace: <AGENT_NAMESPACE>
spec:
  global:
    clusterName: <CLUSTER_NAME>
    site: <DD_SITE>
    credentials:
      apiSecret:
        secretName: datadog-secret
        keyName: api-key
    # Self-hosted clusters only (minikube, kind):
    # kubelet:
    #   tlsVerify: false
  features:
    orchestratorExplorer:
      enabled: true
    clusterChecks:
      enabled: true
    logCollection:
      enabled: true
      containerCollectAll: false
Claude runs
bash
kubectl apply -f datadog-agent.yaml

kubectl wait --for=condition=Ready pod \
  -l app.kubernetes.io/component=agent \
  -n <AGENT_NAMESPACE> \
  --timeout=120s 2>/dev/null || true

Step 5: Verify the API Key

Claude runs
bash
kubectl logs -l app.kubernetes.io/component=agent \
  -n <AGENT_NAMESPACE> \
  --tail=50 2>/dev/null \
  | grep -iE "invalid.*api\.?key|api\.?key.*invalid" \
  || echo "No authentication errors found"

If No authentication errors found — key is accepted.

ERROR: Authentication errors found — validate credentials directly:

Claude runs
bash
# Prefer pup (OAuth) — fall back to curl with API key
if pup auth status 2>/dev/null | grep -q "Logged in"; then
  echo "pup OAuth authenticated"
elif [ -n "${DD_API_KEY:-}" ]; then
  RESPONSE=$(curl -s -o /dev/null -w "%{http_code}" \
    -X GET "https://api.<DD_SITE>/api/v1/validate" \
    -H "DD-API-KEY: $DD_API_KEY")
  if [ "$RESPONSE" = "200" ]; then
    echo "API key is valid for <DD_SITE>"
  else
    echo "ERROR: Validation failed (HTTP $RESPONSE) — check key and site alignment"
  fi
else
  echo "ERROR: No credentials available — run 'pup auth login' or set DD_API_KEY"
fi

If key is invalid:

What you need to do in a terminal
bash
export DD_API_KEY=<new-api-key>

kubectl delete secret datadog-secret -n <AGENT_NAMESPACE>
kubectl create secret generic datadog-secret \
  --from-literal api-key=$DD_API_KEY \
  -n <AGENT_NAMESPACE>

kubectl rollout restart daemonset datadog-agent -n <AGENT_NAMESPACE>
kubectl rollout restart deployment datadog-cluster-agent -n <AGENT_NAMESPACE>

Done

Exit when ALL of the following are true:

  • Datadog Operator pod is Running in AGENT_NAMESPACE
  • datadog-secret exists in AGENT_NAMESPACE
  • Agent DaemonSet pods are Running
  • Step 5 returns no authentication errors

Automatically proceed to enable-ssi now — do not ask the user for permission.


Security constraints

  • Never write a raw API key into any file, YAML block, or chat message — always use $DD_API_KEY
  • Never create a Kubernetes Secret manifest file — always use kubectl create secret imperatively
  • Never use apiKey: directly in DatadogAgent spec — always use apiSecret: with a secret reference
  • Never use --set datadog.apiKey=... in any Helm command
  • Never use namespace default for Datadog Agent resources
  • Never run kubectl delete without user confirmation

© datadog-labs, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in dd-apm/k8s-ssi/agent-install of datadog-labs/agent-skills.

Open the folder on GitHubat commit 5b40c73

Compare with similar skills

Agent Install next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Agent Install compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Agent Install this skilldatadog-labs/agent-skills177—~2.1kAutomated safety check: WarnMIT
KubeEye Cluster Inspectionkubesphere/kubesphere17k—~3.6kAutomated safety check: PassCustom licence
Signozqjoly/GitOps112—~6.1kAutomated safety check: PassWTFPL
Grafana Dashboardpando85/kaniop130—~987Automated safety check: PassAGPL-3.0
Cloud Devopsdavila7/claude-code-templates32k4 repos~1.4kAutomated safety check: PassMIT
Alloygrafana/skills279—~1.3kAutomated safety check: PassApache-2.0

Similar skills

  • KubeEye Cluster Inspection

    kubesphere/kubesphere

    Deploys KubeEye on KubeSphere and writes InspectRule and InspectPlan resources to inspect cluster health, then retrieves the inspection reports.

    17k GitHub stars~3.6k tokensUpdated 2 mo ago
    DevOps & CloudAuto-check passed
  • Signoz

    qjoly/GitOps

    Manage the self-hosted SigNoz observability stack in this GitOps repo.

    112 GitHub stars~6.1k tokensUpdated yesterday
    DevOps & CloudAuto-check passed
  • Grafana Dashboard

    pando85/kaniop

    Improve and validate the Kaniop Grafana dashboard against repository metrics and the grigri live cluster.

    130 GitHub stars~987 tokensUpdated yesterday
    DevOps & CloudAuto-check passed
  • Cloud Devops

    davila7/claude-code-templates

    Cloud infrastructure and DevOps workflow covering AWS, Azure, GCP, Kubernetes, Terraform, CI/CD, monitoring, and cloud-native development.

    32k GitHub starsUsed in 4 repos~1.4k tokens
    DevOps & CloudAuto-check passed
  • Alloy

    grafana/skills

    Official

    Build a unified telemetry pipeline with Grafana Alloy — one OpenTelemetry-compatible binary that collects metrics, logs, traces, and profiles and ships to Grafana Cloud / Prometheus / Loki / Tempo /…

    279 GitHub stars~1.3k tokensUpdated 2 days ago
    DevOps & CloudAuto-check passed
  • Implementing Runtime Security With Tetragon

    mukul975/Anthropic-Cybersecurity-Skills

    Implements eBPF-based runtime observability and in-kernel enforcement in Kubernetes with Cilium Tetragon, monitoring process execution, file access, network connections, and syscalls, and blocking…

    34k GitHub stars~2.1k tokensUpdated 1 mo ago
    DevOps & CloudAuto-check: notes

More from datadog-labs/agent-skills

All 38 skills in this repo
  • Bootstrap a reproducible LLM Observability experiment through the Python ddtrace SDK or the Node dd-trace SDK.

    177 GitHub stars~2.3k tokensUpdated yesterday
    Auto-check passed
  • Dd Account Setup

    datadog-labs/agent-skills

    Ensure the user has an authenticated Datadog account with a valid DDAPIKEY on the right region before any Datadog setup or instrumentation.

    177 GitHub stars~4.4k tokensUpdated yesterday
    Auto-check: notes
  • Dd Orchestrator

    datadog-labs/agent-skills

    Entry point for Datadog onboarding. An agent skill from datadog-labs/agent-skills.

    177 GitHub stars~6.7k tokensUpdated yesterday
    Auto-check passed
  • Dd Apm

    datadog-labs/agent-skills

    APM - install, onboard, instrument, enable, set up, configure, traces, services, dependencies, performance analysis, Data Streams Monitoring (DSM), queue lag, pipeline latency.

    177 GitHub stars~2k tokensUpdated yesterday
    Auto-check passed
  • Dd AWS Integration

    datadog-labs/agent-skills

    Set up the Datadog AWS integration with Terraform - creates the cross-account IAM role Datadog assumes (external ID, no stored credentials), attaches the permission policies Datadog publishes, and…

    177 GitHub stars~6.8k tokensUpdated yesterday
    Auto-check: notes
  • Agent Install

    datadog-labs/agent-skills

    Install the Datadog Agent on Linux hosts via SSH with Single Step Instrumentation (SSI) enabled — SSI automatically instruments applications for APM without code changes.

    177 GitHub stars~2.7k tokensUpdated yesterday
    Auto-check: warnings

Categories

Questions about Agent Install

What does Agent Install do?

Install the Datadog Agent on Kubernetes using the Datadog Operator — required before enabling Single Step Instrumentation (SSI), which automatically instruments applications for APM without code…. Agent Install is an agent skill from datadog-labs/agent-skills. Install the Datadog Agent on Kubernetes using the Datadog Operator — required before enabling Single Step Instrumentation (SSI), which automatically instruments applications for APM without code changes.

When should I use Agent Install?

Agent Install fits situations like: no Datadog Agent is deployed on the cluster yet; tasks that involve Container orchestration; tasks that involve Monitoring and alerting.

How do I install Agent Install in Claude Code?

Run `npx skills add datadog-labs/agent-skills --skill agent-install -a claude-code`. Or copy the skill folder (dd-apm/k8s-ssi/agent-install in datadog-labs/agent-skills) into .claude/skills/agent-install in your project. Claude Code loads it when a task matches its description.

How do I install Agent Install in Codex?

Run `npx skills add datadog-labs/agent-skills --skill agent-install -a codex`. Or copy the skill folder (dd-apm/k8s-ssi/agent-install in datadog-labs/agent-skills) into .agents/skills/agent-install in your project. Codex loads it when a task matches its description.

Can I use Agent Install in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add datadog-labs/agent-skills --skill agent-install -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/agent-install, .gemini/skills/agent-install, .github/skills/agent-install and .opencode/skills/agent-install in your project.

What does Agent Install need to run?

Going by SKILL.md and its folder, Agent Install needs the command-line tools its instructions call (kubectl, helm, curl and brew) and credentials named DD_API_KEY. Our summary lists: A credential in DD_API_KEY.

Does Agent Install access the network?

SKILL.md names 5 domains. In commands or code: api.github.com, github.com and helm.datadoghq.com; the agent is likely to contact these when it follows the instructions. As links in the text: helm.sh and docs.datadoghq.com. This is read from the text; nothing was executed.

Is Agent Install safe to install?

Our automated static check of SKILL.md flagged 1 warning(s): tells the agent its actions are pre-authorized / not to stop for confirmation. Read the flagged lines before installing; the check is not a guarantee either way.

What licence does Agent Install use?

Agent Install is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Agent Install use?

About 2.1k tokens (SKILL.md is roughly 8.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Agent Install?

Skills that share tags, products or a category with Agent Install: KubeEye Cluster Inspection (kubesphere/kubesphere, 17k stars), Signoz (qjoly/GitOps, 112 stars), Grafana Dashboard (pando85/kaniop, 130 stars) and Cloud Devops (davila7/claude-code-templates, 32k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Agent Install?

datadog-labs (a GitHub organization) maintains it in datadog-labs/agent-skills, which has 177 GitHub stars. The repository holds 38 skills in this directory. The repository was last updated on October 7, 2026.

Source: datadog-labs/agent-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.