@botiverse/raft-daemon 0.63.4 → 0.63.5-play.20260621140533
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.
|
@@ -1540,8 +1540,8 @@ var PLAN_CONFIG = {
|
|
|
1540
1540
|
displayFeatures: [
|
|
1541
1541
|
"Channels",
|
|
1542
1542
|
"Tasks",
|
|
1543
|
-
"
|
|
1544
|
-
"Agent
|
|
1543
|
+
"Agents on your own computers",
|
|
1544
|
+
"Agent reminders",
|
|
1545
1545
|
"Basic observability",
|
|
1546
1546
|
"30 days of message history",
|
|
1547
1547
|
"100 MB file uploads/month"
|
|
@@ -1572,12 +1572,13 @@ var DISPLAY_PLAN_CONFIG = {
|
|
|
1572
1572
|
priceCadence: "/ seat pack / month",
|
|
1573
1573
|
extraAgentPrice: 0,
|
|
1574
1574
|
displayFeatures: [
|
|
1575
|
-
"
|
|
1575
|
+
"Everything in Free",
|
|
1576
1576
|
"Unlimited message history",
|
|
1577
1577
|
"Higher file upload limits",
|
|
1578
|
-
"Joint
|
|
1578
|
+
"Joint channels",
|
|
1579
1579
|
"More professional features coming soon"
|
|
1580
1580
|
],
|
|
1581
|
+
displayDescription: "For builders and teams scaling agent collaboration.",
|
|
1581
1582
|
displayNote: "$17.60 / seat pack / month when billed yearly"
|
|
1582
1583
|
},
|
|
1583
1584
|
enterprise: {
|
|
@@ -1589,14 +1590,18 @@ var DISPLAY_PLAN_CONFIG = {
|
|
|
1589
1590
|
priceCadence: null,
|
|
1590
1591
|
extraAgentPrice: 0,
|
|
1591
1592
|
displayFeatures: [
|
|
1592
|
-
"
|
|
1593
|
-
"
|
|
1594
|
-
"
|
|
1595
|
-
"
|
|
1596
|
-
]
|
|
1593
|
+
"Everything in Pro",
|
|
1594
|
+
"Private deployment options",
|
|
1595
|
+
"SSO and advanced access control",
|
|
1596
|
+
"Dedicated onboarding and rollout support"
|
|
1597
|
+
],
|
|
1598
|
+
displayDescription: "For advanced deployment and governance needs."
|
|
1597
1599
|
}
|
|
1598
1600
|
};
|
|
1599
1601
|
var FREE_MONTHLY_FILE_UPLOAD_LIMIT_BYTES = 100 * 1024 * 1024;
|
|
1602
|
+
var TRIAL_START_DATE = /* @__PURE__ */ new Date("2026-04-18T00:00:00Z");
|
|
1603
|
+
var TRIAL_END_DATE = /* @__PURE__ */ new Date("2026-06-23T12:00:00Z");
|
|
1604
|
+
var TRIAL_DURATION_DAYS = (TRIAL_END_DATE.getTime() - TRIAL_START_DATE.getTime()) / (24 * 60 * 60 * 1e3);
|
|
1600
1605
|
|
|
1601
1606
|
// src/agentProcessManager.ts
|
|
1602
1607
|
import { existsSync as existsSync8, mkdirSync as mkdirSync4, readFileSync as readFileSync6, readdirSync as readdirSync4, statSync, writeFileSync as writeFileSync4 } from "fs";
|
|
@@ -2582,6 +2587,19 @@ function listLegacySlockStatePaths(slockHome = resolveSlockHome(), homeDir = os.
|
|
|
2582
2587
|
return candidates.filter((candidate) => existsSync(candidate.path));
|
|
2583
2588
|
}
|
|
2584
2589
|
|
|
2590
|
+
// src/authEnv.ts
|
|
2591
|
+
var DAEMON_API_KEY_ENV = "SLOCK_MACHINE_API_KEY";
|
|
2592
|
+
var SLOCK_AGENT_TOKEN_ENV = "SLOCK_AGENT_TOKEN";
|
|
2593
|
+
function scrubDaemonAuthEnv(env) {
|
|
2594
|
+
delete env[DAEMON_API_KEY_ENV];
|
|
2595
|
+
return env;
|
|
2596
|
+
}
|
|
2597
|
+
function scrubDaemonChildEnv(env) {
|
|
2598
|
+
delete env[DAEMON_API_KEY_ENV];
|
|
2599
|
+
delete env[SLOCK_AGENT_TOKEN_ENV];
|
|
2600
|
+
return env;
|
|
2601
|
+
}
|
|
2602
|
+
|
|
2585
2603
|
// src/agentCredentialProxy.ts
|
|
2586
2604
|
import { randomBytes } from "crypto";
|
|
2587
2605
|
import http from "http";
|
|
@@ -4148,7 +4166,9 @@ var LOOPBACK_NO_PROXY = "127.0.0.1,localhost";
|
|
|
4148
4166
|
var CLI_TRANSPORT_TRACE_DIR_ENV = "SLOCK_CLI_TRANSPORT_TRACE_DIR";
|
|
4149
4167
|
var safePathPart = (value) => value.replace(/[^a-zA-Z0-9_.-]/g, "_");
|
|
4150
4168
|
var RAW_CREDENTIAL_ENV_DENYLIST = [
|
|
4151
|
-
"
|
|
4169
|
+
"SLOCK_AGENT_TOKEN",
|
|
4170
|
+
"SLOCK_AGENT_CREDENTIAL_KEY",
|
|
4171
|
+
"SLOCK_AGENT_CREDENTIAL_KEY_FILE"
|
|
4152
4172
|
];
|
|
4153
4173
|
var WORKSPACE_CLI_TRANSPORT_FILENAMES = [
|
|
4154
4174
|
"agent-token",
|
|
@@ -4500,7 +4520,7 @@ set "SLOCK_AGENT_ACTIVE_CAPABILITIES=${DEFAULT_ACTIVE_CAPABILITIES}"\r
|
|
|
4500
4520
|
SLOCK_SERVER_URL: ctx.config.serverUrl,
|
|
4501
4521
|
PATH: `${slockDir}${path2.delimiter}${process.env.PATH ?? ""}`
|
|
4502
4522
|
};
|
|
4503
|
-
|
|
4523
|
+
scrubDaemonChildEnv(spawnEnv);
|
|
4504
4524
|
for (const key of RAW_CREDENTIAL_ENV_DENYLIST) {
|
|
4505
4525
|
delete spawnEnv[key];
|
|
4506
4526
|
}
|
|
@@ -5022,7 +5042,7 @@ function requiresWindowsShell(command, platform = process.platform) {
|
|
|
5022
5042
|
}
|
|
5023
5043
|
function resolveCommandOnPath(command, deps = {}) {
|
|
5024
5044
|
const platform = deps.platform ?? process.platform;
|
|
5025
|
-
const env = withWindowsUserEnvironment(deps.env ?? process.env, deps);
|
|
5045
|
+
const env = scrubDaemonChildEnv({ ...withWindowsUserEnvironment(deps.env ?? process.env, deps) });
|
|
5026
5046
|
const execFileSyncFn = deps.execFileSyncFn ?? execFileSync;
|
|
5027
5047
|
const existsSyncFn = deps.existsSyncFn ?? existsSync3;
|
|
5028
5048
|
if (platform === "win32") {
|
|
@@ -5048,7 +5068,7 @@ function firstExistingPath(candidates, deps = {}) {
|
|
|
5048
5068
|
return null;
|
|
5049
5069
|
}
|
|
5050
5070
|
function readCommandVersion(command, args = [], deps = {}) {
|
|
5051
|
-
const env = withWindowsUserEnvironment(deps.env ?? process.env, deps);
|
|
5071
|
+
const env = scrubDaemonChildEnv({ ...withWindowsUserEnvironment(deps.env ?? process.env, deps) });
|
|
5052
5072
|
const execFileSyncFn = deps.execFileSyncFn ?? execFileSync;
|
|
5053
5073
|
try {
|
|
5054
5074
|
const output = normalizeExecOutput(execFileSyncFn(command, [...args, "--version"], {
|
|
@@ -7128,11 +7148,11 @@ function detectCursorModels(runCommand = runCursorModelsCommand) {
|
|
|
7128
7148
|
return parseCursorModelsOutput(String(result.stdout || ""));
|
|
7129
7149
|
}
|
|
7130
7150
|
function buildCursorModelProbeEnv(deps = {}) {
|
|
7131
|
-
return withWindowsUserEnvironment({
|
|
7151
|
+
return scrubDaemonChildEnv(withWindowsUserEnvironment({
|
|
7132
7152
|
...deps.env ?? process.env,
|
|
7133
7153
|
FORCE_COLOR: "0",
|
|
7134
7154
|
NO_COLOR: "1"
|
|
7135
|
-
}, deps);
|
|
7155
|
+
}, deps));
|
|
7136
7156
|
}
|
|
7137
7157
|
function runCursorModelsCommand() {
|
|
7138
7158
|
return spawnSync("cursor-agent", ["models"], {
|
|
@@ -7188,7 +7208,7 @@ function resolveGeminiSpawn(commandArgs, deps = {}) {
|
|
|
7188
7208
|
}
|
|
7189
7209
|
const execFileSyncFn = deps.execFileSyncFn ?? execFileSync3;
|
|
7190
7210
|
const existsSyncFn = deps.existsSyncFn ?? existsSync5;
|
|
7191
|
-
const env = deps.env ?? process.env;
|
|
7211
|
+
const env = scrubDaemonChildEnv({ ...deps.env ?? process.env });
|
|
7192
7212
|
const winPath = path8.win32;
|
|
7193
7213
|
let geminiEntry = null;
|
|
7194
7214
|
try {
|
|
@@ -7325,12 +7345,15 @@ var GeminiDriver = class {
|
|
|
7325
7345
|
// src/drivers/kimi.ts
|
|
7326
7346
|
import { randomUUID as randomUUID2 } from "crypto";
|
|
7327
7347
|
import { spawn as spawn7 } from "child_process";
|
|
7328
|
-
import { existsSync as existsSync6, readFileSync as readFileSync3, writeFileSync as writeFileSync3 } from "fs";
|
|
7348
|
+
import { chmodSync, existsSync as existsSync6, readFileSync as readFileSync3, writeFileSync as writeFileSync3 } from "fs";
|
|
7329
7349
|
import os4 from "os";
|
|
7330
7350
|
import path9 from "path";
|
|
7331
7351
|
var KIMI_WIRE_PROTOCOL_VERSION = "1.3";
|
|
7332
7352
|
var KIMI_SYSTEM_PROMPT_FILE = ".slock-kimi-system.md";
|
|
7333
7353
|
var KIMI_AGENT_FILE = ".slock-kimi-agent.yaml";
|
|
7354
|
+
var KIMI_GENERATED_CONFIG_FILE = ".slock-kimi-config.toml";
|
|
7355
|
+
var SLOCK_KIMI_CONFIG_CONTENT_ENV = "SLOCK_KIMI_CONFIG_CONTENT";
|
|
7356
|
+
var SLOCK_KIMI_CONFIG_FILE_ENV = "SLOCK_KIMI_CONFIG_FILE";
|
|
7334
7357
|
function parseToolArguments(raw) {
|
|
7335
7358
|
if (typeof raw !== "string") return raw;
|
|
7336
7359
|
try {
|
|
@@ -7339,6 +7362,73 @@ function parseToolArguments(raw) {
|
|
|
7339
7362
|
return raw;
|
|
7340
7363
|
}
|
|
7341
7364
|
}
|
|
7365
|
+
function readKimiConfigSource(home = os4.homedir(), env = process.env) {
|
|
7366
|
+
const inlineConfig = env[SLOCK_KIMI_CONFIG_CONTENT_ENV];
|
|
7367
|
+
if (inlineConfig && inlineConfig.trim()) {
|
|
7368
|
+
return {
|
|
7369
|
+
raw: inlineConfig,
|
|
7370
|
+
explicitPath: null,
|
|
7371
|
+
sourcePath: SLOCK_KIMI_CONFIG_CONTENT_ENV
|
|
7372
|
+
};
|
|
7373
|
+
}
|
|
7374
|
+
const explicitPath = env[SLOCK_KIMI_CONFIG_FILE_ENV];
|
|
7375
|
+
const configPath = explicitPath && explicitPath.trim() ? explicitPath : path9.join(home, ".kimi", "config.toml");
|
|
7376
|
+
try {
|
|
7377
|
+
return {
|
|
7378
|
+
raw: readFileSync3(configPath, "utf8"),
|
|
7379
|
+
explicitPath: explicitPath && explicitPath.trim() ? explicitPath : null,
|
|
7380
|
+
sourcePath: configPath
|
|
7381
|
+
};
|
|
7382
|
+
} catch {
|
|
7383
|
+
return {
|
|
7384
|
+
raw: null,
|
|
7385
|
+
explicitPath: explicitPath && explicitPath.trim() ? explicitPath : null,
|
|
7386
|
+
sourcePath: configPath
|
|
7387
|
+
};
|
|
7388
|
+
}
|
|
7389
|
+
}
|
|
7390
|
+
function buildKimiSpawnEnv(env = process.env) {
|
|
7391
|
+
const spawnEnv = { ...env, FORCE_COLOR: "0", NO_COLOR: "1" };
|
|
7392
|
+
delete spawnEnv[SLOCK_KIMI_CONFIG_CONTENT_ENV];
|
|
7393
|
+
delete spawnEnv[SLOCK_KIMI_CONFIG_FILE_ENV];
|
|
7394
|
+
return scrubDaemonChildEnv(spawnEnv);
|
|
7395
|
+
}
|
|
7396
|
+
function buildKimiEffectiveEnv(ctx, overrideEnv) {
|
|
7397
|
+
return {
|
|
7398
|
+
...process.env,
|
|
7399
|
+
...ctx.config.envVars || {},
|
|
7400
|
+
...overrideEnv || {}
|
|
7401
|
+
};
|
|
7402
|
+
}
|
|
7403
|
+
function buildKimiLaunchOptions(ctx, opts = {}) {
|
|
7404
|
+
const env = buildKimiEffectiveEnv(ctx, opts.env);
|
|
7405
|
+
const source = readKimiConfigSource(opts.home ?? os4.homedir(), env);
|
|
7406
|
+
const args = [];
|
|
7407
|
+
let configFilePath = null;
|
|
7408
|
+
let configContent = null;
|
|
7409
|
+
if (source.explicitPath) {
|
|
7410
|
+
configFilePath = source.explicitPath;
|
|
7411
|
+
} else if (source.raw !== null && source.sourcePath === SLOCK_KIMI_CONFIG_CONTENT_ENV) {
|
|
7412
|
+
configFilePath = path9.join(ctx.workingDirectory, KIMI_GENERATED_CONFIG_FILE);
|
|
7413
|
+
configContent = source.raw;
|
|
7414
|
+
if (opts.writeGeneratedConfig !== false) {
|
|
7415
|
+
writeFileSync3(configFilePath, source.raw, { encoding: "utf8", mode: 384 });
|
|
7416
|
+
chmodSync(configFilePath, 384);
|
|
7417
|
+
}
|
|
7418
|
+
}
|
|
7419
|
+
if (configFilePath) {
|
|
7420
|
+
args.push("--config-file", configFilePath);
|
|
7421
|
+
}
|
|
7422
|
+
if (ctx.config.model && ctx.config.model !== "default") {
|
|
7423
|
+
args.push("--model", ctx.config.model);
|
|
7424
|
+
}
|
|
7425
|
+
return {
|
|
7426
|
+
args,
|
|
7427
|
+
env: buildKimiSpawnEnv(env),
|
|
7428
|
+
configFilePath,
|
|
7429
|
+
configContent
|
|
7430
|
+
};
|
|
7431
|
+
}
|
|
7342
7432
|
function resolveKimiSpawn(commandArgs, deps = {}) {
|
|
7343
7433
|
return {
|
|
7344
7434
|
command: resolveCommandOnPath("kimi", deps) ?? "kimi",
|
|
@@ -7362,7 +7452,25 @@ var KimiDriver = class {
|
|
|
7362
7452
|
};
|
|
7363
7453
|
model = {
|
|
7364
7454
|
detectedModelsVerifiedAs: "launchable",
|
|
7365
|
-
toLaunchSpec: (modelId) =>
|
|
7455
|
+
toLaunchSpec: (modelId, ctx, opts) => {
|
|
7456
|
+
if (!ctx) return { args: ["--model", modelId] };
|
|
7457
|
+
const launchCtx = {
|
|
7458
|
+
...ctx,
|
|
7459
|
+
config: {
|
|
7460
|
+
...ctx.config,
|
|
7461
|
+
model: modelId
|
|
7462
|
+
}
|
|
7463
|
+
};
|
|
7464
|
+
const launch = buildKimiLaunchOptions(launchCtx, {
|
|
7465
|
+
home: opts?.home,
|
|
7466
|
+
writeGeneratedConfig: false
|
|
7467
|
+
});
|
|
7468
|
+
return {
|
|
7469
|
+
args: launch.args,
|
|
7470
|
+
env: launch.env,
|
|
7471
|
+
configFiles: launch.configFilePath ? [launch.configFilePath] : void 0
|
|
7472
|
+
};
|
|
7473
|
+
}
|
|
7366
7474
|
};
|
|
7367
7475
|
supportsStdinNotification = true;
|
|
7368
7476
|
busyDeliveryMode = "direct";
|
|
@@ -7386,21 +7494,23 @@ var KimiDriver = class {
|
|
|
7386
7494
|
` system_prompt_path: ./${KIMI_SYSTEM_PROMPT_FILE}`,
|
|
7387
7495
|
""
|
|
7388
7496
|
].join("\n"), "utf8");
|
|
7497
|
+
const launch = buildKimiLaunchOptions(ctx);
|
|
7389
7498
|
const args = [
|
|
7390
7499
|
"--wire",
|
|
7391
7500
|
"--yolo",
|
|
7392
7501
|
"--agent-file",
|
|
7393
7502
|
agentFilePath,
|
|
7394
7503
|
"--session",
|
|
7395
|
-
this.sessionId
|
|
7504
|
+
this.sessionId,
|
|
7505
|
+
...launch.args
|
|
7396
7506
|
];
|
|
7397
7507
|
const launchRuntimeFields = runtimeConfigToLaunchFields(ctx.config);
|
|
7398
7508
|
if (launchRuntimeFields.model && launchRuntimeFields.model !== "default") {
|
|
7399
7509
|
args.push("--model", launchRuntimeFields.model);
|
|
7400
7510
|
}
|
|
7401
7511
|
const spawnEnv = (await prepareCliTransport(ctx, { NO_COLOR: "1" })).spawnEnv;
|
|
7402
|
-
const
|
|
7403
|
-
const proc = spawn7(
|
|
7512
|
+
const spawnTarget = resolveKimiSpawn(args);
|
|
7513
|
+
const proc = spawn7(spawnTarget.command, spawnTarget.args, {
|
|
7404
7514
|
cwd: ctx.workingDirectory,
|
|
7405
7515
|
stdio: ["pipe", "pipe", "pipe"],
|
|
7406
7516
|
env: spawnEnv,
|
|
@@ -7408,7 +7518,7 @@ var KimiDriver = class {
|
|
|
7408
7518
|
// and has an 8191-character command-line limit. Kimi's official
|
|
7409
7519
|
// installer/uv entrypoint is an executable, so launch it directly and
|
|
7410
7520
|
// keep prompts on stdin / files instead of routing through cmd.exe.
|
|
7411
|
-
shell:
|
|
7521
|
+
shell: spawnTarget.shell
|
|
7412
7522
|
});
|
|
7413
7523
|
proc.stdin?.write(JSON.stringify({
|
|
7414
7524
|
jsonrpc: "2.0",
|
|
@@ -7521,14 +7631,9 @@ var KimiDriver = class {
|
|
|
7521
7631
|
return detectKimiModels();
|
|
7522
7632
|
}
|
|
7523
7633
|
};
|
|
7524
|
-
function detectKimiModels(home = os4.homedir()) {
|
|
7525
|
-
const
|
|
7526
|
-
|
|
7527
|
-
try {
|
|
7528
|
-
raw = readFileSync3(configPath, "utf8");
|
|
7529
|
-
} catch {
|
|
7530
|
-
return null;
|
|
7531
|
-
}
|
|
7634
|
+
function detectKimiModels(home = os4.homedir(), opts = {}) {
|
|
7635
|
+
const raw = readKimiConfigSource(home, opts.env).raw;
|
|
7636
|
+
if (raw === null) return null;
|
|
7532
7637
|
const models = [];
|
|
7533
7638
|
const sectionRe = /^\s*\[models(?:\.([^\]]+)|"\.[^"]+"|\."[^"]+")\s*\]\s*$/gm;
|
|
7534
7639
|
const lineRe = /^\s*\[models\.(.+?)\s*\]\s*$/gm;
|
|
@@ -8252,7 +8357,7 @@ function runOpenCodeModelsCommand(home, deps = {}) {
|
|
|
8252
8357
|
const platform = deps.platform ?? process.platform;
|
|
8253
8358
|
const spawnSyncFn = deps.spawnSyncFn ?? spawnSync2;
|
|
8254
8359
|
const result = spawnSyncFn("opencode", ["models"], {
|
|
8255
|
-
env: { ...process.env, HOME: home, FORCE_COLOR: "0", NO_COLOR: "1" },
|
|
8360
|
+
env: scrubDaemonChildEnv({ ...process.env, HOME: home, FORCE_COLOR: "0", NO_COLOR: "1" }),
|
|
8256
8361
|
encoding: "utf8",
|
|
8257
8362
|
timeout: 5e3,
|
|
8258
8363
|
shell: platform === "win32"
|
|
@@ -16934,7 +17039,7 @@ var DAEMON_CORE_TRACE_ATTR_CONTRACTS = {
|
|
|
16934
17039
|
spanAttrs: ["agentId", "event_kind", "runtime"]
|
|
16935
17040
|
}
|
|
16936
17041
|
};
|
|
16937
|
-
var DAEMON_CLI_USAGE =
|
|
17042
|
+
var DAEMON_CLI_USAGE = `Usage: slock-daemon --server-url <url> (--api-key <key> or ${DAEMON_API_KEY_ENV}=<key>)`;
|
|
16938
17043
|
var RunnerCredentialMintError2 = class extends Error {
|
|
16939
17044
|
code;
|
|
16940
17045
|
retryable;
|
|
@@ -16970,9 +17075,9 @@ function runnerCredentialErrorDetail2(error) {
|
|
|
16970
17075
|
async function waitForRunnerCredentialRetry2() {
|
|
16971
17076
|
await new Promise((resolve) => setTimeout(resolve, RUNNER_CREDENTIAL_MINT_RETRY_DELAY_MS2));
|
|
16972
17077
|
}
|
|
16973
|
-
function parseDaemonCliArgs(args) {
|
|
17078
|
+
function parseDaemonCliArgs(args, env = {}) {
|
|
16974
17079
|
let serverUrl = "";
|
|
16975
|
-
let apiKey = "";
|
|
17080
|
+
let apiKey = env[DAEMON_API_KEY_ENV] ?? "";
|
|
16976
17081
|
for (let i = 0; i < args.length; i++) {
|
|
16977
17082
|
if (args[i] === "--server-url" && args[i + 1]) serverUrl = args[++i];
|
|
16978
17083
|
if (args[i] === "--api-key" && args[i + 1]) apiKey = args[++i];
|
|
@@ -17009,7 +17114,7 @@ function resolveSlockCliPathOrEmpty(moduleUrl = import.meta.url) {
|
|
|
17009
17114
|
}
|
|
17010
17115
|
async function runBundledSlockCli(argv) {
|
|
17011
17116
|
process.argv = [process.execPath, "slock", ...argv];
|
|
17012
|
-
await import("./dist-
|
|
17117
|
+
await import("./dist-KC6QHBPD.js");
|
|
17013
17118
|
}
|
|
17014
17119
|
function detectRuntimes(tracer = noopTracer) {
|
|
17015
17120
|
const ids = [];
|
|
@@ -17897,6 +18002,8 @@ var DaemonCore = class {
|
|
|
17897
18002
|
|
|
17898
18003
|
export {
|
|
17899
18004
|
subscribeDaemonLogs,
|
|
18005
|
+
DAEMON_API_KEY_ENV,
|
|
18006
|
+
scrubDaemonAuthEnv,
|
|
17900
18007
|
resolveWorkspaceDirectoryPath,
|
|
17901
18008
|
scanWorkspaceDirectories,
|
|
17902
18009
|
deleteWorkspaceDirectory,
|
package/dist/cli/index.js
CHANGED
|
@@ -15864,8 +15864,8 @@ var PLAN_CONFIG = {
|
|
|
15864
15864
|
displayFeatures: [
|
|
15865
15865
|
"Channels",
|
|
15866
15866
|
"Tasks",
|
|
15867
|
-
"
|
|
15868
|
-
"Agent
|
|
15867
|
+
"Agents on your own computers",
|
|
15868
|
+
"Agent reminders",
|
|
15869
15869
|
"Basic observability",
|
|
15870
15870
|
"30 days of message history",
|
|
15871
15871
|
"100 MB file uploads/month"
|
|
@@ -15896,12 +15896,13 @@ var DISPLAY_PLAN_CONFIG = {
|
|
|
15896
15896
|
priceCadence: "/ seat pack / month",
|
|
15897
15897
|
extraAgentPrice: 0,
|
|
15898
15898
|
displayFeatures: [
|
|
15899
|
-
"
|
|
15899
|
+
"Everything in Free",
|
|
15900
15900
|
"Unlimited message history",
|
|
15901
15901
|
"Higher file upload limits",
|
|
15902
|
-
"Joint
|
|
15902
|
+
"Joint channels",
|
|
15903
15903
|
"More professional features coming soon"
|
|
15904
15904
|
],
|
|
15905
|
+
displayDescription: "For builders and teams scaling agent collaboration.",
|
|
15905
15906
|
displayNote: "$17.60 / seat pack / month when billed yearly"
|
|
15906
15907
|
},
|
|
15907
15908
|
enterprise: {
|
|
@@ -15913,14 +15914,18 @@ var DISPLAY_PLAN_CONFIG = {
|
|
|
15913
15914
|
priceCadence: null,
|
|
15914
15915
|
extraAgentPrice: 0,
|
|
15915
15916
|
displayFeatures: [
|
|
15916
|
-
"
|
|
15917
|
-
"
|
|
15918
|
-
"
|
|
15919
|
-
"
|
|
15920
|
-
]
|
|
15917
|
+
"Everything in Pro",
|
|
15918
|
+
"Private deployment options",
|
|
15919
|
+
"SSO and advanced access control",
|
|
15920
|
+
"Dedicated onboarding and rollout support"
|
|
15921
|
+
],
|
|
15922
|
+
displayDescription: "For advanced deployment and governance needs."
|
|
15921
15923
|
}
|
|
15922
15924
|
};
|
|
15923
15925
|
var FREE_MONTHLY_FILE_UPLOAD_LIMIT_BYTES = 100 * 1024 * 1024;
|
|
15926
|
+
var TRIAL_START_DATE = /* @__PURE__ */ new Date("2026-04-18T00:00:00Z");
|
|
15927
|
+
var TRIAL_END_DATE = /* @__PURE__ */ new Date("2026-06-23T12:00:00Z");
|
|
15928
|
+
var TRIAL_DURATION_DAYS = (TRIAL_END_DATE.getTime() - TRIAL_START_DATE.getTime()) / (24 * 60 * 60 * 1e3);
|
|
15924
15929
|
|
|
15925
15930
|
// src/agentCommsCore/bridge.ts
|
|
15926
15931
|
var AGENT_COMMS_PROTOCOL_VERSION = "agent-comms-core.v1";
|
package/dist/core.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import {
|
|
2
|
+
DAEMON_API_KEY_ENV,
|
|
2
3
|
DAEMON_CLI_USAGE,
|
|
3
4
|
DaemonCore,
|
|
4
5
|
deleteWorkspaceDirectory,
|
|
@@ -10,9 +11,11 @@ import {
|
|
|
10
11
|
resolveWorkspaceDirectoryPath,
|
|
11
12
|
runBundledSlockCli,
|
|
12
13
|
scanWorkspaceDirectories,
|
|
14
|
+
scrubDaemonAuthEnv,
|
|
13
15
|
subscribeDaemonLogs
|
|
14
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-BU3OOLV7.js";
|
|
15
17
|
export {
|
|
18
|
+
DAEMON_API_KEY_ENV,
|
|
16
19
|
DAEMON_CLI_USAGE,
|
|
17
20
|
DaemonCore,
|
|
18
21
|
deleteWorkspaceDirectory,
|
|
@@ -24,5 +27,6 @@ export {
|
|
|
24
27
|
resolveWorkspaceDirectoryPath,
|
|
25
28
|
runBundledSlockCli,
|
|
26
29
|
scanWorkspaceDirectories,
|
|
30
|
+
scrubDaemonAuthEnv,
|
|
27
31
|
subscribeDaemonLogs
|
|
28
32
|
};
|
|
@@ -15668,8 +15668,8 @@ var PLAN_CONFIG = {
|
|
|
15668
15668
|
displayFeatures: [
|
|
15669
15669
|
"Channels",
|
|
15670
15670
|
"Tasks",
|
|
15671
|
-
"
|
|
15672
|
-
"Agent
|
|
15671
|
+
"Agents on your own computers",
|
|
15672
|
+
"Agent reminders",
|
|
15673
15673
|
"Basic observability",
|
|
15674
15674
|
"30 days of message history",
|
|
15675
15675
|
"100 MB file uploads/month"
|
|
@@ -15700,12 +15700,13 @@ var DISPLAY_PLAN_CONFIG = {
|
|
|
15700
15700
|
priceCadence: "/ seat pack / month",
|
|
15701
15701
|
extraAgentPrice: 0,
|
|
15702
15702
|
displayFeatures: [
|
|
15703
|
-
"
|
|
15703
|
+
"Everything in Free",
|
|
15704
15704
|
"Unlimited message history",
|
|
15705
15705
|
"Higher file upload limits",
|
|
15706
|
-
"Joint
|
|
15706
|
+
"Joint channels",
|
|
15707
15707
|
"More professional features coming soon"
|
|
15708
15708
|
],
|
|
15709
|
+
displayDescription: "For builders and teams scaling agent collaboration.",
|
|
15709
15710
|
displayNote: "$17.60 / seat pack / month when billed yearly"
|
|
15710
15711
|
},
|
|
15711
15712
|
enterprise: {
|
|
@@ -15717,14 +15718,18 @@ var DISPLAY_PLAN_CONFIG = {
|
|
|
15717
15718
|
priceCadence: null,
|
|
15718
15719
|
extraAgentPrice: 0,
|
|
15719
15720
|
displayFeatures: [
|
|
15720
|
-
"
|
|
15721
|
-
"
|
|
15722
|
-
"
|
|
15723
|
-
"
|
|
15724
|
-
]
|
|
15721
|
+
"Everything in Pro",
|
|
15722
|
+
"Private deployment options",
|
|
15723
|
+
"SSO and advanced access control",
|
|
15724
|
+
"Dedicated onboarding and rollout support"
|
|
15725
|
+
],
|
|
15726
|
+
displayDescription: "For advanced deployment and governance needs."
|
|
15725
15727
|
}
|
|
15726
15728
|
};
|
|
15727
15729
|
var FREE_MONTHLY_FILE_UPLOAD_LIMIT_BYTES = 100 * 1024 * 1024;
|
|
15730
|
+
var TRIAL_START_DATE = /* @__PURE__ */ new Date("2026-04-18T00:00:00Z");
|
|
15731
|
+
var TRIAL_END_DATE = /* @__PURE__ */ new Date("2026-06-23T12:00:00Z");
|
|
15732
|
+
var TRIAL_DURATION_DAYS = (TRIAL_END_DATE.getTime() - TRIAL_START_DATE.getTime()) / (24 * 60 * 60 * 1e3);
|
|
15728
15733
|
var AGENT_COMMS_PROTOCOL_VERSION = "agent-comms-core.v1";
|
|
15729
15734
|
var AGENT_PROOF_SCHEMA_VERSION = "agent-proof.v1";
|
|
15730
15735
|
var AgentCommsBridgeLockError = class extends Error {
|
package/dist/index.js
CHANGED
|
@@ -2,11 +2,13 @@
|
|
|
2
2
|
import {
|
|
3
3
|
DAEMON_CLI_USAGE,
|
|
4
4
|
DaemonCore,
|
|
5
|
-
parseDaemonCliArgs
|
|
6
|
-
|
|
5
|
+
parseDaemonCliArgs,
|
|
6
|
+
scrubDaemonAuthEnv
|
|
7
|
+
} from "./chunk-BU3OOLV7.js";
|
|
7
8
|
|
|
8
9
|
// src/index.ts
|
|
9
|
-
var parsedArgs = parseDaemonCliArgs(process.argv.slice(2));
|
|
10
|
+
var parsedArgs = parseDaemonCliArgs(process.argv.slice(2), process.env);
|
|
11
|
+
scrubDaemonAuthEnv(process.env);
|
|
10
12
|
if (!parsedArgs) {
|
|
11
13
|
console.error(DAEMON_CLI_USAGE);
|
|
12
14
|
process.exit(1);
|