719 lines
30 KiB
Markdown
719 lines
30 KiB
Markdown
# runfusion.ai
|
||
|
||
## 0.22.0
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [e658e8e]
|
||
- Updated dependencies [7d41271]
|
||
- Updated dependencies [041eb89]
|
||
- Updated dependencies [c76db06]
|
||
- Updated dependencies [b2aed0f]
|
||
- Updated dependencies [d47501f]
|
||
- Updated dependencies [12193d2]
|
||
- Updated dependencies [ff66c20]
|
||
- Updated dependencies [bb6169a]
|
||
- Updated dependencies [12b4a4a]
|
||
- Updated dependencies [89fd7a9]
|
||
- Updated dependencies [f04ade0]
|
||
- Updated dependencies [8eb5c3d]
|
||
- Updated dependencies [b312ca4]
|
||
- @runfusion/fusion@0.22.0
|
||
|
||
## 0.21.0
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [ac74cb0]
|
||
- Updated dependencies [61dac28]
|
||
- Updated dependencies [8a57d3f]
|
||
- @runfusion/fusion@0.21.0
|
||
|
||
## 0.20.0
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [f711019]
|
||
- Updated dependencies [df20edb]
|
||
- Updated dependencies
|
||
- Updated dependencies [9b01c0a]
|
||
- Updated dependencies [b4a2e7a]
|
||
- Updated dependencies [e5fc71b]
|
||
- Updated dependencies [fdc37a3]
|
||
- Updated dependencies [1187ea4]
|
||
- Updated dependencies [4137573]
|
||
- Updated dependencies [b85743d]
|
||
- Updated dependencies [b061e2b]
|
||
- Updated dependencies [2f40843]
|
||
- Updated dependencies [69c75fe]
|
||
- Updated dependencies [d7880c6]
|
||
- Updated dependencies [f2accb7]
|
||
- Updated dependencies [576238a]
|
||
- Updated dependencies [995faf2]
|
||
- Updated dependencies [d790854]
|
||
- Updated dependencies [5fb7c77]
|
||
- Updated dependencies [aab28e1]
|
||
- Updated dependencies [a0c1e5b]
|
||
- Updated dependencies [43dd048]
|
||
- Updated dependencies [af0bc4b]
|
||
- Updated dependencies [8a30b6f]
|
||
- Updated dependencies [59f6c84]
|
||
- Updated dependencies [30f6381]
|
||
- Updated dependencies [2b809fc]
|
||
- Updated dependencies [d253e01]
|
||
- Updated dependencies [9115130]
|
||
- @runfusion/fusion@0.20.0
|
||
|
||
## 0.19.0
|
||
|
||
### Patch Changes
|
||
|
||
- d06475b: Surface "new version available" notices to users who run `npx runfusion.ai` without ever opening the dashboard. The launcher now reads the existing `~/.fusion/update-check.json` cache (written by the dashboard's update-check service) and prints a one-line stderr notice when a newer Fusion is published. When the cache is missing or older than 24h, a fire-and-forget fetch against the npm registry refreshes it (1.5s timeout) so non-dashboard users still pick up updates on their next run. Disable with `FUSION_NO_UPDATE_CHECK=1`; auto-skipped in CI and non-TTY contexts.
|
||
- Updated dependencies [1e73863]
|
||
- Updated dependencies [d06475b]
|
||
- Updated dependencies [eeab870]
|
||
- Updated dependencies [d30f8a7]
|
||
- Updated dependencies [496c000]
|
||
- Updated dependencies [8483a5f]
|
||
- Updated dependencies [df253a8]
|
||
- Updated dependencies [df253a8]
|
||
- @runfusion/fusion@0.19.0
|
||
|
||
## 0.18.1
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [89401cd]
|
||
- Updated dependencies [89401cd]
|
||
- @runfusion/fusion@0.18.1
|
||
|
||
## 0.18.0
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [986a928]
|
||
- Updated dependencies [c00b018]
|
||
- Updated dependencies [66f85da]
|
||
- Updated dependencies [3afb62b]
|
||
- Updated dependencies [cc5c8c6]
|
||
- Updated dependencies [08d655a]
|
||
- Updated dependencies [d761ea8]
|
||
- Updated dependencies [2b102af]
|
||
- Updated dependencies [8cb8055]
|
||
- @runfusion/fusion@0.18.0
|
||
|
||
## 0.17.2
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [bacc103]
|
||
- @runfusion/fusion@0.17.2
|
||
|
||
## 0.17.1
|
||
|
||
### Patch Changes
|
||
|
||
- @runfusion/fusion@0.17.1
|
||
|
||
## 0.17.0
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [6724cf5]
|
||
- Updated dependencies [ba893b8]
|
||
- Updated dependencies [5291a6f]
|
||
- Updated dependencies [3db1752]
|
||
- Updated dependencies [85d02c8]
|
||
- Updated dependencies [ea5b7af]
|
||
- Updated dependencies [7f3fb77]
|
||
- Updated dependencies [fca870f]
|
||
- Updated dependencies [d812427]
|
||
- Updated dependencies [a82c3dc]
|
||
- Updated dependencies [a47f319]
|
||
- Updated dependencies [9309c8c]
|
||
- Updated dependencies [b9b5c08]
|
||
- Updated dependencies [c76d138]
|
||
- Updated dependencies [21504f6]
|
||
- Updated dependencies [a1a8d03]
|
||
- Updated dependencies [63bb62f]
|
||
- Updated dependencies [de02fed]
|
||
- @runfusion/fusion@0.17.0
|
||
|
||
## 0.16.0
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [41bb6be]
|
||
- Updated dependencies [9c45d24]
|
||
- Updated dependencies [3bafc48]
|
||
- Updated dependencies [1744534]
|
||
- Updated dependencies [9619cd1]
|
||
- Updated dependencies [222e11c]
|
||
- Updated dependencies [8ba8f63]
|
||
- Updated dependencies [df04acd]
|
||
- Updated dependencies [2affc14]
|
||
- Updated dependencies [bf7caf5]
|
||
- Updated dependencies [2769e4a]
|
||
- Updated dependencies [e1c1072]
|
||
- Updated dependencies [6b4f28a]
|
||
- Updated dependencies [6ae7aef]
|
||
- Updated dependencies [5ebccc4]
|
||
- Updated dependencies [17f5d4a]
|
||
- Updated dependencies [44cc899]
|
||
- Updated dependencies [6bc2de9]
|
||
- Updated dependencies [6c5146b]
|
||
- Updated dependencies [922782f]
|
||
- Updated dependencies [adbc613]
|
||
- Updated dependencies [8f72eee]
|
||
- Updated dependencies [d73070c]
|
||
- @runfusion/fusion@0.16.0
|
||
|
||
## 0.15.0
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [ed477f8]
|
||
- Updated dependencies [9fc5fd9]
|
||
- Updated dependencies [9e52028]
|
||
- @runfusion/fusion@0.15.0
|
||
|
||
## 0.14.3
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [dd291db]
|
||
- Updated dependencies [3119537]
|
||
- Updated dependencies [03d0fac]
|
||
- Updated dependencies [7fec762]
|
||
- Updated dependencies [24b3ded]
|
||
- Updated dependencies [36d623a]
|
||
- Updated dependencies [5a41ce4]
|
||
- Updated dependencies [3119537]
|
||
- Updated dependencies [8592472]
|
||
- Updated dependencies [66a19b5]
|
||
- @runfusion/fusion@0.14.3
|
||
|
||
## 0.14.2
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [7ec394a]
|
||
- Updated dependencies [b3e2b61]
|
||
- Updated dependencies [b3e2b61]
|
||
- @runfusion/fusion@0.14.2
|
||
|
||
## 0.14.1
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [cafe986]
|
||
- @runfusion/fusion@0.14.1
|
||
|
||
## 0.14.0
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [e505bad]
|
||
- Updated dependencies [f0d0f8c]
|
||
- Updated dependencies [5398bc7]
|
||
- Updated dependencies [80b45d0]
|
||
- Updated dependencies [fd36fbd]
|
||
- Updated dependencies [8b7f20f]
|
||
- Updated dependencies [1634ea3]
|
||
- Updated dependencies [4231c4a]
|
||
- Updated dependencies [c08a872]
|
||
- Updated dependencies [0188da7]
|
||
- Updated dependencies [4d70a9e]
|
||
- Updated dependencies [e72eff4]
|
||
- Updated dependencies [72ed143]
|
||
- @runfusion/fusion@0.14.0
|
||
|
||
## 0.13.0
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [d18e411]
|
||
- Updated dependencies [d18e411]
|
||
- Updated dependencies [d18e411]
|
||
- Updated dependencies [7011831]
|
||
- Updated dependencies [56210e0]
|
||
- @runfusion/fusion@0.13.0
|
||
|
||
## 0.12.0
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [cf0ea34]
|
||
- Updated dependencies [bdf91f8]
|
||
- Updated dependencies [23134cf]
|
||
- Updated dependencies [72dffe4]
|
||
- Updated dependencies [41e5458]
|
||
- Updated dependencies [7f55dde]
|
||
- Updated dependencies [a16ca0a]
|
||
- Updated dependencies [ecabab8]
|
||
- @runfusion/fusion@0.12.0
|
||
|
||
## 0.11.0
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [97bb80e]
|
||
- Updated dependencies [28e6819]
|
||
- Updated dependencies [451c6d8]
|
||
- Updated dependencies [3443aed]
|
||
- Updated dependencies [d7fdff4]
|
||
- Updated dependencies [13ed470]
|
||
- Updated dependencies [40620a9]
|
||
- @runfusion/fusion@0.11.0
|
||
|
||
## 0.10.0
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [3218c05]
|
||
- Updated dependencies [f7df0d4]
|
||
- Updated dependencies [21402a3]
|
||
- Updated dependencies [3fcf5f4]
|
||
- Updated dependencies [98c3c22]
|
||
- Updated dependencies [491097c]
|
||
- Updated dependencies [f118606]
|
||
- @runfusion/fusion@0.10.0
|
||
|
||
## 0.9.4
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [299b66e]
|
||
- Updated dependencies [c3c8007]
|
||
- Updated dependencies [24e142d]
|
||
- @runfusion/fusion@0.9.4
|
||
|
||
## 0.9.3
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [bb9b0f1]
|
||
- @runfusion/fusion@0.9.3
|
||
|
||
## 0.9.2
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [9e5ac3c]
|
||
- Updated dependencies [19cdf7f]
|
||
- Updated dependencies [6c051b1]
|
||
- Updated dependencies [7eec105]
|
||
- Updated dependencies [64b5f67]
|
||
- Updated dependencies [cfc8aa3]
|
||
- @runfusion/fusion@0.10.0
|
||
|
||
## 0.9.1
|
||
|
||
### Patch Changes
|
||
|
||
- 76deb48: Fix Active Agents panel cards stuck on "Connecting...". Agents in `active` state without a current task have no SSE stream to attach to, so the card now shows "Idle — no task assigned" instead of misleading network copy ("Starting..." for the brief `running`-without-task race). Also fixes a related SSE multiplexer bug: subscribers joining a channel that had already opened never received an `onOpen` callback (EventSource only emits `open` once), leaving them at `isConnected: false` indefinitely whenever another component was already streaming the same task's logs.
|
||
- f6242c2: Hoist the Active Agents panel above the main agent list and surface next-heartbeat ETA. Live work now sits directly under the stats bar so it's visible without scrolling past the full agent directory. Each card footer renders "Next heartbeat in Xs" (or "Heartbeat overdue Xs" when the deadline has passed) using the agent's `runtimeConfig.heartbeatIntervalMs` with the dashboard default fallback. Cards also gain pointer cursor + hover/focus styling so the existing click-to-select behavior is discoverable.
|
||
- Updated dependencies [76deb48]
|
||
- Updated dependencies [f6242c2]
|
||
- Updated dependencies [7e832bb]
|
||
- Updated dependencies [118a03a]
|
||
- Updated dependencies [291e156]
|
||
- Updated dependencies [c6d67b9]
|
||
- Updated dependencies [d8baa7a]
|
||
- @runfusion/fusion@0.9.1
|
||
|
||
## 0.9.0
|
||
|
||
### Minor Changes
|
||
|
||
- a654795: Generate richer merge commit messages via the AI summarizer. The merger now routes commit-body summarization through the consolidated `ai-summarize.ts` pipeline (using the title-summarization model), with an AI fallback cascade to guarantee non-empty merge bodies. Summarization model is configurable in settings.
|
||
- 91f9f20: Add unified multi-node task routing across CLI, dashboard, core, and engine flows.
|
||
|
||
- **Routing model:** Tasks can set a per-task node override with project-level pinned default node fallback. `resolveEffectiveNode()` computes the effective routing target per task.
|
||
- **Core types:** Adds `Task.nodeId`, `UnavailableNodePolicy` (`"block" | "fallback-local"`), `ProjectSettings.defaultNodeId`, and `ProjectSettings.unavailableNodePolicy`.
|
||
- **Engine behavior:** Adds effective-node resolution (per-task override → project default → local), unavailable-node policy enforcement, and routing activity event logging.
|
||
- **Active-task guard:** Blocks node override changes for in-progress tasks via `validateNodeOverrideChange()`.
|
||
- **Dashboard updates:** Adds project settings controls for default node and unavailable-node policy, task detail routing summary (effective node, routing source, fallback policy, blocking reason), quick task creation node picker, bulk node override actions, and node health/status indicators in selectors.
|
||
- **CLI updates:** Adds `fn settings set defaultNodeId <node-id>`, `fn settings set unavailableNodePolicy <block|fallback-local>`, `fn task set-node <id> <node>`, `fn task clear-node <id>`, `fn task create --node <name>`, and routing details in `fn task show`.
|
||
- **Schema updates:** Includes tasks table migration adding the `nodeId` column.
|
||
|
||
- 17a072c: Add `requirePrApproval` setting (related to [#21](https://github.com/Runfusion/Fusion/issues/21)).
|
||
|
||
When `mergeStrategy: "pull-request"`, GitHub's `required: true` flag for status checks only flows from branch protection — a Pro feature on private repos. On free private repos, `isPrMergeReady` reports every fresh PR as immediately mergeable, so `autoMerge: true` causes Fusion to auto-squash-merge the moment the PR opens with no chance for a human to review it.
|
||
|
||
The new `requirePrApproval` setting (project-level, default `false`) makes Fusion hold the merge until at least one approving GitHub review is present (`reviewDecision === "APPROVED"`), independent of GitHub's server-side enforcement. Surfaces in the dashboard's Merge settings panel under the Pull Request strategy. Lets you use Fusion's PR mode as "open the PR, wait for me to approve and merge" on any tier.
|
||
|
||
- 1beebc0: Allow tasks to be respecified from `in-review`. `VALID_TRANSITIONS["in-review"]` now includes `triage`, so the dashboard's `Request AI Revision` and `Rebuild Spec` actions work for in-review tasks. Moving an in-review task to triage performs the same full reset as in-review → todo (clears branch/baseBranch/baseCommitSha/summary/recovery metadata and workflowStepResults) so the next run starts from scratch. The in-review card's `Move` menu also now offers `Planning` as a destination.
|
||
|
||
### Patch Changes
|
||
|
||
- 48208db: Surface live run status on Active Agent cards instead of a generic "Connecting…" placeholder. The card now polls the agent's task and shows the current step (e.g. _"Step 5/8: Write Tests"_) and executor model while the SSE log stream warms up. A new "Live logs" button on the card opens the task detail modal directly on the Logs tab.
|
||
- a654795: Prefer `merge-base` over potentially stale `baseCommitSha` when resolving task diff bases in the dashboard. Diffs no longer drift when the recorded base commit lags behind the actual divergence point.
|
||
- a654795: Show only files actually changed by the task in `ChangesDiffModal` and `TaskChangesTab`. The diff baseline is no longer flooded with files that weren't touched by the task itself.
|
||
- a654795: Close executor/merger concurrency races and reviewer pause TOCTOU. Worktree lifecycle is now synchronized more defensively across executor and merger paths, the reviewer pause/unpause flow is hardened against time-of-check/time-of-use races, and `AgentSemaphore` now guards against invalid limits (NaN, Infinity).
|
||
- a654795: Read assistant text from session state when processing memory dreams. Dream extraction no longer misses content when the assistant message has not been flushed to the output stream yet.
|
||
- b91533c: Fix PR-mode merge flow (related to [#21](https://github.com/Runfusion/Fusion/issues/21)):
|
||
|
||
- **PR-mode now pushes the per-task branch to origin before creating the PR.** `processPullRequestMergeTask` previously called `gh pr create --head fusion/<task-id>` without ever publishing the branch, so the PR creation failed and the task stalled in `in-review`. The branch is now pushed via `git push -u origin <branch>` immediately before `createPr` (skipped when an existing PR already covers the branch).
|
||
- **Removed dead `autoCreatePr` setting** from the schema and `Settings` type. It was defined as a default but never read anywhere.
|
||
|
||
- 7f42c7f: Fix [#21](https://github.com/Runfusion/Fusion/issues/21): the `recover-mergeable-review` maintenance sweep no longer bypasses `autoMerge` and `mergeStrategy`. The sweep now early-returns when `autoMerge !== true` (or when the engine is paused) and routes recovery merges through the engine's merge queue so `mergeStrategy: "pull-request"` is honored — eligible in-review tasks go through `processPullRequestMerge` instead of a raw local `git merge`. Operators using a PR-based review flow with `autoMerge: false` will no longer have tasks silently merged behind their back.
|
||
- a654795: Restore task card timing and changes fallbacks (FN-2877). The dashboard task card again falls back gracefully when timing data or change summaries are missing, preventing blank states on tasks that haven't reported metrics yet.
|
||
- bb5402a: Keep task card timer live while a task is actively merging (FN-2920). The in-review timer was driven by per-step instrumented duration, which freezes during the merge phase, so a stuck merge could read "3m" indefinitely. While `status` is `merging`/`merging-pr` the card now shows live elapsed since the merger flipped the status, with a "Merging Nm" tooltip.
|
||
- a654795: Surface visible feedback when copying a log entry from the dashboard TUI. The Logs panel title now flashes a "Copied!" / "Copy failed" status so the action is no longer silent.
|
||
- a654795: Stack Utilities and Settings under Stats in the dashboard TUI wide layout (≥150 columns). Logs now fills the full right column for its full height; Stats flex-grows in the left column above fixed-height Utilities and Settings, so Stats absorbs all leftover vertical space.
|
||
- Updated dependencies [48208db]
|
||
- Updated dependencies [a654795]
|
||
- Updated dependencies [a654795]
|
||
- Updated dependencies [a654795]
|
||
- Updated dependencies [17a072c]
|
||
- Updated dependencies [a654795]
|
||
- Updated dependencies [a654795]
|
||
- Updated dependencies [91f9f20]
|
||
- Updated dependencies [e46f2d4]
|
||
- Updated dependencies [b91533c]
|
||
- Updated dependencies [7f42c7f]
|
||
- Updated dependencies [9ce811a]
|
||
- Updated dependencies [17a072c]
|
||
- Updated dependencies [1beebc0]
|
||
- Updated dependencies [a654795]
|
||
- Updated dependencies [bb5402a]
|
||
- Updated dependencies [a654795]
|
||
- Updated dependencies [a654795]
|
||
- @runfusion/fusion@0.9.0
|
||
|
||
## 0.8.4
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [1c4c08b]
|
||
- Updated dependencies [3202e57]
|
||
- Updated dependencies [858e244]
|
||
- Updated dependencies [995165e]
|
||
- Updated dependencies [bd14cf8]
|
||
- Updated dependencies [995165e]
|
||
- Updated dependencies [10d565e]
|
||
- @runfusion/fusion@0.8.4
|
||
|
||
## 0.8.3
|
||
|
||
### Patch Changes
|
||
|
||
- @runfusion/fusion@0.8.3
|
||
|
||
## 0.8.2
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [531b13e]
|
||
- Updated dependencies [531b13e]
|
||
- @runfusion/fusion@0.8.2
|
||
|
||
## 0.8.1
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [a8dbdbc]
|
||
- @runfusion/fusion@0.8.1
|
||
|
||
## 0.8.0
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [f19ecac]
|
||
- Updated dependencies [58510e1]
|
||
- Updated dependencies [cc9181d]
|
||
- Updated dependencies [5cc7597]
|
||
- Updated dependencies [2029968]
|
||
- Updated dependencies [cd03c6a]
|
||
- Updated dependencies [7227b87]
|
||
- Updated dependencies [81c6f01]
|
||
- Updated dependencies [c9241d8]
|
||
- Updated dependencies [198f85c]
|
||
- Updated dependencies [22bac2d]
|
||
- @runfusion/fusion@0.8.0
|
||
|
||
## 0.7.1
|
||
|
||
### Patch Changes
|
||
|
||
- ce6dcef: fix(0.7.1): mobile polish, modal layout fixes, paperclip CLI parity, schema migration
|
||
|
||
Mobile / dashboard:
|
||
|
||
- ModelOnboardingModal: dialog was off-screen on phones because the desktop `min-width: 640px` won over the mobile `max-width: 100%`. Reset min-width/min-height to 0 in the mobile media query (with `!important` so persisted desktop sizes from `useModalResizePersist` cannot re-pin it). Compact provider cards: keep the icon inline beside the name + description, shrink the icon container, drop name/description font sizes, and rely on flex-wrap so the API-key actions still drop to their own row underneath. The API-key input + Save button now live on a single row at the full card width — input grows left-aligned, Save shrinks to the right with a hairline of inline padding.
|
||
- NewAgentDialog: the dialog's top was rendering hidden behind the in-page Agents header on mobile. Render the dialog through `createPortal(..., document.body)` so the overlay escapes the `.agents-view` stacking context. Mobile media query also drops the overlay padding, fills 100vw / 100dvh with safe-area insets on header/footer for iOS notch + home indicator, and fixes the classic flex `min-height: auto` bug that prevented `overflow-y: auto` on the body from activating.
|
||
- TerminalModal: same root cause as the onboarding modal — desktop `min-width: 480px` / `min-height: 320px` pinned the modal off-screen on phones. Reset to 0 in the mobile rule with `!important` so persisted desktop sizes can't override.
|
||
- WorkflowStepManager: fix React error #310 ("Rendered more hooks than during the previous render") that prevented the workflow steps panel from loading. `useOverlayDismiss` was being called after an `if (!isOpen) return null` early return, so the hook count differed between open/closed renders. Moved the hook above the early return.
|
||
- SettingsModal auth panel: tightened `.auth-panel-body` horizontal padding from `--space-xl` (24px) to `--space-md` (12px), giving each provider card more horizontal room.
|
||
|
||
Paperclip runtime:
|
||
|
||
- CLI parity: in the dashboard's "Local CLI" tab, Test / fetch companies / fetch agents now actually shell out to `paperclipai` instead of making HTTP calls through a derived URL. New CLI-backed variants (`probePaperclipViaCli`, `listCompaniesViaCli`, `listCompanyAgentsViaCli`, `createIssueViaCli`, `getIssueViaCli`, `agentsMeViaCli`) drive every Paperclip call that has a CLI counterpart; the runtime adapter routes through them when `transport=cli`. `getIssueComments` / `wakeAgent` / `getRunEvents` continue using HTTP (no matching `paperclipai` subcommands) but rely on the apiKey discovered from the local paperclipai config so CLI mode works end-to-end.
|
||
- New dashboard routes `/providers/paperclip/cli-status`, `/cli-companies`, `/cli-agents` exposing the CLI helpers.
|
||
|
||
Plugin runtime registry:
|
||
|
||
- `GET /api/plugins/runtimes` now merges a bundled hermes/openclaw/paperclip fallback list on top of installed plugins, so the NewAgentDialog "Plugin Runtime" dropdown populates without requiring `fn plugin install` on a fresh setup. Installed plugins override the bundled entry by `runtimeId`. Coalesced the optional `version` field to `"0.0.0"` to satisfy the bundled-runtime type.
|
||
|
||
Core:
|
||
|
||
- Schema migration fix: bumped `SCHEMA_VERSION` from 48 → 49 so migration 49 (per-task `nodeId` column for remote-node routing) actually runs. Existing DBs at version 48 hit the early-return guard, never created the column, and `TaskStore.listTasks` crashed at startup with `no such column: nodeId` — the dashboard exited before initialization. The bump unblocks app startup on any pre-existing 0.7.0 install.
|
||
|
||
- Updated dependencies [ce6dcef]
|
||
- @runfusion/fusion@0.7.1
|
||
|
||
## 0.7.0
|
||
|
||
### Minor Changes
|
||
|
||
- b30e017: feat(runtimes): real Hermes / OpenClaw / Paperclip runtime plugins
|
||
|
||
Replaces the stub runtime plugins with end-to-end working integrations:
|
||
|
||
- **Hermes** runtime drives the local `hermes` CLI as a subprocess (`hermes chat -q ... -Q --source tool [--resume <id>]`), captures session ids for continuity, with profile picker (HERMES_HOME-based switching) and Nous Research co-brand.
|
||
- **OpenClaw** runtime drives `openclaw --no-color agent --local --json --session-id <uuid> --message <prompt>`, parses the OpenAI-compatible JSON output, surfaces visible/reasoning text via callbacks; defaults to embedded mode (no daemon required).
|
||
- **Paperclip** runtime now uses the modern `POST /api/agents/{id}/wakeup` + heartbeat-run streaming API (replaces the old issue-checkout + heartbeat-invoke flow); supports both API mode (URL + bearer) and CLI mode (auto-derives URL from `~/.paperclip/instances/default/config.json`); company + agent dropdowns; CLI key bootstrap via `paperclipai agent local-cli`.
|
||
|
||
Engine fix: `agent-session-helpers.ts:createResolvedAgentSession` now attaches the resolved runtime's `promptWithFallback` to the session so pi's dispatch hook routes prompts through the plugin runtime instead of falling through to pi's native path.
|
||
|
||
Dashboard adds a unified `RuntimeCardShell` component, real provider logos (caduceus, pixel-lobster, paperclip outline), Test/Save/Save & Test buttons with success/failure toasts, "Learn more →" links, and a "Runtimes" group in Settings.
|
||
|
||
Backend adds `GET /providers/{hermes,openclaw,paperclip}/status`, `GET /providers/hermes/profiles`, `GET /providers/paperclip/{companies,agents,cli-discovery}`, `POST /providers/paperclip/cli-mint-key`.
|
||
|
||
Plugin SDK: now ships a proper `dist/` build (was previously TS-source-only), unblocking runtime imports from compiled plugins.
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [ec09282]
|
||
- Updated dependencies [92b8631]
|
||
- Updated dependencies [8fbd3bd]
|
||
- Updated dependencies [347cae8]
|
||
- Updated dependencies [0a5dcf1]
|
||
- Updated dependencies [3c8a490]
|
||
- Updated dependencies [637f435]
|
||
- Updated dependencies [7691bab]
|
||
- Updated dependencies [b30e017]
|
||
- @runfusion/fusion@0.7.0
|
||
|
||
## 0.6.0
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [f4d98ed]
|
||
- Updated dependencies [6caab17]
|
||
- Updated dependencies [fdf8ca9]
|
||
- @runfusion/fusion@0.6.0
|
||
|
||
## 0.5.0
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [112ad67]
|
||
- Updated dependencies [16ec204]
|
||
- Updated dependencies [79ce48c]
|
||
- Updated dependencies [c85ffa9]
|
||
- Updated dependencies [03a48ae]
|
||
- Updated dependencies [c1b0121]
|
||
- Updated dependencies [b969635]
|
||
- @runfusion/fusion@0.5.0
|
||
|
||
## 0.4.1
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [b5200ba]
|
||
- Updated dependencies [8097db2]
|
||
- @runfusion/fusion@0.4.1
|
||
|
||
## 0.4.0
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [f560af5]
|
||
- Updated dependencies [cd4cef3]
|
||
- Updated dependencies [7e05a20]
|
||
- Updated dependencies [c818d71]
|
||
- Updated dependencies [c818d71]
|
||
- Updated dependencies [ff6a68b]
|
||
- Updated dependencies [1b3994f]
|
||
- Updated dependencies [1a8058f]
|
||
- Updated dependencies [39622f0]
|
||
- Updated dependencies [26f9c74]
|
||
- Updated dependencies [9d8852e]
|
||
- @runfusion/fusion@0.4.0
|
||
|
||
## 0.2.7
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [adbad8a]
|
||
- @runfusion/fusion@0.2.7
|
||
|
||
## 0.2.6
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [dbc9446]
|
||
- @runfusion/fusion@0.2.6
|
||
|
||
## 0.2.5
|
||
|
||
### Patch Changes
|
||
|
||
- 69f789f: TUI: layered defenses for the resize / wrong-height-layout bug
|
||
|
||
Materially reduces (but doesn't fully eliminate) the symptom of the header rendering off-screen or the layout taking 1-2 too many rows, especially under tmux/ssh.
|
||
|
||
- Enter alternate-screen buffer on start; leave on stop. The TUI gets a dedicated fullscreen surface that doesn't share scrollback.
|
||
- StatusBar Text children no longer wrap (default `wrap="wrap"` was letting long hotkey + URL strings wrap to 2 rows, throwing the row budget off by 1).
|
||
- Controller subscribes to `process.stdout` "resize" and calls `inkInstance.clear()` to reset log-update's frame tracking.
|
||
- App-level resize listener + key-based remount on dimension change so React rebuilds the tree from scratch with fresh bounds.
|
||
- Root Box gets explicit width + overflow="hidden"; MainHeader outer Box too.
|
||
- Settings + Utilities side-by-side now stretch to equal heights (UtilitiesPanel switched from `flexShrink={0}` to `flexGrow={1}`).
|
||
|
||
- Updated dependencies [69f789f]
|
||
- @runfusion/fusion@0.2.5
|
||
|
||
## 0.2.4
|
||
|
||
### Patch Changes
|
||
|
||
- 88b4ecb: TUI fixes: help overlay no longer crashes, header stays rendered
|
||
|
||
- Help overlay (`?` / `h`) crashed with "Encountered two children with the same key" because several shortcut entries share the same display key (`[t]` for Git view AND for Toggle engine pause; `[r]` for Refresh stats AND Refresh agent detail). Switch to index-based keys — each row is unique by position, not by character.
|
||
- Refresh the help text to reflect the unified header (`[m]` Main, `[b/a/g/t/e]` views), the Settings/Files/Agents `←/→` pane swap, the Git push/fetch shortcuts, the Files hidden-files toggle, and the Logs `G` jump-to-end.
|
||
- Main view (status mode) header sometimes vanished after a tmux pane switch and stayed missing until a terminal resize. Two fixes: (a) drop the `rows < 10` auto-hide in `MainHeader` — tmux pane switches can briefly report stale or zero dimensions, and a transient `return null` was orphaning the header. (b) Wrap `MainHeader` and `StatusBar` in `flexShrink={0}` boxes inside `StatusModeGrid` and `StatusModeSingle` (matching the prior fix in `InteractiveMode`), so Yoga can't squeeze them to 0 rows when content pressures the row budget.
|
||
|
||
- Updated dependencies [88b4ecb]
|
||
- @runfusion/fusion@0.2.4
|
||
|
||
## 0.2.3
|
||
|
||
### Patch Changes
|
||
|
||
- 0f070d8: TUI header redesign and Settings ←/→ pane navigation
|
||
|
||
- Replace the dual section + interactive tab strips with a single unified strip: `[m] Main [b] Board [a] Agents [g] Settings [t] Git [e] Explorer`. Status mode highlights the Main pill; interactive views highlight their own. Number-key shortcuts (1–5) for status sections still work but are no longer rendered in the header chrome.
|
||
- Width tiers now fit comfortably at every terminal size: full labels at cols ≥ 90, glyph-only at 50–89 (every shortcut still visible), FUSION + active pill only below 50. Help/quit shows at cols ≥ 110.
|
||
- New `m` shortcut switches to status mode (Main); `s` kept as alias.
|
||
- Settings interactive view: `←` focuses the list pane, `→` focuses the detail pane. `Tab` still cycles either way (consistent with Agents view).
|
||
|
||
- Updated dependencies [0f070d8]
|
||
- @runfusion/fusion@0.2.3
|
||
|
||
## 0.2.2
|
||
|
||
### Patch Changes
|
||
|
||
- 58688fa: Keep the FUSION header from wrapping when the terminal is narrow. The `MiniLogo` and tab pills had Yoga's default `flexShrink: 1`, so the row's collective content overrunning the width was being absorbed by shrinking every child — including FUSION, which then wrapped to two lines. Pin all fixed-content header children to `flexShrink={0}`; the trailing flexGrow filler absorbs slack instead.
|
||
- Updated dependencies [58688fa]
|
||
- @runfusion/fusion@0.2.2
|
||
|
||
## 0.2.1
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [07d7bac]
|
||
- @runfusion/fusion@0.2.1
|
||
|
||
## 0.2.0
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [a8f5591]
|
||
- @runfusion/fusion@0.2.0
|
||
|
||
## 0.1.3
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [c105cfa]
|
||
- Updated dependencies [86521e2]
|
||
- Updated dependencies [76961d4]
|
||
- Updated dependencies [f77dd9d]
|
||
- Updated dependencies [f4d2a4b]
|
||
- Updated dependencies [f77dd9d]
|
||
- Updated dependencies [31f021a]
|
||
- Updated dependencies [eef56af]
|
||
- Updated dependencies [832c32c]
|
||
- Updated dependencies [dce70bf]
|
||
- Updated dependencies [f078a4e]
|
||
- @runfusion/fusion@0.1.3
|
||
|
||
## 0.1.2
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [9bf2981]
|
||
- Updated dependencies
|
||
- Updated dependencies [94473c8]
|
||
- Updated dependencies
|
||
- Updated dependencies [c01892d]
|
||
- @runfusion/fusion@0.1.2
|
||
|
||
## 0.1.1
|
||
|
||
Catch-up version bump so `runfusion.ai` stays in sync with `@runfusion/fusion`. The two packages are now grouped under changesets `fixed` in `.changeset/config.json` and will always share a version number from here on.
|
||
|
||
## 0.0.8
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [39f7709]
|
||
- Updated dependencies [585e480]
|
||
- Updated dependencies [86fd24e]
|
||
- Updated dependencies [585e480]
|
||
- Updated dependencies [7d31b21]
|
||
- Updated dependencies
|
||
- Updated dependencies [ff5df16]
|
||
- Updated dependencies [df2836c]
|
||
- Updated dependencies [bbdd11a]
|
||
- Updated dependencies [0bb0100]
|
||
- @runfusion/fusion@0.1.1
|
||
|
||
## 0.0.7
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [25d44e1]
|
||
- Updated dependencies [a2ed6d0]
|
||
- @runfusion/fusion@0.1.0
|
||
|
||
## 0.0.6
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies
|
||
- @runfusion/fusion@0.0.6
|
||
|
||
## 0.0.5
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [41553a5]
|
||
- @runfusion/fusion@0.0.5
|
||
|
||
## 0.0.4
|
||
|
||
### Patch Changes
|
||
|
||
- Bump the alias package to stay in sync with the current Fusion release.
|
||
|
||
## 0.0.3
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [0da498a]
|
||
- @runfusion/fusion@0.0.4
|
||
|
||
## 0.0.2
|
||
|
||
### Patch Changes
|
||
|
||
- Updated dependencies [1fc72d1]
|
||
- Updated dependencies [46b8032]
|
||
- Updated dependencies [c1bc5b9]
|
||
- Updated dependencies [06704cf]
|
||
- @runfusion/fusion@0.0.3
|