@runfusion/fusion 0.49.0 → 0.51.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 (135) hide show
  1. package/dist/bin.js +37229 -9659
  2. package/dist/client/.vite/manifest.json +248 -247
  3. package/dist/client/assets/{AgentDetailView-B8_IDafM.js → AgentDetailView-CjwOlcMI.js} +5 -5
  4. package/dist/client/assets/{AgentPermissionPolicyEditor-D4U6puHs.js → AgentPermissionPolicyEditor-CD8znNHS.js} +1 -1
  5. package/dist/client/assets/AgentsView-CTjNaKu-.js +29 -0
  6. package/dist/client/assets/ChatView-DCWypaw3.js +19 -0
  7. package/dist/client/assets/CommandCenter-B9q-zM9p.css +1 -0
  8. package/dist/client/assets/CommandCenter-C4v0FMxx.js +71 -0
  9. package/dist/client/assets/{DevServerView-C1qppz4E.js → DevServerView-BE_o7v9j.js} +1 -1
  10. package/dist/client/assets/{DirectoryPicker-CW_Q-Bup.js → DirectoryPicker-BpcPo65A.js} +1 -1
  11. package/dist/client/assets/{DocumentsView-DGxrLknh.js → DocumentsView-Cpma23hu.js} +1 -1
  12. package/dist/client/assets/{EvalsView-BMU01K7i.js → EvalsView-DYSobhb7.js} +1 -1
  13. package/dist/client/assets/{ExperimentalAgentOnboardingModal-B5Mwwwbz.js → ExperimentalAgentOnboardingModal-D_iQqD-n.js} +1 -1
  14. package/dist/client/assets/{GoalsView-CUh8JBnJ.css → GoalsView-4-eEOeqw.css} +1 -1
  15. package/dist/client/assets/{GoalsView-B9Vwqp8k.js → GoalsView-B6Wfxk59.js} +1 -1
  16. package/dist/client/assets/{InsightsView-C9fVBn7l.js → InsightsView-DZyMvYQ8.js} +1 -1
  17. package/dist/client/assets/{MemoryView-Chm5uzjZ.js → MemoryView-B9Z6cRma.js} +1 -1
  18. package/dist/client/assets/{PiExtensionsManager-BhKzgNHh.js → PiExtensionsManager-BQt3JU60.js} +1 -1
  19. package/dist/client/assets/{PluginManager-pEIpbosd.js → PluginManager-DEsUstVo.js} +1 -1
  20. package/dist/client/assets/PullRequestView-B7k8ogy4.js +6 -0
  21. package/dist/client/assets/PullRequestView-NkeImY1n.css +1 -0
  22. package/dist/client/assets/{ResearchView-wy7oLnPg.js → ResearchView-BseF58_R.js} +1 -1
  23. package/dist/client/assets/{SecretsView-Bid0TP7K.js → SecretsView-bkNS5VBC.js} +1 -1
  24. package/dist/client/assets/{SessionTerminal-B3XCQFRu.js → SessionTerminal-BSllyqgF.js} +1 -1
  25. package/dist/client/assets/{SettingsModal-BMpP5CkL.js → SettingsModal-DAH7LuLw.js} +1 -1
  26. package/dist/client/assets/SettingsModal-Dso0K76J.js +21 -0
  27. package/dist/client/assets/{SetupWizardModal-C_wMNV3H.js → SetupWizardModal-Bm6bG31V.js} +2 -2
  28. package/dist/client/assets/{ShadcnColorPicker-CXxr3ynz.js → ShadcnColorPicker-CLiOvo7W.js} +1 -1
  29. package/dist/client/assets/{SkillsView-DcNtAxQI.js → SkillsView-D_UEJY_f.js} +1 -1
  30. package/dist/client/assets/{SkillsView-Cfs7HkwW.css → SkillsView-tAW7TTCz.css} +1 -1
  31. package/dist/client/assets/{TodoView-Bt5ZY51H.js → TodoView-CMCoPep1.js} +1 -1
  32. package/dist/client/assets/WorkflowNodeEditor-BeQcn0Wa.js +8 -0
  33. package/dist/client/assets/{agentSkills-DlTZq-3b.js → agentSkills-BiipFw1z.js} +1 -1
  34. package/dist/client/assets/app-A1yCJR4Q.js +13 -0
  35. package/dist/client/assets/app-Bfiafek7.js +13 -0
  36. package/dist/client/assets/app-Bh-Xj32t.js +13 -0
  37. package/dist/client/assets/app-DxJHfzxz.js +13 -0
  38. package/dist/client/assets/{app-Cl4147h6.js → app-T5iMjZpX.js} +3 -3
  39. package/dist/client/assets/app-zR_n4GL2.js +13 -0
  40. package/dist/client/assets/{architectureDiagram-3BPJPVTR-DPevXfXn.js → architectureDiagram-3BPJPVTR-glwWkaDt.js} +1 -1
  41. package/dist/client/assets/{blockDiagram-GPEHLZMM-iREXBnwN.js → blockDiagram-GPEHLZMM-C8DhxwG4.js} +1 -1
  42. package/dist/client/assets/{c4Diagram-AAUBKEIU-Ds4gntrv.js → c4Diagram-AAUBKEIU-CQXf6PzI.js} +1 -1
  43. package/dist/client/assets/channel-BY6zFSV1.js +1 -0
  44. package/dist/client/assets/{chunk-2J33WTMH-DI8WjOJS.js → chunk-2J33WTMH-kak65s83.js} +1 -1
  45. package/dist/client/assets/{chunk-4BX2VUAB-BSvj2r_a.js → chunk-4BX2VUAB-B_yEpoxU.js} +1 -1
  46. package/dist/client/assets/{chunk-55IACEB6-DXqk_68P.js → chunk-55IACEB6-C9lQVeH5.js} +1 -1
  47. package/dist/client/assets/{chunk-727SXJPM-CbVz6DAi.js → chunk-727SXJPM-D4SVzqNs.js} +1 -1
  48. package/dist/client/assets/{chunk-AQP2D5EJ-O8p3lAmi.js → chunk-AQP2D5EJ-DBHuj4BH.js} +1 -1
  49. package/dist/client/assets/{chunk-FMBD7UC4-8KJJYFeG.js → chunk-FMBD7UC4-BJ3ghjau.js} +1 -1
  50. package/dist/client/assets/{chunk-ND2GUHAM-D_zeaF-K.js → chunk-ND2GUHAM-CE4tkh6e.js} +1 -1
  51. package/dist/client/assets/{chunk-QZHKN3VN-IzXnlcXm.js → chunk-QZHKN3VN-DmVw_cEu.js} +1 -1
  52. package/dist/client/assets/classDiagram-4FO5ZUOK-CeX_WCiC.js +1 -0
  53. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-CeX_WCiC.js +1 -0
  54. package/dist/client/assets/{cose-bilkent-S5V4N54A-DyB8nAG8.js → cose-bilkent-S5V4N54A-DI_-BOYE.js} +1 -1
  55. package/dist/client/assets/{dagre-BM42HDAG-BkFeh-yy.js → dagre-BM42HDAG-ywUbHZxt.js} +1 -1
  56. package/dist/client/assets/{dashboard-view-Ddw7AZEw.js → dashboard-view-DJvdban3.js} +1 -1
  57. package/dist/client/assets/{dashboard-view-zm0LyiGH.js → dashboard-view-r4NTTh_X.js} +1633 -1633
  58. package/dist/client/assets/{diagram-2AECGRRQ-D6ccxFD_.js → diagram-2AECGRRQ-CAGucHCe.js} +1 -1
  59. package/dist/client/assets/{diagram-5GNKFQAL-pYELzWoc.js → diagram-5GNKFQAL-D_1uzVtW.js} +1 -1
  60. package/dist/client/assets/{diagram-KO2AKTUF-DiX408pG.js → diagram-KO2AKTUF-D7zY4Nlm.js} +1 -1
  61. package/dist/client/assets/{diagram-LMA3HP47-CEZO6Pzz.js → diagram-LMA3HP47-C1T9eOzA.js} +1 -1
  62. package/dist/client/assets/{diagram-OG6HWLK6-C4wPGJ9_.js → diagram-OG6HWLK6-sWxhPvzU.js} +1 -1
  63. package/dist/client/assets/{erDiagram-TEJ5UH35-UVoBlCdP.js → erDiagram-TEJ5UH35-DfHtnaNg.js} +1 -1
  64. package/dist/client/assets/{flowDiagram-I6XJVG4X-BHBVkZYH.js → flowDiagram-I6XJVG4X-Brbb_Jlh.js} +1 -1
  65. package/dist/client/assets/{folder-open-BS746XqG.js → folder-open-BLwukrE0.js} +1 -1
  66. package/dist/client/assets/{ganttDiagram-6RSMTGT7-JhbzzuUH.js → ganttDiagram-6RSMTGT7-CLvZ7891.js} +1 -1
  67. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-Bf9CFASb.js → gitGraphDiagram-PVQCEYII-DD56Jsa3.js} +1 -1
  68. package/dist/client/assets/index-DAv17W73.js +1317 -0
  69. package/dist/client/assets/index-DhBnj8YN.css +1 -0
  70. package/dist/client/assets/{infoDiagram-5YYISTIA-ODZX4ugg.js → infoDiagram-5YYISTIA-uXai801q.js} +1 -1
  71. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-BZ4EmuqN.js → ishikawaDiagram-YF4QCWOH-C_bWlUP_.js} +1 -1
  72. package/dist/client/assets/{journeyDiagram-JHISSGLW-DjPguSQp.js → journeyDiagram-JHISSGLW-B2kB9niE.js} +1 -1
  73. package/dist/client/assets/{kanban-definition-UN3LZRKU-CDlWdfMu.js → kanban-definition-UN3LZRKU-BJwlpR9z.js} +1 -1
  74. package/dist/client/assets/{mermaid.core-rI3nyVx8.js → mermaid.core-0hUjZF5S.js} +4 -4
  75. package/dist/client/assets/{mindmap-definition-RKZ34NQL-BduuAfgW.js → mindmap-definition-RKZ34NQL-DsTgTpX-.js} +1 -1
  76. package/dist/client/assets/{pieDiagram-4H26LBE5-Df_vjilh.js → pieDiagram-4H26LBE5-BUQsNWHN.js} +1 -1
  77. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-DXVZfmAq.js → quadrantDiagram-W4KKPZXB-DOYWgfAz.js} +1 -1
  78. package/dist/client/assets/{requirementDiagram-4Y6WPE33-UJTrQjTm.js → requirementDiagram-4Y6WPE33-DUnPKaMd.js} +1 -1
  79. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-DDERoUXV.js → sankeyDiagram-5OEKKPKP-Btl4NRo-.js} +1 -1
  80. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-DaULWS9L.js → sequenceDiagram-3UESZ5HK-b0hyJ_Wr.js} +1 -1
  81. package/dist/client/assets/{shield-alert-BKmP809x.js → shield-alert-yWvC7t2v.js} +1 -1
  82. package/dist/client/assets/{stateDiagram-AJRCARHV-tbFQ1nvS.js → stateDiagram-AJRCARHV-orREjkd9.js} +1 -1
  83. package/dist/client/assets/{stateDiagram-v2-BHNVJYJU-DQ0cOptx.js → stateDiagram-v2-BHNVJYJU-DYJRRNh-.js} +1 -1
  84. package/dist/client/assets/{timeline-definition-PNZ67QCA-BE_RPHyh.js → timeline-definition-PNZ67QCA-DZga7lqO.js} +1 -1
  85. package/dist/client/assets/{upload-CKPEXc39.js → upload-BsYRkl_8.js} +1 -1
  86. package/dist/client/assets/{users-BFmWR-bN.js → users-dyoJEvrM.js} +1 -1
  87. package/dist/client/assets/{vennDiagram-CIIHVFJN-TwZvt3sz.js → vennDiagram-CIIHVFJN-C2P26V71.js} +1 -1
  88. package/dist/client/assets/{wardley-L42UT6IY-C6ZavOUS.js → wardley-L42UT6IY-ckctH9bL.js} +1 -1
  89. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-B2i11Jb0.js → wardleyDiagram-YWT4CUSO-9It3QAYs.js} +1 -1
  90. package/dist/client/assets/{xychartDiagram-2RQKCTM6-DbfolZx7.js → xychartDiagram-2RQKCTM6-Dj3sSBqg.js} +1 -1
  91. package/dist/client/index.html +2 -2
  92. package/dist/client/version.json +1 -1
  93. package/dist/droid-cli/package.json +1 -1
  94. package/dist/extension.js +33421 -6351
  95. package/dist/pi-claude-cli/index.ts +12 -16
  96. package/dist/pi-claude-cli/package.json +1 -1
  97. package/dist/plugin-sdk/index.d.ts +32 -1
  98. package/dist/plugins/fusion-plugin-acp-runtime/package.json +1 -1
  99. package/dist/plugins/fusion-plugin-cli-printing-press/package.json +1 -1
  100. package/dist/plugins/fusion-plugin-compound-engineering/bundled.js +251 -20
  101. package/dist/plugins/fusion-plugin-compound-engineering/manifest.json +1 -1
  102. package/dist/plugins/fusion-plugin-compound-engineering/package.json +1 -1
  103. package/dist/plugins/fusion-plugin-cursor-runtime/package.json +1 -1
  104. package/dist/plugins/fusion-plugin-dependency-graph/package.json +1 -1
  105. package/dist/plugins/fusion-plugin-droid-runtime/package.json +1 -1
  106. package/dist/plugins/fusion-plugin-hermes-runtime/package.json +1 -1
  107. package/dist/plugins/fusion-plugin-openclaw-runtime/package.json +1 -1
  108. package/dist/plugins/fusion-plugin-paperclip-runtime/package.json +1 -1
  109. package/dist/plugins/fusion-plugin-reports/package.json +1 -1
  110. package/dist/plugins/fusion-plugin-roadmap/package.json +1 -1
  111. package/dist/plugins/fusion-plugin-whatsapp-chat/package.json +1 -1
  112. package/package.json +1 -1
  113. package/skill/fusion/references/best-practices.md +3 -3
  114. package/skill/fusion/references/engine-tools.md +1 -1
  115. package/skill/fusion/references/extension-tools.md +1 -1
  116. package/skill/fusion/references/fusion-capabilities.md +1 -1
  117. package/skill/fusion/workflows/task-management.md +1 -1
  118. package/dist/client/assets/AgentsView-CafZRACA.js +0 -29
  119. package/dist/client/assets/ChatView-CZv_hIdK.js +0 -19
  120. package/dist/client/assets/CommandCenter-B1P49x__.css +0 -1
  121. package/dist/client/assets/CommandCenter-D9qV7yF_.js +0 -71
  122. package/dist/client/assets/PullRequestView-CpdE3Yo_.css +0 -1
  123. package/dist/client/assets/PullRequestView-DG1gPFRJ.js +0 -6
  124. package/dist/client/assets/SettingsModal-Dptq-qYL.js +0 -21
  125. package/dist/client/assets/WorkflowNodeEditor-AwHxfoz1.js +0 -8
  126. package/dist/client/assets/app-B7XunYYI.js +0 -13
  127. package/dist/client/assets/app-BV3tiBJo.js +0 -13
  128. package/dist/client/assets/app-BgStK3QE.js +0 -13
  129. package/dist/client/assets/app-ChEDGcMv.js +0 -13
  130. package/dist/client/assets/app-DH6H4_Pi.js +0 -13
  131. package/dist/client/assets/channel-FTiNgAnt.js +0 -1
  132. package/dist/client/assets/classDiagram-4FO5ZUOK-sIVsNnoj.js +0 -1
  133. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-sIVsNnoj.js +0 -1
  134. package/dist/client/assets/index-BNXyfteR.css +0 -1
  135. package/dist/client/assets/index-DZGZRdnt.js +0 -1302
