// about

how it works

rosary is three open-source tools that compose into an autonomous work orchestrator. you describe work as beads. machines do the rest.

01 — orchestrator
rosary
agent orchestrator. you describe work as beads (small, scoped tasks). rosary dispatches agents to work on them — one bead at a time, in isolated worktrees. agents build, test, and surface PRs. you review what survives.

source · rust · MCP server · 27 tools
02 — intelligence
mache
structural code intelligence. projects your codebase into a queryable graph — symbols, callers, callees, communities, architecture diagrams. agents use it to understand code before making changes.

optionally ships with ley-line — a closed-source performance layer that adds semantic search, embeddings, and zero-copy SQLite arenas. mache works fully without it; ley-line makes it faster.

source · go · MCP server · tree-sitter + graph projection
03 — identity
Δ signet
identity + signing. generates your key, signs your commits, authenticates your agents. self-sovereign — your key stays on your machine. sigstore-compatible for ecosystem interop.

source · go · Ed25519 · bridge certificates
getting started

three ways in

1
hosted (one command)
claude mcp add --transport http rosary https://rosary.bot
opens browser for OAuth. no install needed.
2
local (self-hosted)
brew install rosary (or cargo install rsry)
rsry serve
claude mcp add --transport http rosary http://localhost:8080/mcp
runs on your machine. your data stays local. unlimited.
3
with signet (self-sovereign identity)
signet auth login
generates your key locally. gets a signed cert. auto-configures claude code. one command — done.
the loop

how agents work

when you create a bead, rosary's reconciler picks it up and dispatches an agent:

# MCP tools in your editor, or the CLI — same thing
rsry_bead_create: "fix the auth bug" priority: 0
# or: rsry bead create "fix the auth bug" -p 0
     
reconciler: scans repos, checks file scopes, finds no overlap
     
rsry_dispatch: agent gets an isolated worktree
     
agent: uses mache to understand code, makes the fix
     
agent: commits (signed by signet), pushes branch, creates PR
     
reconciler: staging agent verifies the change
     
you: review the PR. merge or close.

agents use mache to understand the codebase before making changes — finding definitions, tracing call graphs, checking what symbols are affected. they use signet to sign their commits so you know which agent made which change.

architecture

how it fits together

rosary is a reconciler. it scans, triages, dispatches, verifies. agents use mache for code intelligence and signet for identity. ley-line accelerates mache when present.

flowchart TD
  subgraph You["you"]
    Editor["your editor
claude code · cursor · any MCP client"] end subgraph Orchestration["rosary — the reconciler"] R["rsry
MCP server · 27 tools"] Dolt[("beads
dolt-backed · your repo")] end subgraph Intelligence["mache — code understanding"] M["mache
MCP server · 14 tools"] LL["ley-line
optional · semantic search
embeddings · zero-copy arena
"] end subgraph Identity["signet — who you are"] S["signet
Ed25519 · bridge certs"] end subgraph Compute["bring your own"] Local["local subprocess"] Sprites["sprites.dev"] CF["CF Containers"] end Editor -- "MCP" --> R Editor -- "MCP" --> M R -- "hard" --> Dolt R -- "dispatch" --> Compute M -. "soft · degrades gracefully" .-> LL R -. "optional" .-> S Compute -- "uses both" --> R Compute -- "uses both" --> M style You fill:#12121E,stroke:#E0D9C7,stroke-width:1px,color:#E0D9C7 style Orchestration fill:#12121E,stroke:#E8A0B8,stroke-width:1px,color:#E0D9C7 style Intelligence fill:#12121E,stroke:#8ECFA0,stroke-width:1px,color:#E0D9C7 style Identity fill:#12121E,stroke:#CCA8E8,stroke-width:1px,color:#E0D9C7 style Compute fill:#12121E,stroke:#88CCCC,stroke-width:1px,color:#E0D9C7 style Editor fill:#1E1E32,stroke:#E0D9C7,color:#E0D9C7 style R fill:#1E1E32,stroke:#E8A0B8,color:#E0D9C7 style Dolt fill:#1E1E32,stroke:#E8A0B8,color:#E0D9C7 style M fill:#1E1E32,stroke:#8ECFA0,color:#E0D9C7 style LL fill:#1E1E32,stroke:#88CCCC,color:#E0D9C7,stroke-dasharray: 5 5 style S fill:#1E1E32,stroke:#CCA8E8,color:#E0D9C7 style Local fill:#1E1E32,stroke:#88CCCC,color:#E0D9C7 style Sprites fill:#1E1E32,stroke:#88CCCC,color:#E0D9C7 style CF fill:#1E1E32,stroke:#88CCCC,color:#E0D9C7
bring your own

BYO everything

the tools are open source. nothing locks you in.

BYO agent — claude, gemini, your own definitions. rosary doesn't care what runs. it cares that the tests pass.
BYO compute — local subprocess, sprites.dev, CF Containers, Fly Machines. swap providers without changing your beads.
BYO storage — beads live in your repo as dolt databases. your data is yours. hosted mode syncs to the edge — but the local copy is always source of truth.
BYO identity — signet keys stay on your machine. bring your own GitHub OAuth, your own OIDC provider. signet is the bridge, not the cage.

rosary.bot is the managed version — same open-source tools, hosted on the edge. pay if you want it managed. run it yourself if you don't.

begin

the tools are open source.
the stack is the product.

register your repos. write some beads. let the loop take over.