@pasko70/pibo 1.9.2 → 1.9.4

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.
Files changed (120) hide show
  1. package/README.md +183 -183
  2. package/context/codex-base-prompt.md +148 -148
  3. package/context/compute-worker.md +23 -23
  4. package/context/pibo-compaction-prompt.md +100 -100
  5. package/context/pibo-native-tooling.md +18 -18
  6. package/context/pibo-system-prompt.md +77 -77
  7. package/dist/apps/chat/agent-store.js +248 -248
  8. package/dist/apps/chat/data/project-service.js +168 -168
  9. package/dist/apps/chat/data/read-state-service.js +18 -18
  10. package/dist/apps/chat/data/session-query-service.js +25 -25
  11. package/dist/apps/chat/data/timeline-query-service.js +14 -14
  12. package/dist/apps/chat/static-assets.js +854 -854
  13. package/dist/apps/chat/workflow-persistence.js +255 -255
  14. package/dist/apps/chat-ui/assets/{dist-CjYtD7ZT.js → dist-9a5adSX0.js} +1 -1
  15. package/dist/apps/chat-ui/assets/{dist-9lsp1UpA.js → dist-BJftG-mN.js} +1 -1
  16. package/dist/apps/chat-ui/assets/{dist-2KdPXbMT.js → dist-BmIDFlGO.js} +1 -1
  17. package/dist/apps/chat-ui/assets/{dist-BWbWIOcD.js → dist-CCNYUBAQ.js} +1 -1
  18. package/dist/apps/chat-ui/assets/{dist-Cge8JklW.js → dist-Cmr0ZAV7.js} +1 -1
  19. package/dist/apps/chat-ui/assets/{dist-DFhhiR8M.js → dist-Crc-B1sZ.js} +1 -1
  20. package/dist/apps/chat-ui/assets/{dist-5GM30SQK.js → dist-DHPwmWcR.js} +1 -1
  21. package/dist/apps/chat-ui/assets/{dist-C-5u2QIS.js → dist-U3lqQ0aI.js} +1 -1
  22. package/dist/apps/chat-ui/assets/{dist-Idz5kzy8.js → dist-_poCjCWK.js} +1 -1
  23. package/dist/apps/chat-ui/assets/{dist-Etxmpyxg.js → dist-ffW7mw39.js} +1 -1
  24. package/dist/apps/chat-ui/assets/{dist-BYKMZlI0.js → dist-w2d_3LSu.js} +1 -1
  25. package/dist/apps/chat-ui/assets/{index-BqD_bm7z.js → index-rXMhSu4U.js} +9 -9
  26. package/dist/apps/chat-ui/index.html +17 -17
  27. package/dist/apps/chat-ui/manifest.webmanifest +25 -25
  28. package/dist/apps/chat-ui/sw.js +47 -47
  29. package/dist/apps/chat-vscode-web/assets/index-BAMxIaI_.js +41 -0
  30. package/dist/apps/chat-vscode-web/index.html +13 -13
  31. package/dist/apps/cli-ui/cliSessionsCommand.js +23 -23
  32. package/dist/apps/context-files-ui/index.html +11 -11
  33. package/dist/cli.js +39 -39
  34. package/dist/compute/cli.js +54 -54
  35. package/dist/core/session-router.js +5 -2
  36. package/dist/cron/cli.js +15 -15
  37. package/dist/cron/store.js +49 -49
  38. package/dist/data/cli.js +23 -23
  39. package/dist/data/event-log.js +23 -23
  40. package/dist/data/message-store.js +20 -20
  41. package/dist/data/navigation-store.js +9 -9
  42. package/dist/data/observation-store.js +4 -4
  43. package/dist/data/payload-store.js +17 -17
  44. package/dist/data/schema.js +431 -431
  45. package/dist/data/session-store.js +4 -4
  46. package/dist/data/telemetry-queries.js +54 -54
  47. package/dist/data/telemetry.js +197 -197
  48. package/dist/debug/events.js +12 -12
  49. package/dist/debug/failures.js +6 -6
  50. package/dist/debug/index.js +227 -227
  51. package/dist/debug/messages.js +6 -6
  52. package/dist/debug/pty.js +124 -124
  53. package/dist/debug/session.js +29 -29
  54. package/dist/debug/tools.js +5 -5
  55. package/dist/debug/web-snapshot-browser-scripts.js +294 -294
  56. package/dist/debug/web-streaming-browser-library.js +925 -925
  57. package/dist/debug/web-streaming-browser-scripts.js +232 -232
  58. package/dist/debug/web-streaming-provider-telemetry.js +4 -4
  59. package/dist/debug/web.js +93 -93
  60. package/dist/gateway/cli.js +19 -19
  61. package/dist/mcp/config-command.js +53 -53
  62. package/dist/mcp/index.js +21 -21
  63. package/dist/mcp/registry.js +11 -11
  64. package/dist/pi-packages/cli.js +11 -11
  65. package/dist/plugins/context-files-store.js +110 -110
  66. package/dist/plugins/context-files.js +4 -4
  67. package/dist/ralph/cli.js +18 -18
  68. package/dist/ralph/templates.js +140 -140
  69. package/dist/reliability/store.js +226 -226
  70. package/dist/session-ui/sessionActivity.js +30 -0
  71. package/dist/sessions/pibo-data-store.js +16 -16
  72. package/dist/sessions/sqlite-store.js +53 -53
  73. package/dist/setup/cli.js +58 -58
  74. package/dist/signals/projector.js +26 -11
  75. package/dist/signals/registry.js +41 -0
  76. package/dist/tools/agent-browser-wrapper.js +80 -80
  77. package/dist/tools/browser-use-cdp.js +12 -12
  78. package/dist/tools/browser-use-wrapper.js +762 -762
  79. package/dist/tools/guides.js +538 -538
  80. package/dist/tools/index.js +99 -99
  81. package/dist/tools/runtime/node-worker-source.js +205 -205
  82. package/dist/tools/runtime/python-worker-source.js +177 -177
  83. package/dist/vscode/cli.js +9 -9
  84. package/dist/web-annotations/cdp.js +900 -900
  85. package/dist/web-annotations/store.js +96 -96
  86. package/docs/README.md +23 -23
  87. package/docs/ops/install-developer-host.md +112 -112
  88. package/docs/ops/install-user-host.md +96 -96
  89. package/docs/ops/upgrade-user-to-developer-host.md +69 -69
  90. package/docs/ops/vscode-extension-release.md +160 -160
  91. package/package.json +95 -95
  92. package/skills/builtin/graphify/SKILL.md +52 -52
  93. package/skills/builtin/pi-agent-harness/SKILL.md +319 -319
  94. package/skills/builtin/pi-agent-harness/agents/openai.yaml +4 -4
  95. package/skills/builtin/pibo-docker-system/SKILL.md +170 -170
  96. package/skills/builtin/pibo-spec-writing/SKILL.md +330 -330
  97. package/skills/builtin/prd/SKILL.md +143 -143
  98. package/skills/builtin/ralph-loop/SKILL.md +359 -359
  99. package/skills/builtin/ralph-prd-json/SKILL.md +123 -123
  100. package/skills/builtin/skill-creator/LICENSE.txt +201 -201
  101. package/skills/builtin/skill-creator/SKILL.md +513 -513
  102. package/skills/builtin/skill-creator/agents/analyzer.md +274 -274
  103. package/skills/builtin/skill-creator/agents/comparator.md +202 -202
  104. package/skills/builtin/skill-creator/agents/grader.md +223 -223
  105. package/skills/builtin/skill-creator/assets/eval_review.html +146 -146
  106. package/skills/builtin/skill-creator/eval-viewer/generate_review.py +471 -471
  107. package/skills/builtin/skill-creator/eval-viewer/viewer.html +1325 -1325
  108. package/skills/builtin/skill-creator/references/schemas.md +430 -430
  109. package/skills/builtin/skill-creator/scripts/aggregate_benchmark.py +401 -401
  110. package/skills/builtin/skill-creator/scripts/generate_report.py +326 -326
  111. package/skills/builtin/skill-creator/scripts/improve_description.py +247 -247
  112. package/skills/builtin/skill-creator/scripts/package_skill.py +136 -136
  113. package/skills/builtin/skill-creator/scripts/quick_validate.py +102 -102
  114. package/skills/builtin/skill-creator/scripts/run_eval.py +310 -310
  115. package/skills/builtin/skill-creator/scripts/run_loop.py +328 -328
  116. package/skills/builtin/skill-creator/scripts/utils.py +47 -47
  117. package/skills/builtin/web-annotations/SKILL.md +93 -93
  118. package/src/mcp/LICENSE.mcp-cli +21 -21
  119. package/dist/apps/chat-vscode-web/assets/index-Cst9OUkC.js +0 -41
  120. package/dist/session-ui/activeTurn.js +0 -126