@@ -25,10 +25,10 @@ import {
25
25
  } from "./src/mcp-config.js";
26
26
 
27
27
  /**
28
- * Route A kill-switch (U11). When `FUSION_CLAUDE_ACP=1` AND a bridge binary path
29
- * is available (`FUSION_CLAUDE_ACP_BRIDGE`, injected by the engine seam per
30
- * KTD10), the provider drives Claude through the ACP bridge instead of
31
- * `claude -p`. OFF by default: the live `-p` path is untouched until soak.
28
+ * FNXC:pi-claude-cli 2026-06-27-06:39:
29
+ * Route A drives Claude through the ACP bridge only when `FUSION_CLAUDE_ACP=1`
30
+ * AND a bridge binary path is injected via `FUSION_CLAUDE_ACP_BRIDGE`.
31
+ * OFF by default: the live `claude -p` path stays untouched until soak.
32
32
  */
33
33
  function resolveAcpBridgePath(): string | undefined {
34
34
  if (process.env.FUSION_CLAUDE_ACP !== "1") return undefined;
@@ -52,14 +52,12 @@ process.on("exit", killAllProcesses);
52
52
  const PROVIDER_ID = "pi-claude-cli";
53
53
 
54
54
  /**
55
- * Run CLI presence + auth probes at most once per process, asynchronously.
56
- *
57
- * The factory below is invoked on every `createFnAgent` call (the dashboard
58
- * does this per chat message). Doing the probes synchronously with execSync
59
- * froze the entire Node event loop for a few seconds while `claude` cold-
60
- * started. Memoizing as a Promise + spawning the probes async means the
61
- * factory returns immediately and other requests keep flowing; the result
62
- * is logged once on first run and reused thereafter.
55
+ * FNXC:pi-claude-cli 2026-06-27-06:39:
56
+ * The factory runs per `createFnAgent` call, which the dashboard does for each
57
+ * chat message. Synchronous `execSync` presence + auth probes froze the Node
58
+ * event loop while `claude` cold-started, so memoize the probes as an async
59
+ * Promise: the factory returns immediately, the result logs once, and later
60
+ * calls reuse it.
63
61
  */
64
62
  let cliValidationPromise: Promise<void> | undefined;
65
63
 
@@ -257,8 +255,7 @@ export default function (pi: ExtensionAPI) {
257
255
  parameters: Record<string, unknown>;
258
256
  }> }).tools;
