@pasko70/pibo 3.1.4 → 3.2.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 (30) hide show
  1. package/README.md +2 -2
  2. package/dist/apps/chat-ui/assets/{dist-BcUbdOKJ.js → dist-BAXv9edD.js} +1 -1
  3. package/dist/apps/chat-ui/assets/{dist-BOqsX6_s.js → dist-CiwafO2k.js} +1 -1
  4. package/dist/apps/chat-ui/assets/{dist-qDZ-CdlK.js → dist-DD2HRAgt.js} +1 -1
  5. package/dist/apps/chat-ui/assets/{dist-DkpIJ_Pp.js → dist-NsHPx2KS.js} +1 -1
  6. package/dist/apps/chat-ui/assets/{dist-a0mykCz7.js → dist-jgYATWSF.js} +1 -1
  7. package/dist/apps/chat-ui/assets/index-BTzIdlcK.css +1 -0
  8. package/dist/apps/chat-ui/assets/index-C-s68zrN.js +228 -0
  9. package/dist/apps/chat-ui/index.html +2 -2
  10. package/dist/apps/chat-vscode-web/assets/{index-SluZr_-r.css → index-b18ZkEo0.css} +1 -1
  11. package/dist/apps/chat-vscode-web/assets/index-nHYofa-e.js +43 -0
  12. package/dist/apps/chat-vscode-web/index.html +2 -2
  13. package/dist/setup/cli.js +5 -5
  14. package/docs/project/guides/pibo-on-windows-via-wsl.md +292 -0
  15. package/docs/project/guides/pibo-vscode-ext-quickstart.md +287 -0
  16. package/docs/project/installation-profiles.md +134 -0
  17. package/docs/project/operations/index.md +10 -0
  18. package/docs/{ops → project/operations}/install-developer-host.md +19 -0
  19. package/docs/{ops → project/operations}/install-user-host.md +19 -0
  20. package/docs/{ops → project/operations}/upgrade-user-to-developer-host.md +19 -0
  21. package/docs/{ops → project/operations}/vscode-extension-release.md +19 -0
  22. package/npm-shrinkwrap.json +4 -3
  23. package/package.json +17 -3
  24. package/skills/builtin/pibo-agent-runtime-adapter/references/testing-migration-and-validation.md +3 -1
  25. package/skills/builtin/pibo-spec-writing/SKILL.md +110 -168
  26. package/skills/builtin/prd/SKILL.md +18 -0
  27. package/dist/apps/chat-ui/assets/index-CmqRSbBU.css +0 -1
  28. package/dist/apps/chat-ui/assets/index-G2ic-FSG.js +0 -228
  29. package/dist/apps/chat-vscode-web/assets/index-zQ1fNz5K.js +0 -43
  30. package/docs/README.md +0 -34
