@cydm/pie 1.0.50 → 2.1.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 (51) hide show
  1. package/README.md +32 -15
  2. package/dist/builtin/extensions/ask-user/index.js +4 -3
  3. package/dist/builtin/extensions/ask-user/package.json +8 -7
  4. package/dist/builtin/extensions/changelog/package.json +9 -9
  5. package/dist/builtin/extensions/computer-use/index.js +5466 -0
  6. package/dist/builtin/extensions/computer-use/package.json +11 -0
  7. package/dist/builtin/extensions/computer-use/prebuilt/linux/arm64/linux-bridge +0 -0
  8. package/dist/builtin/extensions/computer-use/prebuilt/linux/x64/linux-bridge +0 -0
  9. package/dist/builtin/extensions/computer-use/prebuilt/macos/arm64/pie-computer-use +0 -0
  10. package/dist/builtin/extensions/computer-use/prebuilt/macos/universal/pie-computer-use.app/Contents/Info.plist +24 -0
  11. package/dist/builtin/extensions/computer-use/prebuilt/macos/universal/pie-computer-use.app/Contents/MacOS/pie-computer-use +0 -0
  12. package/dist/builtin/extensions/computer-use/prebuilt/macos/universal/pie-computer-use.app/Contents/_CodeSignature/CodeResources +115 -0
  13. package/dist/builtin/extensions/computer-use/prebuilt/macos/x64/pie-computer-use +0 -0
  14. package/dist/builtin/extensions/computer-use/prebuilt/windows/windows-bridge.exe +0 -0
  15. package/dist/builtin/extensions/computer-use/scripts/build-native.mjs +277 -0
  16. package/dist/builtin/extensions/computer-use/scripts/helper-path.mjs +48 -0
  17. package/dist/builtin/extensions/computer-use/scripts/setup-helper.mjs +549 -0
  18. package/dist/builtin/extensions/document-attachments/index.js +51 -0
  19. package/dist/builtin/extensions/document-attachments/package.json +9 -9
  20. package/dist/builtin/extensions/init/package.json +9 -9
  21. package/dist/builtin/extensions/mcp-adapter/index.js +25250 -0
  22. package/dist/builtin/extensions/mcp-adapter/package.json +11 -0
  23. package/dist/builtin/extensions/plan-mode/index.js +4 -3
  24. package/dist/builtin/extensions/plan-mode/package.json +9 -9
  25. package/dist/builtin/extensions/subagent/index.js +17 -20
  26. package/dist/builtin/extensions/subagent/package.json +16 -12
  27. package/dist/builtin/extensions/todo/index.js +4 -3
  28. package/dist/builtin/extensions/todo/package.json +9 -9
  29. package/dist/builtin/skills/chrome-devtools-axi/CHANGELOG.md +5 -0
  30. package/dist/builtin/skills/chrome-devtools-axi/README.md +17 -0
  31. package/dist/builtin/skills/chrome-devtools-axi/SKILL.md +31 -0
  32. package/dist/builtin/skills/chrome-devtools-axi/chrome-devtools-axi-cli.js +77 -0
  33. package/dist/builtin/skills/chrome-devtools-axi/package.json +12 -0
  34. package/dist/builtin/skills/tui-use/README.md +7 -0
  35. package/dist/builtin/skills/tui-use/SKILL.md +58 -0
  36. package/dist/chunks/chunk-5353DEEC.js +130 -0
  37. package/dist/chunks/{chunk-XBWFDIAU.js → chunk-G2POWIA5.js} +129 -194
  38. package/dist/chunks/{chunk-K6ZOCJ4V.js → chunk-IM43UYVV.js} +861 -3376
  39. package/dist/chunks/{chunk-DZS34ACX.js → chunk-PMPD56N2.js} +243 -87
  40. package/dist/chunks/{chunk-FKAO25XH.js → chunk-QJH6YN2W.js} +1 -1
  41. package/dist/chunks/chunk-XXGYUYXI.js +2718 -0
  42. package/dist/chunks/{src-HYZFAW4V.js → src-QSP2OPHU.js} +3 -2
  43. package/dist/chunks/{test-stream-5T7E7C25.js → test-stream-CVGWFLSX.js} +2 -1
  44. package/dist/chunks/webapi-MBCKO7ZV.js +2481 -0
  45. package/dist/cli.js +186 -78
  46. package/package.json +5 -4
  47. package/dist/builtin/skills/browser-tools/CHANGELOG.md +0 -5
  48. package/dist/builtin/skills/browser-tools/README.md +0 -17
  49. package/dist/builtin/skills/browser-tools/SKILL.md +0 -43
  50. package/dist/builtin/skills/browser-tools/package.json +0 -12
  51. package/dist/builtin/skills/browser-tools/playwright-cli.js +0 -45
