mesh-contracts: Enforceable multi-party agreements with milestones and escrow
mesh mesh-contracts
create, sign, milestone, complete, dispute, list, show, history
# mesh-contracts
**Layer:** L2.5 (Commerce)
**Tool:** `mesh contract|contracts|ct`
**Path:** `tools/mesh-contracts/contracts.sh`
## Purpose
Enforceable multi-party agreements with milestone tracking, escrow integration, and dispute resolution. Completes the commerce stack: credits (money) + transactions (exchange) + contracts (agreements).
## Commands
- `create <title> <p1> <p2> [--escrow N] [--milestones N]` — New contract
- `sign <id> <agent>` — Sign/accept (auto-activates when all sign, reserves escrow)
- `milestone <id> <index> <agent> [evidence]` — Complete a milestone
- `complete <id>` — Finalize (all milestones done, releases escrow)
- `dispute <id> <agent> <reason>` — Raise dispute (freezes contract)
- `resolve <id> <ruling>` — Resolve: release|refund|split
- `list [--status <s>]` — List contracts
- `show <id>` — Full details
- `history [agent]` — Event ledger
## Status Flow
`draft → active → completed` or `active → disputed → resolved`
## Integration
- Escrow via mesh-credits (auto-reserve on activation, auto-release on completion)
- JSONL ledger via ledger-write.sh
- Wired into mesh CLI