How aryankori/bridge works
Bridge is an interoperability and orchestration layer for heterogeneous coding agents, with a separate bridge resolve workflow for arbitrating committed worktree divergence. The principal workflow routes work to an available agent, transfers work context, and communicates through agent adapters and transport. The graph also preserves the documented authority-resolution stages. README claims about protocol support are broader than the sampled implementation; unsampled internal wiring is shown only where documented, and uncertain links are omitted.
Main entry points: stdio-json.ts Stdio transport · core/index.ts Core API · adapters/index.ts Adapter exports · cli.ts Resolve command
Components 23
Agent orchestration
- Core API
src/core/index.ts - Agent registry
src/core/registry.ts - Capability router
src/core/router.ts - Event bus
src/core/events.ts - Work transfer
src/core/work-transfer.ts
Agent integrations
- Adapter API
src/core/types.ts - Adapter exports
src/adapters/index.ts - Claude Code
src/adapters/claude-code/index.ts - OpenCode
src/adapters/opencode/index.ts - Codex
src/adapters/codex/index.ts - Gemini CLI
src/adapters/gemini-cli/index.ts
Communication
- Stdio transport
src/transport/stdio-json.ts - JSON-RPC
src/transport/jsonrpc.ts
Authority resolution
- Bridge CLI
src/bin/bridge.ts - Resolve command
src/effective-directive/cli.ts - Git evidence
src/effective-directive/git.ts - CODEOWNERS rules
src/effective-directive/codeowners.ts - Rule precedence
src/effective-directive/precedence.ts - Directive evaluation
src/effective-directive/evaluator.ts - Conflict arbitration
src/effective-directive/arbitration.ts
Other components
- Engineer
- Agent processes
- Resolution status
Connections 24
- Engineer → Core API: submits work
- Core API → Agent registry: uses registry
- Core API → Capability router: routes work
- Capability router → Agent registry: lists agents
- Core API → Work transfer: creates transfers
- Core API → Event bus: emits events
- Adapter exports → Claude Code: exports
- Adapter exports → OpenCode: exports
- Adapter exports → Codex: exports
- Adapter exports → Gemini CLI: exports
- Claude Code → Stdio transport: uses
- OpenCode → Stdio transport: uses
- Codex → Stdio transport: uses
- Gemini CLI → Stdio transport: uses
- Stdio transport → Agent processes: exchanges streams
- JSON-RPC → Stdio transport: encodes messages
- Engineer → Bridge CLI: requests resolution
- Bridge CLI → Resolve command: dispatches resolve
- Resolve command → Git evidence: inspects commits
- Resolve command → CODEOWNERS rules: reads ownership rules
- Resolve command → Conflict arbitration: requests decision
- Conflict arbitration → Directive evaluation: evaluates authority
- Directive evaluation → Rule precedence: applies precedence
- Conflict arbitration → Resolution status: returns status