# Exploitmatic documentation

> Install the runtime, write a solution in plain text, and replay a documented attack. Reference, guides, and the verified corpus.

import LinkCard from '../../components/docs/LinkCard.astro';

Exploitmatic gives exploit research a common language. Exploit knowledge
arrives as Python, C, Ruby, shell, notebooks, and AI agents; Exploitmatic
brings it into one plain text representation, a solution file, that a human
reads like a checklist and an LLM can write. The runtime validates the file,
replays each step against one target, and prints a verified or not verified
result. The product story and announcements live on the website; this section
is the reference.

<div class="grid gap-4 sm:grid-cols-2">
	<LinkCard title="Installation" href="/docs/installation/">
		Get the program and run your first replay.
	</LinkCard>
	<LinkCard title="Usage" href="/docs/usage/cli/">
		Every argument and flag, and how to read the result.
	</LinkCard>
	<LinkCard title="Solutions overview" href="/docs/solution/">
		What a solution file is, with a worked Heartbleed example.
	</LinkCard>
	<LinkCard title="Format reference" href="/docs/solution/format/">
		The whole grammar on one page, for authors and LLMs.
	</LinkCard>
	<LinkCard title="Authoring guide" href="/docs/guides/authoring/">
		Build a solution from scratch, stage by stage.
	</LinkCard>
	<LinkCard title="Verified corpus" href="/docs/solutions/">
		What ships with the program and what each solution proves.
	</LinkCard>
</div>

## Start here

New to Exploitmatic? Take the path in order.

1. [Why Exploitmatic?](/docs/why/) - what it is and what it is not
2. [Installation](/docs/installation/) - download the binary and verify it runs
3. [Solutions overview](/docs/solution/) - read the worked example
4. [Usage](/docs/usage/cli/) - run your first replay against a target you own
5. [Scope and ethics](/docs/scope/) - when and how to use an attack replay

## Reference

- [Steps](/docs/solution/steps/) - what a step holds, and the per-identity fields
- [Variables](/docs/solution/variables/) - values that change between steps
- [Asserts](/docs/solution/asserts/) - the pass or fail tests
- [Identity](/docs/solution/identity/) - the protocols the runtime implements
- [Format reference](/docs/solution/format/) - the whole grammar on one page
- [FAQ](/docs/faq/) - quick answers

## Contribute

- [Authoring solutions](/docs/guides/authoring/) - write your own solution files
- [Solutions](/docs/solutions/) - the verified corpus and how to add to it
- [Development](/docs/development/) - build the runtime and run the tests