@@ -47,10 +47,10 @@ export class SessionStore {
47
47
  "updated_at = excluded.updated_at",
48
48
  "last_activity_at = excluded.last_activity_at",
49
49
  ];
50
- this.db.prepare(`
51
- INSERT INTO sessions (${baseColumns.join(", ")})
52
- VALUES (${baseColumns.map(() => "?").join(", ")})
53
- ON CONFLICT(id) DO UPDATE SET ${assignments.join(", ")}
50
+ this.db.prepare(`
51
+ INSERT INTO sessions (${baseColumns.join(", ")})
52
+ VALUES (${baseColumns.map(() => "?").join(", ")})
53
+ ON CONFLICT(id) DO UPDATE SET ${assignments.join(", ")}
54
54
  `).run(...values);
55
55
  }
56
56
  }
@@ -6,15 +6,15 @@ export function listTelemetrySessions(db, input = {}) {
6
6
  const limit = normalizeTelemetryListLimit(input.limit);
7
7
  const nowMs = Date.parse(input.now ?? new Date().toISOString());
8
8
  const thresholdMs = input.thresholdMs ?? DEFAULT_STALE_THRESHOLD_MS;
9
- const rows = db.prepare(`
10
- SELECT t.*, counts.turn_count AS turn_count FROM telemetry_turns t
11
- JOIN (
12
- SELECT pibo_session_id, MAX(updated_at) AS max_updated, COUNT(*) AS turn_count
13
- FROM telemetry_turns
14
- GROUP BY pibo_session_id
15
- ) counts ON counts.pibo_session_id = t.pibo_session_id AND counts.max_updated = t.updated_at
16
- ORDER BY t.updated_at DESC
17
- LIMIT ?
9
+ const rows = db.prepare(`
10
+ SELECT t.*, counts.turn_count AS turn_count FROM telemetry_turns t
11
+ JOIN (
12
+ SELECT pibo_session_id, MAX(updated_at) AS max_updated, COUNT(*) AS turn_count
13
+ FROM telemetry_turns
14
+ GROUP BY pibo_session_id
15
+ ) counts ON counts.pibo_session_id = t.pibo_session_id AND counts.max_updated = t.updated_at
16
+ ORDER BY t.updated_at DESC
17
+ LIMIT ?
18
18
  `).all(limit);
19
19
  return rows.map((row) => telemetrySessionSummaryFromTurnRow(db, row, Number(row.turn_count), nowMs, thresholdMs));
20
20
  }
