Union Street /Docs for humans

Docs For Humans

Union Street is The Multi-Agent System: profiles, managers, direct reports, scoped tools, memory, schedules, delegation, and OIDC identity for agent work.

These docs give humans the map. They explain the objects and contracts that make Union Street work.

Union Street is not a model wrapper and not a prompt template collection. It is the operating layer around agent work: who an agent is, what it can touch, who it reports to, where work runs, and what trail is left behind.

Install and first run

The shortest path is intentionally small: install the CLI, run doctor, create one profile, then open the TUI.

us doctor checks host prerequisites. us setup creates the first useful profile shape. us tui opens the terminal UI against that profile.

curl -fsSL https://unionstreet.ai/install.sh | bash
us doctor
us setup coo
us tui coo

Agent skill

The human docs explain Union Street. The root skill tells an AI agent how to operate Union Street safely.

It routes agents to repo-local playbooks for setup, fleet plans, scoped MCP tools, federation, delegation, memory, schedules, runtime state, and audits.

copyable
bunx skills add https://github.com/UnionStreetAI/unionstreet --skill managing-union-street

Profiles and agent packs

A profile is the smallest addressable agent. It is the thing you can chat with, prompt, grant tools to, inspect, schedule, and route work toward.

The agent pack is the profile's source of truth. It carries identity, model chain, manager, direct reports, toolkit, memory policy, runtime shape, schedules, and pulse behavior.

us init analyst --role analyst
us profile list
us federation status analyst

Agent organizations and fleet plans

Union Street models multi-agent work as a small organization. Managers, direct reports, roles, and groups turn a pile of agents into a graph you can inspect.

Fleet plans let you generate, inspect, validate, and apply an organization without hand-editing many profiles.

us onboard create \
  --name local-product-company \
  --mission "Run a focused agent organization" \
  --department engineering:Engineering \
  --department operations:Operations \
  --out fleet.yaml

us fleet validate fleet.yaml
us fleet apply fleet.yaml --replace

OIDC identity

Union Street treats agents as principals. Each profile can resolve to a stable subject, issuer, audiences, roles, groups, manager, and direct reports.

That gives tool grants, secrets, peer visibility, memory, usage, and audit records something real to attach to: the agent doing the work.

us federation status
us federation status coo
us federation token coo
us federation jwks

Delegation and reports

Delegation is visible work routing. Agents wake peers, route work through the org graph, and return structured reports.

The handoff is part of execution, not a hidden subroutine inside one transcript. You can ask what happened, who did it, who asked for it, and where the report went.

Scoped tools and MCP

MCP credentials and plugin capabilities are granted per agent, group, or department. The default should not be one giant credential bucket shared by every agent in the system.

Scoped tools answer which agent used this tool, why it had access, what should be revoked, and which peer it could wake.

us coo mcp auth linear
us coo mcp status
us plugins list
us plugins agent coo

Runtime contracts

Runtime contracts describe where an agent can run, what storage it can use, what secrets it can see, how it receives work, and where output is recorded.

The same shape should work on a laptop, in Docker, in Kubernetes, or inside an airgapped VPC. The deployment target changes; the control-plane model should not.

Memory, events, and usage

Memory is local and inspectable first, with Honcho-backed peering for shared context. The goal is inspectable state, not mystical long-term memory.

Events are append-only JSONL with recursive secret redaction. Usage records track input, output, reasoning, cache read/write, total tokens, and cost source.

us events tail
us events query --agent coo
us events query --trace <trace-id>