@archmax-ai/harness 0.4.2 → 0.6.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/README.md +13 -1
- package/dist/agent.d.ts +14 -0
- package/dist/agent.js.map +1 -1
- package/dist/assembly/compose.js +54 -28
- package/dist/assembly/compose.js.map +1 -1
- package/dist/assembly/index.js +51 -11
- package/dist/assembly/index.js.map +1 -1
- package/dist/authoring-skill/archmax-harness/SKILL.md +2 -2
- package/dist/authoring-skill/archmax-harness/references/backend-integration.md +52 -14
- package/dist/authoring-skill/archmax-harness/references/hook-and-test-scripts.md +5 -2
- package/dist/authoring-skill/archmax-harness/references/workflow-schema.md +95 -18
- package/dist/authoring-skill/archmax-harness/references/workflow-yaml.md +1 -1
- package/dist/cli/bootstrap.d.ts +8 -1
- package/dist/cli/bootstrap.js +43 -3
- package/dist/cli/bootstrap.js.map +1 -1
- package/dist/cli/command.d.ts +3 -1
- package/dist/cli/command.js +1 -1
- package/dist/cli/command.js.map +1 -1
- package/dist/cli/turn.d.ts +3 -1
- package/dist/cli/turn.js +1 -0
- package/dist/cli/turn.js.map +1 -1
- package/dist/cli.js +9 -1
- package/dist/cli.js.map +1 -1
- package/dist/core/attachments.d.ts +64 -0
- package/dist/core/attachments.js +87 -0
- package/dist/core/attachments.js.map +1 -0
- package/dist/core/binary-read.d.ts +20 -4
- package/dist/core/binary-read.js +36 -5
- package/dist/core/binary-read.js.map +1 -1
- package/dist/core/events.d.ts +6 -0
- package/dist/core/events.js.map +1 -1
- package/dist/core/file-operations.d.ts +22 -0
- package/dist/core/file-operations.js +54 -0
- package/dist/core/file-operations.js.map +1 -1
- package/dist/core/mount-prompt.d.ts +2 -1
- package/dist/core/mount-prompt.js +4 -2
- package/dist/core/mount-prompt.js.map +1 -1
- package/dist/core/platform-prompt.generated.js +1 -1
- package/dist/core/platform-prompt.generated.js.map +1 -1
- package/dist/core/session-id.d.ts +12 -2
- package/dist/core/session-id.js +30 -2
- package/dist/core/session-id.js.map +1 -1
- package/dist/core/tool-context.d.ts +13 -2
- package/dist/core/tool-context.js +2 -1
- package/dist/core/tool-context.js.map +1 -1
- package/dist/core/workspace-router.js +5 -3
- package/dist/core/workspace-router.js.map +1 -1
- package/dist/index.d.ts +5 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/kernel/kernel.d.ts +9 -0
- package/dist/kernel/kernel.js +23 -4
- package/dist/kernel/kernel.js.map +1 -1
- package/dist/machine/lint-spec.js +8 -4
- package/dist/machine/lint-spec.js.map +1 -1
- package/dist/machine/machine.d.ts +33 -7
- package/dist/machine/machine.js +55 -10
- package/dist/machine/machine.js.map +1 -1
- package/dist/machine/mount-grants.d.ts +3 -2
- package/dist/machine/mount-grants.js.map +1 -1
- package/dist/machine/signature.d.ts +16 -5
- package/dist/machine/signature.js +25 -4
- package/dist/machine/signature.js.map +1 -1
- package/dist/machine/spec-schema.d.ts +10 -0
- package/dist/public/spec.d.ts +5 -3
- package/dist/public/spec.js +5 -3
- package/dist/public/spec.js.map +1 -1
- package/dist/sessions/resume.d.ts +14 -1
- package/dist/sessions/resume.js +13 -0
- package/dist/sessions/resume.js.map +1 -1
- package/dist/sessions/scope.d.ts +18 -11
- package/dist/sessions/scope.js +21 -23
- package/dist/sessions/scope.js.map +1 -1
- package/dist/workflow/agent-tools.d.ts +2 -1
- package/dist/workflow/agent-tools.js +8 -7
- package/dist/workflow/agent-tools.js.map +1 -1
- package/dist/workflow/control-tools.d.ts +12 -1
- package/dist/workflow/control-tools.js +33 -4
- package/dist/workflow/control-tools.js.map +1 -1
- package/dist/workflow/file-values.d.ts +44 -0
- package/dist/workflow/file-values.js +29 -0
- package/dist/workflow/file-values.js.map +1 -0
- package/dist/workflow/governance.d.ts +10 -0
- package/dist/workflow/governance.js +70 -1
- package/dist/workflow/governance.js.map +1 -1
- package/dist/workflow/middleware.d.ts +6 -0
- package/dist/workflow/middleware.js +34 -1
- package/dist/workflow/middleware.js.map +1 -1
- package/dist/workflow/parks.js +5 -1
- package/dist/workflow/parks.js.map +1 -1
- package/dist/workflow/returns-check.d.ts +3 -0
- package/dist/workflow/returns-check.js +1 -1
- package/dist/workflow/returns-check.js.map +1 -1
- package/dist/workflow/signature-checks.d.ts +47 -5
- package/dist/workflow/signature-checks.js +73 -9
- package/dist/workflow/signature-checks.js.map +1 -1
- package/dist/workflow/state.d.ts +7 -0
- package/dist/workflow/state.js +14 -1
- package/dist/workflow/state.js.map +1 -1
- package/dist/workflow/sub-workflow.d.ts +31 -2
- package/dist/workflow/sub-workflow.js +148 -30
- package/dist/workflow/sub-workflow.js.map +1 -1
- package/dist/workflow/tool-service.d.ts +5 -1
- package/dist/workflow/tool-service.js +9 -3
- package/dist/workflow/tool-service.js.map +1 -1
- package/dist/workflow/turn-boundary.d.ts +3 -0
- package/dist/workflow/turn-boundary.js +5 -2
- package/dist/workflow/turn-boundary.js.map +1 -1
- package/dist/workflow/workflow-tools.js +11 -0
- package/dist/workflow/workflow-tools.js.map +1 -1
- package/package.json +1 -1
- package/skills/archmax-harness/SKILL.md +2 -2
- package/skills/archmax-harness/references/backend-integration.md +52 -14
- package/skills/archmax-harness/references/hook-and-test-scripts.md +5 -2
- package/skills/archmax-harness/references/workflow-schema.md +95 -18
- package/skills/archmax-harness/references/workflow-yaml.md +1 -1
package/dist/cli/turn.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turn.js","sourceRoot":"","sources":["../../src/cli/turn.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"turn.js","sourceRoot":"","sources":["../../src/cli/turn.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.js
CHANGED
|
@@ -19,7 +19,7 @@ import { createStyle, icons } from "./cli/style.js";
|
|
|
19
19
|
import { createTestView } from "./cli/state-flow.js";
|
|
20
20
|
import { formatUsage, hasUsage } from "./core/usage.js";
|
|
21
21
|
import { CliError, UsageError, commandHelp, err, out, parseInvocation, topLevelHelp, } from "./cli/command.js";
|
|
22
|
-
import { bootstrap, createEventSink, isKnown, parseVariablesJson, printSessionHeader, resolveWorkflow, withSession, } from "./cli/bootstrap.js";
|
|
22
|
+
import { bootstrap, createEventSink, isKnown, parseFileFlags, parseVariablesJson, printSessionHeader, resolveWorkflow, withSession, } from "./cli/bootstrap.js";
|
|
23
23
|
import { driveTurn, printDecisionContext, printReply, printResumed, printUsageFooter, } from "./cli/turn.js";
|
|
24
24
|
/** `--variables` parsing, re-exported for tests. */
|
|
25
25
|
export { parseVariablesJson };
|
|
@@ -84,6 +84,12 @@ const COMMANDS = {
|
|
|
84
84
|
description: "Trigger starting the turn (default: manual); enters the state declaring it",
|
|
85
85
|
},
|
|
86
86
|
variables: OPT.variables,
|
|
87
|
+
file: {
|
|
88
|
+
type: "string",
|
|
89
|
+
multiple: true,
|
|
90
|
+
placeholder: "<variable>=<path>",
|
|
91
|
+
description: "Hand the session a local file: placed in scratchpad/attachments/, its path seeded as <variable>; repeatable",
|
|
92
|
+
},
|
|
87
93
|
session: {
|
|
88
94
|
type: "string",
|
|
89
95
|
placeholder: "<id>",
|
|
@@ -102,6 +108,7 @@ const COMMANDS = {
|
|
|
102
108
|
if (!prompt)
|
|
103
109
|
throw new UsageError("a prompt is required");
|
|
104
110
|
const variables = parseVariablesJson(inv.values.variables);
|
|
111
|
+
const files = parseFileFlags(inv.values.file, variables);
|
|
105
112
|
const trigger = inv.values.trigger ? { id: inv.values.trigger } : undefined;
|
|
106
113
|
const style = createStyle();
|
|
107
114
|
printSessionHeader(style, workflow, inv.root, true);
|
|
@@ -115,6 +122,7 @@ const COMMANDS = {
|
|
|
115
122
|
prompt,
|
|
116
123
|
...(trigger && { trigger }),
|
|
117
124
|
...(variables && { variables }),
|
|
125
|
+
...(files && { files }),
|
|
118
126
|
...(inv.values.session ? { sessionId: inv.values.session } : {}),
|
|
119
127
|
...(inv.values["session-path"]
|
|
120
128
|
? { sessionPath: inv.values["session-path"] }
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A session's attachments: the one folder, `scratchpad/attachments/`, where the
|
|
3
|
+
* runtime places every file it hands a session — a host's turn file, a copied
|
|
4
|
+
* sub-workflow argument, a copied `file` return — and the one rule that names
|
|
5
|
+
* them so a placement never overwrites a file.
|
|
6
|
+
*
|
|
7
|
+
* Placements into one session are serialized in-process: listing the folder,
|
|
8
|
+
* choosing a free name and writing it happen as one step, so concurrent children
|
|
9
|
+
* of one caller settling at once each take their own name. A session's turn runs
|
|
10
|
+
* in one process, so nothing else can place into it concurrently.
|
|
11
|
+
*/
|
|
12
|
+
import type { BackendProtocolV2 } from "deepagents";
|
|
13
|
+
/** Where the runtime places the files it hands a session. */
|
|
14
|
+
export declare const ATTACHMENTS_DIR = "scratchpad/attachments";
|
|
15
|
+
/**
|
|
16
|
+
* Whether `name` is one plain file name: non-empty, not `.` or `..`, and free of
|
|
17
|
+
* `/`, `\` and NUL — something a host or a source path may name a placement by.
|
|
18
|
+
*/
|
|
19
|
+
export declare function isPlainFileName(name: string): boolean;
|
|
20
|
+
/** The last segment of a workspace path: what a copied file keeps as its name. */
|
|
21
|
+
export declare function baseName(path: string): string;
|
|
22
|
+
/**
|
|
23
|
+
* The name a placement of `fileName` takes when `taken` already holds some:
|
|
24
|
+
* `fileName` itself when free, else the lowest free `-1`, `-2`, … inserted
|
|
25
|
+
* before the last extension (`report.pdf` → `report-1.pdf`, `archive.tar.gz` →
|
|
26
|
+
* `archive.tar-1.gz`). A name with no extension, or whose only dot leads it,
|
|
27
|
+
* takes the suffix at its end (`notes-1`, `.env-1`).
|
|
28
|
+
*/
|
|
29
|
+
export declare function attachmentName(taken: ReadonlySet<string>, fileName: string): string;
|
|
30
|
+
/** A placed attachment: its workspace path, or why it could not be placed. */
|
|
31
|
+
export type Placement = {
|
|
32
|
+
path: string;
|
|
33
|
+
} | {
|
|
34
|
+
error: string;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* Place `bytes` in `sessionId`'s `scratchpad/attachments/` under `fileName`, or
|
|
38
|
+
* the first free name the suffix rule gives, never overwriting a file. `backend`
|
|
39
|
+
* must already resolve id-free paths against `sessionId` (a bound workspace).
|
|
40
|
+
* The bytes are written and read back exactly, or the placement fails and
|
|
41
|
+
* nothing is left at the path.
|
|
42
|
+
*/
|
|
43
|
+
export declare function placeAttachment(backend: BackendProtocolV2, sessionId: string, fileName: string, bytes: Uint8Array): Promise<Placement>;
|
|
44
|
+
/**
|
|
45
|
+
* The runtime's access to **another** session's files: what a sub-workflow
|
|
46
|
+
* dispatch copies a `file` argument into a child with, and a `file` return back
|
|
47
|
+
* out of it. Each call binds the session it names for its own duration, so the
|
|
48
|
+
* caller's turn — already bound to the caller — can read or place in its child's
|
|
49
|
+
* folder without the child's id ever appearing in a path.
|
|
50
|
+
*/
|
|
51
|
+
export interface SessionFiles {
|
|
52
|
+
/** What `path` names in `sessionId`'s workspace. */
|
|
53
|
+
kind(sessionId: string, path: string): Promise<"file" | "directory" | "missing">;
|
|
54
|
+
/** One file's exact bytes from `sessionId`'s workspace, or why they cannot be read. */
|
|
55
|
+
read(sessionId: string, path: string): Promise<{
|
|
56
|
+
bytes: Uint8Array;
|
|
57
|
+
} | {
|
|
58
|
+
error: string;
|
|
59
|
+
}>;
|
|
60
|
+
/** Place bytes in `sessionId`'s `scratchpad/attachments/` under a name nothing holds. */
|
|
61
|
+
place(sessionId: string, fileName: string, bytes: Uint8Array): Promise<Placement>;
|
|
62
|
+
}
|
|
63
|
+
/** A {@link SessionFiles} over the workspace, binding each session with `bind` (the assembly's session binder). */
|
|
64
|
+
export declare function createSessionFiles(backend: BackendProtocolV2, bind: <T>(sessionId: string, fn: () => Promise<T>) => Promise<T>): SessionFiles;
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { readWorkspaceBytes, workspaceEntryKind, writeWorkspaceBytes } from "./file-operations.js";
|
|
2
|
+
/** Where the runtime places the files it hands a session. */
|
|
3
|
+
export const ATTACHMENTS_DIR = "scratchpad/attachments";
|
|
4
|
+
/**
|
|
5
|
+
* Whether `name` is one plain file name: non-empty, not `.` or `..`, and free of
|
|
6
|
+
* `/`, `\` and NUL — something a host or a source path may name a placement by.
|
|
7
|
+
*/
|
|
8
|
+
export function isPlainFileName(name) {
|
|
9
|
+
return name !== "" && name !== "." && name !== ".." && !/[/\\\0]/.test(name);
|
|
10
|
+
}
|
|
11
|
+
/** The last segment of a workspace path: what a copied file keeps as its name. */
|
|
12
|
+
export function baseName(path) {
|
|
13
|
+
const trimmed = path.replace(/\/+$/, "");
|
|
14
|
+
return trimmed.slice(trimmed.lastIndexOf("/") + 1);
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* The name a placement of `fileName` takes when `taken` already holds some:
|
|
18
|
+
* `fileName` itself when free, else the lowest free `-1`, `-2`, … inserted
|
|
19
|
+
* before the last extension (`report.pdf` → `report-1.pdf`, `archive.tar.gz` →
|
|
20
|
+
* `archive.tar-1.gz`). A name with no extension, or whose only dot leads it,
|
|
21
|
+
* takes the suffix at its end (`notes-1`, `.env-1`).
|
|
22
|
+
*/
|
|
23
|
+
export function attachmentName(taken, fileName) {
|
|
24
|
+
if (!taken.has(fileName))
|
|
25
|
+
return fileName;
|
|
26
|
+
const dot = fileName.lastIndexOf(".");
|
|
27
|
+
const [stem, ext] = dot > 0 ? [fileName.slice(0, dot), fileName.slice(dot)] : [fileName, ""];
|
|
28
|
+
for (let n = 1;; n++) {
|
|
29
|
+
const candidate = `${stem}-${n}${ext}`;
|
|
30
|
+
if (!taken.has(candidate))
|
|
31
|
+
return candidate;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
/** The names `scratchpad/attachments/` already holds, files and folders alike. */
|
|
35
|
+
async function namesIn(backend) {
|
|
36
|
+
const names = new Set();
|
|
37
|
+
try {
|
|
38
|
+
const listing = await backend.ls(`/${ATTACHMENTS_DIR}`);
|
|
39
|
+
for (const entry of listing.files ?? [])
|
|
40
|
+
names.add(baseName(entry.path));
|
|
41
|
+
}
|
|
42
|
+
catch {
|
|
43
|
+
// A folder that does not exist yet holds nothing.
|
|
44
|
+
}
|
|
45
|
+
return names;
|
|
46
|
+
}
|
|
47
|
+
/** The tail of each session's placement queue, so one session's placements run one at a time. */
|
|
48
|
+
const queues = new Map();
|
|
49
|
+
/** Run `fn` after every placement already queued for `sessionId`. */
|
|
50
|
+
function serialized(sessionId, fn) {
|
|
51
|
+
const previous = queues.get(sessionId) ?? Promise.resolve();
|
|
52
|
+
const run = previous.then(fn, fn);
|
|
53
|
+
const tail = run.catch(() => undefined);
|
|
54
|
+
queues.set(sessionId, tail);
|
|
55
|
+
void tail.then(() => {
|
|
56
|
+
if (queues.get(sessionId) === tail)
|
|
57
|
+
queues.delete(sessionId);
|
|
58
|
+
});
|
|
59
|
+
return run;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Place `bytes` in `sessionId`'s `scratchpad/attachments/` under `fileName`, or
|
|
63
|
+
* the first free name the suffix rule gives, never overwriting a file. `backend`
|
|
64
|
+
* must already resolve id-free paths against `sessionId` (a bound workspace).
|
|
65
|
+
* The bytes are written and read back exactly, or the placement fails and
|
|
66
|
+
* nothing is left at the path.
|
|
67
|
+
*/
|
|
68
|
+
export function placeAttachment(backend, sessionId, fileName, bytes) {
|
|
69
|
+
if (!isPlainFileName(fileName)) {
|
|
70
|
+
return Promise.resolve({ error: `Cannot place '${fileName}': it is not a plain file name.` });
|
|
71
|
+
}
|
|
72
|
+
return serialized(sessionId, async () => {
|
|
73
|
+
const name = attachmentName(await namesIn(backend), fileName);
|
|
74
|
+
const path = `${ATTACHMENTS_DIR}/${name}`;
|
|
75
|
+
const refused = await writeWorkspaceBytes(backend, path, bytes);
|
|
76
|
+
return refused ? { error: refused } : { path };
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
/** A {@link SessionFiles} over the workspace, binding each session with `bind` (the assembly's session binder). */
|
|
80
|
+
export function createSessionFiles(backend, bind) {
|
|
81
|
+
return {
|
|
82
|
+
kind: (sessionId, path) => bind(sessionId, () => workspaceEntryKind(backend, path)),
|
|
83
|
+
read: (sessionId, path) => bind(sessionId, () => readWorkspaceBytes(backend, path)),
|
|
84
|
+
place: (sessionId, fileName, bytes) => bind(sessionId, () => placeAttachment(backend, sessionId, fileName, bytes)),
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=attachments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attachments.js","sourceRoot":"","sources":["../../src/core/attachments.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,9 +9,10 @@ import type { ReadResult } from "deepagents";
|
|
|
9
9
|
* description the model is handed says so.
|
|
10
10
|
*
|
|
11
11
|
* The classification is `read_file`'s own — the route's `mimeType`, else the
|
|
12
|
-
* extension's
|
|
13
|
-
*
|
|
14
|
-
*
|
|
12
|
+
* extension's — through `isTextMimeType`, which also reads the XML and JSON
|
|
13
|
+
* types a store labels by registration as text, plus two content checks: bytes,
|
|
14
|
+
* and a NUL character (git's and ripgrep's rule), which survives the backend's
|
|
15
|
+
* UTF-8 decoding of an unknown extension.
|
|
15
16
|
*/
|
|
16
17
|
export { BINARY_MIME_TYPES, binaryMimeTypeOf } from "./binary-types.js";
|
|
17
18
|
/**
|
|
@@ -22,8 +23,23 @@ export { BINARY_MIME_TYPES, binaryMimeTypeOf } from "./binary-types.js";
|
|
|
22
23
|
export declare const SHOWN_IMAGE_MIME_TYPES: ReadonlySet<string>;
|
|
23
24
|
/** The MIME type of a path the model may be shown as an image, or `undefined`. */
|
|
24
25
|
export declare function shownImageMimeTypeOf(path: string): string | undefined;
|
|
25
|
-
/**
|
|
26
|
+
/**
|
|
27
|
+
* The types `read_file` renders as text: Deep Agents' own (`text/*`,
|
|
28
|
+
* `application/json`, `application/javascript`, `image/svg+xml`), plus
|
|
29
|
+
* `application/xml` and every structured-syntax `+xml` or `+json` type, each
|
|
30
|
+
* compared without its parameters. An object store labels a file by its
|
|
31
|
+
* registered type, so `word/document.xml` arrives as `application/xml`, and an
|
|
32
|
+
* Office document unpacked into the scratchpad is edited as text.
|
|
33
|
+
*/
|
|
26
34
|
export declare function isTextMimeType(mimeType: string): boolean;
|
|
35
|
+
/**
|
|
36
|
+
* A text read as Deep Agents' `read_file` must be handed it. Its own rule is
|
|
37
|
+
* narrower than {@link isTextMimeType}: handed `application/xml` text it answers
|
|
38
|
+
* with a base64 `file` block. A result under a type it would not read as text is
|
|
39
|
+
* relabelled `text/plain`, the type it reads line by line; any other is unchanged.
|
|
40
|
+
* Only for a result {@link binaryReadError} found to be text.
|
|
41
|
+
*/
|
|
42
|
+
export declare function asTextRead(result: ReadResult): ReadResult;
|
|
27
43
|
/** A byte count as a person reads it: `512 B`, `24.1 KB`, `3.2 MB`. */
|
|
28
44
|
export declare function formatSize(bytes: number): string;
|
|
29
45
|
/**
|
package/dist/core/binary-read.js
CHANGED
|
@@ -9,9 +9,10 @@ import { binaryMimeTypeOf } from "./binary-types.js";
|
|
|
9
9
|
* description the model is handed says so.
|
|
10
10
|
*
|
|
11
11
|
* The classification is `read_file`'s own — the route's `mimeType`, else the
|
|
12
|
-
* extension's
|
|
13
|
-
*
|
|
14
|
-
*
|
|
12
|
+
* extension's — through `isTextMimeType`, which also reads the XML and JSON
|
|
13
|
+
* types a store labels by registration as text, plus two content checks: bytes,
|
|
14
|
+
* and a NUL character (git's and ripgrep's rule), which survives the backend's
|
|
15
|
+
* UTF-8 decoding of an unknown extension.
|
|
15
16
|
*/
|
|
16
17
|
export { BINARY_MIME_TYPES, binaryMimeTypeOf } from "./binary-types.js";
|
|
17
18
|
/**
|
|
@@ -25,13 +26,43 @@ export function shownImageMimeTypeOf(path) {
|
|
|
25
26
|
const mime = binaryMimeTypeOf(path);
|
|
26
27
|
return mime !== undefined && SHOWN_IMAGE_MIME_TYPES.has(mime) ? mime : undefined;
|
|
27
28
|
}
|
|
28
|
-
/** Deep Agents' `isTextMimeType
|
|
29
|
-
|
|
29
|
+
/** Deep Agents' own `isTextMimeType`, which its `read_file` branches on: anything else it hands on as a base64 block. */
|
|
30
|
+
function deepAgentsReadsAsText(mimeType) {
|
|
30
31
|
return (mimeType.startsWith("text/") ||
|
|
31
32
|
mimeType === "application/json" ||
|
|
32
33
|
mimeType === "application/javascript" ||
|
|
33
34
|
mimeType === "image/svg+xml");
|
|
34
35
|
}
|
|
36
|
+
/** A MIME type's essence: lowercased, its parameters (`; charset=utf-8`) dropped. */
|
|
37
|
+
function essenceOf(mimeType) {
|
|
38
|
+
return (mimeType.split(";")[0] ?? "").trim().toLowerCase();
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* The types `read_file` renders as text: Deep Agents' own (`text/*`,
|
|
42
|
+
* `application/json`, `application/javascript`, `image/svg+xml`), plus
|
|
43
|
+
* `application/xml` and every structured-syntax `+xml` or `+json` type, each
|
|
44
|
+
* compared without its parameters. An object store labels a file by its
|
|
45
|
+
* registered type, so `word/document.xml` arrives as `application/xml`, and an
|
|
46
|
+
* Office document unpacked into the scratchpad is edited as text.
|
|
47
|
+
*/
|
|
48
|
+
export function isTextMimeType(mimeType) {
|
|
49
|
+
const essence = essenceOf(mimeType);
|
|
50
|
+
return (deepAgentsReadsAsText(essence) ||
|
|
51
|
+
essence === "application/xml" ||
|
|
52
|
+
essence.endsWith("+xml") ||
|
|
53
|
+
essence.endsWith("+json"));
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* A text read as Deep Agents' `read_file` must be handed it. Its own rule is
|
|
57
|
+
* narrower than {@link isTextMimeType}: handed `application/xml` text it answers
|
|
58
|
+
* with a base64 `file` block. A result under a type it would not read as text is
|
|
59
|
+
* relabelled `text/plain`, the type it reads line by line; any other is unchanged.
|
|
60
|
+
* Only for a result {@link binaryReadError} found to be text.
|
|
61
|
+
*/
|
|
62
|
+
export function asTextRead(result) {
|
|
63
|
+
const { mimeType } = result;
|
|
64
|
+
return mimeType === undefined || deepAgentsReadsAsText(mimeType) ? result : { ...result, mimeType: "text/plain" };
|
|
65
|
+
}
|
|
35
66
|
/** Byte length of non-string content: bytes, or the numeric-key object they become once serialized. */
|
|
36
67
|
function byteLength(content) {
|
|
37
68
|
if (ArrayBuffer.isView(content))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"binary-read.js","sourceRoot":"","sources":["../../src/core/binary-read.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD
|
|
1
|
+
{"version":3,"file":"binary-read.js","sourceRoot":"","sources":["../../src/core/binary-read.ts"],"names":[],"mappings":"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"}
|
package/dist/core/events.d.ts
CHANGED
|
@@ -246,6 +246,12 @@ export type WorkflowEventPayload = {
|
|
|
246
246
|
state: string;
|
|
247
247
|
/** The child workflow slug. */
|
|
248
248
|
workflow: string;
|
|
249
|
+
/**
|
|
250
|
+
* The child's session id below the root session (`1`, `2`, `1~1` for the
|
|
251
|
+
* first dispatch made inside `1`): unique across the turn's whole tree,
|
|
252
|
+
* and the same name a pending delegation and the child's session id use.
|
|
253
|
+
* A refused dispatch takes its number too.
|
|
254
|
+
*/
|
|
249
255
|
dispatchId: string;
|
|
250
256
|
/**
|
|
251
257
|
* The tool call that started it, when one did. Concurrent sub-runs differ
|
package/dist/core/events.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/core/events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAIrD;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAC;AAS1C,0EAA0E;AAC1E,MAAM,UAAU,WAAW,CAAC,MAAuB;IACjD,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC;AAC3D,CAAC;
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/core/events.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,28 @@ export interface FileOperationDone {
|
|
|
10
10
|
export type FileOperationResult = FileOperationDone | {
|
|
11
11
|
error: string;
|
|
12
12
|
};
|
|
13
|
+
/**
|
|
14
|
+
* What `path` names, by a listing of its parent: a file, a folder, or nothing.
|
|
15
|
+
* A listing rather than a read, so a large file is never loaded to learn that it
|
|
16
|
+
* exists. A path that does not canonicalize names nothing.
|
|
17
|
+
*/
|
|
18
|
+
export declare function workspaceEntryKind(backend: BackendProtocolV2, path: string): Promise<"file" | "directory" | "missing">;
|
|
19
|
+
/**
|
|
20
|
+
* One workspace file's exact bytes, or why they cannot be read — the refusals
|
|
21
|
+
* `copy_file` meets, worded for a copy. The runtime's own cross-session copies
|
|
22
|
+
* (a sub-workflow's `file` arguments and returns) read through this.
|
|
23
|
+
*/
|
|
24
|
+
export declare function readWorkspaceBytes(backend: BackendProtocolV2, path: string): Promise<{
|
|
25
|
+
bytes: Uint8Array;
|
|
26
|
+
} | {
|
|
27
|
+
error: string;
|
|
28
|
+
}>;
|
|
29
|
+
/**
|
|
30
|
+
* Write `bytes` at `path`, a path no file holds, and confirm the store kept
|
|
31
|
+
* them: `null`, or why not, with nothing left behind. The exact-bytes guarantee
|
|
32
|
+
* `copy_file` gives — never a lossy text write of a file that is not text.
|
|
33
|
+
*/
|
|
34
|
+
export declare function writeWorkspaceBytes(backend: BackendProtocolV2, path: string, bytes: Uint8Array): Promise<string | null>;
|
|
13
35
|
/** Copy one workspace file. Paths in any spelling; the result names them in canonical form. */
|
|
14
36
|
export declare function copyWorkspaceFile(backend: BackendProtocolV2, source: string, destination: string, options?: {
|
|
15
37
|
overwrite?: boolean;
|
|
@@ -168,6 +168,12 @@ async function writeDestination(backend, path, bytes, verb, fresh) {
|
|
|
168
168
|
const back = await readBack(backend, path);
|
|
169
169
|
return back !== null && sameBytes(back, bytes);
|
|
170
170
|
};
|
|
171
|
+
// Bytes no text channel carries, to a store with no raw one: refused before
|
|
172
|
+
// anything is written, rather than claiming the path and leaving it behind.
|
|
173
|
+
if (!binaryType && text === null && !backend.uploadFiles) {
|
|
174
|
+
return (`Cannot ${verb} to '${path}': the store serving it holds files of this type as text, this file is ` +
|
|
175
|
+
`not text, and the store cannot take raw bytes. Nothing was written.`);
|
|
176
|
+
}
|
|
171
177
|
if (binaryType || text !== null) {
|
|
172
178
|
const content = binaryType ? Buffer.from(bytes).toString("base64") : text;
|
|
173
179
|
const refused = await attempt(path, verb, async () => backend.write(keyOf(path), content));
|
|
@@ -234,6 +240,54 @@ async function precheckTransfer(backend, verb, source, destination, overwrite) {
|
|
|
234
240
|
}
|
|
235
241
|
return { from, to, fresh: !existed };
|
|
236
242
|
}
|
|
243
|
+
/**
|
|
244
|
+
* What `path` names, by a listing of its parent: a file, a folder, or nothing.
|
|
245
|
+
* A listing rather than a read, so a large file is never loaded to learn that it
|
|
246
|
+
* exists. A path that does not canonicalize names nothing.
|
|
247
|
+
*/
|
|
248
|
+
export async function workspaceEntryKind(backend, path) {
|
|
249
|
+
const resolved = canonicalizeRelPath(path);
|
|
250
|
+
if (resolved.escapes || resolved.path === "")
|
|
251
|
+
return "missing";
|
|
252
|
+
const at = resolved.path.lastIndexOf("/");
|
|
253
|
+
const parent = at < 0 ? "" : resolved.path.slice(0, at);
|
|
254
|
+
const name = resolved.path.slice(at + 1);
|
|
255
|
+
try {
|
|
256
|
+
const listing = await backend.ls(keyOf(parent));
|
|
257
|
+
for (const entry of listing.files ?? []) {
|
|
258
|
+
const trimmed = entry.path.replace(/\/+$/, "");
|
|
259
|
+
if (trimmed.slice(trimmed.lastIndexOf("/") + 1) !== name)
|
|
260
|
+
continue;
|
|
261
|
+
return entry.is_dir || entry.path.endsWith("/") ? "directory" : "file";
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
catch {
|
|
265
|
+
// An unlistable parent holds nothing this can name.
|
|
266
|
+
}
|
|
267
|
+
return "missing";
|
|
268
|
+
}
|
|
269
|
+
/**
|
|
270
|
+
* One workspace file's exact bytes, or why they cannot be read — the refusals
|
|
271
|
+
* `copy_file` meets, worded for a copy. The runtime's own cross-session copies
|
|
272
|
+
* (a sub-workflow's `file` arguments and returns) read through this.
|
|
273
|
+
*/
|
|
274
|
+
export async function readWorkspaceBytes(backend, path) {
|
|
275
|
+
const canonical = canonicalPaths("copy", path);
|
|
276
|
+
if ("error" in canonical)
|
|
277
|
+
return canonical;
|
|
278
|
+
return readSource(backend, canonical.paths[0], "copy");
|
|
279
|
+
}
|
|
280
|
+
/**
|
|
281
|
+
* Write `bytes` at `path`, a path no file holds, and confirm the store kept
|
|
282
|
+
* them: `null`, or why not, with nothing left behind. The exact-bytes guarantee
|
|
283
|
+
* `copy_file` gives — never a lossy text write of a file that is not text.
|
|
284
|
+
*/
|
|
285
|
+
export async function writeWorkspaceBytes(backend, path, bytes) {
|
|
286
|
+
const canonical = canonicalPaths("copy", path);
|
|
287
|
+
if ("error" in canonical)
|
|
288
|
+
return canonical.error;
|
|
289
|
+
return writeDestination(backend, canonical.paths[0], bytes, "copy", true);
|
|
290
|
+
}
|
|
237
291
|
/** Copy one workspace file. Paths in any spelling; the result names them in canonical form. */
|
|
238
292
|
export async function copyWorkspaceFile(backend, source, destination, options = {}) {
|
|
239
293
|
const checked = await precheckTransfer(backend, "copy", source, destination, options.overwrite === true);
|