@pasko70/pibo 1.9.13 → 1.10.0

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 (139) 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-profiles.js +2 -2
  8. package/dist/apps/chat/agent-store.js +263 -250
  9. package/dist/apps/chat/chat-request-normalizers.js +10 -0
  10. package/dist/apps/chat/data/project-service.js +168 -168
  11. package/dist/apps/chat/data/read-state-service.js +18 -18
  12. package/dist/apps/chat/data/session-query-service.js +25 -25
  13. package/dist/apps/chat/data/timeline-query-service.js +19 -19
  14. package/dist/apps/chat/loop-api.js +176 -0
  15. package/dist/apps/chat/static-assets.js +854 -854
  16. package/dist/apps/chat/web-app.js +6 -6
  17. package/dist/apps/chat/workflow-manual-trigger-runtime.js +149 -46
  18. package/dist/apps/chat/workflow-persistence.js +255 -255
  19. package/dist/apps/chat-ui/assets/{dist-yCYNNb5d.js → dist-BwKObYnX.js} +1 -1
  20. package/dist/apps/chat-ui/assets/{dist-BCB6zezO.js → dist-CKtT8YGm.js} +1 -1
  21. package/dist/apps/chat-ui/assets/{dist-CnVsqwSG.js → dist-CS7wdk0Z.js} +1 -1
  22. package/dist/apps/chat-ui/assets/{dist-HqTN67dc.js → dist-D-cxLQO1.js} +1 -1
  23. package/dist/apps/chat-ui/assets/{dist-BNMu92bb.js → dist-DUlaXAk7.js} +1 -1
  24. package/dist/apps/chat-ui/assets/{dist-CzE6k3F3.js → dist-DlATLa-U.js} +1 -1
  25. package/dist/apps/chat-ui/assets/{dist-Dq4GxJi3.js → dist-GdEM8UW1.js} +1 -1
  26. package/dist/apps/chat-ui/assets/{dist-BZ2eTC4f.js → dist-LHRs1Nhr.js} +1 -1
  27. package/dist/apps/chat-ui/assets/{dist-D811wJeV.js → dist-Y-AA2omI.js} +1 -1
  28. package/dist/apps/chat-ui/assets/{dist-WyXdYl-w.js → dist-nOLTkZrJ.js} +1 -1
  29. package/dist/apps/chat-ui/assets/{dist-BHa-kcGl.js → dist-wE9nop9V.js} +1 -1
  30. package/dist/apps/chat-ui/assets/{index-DwHJfmiF.js → index-8W_yMHQI.js} +6 -6
  31. package/dist/apps/chat-ui/index.html +17 -17
  32. package/dist/apps/chat-ui/manifest.webmanifest +25 -25
  33. package/dist/apps/chat-ui/sw.js +47 -47
  34. package/dist/apps/chat-vscode-web/index.html +12 -12
  35. package/dist/apps/cli-ui/cliSessionsCommand.js +23 -23
  36. package/dist/apps/context-files-ui/index.html +11 -11
  37. package/dist/cli.js +61 -44
  38. package/dist/compute/cli.js +54 -54
  39. package/dist/core/routed-session.js +30 -1
  40. package/dist/core/runtime.js +6 -1
  41. package/dist/core/session-router.js +4 -2
  42. package/dist/cron/cli.js +15 -15
  43. package/dist/cron/store.js +49 -49
  44. package/dist/data/cli.js +23 -23
  45. package/dist/data/event-log.js +23 -23
  46. package/dist/data/message-store.js +27 -27
  47. package/dist/data/navigation-store.js +9 -9
  48. package/dist/data/observation-store.js +4 -4
  49. package/dist/data/payload-store.js +17 -17
  50. package/dist/data/schema.js +433 -433
  51. package/dist/data/session-store.js +4 -4
  52. package/dist/data/telemetry-queries.js +54 -54
  53. package/dist/data/telemetry.js +197 -197
  54. package/dist/debug/events.js +12 -12
  55. package/dist/debug/failures.js +6 -6
  56. package/dist/debug/index.js +227 -227
  57. package/dist/debug/messages.js +6 -6
  58. package/dist/debug/pty.js +124 -124
  59. package/dist/debug/session.js +29 -29
  60. package/dist/debug/tools.js +5 -5
  61. package/dist/debug/web-snapshot-browser-scripts.js +294 -294
  62. package/dist/debug/web-streaming-browser-library.js +925 -925
  63. package/dist/debug/web-streaming-browser-scripts.js +232 -232
  64. package/dist/debug/web-streaming-provider-telemetry.js +4 -4
  65. package/dist/debug/web.js +93 -93
  66. package/dist/gateway/cli.js +19 -19
  67. package/dist/gateway/server.js +4 -2
  68. package/dist/gateway/web.js +2 -2
  69. package/dist/loops/channel.js +8 -0
  70. package/dist/loops/cli.js +208 -0
  71. package/dist/loops/plugin.js +16 -0
  72. package/dist/loops/prompts.js +83 -0
  73. package/dist/loops/service.js +357 -0
  74. package/dist/loops/stopping.js +170 -0
  75. package/dist/loops/store.js +531 -0
  76. package/dist/loops/templates.js +232 -0
  77. package/dist/loops/tools.js +167 -0
  78. package/dist/loops/types.js +1 -0
  79. package/dist/mcp/config-command.js +53 -53
  80. package/dist/mcp/index.js +21 -21
  81. package/dist/mcp/registry.js +11 -11
  82. package/dist/pi-packages/cli.js +11 -11
  83. package/dist/plugins/builtin.js +8 -0
  84. package/dist/plugins/context-files-store.js +110 -110
  85. package/dist/plugins/context-files.js +4 -4
  86. package/dist/plugins/registry.js +23 -12
  87. package/dist/ralph/cli.js +18 -18
  88. package/dist/ralph/templates.js +140 -140
  89. package/dist/reliability/store.js +226 -226
  90. package/dist/sessions/pibo-data-store.js +16 -16
  91. package/dist/sessions/sqlite-store.js +53 -53
  92. package/dist/setup/cli.js +58 -58
  93. package/dist/tools/agent-browser-wrapper.js +80 -80
  94. package/dist/tools/browser-use-cdp.js +12 -12
  95. package/dist/tools/browser-use-wrapper.js +762 -762
  96. package/dist/tools/guides.js +589 -538
  97. package/dist/tools/index.js +122 -99
  98. package/dist/tools/registry.js +21 -3
  99. package/dist/tools/runtime/node-worker-source.js +205 -205
  100. package/dist/tools/runtime/python-worker-source.js +177 -177
  101. package/dist/vscode/cli.js +9 -9
  102. package/dist/web-annotations/cdp.js +900 -900
  103. package/dist/web-annotations/store.js +96 -96
  104. package/docs/README.md +23 -23
  105. package/docs/ops/install-developer-host.md +112 -112
  106. package/docs/ops/install-user-host.md +96 -96
  107. package/docs/ops/upgrade-user-to-developer-host.md +69 -69
  108. package/docs/ops/vscode-extension-release.md +160 -160
  109. package/package.json +98 -95
  110. package/skills/builtin/graphify/SKILL.md +52 -52
  111. package/skills/builtin/loop/SKILL.md +69 -0
  112. package/skills/builtin/pi-agent-harness/SKILL.md +319 -319
  113. package/skills/builtin/pi-agent-harness/agents/openai.yaml +4 -4
  114. package/skills/builtin/pibo-docker-system/SKILL.md +170 -170
  115. package/skills/builtin/pibo-spec-writing/SKILL.md +330 -330
  116. package/skills/builtin/prd/SKILL.md +143 -143
  117. package/skills/builtin/ralph-loop/SKILL.md +361 -359
  118. package/skills/builtin/ralph-prd-json/SKILL.md +123 -123
  119. package/skills/builtin/skill-creator/LICENSE.txt +201 -201
  120. package/skills/builtin/skill-creator/SKILL.md +513 -513
  121. package/skills/builtin/skill-creator/agents/analyzer.md +274 -274
  122. package/skills/builtin/skill-creator/agents/comparator.md +202 -202
  123. package/skills/builtin/skill-creator/agents/grader.md +223 -223
  124. package/skills/builtin/skill-creator/assets/eval_review.html +146 -146
  125. package/skills/builtin/skill-creator/eval-viewer/generate_review.py +471 -471
  126. package/skills/builtin/skill-creator/eval-viewer/viewer.html +1325 -1325
  127. package/skills/builtin/skill-creator/references/schemas.md +430 -430
  128. package/skills/builtin/skill-creator/scripts/aggregate_benchmark.py +401 -401
  129. package/skills/builtin/skill-creator/scripts/generate_report.py +326 -326
  130. package/skills/builtin/skill-creator/scripts/improve_description.py +247 -247
  131. package/skills/builtin/skill-creator/scripts/package_skill.py +136 -136
  132. package/skills/builtin/skill-creator/scripts/quick_validate.py +102 -102
  133. package/skills/builtin/skill-creator/scripts/run_eval.py +310 -310
  134. package/skills/builtin/skill-creator/scripts/run_loop.py +328 -328
  135. package/skills/builtin/skill-creator/scripts/utils.py +47 -47
  136. package/skills/builtin/web-annotations/SKILL.md +93 -93
  137. package/src/mcp/LICENSE.mcp-cli +21 -21
  138. package/dist/apps/vscode-artifacts/latest.vsix +0 -0
  139. package/dist/apps/vscode-artifacts/pibo-vscode-ext-1.9.13.vsix +0 -0
