@pasko70/pibo 1.9.10 → 1.9.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +183 -183
- package/context/codex-base-prompt.md +148 -148
- package/context/compute-worker.md +23 -23
- package/context/pibo-compaction-prompt.md +100 -100
- package/context/pibo-native-tooling.md +18 -18
- package/context/pibo-system-prompt.md +77 -77
- package/dist/apps/chat/agent-store.js +248 -248
- package/dist/apps/chat/data/project-service.js +168 -168
- package/dist/apps/chat/data/read-state-service.js +18 -18
- package/dist/apps/chat/data/session-query-service.js +25 -25
- package/dist/apps/chat/data/timeline-query-service.js +14 -14
- package/dist/apps/chat/static-assets.js +854 -854
- package/dist/apps/chat/web-app.js +63 -7
- package/dist/apps/chat/workflow-persistence.js +255 -255
- package/dist/apps/chat-ui/assets/{dist-BH4dS5wk.js → dist-BCB6zezO.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-ZN6fdzpB.js → dist-BHa-kcGl.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-qwl4CNfF.js → dist-BNMu92bb.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-BCqTb13C.js → dist-BZ2eTC4f.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-Ds5VZTeC.js → dist-CnVsqwSG.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-BXmdj7mb.js → dist-CzE6k3F3.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-CdhJkLlg.js → dist-D811wJeV.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-CDTTlyfG.js → dist-Dq4GxJi3.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-D7FSg1x8.js → dist-HqTN67dc.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-4VdcCJgh.js → dist-WyXdYl-w.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist--Sb99Zop.js → dist-yCYNNb5d.js} +1 -1
- package/dist/apps/chat-ui/assets/{index-Gf-Zb-P-.js → index-DwHJfmiF.js} +81 -81
- package/dist/apps/chat-ui/index.html +17 -17
- package/dist/apps/chat-ui/manifest.webmanifest +25 -25
- package/dist/apps/chat-ui/sw.js +47 -47
- package/dist/apps/chat-vscode-web/index.html +12 -12
- package/dist/apps/cli-ui/cliSessionsCommand.js +23 -23
- package/dist/apps/context-files-ui/index.html +11 -11
- package/dist/cli.js +39 -39
- package/dist/compute/cli.js +54 -54
- package/dist/core/session-router.js +7 -0
- package/dist/cron/cli.js +15 -15
- package/dist/cron/store.js +49 -49
- package/dist/data/cli.js +23 -23
- package/dist/data/event-log.js +23 -23
- package/dist/data/message-store.js +20 -20
- package/dist/data/navigation-store.js +9 -9
- package/dist/data/observation-store.js +4 -4
- package/dist/data/payload-store.js +17 -17
- package/dist/data/schema.js +431 -431
- package/dist/data/session-store.js +4 -4
- package/dist/data/telemetry-queries.js +54 -54
- package/dist/data/telemetry.js +197 -197
- package/dist/debug/events.js +12 -12
- package/dist/debug/failures.js +6 -6
- package/dist/debug/index.js +227 -227
- package/dist/debug/messages.js +6 -6
- package/dist/debug/pty.js +124 -124
- package/dist/debug/session.js +29 -29
- package/dist/debug/tools.js +5 -5
- package/dist/debug/web-snapshot-browser-scripts.js +294 -294
- package/dist/debug/web-streaming-browser-library.js +925 -925
- package/dist/debug/web-streaming-browser-scripts.js +232 -232
- package/dist/debug/web-streaming-provider-telemetry.js +4 -4
- package/dist/debug/web.js +93 -93
- package/dist/gateway/cli.js +19 -19
- package/dist/gateway/server.js +2 -0
- package/dist/mcp/config-command.js +53 -53
- package/dist/mcp/index.js +21 -21
- package/dist/mcp/registry.js +11 -11
- package/dist/pi-packages/cli.js +11 -11
- package/dist/plugins/context-files-store.js +110 -110
- package/dist/plugins/context-files.js +4 -4
- package/dist/ralph/cli.js +18 -18
- package/dist/ralph/templates.js +140 -140
- package/dist/reliability/store.js +226 -226
- package/dist/sessions/pibo-data-store.js +16 -16
- package/dist/sessions/sqlite-store.js +53 -53
- package/dist/setup/cli.js +58 -58
- package/dist/signals/registry.js +24 -1
- package/dist/signals/status.js +12 -0
- package/dist/tools/agent-browser-wrapper.js +80 -80
- package/dist/tools/browser-use-cdp.js +12 -12
- package/dist/tools/browser-use-wrapper.js +762 -762
- package/dist/tools/guides.js +538 -538
- package/dist/tools/index.js +99 -99
- package/dist/tools/runtime/node-worker-source.js +205 -205
- package/dist/tools/runtime/python-worker-source.js +177 -177
- package/dist/vscode/cli.js +9 -9
- package/dist/web-annotations/cdp.js +900 -900
- package/dist/web-annotations/store.js +96 -96
- package/docs/README.md +23 -23
- package/docs/ops/install-developer-host.md +112 -112
- package/docs/ops/install-user-host.md +96 -96
- package/docs/ops/upgrade-user-to-developer-host.md +69 -69
- package/docs/ops/vscode-extension-release.md +160 -160
- package/package.json +95 -95
- package/skills/builtin/graphify/SKILL.md +52 -52
- package/skills/builtin/pi-agent-harness/SKILL.md +319 -319
- package/skills/builtin/pi-agent-harness/agents/openai.yaml +4 -4
- package/skills/builtin/pibo-docker-system/SKILL.md +170 -170
- package/skills/builtin/pibo-spec-writing/SKILL.md +330 -330
- package/skills/builtin/prd/SKILL.md +143 -143
- package/skills/builtin/ralph-loop/SKILL.md +359 -359
- package/skills/builtin/ralph-prd-json/SKILL.md +123 -123
- package/skills/builtin/skill-creator/LICENSE.txt +201 -201
- package/skills/builtin/skill-creator/SKILL.md +513 -513
- package/skills/builtin/skill-creator/agents/analyzer.md +274 -274
- package/skills/builtin/skill-creator/agents/comparator.md +202 -202
- package/skills/builtin/skill-creator/agents/grader.md +223 -223
- package/skills/builtin/skill-creator/assets/eval_review.html +146 -146
- package/skills/builtin/skill-creator/eval-viewer/generate_review.py +471 -471
- package/skills/builtin/skill-creator/eval-viewer/viewer.html +1325 -1325
- package/skills/builtin/skill-creator/references/schemas.md +430 -430
- package/skills/builtin/skill-creator/scripts/aggregate_benchmark.py +401 -401
- package/skills/builtin/skill-creator/scripts/generate_report.py +326 -326
- package/skills/builtin/skill-creator/scripts/improve_description.py +247 -247
- package/skills/builtin/skill-creator/scripts/package_skill.py +136 -136
- package/skills/builtin/skill-creator/scripts/quick_validate.py +102 -102
- package/skills/builtin/skill-creator/scripts/run_eval.py +310 -310
- package/skills/builtin/skill-creator/scripts/run_loop.py +328 -328
- package/skills/builtin/skill-creator/scripts/utils.py +47 -47
- package/skills/builtin/web-annotations/SKILL.md +93 -93
- package/src/mcp/LICENSE.mcp-cli +21 -21
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { createHash, randomUUID } from "node:crypto";
|
|
2
2
|
import os from "node:os";
|
|
3
3
|
import { monitorEventLoopDelay } from "node:perf_hooks";
|
|
4
|
+
import { summarizeSessionSignalStatus } from "../../signals/status.js";
|
|
4
5
|
import { PiboWebHttpError, readJsonBody, responseJson } from "../../web/http.js";
|
|
5
6
|
import { OutputCompactor } from "./output-compactor.js";
|
|
6
7
|
import { isLiveOnlyOutputEvent, isPersistableOutputEvent } from "./output-event-policy.js";
|
|
@@ -112,6 +113,25 @@ function writeJsonSse(controller, event, payload, id) {
|
|
|
112
113
|
controller.enqueue(encoder.encode(`event: ${event}\n`));
|
|
113
114
|
controller.enqueue(encoder.encode(`data: ${JSON.stringify(payload)}\n\n`));
|
|
114
115
|
}
|
|
116
|
+
function compactSignalStatusPatch(patch) {
|
|
117
|
+
return {
|
|
118
|
+
type: "signal_status_patch",
|
|
119
|
+
rootPiboSessionId: patch.rootPiboSessionId,
|
|
120
|
+
fromVersion: patch.fromVersion,
|
|
121
|
+
toVersion: patch.toVersion,
|
|
122
|
+
generatedAt: patch.generatedAt,
|
|
123
|
+
sessionStatuses: patch.sessionSnapshots.map(summarizeSessionSignalStatus),
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
function signalSseHeaders() {
|
|
127
|
+
return {
|
|
128
|
+
"content-type": "text/event-stream; charset=utf-8",
|
|
129
|
+
"cache-control": "no-cache, no-transform",
|
|
130
|
+
"content-encoding": "identity",
|
|
131
|
+
"x-accel-buffering": "no",
|
|
132
|
+
connection: "keep-alive",
|
|
133
|
+
};
|
|
134
|
+
}
|
|
115
135
|
function requireSameOriginJsonRequest(request) {
|
|
116
136
|
requireSameOriginRequest(request, "application/json");
|
|
117
137
|
}
|
|
@@ -3511,6 +3531,48 @@ export function createChatWebApp(options = {}) {
|
|
|
3511
3531
|
const projectSession = archived === undefined ? state.projectService.getProjectSession(selectedSession.id) : state.projectService.setProjectSessionArchived(selectedSession.id, archived);
|
|
3512
3532
|
return responseJson({ session: updated, projectSession });
|
|
3513
3533
|
}
|
|
3534
|
+
if (url.pathname === `${CHAT_WEB_API_PREFIX}/signals/statuses` && request.method === "GET") {
|
|
3535
|
+
await requireSession(request, context);
|
|
3536
|
+
if (!context.channelContext.snapshotSignalStatuses) {
|
|
3537
|
+
throw new PiboWebHttpError("Signal registry is not available", 503);
|
|
3538
|
+
}
|
|
3539
|
+
return responseJson(context.channelContext.snapshotSignalStatuses());
|
|
3540
|
+
}
|
|
3541
|
+
if (url.pathname === `${CHAT_WEB_API_PREFIX}/signals/status-events` && request.method === "GET") {
|
|
3542
|
+
await requireSession(request, context);
|
|
3543
|
+
if (!context.channelContext.snapshotSignalStatuses || !context.channelContext.subscribeSignalStatuses) {
|
|
3544
|
+
throw new PiboWebHttpError("Signal registry is not available", 503);
|
|
3545
|
+
}
|
|
3546
|
+
let unsubscribe;
|
|
3547
|
+
let heartbeat;
|
|
3548
|
+
let closed = false;
|
|
3549
|
+
const stream = new ReadableStream({
|
|
3550
|
+
start: (controller) => {
|
|
3551
|
+
writeJsonSse(controller, "signal_status_snapshot", context.channelContext.snapshotSignalStatuses());
|
|
3552
|
+
unsubscribe = context.channelContext.subscribeSignalStatuses((patch) => {
|
|
3553
|
+
if (closed)
|
|
3554
|
+
return;
|
|
3555
|
+
const statusPatch = compactSignalStatusPatch(patch);
|
|
3556
|
+
writeJsonSse(controller, "signal_status_patch", statusPatch, `${patch.rootPiboSessionId}:${patch.toVersion}`);
|
|
3557
|
+
});
|
|
3558
|
+
heartbeat = setInterval(() => {
|
|
3559
|
+
if (!closed)
|
|
3560
|
+
writeSseComment(controller, "heartbeat");
|
|
3561
|
+
}, 25_000);
|
|
3562
|
+
},
|
|
3563
|
+
cancel: () => {
|
|
3564
|
+
closed = true;
|
|
3565
|
+
unsubscribe?.();
|
|
3566
|
+
unsubscribe = undefined;
|
|
3567
|
+
if (heartbeat)
|
|
3568
|
+
clearInterval(heartbeat);
|
|
3569
|
+
heartbeat = undefined;
|
|
3570
|
+
},
|
|
3571
|
+
});
|
|
3572
|
+
return new Response(stream, {
|
|
3573
|
+
headers: signalSseHeaders(),
|
|
3574
|
+
});
|
|
3575
|
+
}
|
|
3514
3576
|
const requestedSignal = signalResource(url.pathname);
|
|
3515
3577
|
if (requestedSignal && request.method === "GET") {
|
|
3516
3578
|
const webSession = await requireSession(request, context);
|
|
@@ -3550,13 +3612,7 @@ export function createChatWebApp(options = {}) {
|
|
|
3550
3612
|
},
|
|
3551
3613
|
});
|
|
3552
3614
|
return new Response(stream, {
|
|
3553
|
-
headers:
|
|
3554
|
-
"content-type": "text/event-stream; charset=utf-8",
|
|
3555
|
-
"cache-control": "no-cache, no-transform",
|
|
3556
|
-
"content-encoding": "identity",
|
|
3557
|
-
"x-accel-buffering": "no",
|
|
3558
|
-
connection: "keep-alive",
|
|
3559
|
-
},
|
|
3615
|
+
headers: signalSseHeaders(),
|
|
3560
3616
|
});
|
|
3561
3617
|
}
|
|
3562
3618
|
if (url.pathname === `${CHAT_WEB_API_PREFIX}/workflows` && request.method === "GET") {
|