@chances-ai/cli 3.3.0 → 3.4.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/boot/create-app.d.ts.map +1 -1
- package/dist/boot/create-app.js +8 -0
- package/dist/boot/create-app.js.map +1 -1
- package/dist/boot/load-runtime.d.ts +18 -1
- package/dist/boot/load-runtime.d.ts.map +1 -1
- package/dist/boot/load-runtime.js +10 -1
- package/dist/boot/load-runtime.js.map +1 -1
- package/dist/entrypoints/cli.d.ts +1 -0
- package/dist/entrypoints/cli.d.ts.map +1 -1
- package/dist/entrypoints/cli.js +32 -7
- package/dist/entrypoints/cli.js.map +1 -1
- package/dist/slash/agents.d.ts +15 -11
- package/dist/slash/agents.d.ts.map +1 -1
- package/dist/slash/agents.js +92 -23
- package/dist/slash/agents.js.map +1 -1
- package/package.json +15 -15
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-app.d.ts","sourceRoot":"","sources":["../../src/boot/create-app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAkB,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAkB,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD;;;;;;;;;;6DAU6D;AAC7D,wBAAgB,WAAW,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,kBAAkB,GAAG,WAAW,
|
|
1
|
+
{"version":3,"file":"create-app.d.ts","sourceRoot":"","sources":["../../src/boot/create-app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAkB,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAkB,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD;;;;;;;;;;6DAU6D;AAC7D,wBAAgB,WAAW,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,kBAAkB,GAAG,WAAW,CA0C/G;AAED,mFAAmF;AACnF,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,kBAAkB,CAEjE"}
|
package/dist/boot/create-app.js
CHANGED
|
@@ -30,6 +30,11 @@ export function buildEngine(ctx, session, resolver) {
|
|
|
30
30
|
// change vs Subagent v1.
|
|
31
31
|
agents: ctx.agents,
|
|
32
32
|
registry: ctx.registry,
|
|
33
|
+
// 3.4: thread the background-task registry. When undefined (e.g. -p
|
|
34
|
+
// mode), the tool's schema omits `run_in_background` and any caller
|
|
35
|
+
// passing the field gets silent sync degradation (codex Round-1
|
|
36
|
+
// SHOULD-FIX #1 resolution).
|
|
37
|
+
backgroundTasks: ctx.backgroundTasks,
|
|
33
38
|
}));
|
|
34
39
|
return new AgentEngine({
|
|
35
40
|
bus: ctx.bus,
|
|
@@ -42,6 +47,9 @@ export function buildEngine(ctx, session, resolver) {
|
|
|
42
47
|
workspaceRoot: ctx.workspaceRoot,
|
|
43
48
|
selection: ctx.selection,
|
|
44
49
|
maxTurns: ctx.config.agent?.maxTurns,
|
|
50
|
+
// 3.4: pair with the same registry the task tool launched into, so
|
|
51
|
+
// the engine drains pending notifications at the top of every turn.
|
|
52
|
+
backgroundTasks: ctx.backgroundTasks,
|
|
45
53
|
});
|
|
46
54
|
}
|
|
47
55
|
/** Auto-resolver for non-interactive modes: approve only when --yes was passed. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-app.js","sourceRoot":"","sources":["../../src/boot/create-app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAA2B,MAAM,mBAAmB,CAAC;AAI5E;;;;;;;;;;6DAU6D;AAC7D,MAAM,UAAU,WAAW,CAAC,GAAe,EAAE,OAAuB,EAAE,QAA4B;IAChG,MAAM,IAAI,GAAG,IAAI,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAClE,6EAA6E;IAC7E,yEAAyE;IACzE,oEAAoE;IACpE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;IAChB,GAAG,CAAC,KAAK,CAAC,QAAQ,CAChB,cAAc,CAAC;QACb,WAAW,EAAE,GAAG,CAAC,KAAK;QACtB,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,IAAI;QACJ,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ;QACpC,oEAAoE;QACpE,gEAAgE;QAChE,yBAAyB;QACzB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,QAAQ,EAAE,GAAG,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"create-app.js","sourceRoot":"","sources":["../../src/boot/create-app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAA2B,MAAM,mBAAmB,CAAC;AAI5E;;;;;;;;;;6DAU6D;AAC7D,MAAM,UAAU,WAAW,CAAC,GAAe,EAAE,OAAuB,EAAE,QAA4B;IAChG,MAAM,IAAI,GAAG,IAAI,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAClE,6EAA6E;IAC7E,yEAAyE;IACzE,oEAAoE;IACpE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;IAChB,GAAG,CAAC,KAAK,CAAC,QAAQ,CAChB,cAAc,CAAC;QACb,WAAW,EAAE,GAAG,CAAC,KAAK;QACtB,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,IAAI;QACJ,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ;QACpC,oEAAoE;QACpE,gEAAgE;QAChE,yBAAyB;QACzB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,oEAAoE;QACpE,oEAAoE;QACpE,gEAAgE;QAChE,6BAA6B;QAC7B,eAAe,EAAE,GAAG,CAAC,eAAe;KACrC,CAAC,CACH,CAAC;IACF,OAAO,IAAI,WAAW,CAAC;QACrB,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,IAAI;QACJ,OAAO;QACP,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ;QACpC,mEAAmE;QACnE,oEAAoE;QACpE,eAAe,EAAE,GAAG,CAAC,eAAe;KACrC,CAAC,CAAC;AACL,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,YAAY,CAAC,OAAgB;IAC3C,OAAO,KAAK,IAAI,EAAE,CAAC,OAAO,CAAC;AAC7B,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EventBus, FeatureFlags, Logger, ModelSelection, type LogLevel } from "@chances-ai/runtime";
|
|
1
|
+
import { AsyncTaskRegistry, EventBus, FeatureFlags, Logger, ModelSelection, type LogLevel } from "@chances-ai/runtime";
|
|
2
2
|
import { AuthStore, type ChancesConfig, type ExternalPluginEntry } from "@chances-ai/config";
|
|
3
3
|
import { ModelRegistry, ModelRouter } from "@chances-ai/ai";
|
|
4
4
|
import { ToolRegistry, type PermissionGate } from "@chances-ai/tools";
|
|
@@ -35,6 +35,15 @@ export interface AppContext {
|
|
|
35
35
|
/** Per-file diagnostics from the same discovery pass. Surfaced by the
|
|
36
36
|
* `/agents` slash command; logged at warn level during boot. */
|
|
37
37
|
agentsSkipped: readonly SkippedAgent[];
|
|
38
|
+
/**
|
|
39
|
+
* (3.4) Background subagent registry. Constructed only for interactive
|
|
40
|
+
* `chat` mode — `-p` one-shot mode leaves it undefined so the `task`
|
|
41
|
+
* tool's schema omits `run_in_background` (a background task launched
|
|
42
|
+
* in `-p` would have nowhere to deliver its notification, since the
|
|
43
|
+
* process exits after the single turn). Owned by the runtime; CLI
|
|
44
|
+
* shutdown calls `backgroundTasks?.dispose()` BEFORE `mcp?.dispose()`.
|
|
45
|
+
*/
|
|
46
|
+
backgroundTasks?: AsyncTaskRegistry;
|
|
38
47
|
/**
|
|
39
48
|
* Live permission gate, populated by `buildEngine` so slash commands
|
|
40
49
|
* (notably `/mcp restart` / `/mcp remove`) can call `gate.invalidate(name)`
|
|
@@ -53,6 +62,14 @@ export interface RuntimeOverrides {
|
|
|
53
62
|
provider?: string;
|
|
54
63
|
model?: string;
|
|
55
64
|
logLevel?: LogLevel;
|
|
65
|
+
/**
|
|
66
|
+
* (3.4) When true, construct an `AsyncTaskRegistry` and expose
|
|
67
|
+
* `AppContext.backgroundTasks`. Only the interactive `chat` command
|
|
68
|
+
* sets this — see "When NOT to construct the registry" in
|
|
69
|
+
* `docs/3.4-design.md`. Defaults to false so headless / -p paths stay
|
|
70
|
+
* synchronous-only.
|
|
71
|
+
*/
|
|
72
|
+
enableBackgroundTasks?: boolean;
|
|
56
73
|
}
|
|
57
74
|
/** Builds the shared application context (the wiring all commands depend on). */
|
|
58
75
|
export declare function loadRuntime(overrides?: RuntimeOverrides): Promise<AppContext>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-runtime.d.ts","sourceRoot":"","sources":["../../src/boot/load-runtime.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,cAAc,EACd,KAAK,QAAQ,EACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,SAAS,EAET,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAEL,aAAa,EACb,WAAW,EAGZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,YAAY,EAAgB,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACpF,OAAO,EAAE,WAAW,EAAe,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,YAAY,EAElB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,OAAO,EAAkB,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAE,UAAU,EAAE,KAAK,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAGjE,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,QAAQ,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,aAAa,CAAC;IACxB,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,aAAa,CAAC;IACzB,OAAO,EAAE,UAAU,GAAG,SAAS,CAAC;IAChC;;;;OAIG;IACH,GAAG,EAAE,OAAO,GAAG,SAAS,CAAC;IACzB;;;;;OAKG;IACH,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC7C;oEACgE;IAChE,aAAa,EAAE,SAAS,YAAY,EAAE,CAAC;IACvC;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB;;uEAEmE;IACnE,SAAS,EAAE,cAAc,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"load-runtime.d.ts","sourceRoot":"","sources":["../../src/boot/load-runtime.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,iBAAiB,EACjB,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,cAAc,EACd,KAAK,QAAQ,EACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,SAAS,EAET,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAEL,aAAa,EACb,WAAW,EAGZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,YAAY,EAAgB,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACpF,OAAO,EAAE,WAAW,EAAe,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,YAAY,EAElB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,OAAO,EAAkB,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAE,UAAU,EAAE,KAAK,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAGjE,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,QAAQ,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,aAAa,CAAC;IACxB,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,aAAa,CAAC;IACzB,OAAO,EAAE,UAAU,GAAG,SAAS,CAAC;IAChC;;;;OAIG;IACH,GAAG,EAAE,OAAO,GAAG,SAAS,CAAC;IACzB;;;;;OAKG;IACH,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC7C;oEACgE;IAChE,aAAa,EAAE,SAAS,YAAY,EAAE,CAAC;IACvC;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,iBAAiB,CAAC;IACpC;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB;;uEAEmE;IACnE,SAAS,EAAE,cAAc,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,iFAAiF;AACjF,wBAAsB,WAAW,CAAC,SAAS,GAAE,gBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,CAgEvF;AA6ED;;;yBAGyB;AACzB,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,mBAAmB,EAC1B,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC,CAsBjB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { homedir } from "node:os";
|
|
2
2
|
import { isAbsolute, join, relative, resolve } from "node:path";
|
|
3
3
|
import { pathToFileURL } from "node:url";
|
|
4
|
-
import { EventBus, FeatureFlags, Logger, ModelSelection, } from "@chances-ai/runtime";
|
|
4
|
+
import { AsyncTaskRegistry, EventBus, FeatureFlags, Logger, ModelSelection, } from "@chances-ai/runtime";
|
|
5
5
|
import { AuthStore, loadConfig, } from "@chances-ai/config";
|
|
6
6
|
import { KNOWN_MODELS, ModelRegistry, ModelRouter, buildRegistry, envByProviderFrom, } from "@chances-ai/ai";
|
|
7
7
|
import { ToolRegistry, builtinTools } from "@chances-ai/tools";
|
|
@@ -43,6 +43,14 @@ export async function loadRuntime(overrides = {}) {
|
|
|
43
43
|
logger.warn(`agent file '${s.path}' (${s.reason}): ${s.detail}`);
|
|
44
44
|
}
|
|
45
45
|
const selection = new ModelSelection({ provider: config.provider, model: config.model });
|
|
46
|
+
// 3.4: only the interactive `chat` command requests background tasks;
|
|
47
|
+
// -p / headless modes leave it undefined so the `task` tool's schema
|
|
48
|
+
// omits `run_in_background` entirely. The config's
|
|
49
|
+
// `agent.maxBackgroundTasks` (validated in `mergeAgent`) feeds the
|
|
50
|
+
// registry's per-instance bound.
|
|
51
|
+
const backgroundTasks = overrides.enableBackgroundTasks
|
|
52
|
+
? new AsyncTaskRegistry({ maxConcurrent: config.agent?.maxBackgroundTasks })
|
|
53
|
+
: undefined;
|
|
46
54
|
return {
|
|
47
55
|
bus,
|
|
48
56
|
logger,
|
|
@@ -58,6 +66,7 @@ export async function loadRuntime(overrides = {}) {
|
|
|
58
66
|
mcp,
|
|
59
67
|
agents: discovered.agents,
|
|
60
68
|
agentsSkipped: discovered.skipped,
|
|
69
|
+
backgroundTasks,
|
|
61
70
|
workspaceRoot: config.workspaceRoot,
|
|
62
71
|
selection,
|
|
63
72
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-runtime.js","sourceRoot":"","sources":["../../src/boot/load-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,cAAc,GAEf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,SAAS,EACT,UAAU,GAGX,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,YAAY,EACZ,aAAa,EACb,WAAW,EACX,aAAa,EACb,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,YAAY,EAAuB,MAAM,mBAAmB,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAGL,cAAc,GACf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,MAAM,MAAM,oBAAoB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAe,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"load-runtime.js","sourceRoot":"","sources":["../../src/boot/load-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ export declare function buildCommandRegistry(): CommandRegistry;
|
|
|
6
6
|
export type LoadRuntimeFn = (overrides: {
|
|
7
7
|
provider?: string;
|
|
8
8
|
model?: string;
|
|
9
|
+
enableBackgroundTasks?: boolean;
|
|
9
10
|
}) => Promise<AppContext>;
|
|
10
11
|
/** `loadRuntimeFn` is an injection seam for tests — see cli.test.tsx. */
|
|
11
12
|
export declare function main(argv?: string[], loadRuntimeFn?: LoadRuntimeFn): Promise<number>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/entrypoints/cli.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAQvE,OAAO,EAAe,SAAS,EAAE,YAAY,EAAkB,MAAM,wBAAwB,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AA2D1D,oDAAoD;AACpD,wBAAgB,oBAAoB,IAAI,eAAe,CAWtD;AAED,MAAM,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/entrypoints/cli.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAQvE,OAAO,EAAe,SAAS,EAAE,YAAY,EAAkB,MAAM,wBAAwB,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AA2D1D,oDAAoD;AACpD,wBAAgB,oBAAoB,IAAI,eAAe,CAWtD;AAED,MAAM,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;AAE1B,yEAAyE;AACzE,wBAAsB,IAAI,CACxB,IAAI,GAAE,MAAM,EAA0B,EACtC,aAAa,GAAE,aAA2B,GACzC,OAAO,CAAC,MAAM,CAAC,CAkEjB;AAED,0EAA0E;AAC1E,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC"}
|
package/dist/entrypoints/cli.js
CHANGED
|
@@ -79,17 +79,42 @@ export async function main(argv = process.argv.slice(2), loadRuntimeFn = loadRun
|
|
|
79
79
|
if (cmd.needsRuntime === false) {
|
|
80
80
|
return cmd.run(null, cliArgs, registry);
|
|
81
81
|
}
|
|
82
|
-
|
|
82
|
+
// 3.4: only the *interactive* `chat` command needs the background-task
|
|
83
|
+
// registry. Codex Round-2 MUST-FIX #1: the `chat` command itself also
|
|
84
|
+
// routes to one-shot prompt mode when `-p` is supplied (see
|
|
85
|
+
// `apps/cli/src/commands/chat.ts` — `runPrompt` branch). In that case
|
|
86
|
+
// the process exits after the single turn so a background launch
|
|
87
|
+
// would never have a "next turn" to deliver its notification. Gate
|
|
88
|
+
// the registry on `!args.prompt` too.
|
|
89
|
+
const enableBackgroundTasks = cmd.name === "chat" && args.prompt === undefined;
|
|
90
|
+
const ctx = await loadRuntimeFn({
|
|
91
|
+
provider: args.provider,
|
|
92
|
+
model: args.model,
|
|
93
|
+
enableBackgroundTasks,
|
|
94
|
+
});
|
|
83
95
|
try {
|
|
84
96
|
return await cmd.run(ctx, cliArgs, registry);
|
|
85
97
|
}
|
|
86
98
|
finally {
|
|
87
|
-
// Plugins / MCP servers may hold file handles,
|
|
88
|
-
//
|
|
89
|
-
//
|
|
90
|
-
//
|
|
91
|
-
//
|
|
92
|
-
//
|
|
99
|
+
// Plugins / MCP servers / background tasks may hold file handles,
|
|
100
|
+
// child processes, sockets, or unlinked AbortControllers. Give them
|
|
101
|
+
// a chance to clean up regardless of whether the command succeeded
|
|
102
|
+
// or threw. Dispose errors are logged but don't mask the command's
|
|
103
|
+
// own outcome.
|
|
104
|
+
//
|
|
105
|
+
// Order matters: background tasks dispose FIRST so any in-flight
|
|
106
|
+
// child engine stops driving the bus and gate before MCP servers
|
|
107
|
+
// (which may be serving the child's tools) tear down. MCP teardown
|
|
108
|
+
// then runs BEFORE plugin dispose so its child processes' SIGTERM
|
|
109
|
+
// lands while the bus is still alive to log the result.
|
|
110
|
+
if (ctx.backgroundTasks) {
|
|
111
|
+
try {
|
|
112
|
+
await ctx.backgroundTasks.dispose();
|
|
113
|
+
}
|
|
114
|
+
catch (e) {
|
|
115
|
+
ctx.logger.warn(`background tasks dispose failed: ${e.message}`);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
93
118
|
if (ctx.mcp) {
|
|
94
119
|
try {
|
|
95
120
|
await ctx.mcp.dispose();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/entrypoints/cli.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/entrypoints/cli.tsx"],"names":[],"mappings":"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"}
|
package/dist/slash/agents.d.ts
CHANGED
|
@@ -1,21 +1,25 @@
|
|
|
1
1
|
import { type Plugin } from "@chances-ai/plugin-api";
|
|
2
2
|
import type { BuiltinSlashDeps } from "./index.js";
|
|
3
3
|
/**
|
|
4
|
-
* `/agents` — read-only diagnostic for the 3.3 catalog.
|
|
4
|
+
* `/agents` — read-only diagnostic for the 3.3 catalog + 3.4 background tasks.
|
|
5
5
|
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
6
|
+
* Three sections, top to bottom:
|
|
7
|
+
* 1. Persona catalog: every agent discovered at boot, source-precedence
|
|
8
|
+
* order (project > user > bundled), with effective tool list, model
|
|
9
|
+
* override, and source path. Unchanged from 3.3.
|
|
10
|
+
* 2. Background tasks: every entry in `AsyncTaskRegistry.list()` —
|
|
11
|
+
* running, completed, failed, cancelled. Shows id, name, status,
|
|
12
|
+
* wall-clock age, and prompt head. Hidden when no registry (e.g. `-p`
|
|
13
|
+
* mode) or when the list is empty (interactive default until the
|
|
14
|
+
* model launches a background).
|
|
15
|
+
* 3. Skipped files: per-file diagnostics from the catalog discovery
|
|
16
|
+
* pass. Same as 3.3.
|
|
10
17
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* `chances agents --json` CLI command rather than baked into the slash
|
|
14
|
-
* contract (codex Round-1 #14). For now `-p --json /agents` emits the
|
|
15
|
-
* plain-text body inside the standard slash result frame.
|
|
18
|
+
* Subcommand: `/agents kill <task-id>` aborts a running background task.
|
|
19
|
+
* `/agents kill --all` aborts every running task.
|
|
16
20
|
*
|
|
17
21
|
* "Project overrides user overrides bundled" is the wording used here —
|
|
18
|
-
* matches the design doc's user-facing language (codex Round-1 #11).
|
|
22
|
+
* matches the design doc's user-facing language (3.3 codex Round-1 #11).
|
|
19
23
|
*/
|
|
20
24
|
export declare function makeAgentsPlugin(deps: BuiltinSlashDeps): Plugin;
|
|
21
25
|
//# sourceMappingURL=agents.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/slash/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,MAAM,EAAqB,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/slash/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,MAAM,EAAqB,MAAM,wBAAwB,CAAC;AAGtF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAa/D"}
|
package/dist/slash/agents.js
CHANGED
|
@@ -1,26 +1,30 @@
|
|
|
1
1
|
import { definePlugin } from "@chances-ai/plugin-api";
|
|
2
2
|
/**
|
|
3
|
-
* `/agents` — read-only diagnostic for the 3.3 catalog.
|
|
3
|
+
* `/agents` — read-only diagnostic for the 3.3 catalog + 3.4 background tasks.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
5
|
+
* Three sections, top to bottom:
|
|
6
|
+
* 1. Persona catalog: every agent discovered at boot, source-precedence
|
|
7
|
+
* order (project > user > bundled), with effective tool list, model
|
|
8
|
+
* override, and source path. Unchanged from 3.3.
|
|
9
|
+
* 2. Background tasks: every entry in `AsyncTaskRegistry.list()` —
|
|
10
|
+
* running, completed, failed, cancelled. Shows id, name, status,
|
|
11
|
+
* wall-clock age, and prompt head. Hidden when no registry (e.g. `-p`
|
|
12
|
+
* mode) or when the list is empty (interactive default until the
|
|
13
|
+
* model launches a background).
|
|
14
|
+
* 3. Skipped files: per-file diagnostics from the catalog discovery
|
|
15
|
+
* pass. Same as 3.3.
|
|
9
16
|
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* `chances agents --json` CLI command rather than baked into the slash
|
|
13
|
-
* contract (codex Round-1 #14). For now `-p --json /agents` emits the
|
|
14
|
-
* plain-text body inside the standard slash result frame.
|
|
17
|
+
* Subcommand: `/agents kill <task-id>` aborts a running background task.
|
|
18
|
+
* `/agents kill --all` aborts every running task.
|
|
15
19
|
*
|
|
16
20
|
* "Project overrides user overrides bundled" is the wording used here —
|
|
17
|
-
* matches the design doc's user-facing language (codex Round-1 #11).
|
|
21
|
+
* matches the design doc's user-facing language (3.3 codex Round-1 #11).
|
|
18
22
|
*/
|
|
19
23
|
export function makeAgentsPlugin(deps) {
|
|
20
24
|
const command = {
|
|
21
25
|
name: "agents",
|
|
22
|
-
description: "List discovered subagent personas
|
|
23
|
-
run: () =>
|
|
26
|
+
description: "List discovered subagent personas + running background tasks. `kill <id>` aborts a background task.",
|
|
27
|
+
run: (args) => handle(deps, args),
|
|
24
28
|
};
|
|
25
29
|
return definePlugin({
|
|
26
30
|
name: "builtin/agents",
|
|
@@ -29,33 +33,89 @@ export function makeAgentsPlugin(deps) {
|
|
|
29
33
|
},
|
|
30
34
|
});
|
|
31
35
|
}
|
|
36
|
+
function handle(deps, args) {
|
|
37
|
+
// Args come pre-tokenised from the slash dispatcher. `/agents` → [],
|
|
38
|
+
// `/agents kill <id>` → ["kill", "<id>"], `/agents kill --all` → ["kill", "--all"].
|
|
39
|
+
const sub = args[0];
|
|
40
|
+
if (sub === "kill") {
|
|
41
|
+
const target = args[1];
|
|
42
|
+
return handleKill(deps, target);
|
|
43
|
+
}
|
|
44
|
+
if (sub !== undefined) {
|
|
45
|
+
return `Unknown /agents subcommand '${sub}'. Usage: /agents [kill <task-id> | kill --all]`;
|
|
46
|
+
}
|
|
47
|
+
return render(deps);
|
|
48
|
+
}
|
|
49
|
+
function handleKill(deps, target) {
|
|
50
|
+
const registry = deps.ctx.backgroundTasks;
|
|
51
|
+
if (!registry) {
|
|
52
|
+
return "No background-task registry is configured (try this from interactive mode).";
|
|
53
|
+
}
|
|
54
|
+
if (target === undefined) {
|
|
55
|
+
return "Usage: /agents kill <task-id> | /agents kill --all";
|
|
56
|
+
}
|
|
57
|
+
if (target === "--all") {
|
|
58
|
+
const running = registry.list().filter((t) => t.status === "running");
|
|
59
|
+
if (running.length === 0)
|
|
60
|
+
return "No running background tasks.";
|
|
61
|
+
// Fire-and-forget; the registry resolves killAll asynchronously. The
|
|
62
|
+
// user gets immediate feedback that the cancellation was requested.
|
|
63
|
+
void registry.killAll();
|
|
64
|
+
return `Cancellation requested for ${running.length} running background task${running.length === 1 ? "" : "s"}.`;
|
|
65
|
+
}
|
|
66
|
+
const killed = registry.kill(target);
|
|
67
|
+
if (!killed) {
|
|
68
|
+
return `No running task with id '${target}' (already finished, or unknown id).`;
|
|
69
|
+
}
|
|
70
|
+
return `Cancellation requested for ${target}.`;
|
|
71
|
+
}
|
|
32
72
|
function render(deps) {
|
|
73
|
+
const lines = [];
|
|
33
74
|
const agents = deps.ctx.agents;
|
|
34
75
|
const skipped = deps.ctx.agentsSkipped;
|
|
35
|
-
const
|
|
36
|
-
|
|
76
|
+
const bg = deps.ctx.backgroundTasks;
|
|
77
|
+
lines.push("Agent catalog (project overrides user overrides bundled):");
|
|
37
78
|
if (!agents || agents.size === 0) {
|
|
38
|
-
|
|
79
|
+
lines.push(" (no agents configured — drop a .md file in .chances/agents/ to get started)");
|
|
39
80
|
}
|
|
40
81
|
else {
|
|
41
82
|
const sorted = [...agents.values()].sort(byNameThenSource);
|
|
42
83
|
const padTo = Math.max(...sorted.map((a) => a.name.length));
|
|
43
84
|
for (const a of sorted) {
|
|
44
|
-
|
|
85
|
+
lines.push(formatAgentLine(a, padTo));
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
// 3.4: background-task section. Only render when the registry exists
|
|
89
|
+
// — keeps -p / headless output identical to 3.3 there. When present
|
|
90
|
+
// and empty (interactive launch without bgs yet), show the header so
|
|
91
|
+
// the user knows the channel exists.
|
|
92
|
+
if (bg) {
|
|
93
|
+
const snaps = bg.list();
|
|
94
|
+
const runningCount = snaps.filter((t) => t.status === "running").length;
|
|
95
|
+
lines.push("");
|
|
96
|
+
lines.push(`Background tasks (${runningCount} running, ${snaps.length} total):`);
|
|
97
|
+
if (snaps.length === 0) {
|
|
98
|
+
lines.push(" (none — launch one with the task tool's `run_in_background: true` arg)");
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
const padId = Math.max(...snaps.map((s) => s.taskId.length));
|
|
102
|
+
const padName = Math.max(...snaps.map((s) => s.name.length));
|
|
103
|
+
const now = Date.now();
|
|
104
|
+
for (const s of snaps) {
|
|
105
|
+
lines.push(formatBgLine(s, now, padId, padName));
|
|
106
|
+
}
|
|
45
107
|
}
|
|
46
108
|
}
|
|
47
109
|
if (skipped && skipped.length > 0) {
|
|
48
|
-
|
|
49
|
-
|
|
110
|
+
lines.push("");
|
|
111
|
+
lines.push(`Skipped (${skipped.length}):`);
|
|
50
112
|
for (const s of skipped) {
|
|
51
|
-
|
|
113
|
+
lines.push(formatSkippedLine(s));
|
|
52
114
|
}
|
|
53
115
|
}
|
|
54
|
-
return
|
|
116
|
+
return lines.join("\n");
|
|
55
117
|
}
|
|
56
118
|
function byNameThenSource(a, b) {
|
|
57
|
-
// Stable sort: by name (catalogs are name-keyed so collisions across
|
|
58
|
-
// sources are already resolved; this just orders the rendered output).
|
|
59
119
|
return a.name.localeCompare(b.name);
|
|
60
120
|
}
|
|
61
121
|
function formatAgentLine(a, namePad) {
|
|
@@ -71,6 +131,15 @@ function formatTools(tools, disallowed) {
|
|
|
71
131
|
return base;
|
|
72
132
|
return `${base} minus [${disallowed.join(",")}]`;
|
|
73
133
|
}
|
|
134
|
+
function formatBgLine(s, now, padId, padName) {
|
|
135
|
+
const id = s.taskId.padEnd(padId);
|
|
136
|
+
const name = s.name.padEnd(padName);
|
|
137
|
+
const status = s.status.padEnd(9);
|
|
138
|
+
const endedOrNow = s.endedAt ?? now;
|
|
139
|
+
const ageSec = Math.max(0, Math.round((endedOrNow - s.startedAt) / 1000));
|
|
140
|
+
const ageLabel = `${ageSec}s`.padStart(5);
|
|
141
|
+
return ` ${id} ${name} ${status} ${ageLabel} ${s.promptHead}`;
|
|
142
|
+
}
|
|
74
143
|
function formatSkippedLine(s) {
|
|
75
144
|
return ` ${s.path} (${s.reason}): ${s.detail}`;
|
|
76
145
|
}
|
package/dist/slash/agents.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/slash/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAkC,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/slash/agents.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@chances-ai/cli",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"chances": "./dist/entrypoints/cli-node.js",
|
|
@@ -14,20 +14,20 @@
|
|
|
14
14
|
"@ai-sdk/google": "^1.2.0",
|
|
15
15
|
"@ai-sdk/openai": "^1.3.0",
|
|
16
16
|
"@ai-sdk/openai-compatible": "^0.2.0",
|
|
17
|
-
"@chances-ai/agents": "3.
|
|
18
|
-
"@chances-ai/ai": "3.
|
|
19
|
-
"@chances-ai/config": "3.
|
|
20
|
-
"@chances-ai/core": "3.
|
|
21
|
-
"@chances-ai/mcp": "3.
|
|
22
|
-
"@chances-ai/memory": "3.
|
|
23
|
-
"@chances-ai/native": "3.
|
|
24
|
-
"@chances-ai/plugin-api": "3.
|
|
25
|
-
"@chances-ai/plugin-logger": "3.
|
|
26
|
-
"@chances-ai/runtime": "3.
|
|
27
|
-
"@chances-ai/session": "3.
|
|
28
|
-
"@chances-ai/telemetry": "3.
|
|
29
|
-
"@chances-ai/tools": "3.
|
|
30
|
-
"@chances-ai/tui": "3.
|
|
17
|
+
"@chances-ai/agents": "3.4.0",
|
|
18
|
+
"@chances-ai/ai": "3.4.0",
|
|
19
|
+
"@chances-ai/config": "3.4.0",
|
|
20
|
+
"@chances-ai/core": "3.4.0",
|
|
21
|
+
"@chances-ai/mcp": "3.4.0",
|
|
22
|
+
"@chances-ai/memory": "3.4.0",
|
|
23
|
+
"@chances-ai/native": "3.4.0",
|
|
24
|
+
"@chances-ai/plugin-api": "3.4.0",
|
|
25
|
+
"@chances-ai/plugin-logger": "3.4.0",
|
|
26
|
+
"@chances-ai/runtime": "3.4.0",
|
|
27
|
+
"@chances-ai/session": "3.4.0",
|
|
28
|
+
"@chances-ai/telemetry": "3.4.0",
|
|
29
|
+
"@chances-ai/tools": "3.4.0",
|
|
30
|
+
"@chances-ai/tui": "3.4.0",
|
|
31
31
|
"ai": "^4.3.0",
|
|
32
32
|
"ink": "^5.0.1",
|
|
33
33
|
"react": "^18.3.1",
|