# Reference

> Configuration schema, package references, on-disk layout, exit codes, JSON output, platforms, and integrations.

---

LLMS index: [llms.txt](/llms.txt)

---

This section is the stable contract for configuration fields, package references, paths,
exit codes, JSON, platforms, and integrations. CLI syntax and state transitions live in
[Commands](/docs/command/); use [Get Started](/docs/start/) for the operating model.

Output examples show shape; identifiers, paths, hashes, timestamps, and counts vary by
workspace. The built-in `sow help` remains the exact syntax authority.


- [sow\.yml Reference](/docs/reference/config/) — The complete configuration schema: workspace, repository, distribution, membership policy, signing, and publication targets.
- [Package References](/docs/reference/package-ref/) — The five ways to name a package on the command line, how ambiguity is resolved, and which forms `rm`, `show`, and `where` accept.
- [Repository Layout](/docs/reference/layout/) — Every path SOW creates in plain and managed mode, the pool grouping rule, name constraints, and which directories must never be exposed over HTTP.
- [Exit Codes](/docs/reference/exit-codes/) — The seven exit codes and what each one means.
- [JSON Output](/docs/reference/json/) — The `sow.cli/v1` envelope, the meaning of each top-level field, and result shapes for the primary command families.
- [Platforms \& Integrations](/docs/reference/compatibility/) — Release targets, filesystem requirements, repository-client checks, publication Providers, and the exact scope of each automated integration.


## Conventions

Command examples are written without a `$` prompt so you can copy a whole block. Output
blocks are representative; variable values and long structures may be shortened where
marked. The built-in `sow help` remains the exact syntax authority shipped with a binary.

Placeholders in syntax blocks are uppercase (`NAME`, `DIR`, `PACKAGE`); literal text is
lowercase. Square brackets mark optional arguments, `...` marks a repeatable one, and a
vertical bar separates alternatives — the same convention `sow help` uses.

---

Section pages:

- [sow.yml Reference](/docs/reference/config/): Every field of the workspace configuration file, with validation rules and a complete worked example.
- [Package References](/docs/reference/package-ref/): The five ways to name a package on the command line, and how ambiguity is resolved.
- [Repository Layout](/docs/reference/layout/): Public and private paths, including the canonical pool and metadata-only views.
- [Exit Codes](/docs/reference/exit-codes/): The seven exit codes, what each means, and a command that reproduces it.
- [JSON Output](/docs/reference/json/): The sow.cli/v1 envelope, its fields, and result shapes for the primary command families.
- [Platforms & Integrations](/docs/reference/compatibility/): Release targets, filesystem requirements, repository clients, publication Providers, and automated integration coverage.