@@ -0,0 +1,134 @@
1
+ ---
2
+ type: "Reference"
3
+ title: "Installation profiles"
4
+ description: "Explains supported Pibo installation profiles, ownership boundaries, migration, upgrade, rollback, and recovery."
5
+ tags: ["installation", "operations", "profiles"]
6
+ status: "draft"
7
+ authority: "informative"
8
+ migration_lineage:
9
+ source_path: "docs/project/installation-profiles.md"
10
+ source_commit: "debba32a68137205df6351da9f3ae461004ca0c0"
11
+ baseline_commit: "2aef244301f5d181624662fdad53e18e83e80bd9"
12
+ baseline_blob_oid: "04ba7be002c1a1cee6f0fa173801dd870127f7b3"
13
+ source_bytes: 6918
14
+ source_sha256: "b0bc367fcf9fb515803da3f305b66467b1c1947c26ef755f1f8c019b5bfe7f82"
15
+ source_body_sha256: "b0bc367fcf9fb515803da3f305b66467b1c1947c26ef755f1f8c019b5bfe7f82"
16
+ generated:
17
+ by: "process:pibo-okf-p-current-project-plans"
18
+ at: "2026-08-31T22:47:46Z"
19
+ ---
20
+ # Installation profiles
21
+
22
+ Pibo's package installation remains side-effect free. After `npm install -g @pasko70/pibo`, use `pibo setup` to inspect or apply one of two supported host profiles.
23
+
24
+ ## Supported hosts and resource budget
25
+
26
+ Planning and staging work wherever the Pibo CLI runs. Host apply currently targets Linux with systemd and one of `apt-get`, `dnf`, or `pacman`. The pinned code-server download supports Linux amd64 and arm64. Containers and other service managers should use Vanilla plan JSON or a staged tree as the integration contract instead of `--apply`.
27
+
28
+ Vanilla adds only the gateway service and Caddy beyond the installed npm package. Batteries Included also downloads a 235 MB code-server archive, installs Chromium and two isolated browser-tool runtimes, and installs isolated MCP packages. Exact extracted size and memory depend on the distribution and workload; budget several gigabytes of disk and at least 2 GiB of available memory for a practical BI workstation. Browser sessions and IDE extension hosts add workload-dependent processes.
29
+
30
+ ## Choose a profile
31
+
32
+ ### Batteries Included (recommended)
33
+
34
+ Use this for a complete self-hosted Pibo workstation. It adds:
35
+
36
+ - the Pibo gateway and Chat Web;
37
+ - embedded VS Code Web at `/apps/vscode/`;
38
+ - Browser Use and Agent Browser from Pibo's pinned tool registry;
39
+ - managed Chromium/CDP prerequisites;
40
+ - Web Annotations from the installed Pibo package;
41
+ - an allowlisted Chrome DevTools MCP default;
42
+ - systemd, Caddy, status, doctor, upgrade, and rollback metadata.
43
+
44
+ It consumes more disk, memory, network downloads, and background processes than Vanilla. VS Code Web binds only to `127.0.0.1:4790`, runs as `pibo-code`, and is exposed by Caddy only after the request passes Pibo's authenticated Chat bootstrap endpoint. The managed service can write its data directory and the configured workspace root, not arbitrary protected host paths.
45
+
46
+ ```bash
47
+ pibo setup plan --profile batteries-included --domain pibo.example.com
48
+ pibo setup install --profile batteries-included --domain pibo.example.com --apply --yes
49
+ pibo setup status
50
+ pibo setup doctor --domain pibo.example.com
51
+ ```
52
+
53
+ Configure Better Auth before applying a public domain. Setup refuses to expose local-auth mode through a public proxy because Caddy reaches the gateway over loopback. A domain enables trusted automatic TLS; without one Caddy remains loopback-only at `http://127.0.0.1:8080`.
54
+
55
+ ### Vanilla
56
+
57
+ Use this when you want only the Pibo gateway and Chat Web, or when another system owns the proxy and optional tooling. Vanilla does not install or start VS Code Web, Chromium, browser automation tools, or MCP integrations.
58
+
59
+ ```bash
60
+ pibo setup plan --profile vanilla --domain pibo.example.com
61
+ pibo setup install --profile vanilla --domain pibo.example.com --apply --yes
62
+ ```
63
+
64
+ ## Review before applying
65
+
66
+ Plans are deterministic JSON and never modify the host:
67
+
68
+ ```bash
69
+ pibo setup plan --profile batteries-included --json
70
+ ```
71
+
72
+ A staged installation writes the complete owned filesystem tree and manifest under a review directory, without installing packages or starting services:
73
+
74
+ ```bash
75
+ pibo setup install --profile batteries-included \
76
+ --pibo-home /root/.pibo \
77
+ --domain pibo.example.com \
78
+ --write-to /tmp/pibo-install
79
+ pibo setup status --pibo-home /root/.pibo --root /tmp/pibo-install
80
+ ```
81
+
82
+ Real host mutation requires both `--apply` and `--yes`, requires root, validates pinned code-server downloads with SHA-256, and uses `pibo gateway web restart` instead of bypassing the gateway's active-session safety check.
83
+
84
+ ## Components and migration
85
+
86
+ Add an optional component to an installed profile with:
87
+
88
+ ```bash
89
+ pibo setup component add vscode-web --apply --yes
90
+ ```
91
+
92
+ The profile identity remains visible, while the manifest records the added component and pinned version. To move from Vanilla to the complete maintained set, apply the Batteries Included profile explicitly after reviewing its plan. To move from Batteries Included to Vanilla, uninstall setup-owned resources and install Vanilla; Pibo Home, workspaces, browser profiles, sessions, and user data remain in place.
93
+
94
+ ## Upgrade, repair, and rollback
95
+
96
+ ```bash
97
+ pibo setup status --json
98
+ pibo setup doctor
99
+ pibo setup upgrade --apply --yes
100
+ pibo setup uninstall --apply --yes
101
+ ```
102
+
103
+ The private manifest at `$PIBO_HOME/setup/installation.json` records the profile version, component versions, download checksums, and SHA-256 digest of each owned file. Reapplying an unchanged plan leaves files and the manifest untouched. Upgrade replaces only files still matching their previous owned digest and reruns an installation action only when its recorded fingerprint or health check is stale. Uninstall removes only unchanged owned files; locally modified files are reported and preserved.
104
+
105
+ To roll back component pins, install the previous Pibo package version, inspect `pibo setup upgrade --json`, and apply that older catalog with `pibo setup upgrade --apply --yes`. Preserve a copy of the manifest before rollback when you need an audit record of both states.
106
+
107
+ Package-manager removal is separate from profile removal. `npm uninstall -g @pasko70/pibo` does not delete Pibo Home or setup-managed system files. Run `pibo setup uninstall --apply --yes` first when you want to remove those owned host resources.
108
+
109
+ ## Migrating an existing manual installation
110
+
111
+ Keep the existing Pibo Home and workspace directories. First stage the target profile and compare its service, environment, and proxy resources with the manually maintained files:
112
+
113
+ ```bash
114
+ pibo setup install --profile batteries-included \
115
+ --pibo-home /root/.pibo \
116
+ --domain pibo.example.com \
117
+ --write-to /tmp/pibo-install
118
+ ```
119
+
120
+ Stop the manually managed code-server unit, archive its unit and Caddy configuration outside `/etc`, and then apply the profile. Setup deliberately refuses to overwrite an unmanaged or locally modified target file. This makes ownership transfer explicit instead of silently deleting unrelated proxy sites or service customizations. Reuse the existing workspace root with `--workspace-root`; the installer does not copy or delete workspace data. Existing browser templates under Pibo Home also remain in place.
121
+
122
+ If the old reverse proxy serves unrelated sites, keep it under operator ownership and copy only the staged Pibo route into that configuration instead of applying setup ownership. In that case, use the generated plan as the supported routing contract and retain the external proxy in your own upgrade and rollback procedure.
123
+
124
+ ## Recovery
125
+
126
+ A failed package download, service start, or gateway restart leaves the manifest and completed files available for diagnosis. Correct the reported prerequisite and rerun:
127
+
128
+ ```bash
129
+ pibo setup status
130
+ pibo setup doctor
131
+ pibo setup upgrade --apply --yes
132
+ ```
133
+
134
+ The lifecycle is idempotent. Setup does not store OAuth secrets in plans or manifests and does not bypass an active-session restart block.
@@ -0,0 +1,10 @@
1
+ # Project operations
2
+
3
+ <!-- Generated by npm run docs:indexes:write. -->
4
+
5
+ ## Concepts
6
+
7
+ * [Install Pibo as a Developer Host](install-developer-host.md) - Guides operators through planning, installing, and validating a Pibo developer host&#46;
8
+ * [Install Pibo as a User Host](install-user-host.md) - Guides operators through installing and configuring a Pibo user host&#46;
9
+ * [Pibo VS Code Extension Release Runbook](vscode-extension-release.md) - Describes the end&#45;to&#45;end release procedure for Pibo's VS Code extension and related package artifacts&#46;
10
+ * [Upgrade a User Host to a Developer Host](upgrade-user-to-developer-host.md) - Guides operators through upgrading a Pibo user host to a developer host without replacing production state&#46;
@@ -1,3 +1,22 @@
1
+ ---
2
+ type: "Guide"
3
+ title: "Install Pibo as a Developer Host"
4
+ description: "Guides operators through planning, installing, and validating a Pibo developer host."
5
+ tags: ["developer-host", "installation", "operations", "setup"]
6
+ status: "draft"
7
+ authority: "directive"
8
+ generated:
9
+ by: "openai/codex"
10
+ at: "2026-08-30T15:47:50Z"
11
+ sources:
12
+ - id: "foundation-relocation-source"
13
+ resource: "https://github.com/Pascapone/pibo/blob/2aef244301f5d181624662fdad53e18e83e80bd9/docs/ops/install-developer-host.md"
14
+ title: "Original byte-preserved developer-host installation guide"
15
+ commit: "2aef244301f5d181624662fdad53e18e83e80bd9"
16
+ path: "docs/ops/install-developer-host.md"
17
+ sha256: "8e6ae80f901852ab0d38c0eb887d83f300107ecbebc2418da5e19ca9238e2e70"
18
+ relation: "Byte-identical body lineage before Foundation relocation."
19
+ ---
1
20
  # Install Pibo as a Developer Host
