@dougbots/avenor-pi 0.12.1 → 0.13.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.
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { InspectResult, StatusResult, Supervisor, answerPermissionTool, brokerReceiveTool, brokerReplyTool, dial, eventsTool, followUpTool, inspectTool, observeRun, resultTool, shutdownTool, spawnTool, statusTool, workflowCompleteTool, workflowControllerStatusTool, workflowEventsTool, workflowGateTool, workflowInspectTool, workflowReadyTool, workflowStatusTool, workflowWaitTool } from "@dougbots/avenor-core";
1
+ import { InspectResult, StatusResult, Supervisor, answerPermissionTool, brokerReceiveTool, brokerReplyTool, dial, eventsTool, followUpTool, inspectTool, killTool, observeRun, resultTool, shutdownTool, spawnTool, statusTool, workflowCompleteTool, workflowControllerStatusTool, workflowEventsTool, workflowGateTool, workflowInspectTool, workflowReadyTool, workflowStatusTool, workflowWaitTool } from "@dougbots/avenor-core";
2
2
  import { EventBus, ExtensionAPI } from "@earendil-works/pi-coding-agent";
3
3
 
4
4
  //#region src/subagent-broker.d.ts
@@ -128,6 +128,7 @@ interface ExtensionDeps {
128
128
  brokerReceiveTool: typeof brokerReceiveTool;
129
129
  brokerReplyTool: typeof brokerReplyTool;
130
130
  shutdownTool: typeof shutdownTool;
131
+ killTool: typeof killTool;
131
132
  workflowStatusTool: typeof workflowStatusTool;
132
133
  workflowWaitTool: typeof workflowWaitTool;
133
134
  workflowInspectTool: typeof workflowInspectTool;
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { Input, Key, Text, matchesKey, truncateToWidth, visibleWidth, wrapTextWithAnsi } from "@earendil-works/pi-tui";
2
2
  import { Type } from "typebox";
3
3
  import { createHash, randomUUID } from "node:crypto";
4
- import { Supervisor, THINKING_LEVELS, answerPermissionTool, askTool, brokerReceiveTool, brokerReplyTool, cancelTool, dial, eventsTool, extractEventText, followUpTool, inspectTool, observeRun, peersTool, resultTool, shutdownTool, socketsRoot, spawnTool, statusTool, validateSpawnSelection, workflowCompleteTool, workflowControllerStatusTool, workflowEventsTool, workflowGateTool, workflowInspectTool, workflowReadyTool, workflowStatusTool, workflowWaitTool } from "@dougbots/avenor-core";
4
+ import { Supervisor, THINKING_LEVELS, answerPermissionTool, askTool, brokerReceiveTool, brokerReplyTool, cancelTool, dial, eventsTool, extractEventText, followUpTool, inspectTool, killTool, observeRun, peersTool, resultTool, shutdownTool, socketsRoot, spawnTool, statusTool, validateSpawnSelection, workflowCompleteTool, workflowControllerStatusTool, workflowEventsTool, workflowGateTool, workflowInspectTool, workflowReadyTool, workflowStatusTool, workflowWaitTool } from "@dougbots/avenor-core";
5
5
  import * as fs from "node:fs";
6
6
  import * as path from "node:path";
7
7
  //#region src/subagent-broker.ts
@@ -1415,6 +1415,7 @@ const defaultDeps = {
1415
1415
  brokerReceiveTool,
1416
1416
  brokerReplyTool,
1417
1417
  shutdownTool,
1418
+ killTool,
1418
1419
  workflowStatusTool,
1419
1420
  workflowWaitTool,
1420
1421
  workflowInspectTool,
@@ -2931,6 +2932,31 @@ function createExtension(deps = defaultDeps, options = {}) {
2931
2932
  }, theme, context.args);
2932
2933
  }
2933
2934
  });
2935
+ pi.registerTool({
2936
+ name: "avenor_kill",
2937
+ label: "Avenor Kill",
2938
+ description: "Terminate a run without shutting down the supervisor. Other runs and the supervisor itself keep running.",
2939
+ parameters: Type.Object({
2940
+ run_id: Type.String({
2941
+ minLength: 1,
2942
+ description: "Run ID or label to terminate"
2943
+ }),
2944
+ supervisor_id: Type.Optional(Type.String({ description: "Reuse an existing supervisor by socket path" }))
2945
+ }),
2946
+ async execute(_toolCallId, params) {
2947
+ const result = await deps.killTool({
2948
+ runId: params.run_id,
2949
+ supervisorId: params.supervisor_id
2950
+ });
2951
+ return {
2952
+ content: [{
2953
+ type: "text",
2954
+ text: JSON.stringify(result, null, 2)
2955
+ }],
2956
+ details: result
2957
+ };
2958
+ }
2959
+ });
2934
2960
  pi.registerTool({
2935
2961
  name: "avenor_workflow_status",
2936
2962
  label: "Avenor Workflow Status",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dougbots/avenor-pi",
3
- "version": "0.12.1",
3
+ "version": "0.13.0",
4
4
  "type": "module",
5
5
  "keywords": [
6
6
  "pi-package"
@@ -35,7 +35,7 @@
35
35
  "dev": "tsdown --watch"
36
36
  },
37
37
  "dependencies": {
38
- "@dougbots/avenor-core": "^0.12.1"
38
+ "@dougbots/avenor-core": "^0.13.0"
39
39
  },
40
40
  "peerDependencies": {
41
41
  "@earendil-works/pi-coding-agent": ">=0.74.0",