@@ -97,6 +97,10 @@ function printShow(name) {
97
97
  if (entry.name === 'agent-browser') {
98
98
  console.log(' pibo tools agent-browser');
99
99
  }
100
+ if (entry.name === 'loop') {
101
+ console.log(' pibo tools loop');
102
+ console.log(' pibo loop templates');
103
+ }
100
104
  if (entry.name === 'ralph') {
101
105
  console.log(' pibo tools ralph');
102
106
  console.log(' pibo ralph templates');
@@ -202,31 +206,31 @@ function parseNonNegativeInteger(value) {
202
206
  return parsed;
203
207
  }
204
208
  function printBrowserUseDiscovery() {
205
- console.log(`pibo tools browser-use - browser-use helpers
206
-
207
- Start:
208
- eval "$(pibo tools env browser-use)"
209
-
210
- Commands:
211
- targets List Chrome CDP targets with Chat auth hints
212
- attach-chat Export the best existing authenticated Chat target
213
- auth-template path Print the default authenticated template profile path
214
- auth-template env Print shell exports for preparing the auth template profile
215
- lease acquire Acquire an isolated authenticated browser slot
216
- lease list List authenticated browser slots
217
- lease release <id> Release one browser slot
218
- lease reap-stale Release expired or dead browser slots
219
- pool status Show read-only managed browser-pool status
220
- pool reap Reap an idle managed browser pool
221
- health Check browser-use health and report issues
222
-
223
- Next:
224
- pibo tools show browser-use
225
- pibo tools guide browser-use browser-use
226
- pibo tools browser-use targets
227
- pibo tools browser-use auth-template env
228
- pibo tools browser-use lease acquire
229
- pibo tools browser-use pool status
209
+ console.log(`pibo tools browser-use - browser-use helpers
210
+
211
+ Start:
212
+ eval "$(pibo tools env browser-use)"
213
+
214
+ Commands:
215
+ targets List Chrome CDP targets with Chat auth hints
216
+ attach-chat Export the best existing authenticated Chat target
217
+ auth-template path Print the default authenticated template profile path
218
+ auth-template env Print shell exports for preparing the auth template profile
219
+ lease acquire Acquire an isolated authenticated browser slot
220
+ lease list List authenticated browser slots
221
+ lease release <id> Release one browser slot
222
+ lease reap-stale Release expired or dead browser slots
223
+ pool status Show read-only managed browser-pool status
224
+ pool reap Reap an idle managed browser pool
225
+ health Check browser-use health and report issues
226
+
227
+ Next:
228
+ pibo tools show browser-use
229
+ pibo tools guide browser-use browser-use
230
+ pibo tools browser-use targets
231
+ pibo tools browser-use auth-template env
232
+ pibo tools browser-use lease acquire
233
+ pibo tools browser-use pool status
230
234
  pibo tools browser-use pool reap --json`);
231
235
  }
232
236
  function getBrowserPoolStatusIdentity(options) {
@@ -577,62 +581,77 @@ async function printBrowserUseHealth(status, json = false) {
577
581
  }
578
582
  }
579
583
  function printAgentBrowserDiscovery() {
580
- console.log(`pibo tools agent-browser - Agent Browser helpers
581
-
582
- Start:
583
- eval "$(pibo tools env agent-browser)"
584
-
585
- Commands:
586
- health Check Agent Browser health and report issues
587
- sessions List upstream Agent Browser sessions
588
- targets List Chrome CDP targets with Chat auth hints
589
- attach-chat Export the best existing authenticated Chat target
590
- auth-template path Print the default authenticated template profile path
591
- auth-template env Print shell exports for preparing the auth template profile
592
- lease acquire Acquire an isolated authenticated browser slot
593
- lease list List authenticated browser slots
594
- lease release <id> Release one browser slot
595
- lease reap-stale Release expired browser slots
596
-
597
- Next:
598
- pibo tools show agent-browser
599
- pibo tools guide agent-browser agent-browser
600
- pibo tools agent-browser health
584
+ console.log(`pibo tools agent-browser - Agent Browser helpers
585
+
586
+ Start:
587
+ eval "$(pibo tools env agent-browser)"
588
+
589
+ Commands:
590
+ health Check Agent Browser health and report issues
591
+ sessions List upstream Agent Browser sessions
592
+ targets List Chrome CDP targets with Chat auth hints
593
+ attach-chat Export the best existing authenticated Chat target
594
+ auth-template path Print the default authenticated template profile path
595
+ auth-template env Print shell exports for preparing the auth template profile
596
+ lease acquire Acquire an isolated authenticated browser slot
597
+ lease list List authenticated browser slots
598
+ lease release <id> Release one browser slot
599
+ lease reap-stale Release expired browser slots
600
+
601
+ Next:
602
+ pibo tools show agent-browser
603
+ pibo tools guide agent-browser agent-browser
604
+ pibo tools agent-browser health
601
605
  pibo tools agent-browser lease acquire`);
602
606
  }
607
+ function printLoopDiscovery() {
608
+ console.log(`pibo tools loop - Goal-first Loop helpers
609
+
610
+ Commands:
611
+ pibo loop templates --json
612
+ pibo loop add --template goal-objective --room <room-id> --start --json
613
+ pibo loop list --all --json
614
+ pibo loop runs --job <job-id> --json
615
+ pibo loop stop <job-id>
616
+ pibo loop cancel <job-id>
617
+
618
+ Next:
619
+ pibo tools guide loop loop
620
+ pibo loop templates`);
621
+ }
603
622
  function printRalphDiscovery() {
604
- console.log(`pibo tools ralph - Ralph job helpers
605
-
606
- Commands:
607
- pibo ralph templates --json
608
- pibo ralph add --template <id> --room <room-id> --start --json
609
- pibo ralph list --all --json
610
- pibo ralph runs --job <job-id> --json
611
- pibo ralph stop <job-id>
612
- pibo ralph cancel <job-id>
613
-
614
- Next:
615
- pibo tools guide ralph ralph
623
+ console.log(`pibo tools ralph - Ralph job helpers
624
+
625
+ Commands:
626
+ pibo ralph templates --json
627
+ pibo ralph add --template <id> --room <room-id> --start --json
628
+ pibo ralph list --all --json
629
+ pibo ralph runs --job <job-id> --json
630
+ pibo ralph stop <job-id>
631
+ pibo ralph cancel <job-id>
632
+
633
+ Next:
634
+ pibo tools guide ralph ralph
616
635
  pibo ralph templates`);
617
636
  }
618
637
  function printToolsDiscovery() {
619
- console.log(`pibo tools - curated CLI tools
620
-
621
- Commands:
622
- list List curated tools
623
- installed List installed tools
624
- show <name> Show one tool
625
- install <name> Install one tool
626
- doctor <name> Check one tool
627
- guides <name> List tool guides
628
- guide <name> [guide] Print one guide
629
- path <name> Print executable path
630
- env <name> Print shell exports
631
- browser-use Browser-use auth slots and helper commands
632
- agent-browser Agent Browser sessions, targets, and auth slots
633
- ralph Ralph job helper commands
634
-
635
- Next:
638
+ console.log(`pibo tools - curated CLI tools
639
+
640
+ Commands:
641
+ list List curated tools
642
+ installed List installed tools
643
+ show <name> Show one tool
644
+ install <name> Install one tool
645
+ doctor <name> Check one tool
646
+ guides <name> List tool guides
647
+ guide <name> [guide] Print one guide
648
+ path <name> Print executable path
649
+ env <name> Print shell exports
650
+ browser-use Browser-use auth slots and helper commands
651
+ agent-browser Agent Browser sessions, targets, and auth slots
652
+ ralph Ralph job helper commands
653
+
654
+ Next:
636
655
  pibo tools list`);
637
656
  }
638
657
  export async function runToolsCli(argv = process.argv) {
@@ -702,6 +721,10 @@ export async function runToolsCli(argv = process.argv) {
702
721
  .argument('<name>')
703
722
  .description('Print shell exports for using the tool directly')
704
723
  .action(printEnv);
724
+ program
725
+ .command('loop')
726
+ .description('Goal-first Loop helper commands')
727
+ .action(printLoopDiscovery);
705
728
  program
706
729
  .command('ralph')
707
730
  .description('Ralph job helper commands')
@@ -790,10 +813,10 @@ export async function runToolsCli(argv = process.argv) {
790
813
  .command('auth-template')
791
814
  .description('Manage the Agent Browser authenticated template profile')
792
815
  .action(() => {
793
- console.log(`pibo tools agent-browser auth-template
794
-
795
- Commands:
796
- path Print the default authenticated template profile path
816
+ console.log(`pibo tools agent-browser auth-template
817
+
818
+ Commands:
819
+ path Print the default authenticated template profile path
797
820
  env Print shell exports for preparing the auth template profile`);
798
821
  });
799
822
  agentAuthTemplate
@@ -814,12 +837,12 @@ Commands:
814
837
  .command('lease')
815
838
  .description('Acquire and manage isolated Agent Browser slots')
816
839
  .action(() => {
817
- console.log(`pibo tools agent-browser lease
818
-
819
- Commands:
820
- acquire Acquire an isolated authenticated browser slot
821
- list List authenticated browser slots
822
- release <id> Release one browser slot
840
+ console.log(`pibo tools agent-browser lease
841
+
842
+ Commands:
843
+ acquire Acquire an isolated authenticated browser slot
844
+ list List authenticated browser slots
845
+ release <id> Release one browser slot
823
846
  reap-stale Release expired browser slots`);
824
847
  });
825
848
  agentLease
@@ -911,10 +934,10 @@ Commands:
911
934
  .command('pool')
912
935
  .description('Inspect and reap the managed browser pool')
913
936
  .action(() => {
914
- console.log(`pibo tools browser-use pool
915
-
916
- Commands:
917
- status Show read-only managed browser-pool status
937
+ console.log(`pibo tools browser-use pool
938
+
939
+ Commands:
940
+ status Show read-only managed browser-pool status
918
941
  reap Reap an idle managed browser pool`);
919
942
  });
920
943
  pool
@@ -942,10 +965,10 @@ Commands:
942
965
  .command('auth-template')
943
966
  .description('Manage the browser-use authenticated template profile')
944
967
  .action(() => {
945
- console.log(`pibo tools browser-use auth-template
946
-
947
- Commands:
948
- path Print the default authenticated template profile path
968
+ console.log(`pibo tools browser-use auth-template
969
+
970
+ Commands:
971
+ path Print the default authenticated template profile path
949
972
  env Print shell exports for preparing the auth template profile`);
950
973
  });
951
974
  authTemplate
@@ -964,12 +987,12 @@ Commands:
964
987
  .command('lease')
965
988
  .description('Acquire and manage isolated authenticated browser-use slots')
966
989
  .action(() => {
967
- console.log(`pibo tools browser-use lease
968
-
969
- Commands:
970
- acquire Acquire an isolated authenticated browser slot
971
- list List authenticated browser slots
972
- release <id> Release one browser slot
990
+ console.log(`pibo tools browser-use lease
991
+
992
+ Commands:
993
+ acquire Acquire an isolated authenticated browser slot
994
+ list List authenticated browser slots
995
+ release <id> Release one browser slot
973
996
  reap-stale Release expired or dead browser slots`);
974
997
  });
975
998
  lease
@@ -1,7 +1,7 @@
1
1
  import { existsSync } from 'node:fs';
2
2
  import { ensureAgentBrowserWrapper } from './agent-browser-wrapper.js';
3
3
  import { detectDesktopEnv, hasDesktopDisplay, printDesktopEnvStatus, printLinuxVirtualDisplayHint } from './desktop-env.js';
4
- import { AGENT_BROWSER_GUIDE, BROWSER_USE_GUIDE, GRAPHIFY_GUIDE, RALPH_GUIDE, REMOTE_BROWSER_GUIDE } from './guides.js';
4
+ import { AGENT_BROWSER_GUIDE, BROWSER_USE_GUIDE, GRAPHIFY_GUIDE, LOOP_GUIDE, RALPH_GUIDE, REMOTE_BROWSER_GUIDE } from './guides.js';
5
5
  import { ensureLinuxVirtualDisplay } from './linux-virtual-display.js';
6
6
  import { getToolNpmRuntimePaths, installToolNpmRuntime, printToolNpmRuntimeDoctor, removeToolNpmRuntime, } from './npm-runtime.js';
7
7
  import { getToolPythonRuntimePaths, installToolPythonRuntime, runInheritedCommand, printToolPythonRuntimeDoctor, removeToolPythonRuntime, } from './python-runtime.js';
@@ -83,13 +83,31 @@ const REGISTRY = [
83
83
  'Guide: `npm run dev -- tools guide graphify graphify`.',
84
84
  ].join('\n'),
85
85
  },
86
+ {
87
+ name: 'loop',
88
+ description: 'Pibo-native goal-first continuous agent loop runner.',
89
+ kind: 'internal',
90
+ guides: [LOOP_GUIDE],
91
+ notes: [
92
+ 'Loop is built into the pibo CLI; no external runtime installation is required.',
93
+ 'Goal mode reuses one Pibo Session and is the default; Ralph mode remains available for fresh-session compatibility.',
94
+ 'Goal lifecycle tools and token budgets are available when the selected agent enables pibo-goal-control.',
95
+ ],
96
+ agentContextSnippet: [
97
+ 'Goal-first continuous Pibo agent loop runner.',
98
+ 'Use `pibo loop templates`, then create with `pibo loop add --template goal-objective --room <room-id> --start`.',
99
+ 'Optional budgets: `--token-budget <n>` and `--max-iterations <n>`.',
100
+ 'Inspect/control with `pibo loop list --json`, `runs --job <id> --json`, `stop <id>`, `cancel <id>`.',
101
+ 'Guide: `pibo tools guide loop loop`.',
102
+ ].join('\n'),
103
+ },
86
104
  {
87
105
  name: 'ralph',
88
- description: 'Pibo-native continuous agent job runner for implementation and debugging loops.',
106
+ description: 'Legacy Pibo Ralph alias for fresh-session continuous agent jobs.',
89
107
  kind: 'internal',
90
108
  guides: [RALPH_GUIDE],
91
109
  notes: [
92
- 'Ralph is built into the pibo CLI; no external runtime installation is required.',
110
+ 'Ralph is the legacy fresh-session alias; prefer pibo loop for new Goal work.',
93
111
  'Ralph jobs are app-global; use room targets or the shared default target when creating jobs.',
94
112
  'Prefer templates for repeatable jobs, and use --json for automation-safe inspection.',
95
113
  ],