package/README.md CHANGED
@@ -299,31 +299,48 @@ The full contract (identity rules, schema, host integration) lives in [`docs/ext
299
299
 
300
300
  ## Browser Tools
301
301
 
302
- The built-in `browser-tools` skill uses Microsoft's Playwright CLI for visible browser automation. Its runtime dependencies ship with the CLI; do not run `npm install` inside the skill directory.
302
+ The built-in `chrome-devtools-axi` skill uses the chrome-devtools-axi CLI to drive a real Chrome browser over the Chrome DevTools Protocol. Its runtime dependencies ship with the CLI; do not run `npm install` inside the skill directory.
303
303
 
304
- Resolve the skill resource and run Playwright commands:
304
+ Resolve the skill resource and run browser commands:
305
305
 
306
306
  ```bash
307
- node <resolvedPath for browser-tools/playwright-cli.js> open https://example.com
308
- node <resolvedPath for browser-tools/playwright-cli.js> snapshot
309
- node <resolvedPath for browser-tools/playwright-cli.js> screenshot
310
- node <resolvedPath for browser-tools/playwright-cli.js> console
311
- node <resolvedPath for browser-tools/playwright-cli.js> requests
307
+ node <resolvedPath for chrome-devtools-axi/chrome-devtools-axi-cli.js> open https://example.com
308
+ node <resolvedPath for chrome-devtools-axi/chrome-devtools-axi-cli.js> snapshot
309
+ node <resolvedPath for chrome-devtools-axi/chrome-devtools-axi-cli.js> screenshot /tmp/page.png
310
+ node <resolvedPath for chrome-devtools-axi/chrome-devtools-axi-cli.js> console
311
+ node <resolvedPath for chrome-devtools-axi/chrome-devtools-axi-cli.js> network
312
312
  ```
313
313
 
314
- If Playwright's Chromium browser is not installed, run:
314
+ The CLI launches or attaches to a real Chrome/Edge browser; see `--help` for connection modes (headed mode, auto-connect, custom profile, remote browser URL) and `CHROME_DEVTOOLS_AXI_SESSION` for concurrent isolated sessions.
315
315
 
316
- ```bash
317
- node <resolvedPath for browser-tools/playwright-cli.js> install-browser chromium
318
- ```
316
+ Run `pie doctor` to check whether chrome-devtools-axi and a Chrome browser are discoverable.
317
+
318
+ ## Terminal UI Automation
319
+
320
+ The built-in `tui-use` skill drives interactive terminal programs - REPLs, pdb/gdb debugger sessions, and full-screen TUI apps - through a PTY: read the screen as text, send keystrokes, and wait for output with `wait`/`wait --text`. Pie ships only the skill definition; the CLI runs on demand via `npx -y --install-strategy=nested tui-use@0.1.20` (the version tag in the skill is the lock). Use plain `bash` for anything non-interactive. First invocation installs the PTY runtime (macOS/Windows prebuilt; Linux compiles node-pty from source) and starts a session daemon (state in `~/.tui-use`); Windows ConPTY is not officially verified upstream.
321
+
322
+ ## Desktop Control (computer-use)
323
+
324
+ The built-in `computer-use` extension (vendored from `@injaneity/pi-computer-use@0.5.1`, frozen and self-maintained by Pie) controls real desktop applications on macOS, Windows, and Linux through a native accessibility helper. Desktop control is a last resort - prefer API, CLI, or web tools whenever they can accomplish the task.
325
+
326
+ Tools are tiered:
327
+
328
+ - **Observe tier (default)** - `find_roots`, `observe_ui`, `search_ui`, `expand_ui`, `inspect_ui`, `read_text`, `wait_for`, plus the CDP browser tools `launch_browser`, `navigate_browser`, `evaluate_browser`. These only read screen/UI state.
329
+ - **Act tier (first-use confirmation)** - `act_ui` synthesizes real input (click, type, scroll, keypress, drag). The first `act_ui` call in each session asks for confirmation (class `computer_use_act`); YOLO mode bypasses it, and non-interactive hosts block it deterministically.
330
+
331
+ Platform notes:
332
+
333
+ - **macOS** (14+): the signed helper app installs to `~/.pie/computer-use/pie-computer-use.app` on first use. Grant **Accessibility** and **Screen Recording** to `pie-computer-use.app` in System Settings → Privacy & Security; interactive sessions guide you through the prompts. Re-grant after helper updates (re-signing invalidates old grants).
334
+ - **Windows**: the helper installs to `~/.pie/helpers/computer-use/windows-bridge.exe` and needs an interactive desktop session.
335
+ - **Linux**: the helper installs to `~/.pie/helpers/computer-use/linux-bridge` and needs an AT-SPI2 bus (a running desktop session; headless servers are not supported).
319
336
 
320
- Run `pie doctor` to check whether Playwright CLI and its browser runtime are discoverable.
337
+ Config: `~/.pie/extensions/computer-use.json` (user) or `.pie/computer-use.json` (project) with `browser_use`, `headless`, `cursor_overlay`, `managed_browser`; env overrides `PIE_COMPUTER_USE_BROWSER_USE` / `PIE_COMPUTER_USE_HEADLESS` / `PIE_COMPUTER_USE_CURSOR_OVERLAY` / `PIE_COMPUTER_USE_MANAGED_BROWSER`. Run `/computer-use` (slash command) to inspect the loaded config, and `pie doctor` for helper install status. The extension can be toggled like any other (`/settings/extensions`, identity `computer-use`).
321
338
 
322
339
  ## Web Research
323
340
 
324
341
  Pie exposes one default model-visible web tool: `web_research`. Use it for public web research, current information, online documentation, and internet inspiration. Pass `query` for research, `url` to fetch a known page/PDF, or `query` with `mode: "search"` for low-level search results. Workspace search remains separate: use `grep_text`, `find_files`, and `list_dir` for local repository content.
325
342
 
326
- `web_search` and `web_fetch` remain lower-level internal primitives for probes, diagnostics, and tests; they are not separate default model-visible tools. `web_search` does not scrape DuckDuckGo or fall back to `bash` with `curl` or Python HTTP scripts. If the configured provider/model cannot perform native web search, Pie returns a clear unavailable result with provider/configuration details. In the CLI, `web_research` can use browser-tools for browser-rendered sources when the Playwright runtime is available; Unity reports those pages as `requires_browser`.
343
+ `web_search` and `web_fetch` remain lower-level internal primitives for probes, diagnostics, and tests; they are not separate default model-visible tools. `web_search` does not scrape DuckDuckGo or fall back to `bash` with `curl` or Python HTTP scripts. If the configured provider/model cannot perform native web search, Pie returns a clear unavailable result with provider/configuration details. In the CLI, `web_research` can use chrome-devtools-axi for browser-rendered sources when a Chrome browser is available; Unity reports those pages as `requires_browser`.
327
344
 
328
345
  `web_research` records route health and latency in Pie's state directory so later runs can prefer providers with better source quality, fewer timeouts, and lower rate-limit pressure. `pie doctor --json` reports the recorded provider health, and `verify:web` writes web metrics including p50/p95 latency, failure categories, and citation quality artifacts.
329
346
 
@@ -346,7 +363,7 @@ pie doctor
346
363
  pie doctor --json
347
364
  ```
348
365
 
349
- Doctor checks Node/npm, model configuration, API key availability, writable Pie data paths, Playwright browser readiness, Unity bridge hints, and runtime log location. User-facing errors stay concise; detailed debugging goes to `~/.pie/logs/pie-cli.log` and session trace artifacts.
366
+ Doctor checks Node/npm, model configuration, API key availability, writable Pie data paths, chrome-devtools-axi and Chrome browser readiness, Unity bridge hints, and runtime log location. User-facing errors stay concise; detailed debugging goes to `~/.pie/logs/pie-cli.log` and session trace artifacts.
350
367
 
351
368
  ## Output Modes
352
369
 
@@ -396,7 +413,7 @@ npm run verify:terminal:matrix
396
413
  Use `npm run verify:agent` when model credentials are available and you want the real daily agent gate.
397
414
  Use `npm run verify:agent:nightly` before release candidates that claim real-provider reliability.
398
415
  Use `UNITY_EDITOR="/path/to/Unity" npm run verify:unity:reliability` before Unity release candidates. For live Unity Dev RPC coverage, run `PIE_UNITY_REAL_RPC=1 UNITY_EDITOR="/path/to/Unity" npm run verify:unity:reliability`.
399
- Set `PIE_REAL_BROWSER=1` when you want `verify:browser` to open a real browser session instead of only checking the Playwright CLI contract.
416
+ Set `PIE_REAL_BROWSER=1` when you want `verify:browser` to open a real browser session instead of only checking the chrome-devtools-axi CLI contract.
400
417
  Set `PIE_REAL_WEB=1` when you want `verify:web` to run real provider web research smoke with fetched or browser-read citations.
401
418
 
402
419
  ## Publishing
@@ -1,9 +1,10 @@
1
1
  import { createRequire as __createRequire } from "node:module"; const require = __createRequire(import.meta.url);
2
2
  import {
3
3
  createAskUserCapability
4
- } from "../../../chunks/chunk-DZS34ACX.js";
5
- import "../../../chunks/chunk-FKAO25XH.js";
6
- import "../../../chunks/chunk-K6ZOCJ4V.js";
4
+ } from "../../../chunks/chunk-PMPD56N2.js";
5
+ import "../../../chunks/chunk-QJH6YN2W.js";
6
+ import "../../../chunks/chunk-IM43UYVV.js";
7
+ import "../../../chunks/chunk-XXGYUYXI.js";
7
8
  import "../../../chunks/chunk-LZQXQOPJ.js";