259
257
 
260
- // Route A (U11): drive Claude through the ACP bridge when the kill-switch
261
- // is on AND a bridge path is injected. OFF by default → `-p` path below.
258
+ // FNXC:pi-claude-cli 2026-06-27-06:39: Route A drives Claude through the ACP bridge only when the kill-switch is on AND a bridge path is injected. OFF by default → `-p` path below.
262
259
  const bridgePath = resolveAcpBridgePath();
263
260
  if (bridgePath) {
264
261
  const toolDefs = resolveToolDefs(pi, contextTools);
@@ -268,8 +265,7 @@ export default function (pi: ExtensionAPI) {
268
265
  ...options,
269
266
  bridgePath,
270
267
  mcpServers: buildAcpMcpServers(toolDefs, hash, userMcpServers),
271
- // Forward only HOME/PATH so the bridged `claude` authenticates from the
272
- // login/keychain session (R17); never inherited process.env or API keys.
268
+ // FNXC:pi-claude-cli 2026-06-27-06:39: Forward only HOME/PATH so the bridged `claude` authenticates from the login/keychain session (R17); never inherited process.env or API keys.
273
269
  bridgeEnv: { HOME: process.env.HOME, PATH: process.env.PATH },
274
270
  });
275
271
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fusion/pi-claude-cli",
3
- "version": "0.49.0",
3
+ "version": "0.51.0",
4
4
  "type": "module",
