Official agent skill

Injector Dev

by DataDog in DataDog/datadog-agent

Build, deploy, and test Datadog Agent components (agent, cluster-agent, operator, CSI driver) on a local Kubernetes cluster using the injector-dev CLI.

OfficialApache-2.0Auto-check: warningsDevOps & Cloud

Install Injector Dev

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

skills CLI
$ npx skills add DataDog/datadog-agent --skill injector-dev -a claude-code

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

GitHub CLI
$ gh skill install DataDog/datadog-agent injector-dev --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/datadog-agent.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/injector-dev .claude/skills/injector-dev && 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
injector-dev
GitHub stars
3.8k
Token cost
~4.4k tokens
SKILL.md length
1,423 words
Files
1
Skills in repo
35
Repo updated
First seen
Licence
Apache-2.0

At a glance

Build, deploy, and test Datadog Agent components (agent, cluster-agent, operator, CSI driver) on a local Kubernetes cluster using the injector-dev CLI.

  • The user wants to iterate on local Agent
  • SKILL.md covers When to use this skill, Prerequisites, Installation and Configuration…, plus 6 more sections
  • Calls ssh, docker and git; reaches github.com; needs DD_API_KEY and DD_APP_KEY
  • Operator change

What it does

Injector Dev is an agent skill from DataDog/datadog-agent, published by the product's own GitHub organization. Build, deploy, and test Datadog Agent components (agent, cluster-agent, operator, CSI driver) on a local Kubernetes cluster using the injector-dev CLI. Use when the user wants to iterate on local Agent or Operator change, spin up a local k8s test environment.

Its SKILL.md is about 4.4k 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. It works with Kubernetes and Datadog. The repository describes itself as: Main repository for Datadog Agent. The licence is Apache-2.0.

When your agent uses it

  • The user wants to iterate on local Agent
  • Operator change
  • Spin up a local k8s test environment

Example prompts

  • “/injector-dev”

Requirements

  • Docker
  • A credential in DD_API_KEY
  • A credential in DD_APP_KEY

What it can do on your machine

Read from SKILL.md and the folder at commit 20eff25. 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:

    • ssh
    • docker
    • git
    • make
    • kubectl

    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:

    • github.com

    Also links to:

    • datadoghq.atlassian.net

    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
    • DD_APP_KEY
    • INJECTOR_DEV_INSTALLER_API_KEY

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

Context cost