@@ -41,11 +41,11 @@ export function getTelemetryTurnTimeline(db, turnIdOrEventId, input = {}) {
41
41
  if (!turn)
42
42
  return undefined;
43
43
  const limit = normalizeTelemetryListLimit(input.limit);
44
- const phaseRows = db.prepare(`
45
- SELECT * FROM telemetry_phases
46
- WHERE turn_id = ?
47
- ORDER BY started_at ASC, created_at ASC
48
- LIMIT ?
44
+ const phaseRows = db.prepare(`
45
+ SELECT * FROM telemetry_phases
46
+ WHERE turn_id = ?
47
+ ORDER BY started_at ASC, created_at ASC
48
+ LIMIT ?
49
49
  `).all(turn.turnId, limit);
50
50
  const phases = phaseRows.map(phaseFromRow);
51
51
  const providerRequests = listTelemetryProviderRequestsForTurn(db, turn.turnId, input);
@@ -61,11 +61,11 @@ export function getTelemetryTurnTimeline(db, turnIdOrEventId, input = {}) {
61
61
  export function listTelemetryProviderEventsPage(db, providerRequestId, input = {}) {
62
62
  const limit = normalizeTelemetryListLimit(input.limit);
63
63
  const afterSequence = input.afterSequence ?? -1;
64
- const rows = db.prepare(`
65
- SELECT * FROM telemetry_provider_events
66
- WHERE provider_request_id = ? AND sequence > ?
67
- ORDER BY sequence ASC
68
- LIMIT ?
64
+ const rows = db.prepare(`
65
+ SELECT * FROM telemetry_provider_events
66
+ WHERE provider_request_id = ? AND sequence > ?
67
+ ORDER BY sequence ASC
68
+ LIMIT ?
69
69
  `).all(providerRequestId, afterSequence, limit + 1);
70
70
  const hasMore = rows.length > limit;
71
71
  const pageRows = rows.slice(0, limit).map(providerEventFromRow);
@@ -84,11 +84,11 @@ export function listTelemetryStaleWork(db, input = {}) {
84
84
  const limit = normalizeTelemetryListLimit(input.limit);
85
85
  const thresholdMs = input.thresholdMs ?? DEFAULT_STALE_THRESHOLD_MS;
86
86
  const nowMs = Date.parse(input.now ?? new Date().toISOString());
87
- const rows = db.prepare(`
88
- SELECT * FROM telemetry_phases
89
- WHERE status = 'open'
90
- ORDER BY COALESCE(last_progress_at, started_at) ASC
91
- LIMIT ?
87
+ const rows = db.prepare(`
88
+ SELECT * FROM telemetry_phases
89
+ WHERE status = 'open'
90
+ ORDER BY COALESCE(last_progress_at, started_at) ASC
91
+ LIMIT ?
92
92
  `).all(MAX_TELEMETRY_LIST_LIMIT);
93
93
  return rows.map(phaseFromRow)
94
94
  .map((phase) => {
@@ -117,56 +117,56 @@ function getTelemetryTurn(db, turnId) {
117
117
  }
118
118
  function listTelemetryTurnsForSession(db, piboSessionId, input = {}) {
119
119
  const limit = normalizeTelemetryListLimit(input.limit);
120
- const rows = db.prepare(`
121
- SELECT * FROM telemetry_turns
122
- WHERE pibo_session_id = ?
123
- ORDER BY updated_at DESC
124
- LIMIT ?
120
+ const rows = db.prepare(`
121
+ SELECT * FROM telemetry_turns
122
+ WHERE pibo_session_id = ?
123
+ ORDER BY updated_at DESC
124
+ LIMIT ?
125
125
  `).all(piboSessionId, limit);
126
126
  return rows.map(turnFromRow);
127
127
  }
128
128
  function getTelemetryTurnByEventId(db, eventId) {
129
- const row = db.prepare(`
130
- SELECT * FROM telemetry_turns
131
- WHERE event_id = ? OR input_event_id = ?
132
- ORDER BY updated_at DESC
133
- LIMIT 1
129
+ const row = db.prepare(`
130
+ SELECT * FROM telemetry_turns
131
+ WHERE event_id = ? OR input_event_id = ?
132
+ ORDER BY updated_at DESC
133
+ LIMIT 1
134
134
  `).get(eventId, eventId);
135
135
  return row ? turnFromRow(row) : undefined;
136
136
  }
137
137
  function getTelemetryActivePhaseForSession(db, piboSessionId, turnId) {
138
138
  const row = turnId
139
- ? db.prepare(`
140
- SELECT * FROM telemetry_phases
141
- WHERE pibo_session_id = ? AND turn_id = ? AND status = 'open'
142
- ORDER BY COALESCE(last_progress_at, started_at) DESC
143
- LIMIT 1
139
+ ? db.prepare(`
140
+ SELECT * FROM telemetry_phases
141
+ WHERE pibo_session_id = ? AND turn_id = ? AND status = 'open'
142
+ ORDER BY COALESCE(last_progress_at, started_at) DESC
143
+ LIMIT 1
144
144
  `).get(piboSessionId, turnId)
145
- : db.prepare(`
146
- SELECT * FROM telemetry_phases
147
- WHERE pibo_session_id = ? AND status = 'open'
148
- ORDER BY COALESCE(last_progress_at, started_at) DESC
149
- LIMIT 1
145
+ : db.prepare(`
146
+ SELECT * FROM telemetry_phases
147
+ WHERE pibo_session_id = ? AND status = 'open'
148
+ ORDER BY COALESCE(last_progress_at, started_at) DESC
149
+ LIMIT 1
150
150
  `).get(piboSessionId);
151
151
  return row ? phaseFromRow(row) : undefined;
152
152
  }
153
153
  function listTelemetryProviderRequestsForTurn(db, turnId, input = {}) {
154
154
  const limit = normalizeTelemetryListLimit(input.limit);
155
- const rows = db.prepare(`
156
- SELECT * FROM telemetry_provider_requests
157
- WHERE turn_id = ?
158
- ORDER BY started_at ASC
159
- LIMIT ?
155
+ const rows = db.prepare(`
156
+ SELECT * FROM telemetry_provider_requests
157
+ WHERE turn_id = ?
158
+ ORDER BY started_at ASC
159
+ LIMIT ?
160
160
  `).all(turnId, limit);
161
161
  return rows.map(providerRequestFromRow);
162
162
  }
163
163
  function listTelemetryToolCallsForTurn(db, turnId, input = {}) {
164
164
  const limit = normalizeTelemetryListLimit(input.limit);
165
- const rows = db.prepare(`
166
- SELECT * FROM telemetry_tool_calls
167
- WHERE turn_id = ?
168
- ORDER BY COALESCE(args_started_at, created_at) ASC
169
- LIMIT ?
165
+ const rows = db.prepare(`
166
+ SELECT * FROM telemetry_tool_calls
167
+ WHERE turn_id = ?
168
+ ORDER BY COALESCE(args_started_at, created_at) ASC
169
+ LIMIT ?
170
170
  `).all(turnId, limit);
171
171
  return rows.map(toolCallFromRow);
172
172
  }