5
5
  "private": true,
6
6
  "main": "index.ts",
@@ -2172,6 +2172,12 @@ interface EnsureGitRepositoryOptions {
2172
2172
  }
2173
2173
  declare function ensureGitRepositoryForProjectPath(projectPath: string, options?: EnsureGitRepositoryOptions): Promise<GitRepositoryEnsureOutcome>;
2174
2174
 
2175
+ type RunningAgentCountSource = (projectIds: readonly string[]) => Promise<Record<string, number>> | Record<string, number>;
2176
+ interface RunningAgentCounts {
2177
+ currentlyActive: number;
2178
+ projectsActive: Record<string, number>;
2179
+ }
2180
+
2175
2181
  interface CentralCoreEvents {
2176
2182
  "project:registered": [project: RegisteredProject];
2177
2183
  "project:reattached": [project: RegisteredProject, reason: string];
@@ -2391,6 +2397,9 @@ declare class CentralCore extends EventEmitter<CentralCoreEvents> {
2391
2397
  getDefaultProjectId(): Promise<string | undefined>;
2392
2398
  setDefaultProjectId(projectId: string | null): Promise<void>;
2393
2399
  getGlobalConcurrencyState(): Promise<GlobalConcurrencyState>;
2400
+ getLiveRunningAgentCounts(options?: {
2401
+ source?: RunningAgentCountSource;
2402
+ }): Promise<RunningAgentCounts>;
2394
2403
  updateGlobalConcurrency(updates: Partial<Pick<GlobalConcurrencyState, "globalMaxConcurrent" | "currentlyActive" | "queuedCount">>): Promise<GlobalConcurrencyState>;
2395
2404
  acquireGlobalSlot(projectId: string): Promise<boolean>;
2396
2405
  releaseGlobalSlot(projectId: string): Promise<void>;
@@ -2522,6 +2531,7 @@ interface TaskStoreEvents {
2522
2531
  settings: Settings;
2523
2532
  previous: Settings;
2524
2533
  }];
2534
+ "artifact:registered": [artifact: Artifact];
2525
2535
  "agent:log": [entry: AgentLogEntry];
2526
2536
  "merger:autostashOrphans": [
2527
2537
  data: {
@@ -2696,6 +2706,13 @@ declare class TaskStore extends EventEmitter<TaskStoreEvents> {
2696
2706
  reason: string;
2697
2707
  }>;
2698
2708
  }>;
2709
+ reconcilePhantomCommittedReservations(): Promise<{
2710
+ reconciled: string[];
2711
+ skipped: Array<{
2712
+ id: string;
2713
+ reason: string;
2714
+ }>;
2715
+ }>;
2699
2716
  private readTaskJson;
2700
2717
  private writeTaskJsonFile;
2701
2718
  private atomicCreateTaskJson;
@@ -2720,6 +2737,7 @@ declare class TaskStore extends EventEmitter<TaskStoreEvents> {
2720
2737
  private writeConfig;
2721
2738
  resolveLocalNodeIdForTaskAllocation(): Promise<string>;
2722
2739
  private createTaskWithDistributedReservation;
2740
+ private rollbackFailedDistributedReservationCreate;
2723
2741
  private taskDir;
2724
2742
  private artifactRegistryDir;
2725
2743
  private static artifactStoredName;
@@ -2741,6 +2759,10 @@ declare class TaskStore extends EventEmitter<TaskStoreEvents> {
2741
2759
  prompt?: string;
2742
2760
  applyDefaultWorkflowSteps?: boolean;
2743
2761
  invokeTaskCreatedHook?: boolean;
2762
+ reservationCommit?: {
2763
+ reservationId: string;
2764
+ nodeId: string;
2765
+ };
2744
2766
  }): Promise<Task>;
2745
2767
  applyReplicatedTaskCreate(payload: MeshReplicatedTaskCreatePayload): Promise<MeshReplicatedTaskApplyResult>;
2746
2768
  private _createTaskInternal;
@@ -3989,6 +4011,7 @@ declare class Database {
3989
4011
  private applyMigration;
3990
4012
  private hasTable;
3991
4013
  isFts5CorruptionError(error: unknown): boolean;
4014
+ reindexMessages(): void;
3992
4015
  private getTableColumns;
3993
4016
  private hasColumn;
3994
4017
  private tableExists;
@@ -4363,6 +4386,7 @@ interface WorkflowStep {
4363
4386
  prompt: string;
4364
4387
  toolMode?: WorkflowStepToolMode;
4365
4388
  skillName?: string;
4389
+ requiresBrowser?: boolean;
4366
4390
  scriptName?: string;
4367
4391
  enabled: boolean;
4368
4392
  defaultOn?: boolean;
@@ -4372,7 +4396,7 @@ interface WorkflowStep {
4372
4396
  createdAt: string;
4373
4397
  updatedAt: string;
4374
4398
  }
4375
- type NtfyNotificationEvent = "in-review" | "merged" | "failed" | "awaiting-approval" | "awaiting-user-review" | "planning-awaiting-input" | "gridlock" | "board-stall-unrecovered" | "db-corruption-detected" | "fallback-used" | "memory-dreams-processed" | "token-budget" | "message:agent-to-user" | "message:agent-to-agent" | "message:room" | "oauth-token-expired" | "task-created" | "workflow-notify";
4399
+ type NtfyNotificationEvent = "in-review" | "merged" | "failed" | "awaiting-approval" | "awaiting-user-review" | "planning-awaiting-input" | "cli-agent-awaiting-input" | "gridlock" | "board-stall-unrecovered" | "db-corruption-detected" | "fallback-used" | "memory-dreams-processed" | "token-budget" | "message:agent-to-user" | "message:agent-to-agent" | "message:room" | "oauth-token-expired" | "task-created" | "workflow-notify";
4376
4400
  interface NotificationProviderConfig {
4377
4401
  id: string;
4378
4402
  name: string;
@@ -4451,6 +4475,7 @@ interface PrInfo {
4451
4475
  commentCount: number;
4452
4476
  isDraft?: boolean;
4453
4477
  draft?: boolean;
4478
+ manual?: boolean;
4454
4479
  autoMergeOnGreen?: boolean;
4455
4480
  autoMergeStrategy?: "merge" | "squash" | "rebase";
4456
4481
  lastMergeError?: string;
@@ -5590,6 +5615,8 @@ interface ProjectSettings {
5590
5615
  testCommand?: string;
5591
5616
  buildCommand?: string;
5592
5617
  recycleWorktrees?: boolean;
5618
+ showWorktreeGrouping?: boolean;
5619
+ openTasksInRightSidebar?: boolean;
5593
5620
  executorAllowSiblingBranchRename?: boolean;
5594
5621
  worktreeNaming?: "random" | "task-id" | "task-title";
5595
5622
  worktrunk?: WorktrunkSettings;
@@ -5652,6 +5679,7 @@ interface ProjectSettings {
5652
5679
  verificationCommandTimeoutMs?: number;
5653
5680
  scopeVerificationToChangedFiles?: boolean;
5654
5681
  requirePlanApproval?: boolean;
5682
+ planApprovalMode?: "workflow" | "auto-approve-all" | "require-all";
5655
5683
  ephemeralAgentsEnabled?: boolean;
5656
5684
  agentProvisioning?: {
5657
5685
  approvalMode?: AgentProvisioningApprovalMode;
@@ -5745,6 +5773,8 @@ interface ProjectSettings {
5745
5773
  titleSummarizerModelId?: string;
5746
5774
  titleSummarizerFallbackProvider?: string;
5747
5775
  titleSummarizerFallbackModelId?: string;
5776
+ prTitlePromptInstructions?: string;
5777
+ prDescriptionPromptInstructions?: string;
5748
5778
  scripts?: Record<string, string>;
5749
5779
  setupScript?: string;
5750
5780
  insightExtractionEnabled?: boolean;
@@ -6428,6 +6458,7 @@ interface Agent {
6428
6458
  totalOutputTokens?: number;
6429
6459
  lastError?: string;
6430
6460
  pendingApprovalCount?: number;
6461
+ taskColumn?: string;
6431
6462
  instructionsPath?: string;
6432
6463
  instructionsText?: string;
6433
6464
  soul?: string;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fusion-plugin-examples/acp-runtime",
3
- "version": "0.1.12",
3
+ "version": "0.1.14",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fusion-plugin-examples/cli-printing-press",
3
- "version": "0.1.29",
3
+ "version": "0.1.31",
4
4
  "type": "module",
5
5
  "private": true,
6
6
  "exports": {