@pasko70/pibo 1.9.13 → 1.10.1
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-profiles.js +2 -2
- package/dist/apps/chat/agent-store.js +263 -250
- package/dist/apps/chat/chat-request-normalizers.js +17 -0
- package/dist/apps/chat/data/chat-data-mappers.js +2 -0
- 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 +19 -19
- package/dist/apps/chat/loop-api.js +181 -0
- package/dist/apps/chat/static-assets.js +854 -854
- package/dist/apps/chat/web-app.js +36 -16
- package/dist/apps/chat/workflow-manual-trigger-runtime.js +149 -46
- package/dist/apps/chat/workflow-persistence.js +255 -255
- package/dist/apps/chat-ui/assets/{dist-BZ2eTC4f.js → dist-3Sts0Afa.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-BHa-kcGl.js → dist-4NlLjLs7.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-yCYNNb5d.js → dist-BA6mhAec.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-D811wJeV.js → dist-BPl-fzRB.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-Dq4GxJi3.js → dist-BPnn9e2B.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-CzE6k3F3.js → dist-BpfBSMzK.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-CnVsqwSG.js → dist-Cvx5M97R.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-WyXdYl-w.js → dist-DnXWNQRm.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-BNMu92bb.js → dist-hU-2oAb6.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-BCB6zezO.js → dist-r31x5Fcc.js} +1 -1
- package/dist/apps/chat-ui/assets/{dist-HqTN67dc.js → dist-uF6UXzI7.js} +1 -1
- package/dist/apps/chat-ui/assets/index-CaTGYBOS.js +173 -0
- package/dist/apps/chat-ui/assets/{index-C0x9nEcf.css → index-al8DeEjA.css} +1 -1
- package/dist/apps/chat-ui/index.html +18 -18
- package/dist/apps/chat-ui/manifest.webmanifest +25 -25
- package/dist/apps/chat-ui/sw.js +47 -47
- package/dist/apps/chat-vscode-web/assets/index-CK4SMZuu.js +41 -0
- package/dist/apps/chat-vscode-web/index.html +13 -13
- package/dist/apps/cli-ui/cliSessionsCommand.js +23 -23
- package/dist/apps/context-files-ui/index.html +11 -11
- package/dist/cli-session/localSessionSource.js +34 -12
- package/dist/cli.js +61 -44
- package/dist/compute/cli.js +54 -54
- package/dist/compute/resource-health.js +35 -2
- package/dist/core/events.js +6 -1
- package/dist/core/routed-session.js +97 -5
- package/dist/core/runtime.js +6 -1
- package/dist/core/session-router.js +27 -8
- 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/ingest-service.js +3 -1
- package/dist/data/message-store.js +27 -27
- 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 +433 -433
- 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 +231 -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/trace.js +42 -7
- 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 +4 -2
- package/dist/gateway/web.js +2 -2
- package/dist/index.js +1 -0
- package/dist/loops/accounting.js +19 -0
- package/dist/loops/channel.js +8 -0
- package/dist/loops/cli.js +224 -0
- package/dist/loops/plugin.js +16 -0
- package/dist/loops/prompts.js +86 -0
- package/dist/loops/service.js +446 -0
- package/dist/loops/stopping.js +170 -0
- package/dist/loops/store.js +642 -0
- package/dist/loops/templates.js +232 -0
- package/dist/loops/tools.js +184 -0
- package/dist/loops/types.js +1 -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/builtin.js +8 -0
- package/dist/plugins/context-files-store.js +110 -110
- package/dist/plugins/context-files.js +4 -4
- package/dist/plugins/registry.js +23 -12
- package/dist/ralph/cli.js +18 -18
- package/dist/ralph/templates.js +140 -140
- package/dist/reliability/store.js +256 -229
- package/dist/runs/lifecycle.js +59 -0
- package/dist/runs/registry.js +47 -1
- package/dist/runs/tools.js +31 -13
- package/dist/session-ui/terminalRows.js +66 -2
- 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/shared/trace-async-agent-runs.js +4 -4
- package/dist/shared/trace-event-projection.js +59 -19
- package/dist/shared/trace-nodes.js +5 -0
- package/dist/shared/trace-page-merge.js +15 -0
- package/dist/shared/trace-run-notifications.js +3 -1
- package/dist/signals/projector.js +6 -2
- package/dist/tools/agent-browser-wrapper.js +80 -80
- package/dist/tools/browser-pool.js +50 -0
- package/dist/tools/browser-use-cdp.js +12 -12
- package/dist/tools/browser-use-leases.js +12 -8
- package/dist/tools/browser-use-wrapper.js +762 -762
- package/dist/tools/guides.js +596 -538
- package/dist/tools/index.js +123 -99
- package/dist/tools/registry.js +21 -3
- 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 +99 -95
- package/skills/builtin/graphify/SKILL.md +52 -52
- package/skills/builtin/loop/SKILL.md +78 -0
- 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 +361 -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
- package/dist/apps/chat-ui/assets/index-DwHJfmiF.js +0 -173
- package/dist/apps/chat-vscode-web/assets/index-BAMxIaI_.js +0 -41
- package/dist/apps/vscode-artifacts/latest.vsix +0 -0
- package/dist/apps/vscode-artifacts/pibo-vscode-ext-1.9.13.vsix +0 -0
package/package.json
CHANGED
|
@@ -1,95 +1,99 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@pasko70/pibo",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"type": "module",
|
|
5
|
-
"imports": {
|
|
6
|
-
"vscode": "./src/apps/chat-vscode/extension/src/vscode-shim.js"
|
|
7
|
-
},
|
|
8
|
-
"description": "Minimal TypeScript wrapper around Pi Coding Agent.",
|
|
9
|
-
"files": [
|
|
10
|
-
"dist",
|
|
11
|
-
"context",
|
|
12
|
-
"skills/builtin/**",
|
|
13
|
-
"docs/ops/**",
|
|
14
|
-
"README.md",
|
|
15
|
-
"src/mcp/LICENSE.mcp-cli"
|
|
16
|
-
],
|
|
17
|
-
"bin": {
|
|
18
|
-
"pibo": "dist/bin/pibo.js",
|
|
19
|
-
"rg": "dist/bin/rg.js"
|
|
20
|
-
},
|
|
21
|
-
"engines": {
|
|
22
|
-
"node": ">=24"
|
|
23
|
-
},
|
|
24
|
-
"scripts": {
|
|
25
|
-
"dev": "tsx src/bin/pibo.ts",
|
|
26
|
-
"profile": "tsx src/bin/pibo.ts profile",
|
|
27
|
-
"tui": "tsx src/bin/pibo.ts tui",
|
|
28
|
-
"tui:routed": "tsx src/bin/pibo.ts tui:routed",
|
|
29
|
-
"tui:gateway": "tsx src/bin/pibo.ts tui gateway-producer",
|
|
30
|
-
"gateway": "tsx src/bin/pibo.ts gateway",
|
|
31
|
-
"gateway:web": "npm run web-ui:build && tsx src/bin/pibo.ts gateway:web",
|
|
32
|
-
"client": "tsx src/bin/pibo.ts client",
|
|
33
|
-
"chat-ui:build": "vite build --config src/apps/chat-ui/vite.config.ts",
|
|
34
|
-
"chat-ui:typecheck": "tsc -p src/apps/chat-ui/tsconfig.json --noEmit",
|
|
35
|
-
"context-files-ui:build": "vite build --config src/apps/context-files-ui/vite.config.ts",
|
|
36
|
-
"context-files-ui:typecheck": "tsc -p src/apps/context-files-ui/tsconfig.json --noEmit",
|
|
37
|
-
"web-ui:build": "npm run chat-ui:build && npm run context-files-ui:build",
|
|
38
|
-
"vscode:typecheck": "tsc -p src/apps/chat-vscode/extension/tsconfig.json --noEmit && tsc -p src/apps/chat-vscode/extension/webview/tsconfig.json --noEmit",
|
|
39
|
-
"vscode:webview:build": "vite build --config src/apps/chat-vscode/extension/webview/vite.config.ts",
|
|
40
|
-
"vscode:extension:build": "esbuild src/apps/chat-vscode/extension/src/extension.ts --bundle --platform=node --target=node24 --format=cjs --outfile=src/apps/chat-vscode/dist/extension/extension.cjs --external:vscode --sourcemap=inline",
|
|
41
|
-
"vscode:package": "node scripts/vscode-package.mjs",
|
|
42
|
-
"release": "node scripts/release.mjs",
|
|
43
|
-
"release:github": "node scripts/create-github-release.mjs",
|
|
44
|
-
"build": "tsc -p tsconfig.json && npm run web-ui:build && npm run vscode:webview:build && node scripts/ensure-bin-executable.mjs",
|
|
45
|
-
"start": "node dist/bin/pibo.js",
|
|
46
|
-
"test": "npm run build && node --test test/*.test.mjs test/chat-vscode/*.test.mjs",
|
|
47
|
-
"check:product-vocab": "node scripts/legacy-product-vocabulary-gate.mjs",
|
|
48
|
-
"validate:ink-web-derived": "node scripts/ink-cli-web-derived-parity-validate.mjs",
|
|
49
|
-
"compute:limited-worker-smoke": "node scripts/compute-limited-worker-smoke.mjs",
|
|
50
|
-
"
|
|
51
|
-
"
|
|
52
|
-
"
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
"@earendil-works/pi-
|
|
57
|
-
"@earendil-works/pi-
|
|
58
|
-
"@earendil-works/pi-
|
|
59
|
-
"@
|
|
60
|
-
"@
|
|
61
|
-
"@
|
|
62
|
-
"@
|
|
63
|
-
"@
|
|
64
|
-
"@
|
|
65
|
-
"@
|
|
66
|
-
"@
|
|
67
|
-
"@
|
|
68
|
-
"
|
|
69
|
-
"
|
|
70
|
-
"
|
|
71
|
-
"
|
|
72
|
-
"
|
|
73
|
-
"
|
|
74
|
-
"
|
|
75
|
-
"react
|
|
76
|
-
"
|
|
77
|
-
"react
|
|
78
|
-
"
|
|
79
|
-
"
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
"
|
|
83
|
-
"
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
"@
|
|
87
|
-
"@
|
|
88
|
-
"@
|
|
89
|
-
"
|
|
90
|
-
"
|
|
91
|
-
"
|
|
92
|
-
"
|
|
93
|
-
"
|
|
94
|
-
|
|
95
|
-
|
|
1
|
+
{
|
|
2
|
+
"name": "@pasko70/pibo",
|
|
3
|
+
"version": "1.10.1",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"imports": {
|
|
6
|
+
"vscode": "./src/apps/chat-vscode/extension/src/vscode-shim.js"
|
|
7
|
+
},
|
|
8
|
+
"description": "Minimal TypeScript wrapper around Pi Coding Agent.",
|
|
9
|
+
"files": [
|
|
10
|
+
"dist",
|
|
11
|
+
"context",
|
|
12
|
+
"skills/builtin/**",
|
|
13
|
+
"docs/ops/**",
|
|
14
|
+
"README.md",
|
|
15
|
+
"src/mcp/LICENSE.mcp-cli"
|
|
16
|
+
],
|
|
17
|
+
"bin": {
|
|
18
|
+
"pibo": "dist/bin/pibo.js",
|
|
19
|
+
"rg": "dist/bin/rg.js"
|
|
20
|
+
},
|
|
21
|
+
"engines": {
|
|
22
|
+
"node": ">=24"
|
|
23
|
+
},
|
|
24
|
+
"scripts": {
|
|
25
|
+
"dev": "tsx src/bin/pibo.ts",
|
|
26
|
+
"profile": "tsx src/bin/pibo.ts profile",
|
|
27
|
+
"tui": "tsx src/bin/pibo.ts tui",
|
|
28
|
+
"tui:routed": "tsx src/bin/pibo.ts tui:routed",
|
|
29
|
+
"tui:gateway": "tsx src/bin/pibo.ts tui gateway-producer",
|
|
30
|
+
"gateway": "tsx src/bin/pibo.ts gateway",
|
|
31
|
+
"gateway:web": "npm run web-ui:build && tsx src/bin/pibo.ts gateway:web",
|
|
32
|
+
"client": "tsx src/bin/pibo.ts client",
|
|
33
|
+
"chat-ui:build": "vite build --config src/apps/chat-ui/vite.config.ts",
|
|
34
|
+
"chat-ui:typecheck": "tsc -p src/apps/chat-ui/tsconfig.json --noEmit",
|
|
35
|
+
"context-files-ui:build": "vite build --config src/apps/context-files-ui/vite.config.ts",
|
|
36
|
+
"context-files-ui:typecheck": "tsc -p src/apps/context-files-ui/tsconfig.json --noEmit",
|
|
37
|
+
"web-ui:build": "npm run chat-ui:build && npm run context-files-ui:build",
|
|
38
|
+
"vscode:typecheck": "tsc -p src/apps/chat-vscode/extension/tsconfig.json --noEmit && tsc -p src/apps/chat-vscode/extension/webview/tsconfig.json --noEmit",
|
|
39
|
+
"vscode:webview:build": "vite build --config src/apps/chat-vscode/extension/webview/vite.config.ts",
|
|
40
|
+
"vscode:extension:build": "esbuild src/apps/chat-vscode/extension/src/extension.ts --bundle --platform=node --target=node24 --format=cjs --outfile=src/apps/chat-vscode/dist/extension/extension.cjs --external:vscode --sourcemap=inline",
|
|
41
|
+
"vscode:package": "node scripts/vscode-package.mjs",
|
|
42
|
+
"release": "node scripts/release.mjs",
|
|
43
|
+
"release:github": "node scripts/create-github-release.mjs",
|
|
44
|
+
"build": "tsc -p tsconfig.json && npm run web-ui:build && npm run vscode:webview:build && node scripts/ensure-bin-executable.mjs",
|
|
45
|
+
"start": "node dist/bin/pibo.js",
|
|
46
|
+
"test": "npm run build && node --test test/*.test.mjs test/chat-vscode/*.test.mjs",
|
|
47
|
+
"check:product-vocab": "node scripts/legacy-product-vocabulary-gate.mjs",
|
|
48
|
+
"validate:ink-web-derived": "node scripts/ink-cli-web-derived-parity-validate.mjs",
|
|
49
|
+
"compute:limited-worker-smoke": "node scripts/compute-limited-worker-smoke.mjs",
|
|
50
|
+
"validate:goal-endurance": "node scripts/goal-endurance-check.mjs",
|
|
51
|
+
"typecheck": "tsc -p tsconfig.json --noEmit && npm run chat-ui:typecheck && npm run context-files-ui:typecheck && npm run vscode:typecheck",
|
|
52
|
+
"clean": "node -e \"fs.rmSync('dist', { recursive: true, force: true })\"",
|
|
53
|
+
"prepack": "npm run build"
|
|
54
|
+
},
|
|
55
|
+
"dependencies": {
|
|
56
|
+
"@earendil-works/pi-agent-core": "0.80.6",
|
|
57
|
+
"@earendil-works/pi-ai": "0.80.6",
|
|
58
|
+
"@earendil-works/pi-coding-agent": "0.80.6",
|
|
59
|
+
"@earendil-works/pi-tui": "0.80.6",
|
|
60
|
+
"@langchain/core": "^1.2.3",
|
|
61
|
+
"@langchain/langgraph": "^1.4.8",
|
|
62
|
+
"@mdxeditor/editor": "^3.55.0",
|
|
63
|
+
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
64
|
+
"@tailwindcss/vite": "^4.2.4",
|
|
65
|
+
"@tanstack/react-query": "^5.100.7",
|
|
66
|
+
"@tanstack/react-router": "^1.168.25",
|
|
67
|
+
"@tanstack/react-start": "^1.167.50",
|
|
68
|
+
"@uiw/react-json-view": "^2.0.0-alpha.41",
|
|
69
|
+
"@vscode/ripgrep": "^1.18.0",
|
|
70
|
+
"@xyflow/react": "12.10.2",
|
|
71
|
+
"better-auth": "^1.6.9",
|
|
72
|
+
"commander": "^14.0.3",
|
|
73
|
+
"ink": "^7.0.3",
|
|
74
|
+
"lexical": "^0.35.0",
|
|
75
|
+
"lucide-react": "^0.545.0",
|
|
76
|
+
"prismjs": "^1.30.0",
|
|
77
|
+
"react": "^19.2.5",
|
|
78
|
+
"react-dom": "^19.2.5",
|
|
79
|
+
"react-markdown": "^10.1.0",
|
|
80
|
+
"react-virtuoso": "^4.18.6",
|
|
81
|
+
"remark-gfm": "^4.0.1",
|
|
82
|
+
"tailwindcss": "^4.2.4",
|
|
83
|
+
"zod": "4.4.1"
|
|
84
|
+
},
|
|
85
|
+
"devDependencies": {
|
|
86
|
+
"@tanstack/router-plugin": "^1.167.28",
|
|
87
|
+
"@types/node": "^25.6.0",
|
|
88
|
+
"@types/prismjs": "^1.26.6",
|
|
89
|
+
"@types/react": "^19.2.14",
|
|
90
|
+
"@types/react-dom": "^19.2.3",
|
|
91
|
+
"@vitejs/plugin-react": "^6.0.1",
|
|
92
|
+
"@vscode/vsce": "^3.6.0",
|
|
93
|
+
"esbuild": "^0.27.7",
|
|
94
|
+
"tsx": "^4.21.0",
|
|
95
|
+
"typescript": "^6.0.3",
|
|
96
|
+
"vite": "^8.0.10",
|
|
97
|
+
"vite-tsconfig-paths": "^5.1.4"
|
|
98
|
+
}
|
|
99
|
+
}
|
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: graphify
|
|
3
|
-
description: Use this skill when a user asks to graph, map, or visualize a codebase/workspace with Graphify and inspect the generated graphify-out/graph.html, graphify-out/graph.json, or graphify-out/GRAPH_REPORT.md artifacts.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Graphify Codebase Visualization
|
|
7
|
-
|
|
8
|
-
Use Graphify to turn a workspace folder into an interactive knowledge graph and report. Prefer this skill for requests like "graph this repo", "visualize this codebase", "map the workspace", or "show me the project structure as a graph".
|
|
9
|
-
|
|
10
|
-
## Prerequisites
|
|
11
|
-
|
|
12
|
-
Graphify is exposed as a curated Pibo CLI tool:
|
|
13
|
-
|
|
14
|
-
```bash
|
|
15
|
-
pibo tools show graphify
|
|
16
|
-
pibo tools install graphify
|
|
17
|
-
eval "$(pibo tools env graphify)"
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
Inside the Pibo source repo while testing local changes, use:
|
|
21
|
-
|
|
22
|
-
```bash
|
|
23
|
-
npm run --silent dev -- tools show graphify
|
|
24
|
-
npm run --silent dev -- tools install graphify
|
|
25
|
-
eval "$(npm run --silent dev -- tools env graphify)"
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
The Pibo installer uses the PyPI package `graphifyy` and runs `graphify install --platform pi` after installing the CLI.
|
|
29
|
-
|
|
30
|
-
## Workflow
|
|
31
|
-
|
|
32
|
-
1. Identify the workspace path from the active Pibo Room/session context or from the user's request.
|
|
33
|
-
2. Confirm the path is inside the intended workspace boundary before graphing.
|
|
34
|
-
3. Prefer an ignored artifact directory for generated files when possible. If you generate in the repo root, check `git status --short` before and after.
|
|
35
|
-
4. Run Graphify on the selected folder. With `graphifyy==0.9.x`, `graphify .` writes extraction output under `graphify-out/`.
|
|
36
|
-
5. If you need an HTML graph and markdown report from a code-only extraction without an LLM key, run `graphify cluster-only . --no-label` after `graphify .`.
|
|
37
|
-
6. Read `graphify-out/GRAPH_REPORT.md` first for the summary, then open `graphify-out/graph.html` when the user wants an interactive view.
|
|
38
|
-
|
|
39
|
-
```bash
|
|
40
|
-
cd /path/to/workspace
|
|
41
|
-
graphify .
|
|
42
|
-
graphify cluster-only . --no-label
|
|
43
|
-
ls graphify-out/graph.html graphify-out/graph.json graphify-out/GRAPH_REPORT.md
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
## Operating rules
|
|
47
|
-
|
|
48
|
-
- Treat `graphify-out/graph.html`, `graphify-out/graph.json`, and `graphify-out/GRAPH_REPORT.md` as derived artifacts unless the user explicitly wants them committed.
|
|
49
|
-
- Code-only extraction can run without an LLM API key. Including docs, README files, papers, images, or semantic-labeling steps may require a configured Graphify backend/API key; if no key is available, graph a code-only subdirectory or skip semantic labels with `cluster-only . --no-label`.
|
|
50
|
-
- For large monorepos, start with a focused subdirectory such as `src/`, a code package, or a docs folder only when the needed LLM backend is configured.
|
|
51
|
-
- Re-run Graphify on demand after branch or workspace changes; do not assume an old graph is current.
|
|
52
|
-
- If Graphify is unavailable, report the missing install and suggest `pibo tools install graphify` rather than hand-writing a replacement graph.
|
|
1
|
+
---
|
|
2
|
+
name: graphify
|
|
3
|
+
description: Use this skill when a user asks to graph, map, or visualize a codebase/workspace with Graphify and inspect the generated graphify-out/graph.html, graphify-out/graph.json, or graphify-out/GRAPH_REPORT.md artifacts.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Graphify Codebase Visualization
|
|
7
|
+
|
|
8
|
+
Use Graphify to turn a workspace folder into an interactive knowledge graph and report. Prefer this skill for requests like "graph this repo", "visualize this codebase", "map the workspace", or "show me the project structure as a graph".
|
|
9
|
+
|
|
10
|
+
## Prerequisites
|
|
11
|
+
|
|
12
|
+
Graphify is exposed as a curated Pibo CLI tool:
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
pibo tools show graphify
|
|
16
|
+
pibo tools install graphify
|
|
17
|
+
eval "$(pibo tools env graphify)"
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
Inside the Pibo source repo while testing local changes, use:
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
npm run --silent dev -- tools show graphify
|
|
24
|
+
npm run --silent dev -- tools install graphify
|
|
25
|
+
eval "$(npm run --silent dev -- tools env graphify)"
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
The Pibo installer uses the PyPI package `graphifyy` and runs `graphify install --platform pi` after installing the CLI.
|
|
29
|
+
|
|
30
|
+
## Workflow
|
|
31
|
+
|
|
32
|
+
1. Identify the workspace path from the active Pibo Room/session context or from the user's request.
|
|
33
|
+
2. Confirm the path is inside the intended workspace boundary before graphing.
|
|
34
|
+
3. Prefer an ignored artifact directory for generated files when possible. If you generate in the repo root, check `git status --short` before and after.
|
|
35
|
+
4. Run Graphify on the selected folder. With `graphifyy==0.9.x`, `graphify .` writes extraction output under `graphify-out/`.
|
|
36
|
+
5. If you need an HTML graph and markdown report from a code-only extraction without an LLM key, run `graphify cluster-only . --no-label` after `graphify .`.
|
|
37
|
+
6. Read `graphify-out/GRAPH_REPORT.md` first for the summary, then open `graphify-out/graph.html` when the user wants an interactive view.
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
cd /path/to/workspace
|
|
41
|
+
graphify .
|
|
42
|
+
graphify cluster-only . --no-label
|
|
43
|
+
ls graphify-out/graph.html graphify-out/graph.json graphify-out/GRAPH_REPORT.md
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Operating rules
|
|
47
|
+
|
|
48
|
+
- Treat `graphify-out/graph.html`, `graphify-out/graph.json`, and `graphify-out/GRAPH_REPORT.md` as derived artifacts unless the user explicitly wants them committed.
|
|
49
|
+
- Code-only extraction can run without an LLM API key. Including docs, README files, papers, images, or semantic-labeling steps may require a configured Graphify backend/API key; if no key is available, graph a code-only subdirectory or skip semantic labels with `cluster-only . --no-label`.
|
|
50
|
+
- For large monorepos, start with a focused subdirectory such as `src/`, a code package, or a docs folder only when the needed LLM backend is configured.
|
|
51
|
+
- Re-run Graphify on demand after branch or workspace changes; do not assume an old graph is current.
|
|
52
|
+
- If Graphify is unavailable, report the missing install and suggest `pibo tools install graphify` rather than hand-writing a replacement graph.
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: loop
|
|
3
|
+
description: Plan, create, run, monitor, resume, and review Pibo Goal Loops and legacy Ralph loops. Use whenever the user asks for a persistent goal, continuous loop, autonomous multi-turn objective, token-budgeted goal, Loop job, Goal status, blocked Goal, or the pibo loop CLI.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Pibo Loop Workflow
|
|
7
|
+
|
|
8
|
+
Use Goal mode for persistent objectives that should continue in the same Pibo Session. Use legacy Ralph mode only when each run should start with fresh session context.
|
|
9
|
+
|
|
10
|
+
Discover the live CLI progressively:
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
pibo loop --help
|
|
14
|
+
pibo loop add --help
|
|
15
|
+
pibo loop templates --json
|
|
16
|
+
pibo loop conditions
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Goal lifecycle
|
|
20
|
+
|
|
21
|
+
Goal-capable profiles expose native tools:
|
|
22
|
+
|
|
23
|
+
- `get_goal`: inspect authoritative status, soft-budget risk, tokens used, remaining tokens, active agent time, and elapsed wall-clock time.
|
|
24
|
+
- `create_goal`: create a persistent Goal only when the user or system explicitly requests one.
|
|
25
|
+
- `update_goal`: mark the current Goal `complete` after a strict completion audit, or `blocked` after the same impasse repeats for at least three consecutive Goal turns.
|
|
26
|
+
|
|
27
|
+
These are native Pibo tools, not MCP tools. Agent Designer exposes them as the default-enabled `pibo-goal-control` package. If that package is disabled, the agent cannot change Goal lifecycle status itself.
|
|
28
|
+
|
|
29
|
+
## CLI creation
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
pibo loop add \
|
|
33
|
+
--room <room-id> \
|
|
34
|
+
--profile <profile> \
|
|
35
|
+
--prompt "<complete objective>" \
|
|
36
|
+
--token-budget <optional-positive-token-count> \
|
|
37
|
+
--token-reserve <optional-pre-turn-minimum> \
|
|
38
|
+
--max-iterations <optional-run-fallback> \
|
|
39
|
+
--start
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Prefer creating the job stopped when its prompt, target, profile, or safety boundaries still need review.
|
|
43
|
+
|
|
44
|
+
## Completion and blocked rules
|
|
45
|
+
|
|
46
|
+
- Treat completion as unproven until current evidence covers every explicit requirement and deliverable.
|
|
47
|
+
- Do not use `complete` for partial progress, a plausible result, budget exhaustion, or because the current turn is ending.
|
|
48
|
+
- Do not use `blocked` on the first blocker occurrence.
|
|
49
|
+
- Use `blocked` only after the same condition repeats for at least three consecutive Goal turns and meaningful progress requires user input or an external-state change.
|
|
50
|
+
- Resuming a blocked Goal begins a fresh blocked audit.
|
|
51
|
+
|
|
52
|
+
## Token budgets
|
|
53
|
+
|
|
54
|
+
Goal token budgets are soft: Pibo accumulates usage reported after model responses, so the final turn can overshoot. Each Goal run records tokens used before the turn, remaining tokens before the turn, turn usage, and overshoot.
|
|
55
|
+
|
|
56
|
+
Set `--token-reserve <n>` to require more than `n` tokens to remain before Pibo starts another turn. Increase or clear the budget, or lower the reserve, before resuming a budget-limited Goal.
|
|
57
|
+
|
|
58
|
+
## Time accounting
|
|
59
|
+
|
|
60
|
+
`activeAgentTimeSeconds` accumulates time spent executing Goal runs. `elapsedWallClockSeconds` starts when the Goal is first activated, includes waiting and paused periods, and freezes when the Goal enters a terminal state. A Goal created paused reports zero wall-clock elapsed time until first activation.
|
|
61
|
+
|
|
62
|
+
## Managed browser leases
|
|
63
|
+
|
|
64
|
+
When a Goal owns `resources.browserLeaseIds`, Pibo renews those leases before each turn and while the turn is active. The same lease is retained across non-terminal Goal turns, including gateway service restart, and is released only when the Goal stops or reaches a terminal state. If the browser process disappeared, Pibo attempts to restart Chromium from the persisted managed profile. Failure to restore authenticated access marks the Goal blocked with an operator-facing resource reason.
|
|
65
|
+
|
|
66
|
+
## Operations
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
pibo loop list --all --json
|
|
70
|
+
pibo loop runs --job <job-id> --json
|
|
71
|
+
pibo loop start <job-id>
|
|
72
|
+
pibo loop stop <job-id>
|
|
73
|
+
pibo loop cancel <job-id>
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
Use `stop` for graceful pause after the current session. Use `cancel` only when the active session must be aborted.
|
|
77
|
+
|
|
78
|
+
For implementation work involving Docker workers, worktrees, browser checks, or pull requests, also use `pibo-docker-system` and `github-server-flow`.
|