@pi-unipi/unipi 3.0.0-alpha.35 → 3.0.0-alpha.37
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/CHANGELOG.md +37 -0
- package/README.md +10 -1
- package/package.json +25 -25
- package/packages/app-bridge/package.json +2 -2
- package/packages/app-bridge/src/bridge.ts +748 -58
- package/packages/app-bridge/src/paths.ts +299 -0
- package/packages/app-bridge/src/snapshot.ts +21 -0
- package/packages/app-bridge/src/wire.ts +162 -14
- package/packages/app-bridge/src/work.ts +14 -251
- package/packages/ask-user/package.json +2 -2
- package/packages/autocomplete/package.json +1 -1
- package/packages/autocomplete/src/constants.ts +5 -1
- package/packages/autocomplete/src/provider.ts +10 -1
- package/packages/background-tasks/README.md +23 -5
- package/packages/background-tasks/package.json +2 -2
- package/packages/background-tasks/src/index.ts +61 -169
- package/packages/background-tasks/src/registry-shared.ts +30 -0
- package/packages/background-tasks/src/registry.ts +30 -0
- package/packages/background-tasks/src/tools.ts +2 -2
- package/packages/background-tasks/src/tray-pane.ts +410 -0
- package/packages/btw/extensions/btw.ts +66 -17
- package/packages/btw/package.json +2 -2
- package/packages/compactor/package.json +3 -3
- package/packages/core/bus.ts +55 -0
- package/packages/core/command-echo.ts +30 -1
- package/packages/core/events.ts +2 -0
- package/packages/core/index.ts +5 -0
- package/packages/core/package.json +1 -1
- package/packages/core/src/hints/index.ts +2 -1
- package/packages/core/src/hints/lines.ts +25 -1
- package/packages/core/src/tui/shared-ticker.ts +82 -0
- package/packages/core/src/turn/arbiter.ts +22 -0
- package/packages/core/src/turn/pending-work.ts +168 -0
- package/packages/core/src/work/index.ts +356 -0
- package/packages/core/src/work/pane-kit.ts +224 -0
- package/packages/core/src/work/tray.ts +369 -0
- package/packages/core/utils.ts +5 -0
- package/packages/dream/README.md +94 -0
- package/packages/dream/extensions/dream.ts +277 -0
- package/packages/dream/package.json +55 -0
- package/packages/dream/skills/craft-skill/SKILL.md +10 -0
- package/packages/dream/skills/craft-skill/scripts/check +17 -0
- package/packages/dream/skills/craft-skill/scripts/scaffold +10 -0
- package/packages/dream/src/controller.ts +337 -0
- package/packages/dream/src/digest.ts +195 -0
- package/packages/dream/src/report.ts +130 -0
- package/packages/dream/src/runner.ts +162 -0
- package/packages/dream/src/runs.ts +330 -0
- package/packages/dream/src/schedule.ts +93 -0
- package/packages/dream/src/settings.ts +90 -0
- package/packages/dream/src/tray-pane.ts +358 -0
- package/packages/footer/README.md +1 -1
- package/packages/footer/package.json +3 -3
- package/packages/footer/src/config.ts +5 -2
- package/packages/footer/src/index.ts +72 -4
- package/packages/footer/src/process-line.ts +59 -0
- package/packages/fusion/package.json +4 -4
- package/packages/fusion/src/index.ts +7 -10
- package/packages/fusion/src/nudge.ts +52 -13
- package/packages/fusion/src/picker.ts +29 -3
- package/packages/fusion/src/preset-editor.ts +2 -2
- package/packages/info-screen/package.json +2 -2
- package/packages/input-shortcuts/package.json +2 -2
- package/packages/kanboard/package.json +7 -7
- package/packages/long-horizon/README.md +20 -0
- package/packages/long-horizon/index.ts +69 -3
- package/packages/long-horizon/package.json +4 -2
- package/packages/long-horizon/src/engine/ralph.ts +7 -0
- package/packages/long-horizon/src/gate.ts +38 -8
- package/packages/long-horizon/src/judge/credentials.ts +78 -0
- package/packages/long-horizon/src/judge/resolve.ts +8 -9
- package/packages/long-horizon/src/judge/typesafe.ts +2 -2
- package/packages/long-horizon/src/progress-chart.ts +348 -0
- package/packages/long-horizon/src/progress-mermaid.ts +105 -0
- package/packages/long-horizon/src/progress-snapshot.ts +329 -0
- package/packages/long-horizon/src/progress-view.ts +591 -0
- package/packages/long-horizon/src/runtime.ts +7 -0
- package/packages/long-horizon/src/tools/graph.ts +31 -3
- package/packages/long-horizon/src/tools/swarm.ts +29 -3
- package/packages/long-horizon/src/visualize.ts +147 -0
- package/packages/mcp/package.json +2 -2
- package/packages/memory/README.md +10 -0
- package/packages/memory/commands.ts +3 -2
- package/packages/memory/daemon.ts +1 -1
- package/packages/memory/index.ts +3 -0
- package/packages/memory/mempalace.ts +18 -3
- package/packages/memory/package.json +3 -3
- package/packages/memory/reader.ts +80 -12
- package/packages/memory/session.ts +2 -1
- package/packages/notify/README.md +2 -2
- package/packages/notify/events.ts +165 -9
- package/packages/notify/package.json +2 -2
- package/packages/notify/settings.ts +2 -2
- package/packages/skill-registry/package.json +2 -2
- package/packages/subagents/README.md +2 -2
- package/packages/subagents/package.json +3 -3
- package/packages/subagents/src/cards.ts +8 -7
- package/packages/subagents/src/index.ts +36 -55
- package/packages/subagents/src/manager-shared.ts +6 -1
- package/packages/subagents/src/manager.ts +5 -3
- package/packages/subagents/src/ui.ts +63 -153
- package/packages/unipi/bundled.js +8914 -4860
- package/packages/unipi/index.ts +10 -1
- package/packages/updater/package.json +2 -2
- package/packages/updater/src/channel.ts +87 -0
- package/packages/updater/src/checker.ts +56 -31
- package/packages/updater/src/index.ts +2 -1
- package/packages/updater/src/installer.ts +10 -5
- package/packages/updater/src/remote-changelog.ts +19 -6
- package/packages/updater/src/tui/changelog-overlay.ts +4 -8
- package/packages/updater/src/tui/update-overlay.ts +1 -1
- package/packages/updater/types.ts +4 -0
- package/packages/utility/package.json +2 -2
- package/packages/utility/src/diagnostics/engine.ts +56 -0
- package/packages/utility/src/image/recognize.ts +1 -1
- package/packages/utility/src/image/transports.ts +1 -1
- package/packages/watchdog/package.json +3 -3
- package/packages/web-api/package.json +2 -2
- package/packages/web-api/src/engine/dependencies.ts +116 -9
- package/packages/web-api/src/engine/extract.ts +4 -4
- package/packages/web-api/src/index.ts +2 -2
- package/packages/workflow/package.json +2 -2
- package/packages/workflow/src/permission/decide.ts +4 -2
- package/packages/background-tasks/src/task-manager.ts +0 -785
- package/packages/long-horizon/src/judge/omniroute-key.ts +0 -56
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,43 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [3.0.0-alpha.37] — 2026-10-11
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
- `/unipi:visualize-progress`: **chart mode.** In terminals that show images (Kitty graphics), the run's steps or swarm are drawn as the same chart the UniPi app shows, above the log, and redrawn live as the run moves. Press `m` to switch between chart and text. Other terminals keep the text view, and the footer says why the chart is off. (UNI-258)
|
|
13
|
+
- `/unipi:doctor` reports whether the Microsoft Visual C++ runtime that web reads need on Windows is installed. (UNI-261)
|
|
14
|
+
|
|
15
|
+
### Fixed
|
|
16
|
+
- Windows: a missing Visual C++ runtime no longer stops UniPi from loading. Web reads fall back to plain fetch; the README says how to install the runtime. (UNI-261)
|
|
17
|
+
- The updater stays on the release channel you installed from. An alpha install checks for newer alphas, never offers an older version (such as the stable 2.x), installs from the same channel, and shows that channel's changelog. (UNI-262)
|
|
18
|
+
|
|
19
|
+
## [3.0.0-alpha.36] — 2026-10-11
|
|
20
|
+
|
|
21
|
+
### Added
|
|
22
|
+
- `dream` (new package, **off by default**): Dream reviews your past sessions in the background, turns repeated false paths into memory lessons and proposes skills and checks for you to approve or reject. `/unipi:dream` shows its state (`/unipi:dream run` starts one now), and `/unipi:settings` → Dream turns it on; the work tray gets a Dream tab (runs, live detail, report, approve/reject, stop, run now) that stays hidden while Dream is off and has no history. The UniPi app gets a Dream sheet. (UNI-118)
|
|
23
|
+
- **One work tray** for background tasks and subagents: press ↓ on an empty input (or Shift+↓, `/unipi:bg-tasks`, `/unipi:subagents`) and switch tabs with ←/→. The Background tasks tab now looks like the Subagents tab, and nothing is drawn under the editor while the tray is closed. (UNI-126)
|
|
24
|
+
- `/unipi:visualize-progress`: a live view of a long-horizon run — steps, spinners, progress bars and the log in one fixed layout. The UniPi app can show the same view. (UNI-222)
|
|
25
|
+
- `kanboard`: the kanboard daemon serves the UniPi app's web build, so the board and the app share one frontend. (UNI-117)
|
|
26
|
+
- `app-bridge`: features for UniPi app 0.4.x — pi's own queue can be edited from the phone (Stop puts it back in the composer), file links in chat are checked against the PC (session folder, home, and safe roots such as `/tmp`, `/var/tmp`, `/mnt`, `/media`, `/srv`, `/opt`), Dream and progress views, and the Fusion preset follows model changes. (UNI-202, UNI-204, UNI-211, UNI-220, UNI-176)
|
|
27
|
+
|
|
28
|
+
### Changed
|
|
29
|
+
- One "Working…" state while background tasks or subagents that can wake the agent are still running: the footer and the app show waiting instead of idle, and notify sends a single "All done" when everything has finished. (UNI-162, UNI-221)
|
|
30
|
+
- Long-horizon modes (`/unipi:<mode>`) stay on until you switch or the run that owns them settles. (UNI-165)
|
|
31
|
+
- Autocomplete offers every registered `/unipi:*` command, including `/unipi:visualize-progress` and `/unipi:dream`; commands missing from the curated list are no longer dropped.
|
|
32
|
+
- Omniroute-specific code is gone; the judge picks models from pi's own model registry. (UNI-249)
|
|
33
|
+
- All spinners share one animation tick instead of one timer per card. (UNI-133)
|
|
34
|
+
|
|
35
|
+
### Fixed
|
|
36
|
+
- `notify`: one "finished" notification per run, not one per chat change. (UNI-223)
|
|
37
|
+
- `app-bridge`: "after it ends" items are always delivered once pi is really idle — exactly once and in order; an item pi doesn't take is restored, and a phone Stop doesn't send it early. (UNI-212, UNI-223)
|
|
38
|
+
- `app-bridge`: editing a queued message from the phone no longer loses messages. (UNI-202)
|
|
39
|
+
- Side questions (`btw`) keep streaming after the phone reconnects. (UNI-219)
|
|
40
|
+
- Typed `/commands` show as normal messages, and the hidden `/unipi-app-session` command never appears in the terminal, the session or the app. (UNI-251)
|
|
41
|
+
- `app-bridge`: the session tree works on very long sessions (no stack overflow, reply fits one socket line). (UNI-194)
|
|
42
|
+
- `memory`: MemPalace RAM use is bounded per session and over time. (UNI-179)
|
|
43
|
+
- `fusion`: the shell-delegation nudge no longer counts read-only commands it used to misread — kanboard CLI calls, quoted `|`/`;`/`>` in grep/echo patterns, and `$VAR` command heads assigned earlier in the same line. (UNI-108)
|
|
44
|
+
- The root package no longer lists a removed `packages/subagents/prompts` mount.
|
|
45
|
+
|
|
9
46
|
## [3.0.0-alpha.35] — 2026-10-08
|
|
10
47
|
|
|
11
48
|
### Added
|
package/README.md
CHANGED
|
@@ -41,6 +41,15 @@ UniPi needs [Pi](https://www.npmjs.com/package/@earendil-works/pi-coding-agent)
|
|
|
41
41
|
`0.87.1` or later. This command installs 21 extension packages. Each package
|
|
42
42
|
also works alone.
|
|
43
43
|
|
|
44
|
+
> [!TIP]
|
|
45
|
+
> **Windows:** web reads use a native module that needs the Microsoft Visual
|
|
46
|
+
> C++ 2015-2022 runtime. Most Windows installs have it; slimmed images such as
|
|
47
|
+
> tiny11 do not. Without it UniPi still loads and web reads fall back to plain
|
|
48
|
+
> fetch. To install it, run
|
|
49
|
+
> `winget install Microsoft.VCRedist.2015+.x64` or download
|
|
50
|
+
> [vc_redist.x64.exe](https://aka.ms/vs/17/release/vc_redist.x64.exe).
|
|
51
|
+
> `/unipi:doctor` reports whether it is missing.
|
|
52
|
+
|
|
44
53
|
<p align="center">
|
|
45
54
|
<img src="docs/assets/screenshots/simple-memory-glance.png" alt="A UniPi session in simple mode with memory recall, memory save and the glance footer">
|
|
46
55
|
</p>
|
|
@@ -249,11 +258,11 @@ The recent releases, in short. The [changelog](CHANGELOG.md) has the details.
|
|
|
249
258
|
|
|
250
259
|
| Release | What changed for you |
|
|
251
260
|
|---|---|
|
|
261
|
+
| alpha.36 | One work tray for background tasks and subagents (press ↓ on an empty input); nothing spins under the editor any more. `/unipi:visualize-progress` shows a long run live. Dream (off by default, `/unipi:dream`) learns from past sessions. Typed commands show as normal messages, and you get one "finished" notification per run. |
|
|
252
262
|
| alpha.29 | Plan mode plans with you: it asks before it submits, blocks only edits outside the plan, and the review shows a summary beside the steps. Notify can alert on any prompt the agent waits on (Input Needed). |
|
|
253
263
|
| alpha.27 | The footer shows tokens in and out and the session cost under the input. It fits narrow and short windows. Each part of the stats line, the frame badges and the rainbow can be turned off in `/unipi:settings` → Footer. The classic footer is gone. |
|
|
254
264
|
| alpha.25 | The Unicrab splash at startup. A new `/unipi:info`: this session, the context bucket, compaction savings and `s`/`p`/`g` scope tags. Prompts that UniPi sends for you (goal, summarize, answer) show as a UniPi panel, not as your own message. |
|
|
255
265
|
| alpha.24 | The `summarize` skill and `/unipi:summarize [focus]`. Long work ends with a short recap: the answer first, then findings, open items and questions. |
|
|
256
|
-
| alpha.23 | `/unipi:settings` explains each setting and each option in a panel below the list. Web tools with no working provider hide from the agent. |
|
|
257
266
|
|
|
258
267
|
## Docs
|
|
259
268
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pi-unipi/unipi",
|
|
3
|
-
"version": "3.0.0-alpha.
|
|
3
|
+
"version": "3.0.0-alpha.37",
|
|
4
4
|
"description": "All-in-one extension suite for Pi coding agent",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -71,9 +71,6 @@
|
|
|
71
71
|
"packages/kanboard/skills",
|
|
72
72
|
"packages/updater/skills",
|
|
73
73
|
"packages/subagents/skills"
|
|
74
|
-
],
|
|
75
|
-
"prompts": [
|
|
76
|
-
"packages/subagents/prompts"
|
|
77
74
|
]
|
|
78
75
|
},
|
|
79
76
|
"peerDependencies": {
|
|
@@ -83,27 +80,30 @@
|
|
|
83
80
|
"typebox": "^1.1.38"
|
|
84
81
|
},
|
|
85
82
|
"dependencies": {
|
|
86
|
-
"@pi-unipi/app-bridge": "3.0.0-alpha.
|
|
87
|
-
"@pi-unipi/ask-user": "3.0.0-alpha.
|
|
88
|
-
"@pi-unipi/background-tasks": "3.0.0-alpha.
|
|
89
|
-
"@pi-unipi/btw": "3.0.0-alpha.
|
|
90
|
-
"@pi-unipi/command-enchantment": "3.0.0-alpha.
|
|
91
|
-
"@pi-unipi/compactor": "3.0.0-alpha.
|
|
92
|
-
"@pi-unipi/core": "3.0.0-alpha.
|
|
93
|
-
"@pi-unipi/
|
|
94
|
-
"@pi-unipi/
|
|
95
|
-
"@pi-unipi/
|
|
96
|
-
"@pi-unipi/
|
|
97
|
-
"@pi-unipi/
|
|
98
|
-
"@pi-unipi/
|
|
99
|
-
"@pi-unipi/
|
|
100
|
-
"@pi-unipi/
|
|
101
|
-
"@pi-unipi/
|
|
102
|
-
"@pi-unipi/
|
|
103
|
-
"@pi-unipi/
|
|
104
|
-
"@pi-unipi/
|
|
105
|
-
"@pi-unipi/
|
|
106
|
-
"@pi-unipi/
|
|
83
|
+
"@pi-unipi/app-bridge": "3.0.0-alpha.37",
|
|
84
|
+
"@pi-unipi/ask-user": "3.0.0-alpha.37",
|
|
85
|
+
"@pi-unipi/background-tasks": "3.0.0-alpha.37",
|
|
86
|
+
"@pi-unipi/btw": "3.0.0-alpha.37",
|
|
87
|
+
"@pi-unipi/command-enchantment": "3.0.0-alpha.37",
|
|
88
|
+
"@pi-unipi/compactor": "3.0.0-alpha.37",
|
|
89
|
+
"@pi-unipi/core": "3.0.0-alpha.37",
|
|
90
|
+
"@pi-unipi/dream": "3.0.0-alpha.37",
|
|
91
|
+
"@pi-unipi/footer": "3.0.0-alpha.37",
|
|
92
|
+
"@pi-unipi/fusion": "3.0.0-alpha.37",
|
|
93
|
+
"@pi-unipi/info-screen": "3.0.0-alpha.37",
|
|
94
|
+
"@pi-unipi/input-shortcuts": "3.0.0-alpha.37",
|
|
95
|
+
"@pi-unipi/kanboard": "3.0.0-alpha.37",
|
|
96
|
+
"@pi-unipi/mcp": "3.0.0-alpha.37",
|
|
97
|
+
"@pi-unipi/memory": "3.0.0-alpha.37",
|
|
98
|
+
"@pi-unipi/notify": "3.0.0-alpha.37",
|
|
99
|
+
"@pi-unipi/skill-registry": "3.0.0-alpha.37",
|
|
100
|
+
"@pi-unipi/subagents": "3.0.0-alpha.37",
|
|
101
|
+
"@pi-unipi/updater": "3.0.0-alpha.37",
|
|
102
|
+
"@pi-unipi/utility": "3.0.0-alpha.37",
|
|
103
|
+
"@pi-unipi/web-api": "3.0.0-alpha.37",
|
|
104
|
+
"@pi-unipi/workflow": "3.0.0-alpha.37",
|
|
105
|
+
"@resvg/resvg-wasm": "^2.6.2",
|
|
106
|
+
"beautiful-mermaid": "^1.1.3"
|
|
107
107
|
},
|
|
108
108
|
"devDependencies": {
|
|
109
109
|
"@earendil-works/pi-agent-core": "^0.87.1",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pi-unipi/app-bridge",
|
|
3
|
-
"version": "3.0.0-alpha.
|
|
3
|
+
"version": "3.0.0-alpha.37",
|
|
4
4
|
"description": "Live bridge between a pi TUI session and the UniPi phone app — streaming chat, prompts, steering and dialogs from the phone",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "index.ts",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"access": "public"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@pi-unipi/core": "3.0.0-alpha.
|
|
34
|
+
"@pi-unipi/core": "3.0.0-alpha.37"
|
|
35
35
|
},
|
|
36
36
|
"peerDependencies": {
|
|
37
37
|
"@earendil-works/pi-coding-agent": "^0.87.1",
|