electric-ax 0.2.20 → 0.2.22
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/completions.d.cts +1 -1
- package/dist/completions.d.ts +1 -1
- package/dist/{entity-stream-db-uLb8jOQA.cjs → entity-stream-db-DJU-Famv.cjs} +4 -10
- package/dist/{entity-stream-db-BROzlu7p.d.ts → entity-stream-db-DRQk9DHe.d.ts} +2 -2
- package/dist/{entity-stream-db-UBN2gowE.js → entity-stream-db-thqr5ONI.js} +7 -13
- package/dist/entity-stream-db.cjs +1 -1
- package/dist/entity-stream-db.d.ts +1 -1
- package/dist/entity-stream-db.js +1 -1
- package/dist/{index-_AHIJdEA.d.cts → index-BGw1zeGA.d.cts} +2 -1
- package/dist/{index-CQN8S3b9.d.ts → index-gzb1Ju8x.d.ts} +2 -1
- package/dist/index.cjs +11 -9
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +11 -9
- package/dist/observe-ui.cjs +234 -45
- package/dist/observe-ui.d.cts +27 -2
- package/dist/observe-ui.d.ts +28 -3
- package/dist/observe-ui.js +230 -47
- package/dist/start.cjs +24 -5
- package/dist/start.d.cts +2 -2
- package/dist/start.d.ts +2 -2
- package/dist/start.js +24 -6
- package/dist/{version-BjbjHZcV.js → version-C-TucL6f.js} +5 -3
- package/dist/{version-D_q28rY9.cjs → version-DZNShANn.cjs} +5 -3
- package/package.json +5 -5
package/dist/completions.d.cts
CHANGED
package/dist/completions.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
const require_chunk = require('./chunk-BCwAaXi7.cjs');
|
|
3
3
|
const __electric_ax_agents_runtime = require_chunk.__toESM(require("@electric-ax/agents-runtime"));
|
|
4
|
-
const __durable_streams_state_db = require_chunk.__toESM(require("@durable-streams/state/db"));
|
|
5
4
|
|
|
6
5
|
//#region src/entity-api.ts
|
|
7
6
|
function withLeadingSlash(path) {
|
|
@@ -35,15 +34,10 @@ async function createEntityStreamDB(opts) {
|
|
|
35
34
|
const entity = await res.json();
|
|
36
35
|
const streamPath = getMainStreamPath(entityUrl, entity);
|
|
37
36
|
const streamUrl = (0, __electric_ax_agents_runtime.appendPathToUrl)(baseUrl, streamPath);
|
|
38
|
-
const db = (0,
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
contentType: `application/json`,
|
|
43
|
-
...initialOffset ? { offset: initialOffset } : {}
|
|
44
|
-
},
|
|
45
|
-
state: __electric_ax_agents_runtime.entityStateSchema
|
|
46
|
-
});
|
|
37
|
+
const db = (0, __electric_ax_agents_runtime.createEntityStreamDB)(streamUrl, void 0, void 0, { streamOptions: {
|
|
38
|
+
headers: requestHeaders,
|
|
39
|
+
...initialOffset ? { offset: initialOffset } : {}
|
|
40
|
+
} });
|
|
47
41
|
await db.preload();
|
|
48
42
|
return {
|
|
49
43
|
db,
|
|
@@ -2,7 +2,7 @@ import { EntityStreamDB, EntityStreamDB as EntityStreamDB$1 } from "@electric-ax
|
|
|
2
2
|
|
|
3
3
|
//#region src/entity-stream-db.d.ts
|
|
4
4
|
|
|
5
|
-
declare function createEntityStreamDB(opts: {
|
|
5
|
+
declare function createEntityStreamDB$1(opts: {
|
|
6
6
|
baseUrl: string;
|
|
7
7
|
entityUrl: string;
|
|
8
8
|
initialOffset?: string;
|
|
@@ -11,4 +11,4 @@ declare function createEntityStreamDB(opts: {
|
|
|
11
11
|
db: EntityStreamDB;
|
|
12
12
|
close: () => void;
|
|
13
13
|
}>; //#endregion
|
|
14
|
-
export { EntityStreamDB$1 as EntityStreamDB, createEntityStreamDB
|
|
14
|
+
export { EntityStreamDB$1 as EntityStreamDB, createEntityStreamDB$1 };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { appendPathToUrl,
|
|
2
|
-
import { createStreamDB } from "@durable-streams/state/db";
|
|
1
|
+
import { appendPathToUrl, createEntityStreamDB } from "@electric-ax/agents-runtime";
|
|
3
2
|
|
|
4
3
|
//#region src/entity-api.ts
|
|
5
4
|
function withLeadingSlash(path) {
|
|
@@ -17,7 +16,7 @@ function entityApiUrl(baseUrl, entityUrl, suffix = ``) {
|
|
|
17
16
|
function getMainStreamPath(entityUrl, entity) {
|
|
18
17
|
return entity.streams?.main ?? `${entityUrl}/main`;
|
|
19
18
|
}
|
|
20
|
-
async function createEntityStreamDB(opts) {
|
|
19
|
+
async function createEntityStreamDB$1(opts) {
|
|
21
20
|
const { baseUrl, entityUrl, initialOffset, headers: serverHeaders } = opts;
|
|
22
21
|
const requestHeaders = {
|
|
23
22
|
"content-type": `application/json`,
|
|
@@ -33,15 +32,10 @@ async function createEntityStreamDB(opts) {
|
|
|
33
32
|
const entity = await res.json();
|
|
34
33
|
const streamPath = getMainStreamPath(entityUrl, entity);
|
|
35
34
|
const streamUrl = appendPathToUrl(baseUrl, streamPath);
|
|
36
|
-
const db =
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
contentType: `application/json`,
|
|
41
|
-
...initialOffset ? { offset: initialOffset } : {}
|
|
42
|
-
},
|
|
43
|
-
state: entityStateSchema
|
|
44
|
-
});
|
|
35
|
+
const db = createEntityStreamDB(streamUrl, void 0, void 0, { streamOptions: {
|
|
36
|
+
headers: requestHeaders,
|
|
37
|
+
...initialOffset ? { offset: initialOffset } : {}
|
|
38
|
+
} });
|
|
45
39
|
await db.preload();
|
|
46
40
|
return {
|
|
47
41
|
db,
|
|
@@ -50,4 +44,4 @@ async function createEntityStreamDB(opts) {
|
|
|
50
44
|
}
|
|
51
45
|
|
|
52
46
|
//#endregion
|
|
53
|
-
export { createEntityStreamDB, entityApiPath, entityApiUrl };
|
|
47
|
+
export { createEntityStreamDB$1 as createEntityStreamDB, entityApiPath, entityApiUrl };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { EntityStreamDB, createEntityStreamDB$1 as createEntityStreamDB } from "./entity-stream-db-
|
|
1
|
+
import { EntityStreamDB, createEntityStreamDB$1 as createEntityStreamDB } from "./entity-stream-db-DRQk9DHe.js";
|
|
2
2
|
export { EntityStreamDB, createEntityStreamDB };
|
package/dist/entity-stream-db.js
CHANGED
|
@@ -35,6 +35,7 @@ declare function getStoppedEnvironmentMessage(stopped: StoppedDevEnvironment): s
|
|
|
35
35
|
declare function getStartedBuiltinAgentsMessage(started: StartedBuiltinAgentsEnvironment): string;
|
|
36
36
|
declare function resolvePullWakeRunnerId(env?: NodeJS.ProcessEnv, fileEnv?: Record<string, string>): string;
|
|
37
37
|
declare function resolvePullWakeOwnerPrincipal(env?: NodeJS.ProcessEnv, fileEnv?: Record<string, string>): string;
|
|
38
|
+
declare function resolveBuiltinServerHeaders(env: NodeJS.ProcessEnv, fileEnv: Record<string, string>, ownerPrincipal: string): Record<string, string> | undefined;
|
|
38
39
|
declare function resolveComposeProjectName(_cwd?: string, env?: NodeJS.ProcessEnv): string;
|
|
39
40
|
declare function waitForElectricAgentsServer(baseUrl: string, options?: WaitForServerOptions): Promise<void>;
|
|
40
41
|
declare function startElectricAgentsDevEnvironment(_options?: StartCommandOptions, env?: NodeJS.ProcessEnv, cwd?: string): Promise<StartedDevEnvironment>;
|
|
@@ -132,4 +133,4 @@ declare function createElectricProgram({
|
|
|
132
133
|
declare function run(argv?: Array<string>): Promise<void>;
|
|
133
134
|
|
|
134
135
|
//#endregion
|
|
135
|
-
export { DEFAULT_ELECTRIC_AGENTS_URL, ElectricCliEnv, ElectricCliHandlers, EntitySignal, ObserveCommandOptions, PsCommandOptions, SendCommandOptions, SignalCommandOptions, SpawnCommandOptions, StartBuiltinCommandOptions, StartCommandOptions, StartedBuiltinAgentsEnvironment, StartedDevEnvironment, StopCommandOptions, StoppedDevEnvironment, createElectricCliHandlers, createElectricProgram, formatQuickstartBackendStartedMessage, getElectricCliEnv, getStartedBuiltinAgentsMessage, getStartedEnvironmentMessage, getStoppedEnvironmentMessage, readDotEnvFile, resolveAnthropicApiKey, resolveCommandPrefix, resolveComposeProjectName, resolveElectricAgentsPort, resolvePullWakeOwnerPrincipal, resolvePullWakeRunnerId, run, startBuiltinAgentsServer, startElectricAgentsDevEnvironment, stopElectricAgentsDevEnvironment, waitForElectricAgentsServer };
|
|
136
|
+
export { DEFAULT_ELECTRIC_AGENTS_URL, ElectricCliEnv, ElectricCliHandlers, EntitySignal, ObserveCommandOptions, PsCommandOptions, SendCommandOptions, SignalCommandOptions, SpawnCommandOptions, StartBuiltinCommandOptions, StartCommandOptions, StartedBuiltinAgentsEnvironment, StartedDevEnvironment, StopCommandOptions, StoppedDevEnvironment, createElectricCliHandlers, createElectricProgram, formatQuickstartBackendStartedMessage, getElectricCliEnv, getStartedBuiltinAgentsMessage, getStartedEnvironmentMessage, getStoppedEnvironmentMessage, readDotEnvFile, resolveAnthropicApiKey, resolveBuiltinServerHeaders, resolveCommandPrefix, resolveComposeProjectName, resolveElectricAgentsPort, resolvePullWakeOwnerPrincipal, resolvePullWakeRunnerId, run, startBuiltinAgentsServer, startElectricAgentsDevEnvironment, stopElectricAgentsDevEnvironment, waitForElectricAgentsServer };
|
|
@@ -35,6 +35,7 @@ declare function getStoppedEnvironmentMessage(stopped: StoppedDevEnvironment): s
|
|
|
35
35
|
declare function getStartedBuiltinAgentsMessage(started: StartedBuiltinAgentsEnvironment): string;
|
|
36
36
|
declare function resolvePullWakeRunnerId(env?: NodeJS.ProcessEnv, fileEnv?: Record<string, string>): string;
|
|
37
37
|
declare function resolvePullWakeOwnerPrincipal(env?: NodeJS.ProcessEnv, fileEnv?: Record<string, string>): string;
|
|
38
|
+
declare function resolveBuiltinServerHeaders(env: NodeJS.ProcessEnv, fileEnv: Record<string, string>, ownerPrincipal: string): Record<string, string> | undefined;
|
|
38
39
|
declare function resolveComposeProjectName(_cwd?: string, env?: NodeJS.ProcessEnv): string;
|
|
39
40
|
declare function waitForElectricAgentsServer(baseUrl: string, options?: WaitForServerOptions): Promise<void>;
|
|
40
41
|
declare function startElectricAgentsDevEnvironment(_options?: StartCommandOptions, env?: NodeJS.ProcessEnv, cwd?: string): Promise<StartedDevEnvironment>;
|
|
@@ -132,4 +133,4 @@ declare function createElectricProgram({
|
|
|
132
133
|
declare function run(argv?: Array<string>): Promise<void>;
|
|
133
134
|
|
|
134
135
|
//#endregion
|
|
135
|
-
export { DEFAULT_ELECTRIC_AGENTS_URL, ElectricCliEnv, ElectricCliHandlers, EntitySignal, ObserveCommandOptions, PsCommandOptions, SendCommandOptions, SignalCommandOptions, SpawnCommandOptions, StartBuiltinCommandOptions, StartCommandOptions, StartedBuiltinAgentsEnvironment, StartedDevEnvironment, StopCommandOptions, StoppedDevEnvironment, createElectricCliHandlers, createElectricProgram, formatQuickstartBackendStartedMessage, getElectricCliEnv, getStartedBuiltinAgentsMessage, getStartedEnvironmentMessage, getStoppedEnvironmentMessage, readDotEnvFile, resolveAnthropicApiKey, resolveCommandPrefix, resolveComposeProjectName, resolveElectricAgentsPort, resolvePullWakeOwnerPrincipal, resolvePullWakeRunnerId, run, startBuiltinAgentsServer, startElectricAgentsDevEnvironment, stopElectricAgentsDevEnvironment, waitForElectricAgentsServer };
|
|
136
|
+
export { DEFAULT_ELECTRIC_AGENTS_URL, ElectricCliEnv, ElectricCliHandlers, EntitySignal, ObserveCommandOptions, PsCommandOptions, SendCommandOptions, SignalCommandOptions, SpawnCommandOptions, StartBuiltinCommandOptions, StartCommandOptions, StartedBuiltinAgentsEnvironment, StartedDevEnvironment, StopCommandOptions, StoppedDevEnvironment, createElectricCliHandlers, createElectricProgram, formatQuickstartBackendStartedMessage, getElectricCliEnv, getStartedBuiltinAgentsMessage, getStartedEnvironmentMessage, getStoppedEnvironmentMessage, readDotEnvFile, resolveAnthropicApiKey, resolveBuiltinServerHeaders, resolveCommandPrefix, resolveComposeProjectName, resolveElectricAgentsPort, resolvePullWakeOwnerPrincipal, resolvePullWakeRunnerId, run, startBuiltinAgentsServer, startElectricAgentsDevEnvironment, stopElectricAgentsDevEnvironment, waitForElectricAgentsServer };
|
package/dist/index.cjs
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
const require_chunk = require('./chunk-BCwAaXi7.cjs');
|
|
4
4
|
const require_completions = require('./completions-BJ1fys8I.cjs');
|
|
5
|
-
const require_entity_stream_db = require('./entity-stream-db-
|
|
6
|
-
const require_version = require('./version-
|
|
5
|
+
const require_entity_stream_db = require('./entity-stream-db-DJU-Famv.cjs');
|
|
6
|
+
const require_version = require('./version-DZNShANn.cjs');
|
|
7
7
|
const __electric_ax_agents_runtime = require_chunk.__toESM(require("@electric-ax/agents-runtime"));
|
|
8
8
|
const node_fs = require_chunk.__toESM(require("node:fs"));
|
|
9
9
|
const node_os = require_chunk.__toESM(require("node:os"));
|
|
@@ -219,6 +219,9 @@ var CliError = class extends Error {};
|
|
|
219
219
|
function getDefaultElectricAgentsIdentity() {
|
|
220
220
|
return `${(0, node_os.userInfo)().username}@${(0, node_os.hostname)()}`;
|
|
221
221
|
}
|
|
222
|
+
function defaultElectricAgentsPrincipalForIdentity(identity) {
|
|
223
|
+
return `user:${identity}`;
|
|
224
|
+
}
|
|
222
225
|
function parseElectricAgentsHeaders(raw) {
|
|
223
226
|
const trimmed = raw?.trim();
|
|
224
227
|
if (!trimmed) return void 0;
|
|
@@ -239,11 +242,13 @@ function parseElectricAgentsHeaders(raw) {
|
|
|
239
242
|
}
|
|
240
243
|
function getElectricCliEnv(env = process.env) {
|
|
241
244
|
const explicitIdentity = env.ELECTRIC_AGENTS_IDENTITY?.trim();
|
|
245
|
+
const explicitPrincipal = env.ELECTRIC_AGENTS_PRINCIPAL?.trim();
|
|
242
246
|
const headers = parseElectricAgentsHeaders(env.ELECTRIC_AGENTS_SERVER_HEADERS);
|
|
247
|
+
const electricAgentsIdentity = explicitIdentity || getDefaultElectricAgentsIdentity();
|
|
243
248
|
return {
|
|
244
249
|
electricAgentsUrl: env.ELECTRIC_AGENTS_URL || DEFAULT_ELECTRIC_AGENTS_URL,
|
|
245
|
-
electricAgentsIdentity
|
|
246
|
-
electricAgentsHeaders: (0, __electric_ax_agents_server_headers.mergeElectricPrincipalHeader)(headers,
|
|
250
|
+
electricAgentsIdentity,
|
|
251
|
+
electricAgentsHeaders: (0, __electric_ax_agents_server_headers.mergeElectricPrincipalHeader)(headers, explicitPrincipal || defaultElectricAgentsPrincipalForIdentity(electricAgentsIdentity))
|
|
247
252
|
};
|
|
248
253
|
}
|
|
249
254
|
function getErrorMessage(error) {
|
|
@@ -493,10 +498,7 @@ async function spawnEntity(env, urlPath, options) {
|
|
|
493
498
|
}
|
|
494
499
|
async function sendMessage(env, url, message, options) {
|
|
495
500
|
const payload = parsePayload(message, options.json ?? false);
|
|
496
|
-
const body = {
|
|
497
|
-
from: env.electricAgentsIdentity,
|
|
498
|
-
payload
|
|
499
|
-
};
|
|
501
|
+
const body = { payload };
|
|
500
502
|
if (options.type) body.type = options.type;
|
|
501
503
|
const res = await electricAgentsFetch(env, require_entity_stream_db.entityApiPath(url, `/send`), {
|
|
502
504
|
method: `POST`,
|
|
@@ -671,7 +673,7 @@ function getHelpText(commandName) {
|
|
|
671
673
|
Environment:
|
|
672
674
|
ELECTRIC_AGENTS_URL Base URL of the server (default: ${DEFAULT_ELECTRIC_AGENTS_URL})
|
|
673
675
|
ELECTRIC_AGENTS_IDENTITY Sender identity for messages (default: ${getDefaultElectricAgentsIdentity()})
|
|
674
|
-
ELECTRIC_AGENTS_PRINCIPAL
|
|
676
|
+
ELECTRIC_AGENTS_PRINCIPAL Principal key sent as the Electric-Principal header (default: user:<ELECTRIC_AGENTS_IDENTITY>)
|
|
675
677
|
ELECTRIC_AGENTS_SERVER_HEADERS Optional JSON object of additional server headers
|
|
676
678
|
ANTHROPIC_API_KEY Required for '${agentsCommand} start-builtin' and '${agentsCommand} quickstart'
|
|
677
679
|
|
package/dist/index.d.cts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { DEFAULT_ELECTRIC_AGENTS_URL, ElectricCliEnv, ElectricCliHandlers, EntitySignal, ObserveCommandOptions, PsCommandOptions, SendCommandOptions, SignalCommandOptions, SpawnCommandOptions, StartBuiltinCommandOptions, StartCommandOptions, StartedBuiltinAgentsEnvironment, StartedDevEnvironment, StopCommandOptions, StoppedDevEnvironment, createElectricCliHandlers, createElectricProgram, formatQuickstartBackendStartedMessage, getElectricCliEnv, resolveCommandPrefix, run } from "./index-
|
|
2
|
+
import { DEFAULT_ELECTRIC_AGENTS_URL, ElectricCliEnv, ElectricCliHandlers, EntitySignal, ObserveCommandOptions, PsCommandOptions, SendCommandOptions, SignalCommandOptions, SpawnCommandOptions, StartBuiltinCommandOptions, StartCommandOptions, StartedBuiltinAgentsEnvironment, StartedDevEnvironment, StopCommandOptions, StoppedDevEnvironment, createElectricCliHandlers, createElectricProgram, formatQuickstartBackendStartedMessage, getElectricCliEnv, resolveCommandPrefix, run } from "./index-BGw1zeGA.cjs";
|
|
3
3
|
export { DEFAULT_ELECTRIC_AGENTS_URL, ElectricCliEnv, ElectricCliHandlers, EntitySignal, ObserveCommandOptions, PsCommandOptions, SendCommandOptions, SignalCommandOptions, SpawnCommandOptions, StartBuiltinCommandOptions, StartCommandOptions, StartedBuiltinAgentsEnvironment, StartedDevEnvironment, StopCommandOptions, StoppedDevEnvironment, createElectricCliHandlers, createElectricProgram, formatQuickstartBackendStartedMessage, getElectricCliEnv, resolveCommandPrefix, run };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { DEFAULT_ELECTRIC_AGENTS_URL, ElectricCliEnv, ElectricCliHandlers, EntitySignal, ObserveCommandOptions, PsCommandOptions, SendCommandOptions, SignalCommandOptions, SpawnCommandOptions, StartBuiltinCommandOptions, StartCommandOptions, StartedBuiltinAgentsEnvironment, StartedDevEnvironment, StopCommandOptions, StoppedDevEnvironment, createElectricCliHandlers, createElectricProgram, formatQuickstartBackendStartedMessage, getElectricCliEnv, resolveCommandPrefix, run } from "./index-
|
|
2
|
+
import { DEFAULT_ELECTRIC_AGENTS_URL, ElectricCliEnv, ElectricCliHandlers, EntitySignal, ObserveCommandOptions, PsCommandOptions, SendCommandOptions, SignalCommandOptions, SpawnCommandOptions, StartBuiltinCommandOptions, StartCommandOptions, StartedBuiltinAgentsEnvironment, StartedDevEnvironment, StopCommandOptions, StoppedDevEnvironment, createElectricCliHandlers, createElectricProgram, formatQuickstartBackendStartedMessage, getElectricCliEnv, resolveCommandPrefix, run } from "./index-gzb1Ju8x.js";
|
|
3
3
|
export { DEFAULT_ELECTRIC_AGENTS_URL, ElectricCliEnv, ElectricCliHandlers, EntitySignal, ObserveCommandOptions, PsCommandOptions, SendCommandOptions, SignalCommandOptions, SpawnCommandOptions, StartBuiltinCommandOptions, StartCommandOptions, StartedBuiltinAgentsEnvironment, StartedDevEnvironment, StopCommandOptions, StoppedDevEnvironment, createElectricCliHandlers, createElectricProgram, formatQuickstartBackendStartedMessage, getElectricCliEnv, resolveCommandPrefix, run };
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { installCompletions, setupCompletions } from "./completions-BkhbBSPI.js";
|
|
3
|
-
import { createEntityStreamDB, entityApiPath } from "./entity-stream-db-
|
|
4
|
-
import { ELECTRIC_AX_CLI_VERSION, resolveAnthropicApiKey$1 as resolveAnthropicApiKey } from "./version-
|
|
3
|
+
import { createEntityStreamDB, entityApiPath } from "./entity-stream-db-thqr5ONI.js";
|
|
4
|
+
import { ELECTRIC_AX_CLI_VERSION, resolveAnthropicApiKey$1 as resolveAnthropicApiKey } from "./version-C-TucL6f.js";
|
|
5
5
|
import { appendPathToUrl, buildEntityTimelineData, buildSections } from "@electric-ax/agents-runtime";
|
|
6
6
|
import { existsSync, readFileSync, realpathSync, writeFileSync } from "node:fs";
|
|
7
7
|
import { hostname, userInfo } from "node:os";
|
|
@@ -217,6 +217,9 @@ var CliError = class extends Error {};
|
|
|
217
217
|
function getDefaultElectricAgentsIdentity() {
|
|
218
218
|
return `${userInfo().username}@${hostname()}`;
|
|
219
219
|
}
|
|
220
|
+
function defaultElectricAgentsPrincipalForIdentity(identity) {
|
|
221
|
+
return `user:${identity}`;
|
|
222
|
+
}
|
|
220
223
|
function parseElectricAgentsHeaders(raw) {
|
|
221
224
|
const trimmed = raw?.trim();
|
|
222
225
|
if (!trimmed) return void 0;
|
|
@@ -237,11 +240,13 @@ function parseElectricAgentsHeaders(raw) {
|
|
|
237
240
|
}
|
|
238
241
|
function getElectricCliEnv(env = process.env) {
|
|
239
242
|
const explicitIdentity = env.ELECTRIC_AGENTS_IDENTITY?.trim();
|
|
243
|
+
const explicitPrincipal = env.ELECTRIC_AGENTS_PRINCIPAL?.trim();
|
|
240
244
|
const headers = parseElectricAgentsHeaders(env.ELECTRIC_AGENTS_SERVER_HEADERS);
|
|
245
|
+
const electricAgentsIdentity = explicitIdentity || getDefaultElectricAgentsIdentity();
|
|
241
246
|
return {
|
|
242
247
|
electricAgentsUrl: env.ELECTRIC_AGENTS_URL || DEFAULT_ELECTRIC_AGENTS_URL,
|
|
243
|
-
electricAgentsIdentity
|
|
244
|
-
electricAgentsHeaders: mergeElectricPrincipalHeader(headers,
|
|
248
|
+
electricAgentsIdentity,
|
|
249
|
+
electricAgentsHeaders: mergeElectricPrincipalHeader(headers, explicitPrincipal || defaultElectricAgentsPrincipalForIdentity(electricAgentsIdentity))
|
|
245
250
|
};
|
|
246
251
|
}
|
|
247
252
|
function getErrorMessage(error) {
|
|
@@ -491,10 +496,7 @@ async function spawnEntity(env, urlPath, options) {
|
|
|
491
496
|
}
|
|
492
497
|
async function sendMessage(env, url, message, options) {
|
|
493
498
|
const payload = parsePayload(message, options.json ?? false);
|
|
494
|
-
const body = {
|
|
495
|
-
from: env.electricAgentsIdentity,
|
|
496
|
-
payload
|
|
497
|
-
};
|
|
499
|
+
const body = { payload };
|
|
498
500
|
if (options.type) body.type = options.type;
|
|
499
501
|
const res = await electricAgentsFetch(env, entityApiPath(url, `/send`), {
|
|
500
502
|
method: `POST`,
|
|
@@ -669,7 +671,7 @@ function getHelpText(commandName) {
|
|
|
669
671
|
Environment:
|
|
670
672
|
ELECTRIC_AGENTS_URL Base URL of the server (default: ${DEFAULT_ELECTRIC_AGENTS_URL})
|
|
671
673
|
ELECTRIC_AGENTS_IDENTITY Sender identity for messages (default: ${getDefaultElectricAgentsIdentity()})
|
|
672
|
-
ELECTRIC_AGENTS_PRINCIPAL
|
|
674
|
+
ELECTRIC_AGENTS_PRINCIPAL Principal key sent as the Electric-Principal header (default: user:<ELECTRIC_AGENTS_IDENTITY>)
|
|
673
675
|
ELECTRIC_AGENTS_SERVER_HEADERS Optional JSON object of additional server headers
|
|
674
676
|
ANTHROPIC_API_KEY Required for '${agentsCommand} start-builtin' and '${agentsCommand} quickstart'
|
|
675
677
|
|