deepline 0.1.165 → 0.1.167
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/bundling-sources/apps/play-runner-workers/src/entry.ts +291 -107
- package/dist/bundling-sources/apps/play-runner-workers/src/runtime/tool-receipts.ts +12 -2
- package/dist/bundling-sources/sdk/src/agent-runtime.ts +2 -2
- package/dist/bundling-sources/sdk/src/release.ts +2 -2
- package/dist/bundling-sources/shared_libs/play-runtime/context.ts +80 -6
- package/dist/bundling-sources/shared_libs/play-runtime/durable-receipt-execution.ts +77 -8
- package/dist/bundling-sources/shared_libs/play-runtime/runtime-api.ts +41 -35
- package/dist/cli/index.js +61 -22
- package/dist/cli/index.mjs +61 -22
- package/dist/index.js +4 -4
- package/dist/index.mjs +4 -4
- package/package.json +1 -1
package/dist/cli/index.mjs
CHANGED
|
@@ -607,10 +607,10 @@ var SDK_RELEASE = {
|
|
|
607
607
|
// 0.1.111 ships dataset-native tool list getters and result row datasets.
|
|
608
608
|
// 0.1.154 removes the short-lived generated enrich StepOptions recompute
|
|
609
609
|
// fields shipped in 0.1.153.
|
|
610
|
-
version: "0.1.
|
|
610
|
+
version: "0.1.167",
|
|
611
611
|
apiContract: "2026-06-dataset-handle-results-hard-cutover",
|
|
612
612
|
supportPolicy: {
|
|
613
|
-
latest: "0.1.
|
|
613
|
+
latest: "0.1.167",
|
|
614
614
|
minimumSupported: "0.1.53",
|
|
615
615
|
deprecatedBelow: "0.1.53",
|
|
616
616
|
commandMinimumSupported: [
|
|
@@ -734,8 +734,8 @@ function isCoworkLikeSandbox2() {
|
|
|
734
734
|
const projectDir = Boolean(process.env.CLAUDE_PROJECT_DIR?.trim());
|
|
735
735
|
const pluginRoot = Boolean(process.env.DEEPLINE_PLUGIN_ROOT?.trim());
|
|
736
736
|
const home = process.env.HOME?.trim() || homedir2();
|
|
737
|
-
const sessionHome = home.startsWith("/sessions/");
|
|
738
|
-
return (pluginMode || pluginRoot) &&
|
|
737
|
+
const sessionHome = home === "/sessions" || home.startsWith("/sessions/");
|
|
738
|
+
return claudeRemote || sessionHome || (pluginMode || pluginRoot) && projectDir;
|
|
739
739
|
}
|
|
740
740
|
function detectAgentRuntime(options = {}) {
|
|
741
741
|
const explicit = normalizeAgentRuntime(process.env.DEEPLINE_AGENT_RUNTIME);
|
|
@@ -4416,10 +4416,11 @@ function sleep3(ms) {
|
|
|
4416
4416
|
return new Promise((resolvePromise) => setTimeout(resolvePromise, ms));
|
|
4417
4417
|
}
|
|
4418
4418
|
function collectLocalEnvInfo() {
|
|
4419
|
+
const homeDir2 = process.env.HOME?.trim() || homedir5();
|
|
4419
4420
|
const info = {
|
|
4420
4421
|
os: `${process.platform} ${process.arch}`,
|
|
4421
4422
|
node_version: process.version,
|
|
4422
|
-
home_dir:
|
|
4423
|
+
home_dir: homeDir2,
|
|
4423
4424
|
agent_runtime: detectAgentRuntime()
|
|
4424
4425
|
};
|
|
4425
4426
|
const env = process.env;
|
|
@@ -4439,7 +4440,7 @@ function collectLocalEnvInfo() {
|
|
|
4439
4440
|
if (env.DEEPLINE_PLUGIN_SKILLS_DIR?.trim()) {
|
|
4440
4441
|
info.deepline_plugin_skills_dir_present = "true";
|
|
4441
4442
|
}
|
|
4442
|
-
if (info.home_dir.startsWith("/sessions/")) {
|
|
4443
|
+
if (info.home_dir === "/sessions" || info.home_dir.startsWith("/sessions/")) {
|
|
4443
4444
|
info.home_scope = "sessions";
|
|
4444
4445
|
}
|
|
4445
4446
|
return info;
|
|
@@ -4704,6 +4705,27 @@ function clearPendingClaimToken(baseUrl) {
|
|
|
4704
4705
|
} catch {
|
|
4705
4706
|
}
|
|
4706
4707
|
}
|
|
4708
|
+
function parseRegisterWaitMode(args) {
|
|
4709
|
+
let mode = "auto";
|
|
4710
|
+
for (let i = 0; i < args.length; i++) {
|
|
4711
|
+
if (args[i] === "--no-wait") {
|
|
4712
|
+
mode = "no";
|
|
4713
|
+
} else if (args[i] === "--wait" && args[i + 1]) {
|
|
4714
|
+
const value = args[++i].trim().toLowerCase();
|
|
4715
|
+
if (value === "auto" || value === "yes" || value === "no") {
|
|
4716
|
+
mode = value;
|
|
4717
|
+
} else {
|
|
4718
|
+
throw new Error("--wait must be one of: auto, yes, no");
|
|
4719
|
+
}
|
|
4720
|
+
}
|
|
4721
|
+
}
|
|
4722
|
+
return mode;
|
|
4723
|
+
}
|
|
4724
|
+
function shouldWaitForRegisterClaim(mode) {
|
|
4725
|
+
if (mode === "yes") return true;
|
|
4726
|
+
if (mode === "no") return false;
|
|
4727
|
+
return detectAgentRuntime() !== "claude_cowork";
|
|
4728
|
+
}
|
|
4707
4729
|
function saveEnvValues(values, baseUrl) {
|
|
4708
4730
|
const filtered = {
|
|
4709
4731
|
...values[HOST_URL_ENV] ? { [HOST_URL_ENV]: values[HOST_URL_ENV] } : {},
|
|
@@ -4832,11 +4854,16 @@ async function handleRegister(args) {
|
|
|
4832
4854
|
const baseUrl = autoDetectBaseUrl().replace(/\/$/, "");
|
|
4833
4855
|
let orgName = "";
|
|
4834
4856
|
let agentName = "";
|
|
4835
|
-
let
|
|
4857
|
+
let waitMode;
|
|
4858
|
+
try {
|
|
4859
|
+
waitMode = parseRegisterWaitMode(args);
|
|
4860
|
+
} catch (error) {
|
|
4861
|
+
console.error(error instanceof Error ? error.message : String(error));
|
|
4862
|
+
return 2;
|
|
4863
|
+
}
|
|
4836
4864
|
for (let i = 0; i < args.length; i++) {
|
|
4837
4865
|
if (args[i] === "--org-name" && args[i + 1]) orgName = args[++i];
|
|
4838
4866
|
else if (args[i] === "--agent-name" && args[i + 1]) agentName = args[++i];
|
|
4839
|
-
else if (args[i] === "--no-wait") noWait = true;
|
|
4840
4867
|
}
|
|
4841
4868
|
if (!agentName) {
|
|
4842
4869
|
try {
|
|
@@ -4878,7 +4905,7 @@ async function handleRegister(args) {
|
|
|
4878
4905
|
if (data.cli_message) {
|
|
4879
4906
|
console.log(String(data.cli_message));
|
|
4880
4907
|
}
|
|
4881
|
-
if (
|
|
4908
|
+
if (!shouldWaitForRegisterClaim(waitMode)) return EXIT_OK;
|
|
4882
4909
|
if (!claimToken) {
|
|
4883
4910
|
console.error("Missing claim token from register response.");
|
|
4884
4911
|
return EXIT_SERVER;
|
|
@@ -4946,7 +4973,7 @@ async function handleWait(args) {
|
|
|
4946
4973
|
console.log("Already connected.");
|
|
4947
4974
|
return EXIT_OK;
|
|
4948
4975
|
}
|
|
4949
|
-
console.error("No pending approval. Run: deepline auth register --no
|
|
4976
|
+
console.error("No pending approval. Run: deepline auth register --wait no");
|
|
4950
4977
|
return EXIT_AUTH;
|
|
4951
4978
|
}
|
|
4952
4979
|
const deadline = Date.now() + timeoutSeconds * 1e3;
|
|
@@ -5056,7 +5083,7 @@ async function handleStatus(args) {
|
|
|
5056
5083
|
...hostStatusPayload ?? { host: baseUrl },
|
|
5057
5084
|
status: "not connected",
|
|
5058
5085
|
connected: false,
|
|
5059
|
-
next: "deepline auth register --
|
|
5086
|
+
next: "deepline auth register --wait auto && deepline auth wait",
|
|
5060
5087
|
render: {
|
|
5061
5088
|
sections: [
|
|
5062
5089
|
{
|
|
@@ -5065,7 +5092,10 @@ async function handleStatus(args) {
|
|
|
5065
5092
|
}
|
|
5066
5093
|
],
|
|
5067
5094
|
actions: [
|
|
5068
|
-
{
|
|
5095
|
+
{
|
|
5096
|
+
label: "Register",
|
|
5097
|
+
command: "deepline auth register --wait auto"
|
|
5098
|
+
},
|
|
5069
5099
|
{ label: "Wait", command: "deepline auth wait" }
|
|
5070
5100
|
]
|
|
5071
5101
|
}
|
|
@@ -5089,7 +5119,7 @@ async function handleStatus(args) {
|
|
|
5089
5119
|
...hostStatusPayload ?? { host: baseUrl },
|
|
5090
5120
|
status: "unauthorized",
|
|
5091
5121
|
connected: false,
|
|
5092
|
-
next: "deepline auth register --
|
|
5122
|
+
next: "deepline auth register --wait auto && deepline auth wait",
|
|
5093
5123
|
render: {
|
|
5094
5124
|
sections: [
|
|
5095
5125
|
{
|
|
@@ -5098,7 +5128,10 @@ async function handleStatus(args) {
|
|
|
5098
5128
|
}
|
|
5099
5129
|
],
|
|
5100
5130
|
actions: [
|
|
5101
|
-
{
|
|
5131
|
+
{
|
|
5132
|
+
label: "Register",
|
|
5133
|
+
command: "deepline auth register --wait auto"
|
|
5134
|
+
},
|
|
5102
5135
|
{ label: "Wait", command: "deepline auth wait" }
|
|
5103
5136
|
]
|
|
5104
5137
|
}
|
|
@@ -5177,14 +5210,15 @@ function registerAuthCommands(program) {
|
|
|
5177
5210
|
`
|
|
5178
5211
|
Common commands:
|
|
5179
5212
|
deepline auth register
|
|
5180
|
-
deepline auth register --no
|
|
5213
|
+
deepline auth register --wait no
|
|
5181
5214
|
deepline auth wait --timeout 300
|
|
5182
5215
|
deepline auth status
|
|
5183
5216
|
deepline auth status --json
|
|
5184
5217
|
|
|
5185
5218
|
Notes:
|
|
5186
|
-
Registration
|
|
5187
|
-
or agent runs, then
|
|
5219
|
+
Registration uses --wait auto by default: it waits locally and returns after
|
|
5220
|
+
opening the approval page in Cowork. Use --wait no in CI or agent runs, then
|
|
5221
|
+
finish with deepline auth wait.
|
|
5188
5222
|
Auth status shows the target host and active workspace without printing secrets.
|
|
5189
5223
|
`
|
|
5190
5224
|
);
|
|
@@ -5194,26 +5228,27 @@ Notes:
|
|
|
5194
5228
|
"after",
|
|
5195
5229
|
`
|
|
5196
5230
|
Notes:
|
|
5197
|
-
Opens a browser approval page
|
|
5231
|
+
Opens a browser approval page. --wait auto waits locally and returns after
|
|
5232
|
+
opening the approval page in Cowork.
|
|
5198
5233
|
The saved API key is scoped to the selected workspace and host.
|
|
5199
5234
|
|
|
5200
5235
|
Examples:
|
|
5201
5236
|
deepline auth register
|
|
5202
5237
|
deepline auth register --org-name Acme --agent-name local-cli
|
|
5203
|
-
deepline auth register --no
|
|
5238
|
+
deepline auth register --wait no
|
|
5204
5239
|
`
|
|
5205
|
-
).option("--org-name <name>", "Workspace name to prefill").option("--agent-name <name>", "Agent name to register").option("--
|
|
5240
|
+
).option("--org-name <name>", "Workspace name to prefill").option("--agent-name <name>", "Agent name to register").option("--wait <mode>", "Wait mode: auto, yes, or no", "auto").option("--no-wait", "Alias for --wait no").action(async (options) => {
|
|
5206
5241
|
process.exitCode = await handleRegister([
|
|
5207
5242
|
...options.orgName ? ["--org-name", options.orgName] : [],
|
|
5208
5243
|
...options.agentName ? ["--agent-name", options.agentName] : [],
|
|
5209
|
-
...options.noWait || options.wait === false ? ["--
|
|
5244
|
+
...options.noWait || options.wait === false ? ["--wait", "no"] : ["--wait", String(options.wait ?? "auto")]
|
|
5210
5245
|
]);
|
|
5211
5246
|
});
|
|
5212
5247
|
auth.command("wait").description("Wait for a pending browser approval and save the API key.").addHelpText(
|
|
5213
5248
|
"after",
|
|
5214
5249
|
`
|
|
5215
5250
|
Notes:
|
|
5216
|
-
Completes a previous deepline auth register --
|
|
5251
|
+
Completes a previous deepline auth register --wait no flow.
|
|
5217
5252
|
Saves the approved API key into the host auth file.
|
|
5218
5253
|
|
|
5219
5254
|
Examples:
|
|
@@ -24307,6 +24342,9 @@ function sdkNpmGlobalInstallCommand() {
|
|
|
24307
24342
|
var CHECK_TIMEOUT_MS2 = 3e3;
|
|
24308
24343
|
var attemptedSync = false;
|
|
24309
24344
|
function shouldSkipSkillsSync() {
|
|
24345
|
+
if (detectAgentRuntime() === "claude_cowork") {
|
|
24346
|
+
return true;
|
|
24347
|
+
}
|
|
24310
24348
|
const value = process.env.DEEPLINE_SKIP_SKILLS_SYNC?.trim().toLowerCase();
|
|
24311
24349
|
return value === "1" || value === "true" || value === "yes" || value === "on";
|
|
24312
24350
|
}
|
|
@@ -24532,6 +24570,7 @@ function runLegacySkillsCleanup() {
|
|
|
24532
24570
|
for (const candidate of candidates) {
|
|
24533
24571
|
const result = spawnSync2(candidate.command, candidate.args, {
|
|
24534
24572
|
stdio: "ignore",
|
|
24573
|
+
env: process.env,
|
|
24535
24574
|
shell: process.platform === "win32"
|
|
24536
24575
|
});
|
|
24537
24576
|
if (result.status === 0) return;
|
package/dist/index.js
CHANGED
|
@@ -421,10 +421,10 @@ var SDK_RELEASE = {
|
|
|
421
421
|
// 0.1.111 ships dataset-native tool list getters and result row datasets.
|
|
422
422
|
// 0.1.154 removes the short-lived generated enrich StepOptions recompute
|
|
423
423
|
// fields shipped in 0.1.153.
|
|
424
|
-
version: "0.1.
|
|
424
|
+
version: "0.1.167",
|
|
425
425
|
apiContract: "2026-06-dataset-handle-results-hard-cutover",
|
|
426
426
|
supportPolicy: {
|
|
427
|
-
latest: "0.1.
|
|
427
|
+
latest: "0.1.167",
|
|
428
428
|
minimumSupported: "0.1.53",
|
|
429
429
|
deprecatedBelow: "0.1.53",
|
|
430
430
|
commandMinimumSupported: [
|
|
@@ -548,8 +548,8 @@ function isCoworkLikeSandbox2() {
|
|
|
548
548
|
const projectDir = Boolean(process.env.CLAUDE_PROJECT_DIR?.trim());
|
|
549
549
|
const pluginRoot = Boolean(process.env.DEEPLINE_PLUGIN_ROOT?.trim());
|
|
550
550
|
const home = process.env.HOME?.trim() || (0, import_node_os2.homedir)();
|
|
551
|
-
const sessionHome = home.startsWith("/sessions/");
|
|
552
|
-
return (pluginMode || pluginRoot) &&
|
|
551
|
+
const sessionHome = home === "/sessions" || home.startsWith("/sessions/");
|
|
552
|
+
return claudeRemote || sessionHome || (pluginMode || pluginRoot) && projectDir;
|
|
553
553
|
}
|
|
554
554
|
function detectAgentRuntime(options = {}) {
|
|
555
555
|
const explicit = normalizeAgentRuntime(process.env.DEEPLINE_AGENT_RUNTIME);
|
package/dist/index.mjs
CHANGED
|
@@ -351,10 +351,10 @@ var SDK_RELEASE = {
|
|
|
351
351
|
// 0.1.111 ships dataset-native tool list getters and result row datasets.
|
|
352
352
|
// 0.1.154 removes the short-lived generated enrich StepOptions recompute
|
|
353
353
|
// fields shipped in 0.1.153.
|
|
354
|
-
version: "0.1.
|
|
354
|
+
version: "0.1.167",
|
|
355
355
|
apiContract: "2026-06-dataset-handle-results-hard-cutover",
|
|
356
356
|
supportPolicy: {
|
|
357
|
-
latest: "0.1.
|
|
357
|
+
latest: "0.1.167",
|
|
358
358
|
minimumSupported: "0.1.53",
|
|
359
359
|
deprecatedBelow: "0.1.53",
|
|
360
360
|
commandMinimumSupported: [
|
|
@@ -478,8 +478,8 @@ function isCoworkLikeSandbox2() {
|
|
|
478
478
|
const projectDir = Boolean(process.env.CLAUDE_PROJECT_DIR?.trim());
|
|
479
479
|
const pluginRoot = Boolean(process.env.DEEPLINE_PLUGIN_ROOT?.trim());
|
|
480
480
|
const home = process.env.HOME?.trim() || homedir2();
|
|
481
|
-
const sessionHome = home.startsWith("/sessions/");
|
|
482
|
-
return (pluginMode || pluginRoot) &&
|
|
481
|
+
const sessionHome = home === "/sessions" || home.startsWith("/sessions/");
|
|
482
|
+
return claudeRemote || sessionHome || (pluginMode || pluginRoot) && projectDir;
|
|
483
483
|
}
|
|
484
484
|
function detectAgentRuntime(options = {}) {
|
|
485
485
|
const explicit = normalizeAgentRuntime(process.env.DEEPLINE_AGENT_RUNTIME);
|