pikibun 0.20.0 → 0.22.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 (29) hide show
  1. package/README.md +15 -6
  2. package/dist/chunks/{chunk-BVKSJ7PV.js → chunk-KOZ2NZL7.js} +4590 -3062
  3. package/dist/chunks/{cli-W7LFSBCE.js → cli-OGQRYOKN.js} +2523 -1644
  4. package/dist/cli.js +114 -5
  5. package/dist/migrations/postgres/0038_workspace_attachments.sql +11 -0
  6. package/dist/migrations/postgres/0039_extensions.sql +54 -0
  7. package/dist/migrations/postgres/0040_child_session_settings.sql +12 -0
  8. package/dist/migrations/postgres/0040_host_builtin_extensions.sql +5 -0
  9. package/dist/migrations/postgres/0040_notifications.sql +47 -0
  10. package/dist/migrations/postgres/0041_piki_extensions.sql +32 -0
  11. package/dist/migrations/postgres/0042_default_extensions.sql +23 -0
  12. package/dist/migrations/postgres/0043_host_required_extensions.sql +6 -0
  13. package/dist/migrations/sqlite/0045_workspace_attachments.sql +9 -0
  14. package/dist/migrations/sqlite/0046_extensions.sql +52 -0
  15. package/dist/migrations/sqlite/0047_child_session_settings.sql +10 -0
  16. package/dist/migrations/sqlite/0047_host_builtin_extensions.sql +3 -0
  17. package/dist/migrations/sqlite/0047_notifications.sql +45 -0
  18. package/dist/migrations/sqlite/0048_piki_extensions.sql +30 -0
  19. package/dist/migrations/sqlite/0049_default_extensions.sql +22 -0
  20. package/dist/migrations/sqlite/0050_host_required_extensions.sql +4 -0
  21. package/dist/web/assets/index-BdJ_-50H.js +62 -0
  22. package/dist/web/assets/{index-CnOXvi_D.js → index-ClW_3YVo.js} +1 -1
  23. package/dist/web/assets/index-DR-JFaOB.css +1 -0
  24. package/dist/web/index.html +2 -2
  25. package/dist/web/sw.js +61 -0
  26. package/npm-shrinkwrap.json +3 -2
  27. package/package.json +2 -1
  28. package/dist/web/assets/index-BTJ7REap.css +0 -1
  29. package/dist/web/assets/index-D8LT-Xr6.js +0 -58
package/README.md CHANGED
@@ -66,7 +66,7 @@ Each exact command and timeout needs the approval of the **host owner**, or of a
66
66
 
67
67
  ## macOS, Windows and hosts without bubblewrap
68
68
 
69
- The isolated sandbox needs Linux (or WSL2 on Windows). macOS and native Windows can try their own experimental sandboxes with `--experimental-sandbox` (see the main README, "Experimental sandboxes on macOS and Windows"). On macOS, native Windows, or Linux without bubblewrap, you can also opt out of isolation:
69
+ The isolated sandbox needs Linux (or WSL2 on Windows). macOS and native Windows can try their own experimental sandboxes with `--experimental-sandbox` (see "Experimental sandboxes on macOS and Windows" in [`docs/hosts.md`](https://github.com/OpenCara/pikibun/blob/main/docs/hosts.md#experimental-sandboxes-on-macos-and-windows)). On macOS, native Windows, or Linux without bubblewrap, you can also opt out of isolation:
70
70
 
71
71
  ```sh
72
72
  npx pikibun@latest connect --unsafe-no-sandbox
@@ -122,14 +122,23 @@ The sandbox has no network, so `gh` and `curl` inside it can't reach GitHub. Age
122
122
  - `github_comment` posts a comment. It waits for a human approval unless the session owner's message chose **Auto-approve**.
123
123
  - `github_issue` opens an issue with exactly the approved title and body in one of those repositories, and gives the agent its number and URL (connector newer than 0.9.0). It waits for a human approval unless the session owner's message chose **Auto-approve**. If GitHub refuses (issues turned off, no access), no issue is opened and the agent gets GitHub's reason.
124
124
 
125
- ## Web pages and search
125
+ ## Extensions
126
126
 
127
- Agents read web pages with `web_fetch` and search the web with `web_search` (connector newer than 0.9.0).
127
+ Sessions on this host run the Pi extensions their workspace chose that are installed here at the same version. The host's owner installs them from Pikibun (the host's page), or here:
128
128
 
129
- - `web_fetch` reads one `https://` page from this host, as far as the workspace's network access lets the session's sandbox reach, and never at an address in this host's own networks. It sends no cookies or credentials and only reads; HTML comes back as text, images as images. It needs no approval, during a shared message. On a host running without the sandbox it still follows the workspace's network access.
130
- - `web_search` asks Pikibun, which searches with the provider its operator configured, where the workspace turned web search on. The provider's key never reaches this host.
129
+ ```sh
130
+ npx pikibun@latest extensions add npm:cc-safety-net@2.7.2 # an exact version
131
+ npx pikibun@latest extensions add git:github.com/acme/ext@<commit> # a full commit, over https
132
+ npx pikibun@latest extensions add ./my-extension.ts # a dev extension: your own sessions only
133
+ npx pikibun@latest extensions list # what each offers, ignores, or why it doesn't load
134
+ npx pikibun@latest extensions remove cc-safety-net
135
+ ```
136
+
137
+ They live in the connector's state directory; npm runs none of their install scripts unless you add `--allow-scripts`. A running connector picks up changes made here within half a minute. `pikibun connect --no-remote-installs` refuses installs asked for in Pikibun.
138
+
139
+ Extensions run in the connector, as this machine's user, with your files, credentials and network, outside the sandbox. Install only code you trust. Their tool calls are approved like host commands. Pikibun's own `web_fetch` and `web_search` tools are retired: web search comes from extensions.
131
140
 
132
- What they return is untrusted input, like any repository content.
141
+ Three extensions are built into the connector, so there is nothing to install: `piki:gh`, `piki:glab` and `piki:azure-cli` give sessions the GitHub, GitLab and Azure CLIs (`gh`, `glab`, `az`) where their workspace uses them. Install those commands on this machine and sign in to them (`gh auth login`, `glab auth login`, `az login` and `az extension add --name azure-devops`); their tool calls act as you. `pikibun extensions list` shows them.
133
142
 
134
143
  ## Chat options
135
144