1:"$Sreact.fragment"
9:I[22016,["/_next/static/chunks/01xlw8hd842-c.js","/_next/static/chunks/0t2xr05rlu96l.js","/_next/static/chunks/13yqw0_w-khic.js"],""]
a:I[97367,["/_next/static/chunks/01xlw8hd842-c.js","/_next/static/chunks/0t2xr05rlu96l.js"],"OutletBoundary"]
b:"$Sreact.suspense"
0:{"rsc":["$","$1","c",{"children":[["$","article",null,{"className":"max-w-3xl","children":[["$","p",null,{"className":"font-mono text-[10px] font-semibold uppercase tracking-[0.2em] text-primary","children":"Quickstart"}],["$","h1",null,{"className":"mt-3 font-headline text-3xl font-bold text-on-surface sm:text-4xl","children":"First cross-repo ask in three steps"}],["$","p",null,{"className":"mt-4 text-base leading-7 text-on-surface-variant","children":"Install Repowire, run setup, open two agents in tmux. They auto-register and discover each other. Tested on macOS and Linux with Python 3.10+."}],["$","section",null,{"className":"mt-10 border-l-2 border-primary/40 pl-6","children":[["$","div",null,{"className":"mb-2 font-mono text-[10px] font-bold uppercase tracking-[0.18em] text-primary-fixed","children":"01"}],["$","h2",null,{"className":"font-headline text-xl font-semibold text-on-surface","children":"Install"}],["$","div",null,{"className":"mt-4","children":[["$","pre",null,{"className":"overflow-x-auto whitespace-pre-wrap break-words border border-border-faint bg-surface-container-low p-4 font-mono text-[11px] leading-6 text-on-surface sm:text-xs","children":["$","code",null,{"children":"# recommended: install with uv (fast, isolated)\nuv tool install repowire\n\n# alternate: use the interactive installer (detects uv / pipx / pip)\ncurl -sSf https://raw.githubusercontent.com/prassanna-ravishankar/repowire/main/install.sh | sh"}]}],["$","p",null,{"className":"mt-3 text-sm leading-6 text-on-surface-variant","children":"Requires tmux. The installer detects your agents (Claude Code, Codex, Gemini, OpenCode) and wires hooks and MCP for each one it finds."}],["$","p",null,{"className":"mt-3 text-sm leading-6 text-on-surface-variant","children":["Repowire setup does not install third-party skills or Claude Code marketplace plugins. Add reusable skills separately with tools such as ",["$","code",null,{"className":"font-mono text-primary-fixed","children":"npx skills add"}],"."]}]]}]]}],["$","section",null,{"className":"mt-10 border-l-2 border-primary/40 pl-6","children":[["$","div",null,{"className":"mb-2 font-mono text-[10px] font-bold uppercase tracking-[0.18em] text-primary-fixed","children":"02"}],["$","h2",null,{"className":"font-headline text-xl font-semibold text-on-surface","children":"Set up"}],["$","div",null,{"className":"mt-4","children":[["$","pre",null,{"className":"overflow-x-auto whitespace-pre-wrap break-words border border-border-faint bg-surface-container-low p-4 font-mono text-[11px] leading-6 text-on-surface sm:text-xs","children":["$","code",null,{"children":"repowire setup"}]}],["$","p",null,{"className":"mt-3 text-sm leading-6 text-on-surface-variant","children":["One-time. Installs lifecycle hooks for every detected agent runtime and starts the local daemon on ",["$","code",null,{"className":"font-mono text-primary-fixed","children":"127.0.0.1:8377"}],"."]}]]}]]}],["$","section",null,{"className":"mt-10 border-l-2 border-primary/40 pl-6","children":[["$","div",null,{"className":"mb-2 font-mono text-[10px] font-bold uppercase tracking-[0.18em] text-primary-fixed","children":"03"}],["$","h2",null,{"className":"font-headline text-xl font-semibold text-on-surface","children":"Open two agents and ask"}],["$","div",null,{"className":"mt-4","children":[["$","pre",null,{"className":"overflow-x-auto whitespace-pre-wrap break-words border border-border-faint bg-surface-container-low p-4 font-mono text-[11px] leading-6 text-on-surface sm:text-xs","children":["$","code",null,{"children":"# window 1\ncd ~/projects/project-a && claude\n\n# window 2\ncd ~/projects/project-b && codex"}]}],["$","p",null,{"className":"mt-3 text-sm leading-6 text-on-surface-variant","children":["Claude Code registers on session start. Codex registers after its first interaction, so send a short warmup prompt in ","$L2",", then confirm both peers with ","$L3",". In ","$L4",", tell your local agent:"]}],"$L5","$L6"]}]]}],"$L7"]}],null,"$L8"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"pUS9Wj3YHxk_uMTfO6hz9"}
2:["$","code",null,{"className":"font-mono text-primary-fixed","children":"project-b"}]
3:["$","code",null,{"className":"font-mono text-primary-fixed","children":"repowire peer list"}]
4:["$","code",null,{"className":"font-mono text-primary-fixed","children":"project-a"}]
5:["$","div",null,{"className":"mt-3 border-l-2 border-primary/60 bg-surface-container-low p-4 font-mono text-sm leading-6 text-on-surface","children":"“Ask project-b what API endpoints they expose.”"}]
6:["$","p",null,{"className":"mt-3 text-sm leading-6 text-on-surface-variant","children":["The agent invokes Repowire's ",["$","code",null,{"className":"font-mono text-primary-fixed","children":"ask"}]," MCP tool with ",["$","code",null,{"className":"font-mono text-primary-fixed","children":"peer_name=\"project-b\""}],". Repowire is the mesh/tool surface here, not a standalone chat UI. ",["$","code",null,{"className":"font-mono text-primary-fixed","children":"project-b"}]," receives the question and acks back with ",["$","code",null,{"className":"font-mono text-primary-fixed","children":"ack(corr_id, \"...\")"}],". The reply lands in ",["$","code",null,{"className":"font-mono text-primary-fixed","children":"project-a"}]," as a notification framed ",["$","code",null,{"className":"font-mono text-primary-fixed","children":"[ack #cid from @project-b]"}],"."]}]
7:["$","div",null,{"className":"mt-12 border-t border-border-faint pt-8","children":[["$","div",null,{"className":"mb-3 font-mono text-[10px] font-semibold uppercase tracking-[0.2em] text-outline","children":"Next"}],["$","div",null,{"className":"grid gap-3 sm:grid-cols-2","children":[["$","$L9",null,{"href":"/docs/concepts","className":"group block border border-border-faint bg-surface-container-low p-4 transition-colors hover:bg-surface-container","children":[["$","div",null,{"className":"flex items-center justify-between gap-3","children":[["$","h3",null,{"className":"font-headline text-sm font-semibold text-on-surface","children":"Concepts"}],["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-arrow-right h-4 w-4 text-outline transition-colors group-hover:text-primary","aria-hidden":"true","children":[["$","path","1ays0h",{"d":"M5 12h14"}],["$","path","xquz4c",{"d":"m12 5 7 7-7 7"}],"$undefined"]}]]}],["$","p",null,{"className":"mt-2 text-xs leading-5 text-on-surface-variant","children":"Peers, circles, ask vs notify vs broadcast."}]]}],["$","$L9",null,{"href":"/docs/reference/tools","className":"group block border border-border-faint bg-surface-container-low p-4 transition-colors hover:bg-surface-container","children":[["$","div",null,{"className":"flex items-center justify-between gap-3","children":[["$","h3",null,{"className":"font-headline text-sm font-semibold text-on-surface","children":"MCP tools"}],["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-arrow-right h-4 w-4 text-outline transition-colors group-hover:text-primary","aria-hidden":"true","children":[["$","path","1ays0h",{"d":"M5 12h14"}],["$","path","xquz4c",{"d":"m12 5 7 7-7 7"}],"$undefined"]}]]}],["$","p",null,{"className":"mt-2 text-xs leading-5 text-on-surface-variant","children":"ask, ack, notify_peer, broadcast, and friends."}]]}]]}]]}]
8:["$","$La",null,{"children":["$","$b",null,{"name":"Next.MetadataOutlet","children":"$@c"}]}]
c:null
