@pasko70/pibo 1.9.8 → 1.9.10

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 (101) 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/index.html +16 -16
  15. package/dist/apps/chat-ui/manifest.webmanifest +25 -25
  16. package/dist/apps/chat-ui/sw.js +47 -47
  17. package/dist/apps/chat-vscode-web/index.html +12 -12
  18. package/dist/apps/cli-ui/cliSessionsCommand.js +23 -23
  19. package/dist/apps/context-files-ui/index.html +11 -11
  20. package/dist/cli.js +39 -39
  21. package/dist/compute/cli.js +54 -54
  22. package/dist/cron/cli.js +15 -15
  23. package/dist/cron/store.js +49 -49
  24. package/dist/data/cli.js +23 -23
  25. package/dist/data/event-log.js +23 -23
  26. package/dist/data/message-store.js +20 -20
  27. package/dist/data/navigation-store.js +9 -9
  28. package/dist/data/observation-store.js +4 -4
  29. package/dist/data/payload-store.js +17 -17
  30. package/dist/data/schema.js +431 -431
  31. package/dist/data/session-store.js +4 -4
  32. package/dist/data/telemetry-queries.js +54 -54
  33. package/dist/data/telemetry.js +197 -197
  34. package/dist/debug/events.js +12 -12
  35. package/dist/debug/failures.js +6 -6
  36. package/dist/debug/index.js +227 -227
  37. package/dist/debug/messages.js +6 -6
  38. package/dist/debug/pty.js +124 -124
  39. package/dist/debug/session.js +29 -29
  40. package/dist/debug/tools.js +5 -5
  41. package/dist/debug/web-snapshot-browser-scripts.js +294 -294
  42. package/dist/debug/web-streaming-browser-library.js +925 -925
  43. package/dist/debug/web-streaming-browser-scripts.js +232 -232
  44. package/dist/debug/web-streaming-provider-telemetry.js +4 -4
  45. package/dist/debug/web.js +93 -93
  46. package/dist/gateway/cli.js +19 -19
  47. package/dist/mcp/config-command.js +53 -53
  48. package/dist/mcp/index.js +21 -21
  49. package/dist/mcp/registry.js +11 -11
  50. package/dist/pi-packages/cli.js +11 -11
  51. package/dist/plugins/context-files-store.js +110 -110
  52. package/dist/plugins/context-files.js +4 -4
  53. package/dist/ralph/cli.js +18 -18
  54. package/dist/ralph/templates.js +140 -140
  55. package/dist/reliability/store.js +226 -226
  56. package/dist/sessions/pibo-data-store.js +16 -16
  57. package/dist/sessions/sqlite-store.js +53 -53
  58. package/dist/setup/cli.js +58 -58
  59. package/dist/tools/agent-browser-wrapper.js +80 -80
  60. package/dist/tools/browser-use-cdp.js +12 -12
  61. package/dist/tools/browser-use-wrapper.js +762 -762
  62. package/dist/tools/guides.js +538 -538
  63. package/dist/tools/index.js +99 -99
  64. package/dist/tools/runtime/node-worker-source.js +205 -205
  65. package/dist/tools/runtime/python-worker-source.js +177 -177
  66. package/dist/vscode/cli.js +9 -9
  67. package/dist/web-annotations/cdp.js +900 -900
  68. package/dist/web-annotations/store.js +96 -96
  69. package/docs/README.md +23 -23
  70. package/docs/ops/install-developer-host.md +112 -112
  71. package/docs/ops/install-user-host.md +96 -96
  72. package/docs/ops/upgrade-user-to-developer-host.md +69 -69
  73. package/docs/ops/vscode-extension-release.md +160 -160
  74. package/package.json +95 -95
  75. package/skills/builtin/graphify/SKILL.md +52 -52
  76. package/skills/builtin/pi-agent-harness/SKILL.md +319 -319
  77. package/skills/builtin/pi-agent-harness/agents/openai.yaml +4 -4
  78. package/skills/builtin/pibo-docker-system/SKILL.md +170 -170
  79. package/skills/builtin/pibo-spec-writing/SKILL.md +330 -330
  80. package/skills/builtin/prd/SKILL.md +143 -143
  81. package/skills/builtin/ralph-loop/SKILL.md +359 -359
  82. package/skills/builtin/ralph-prd-json/SKILL.md +123 -123
  83. package/skills/builtin/skill-creator/LICENSE.txt +201 -201
  84. package/skills/builtin/skill-creator/SKILL.md +513 -513
  85. package/skills/builtin/skill-creator/agents/analyzer.md +274 -274
  86. package/skills/builtin/skill-creator/agents/comparator.md +202 -202
  87. package/skills/builtin/skill-creator/agents/grader.md +223 -223
  88. package/skills/builtin/skill-creator/assets/eval_review.html +146 -146
  89. package/skills/builtin/skill-creator/eval-viewer/generate_review.py +471 -471
  90. package/skills/builtin/skill-creator/eval-viewer/viewer.html +1325 -1325
  91. package/skills/builtin/skill-creator/references/schemas.md +430 -430
  92. package/skills/builtin/skill-creator/scripts/aggregate_benchmark.py +401 -401
  93. package/skills/builtin/skill-creator/scripts/generate_report.py +326 -326
  94. package/skills/builtin/skill-creator/scripts/improve_description.py +247 -247
  95. package/skills/builtin/skill-creator/scripts/package_skill.py +136 -136
  96. package/skills/builtin/skill-creator/scripts/quick_validate.py +102 -102
  97. package/skills/builtin/skill-creator/scripts/run_eval.py +310 -310
  98. package/skills/builtin/skill-creator/scripts/run_loop.py +328 -328
  99. package/skills/builtin/skill-creator/scripts/utils.py +47 -47
  100. package/skills/builtin/web-annotations/SKILL.md +93 -93
  101. package/src/mcp/LICENSE.mcp-cli +21 -21
@@ -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
  }