
antithesis-setup
Scaffold the Antithesis harness with docker-compose: initialize the working directory, write Dockerfiles and docker-compose.yaml with build directives, and prepare to submit your first Antithesis test run. If the desired setup is Kubernetes, defer to the antithesis-setup-k8s skill.
- Installs
- 574
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/antithesishq/antithesis-skills --skill antithesis-setup- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads antithesis-setup automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Antithesis Setup
Skill version: 2026-10-21 4f8d80b
Purpose and Goal
Scaffold the antithesis/ harness needed to bring the system up in Antithesis
in a mostly idle, ready state.
Success means:
antithesis/config/docker-compose.yamlexists and required SUT images are referenced withbuild:directivessnouty validateonantithesis/config/succeeds- the SUT dependency graph includes the relevant Antithesis SDK where assertions or lifecycle hooks will run
- at least one minimal bootstrap property exists in a simple SUT path and is expected to show up in the first Antithesis run
- The harness is ready for the
antithesis-workloadskill to add or iterate on test templates, assertions, and workload code - If the user asks to submit or launch a run, use the
antithesis-launchskill — do not runsnouty launchdirectly
Prerequisites
-
Research artifacts required. Before proceeding, check whether
antithesis/scratchbook/exists and contains research output (at minimumsut-analysis.mdanddeployment-topology.md). If the scratchbook is missing or empty, stop and warn the user:The
antithesis-researchskill has not been run yet (no scratchbook found atantithesis/scratchbook/). Setup depends on research artifacts — especially the SUT analysis and deployment topology — to make informed decisions about instrumentation, image structure, and service composition. Please runantithesis-researchfirst, review its output, then return to setup.Do not attempt to proceed without research artifacts. The setup skill will make significantly worse decisions without the context that research provides.
-
Verify research provenance. Setup runs once per project and produces durable, expensive output (Dockerfiles, compose, instrumentation), so misalignment is costly. Read whatever provenance frontmatter is present in
antithesis/scratchbook/sut-analysis.mdandantithesis/scratchbook/deployment-topology.md. Use whatever fields you find — the schema may evolve over time, so don't treat partial or older frontmatter as broken. Describe what you found in plain language. Examples:- Full schema: "this scratchbook is for SUT at
/path/Xat commitabc12345abcd(2026-05-05), external refs: A, B." - Partial: "the catalog records
commitandupdatedbut nosut_pathorexternal_references." - Absent: "no provenance recorded; the scratchbook predates this convention."
- Disagreement across files: "sut-analysis is for
/path/Aat commitabc; deployment-topology is for/path/Bat commitdef— these disagree."
Then ask the user:
Is this still the system you're targeting?
If the user says no, do not proceed. Stop and tell the user to re-run
antithesis-research. Setup against confirmed-stale research will produce mismatched scaffolding.The user-facing commit display uses the short hash (first 12 characters) for readability; the frontmatter still stores the full SHA.
- Full schema: "this scratchbook is for SUT at
-
DO NOT PROCEED if
snoutyis not installed. Seehttps://raw.githubusercontent.com/antithesishq/snouty/refs/heads/main/README.mdfor installation options. -
DO NOT PROCEED if
snoutyis older than 0.8.0. Usesnouty --versionto find the version. Usesnouty updateto update.
Documentation Grounding
Use the antithesis-documentation skill to access these pages. Prefer snouty docs.
- Docker Compose setup guide:
https://antithesis.com/docs/getting_started/setup_guide/docker_compose.md - Docker best practices:
https://antithesis.com/docs/best_practices/docker_best_practices.md - Coverage instrumentation:
https://antithesis.com/docs/reference/instrumentation/coverage_instrumentation.md - Assertion cataloging:
https://antithesis.com/docs/reference/sdk/assertion_cataloging.md - Handling external dependencies:
https://antithesis.com/docs/reference/dependencies.md - Fault injection:
https://antithesis.com/docs/product/fault_injection.md
Workflow
This skill is broken out into multiple steps, each in a different reference file. Read and implement each reference file listed below one at a time to fully set up a project. After implementing each step, check whether what you learned invalidates any decisions from earlier steps. Instrumentation decisions (step 2) are the most common thing that needs revision once you start building images (step 3).
references/directory-init.md: initialize or merge theantithesis/directory fromassets/antithesis/references/instrumentation.md: decide how each SUT service is instrumented, how the SDK is installed, how symbols are delivered, and where the bootstrap property livesreferences/docker-images.md: create or adapt Dockerfiles for SUT componentsreferences/docker-compose.md: writeantithesis/config/docker-compose.yamlreferences/config-dir.md: understand what belongs inantithesis/config/references/submit-and-test.md: test locally and submit the first run
General Guidance
- Merge with existing
antithesis/content instead of overwriting it. - Build and test locally with the compose CLI and container runtime
snouty doctorreports. Seereferences/submit-and-test.md. - Keep Antithesis-only scaffolding under
antithesis/when practical. - Focus this skill on infrastructure and readiness, not on defining the workload itself.
- Installing the relevant Antithesis SDK into the SUT and adding one minimal bootstrap assertion is part of setup, not deferred workload work.
- If
antithesis/test/does not exist yet, create the directory structure needed for later workload work, but leave real test templates and assertions toantithesis-workload. - Treat instrumentation and symbolization as bootstrap work. The setup is not
complete until the relevant images expose
/opt/antithesis/catalog/or/symbols/correctly for their language. - Treat local testing as required before the first submission.
- Use the
antithesis-launchskill to submit runs, do not runsnouty launchdirectly. If theantithesis-launchskill is not present, then usesnouty launchdirectly to submit runs. Runcompose buildbeforesnouty launchto ensure images are up to date. - Do not add a separate Dockerfile under
antithesis/config/unless the deployment explicitly requires it. - Disable color/ANSI output in every container. Antithesis stores raw bytes and
does not render escape codes — color output is garbage in logs and triage. Set
NO_COLOR=1on all services via docker-compose.yaml environment blocks or DockerfileENVdirectives. Add tool-specific flags (e.g.FORCE_COLOR=0) where needed.
Self-Review
Before declaring this skill complete, review your work against the criteria below. If your agent supports spawning sub-agents, create a new agent with fresh context to perform this review — give it the path to this skill file and have it read all output artifacts. A fresh-context reviewer catches blind spots that in-context review misses. If your agent does not support sub-agents, perform the review yourself: re-read the success criteria at the top of this file, then systematically check each item below against your actual output.
Review criteria:
antithesis/config/docker-compose.yamlexists and every service hasbuild:(for local images) orimage:(for public images) configured correctly- Every service in docker-compose.yaml includes
platform: linux/amd64 - Every service has
hostname:set to match itscontainer_name:, and neither contains an underscore (use hyphens — underscores are not valid DNS label characters) - Every service sets
init: trueso the service process does not run as pid 1 - Cross-service dependencies use
depends_onwithcondition: service_healthyagainst a definedhealthcheck, not plaindepends_on - The runtime compose does NOT set a custom
logging:driver, does not configure anyinternal: truenetwork, and does not setpull_policy: - The instrumentation inventory from
references/instrumentation.mdis fully implemented: each service is instrumented, cataloged-only, or explicitly documented as uninstrumented - The relevant Antithesis SDK is installed in the SUT dependency graph
- A bootstrap property exists in a simple, guaranteed-to-run code path (not behind rare behavior)
/opt/antithesis/catalog/or/symbols/is exposed correctly for each service's language- The
setup_completesignal is wired in at least one entrypoint snouty validateonantithesis/config/succeeds- All built images target
amd64(verified viaimage inspecton the engine snouty selects) - The build used the compose CLI and engine
snouty doctorreports - Every service has
NO_COLOR=1set in its environment (via docker-compose.yaml and/or Dockerfile) to prevent ANSI escape codes in container output - The harness is ready for the
antithesis-workloadskill — test template directories exist or are wired for later use - If the user asks to launch a run, the
antithesis-launchskill is used instead of runningsnouty launchdirectly - Whatever research provenance was present in
sut-analysis.mdanddeployment-topology.mdwas described to the user and confirmed before scaffolding began (provenance frontmatter format is defined in theantithesis-researchskill,references/scratchbook-setup.md)
FAQ
What does the antithesis-setup skill do?
Scaffold the Antithesis harness with docker-compose: initialize the working directory, write Dockerfiles and docker-compose.yaml with build directives, and prepare to submit your first Antithesis test run. If the desired setup is Kubernetes, defer to the antithesis-setup-k8s skill.
How do I install antithesis-setup?
Run npx skills add https://github.com/antithesishq/antithesis-skills --skill antithesis-setup in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/antithesis-setup/ (personal) or .claude/skills/antithesis-setup/ (project).
Which AI agents can use antithesis-setup?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is antithesis-setup safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains antithesis-setup?
It is published by antithesishq in antithesishq/antithesis-skills, and it is an official skill from the maker of the technology it covers. It has 574 recorded installs.
More from antithesishq/antithesis-skills
antithesis-research
antithesishq/antithesis-skills
Analyze a codebase to figure out how it should be tested with Antithesis: map the system, identify failure-prone areas and testable properties, and produce the research artifacts needed for workload and environment planning.
antithesis-documentation
antithesishq/antithesis-skills
Use Antithesis documentation efficiently for product, workflow, and integration questions. Prefer the snouty docs CLI when available, and otherwise request markdown versions of documentation pages directly.
antithesis-triage
antithesishq/antithesis-skills
Triage Antithesis test reports to understand what happened in a run: look up runs, check status, investigate failed properties (assertions), view metadata, download logs, search events across all timelines, inspect findings, and examine environmental details. Load after a run completes or when investigating a failure.
antithesis-workload
antithesishq/antithesis-skills
Implement Antithesis workloads by turning the property catalog into SDK assertions and test commands, then refine coverage after triage.
antithesis-debug
antithesishq/antithesis-skills
Run a bash script inside an Antithesis run at a chosen moment with snouty runs exec, from the terminal and without a browser. Use it for scripted forensics on a run: process and container inspection, on-disk evidence, gdb attach, and general debugging. Covers command usage, the live-session requirement, common workflows and errors, and how virtual time and perturbation limit what a debugger can see.
antithesis-launch
antithesishq/antithesis-skills
Launch an Antithesis run with snouty by discovering the harness layout, building the right Docker Compose config, running snouty validate, bailing on validation failure, and then submitting snouty launch with sane metadata. Use when the user wants to send, submit, or launch an Antithesis run. This skill takes duration in minutes as input.
Popular devops & cloud skills
microsoft-foundry
microsoft/azure-skills
Build, deploy, evaluate, optimize, fine-tune, and manage Microsoft Foundry agents, models, and resources end to end. USE FOR: foundry, azd ai agent, azd provision/deploy, hosted agent scaffold/develop/run/deploy/troubleshoot, prompt agent create, managed harness agent create, GitHub Copilot harness agent, create agent, update agent, add tool to agent, invoke agent, agent insights, evaluate agent, batch eval, continuous eval, continuous monitoring, agent CI/CD, optimize prompt, improve prompt, optimize agent instructions, Agent Optimizer scaffold, dataset curation from traces, deploy model, model fine-tuning (SFT/DPO/RFT), Foundry project, RBAC, role assignment, permissions, quota, capacity, region, deployment failure, AI Services, create Foundry resource, knowledge index, customize deployment, onboard, availability, training-data, grader, distillation, large file upload. DO NOT USE FOR: Azure Functions, App Service, general Azure deploy (use azure-deploy), general Azure prep (use azure
azure-diagnostics
microsoft/azure-skills
Debug Azure production issues on Azure using AppLens, Azure Monitor, resource health, and safe triage. WHEN: debug production issues, troubleshoot app service, app service high CPU, app service deployment failure, troubleshoot container apps, container app 503 or target port mismatch, troubleshoot functions, function telemetry missing or stopped after a config/connection-string change, troubleshoot AKS, VM RDP, Linux SSH, VM black screen, can't connect to VM, reset VM password, NSG or firewall blocking, kubectl cannot connect, kube-system/CoreDNS failures, pod pending, crashloop, node not ready, upgrade failures, analyze logs, KQL, insights, image pull failures, cold start issues, health probe failures, resource health, root cause of errors, troubleshoot event hubs, troubleshoot service bus, messaging SDK error, AMQP connection failure, message lock lost, lock renewal during long-running processing, service bus dead letter.
azure-prepare
microsoft/azure-skills
Prepare azd-based Azure projects for deployment: generates azure.yaml, infrastructure (Bicep/Terraform), and Dockerfiles for the Azure Developer CLI (azd) workflow. USE ONLY when the user explicitly wants to use azd as the deployment tool, or the project already has an azure.yaml file. DO NOT USE FOR: non-azd deployments, Python App Service code-only deploys (use python-appservice-deploy), or cross-cloud migration (use azure-cloud-migrate). WHEN: prepare app for azd, create azure.yaml, set up azd infrastructure, modernize app for Azure with azd, deploy with azd, function app, timer trigger, service bus trigger, event-driven function, managed identity, generate Bicep, generate Terraform, create and deploy to Azure.
azure-ai
microsoft/azure-skills
Use for Azure AI: Search, Speech, OpenAI, Document Intelligence. Helps with search, vector/hybrid search, speech-to-text, text-to-speech, transcription, OCR. WHEN: AI Search, query search, vector search, hybrid search, semantic search, speech-to-text, text-to-speech, transcribe, OCR, convert text to speech.
azure-deploy
microsoft/azure-skills
Execute Azure deployments for ALREADY-PREPARED applications that have existing .azure/deployment-plan.md and infrastructure files. DO NOT use this skill when the user asks to CREATE a new application — use azure-prepare instead. This skill runs azd up, azd deploy, terraform apply, and az deployment commands with built-in error recovery. Requires .azure/deployment-plan.md from azure-prepare and validated status from azure-validate. WHEN: "run azd up", "run azd deploy", "execute deployment", "push to production", "push to cloud", "go live", "ship it", "bicep deploy", "terraform apply", "publish to Azure", "launch on Azure". DO NOT USE WHEN: "create and deploy", "build and deploy", "create a new app", "set up infrastructure", "create and deploy to Azure using Terraform" — use azure-prepare for these.
azure-validate
microsoft/azure-skills
Pre-deployment validation for Azure readiness. Run deep checks on configuration, infrastructure (Bicep or Terraform), RBAC role assignments, managed identity permissions, and prerequisites before deploying. WHEN: validate my app, check deployment readiness, run preflight checks, verify configuration, check if ready to deploy, validate azure.yaml, validate Bicep, test before deploying, troubleshoot deployment errors, validate Azure Functions, validate function app, validate serverless deployment, verify RBAC roles, check role assignments, review managed identity permissions, what-if analysis, validate Container Apps deployment.