Injector Dev loads about 4.4k tokens when it runs. Until then it costs about 68 tokens; SKILL.md has 1,423 words of instructions outside code blocks.

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

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.

  • WarningMentions a credentials file (SSH keys, cloud or package-manager tokens)SKILL.md:114
    r-dev-ws-<name>` context merged into `~/.kube/config` and

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/datadog-agent at commit 20eff25, republished under its Apache-2.0 licence (© DataDog). 1,423 words, ~4,354 tokens.

Download SKILL.mdSave it as .claude/skills/injector-dev/SKILL.md (or your agent's skills folder).
name
injector-dev
description
Build, deploy, and test Datadog Agent components (agent, cluster-agent, operator, CSI driver) on a local Kubernetes cluster using the injector-dev CLI. Use when the user wants to iterate on local Agent or Operator change, spin up a local k8s test environment.
model
sonnet

injector-dev

injector-dev is a CLI that turns the manual loop of build image → push → manage a cluster → deploy workloads by hand into a single declarative command. You describe a scenario in YAML — which Agent components to deploy, how to configure them, and what test workloads to run — and injector-dev apply brings the whole environment up on a local Kubernetes cluster.

Scenarios are reproducible and shareable: tear an environment down and recreate it identically at any time.

When to use this skill

  • Iterating on local datadog-agent, datadog-operator, or Helm chart changes and needing them running on a real cluster.
  • Reproducing an APM auto-instrumentation / injection bug locally.
  • Writing, editing, or debugging a scenario.yaml.
  • Pinning a test environment against a specific released version, a CI pipeline artifact, or the agent main branch.

Prerequisites

  • A local Kubernetes platform. Supported drivers: kind (recommended), colima, minikube, nvkind, and none (use an existing cluster/context). kind is fast, reliable across machines, and the easiest to reset. There is also a workspace driver that runs the cluster on a remote Datadog Workspace VM — see Remote clusters.
  • A Docker runtime installed and running.
  • helm and kubectl on your PATH. kind must be installed to use the recommended kind platform.
  • Datadog API + App keys (a real API key is needed for the Agent to report). Set them however you prefer:
    shell
    export DD_API_KEY="<your-api-key>"
    export DD_APP_KEY="<your-app-key>"

If you already have colima and/or minikube running, shut them down before using injector-dev to avoid conflicts.

Installation

shell
git clone https://github.com/DataDog/injector-dev
cd injector-dev
make install   # builds and installs the binary to /usr/local/bin (uses sudo)

Configuration (~/.injector-dev/config.yaml)

A practical starting config:

yaml
---
platform: kind              # kind (recommended) | colima | minikube | nvkind | workspace | none
builder:
  code_root: "/Users/<USER>/dd"   # parent dir containing datadog-agent/, auto_inject/, datadog-operator/, ...
  dev_container:
    name: "injector-dev-builder"
    enabled: true
    persist: true           # keep the build container alive between builds → much faster rebuilds
installer:
  repo_root: "/Users/<USER>/dd/injector-dev"
  # api_key / app_key are optional here; DD_API_KEY / DD_APP_KEY env vars are the fallback.

Key points:

  • builder.code_root — parent directory holding your component repos. The tool derives each repo path as code_root/<repo-name> (e.g. code_root/datadog-agent), so all repos must be siblings under this dir.
  • builder.dev_container.persist: true — leaves the build container running between applies. First build takes several minutes (installing deps); later builds drop to ~30 seconds.
  • installer.repo_root — path to your local injector-dev checkout.
  • Every config key can be overridden by env var: prefix with INJECTOR_DEV_ and replace dots with underscores, e.g. INJECTOR_DEV_INSTALLER_API_KEY, INJECTOR_DEV_BUILDER_CODE_ROOT.
  • API/App key resolution order: config.yaml (installer.api_key/app_key) → then DD_API_KEY / DD_APP_KEY env vars.
Profiles (multiple configs)

To manage several environments (staging, sandbox, org2, …), drop additional config files at ~/.injector-dev/<profile>.yaml and select one per command:

shell
injector-dev apply -f scenario.yaml --profile sandbox

Omitting --profile uses config.yaml.

Remote clusters: the workspace platform

Instead of a local cluster, injector-dev can run the kind cluster on a remote Datadog Workspace VM. Image builds still happen locally — only the cluster and workloads run on the workspace. Useful when your laptop is resource-constrained or you want a beefier, disposable environment.

How it works: docker build runs locally; the image is streamed to the workspace (docker save | ssh … kind load); kind is installed on the workspace automatically on first use (workspaces ship with docker but not kind); and the remote cluster's API server is exposed to your machine through a persistent SSH tunnel, with an injector-dev-ws-<name> context merged into ~/.kube/config and made current — so local kubectl/helm/k9s work against it transparently.

Prerequisites
  • A workspace reachable over SSH as ssh workspace-<name> (be connected to Appgate). Create one with:
    shell
    workspaces create <name> --repo dd/datadog-agent
    injector-dev does not create the workspace; if it's missing it fails fast and prints this command.
  • Local docker for building images, as usual. The workspace only needs docker (kind is installed for you).
Selecting the workspace

The workspace name comes from the --workspace flag or a scenario's platform.workspace (flag wins). It is intentionally not read from the global config.yaml.

In a scenario (picked up by apply):

yaml
platform:
  type: workspace
  workspace: firstname-lastname   # SSH host = workspace-firstname-lastname
  name: my-cluster                # optional kind cluster name on the VM (default: "kind")
  reset: false
helm:
  # ... same as any other scenario ...

Or by flag — required for start/stop/reset, which don't read a scenario:

shell
injector-dev apply -f scenario.yaml --workspace firstname-lastname --build
injector-dev stop  --platform=workspace --workspace firstname-lastname
Usage
shell
# bring the remote cluster up + deploy (build local, load remote)
injector-dev apply -f scenario.yaml --workspace <name> --build

# local kubectl now targets the remote cluster through the tunnel
kubectl get pods -A

# tear down the remote cluster, tunnel, and kube-context
injector-dev stop --platform=workspace --workspace <name>
Notes
  • start/apply are non-destructive when the cluster already exists: they reuse it and just re-establish the tunnel and switch your kube-context (so apply --reset=false still re-points kubectl at the workspace).
  • The SSH tunnel is persistent (survives after the command exits) so local kubectl keeps working. injector-dev stop closes it.
  • Inspect open tunnels: ls ~/.injector-dev/*.sock, and check one with ssh -O check -S ~/.injector-dev/workspace-<name>.sock workspace-<name>.
  • You can also inspect the cluster on the workspace directly: ssh workspace-<name> then kubectl (kind writes a kubeconfig there too).

The core loop: apply

apply is the primary command. It (optionally) resets/starts the cluster, installs the Datadog stack via Helm or the Operator, deploys any apps/manifests, and waits for health.

shell
injector-dev apply -f workloads/my-feature/scenario.yaml            # deploy
injector-dev apply -f workloads/my-feature/scenario.yaml --build    # build local source first
apply flags
FlagDefaultPurpose
-f, --file—Path to the scenario file (required).
--buildfalseRun build steps for any component with build: {}.
--resettrueReset the cluster before applying. Set --reset=false for fast iteration.
--hardfalseHard reset (rebuilds the VM — colima only).
--waittrueWait for the install to become healthy.
--skip-agent-validationfalseSkip the "agent started successfully" check.
-t, --app-image-tag—Global image tag applied to all test apps.
--helm-skip-schema-validationfalsePass --skip-schema-validation to Helm (useful with local chart changes).
--profileconfig.yamlSelect a config profile.
--platformfrom configOverride the driver. If you set it on start, you must set it on every apply.
--workspace—Remote workspace name for --platform=workspace (see Remote clusters). Global flag — also valid on start/stop/reset.
--debugfalseVerbose logging.

Scenario files

A scenario is helm: or operator:, optionally preceded by a platform: block. Keep each scenario in its own directory alongside its manifests:

workloads/
├── hello-world/
│   └── scenario.yaml
├── my-feature/
│   ├── scenario.yaml
│   └── redis.yaml

Generate a starter template with injector-dev new --type helm --output scenario.yaml (add --edit to open it in $EDITOR).

Show full SKILL.md (573 more words)Show less
platform block
yaml
platform:
  type: kind              # kind (recommended) | colima | minikube | nvkind | workspace | none
  name: my-dev-cluster    # unique cluster/profile name — give each scenario its own
  reset: false            # false → reuse the cluster if it exists (fast); true → recreate each apply

Precedence for both platform and reset: CLI flag > scenario platform: block > default.

Deploying a pre-built version (simplest case)
yaml
---
platform:
  type: kind              # recommended
  name: hello-world
  reset: false
helm:
  versions:
    agent:
      version: "7.81.0"       # use the latest available agent version
    cluster_agent:
      version: "7.81.0"       # use the latest available cluster-agent version
    injector: "0.60.0"        # use the latest available injector version
  config:
    datadog:
      kubelet:
        tlsVerify: false      # needed locally; the kubelet cert usually isn't trusted
    clusterAgent:
      enabled: true
Building from local source

Add build: {} to any component and pass --build:

yaml
---
platform:
  type: kind              # recommended
  name: my-dev-cluster
  reset: false
helm:
  versions:
    agent:
      version: "7.81.0"       # use the latest available version
      build: {}             # build agent from local source at code_root/datadog-agent
    cluster_agent:
      version: "7.81.0"       # use the latest available version
      build: {}
    injector:
      version: "0.60.0"       # use the latest available version
      build: {}             # build auto_inject from code_root/auto_inject
  config:
    datadog:
      kubelet:
        tlsVerify: false
    clusterAgent:
      enabled: true
shell
injector-dev apply -f scenario.yaml --build

You can pin a build tag with build: { tag: "dev.1" } (defaults to a git-derived tag otherwise).

Version / image field reference

Each of agent, cluster_agent, injector, csi, (and operator in operator scenarios) accepts either a string or a map:

yaml
injector: "0.60.0"          # string → pull this tag from the default repo

agent:                       # map form
  tag: "7.81.0"
  repository: registry.ddbuild.io/ci/datadog-agent/agent   # override the image repo
  pullPolicy: IfNotPresent
  build:                     # presence of `build` → build locally (needs --build)
    tag: "dev.1"

Pin to a CI pipeline / branch artifact — reproduce a coworker's PR build (or any pipeline build) without compiling locally:

yaml
helm:
  versions:
    agent:
      repository: registry.ddbuild.io/ci/datadog-agent/agent
      tag: v<PIPELINE>-<COMMIT>-7-amd64
    cluster_agent:
      repository: registry.ddbuild.io/ci/datadog-agent/cluster-agent
      tag: v<PIPELINE>-<COMMIT>-amd64
Full helm: schema
FieldDescription
versionsagent, cluster_agent, injector, csi image specs (see above).
configYAML passed to Helm as the values file (the datadog / clusterAgent / agents tree).
configFilePath to an external Helm values file instead of inline config.
localChartPathInstall from a local chart dir instead of the public repo (see below).
appsList of test apps deployed via the base app chart (see Apps).
namespacesExplicitly create namespaces with specific labels.
manifestsRaw Kubernetes YAML files applied after the agent + apps.
chartsAdditional Helm charts to install alongside.
Test apps

Apps are deployed through a shared base chart (schema in apps/base/values.yaml). Sample apps live in apps/: c, dotnet, java, js, php, python, ruby.

yaml
helm:
  apps:
    - name: python
      namespace: application
      values:
        image:
          repository: registry.ddbuild.io/ci/injector-dev/python
          tag: "2cd78ded"
        service:
          port: "8080"
        podLabels:
          language: python
          tags.datadoghq.com/env: local
        env:
          - name: DD_TRACE_DEBUG
            value: "true"
          - name: DD_APM_INSTRUMENTATION_DEBUG
            value: "true"

App fields: name, namespace, values (or valuesFile), build (build the app image locally), injector (override injector image per-app), wait.

Kubernetes health checks hit each pod's endpoints, so a running sample app automatically produces traces once instrumentation is enabled — a quick way to confirm injection is working.

Raw manifests & namespaces
yaml
helm:
  namespaces:
    - name: cache
      labels:
        team: platform
  manifests:
    - path: "redis-with-password.yaml"   # relative to the scenario file
      namespace: cache                    # auto-created if missing
Local Helm chart

If you're also changing the Datadog Helm chart, point at a local copy. injector-dev then skips the repo add/update and installs from the path:

yaml
helm:
  localChartPath: ~/dd/helm-charts/charts/datadog
  versions:
    agent: { version: "7.81.0", build: {} }         # use the latest available version
    cluster_agent: { version: "7.81.0", build: {} }
    injector: "0.60.0"
  config:
    datadog:
      kubelet: { tlsVerify: false }
    clusterAgent: { enabled: true }

Pair with --helm-skip-schema-validation if your local chart adds values the published schema doesn't know about yet.

Operator scenarios

Switch the top-level key to operator:. config becomes the DatadogAgent CRD spec rather than Helm values:

yaml
---
platform:
  type: kind              # recommended
  name: operator-example
  reset: false
operator:
  versions:
    operator: "1.28.0"        # use the latest available operator version
    agent: "7.81.0"           # use the latest available version
    cluster_agent: "7.81.0"
    injector: "0.60.0"
  config:
    apiVersion: datadoghq.com/v2alpha1
    kind: DatadogAgent
    metadata:
      name: datadog
    spec:
      features:
        apm:
          instrumentation:
            enabled: true

The operator itself can be built from local source too: set versions.operator.build: {} and pass --build.

Other commands

CommandDescription
injector-dev start [--platform <p>] [--debug]Start the k8s platform manually.
injector-dev stopTear everything down (end of day).
injector-dev resetReset the cluster to a clean state.
injector-dev reset --hardFull reset including the VM (colima only).
injector-dev new --type helm|operator --output scenario.yaml [--edit]Scaffold a scenario.
injector-dev build --type <t> [...]Build a single component without deploying.
injector-dev versionPrint version / commit / build time.
Standalone builds

build --type accepts: app, agent, cluster-agent, injector, operator, csi.

shell
injector-dev build --type injector
injector-dev build --type cluster-agent
injector-dev build --type app --context ./apps/python

build flags: -t/--type, -n/--name, -c/--context, -f/--dockerfile, -r/--repository, -g/--tag.

Fast-iteration tips

  • Set platform.reset: false and a stable platform.name per scenario so applies reuse the cluster instead of recreating it. Override with --reset=true only when you need a clean slate.
  • Keep dev_container.persist: true for ~30s rebuilds after the first build.
  • Use --skip-agent-validation when the Agent intentionally won't fully start (e.g. testing a failure path) so apply doesn't error out.
  • --app-image-tag/-t sets one image tag across all apps at once.
  • tlsVerify: false under datadog.kubelet is almost always needed locally.

Troubleshooting

  • Agent won't report / auth errors → check DD_API_KEY/DD_APP_KEY (or the active profile's config) and that you're pointed at the right org.
  • Kubelet TLS errors → set datadog.kubelet.tlsVerify: false.
  • Platform flag "sticks" → if you passed --platform to start, pass it to every apply too, or set platform: in the scenario/config.
  • Stale/unhealthy cluster → injector-dev reset (or reset --hard on colima).
  • Helm schema rejects new values → --helm-skip-schema-validation.
  • Colima/minikube conflicts → stop any pre-existing instances first.
  • Add --debug to any command for verbose logs.

© DataDog, Apache-2.0. 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 .agents/skills/injector-dev of DataDog/datadog-agent.

Open the folder on GitHubat commit 20eff25

Compare with similar skills

Injector Dev 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.

Injector Dev compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Injector Dev this skillDataDog/datadog-agent3.8k—~4.4kAutomated safety check: WarnApache-2.0
Agent Installdatadog-labs/agent-skills177—~2.1kAutomated safety check: WarnMIT
Onboarding Summarydatadog-labs/agent-skills177—~1.1kAutomated safety check: PassMIT
Enable Ssidatadog-labs/agent-skills177—~3.2kAutomated safety check: WarnMIT
KubeSphere Multi-Tenant Managementkubesphere/kubesphere17k1 repos~3.1kAutomated safety check: PassCustom licence
Azure Diagnosticsmicrosoft/azure-skills1.5k1 repos~1.6kAutomated safety check: PassMIT

Similar skills

  • Agent Install

    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…

    177 GitHub stars~2.1k tokensUpdated today
    DevOps & CloudAuto-check: warnings
  • Onboarding Summary

    datadog-labs/agent-skills

    Generate a live Single Step Instrumentation (SSI) onboarding confirmation report — verifies APM instrumentation is working end-to-end with deep links into the Datadog UI.

    177 GitHub stars~1.1k tokensUpdated today
    DevOps & CloudAuto-check passed
  • Enable Ssi

    datadog-labs/agent-skills

    Enable Single Step Instrumentation (SSI) on Kubernetes — automatically instruments applications for APM without code changes.

    177 GitHub stars~3.2k tokensUpdated today
    DevOps & CloudAuto-check: warnings
  • Creates and queries KubeSphere users, workspaces and projects and assigns built-in roles, defaulting to least privilege and never deleting anything.

    17k GitHub starsUsed in 1 repo~3.1k tokens
    DevOps & CloudAuto-check passed
  • Azure Diagnostics

    microsoft/azure-skills

    Official

    Debug Azure production issues on Azure using AppLens, Azure Monitor, resource health, and safe triage.

    1.5k GitHub starsUsed in 1 repo~1.6k tokens
    DevOps & CloudAuto-check passed
  • Kubeshark Installer

    kubeshark/kubeshark

    Installs and configures Kubeshark on a Kubernetes cluster, choosing between the quick CLI path and a Helm install with custom values.

    12k GitHub stars~3.6k tokensUpdated today
    DevOps & CloudAuto-check: notes

More from DataDog/datadog-agent

All 35 skills in this repo
  • Triage CI Failure

    DataDog/datadog-agent

    Official

    Classify a failed CI as either caused by an active incident, flakiness, or a true code regression.

    3.8k GitHub stars~2.3k tokensUpdated today
    Auto-check passed
  • Elicit

    DataDog/datadog-agent

    Official

    Run a structured discovery session to build an Allium specification through conversation.

    3.8k GitHub starsUsed in 1 repo~3.7k tokens
    Auto-check passed
  • Follow PR

    DataDog/datadog-agent

    Official

    Monitor the current PR's GitLab pipeline to completion, then report success, auto-fix, or investigate a failure.

    3.8k GitHub stars~3.2k tokensUpdated today
    Auto-check passed
  • Create Epic Recap

    DataDog/datadog-agent

    Official

    A skill your agent uses when an engineer or manager asks to recap, summarize, or post an update on a Jira Epic — a progress update for an in-progress Epic (how far along it is, what's shipped so…

    3.8k GitHub stars~5k tokensUpdated today
    Auto-check: notes
  • Explain Lading Config

    DataDog/datadog-agent

    Official

    Explains a lading.yaml config file from the regression test suite, using the lading Rust source as ground truth for field meanings and defaults.

    3.8k GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Distill

    DataDog/datadog-agent

    Official

    Extract an Allium specification from an existing codebase. An agent skill from DataDog/datadog-agent.

    3.8k GitHub starsUsed in 1 repo~7k tokens
    Auto-check passed

Categories

Questions about Injector Dev

What does Injector Dev do?

Build, deploy, and test Datadog Agent components (agent, cluster-agent, operator, CSI driver) on a local Kubernetes cluster using the injector-dev CLI. Injector Dev is an agent skill from DataDog/datadog-agent, published by the product's own GitHub organization. Build, deploy, and test Datadog Agent components (agent, cluster-agent, operator, CSI driver) on a local Kubernetes cluster using the injector-dev CLI.

When should I use Injector Dev?

Injector Dev fits situations like: the user wants to iterate on local Agent; operator change; spin up a local k8s test environment.

How do I install Injector Dev in Claude Code?

Run `npx skills add DataDog/datadog-agent --skill injector-dev -a claude-code`. Or copy the skill folder (.agents/skills/injector-dev in DataDog/datadog-agent) into .claude/skills/injector-dev in your project. Claude Code loads it when a task matches its description.

How do I install Injector Dev in Codex?

Run `npx skills add DataDog/datadog-agent --skill injector-dev -a codex`. Or copy the skill folder (.agents/skills/injector-dev in DataDog/datadog-agent) into .agents/skills/injector-dev in your project. Codex loads it when a task matches its description.

Can I use Injector Dev 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/datadog-agent --skill injector-dev -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/injector-dev, .gemini/skills/injector-dev, .github/skills/injector-dev and .opencode/skills/injector-dev in your project.

What does Injector Dev need to run?

Going by SKILL.md and its folder, Injector Dev needs the command-line tools its instructions call (ssh, docker, git, make and kubectl) and credentials named DD_API_KEY, DD_APP_KEY and INJECTOR_DEV_INSTALLER_API_KEY. Our summary lists: Docker; A credential in DD_API_KEY; A credential in DD_APP_KEY.

Does Injector Dev access the network?

SKILL.md names 2 domains. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. As links in the text: datadoghq.atlassian.net. This is read from the text; nothing was executed.

Is Injector Dev safe to install?

Our automated static check of SKILL.md flagged 1 warning(s): mentions a credentials file (ssh keys, cloud or package-manager tokens). Read the flagged lines before installing; the check is not a guarantee either way.

What licence does Injector Dev use?

Injector Dev is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Injector Dev use?

About 4.4k tokens (SKILL.md is roughly 17k 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 Injector Dev?

Skills that share tags, products or a category with Injector Dev: Agent Install (datadog-labs/agent-skills, 177 stars), Onboarding Summary (datadog-labs/agent-skills, 177 stars), Enable Ssi (datadog-labs/agent-skills, 177 stars) and KubeSphere Multi-Tenant Management (kubesphere/kubesphere, 17k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Injector Dev?

DataDog (a GitHub organization, an official publisher) maintains it in DataDog/datadog-agent, which has 3,757 GitHub stars. The repository holds 35 skills in this directory. The repository was last updated on October 8, 2026.

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