2
21
 
3
22
  Use this path when the host is used to develop Pibo itself.
@@ -1,3 +1,22 @@
1
+ ---
2
+ type: "Guide"
3
+ title: "Install Pibo as a User Host"
4
+ description: "Guides operators through installing and configuring a Pibo user host."
5
+ tags: ["installation", "operations", "setup", "user-host"]
6
+ status: "draft"
7
+ authority: "directive"
8
+ generated:
9
+ by: "openai/codex"
10
+ at: "2026-08-30T15:47:50Z"
11
+ sources:
12
+ - id: "foundation-relocation-source"
13
+ resource: "https://github.com/Pascapone/pibo/blob/2aef244301f5d181624662fdad53e18e83e80bd9/docs/ops/install-user-host.md"
14
+ title: "Original byte-preserved user-host installation guide"
15
+ commit: "2aef244301f5d181624662fdad53e18e83e80bd9"
16
+ path: "docs/ops/install-user-host.md"
17
+ sha256: "f3f6c51fe9f7b30fe8828cf844c82d8ef5ffebb715bab06d78348d5a9d547722"
18
+ relation: "Byte-identical body lineage before Foundation relocation."
19
+ ---
1
20
  # Install Pibo as a User Host
2
21
 
3
22
  Use this path when you want to run Pibo, not develop Pibo itself.
