mirror of
https://github.com/badlogic/pi-mono.git
synced 2026-11-05 23:37:25 +00:00
A manager on the p2 server owns every MCP connection and process. Session workers hold one view each and lease the locations their conversations work at; the manager runs the owner's mcp.json servers there (stdio per session and location, or shared; HTTP shared by default) and offers their tools as deferred Durable tools found through tool_search. Stdio servers on an environment start through its pi-env daemon, one connection per environment shared by its instances, through cmd.exe on Windows. A project's .pi/mcp.json, read by the worker at each location, may add stdio servers that run there and switch the owner's servers on or off; the manager refuses everything else. A lease gets servers only on environments its session works on.
49 lines
1.5 KiB
JSON
49 lines
1.5 KiB
JSON
{
|
|
"name": "p2",
|
|
"version": "0.0.1",
|
|
"private": true,
|
|
"type": "module",
|
|
"scripts": {
|
|
"start": "node --import ./src/source.ts src/hosts/server.ts",
|
|
"dev": "node --import ./src/source.ts scripts/dev.mjs",
|
|
"reload": "node --import ./src/source.ts scripts/reload.mjs",
|
|
"owner-link": "node --import ./src/source.ts scripts/owner-link.ts",
|
|
"radius:login": "node --import ./src/source.ts plugins/radius/login.ts",
|
|
"check": "node ../../scripts/biome-check.mjs && tsc --noEmit",
|
|
"format": "node ../../scripts/biome-check.mjs --write",
|
|
"test": "node --import ./src/source.ts --test --test-concurrency=1 test/**/*.test.ts",
|
|
"tui": "node --import ./src/source.ts src/hosts/tui.ts"
|
|
},
|
|
"engines": {
|
|
"node": ">=22.19.0"
|
|
},
|
|
"dependencies": {
|
|
"@earendil-works/chord": "1.5.0",
|
|
"@earendil-works/pi-ai": "1.5.0",
|
|
"@earendil-works/pi-codemode": "1.5.0",
|
|
"@earendil-works/pi-durable": "1.5.0",
|
|
"@earendil-works/pi-env": "1.5.0",
|
|
"@earendil-works/pi-mcp": "1.5.0",
|
|
"@earendil-works/pi-schema": "1.5.0",
|
|
"diff": "8.0.4",
|
|
"esbuild": "0.28.2",
|
|
"grok-mermaid": "0.2.3",
|
|
"lowlight": "3.3.0",
|
|
"marked": "18.0.14",
|
|
"proper-lockfile": "4.1.2",
|
|
"react": "19.3.0",
|
|
"react-dom": "19.3.0",
|
|
"undici": "8.12.3",
|
|
"ws": "8.21.0",
|
|
"yaml": "2.9.1",
|
|
"@earendil-works/pi-tui": "1.5.0"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "22.19.19",
|
|
"@types/proper-lockfile": "4.1.4",
|
|
"@types/react": "19.2.14",
|
|
"@types/react-dom": "19.2.3",
|
|
"@types/ws": "8.18.2",
|
|
"typescript": "5.9.3"
|
|
}
|
|
}
|