@agentconnect.md/daemon 1.0.0-rc.351 → 1.0.0-rc.352
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/{acp-host-k9x3f0uh.js → acp-host-BM50_UMI.js} +2 -2
- package/dist/{acp-host-k9x3f0uh.js.map → acp-host-BM50_UMI.js.map} +1 -1
- package/dist/{agent-list-DQb6yUQe.js → agent-list-D_7CCJP8.js} +2 -2
- package/dist/{agent-list-DQb6yUQe.js.map → agent-list-D_7CCJP8.js.map} +1 -1
- package/dist/{chat-CeoM50Ts.js → chat-D3rmw8W3.js} +3 -3
- package/dist/{chat-CeoM50Ts.js.map → chat-D3rmw8W3.js.map} +1 -1
- package/dist/{dist-DRlD8iZV.js → dist-ZGX_lEDj.js} +29 -8
- package/dist/{dist-DRlD8iZV.js.map → dist-ZGX_lEDj.js.map} +1 -1
- package/dist/{gh-token-RgoKBgbY.js → gh-token-WRFtgeF7.js} +2 -2
- package/dist/{gh-token-RgoKBgbY.js.map → gh-token-WRFtgeF7.js.map} +1 -1
- package/dist/index.js +5 -5
- package/dist/{load-agents-DFre9vFL.js → load-agents-BxkEakP-.js} +2 -2
- package/dist/{load-agents-DFre9vFL.js.map → load-agents-BxkEakP-.js.map} +1 -1
- package/dist/{login-DWX7D2ky.js → login-Dlk7zzVB.js} +4 -4
- package/dist/{login-DWX7D2ky.js.map → login-Dlk7zzVB.js.map} +1 -1
- package/dist/{run-foreground-BMgc_sXa.js → run-foreground-C23EqZ5C.js} +37 -62
- package/dist/{run-foreground-BMgc_sXa.js.map → run-foreground-C23EqZ5C.js.map} +1 -1
- package/dist/run-foreground-pcC5AvZZ.js +2 -0
- package/package.json +1 -1
- package/dist/run-foreground-DhQCkpTo.js +0 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { o as loadConfig, t as discoverAgents } from "./load-agents-
|
|
1
|
+
import { o as loadConfig, t as discoverAgents } from "./load-agents-BxkEakP-.js";
|
|
2
2
|
//#region src/cli/agent-list.ts
|
|
3
3
|
async function runAgentList(opts) {
|
|
4
4
|
const out = opts.out ?? process.stdout;
|
|
@@ -18,4 +18,4 @@ async function runAgentList(opts) {
|
|
|
18
18
|
//#endregion
|
|
19
19
|
export { runAgentList };
|
|
20
20
|
|
|
21
|
-
//# sourceMappingURL=agent-list-
|
|
21
|
+
//# sourceMappingURL=agent-list-D_7CCJP8.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-list-
|
|
1
|
+
{"version":3,"file":"agent-list-D_7CCJP8.js","names":[],"sources":["../src/cli/agent-list.ts"],"sourcesContent":["import { loadConfig } from '../config/load-config.js'\nimport { discoverAgents } from '../agents/load-agents.js'\n\nexport interface RunAgentListOpts {\n agentsDir?: string\n configPath?: string\n root?: string\n out?: NodeJS.WritableStream\n}\n\n// Read-only view of the local agent directory. Mutating agents (add/remove/\n// enable/disable) is intentionally not a CLI command — agent business config is\n// owned by the Control Plane (agent/upsert + register/ok roster, see\n// cp/cp-agent-registry.ts) or by hand-editing agent.json; the daemon only\n// reconciles what it finds on disk. This lists what that discovery sees.\nexport async function runAgentList(opts: RunAgentListOpts): Promise<void> {\n const out = opts.out ?? process.stdout\n const cfg = loadConfig({\n root: opts.root,\n configPath: opts.configPath,\n optional: true,\n overrides: { agentsDir: opts.agentsDir }\n })\n const agentsDir = cfg.agentsDir!\n const discovered = discoverAgents(agentsDir)\n if (discovered.length === 0) {\n out.write(`no agents found under ${agentsDir}\\n`)\n return\n }\n for (const { agent, dir } of discovered) {\n out.write(`${agent.id}\\t${agent.status}\\t${agent.runtime}\\t${agent.name}\\t${dir}\\n`)\n }\n}\n"],"mappings":";;AAeA,eAAsB,aAAa,MAAuC;CACxE,MAAM,MAAM,KAAK,OAAO,QAAQ;CAOhC,MAAM,YANM,WAAW;EACrB,MAAM,KAAK;EACX,YAAY,KAAK;EACjB,UAAU;EACV,WAAW,EAAE,WAAW,KAAK,UAAU;CACzC,CACoB,CAAC,CAAC;CACtB,MAAM,aAAa,eAAe,SAAS;CAC3C,IAAI,WAAW,WAAW,GAAG;EAC3B,IAAI,MAAM,yBAAyB,UAAU,GAAG;EAChD;CACF;CACA,KAAK,MAAM,EAAE,OAAO,SAAS,YAC3B,IAAI,MAAM,GAAG,MAAM,GAAG,IAAI,MAAM,OAAO,IAAI,MAAM,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,GAAG;AAEvF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { a as agentChildEnv, i as selectAgent, o as loadConfig } from "./load-agents-
|
|
1
|
+
import { a as agentChildEnv, i as selectAgent, o as loadConfig } from "./load-agents-BxkEakP-.js";
|
|
2
2
|
import { l as resolveRoot } from "./paths-DEcUO8lC.js";
|
|
3
|
-
import { E as resolveRuntimes, o as prepareWorkspace, p as memoryProviderFor, t as AcpHost } from "./acp-host-
|
|
3
|
+
import { E as resolveRuntimes, o as prepareWorkspace, p as memoryProviderFor, t as AcpHost } from "./acp-host-BM50_UMI.js";
|
|
4
4
|
import { createInterface } from "node:readline";
|
|
5
5
|
//#region src/cli/chat.ts
|
|
6
6
|
function renderUpdate(out) {
|
|
@@ -84,4 +84,4 @@ async function runChat(opts) {
|
|
|
84
84
|
//#endregion
|
|
85
85
|
export { renderUpdate, runChat };
|
|
86
86
|
|
|
87
|
-
//# sourceMappingURL=chat-
|
|
87
|
+
//# sourceMappingURL=chat-D3rmw8W3.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-
|
|
1
|
+
{"version":3,"file":"chat-D3rmw8W3.js","names":[],"sources":["../src/cli/chat.ts"],"sourcesContent":["import { createInterface } from 'node:readline'\nimport type { ContentBlock, SessionUpdate } from '@agentclientprotocol/sdk'\nimport { loadConfig } from '../config/load-config.js'\nimport { resolveRuntimes } from '../runtimes/registry.js'\nimport { selectAgent } from '../agents/load-agents.js'\nimport { agentChildEnv } from '../agents/agent-env.js'\nimport { memoryProviderFor } from '../agents/memory-provider.js'\nimport { prepareWorkspace } from '../workspace/workspace-manager.js'\nimport { AcpHost } from '../acp/acp-host.js'\nimport { resolveRoot } from '../paths.js'\n\nexport function renderUpdate(out: NodeJS.WritableStream) {\n return (_sessionId: string, update: SessionUpdate): void => {\n if (update.sessionUpdate === 'agent_message_chunk' && update.content.type === 'text') {\n out.write(update.content.text)\n } else if (update.sessionUpdate === 'tool_call') {\n const title = ('title' in update && update.title) || update.toolCallId || 'tool'\n out.write(`\\n[tool] ${title}\\n`)\n }\n }\n}\n\nexport interface RunChatOpts {\n agentsDir?: string\n agentName?: string\n message?: string\n configPath?: string\n root?: string\n out?: NodeJS.WritableStream\n input?: NodeJS.ReadableStream\n}\n\nexport async function runChat(opts: RunChatOpts): Promise<void> {\n const out = opts.out ?? process.stdout\n const root = resolveRoot(opts.root)\n const cfg = loadConfig({\n root: opts.root,\n configPath: opts.configPath,\n optional: true,\n overrides: { agentsDir: opts.agentsDir }\n })\n const agent = selectAgent(cfg.agentsDir!, opts.agentName)\n\n const runtimes = await resolveRuntimes(cfg, root, { neededRuntimes: [agent.runtime], mode: 'cache-first' })\n const runtime = runtimes[agent.runtime]\n if (!runtime) {\n const available = Object.keys(runtimes).sort().join(', ') || '(none)'\n throw new Error(`runtime \"${agent.runtime}\" not found. Available: ${available}`)\n }\n\n const host = new AcpHost(runtime, {\n onUpdate: renderUpdate(out),\n // Memory-backend env for parity with the daemon (managed disables the runtime's\n // own memory; native redirects it under the agent root).\n env: { ...agentChildEnv(agent), ...memoryProviderFor(agent, runtime).runtimeEnv() },\n configPrefs: {\n model: agent.runtimeOverrides?.model,\n permissionMode: agent.permissionMode,\n reasoningEffort: agent.reasoningEffort,\n fastMode: agent.fastMode\n }\n })\n // The adapter child runs in its own process group (see AcpHost.start), so a\n // terminal Ctrl-C no longer kills it as a side effect — Node's default SIGINT\n // exit would skip the finally below and leak it. Stop the host, then re-exit.\n // Registered BEFORE start(): a first-run `npx -y` runtime download takes long\n // enough that Ctrl-C mid-start is common, and the spawn happens early in start().\n const onSigint = () => {\n void host.stop().finally(() => process.exit(130))\n }\n process.once('SIGINT', onSigint)\n try {\n await host.start()\n const cwd = await prepareWorkspace(agent)\n const sessionId = await host.newSession(cwd)\n\n const send = async (text: string) => {\n const blocks: ContentBlock[] = [{ type: 'text', text }]\n await host.prompt(sessionId, blocks)\n out.write('\\n')\n }\n\n if (typeof opts.message === 'string' && opts.message.length > 0) {\n await send(opts.message)\n return\n }\n\n const rl = createInterface({ input: opts.input ?? process.stdin })\n out.write(`Chatting with ${agent.name} (${agent.id}). Type .exit to quit.\\n> `)\n try {\n for await (const line of rl) {\n const text = line.trim()\n if (text === '.exit' || text === '.quit') break\n if (text.length > 0) await send(text)\n out.write('> ')\n }\n } finally {\n rl.close()\n }\n } finally {\n process.removeListener('SIGINT', onSigint)\n await host.stop()\n }\n}\n"],"mappings":";;;;;AAWA,SAAgB,aAAa,KAA4B;CACvD,QAAQ,YAAoB,WAAgC;EAC1D,IAAI,OAAO,kBAAkB,yBAAyB,OAAO,QAAQ,SAAS,QAC5E,IAAI,MAAM,OAAO,QAAQ,IAAI;OACxB,IAAI,OAAO,kBAAkB,aAAa;GAC/C,MAAM,QAAS,WAAW,UAAU,OAAO,SAAU,OAAO,cAAc;GAC1E,IAAI,MAAM,YAAY,MAAM,GAAG;EACjC;CACF;AACF;AAYA,eAAsB,QAAQ,MAAkC;CAC9D,MAAM,MAAM,KAAK,OAAO,QAAQ;CAChC,MAAM,OAAO,YAAY,KAAK,IAAI;CAClC,MAAM,MAAM,WAAW;EACrB,MAAM,KAAK;EACX,YAAY,KAAK;EACjB,UAAU;EACV,WAAW,EAAE,WAAW,KAAK,UAAU;CACzC,CAAC;CACD,MAAM,QAAQ,YAAY,IAAI,WAAY,KAAK,SAAS;CAExD,MAAM,WAAW,MAAM,gBAAgB,KAAK,MAAM;EAAE,gBAAgB,CAAC,MAAM,OAAO;EAAG,MAAM;CAAc,CAAC;CAC1G,MAAM,UAAU,SAAS,MAAM;CAC/B,IAAI,CAAC,SAAS;EACZ,MAAM,YAAY,OAAO,KAAK,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,KAAK;EAC7D,MAAM,IAAI,MAAM,YAAY,MAAM,QAAQ,0BAA0B,WAAW;CACjF;CAEA,MAAM,OAAO,IAAI,QAAQ,SAAS;EAChC,UAAU,aAAa,GAAG;EAG1B,KAAK;GAAE,GAAG,cAAc,KAAK;GAAG,GAAG,kBAAkB,OAAO,OAAO,CAAC,CAAC,WAAW;EAAE;EAClF,aAAa;GACX,OAAO,MAAM,kBAAkB;GAC/B,gBAAgB,MAAM;GACtB,iBAAiB,MAAM;GACvB,UAAU,MAAM;EAClB;CACF,CAAC;CAMD,MAAM,iBAAiB;EACrB,KAAU,KAAK,CAAC,CAAC,cAAc,QAAQ,KAAK,GAAG,CAAC;CAClD;CACA,QAAQ,KAAK,UAAU,QAAQ;CAC/B,IAAI;EACF,MAAM,KAAK,MAAM;EACjB,MAAM,MAAM,MAAM,iBAAiB,KAAK;EACxC,MAAM,YAAY,MAAM,KAAK,WAAW,GAAG;EAE3C,MAAM,OAAO,OAAO,SAAiB;GACnC,MAAM,SAAyB,CAAC;IAAE,MAAM;IAAQ;GAAK,CAAC;GACtD,MAAM,KAAK,OAAO,WAAW,MAAM;GACnC,IAAI,MAAM,IAAI;EAChB;EAEA,IAAI,OAAO,KAAK,YAAY,YAAY,KAAK,QAAQ,SAAS,GAAG;GAC/D,MAAM,KAAK,KAAK,OAAO;GACvB;EACF;EAEA,MAAM,KAAK,gBAAgB,EAAE,OAAO,KAAK,SAAS,QAAQ,MAAM,CAAC;EACjE,IAAI,MAAM,iBAAiB,MAAM,KAAK,IAAI,MAAM,GAAG,2BAA2B;EAC9E,IAAI;GACF,WAAW,MAAM,QAAQ,IAAI;IAC3B,MAAM,OAAO,KAAK,KAAK;IACvB,IAAI,SAAS,WAAW,SAAS,SAAS;IAC1C,IAAI,KAAK,SAAS,GAAG,MAAM,KAAK,IAAI;IACpC,IAAI,MAAM,IAAI;GAChB;EACF,UAAU;GACR,GAAG,MAAM;EACX;CACF,UAAU;EACR,QAAQ,eAAe,UAAU,QAAQ;EACzC,MAAM,KAAK,KAAK;CAClB;AACF"}
|
|
@@ -1954,16 +1954,11 @@ const RcGithubInstallation = object({
|
|
|
1954
1954
|
action: string().min(1)
|
|
1955
1955
|
});
|
|
1956
1956
|
const RcDaemonRevoke = object({ daemonId: string().uuid() });
|
|
1957
|
-
/** The Block Kit `action_id` on a shared status bar's inline agent selector.
|
|
1958
|
-
* The relay owns the shared app's Socket Mode connection and answers both the
|
|
1959
|
-
* external-select suggestions and the resulting channel-default selection. Keep
|
|
1960
|
-
* this separate from {@link SHARED_CONFIG_ACTION_ID}: older posted messages still
|
|
1961
|
-
* use that id for the legacy 👤 button + modal flow. */
|
|
1962
|
-
const SHARED_AGENT_SELECT_ACTION_ID = "ac_shared_agent_select";
|
|
1963
1957
|
/** Slack action ids shared by the daemon-owned status modal and the relay-owned
|
|
1964
1958
|
* Socket Mode edge. Dedicated bots handle them in the daemon directly; shared bots
|
|
1965
1959
|
* forward them from the relay to the target daemon. */
|
|
1966
1960
|
const SLACK_STATUS_ACTION = {
|
|
1961
|
+
more: "ac_more",
|
|
1967
1962
|
manage: "ac_manage",
|
|
1968
1963
|
setModel: "ac_set_model",
|
|
1969
1964
|
setEffort: "ac_set_effort",
|
|
@@ -1973,6 +1968,32 @@ const SLACK_STATUS_ACTION = {
|
|
|
1973
1968
|
cancel: "ac_cancel",
|
|
1974
1969
|
view: "ac_view"
|
|
1975
1970
|
};
|
|
1971
|
+
/** One choice from the compact Slack status overflow. `target` is either a
|
|
1972
|
+
* daemon-local session key or the opaque shared-bot status target below. */
|
|
1973
|
+
const SlackStatusOverflowValue = object({
|
|
1974
|
+
v: literal(1),
|
|
1975
|
+
action: _enum([
|
|
1976
|
+
"switch-agent",
|
|
1977
|
+
"manage",
|
|
1978
|
+
"cancel"
|
|
1979
|
+
]),
|
|
1980
|
+
target: string().min(1)
|
|
1981
|
+
}).strict();
|
|
1982
|
+
function encodeSlackStatusOverflowValue(action, target) {
|
|
1983
|
+
return JSON.stringify({
|
|
1984
|
+
v: 1,
|
|
1985
|
+
action,
|
|
1986
|
+
target
|
|
1987
|
+
});
|
|
1988
|
+
}
|
|
1989
|
+
function decodeSlackStatusOverflowValue(value) {
|
|
1990
|
+
try {
|
|
1991
|
+
const parsed = SlackStatusOverflowValue.safeParse(JSON.parse(value));
|
|
1992
|
+
return parsed.success ? parsed.data : null;
|
|
1993
|
+
} catch {
|
|
1994
|
+
return null;
|
|
1995
|
+
}
|
|
1996
|
+
}
|
|
1976
1997
|
object({
|
|
1977
1998
|
v: literal(1),
|
|
1978
1999
|
agentId: string().min(1),
|
|
@@ -2450,6 +2471,6 @@ function isFrame(type) {
|
|
|
2450
2471
|
return (frame) => frame.type === type;
|
|
2451
2472
|
}
|
|
2452
2473
|
//#endregion
|
|
2453
|
-
export {
|
|
2474
|
+
export { HOOK_REPORT_REASON_PROVIDER_QUOTA_EXHAUSTED as _, RELAY_DAEMON_WS_PATH as a, RESERVED_MCP_SERVER_NAME as b, SLACK_STATUS_ACTION as c, encodeSlackStatusOverflowValue as d, buildEnvelope as f, MEMORY_INDEX as g, MAX_FRAME_BYTES as h, RELAY_DAEMON_SUBPROTOCOL as i, decodeSlackStatusOverflowValue as l, encode as m, gitRepoLabel as n, buildRelayDaemonFrame as o, decodeEnvelope as p, normalizeGitUrl as r, decodeRelayDaemonFrame as s, isFrame as t, encodeSharedSlackStatusTarget as u, HookReport as v, ZodIssueCode as x, RelayRosterEntry as y };
|
|
2454
2475
|
|
|
2455
|
-
//# sourceMappingURL=dist-
|
|
2476
|
+
//# sourceMappingURL=dist-ZGX_lEDj.js.map
|