@@ -1,3 +1,22 @@
1
+ ---
2
+ type: "Guide"
3
+ title: "Upgrade a User Host to a Developer Host"
4
+ description: "Guides operators through upgrading a Pibo user host to a developer host without replacing production state."
5
+ tags: ["developer-host", "operations", "setup", "upgrade"]
6
+ status: "draft"
7
+ authority: "directive"
8
+ generated:
9
+ by: "openai/codex"
10
+ at: "2026-08-30T15:47:50Z"
11
+ sources:
12
+ - id: "foundation-relocation-source"
13
+ resource: "https://github.com/Pascapone/pibo/blob/2aef244301f5d181624662fdad53e18e83e80bd9/docs/ops/upgrade-user-to-developer-host.md"
14
+ title: "Original byte-preserved user-host upgrade guide"
15
+ commit: "2aef244301f5d181624662fdad53e18e83e80bd9"
16
+ path: "docs/ops/upgrade-user-to-developer-host.md"
17
+ sha256: "a48141d6456800b5e05472dfa7464d44a3b1605ad25a3209145a4d5bfcef22f8"
18
+ relation: "Byte-identical body lineage before Foundation relocation."
19
+ ---
1
20
  # Upgrade a User Host to a Developer Host
2
21
 
3
22
  A normal npm-installed Pibo host can be upgraded later. The upgrade must preserve the production gateway and add development infrastructure next to it.
@@ -1,3 +1,22 @@
1
+ ---
2
+ type: "Runbook"
3
+ title: "Pibo VS Code Extension Release Runbook"
4
+ description: "Describes the end-to-end release procedure for Pibo's VS Code extension and related package artifacts."
5
+ tags: ["release", "runbook", "vscode", "vsix"]
6
+ status: "deprecated"
7
+ authority: "directive"
8
+ generated:
9
+ by: "openai/codex"
10
+ at: "2026-08-30T15:47:50Z"
11
+ sources:
12
+ - id: "foundation-relocation-source"
13
+ resource: "https://github.com/Pascapone/pibo/blob/2aef244301f5d181624662fdad53e18e83e80bd9/docs/ops/vscode-extension-release.md"
14
+ title: "Original byte-preserved Pibo VS Code extension release runbook"
15
+ commit: "2aef244301f5d181624662fdad53e18e83e80bd9"
16
+ path: "docs/ops/vscode-extension-release.md"
17
+ sha256: "4d7588693a51389ebc3ea53eb088272743e707e3d81a5f436ab58578769f56c2"
18
+ relation: "Byte-identical body lineage before Foundation relocation."
19
+ ---
1
20
  # Pibo VS Code Extension Release Runbook
2
21
 
3
22
  The Pibo VS Code extension is shipped as a `.vsix` artifact. This runbook describes the end-to-end release process and the split of responsibilities between the maintainer and the `pibo` release script.
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@pasko70/pibo",
3
- "version": "3.1.4",
3
+ "version": "3.2.0",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@pasko70/pibo",
9
- "version": "3.1.4",
9
+ "version": "3.2.0",
10
10
  "workspaces": [
11
11
  "packages/workflows"
12
12
  ],