8
9
 
9
10
  // builtin/extensions/ask-user/index.ts
@@ -1,9 +1,10 @@
1
1
  {
2
- "name": "@pie/ask-user-extension",
3
- "version": "1.0.0",
4
- "type": "module",
5
- "pie": {
6
- "name": "ask-user",
7
- "main": "index.ts"
8
- }
2
+ "name": "@pie/ask-user-extension",
3
+ "version": "1.0.0",
4
+ "type": "module",
5
+ "pie": {
6
+ "name": "ask-user",
7
+ "main": "index.js"
8
+ },
9
+ "main": "index.js"
9
10
  }
@@ -1,11 +1,11 @@
1
1
  {
2
- "name": "@pie/extension-changelog",
3
- "version": "1.0.0",
4
- "description": "Intelligent changelog management with gap detection",
5
- "main": "index.ts",
6
- "type": "module",
7
- "pie": {
8
- "name": "changelog",
9
- "main": "index.ts"
10
- }
2
+ "name": "@pie/extension-changelog",
3
+ "version": "1.0.0",
4
+ "description": "Intelligent changelog management with gap detection",
5
+ "main": "index.js",
6
+ "type": "module",
7
+ "pie": {
8
+ "name": "changelog",
9
+ "main": "index.js"
10
+ }
11
11
  }