antithesis-setup
Skill1.6k starsChanged todayMITView on GitHub
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.
We split this skill into the rules it gives an agent
19 rules. About 0 are common, 2 are distinctive, and 17 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
17
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 28
If the user asks to submit or launch a run, use the antithesis-launch skill — do not run snouty launch directly
- Very specific: line 32
Research artifacts required: Before proceeding, check whether antithesis/scratchbook/ exists and contains research output (at minimum …
- Distinctive: line 36
Do not attempt to proceed without research artifacts.
- Very specific: line 49
If the user says no, do not proceed.
- Very specific: line 53
DO NOT PROCEED if snouty is not installed.
- Very specific: line 54
DO NOT PROCEED if snouty is older than 0.8.0.
- Very specific: line 58
Use the antithesis-documentation skill to access these pages.
- Very specific: line 83
Keep Antithesis-only scaffolding under antithesis/ when practical.
- Very specific: line 88
If antithesis/test/ does not exist yet, create the directory structure needed for later workload work, but leave real test templates and …
- Very specific: line 91
Treat instrumentation and symbolization as bootstrap work.
- Distinctive: line 94
Treat local testing as required before the first submission.
- Very specific: line 95
Use the antithesis-launch skill to submit runs, do not run snouty launch directly.
- Very specific: line 96
Do not add a separate Dockerfile under antithesis/config/ unless the deployment explicitly requires it.
- Very specific: line 111
Every service in docker-compose.yaml includes platform: linux/amd64
- Very specific: line 112
Every service has hostname: set to match its container_name:, and neither contains an underscore (use hyphens — underscores are not valid …
- Very specific: line 113
Every service sets init: true so the service process does not run as pid 1
- Very specific: line 122
All built images target amd64 (verified via image inspect on the engine snouty selects)
- Very specific: line 124
Every service has NO_COLOR=1 set in its environment (via docker-compose.yaml and/or Dockerfile) to prevent ANSI escape codes in container …
- Very specific: line 126
If the user asks to launch a run, the antithesis-launch skill is used instead of running snouty launch directly
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Antithesis Setup
Skill version: 2026-10-15 84b188a
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)
Trending
Quiet since January.thin dataabout the whole repository
Who's talking about ghuntley/loom
- A Hacker News story“If your name is not Geoffrey Huntley then do not use loom”Hacker News · Jan 16, 2026 · 2 points
- daydemir/milhouse-go-legacy“Cross-Session Thread Loading & Replay (from Huntley Loom research)”GitHub · Jan 17, 2026
- daydemir/milhouse-go-legacy“Active System Verification Loops (from Huntley Loom research)”GitHub · Jan 17, 2026
- daydemir/milhouse-go-legacy“Meta-Loop Orchestration: Agents Spawning Sub-Loops (exploratory/major from Huntley Loom research)”GitHub · Jan 17, 2026
- daydemir/milhouse-go-legacy“Structured Audit Threads for Agent Decision Trails (from Huntley Loom research)”GitHub · Jan 17, 2026
The biggest 5 of 14 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 14
Talked about on GitHub and Hacker News (14 times).
On GitHub · 13
- Jan 17, 2026Cross-Session Thread Loading & Replay (from Huntley Loom research) — daydemir/milhouse-go-legacy0 reactions
- Jan 17, 2026Active System Verification Loops (from Huntley Loom research) — daydemir/milhouse-go-legacy0 reactions
- Jan 17, 2026Meta-Loop Orchestration: Agents Spawning Sub-Loops (exploratory/major from Huntley Loom research) — daydemir/milhouse-go-legacy0 reactions
- Jan 17, 2026Structured Audit Threads for Agent Decision Trails (from Huntley Loom research) — daydemir/milhouse-go-legacy0 reactions
- Jan 17, 2026Server-Side LLM Proxy for Credential Isolation (from Huntley Loom research) — daydemir/milhouse-go-legacy0 reactions
8 more on GitHub
- Jan 17, 2026Secret Wrapper Type for Auto-Redacting (from Huntley Loom research) — daydemir/milhouse-go-legacy0 reactions
- Jan 17, 2026Error Classification with Transient/Quota/Permanent (from Huntley Loom research) — daydemir/milhouse-go-legacy0 reactions
- Jan 17, 2026Thread Persistence with UUID7 & Offline-First Sync (from Huntley Loom research) — daydemir/milhouse-go-legacy0 reactions
- Jan 17, 2026Post-Tool Hook State for Auto-Commit (from Huntley Loom research) — daydemir/milhouse-go-legacy0 reactions
- Jan 17, 2026Snippet-Based File Editing (from Huntley Loom research) — daydemir/milhouse-go-legacy0 reactions
- Jan 17, 2026Proactive OAuth Token Refresh (from Huntley Loom research) — daydemir/milhouse-go-legacy0 reactions
- Jan 17, 2026Multi-Account LLM Pool with Failover & Cooling (from Huntley Loom research) — daydemir/milhouse-go-legacy0 reactions
- Jan 17, 2026Explicit State Machine for Agent Orchestration (from Huntley Loom research) — daydemir/milhouse-go-legacy0 reactions
On Hacker News · 1
- Jan 16, 2026If your name is not Geoffrey Huntley then do not use loom2 points · 1 comment
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 1
- antithesishq/antithesis-skills★ 30499% same
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository31 other files it gives its agents.
- AGENTS.mdAGENTS.md
- antithesis/AGENTS.mdAGENTS.md
- lilly/AGENTS.mdAGENTS.md
- marshall/AGENTS.mdAGENTS.md
- mila/AGENTS.mdAGENTS.md
- protocol/AGENTS.mdAGENTS.md
- susan/AGENTS.mdAGENTS.md
- adr-maintenanceSkill
- antithesis-agent-browserSkill
- antithesis-debugSkill
- antithesis-documentationSkill
- antithesis-feature-workloadSkill
- antithesis-launchSkill
- antithesis-mutation-testingSkill
- antithesis-query-logsSkill
- antithesis-researchSkill
- antithesis-review-inputsSkill
- antithesis-setup-k8sSkill
- antithesis-skills-feedbackSkill
- antithesis-triageSkill
- antithesis-workloadSkill
- architecture-reviewSkill
- buck2Skill
- code-contractsSkill
- covenantSkill
- hegel-elixir-testsSkill
- localizationSkill
- monospace-webSkill
- nix-buildsSkill
- security-auditSkill
- test:triageSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