@@ -59,7 +59,8 @@
59
59
  "typescript": "^6.0.3",
60
60
  "vite": "^8.0.10",
61
61
  "vite-tsconfig-paths": "^5.1.4",
62
- "vscode": "file:src/apps/chat-vscode/extension/vscode-shim"
62
+ "vscode": "file:src/apps/chat-vscode/extension/vscode-shim",
63
+ "yaml": "^2.9.0"
63
64
  },
64
65
  "engines": {
65
66
  "node": ">=24"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pasko70/pibo",
3
- "version": "3.1.4",
3
+ "version": "3.2.0",
4
4
  "type": "module",
5
5
  "workspaces": [
6
6
  "packages/workflows"
@@ -11,7 +11,12 @@
11
11
  "!dist/apps/vscode-artifacts/**",
12
12
  "context",
13
13
  "skills/builtin/**",
14
- "docs/ops/**",
14
+ "docs/project/operations/**",
15
+ "docs/project/installation-profiles.md",
16
+ "docs/project/guides/pibo-on-windows-via-wsl.md",
17
+ "docs/project/guides/pibo-vscode-ext-quickstart.md",
18
+ "!docs/README.md",
19
+ "!docs/project/README.md",
15
20
  "README.md",
16
21
  "src/mcp/LICENSE.mcp-cli",
17
22
  "npm-shrinkwrap.json",
@@ -53,6 +58,14 @@
53
58
  "build": "npm run workflows:build && node --max-old-space-size=1200 node_modules/typescript/bin/tsc -p tsconfig.json && npm run web-ui:build && npm run vscode:webview:build && node scripts/ensure-bin-executable.mjs",
54
59
  "start": "node dist/bin/pibo.js",
55
60
  "test": "npm run build && node scripts/run-test-suite.mjs",
61
+ "docs:validate": "npm run docs:validate:strict",
62
+ "docs:validate:okf": "node scripts/validate-okf-docs.mjs --mode core",
63
+ "docs:validate:migration": "node scripts/validate-okf-docs.mjs --mode migration",
64
+ "docs:validate:strict": "node scripts/validate-okf-docs.mjs --mode strict",
65
+ "docs:indexes:write": "node scripts/generate-okf-indexes.mjs",
66
+ "docs:indexes:check": "node scripts/generate-okf-indexes.mjs --check",
67
+ "docs:log:check": "node scripts/check-okf-log.mjs",
68
+ "docs:validator:test": "node --test test/okf-validator.test.mjs test/okf-authoring-guidance.test.mjs",
56
69
  "check:product-vocab": "node scripts/legacy-product-vocabulary-gate.mjs",
57
70
  "validate:ink-web-derived": "node scripts/ink-cli-web-derived-parity-validate.mjs",
58
71
  "compute:limited-worker-smoke": "node scripts/compute-limited-worker-smoke.mjs",
@@ -111,6 +124,7 @@
111
124
  "typescript": "^6.0.3",
112
125
  "vite": "^8.0.10",
113
126
  "vite-tsconfig-paths": "^5.1.4",
114
- "vscode": "file:src/apps/chat-vscode/extension/vscode-shim"
127
+ "vscode": "file:src/apps/chat-vscode/extension/vscode-shim",
128
+ "yaml": "^2.9.0"
115
129
  }
116
130
  }
@@ -228,7 +228,9 @@ A turn that reaches queue/idle but fails provider authentication proves only rou
228
228
 
229
229
  ## Validation report
230
230
 
231
- Write `docs/reports/<adapter-or-milestone>-validation-YYYY-MM-DD.md` containing:
231
+ Publish validation as an `Evidence Report` at `docs/reports/evidence/<adapter-or-milestone>-validation-YYYY-MM-DD.md`. Read `docs/project/documentation-profile.md` first, include all required frontmatter plus `evidence: { id, published_at }`, register the final SHA-256 in `docs/reports/artifacts/okf-migration/evidence-manifest.json`, and never edit the published bytes in place. Add the ledger record, run `npm run docs:indexes:write`, and update `docs/log.md` explicitly. Corrections and reruns receive a new identity and path.
232
+
233
+ The report body contains:
232
234
 
233
235
  - status and scope;
234
236
  - branch, PR, commits, package version/path/checksum;