@archmax-ai/harness 0.2.1 → 0.3.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 +11 -2
- package/dist/authoring-skill/archmax-harness/SKILL.md +12 -4
- package/dist/authoring-skill/archmax-harness/references/backend-integration.md +6 -2
- package/dist/authoring-skill/archmax-harness/references/cases.md +2 -1
- package/dist/authoring-skill/archmax-harness/references/hook-and-test-scripts.md +4 -3
- package/dist/authoring-skill/archmax-harness/references/hooks-and-scripts.md +5 -2
- package/dist/authoring-skill/archmax-harness/references/wiring.md +10 -1
- package/dist/authoring-skill/archmax-harness/references/workflow-schema.md +33 -2
- package/dist/authoring-skill/archmax-harness/references/workflow-yaml.md +10 -1
- package/dist/cli/state-flow.js +15 -3
- package/dist/cli/state-flow.js.map +1 -1
- package/dist/cli/turn.d.ts +4 -4
- package/dist/cli/turn.js +27 -4
- package/dist/cli/turn.js.map +1 -1
- package/dist/cli.js +4 -1
- package/dist/cli.js.map +1 -1
- package/dist/core/events.d.ts +10 -0
- package/dist/core/events.js +3 -0
- package/dist/core/events.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/index.d.ts +3 -1
- package/dist/index.js.map +1 -1
- package/dist/machine/machine.js +5 -4
- package/dist/machine/machine.js.map +1 -1
- package/dist/machine/tool-names.d.ts +4 -1
- package/dist/machine/tool-names.js +6 -1
- package/dist/machine/tool-names.js.map +1 -1
- package/dist/public/spec.d.ts +2 -2
- package/dist/public/spec.js +2 -2
- package/dist/public/spec.js.map +1 -1
- package/dist/sandbox/executor.d.ts +7 -0
- package/dist/sandbox/executor.js +11 -4
- package/dist/sandbox/executor.js.map +1 -1
- package/dist/sandbox/prelude.js +35 -5
- package/dist/sandbox/prelude.js.map +1 -1
- package/dist/sandbox/ptc-gateway.d.ts +7 -0
- package/dist/sandbox/ptc-gateway.js +12 -1
- package/dist/sandbox/ptc-gateway.js.map +1 -1
- package/dist/sandbox/tools.js +10 -2
- package/dist/sandbox/tools.js.map +1 -1
- package/dist/sessions/resume.d.ts +29 -2
- package/dist/sessions/resume.js +16 -2
- package/dist/sessions/resume.js.map +1 -1
- package/dist/sessions/summary.d.ts +8 -0
- package/dist/sessions/summary.js +3 -1
- package/dist/sessions/summary.js.map +1 -1
- package/dist/testing/assertions.js +18 -1
- package/dist/testing/assertions.js.map +1 -1
- package/dist/testing/case-document.d.ts +6 -0
- package/dist/testing/case-document.js.map +1 -1
- package/dist/testing/case-schema.js +42 -0
- package/dist/testing/case-schema.js.map +1 -1
- package/dist/testing/driver.js +3 -0
- package/dist/testing/driver.js.map +1 -1
- package/dist/workflow/control-tools.d.ts +30 -4
- package/dist/workflow/control-tools.js +84 -3
- package/dist/workflow/control-tools.js.map +1 -1
- package/dist/workflow/middleware.js +7 -1
- package/dist/workflow/middleware.js.map +1 -1
- package/dist/workflow/session-view.d.ts +5 -0
- package/dist/workflow/session-view.js.map +1 -1
- package/dist/workflow/state.d.ts +20 -0
- package/dist/workflow/state.js +19 -0
- package/dist/workflow/state.js.map +1 -1
- package/dist/workflow/sub-workflow.d.ts +4 -2
- package/dist/workflow/sub-workflow.js +9 -3
- package/dist/workflow/sub-workflow.js.map +1 -1
- package/dist/workflow/tool-service.js +11 -1
- package/dist/workflow/tool-service.js.map +1 -1
- package/dist/workflow/turn-boundary.d.ts +1 -1
- package/dist/workflow/turn-boundary.js +4 -1
- package/dist/workflow/turn-boundary.js.map +1 -1
- package/package.json +1 -1
- package/skills/archmax-harness/SKILL.md +12 -4
- package/skills/archmax-harness/references/backend-integration.md +6 -2
- package/skills/archmax-harness/references/cases.md +2 -1
- package/skills/archmax-harness/references/hook-and-test-scripts.md +4 -3
- package/skills/archmax-harness/references/hooks-and-scripts.md +5 -2
- package/skills/archmax-harness/references/wiring.md +10 -1
- package/skills/archmax-harness/references/workflow-schema.md +33 -2
- package/skills/archmax-harness/references/workflow-yaml.md +10 -1
package/dist/core/events.d.ts
CHANGED
|
@@ -158,6 +158,16 @@ export type WorkflowEventPayload = {
|
|
|
158
158
|
*/
|
|
159
159
|
to: string;
|
|
160
160
|
sessionId: string;
|
|
161
|
+
} | {
|
|
162
|
+
type: "raised";
|
|
163
|
+
/** The state the agent raised in; the session's position stays there. */
|
|
164
|
+
state: string;
|
|
165
|
+
sessionId: string;
|
|
166
|
+
/** The agent's own short code for what failed. */
|
|
167
|
+
code: string;
|
|
168
|
+
reason: string;
|
|
169
|
+
/** The `archmax_raise` call, matching its `tool-called`/`tool-result` pair. */
|
|
170
|
+
callId?: string;
|
|
161
171
|
} | {
|
|
162
172
|
type: "agent-text";
|
|
163
173
|
state: string;
|
package/dist/core/events.js
CHANGED
|
@@ -34,6 +34,7 @@ function defaultLevel(event) {
|
|
|
34
34
|
case "warning":
|
|
35
35
|
case "tool-blocked":
|
|
36
36
|
case "hook-rejected":
|
|
37
|
+
case "raised":
|
|
37
38
|
return "warn";
|
|
38
39
|
case "tool-result":
|
|
39
40
|
case "rubric-result":
|
|
@@ -154,6 +155,8 @@ export function renderEventLine(event) {
|
|
|
154
155
|
`at '${event.state}' (session ${event.sessionId})`);
|
|
155
156
|
case "delivered":
|
|
156
157
|
return `[workflow] '${event.trigger}' delivered to '${event.state}', resuming it (session ${event.sessionId})`;
|
|
158
|
+
case "raised":
|
|
159
|
+
return `[workflow] '${event.state}' raised '${event.code}', the session failed: ${event.reason} (session ${event.sessionId})`;
|
|
157
160
|
case "variables-set":
|
|
158
161
|
return `[workflow] variables set${event.state ? ` in ${event.state}` : ""}: ${event.names.join(", ")}${event.locked ? " (locked)" : ""}`;
|
|
159
162
|
case "title-set":
|
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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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
// Generated from platform-prompt.md by scripts/generate-platform-prompt.mjs. Do not edit.
|
|
2
2
|
/** The bundled platform prompt: how to move through the graph and which tools are the runtime's. */
|
|
3
|
-
export const PLATFORM_PROMPT = "# Graph state execution\n\nYou run inside a **declarative workflow graph**: you occupy one **state** at a\ntime, and that state's spec governs which tools you may call and which files you\nmay read or write.\n\n## How you move\n\n1. **Name the run first.** Before anything else in your first turn, call\n **`archmax_set_variables({ \"variables\": { \"title\": \"<a few words>\" } })`** — see\n \"Naming the run\" below.\n2. Do the current state's work. `scratchpad/` is always open, so it is where a\n file goes when nothing else was named — but it is a default, not a limit: when\n the state's instructions or its listed mounts name a writable place, write\n there instead of copying into `scratchpad/`.\n3. Call **`archmax_advance({ \"to\": \"<next>\", \"reason\": \"<one sentence>\" })`**,\n choosing `to` from the transitions listed under \"Current state\" and using\n their descriptions to decide. `to` takes the target's **slug** — the\n backticked token on the transition line. A parenthesized note carries the\n edge's declared type (`approve`, `reject`, `refine`), whether the target is a\n **human decision node**, and whether it is **terminal**. A state with no\n transitions says so: that is where the run ends, so finish its work and stop.\n4. The runtime validates the edge, runs this state's `after` hook and then the\n target's `before` hook — either may send you back to correct or veto the\n move — and only then unlocks the next state's tools.\n\n**One transition per message.** A second `archmax_advance` alongside the first is\nrefused. Chain states over successive turns, never in a single message.\n\n**A conversation keeps its position.** A message arriving after your last turn\nleaves you in the state that turn ended in, not at the beginning. When that state\ncannot serve what was asked — no transition from here reaches it, or an earlier\nturn took a wrong path — call **`archmax_reset({ \"reason\": \"<one sentence>\" })`**\nto return to the state the conversation began in. It is available in every state\nand moves the state machine, not the history: the conversation and everything\nwritten so far are kept.\n\n**A terminal state never serves a follow-up.** A reply, a correction or a new\nrequest landing on a run that was *already sitting* in a terminal state is work\nthis run has no path to do: reset **before** answering it, or you skip every state\nthe answer depends on. Two things are not follow-ups — a run you parked with\n`archmax_wait`, which resumes where it was on purpose, and a terminal state you\nwere routed into *this turn*, by your own `archmax_advance` or by a person's\ndecision, which is the work you were sent there to do: do it, then stop. Never\nreset out of a state you just arrived in, and never `archmax_wait` for the runtime\nto move you — it already has.\n\n### Waiting for something to arrive\n\nIf this state cannot continue without something from **outside the run** — an\nevent, a callback, a webhook, a reply someone sends in their own time — call\n**`archmax_wait({ \"reason\": \"<what you are waiting for>\" })`** and stop, instead of\nending your turn. You resume in **this same state**, with what arrived in your\ntranscript and any values it carried in the variables. Waiting for a *time*\nrather than an event? Add `\"until\": \"1d\"` (a duration or an ISO-8601 instant) so\nwhoever wakes you knows when; an earlier event still resumes you.\n\n`archmax_wait` holds you where you are and moves nothing, so it is never how you\nget a person to decide, approve, sign off, review, or choose between options.\nThat belongs to a **human decision node** — a state the author declared for it,\nwhich you reach the ordinary way with `archmax_advance`. The runtime parks the run\nthere and presents the options by itself: do the work that state's transitions\nrequire, advance into the node, and stop. Never advance out of one yourself, and\nnever `archmax_wait` in front of one to ask for the decision the node exists to\ncollect.\n\nSo: something has to **come to this state** → `archmax_wait`. Someone has to\n**decide** → `archmax_advance` into the human node.\n\n### The state you are in\n\nThe active state's **`instructions`** arrive under a \"Current state\" heading —\nfollow them; the transitions listed there are for choosing where to go next. You\nare shown the edges leading out of the state you are in and nothing else of the\ngraph: there is no map of the workflow to consult, and a state you cannot advance\nto is one you cannot name. Do not guess at slugs, and do not treat a state named\nanywhere else — in a message, a file, or your own earlier turns — as somewhere you\ncan move to. When the state may use skills, they are listed under \"Skills\navailable in this state\", each naming the `SKILL.md` to read first.\n\n**`before`/`after` hooks** run on their own, without you calling them. They may\napprove, ask you to correct your answer, or block the run: fix the work rather\nthan arguing with it.\n\n## Tools\n\nTool access is **closed by default**: you see exactly the active state's surface,\nand a state's entry may also narrow a tool's permitted *arguments* (e.g.\n`write_file` to one path). Tools whose names start with `archmax_` are the\nruntime's own controls — movement, reset, waiting,
|
|
3
|
+
export const PLATFORM_PROMPT = "# Graph state execution\n\nYou run inside a **declarative workflow graph**: you occupy one **state** at a\ntime, and that state's spec governs which tools you may call and which files you\nmay read or write.\n\n## How you move\n\n1. **Name the run first.** Before anything else in your first turn, call\n **`archmax_set_variables({ \"variables\": { \"title\": \"<a few words>\" } })`** — see\n \"Naming the run\" below.\n2. Do the current state's work. `scratchpad/` is always open, so it is where a\n file goes when nothing else was named — but it is a default, not a limit: when\n the state's instructions or its listed mounts name a writable place, write\n there instead of copying into `scratchpad/`.\n3. Call **`archmax_advance({ \"to\": \"<next>\", \"reason\": \"<one sentence>\" })`**,\n choosing `to` from the transitions listed under \"Current state\" and using\n their descriptions to decide. `to` takes the target's **slug** — the\n backticked token on the transition line. A parenthesized note carries the\n edge's declared type (`approve`, `reject`, `refine`), whether the target is a\n **human decision node**, and whether it is **terminal**. A state with no\n transitions says so: that is where the run ends, so finish its work and stop.\n4. The runtime validates the edge, runs this state's `after` hook and then the\n target's `before` hook — either may send you back to correct or veto the\n move — and only then unlocks the next state's tools.\n\n**One transition per message.** A second `archmax_advance` alongside the first is\nrefused. Chain states over successive turns, never in a single message.\n\n**A conversation keeps its position.** A message arriving after your last turn\nleaves you in the state that turn ended in, not at the beginning. When that state\ncannot serve what was asked — no transition from here reaches it, or an earlier\nturn took a wrong path — call **`archmax_reset({ \"reason\": \"<one sentence>\" })`**\nto return to the state the conversation began in. It is available in every state\nand moves the state machine, not the history: the conversation and everything\nwritten so far are kept.\n\n**A terminal state never serves a follow-up.** A reply, a correction or a new\nrequest landing on a run that was *already sitting* in a terminal state is work\nthis run has no path to do: reset **before** answering it, or you skip every state\nthe answer depends on. Two things are not follow-ups — a run you parked with\n`archmax_wait`, which resumes where it was on purpose, and a terminal state you\nwere routed into *this turn*, by your own `archmax_advance` or by a person's\ndecision, which is the work you were sent there to do: do it, then stop. Never\nreset out of a state you just arrived in, and never `archmax_wait` for the runtime\nto move you — it already has.\n\n### Waiting for something to arrive\n\nIf this state cannot continue without something from **outside the run** — an\nevent, a callback, a webhook, a reply someone sends in their own time — call\n**`archmax_wait({ \"reason\": \"<what you are waiting for>\" })`** and stop, instead of\nending your turn. You resume in **this same state**, with what arrived in your\ntranscript and any values it carried in the variables. Waiting for a *time*\nrather than an event? Add `\"until\": \"1d\"` (a duration or an ISO-8601 instant) so\nwhoever wakes you knows when; an earlier event still resumes you.\n\n`archmax_wait` holds you where you are and moves nothing, so it is never how you\nget a person to decide, approve, sign off, review, or choose between options.\nThat belongs to a **human decision node** — a state the author declared for it,\nwhich you reach the ordinary way with `archmax_advance`. The runtime parks the run\nthere and presents the options by itself: do the work that state's transitions\nrequire, advance into the node, and stop. Never advance out of one yourself, and\nnever `archmax_wait` in front of one to ask for the decision the node exists to\ncollect.\n\nSo: something has to **come to this state** → `archmax_wait`. Someone has to\n**decide** → `archmax_advance` into the human node.\n\n### When the work fails\n\nIf the task **cannot be completed** — a system it depends on keeps failing, what\nit needs does not exist, the request is one this workflow cannot serve — and you\nhave already tried to recover (a retry, another tool, another approach), call\n**`archmax_raise({ \"code\": \"<short-token>\", \"reason\": \"<what failed>\" })`**. It\nends the session as a failure, from any state: nothing runs after it, and whoever\nstarted the run reads your `code` (a short token such as `orders-unavailable`)\nand your `reason`. Call it alone, with no other tool call in the same message;\nanything the person should read goes in that message's text.\n\nA run that ends without `archmax_raise` is a success, so it is never how you\nfinish work that worked — and never a stand-in for the others: something has to\n**arrive** → `archmax_wait`; a **wrong branch** → `archmax_reset`; someone has\nto **decide** → `archmax_advance` into the human node.\n\n### The state you are in\n\nThe active state's **`instructions`** arrive under a \"Current state\" heading —\nfollow them; the transitions listed there are for choosing where to go next. You\nare shown the edges leading out of the state you are in and nothing else of the\ngraph: there is no map of the workflow to consult, and a state you cannot advance\nto is one you cannot name. Do not guess at slugs, and do not treat a state named\nanywhere else — in a message, a file, or your own earlier turns — as somewhere you\ncan move to. When the state may use skills, they are listed under \"Skills\navailable in this state\", each naming the `SKILL.md` to read first.\n\n**`before`/`after` hooks** run on their own, without you calling them. They may\napprove, ask you to correct your answer, or block the run: fix the work rather\nthan arguing with it.\n\n## Tools\n\nTool access is **closed by default**: you see exactly the active state's surface,\nand a state's entry may also narrow a tool's permitted *arguments* (e.g.\n`write_file` to one path). Tools whose names start with `archmax_` are the\nruntime's own controls — movement, reset, waiting, ending a failed session, the\nsandbox, and the run's variables (`archmax_get_variables` /\n`archmax_set_variables`); everything else acts\non the workspace or on the systems this workspace integrates. A blocked call names\nthe tool, the state, and the policy — fix the call, or advance if you are done.\n\n**Write code instead of many calls.** **`archmax_eval({ \"code\": \"…\" })`** —\navailable in every state — evaluates JavaScript in a sandbox where `tools.*`\ncalls the same tools you have, governed exactly as your own calls are. Reach for\nit by default whenever the work is a loop, a filter, arithmetic, or more than\nabout two calls whose results feed each other: it is one round trip instead of\nmany, and **only your last expression and whatever you `console.log` come back to\nyou**, so the bulk of what those tools returned never enters the conversation and\nis never re-sent on later calls. The REPL keeps its state between calls, so a\nvalue or helper from one is still in scope in the next. Your code cannot read the\nrun's variables: interpolate a scalar one into it with `${{name}}` (below), and\nuse **`archmax_run({ \"file_path\": \"…\" })`** — also in every state — when the code\nneeds whole structured values, which an authored script receives as\n`args.variables`. It runs the same way, subject to any path constraint the state\nplaces on it.\n\n**Naming the run.** `title` is a reserved run variable holding a short label for\nthe task you are doing — one line, a handful of words, enough that someone\nscanning a list of runs knows which one this is:\n\n```\narchmax_set_variables({ \"variables\": { \"title\": \"Refund for order A-1042\" } })\n```\n\nThis is step 1 above, and it is not optional. Write it from whatever the request\nalready tells you, **before** the current state's own work and before any other\ntool call — it is a label, not a plan, so never investigate or read anything to\nproduce one, and it still goes first when the state's instructions tell you to do\nsomething else first. Update it with the same call whenever the task turns into\nsomething the old title no longer describes; a small refinement of the same task\ndoes not need one. Never pass `lock` with it: the title has to stay correctable\nfor the whole run, so that call is refused.\n\n**Reference a run variable instead of retyping it.** Anywhere a tool argument is\ntext, `${{name}}` (or `${{name.path.to.value}}`) is replaced with that variable's\nvalue before the call runs. A reference may sit **inside** a longer string and\nrepeat:\n\n```\n\"Thanks — your refund is on its way.\n\n--- Original message ---\n\n${{inbound.text}}\"\n```\n\nPrefer the reference to writing the value out. It is what you spend tokens on and\nwhat stays in the transcript — the full value goes to the tool and no further —\nand unlike a retyped copy it cannot paraphrase, truncate or mistype.\n`archmax_get_variables` shows what is set; a reference that does not resolve\nrefuses the call and tells you why, so fix it and retry. To write the characters\n`${{…}}` literally, double the dollar: `$${{name}}`.\n";
|
|
4
4
|
//# sourceMappingURL=platform-prompt.generated.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform-prompt.generated.js","sourceRoot":"","sources":["../../src/core/platform-prompt.generated.ts"],"names":[],"mappings":"AAAA,0FAA0F;AAE1F,oGAAoG;AACpG,MAAM,CAAC,MAAM,eAAe,GAAW,
|
|
1
|
+
{"version":3,"file":"platform-prompt.generated.js","sourceRoot":"","sources":["../../src/core/platform-prompt.generated.ts"],"names":[],"mappings":"AAAA,0FAA0F;AAE1F,oGAAoG;AACpG,MAAM,CAAC,MAAM,eAAe,GAAW,kqSAAkqS,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -69,7 +69,9 @@ ReplyOutcome,
|
|
|
69
69
|
/** The outcome of delivering into a session parked with `archmax_wait`. */
|
|
70
70
|
DeliverOutcome,
|
|
71
71
|
/** The child a parked session's pending decision belongs to (`Outcome.delegation`). */
|
|
72
|
-
DelegatedPark,
|
|
72
|
+
DelegatedPark,
|
|
73
|
+
/** How a finished session ended (`Outcome.exit`): a success, or the failure `archmax_raise` declared. */
|
|
74
|
+
SessionExit, } from "./sessions/resume.js";
|
|
73
75
|
/**
|
|
74
76
|
* Read a session that must be parked in `status` — the checkpointed status **and**
|
|
75
77
|
* a live suspension — or `null`. What every resume asks before touching the graph.
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,iFAAiF;AAEjF;;;;;GAKG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,qDAAqD;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/machine/machine.js
CHANGED
|
@@ -7,7 +7,7 @@ import { describeGlob } from "./variables.js";
|
|
|
7
7
|
import { loadMachineSpec } from "./load-spec.js";
|
|
8
8
|
import { signatureForTrigger } from "./signature.js";
|
|
9
9
|
import { MANUAL_TRIGGER, triggerBindings, } from "./triggers.js";
|
|
10
|
-
import { ADVANCE_TOOL, ALWAYS_ALLOWED_TOOLS, UNGRANTABLE_TOOLS, ESSENTIAL_TOOLS, GET_VARIABLES_TOOL, RESET_TOOL, SET_VARIABLES_TOOL, WAIT_TOOL, workflowSlugFromToolName, } from "./tool-names.js";
|
|
10
|
+
import { ADVANCE_TOOL, ALWAYS_ALLOWED_TOOLS, UNGRANTABLE_TOOLS, ESSENTIAL_TOOLS, GET_VARIABLES_TOOL, RESET_TOOL, SET_VARIABLES_TOOL, WAIT_TOOL, RAISE_TOOL, workflowSlugFromToolName, } from "./tool-names.js";
|
|
11
11
|
import { specDisabled, } from "./types.js";
|
|
12
12
|
export { ALWAYS_ALLOWED_TOOLS, ESSENTIAL_TOOLS, UNGRANTABLE_TOOLS };
|
|
13
13
|
/**
|
|
@@ -425,11 +425,12 @@ export class WorkflowMachine {
|
|
|
425
425
|
disclosed.add(tool);
|
|
426
426
|
if (!this.isTerminal(state))
|
|
427
427
|
disclosed.add(ADVANCE_TOOL);
|
|
428
|
-
// Reset, wait and the variable tools are disclosed everywhere,
|
|
429
|
-
// states included: restarting, parking for a reply, and
|
|
430
|
-
// memory all still apply once a run has answered.
|
|
428
|
+
// Reset, wait, raise and the variable tools are disclosed everywhere,
|
|
429
|
+
// terminal states included: restarting, parking for a reply, failing, and
|
|
430
|
+
// the run's working memory all still apply once a run has answered.
|
|
431
431
|
disclosed.add(RESET_TOOL);
|
|
432
432
|
disclosed.add(WAIT_TOOL);
|
|
433
|
+
disclosed.add(RAISE_TOOL);
|
|
433
434
|
disclosed.add(GET_VARIABLES_TOOL);
|
|
434
435
|
disclosed.add(SET_VARIABLES_TOOL);
|
|
435
436
|
// A bare denial removes the tool from the model's picture entirely; a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"machine.js","sourceRoot":"","sources":["../../src/machine/machine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"machine.js","sourceRoot":"","sources":["../../src/machine/machine.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,8 @@ export declare const ADVANCE_TOOL = "archmax_advance";
|
|
|
14
14
|
export declare const RESET_TOOL = "archmax_reset";
|
|
15
15
|
/** Park the run in the state the call is made in, awaiting an external event. */
|
|
16
16
|
export declare const WAIT_TOOL = "archmax_wait";
|
|
17
|
+
/** End the session as a failure, with a code and a reason the host reads. */
|
|
18
|
+
export declare const RAISE_TOOL = "archmax_raise";
|
|
17
19
|
/** Evaluate inline JavaScript in the QuickJS sandbox (the model's code interpreter). */
|
|
18
20
|
export declare const EVAL_TOOL = "archmax_eval";
|
|
19
21
|
/** Execute a workspace script *file* in the QuickJS sandbox. */
|
|
@@ -61,7 +63,8 @@ export declare function isReservedToolName(name: string): boolean;
|
|
|
61
63
|
* Tools permitted in every state regardless of its `tools` governance: the
|
|
62
64
|
* runtime's own controls. `archmax_advance`'s target is still checked against the
|
|
63
65
|
* state's `transitions`, and a variable write is decided by whether the target
|
|
64
|
-
* is locked. `
|
|
66
|
+
* is locked. `tools.forbid_always` (or a state's `tools.forbid`) can still block
|
|
67
|
+
* any of them.
|
|
65
68
|
*/
|
|
66
69
|
export declare const ALWAYS_ALLOWED_TOOLS: ReadonlySet<string>;
|
|
67
70
|
/**
|
|
@@ -14,6 +14,8 @@ export const ADVANCE_TOOL = "archmax_advance";
|
|
|
14
14
|
export const RESET_TOOL = "archmax_reset";
|
|
15
15
|
/** Park the run in the state the call is made in, awaiting an external event. */
|
|
16
16
|
export const WAIT_TOOL = "archmax_wait";
|
|
17
|
+
/** End the session as a failure, with a code and a reason the host reads. */
|
|
18
|
+
export const RAISE_TOOL = "archmax_raise";
|
|
17
19
|
/** Evaluate inline JavaScript in the QuickJS sandbox (the model's code interpreter). */
|
|
18
20
|
export const EVAL_TOOL = "archmax_eval";
|
|
19
21
|
/** Execute a workspace script *file* in the QuickJS sandbox. */
|
|
@@ -66,6 +68,7 @@ export const HARNESS_CONTROL_TOOLS = new Set([
|
|
|
66
68
|
ADVANCE_TOOL,
|
|
67
69
|
RESET_TOOL,
|
|
68
70
|
WAIT_TOOL,
|
|
71
|
+
RAISE_TOOL,
|
|
69
72
|
EVAL_TOOL,
|
|
70
73
|
RUN_TOOL,
|
|
71
74
|
GET_VARIABLES_TOOL,
|
|
@@ -79,12 +82,14 @@ export function isReservedToolName(name) {
|
|
|
79
82
|
* Tools permitted in every state regardless of its `tools` governance: the
|
|
80
83
|
* runtime's own controls. `archmax_advance`'s target is still checked against the
|
|
81
84
|
* state's `transitions`, and a variable write is decided by whether the target
|
|
82
|
-
* is locked. `
|
|
85
|
+
* is locked. `tools.forbid_always` (or a state's `tools.forbid`) can still block
|
|
86
|
+
* any of them.
|
|
83
87
|
*/
|
|
84
88
|
export const ALWAYS_ALLOWED_TOOLS = new Set([
|
|
85
89
|
ADVANCE_TOOL,
|
|
86
90
|
RESET_TOOL,
|
|
87
91
|
WAIT_TOOL,
|
|
92
|
+
RAISE_TOOL,
|
|
88
93
|
GET_VARIABLES_TOOL,
|
|
89
94
|
SET_VARIABLES_TOOL,
|
|
90
95
|
]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-names.js","sourceRoot":"","sources":["../../src/machine/tool-names.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,gFAAgF;AAChF,MAAM,CAAC,MAAM,mBAAmB,GAAG,UAAU,CAAC;AAE9C,0EAA0E;AAC1E,MAAM,CAAC,MAAM,YAAY,GAAG,iBAAiB,CAAC;AAC9C,qDAAqD;AACrD,MAAM,CAAC,MAAM,UAAU,GAAG,eAAe,CAAC;AAC1C,iFAAiF;AACjF,MAAM,CAAC,MAAM,SAAS,GAAG,cAAc,CAAC;AACxC,wFAAwF;AACxF,MAAM,CAAC,MAAM,SAAS,GAAG,cAAc,CAAC;AACxC,gEAAgE;AAChE,MAAM,CAAC,MAAM,QAAQ,GAAG,aAAa,CAAC;AACtC,gCAAgC;AAChC,MAAM,CAAC,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;AAC1D,oDAAoD;AACpD,MAAM,CAAC,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;AAE1D;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,mBAAmB,CAAC;AAExD,gEAAgE;AAChE,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,OAAO,GAAG,oBAAoB,GAAG,IAAI,EAAE,CAAC;AAC1C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CAAC,IAAY;IACnD,OAAO,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC;QAC1C,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,MAAM,CAAC;QACzC,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,cAAc,CAAC;AAExC,2DAA2D;AAC3D,MAAM,CAAC,MAAM,qBAAqB,GAAwB,IAAI,GAAG,CAAC;IAChE,YAAY;IACZ,UAAU;IACV,SAAS;IACT,SAAS;IACT,QAAQ;IACR,kBAAkB;IAClB,kBAAkB;CACnB,CAAC,CAAC;AAEH,6DAA6D;AAC7D,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;AAC9C,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"tool-names.js","sourceRoot":"","sources":["../../src/machine/tool-names.ts"],"names":[],"mappings":"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"}
|
package/dist/public/spec.d.ts
CHANGED
|
@@ -113,12 +113,12 @@ resolvePath,
|
|
|
113
113
|
/** Substitute every reference in a text against a variable store. */
|
|
114
114
|
resolveText, } from "../machine/variables.js";
|
|
115
115
|
export type { VariableReference, VariableStore, VariableEntry } from "../machine/variables.js";
|
|
116
|
-
export { ARCHMAX_TOOL_PREFIX, ADVANCE_TOOL, RESET_TOOL, WAIT_TOOL, EVAL_TOOL, RUN_TOOL, GET_VARIABLES_TOOL, SET_VARIABLES_TOOL,
|
|
116
|
+
export { ARCHMAX_TOOL_PREFIX, ADVANCE_TOOL, RESET_TOOL, WAIT_TOOL, RAISE_TOOL, EVAL_TOOL, RUN_TOOL, GET_VARIABLES_TOOL, SET_VARIABLES_TOOL,
|
|
117
117
|
/** The tool name a runtime note's call pair wears; registered nowhere. */
|
|
118
118
|
NOTE_TOOL, WORKFLOW_TOOL_PREFIX, workflowToolName, workflowSlugFromToolName, isWorkflowToolName,
|
|
119
119
|
/** Whether a name is one the runtime owns (`archmax_*`). */
|
|
120
120
|
isReservedToolName,
|
|
121
|
-
/** The control tools: advance, reset, wait, get/set variables. */
|
|
121
|
+
/** The control tools: advance, reset, wait, raise, get/set variables, and the two sandbox tools. */
|
|
122
122
|
HARNESS_CONTROL_TOOLS,
|
|
123
123
|
/** Tools permitted in every state regardless of `allow`. */
|
|
124
124
|
ALWAYS_ALLOWED_TOOLS,
|
package/dist/public/spec.js
CHANGED
|
@@ -111,12 +111,12 @@ resolvePath,
|
|
|
111
111
|
/** Substitute every reference in a text against a variable store. */
|
|
112
112
|
resolveText, } from "../machine/variables.js";
|
|
113
113
|
// --- Tool names ---------------------------------------------------------------------
|
|
114
|
-
export { ARCHMAX_TOOL_PREFIX, ADVANCE_TOOL, RESET_TOOL, WAIT_TOOL, EVAL_TOOL, RUN_TOOL, GET_VARIABLES_TOOL, SET_VARIABLES_TOOL,
|
|
114
|
+
export { ARCHMAX_TOOL_PREFIX, ADVANCE_TOOL, RESET_TOOL, WAIT_TOOL, RAISE_TOOL, EVAL_TOOL, RUN_TOOL, GET_VARIABLES_TOOL, SET_VARIABLES_TOOL,
|
|
115
115
|
/** The tool name a runtime note's call pair wears; registered nowhere. */
|
|
116
116
|
NOTE_TOOL, WORKFLOW_TOOL_PREFIX, workflowToolName, workflowSlugFromToolName, isWorkflowToolName,
|
|
117
117
|
/** Whether a name is one the runtime owns (`archmax_*`). */
|
|
118
118
|
isReservedToolName,
|
|
119
|
-
/** The control tools: advance, reset, wait, get/set variables. */
|
|
119
|
+
/** The control tools: advance, reset, wait, raise, get/set variables, and the two sandbox tools. */
|
|
120
120
|
HARNESS_CONTROL_TOOLS,
|
|
121
121
|
/** Tools permitted in every state regardless of `allow`. */
|
|
122
122
|
ALWAYS_ALLOWED_TOOLS,
|
package/dist/public/spec.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spec.js","sourceRoot":"","sources":["../../src/public/spec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,gFAAgF;AAEhF,OAAO;AACL,0HAA0H;AAC1H,iBAAiB;AACjB,iBAAiB;AACjB,kBAAkB;AAClB,0FAA0F;AAC1F,wBAAwB;AACxB,6EAA6E;AAC7E,mBAAmB;AACnB,sBAAsB;AACtB,uBAAuB,EACvB,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB;AACjB,+DAA+D;AAC/D,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACrB,iBAAiB,EACjB,0BAA0B,EAC1B,UAAU,EACV,cAAc,EACd,uBAAuB,EACvB,yBAAyB,EACzB,0BAA0B,EAC1B,qBAAqB,EACrB,gCAAgC,EAChC,yBAAyB,EACzB,qBAAqB,EACrB,oBAAoB;AACpB,gFAAgF;AAChF,kBAAkB;AAClB,uFAAuF;AACvF,oBAAoB;AACpB,yEAAyE;AACzE,gBAAgB;AAChB,0EAA0E;AAC1E,UAAU,GACX,MAAM,2BAA2B,CAAC;AAgCnC,wEAAwE;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,mFAAmF;AAEnF,OAAO;AACL,+FAA+F;AAC/F,YAAY;AACZ,4DAA4D;AAC5D,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AAErC,iEAAiE;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGnD,qFAAqF;AAErF,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAElE,OAAO;AACL,wEAAwE;AACxE,WAAW;AACX,iFAAiF;AACjF,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAE1B,qFAAqF;AAErF,OAAO;AACL,gEAAgE;AAChE,cAAc;AACd,0DAA0D;AAC1D,QAAQ;AACR,wDAAwD;AACxD,SAAS;AACT,yFAAyF;AACzF,iBAAiB,GAClB,MAAM,4BAA4B,CAAC;AAEpC,oFAAoF;AAEpF,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EACL,cAAc,EACd,kBAAkB;AAClB,kEAAkE;AAClE,gBAAgB;AAChB,kEAAkE;AAClE,gBAAgB;AAChB,qHAAqH;AACrH,mBAAmB;AACnB,8EAA8E;AAC9E,eAAe;AACf,0CAA0C;AAC1C,eAAe;AACf,iEAAiE;AACjE,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAShC,OAAO;AACL,iGAAiG;AACjG,eAAe;AACf,+FAA+F;AAC/F,kBAAkB;AAClB,kGAAkG;AAClG,mBAAmB;AACnB,sEAAsE;AACtE,mBAAmB;AACnB,4FAA4F;AAC5F,oBAAoB,GACrB,MAAM,yBAAyB,CAAC;AAQjC,OAAO,EACL,qBAAqB;AACrB,sEAAsE;AACtE,gBAAgB;AAChB,qEAAqE;AACrE,cAAc,EACd,gBAAgB;AAChB,2DAA2D;AAC3D,oBAAoB;AACpB,kDAAkD;AAClD,eAAe;AACf,qEAAqE;AACrE,cAAc;AACd,wDAAwD;AACxD,WAAW;AACX,qEAAqE;AACrE,WAAW,GACZ,MAAM,yBAAyB,CAAC;AAGjC,uFAAuF;AAEvF,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,SAAS,EACT,SAAS,EACT,QAAQ,EACR,kBAAkB,EAClB,kBAAkB;AAClB,0EAA0E;AAC1E,SAAS,EACT,oBAAoB,EACpB,gBAAgB,EAChB,wBAAwB,EACxB,kBAAkB;AAClB,4DAA4D;AAC5D,kBAAkB;AAClB,
|
|
1
|
+
{"version":3,"file":"spec.js","sourceRoot":"","sources":["../../src/public/spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,13 @@ export interface ScriptRunParams {
|
|
|
16
16
|
* bespoke callers that assemble their own preamble leave it off.
|
|
17
17
|
*/
|
|
18
18
|
prelude?: boolean;
|
|
19
|
+
/**
|
|
20
|
+
* The tool names a `ptc` script lists under `tools`: the active state's
|
|
21
|
+
* surface, re-applied at the start of this evaluation. Set by the agent's two
|
|
22
|
+
* sandbox tools only; absent, `tools` lists every tool the session injected,
|
|
23
|
+
* which is what a lifecycle hook keeps.
|
|
24
|
+
*/
|
|
25
|
+
surface?: readonly string[];
|
|
19
26
|
}
|
|
20
27
|
export interface ScriptOutcome {
|
|
21
28
|
ok: boolean;
|
package/dist/sandbox/executor.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { transformForEval } from "@langchain/quickjs";
|
|
1
|
+
import { toCamelCase, transformForEval } from "@langchain/quickjs";
|
|
2
2
|
import { normalizeRelPath } from "../core/workspace.js";
|
|
3
3
|
import { readPrelude } from "./prelude.js";
|
|
4
4
|
import { prepareHookSource } from "./imports.js";
|
|
@@ -25,6 +25,11 @@ function sandboxContext(params) {
|
|
|
25
25
|
return params.lifecycle ? "lifecycle-hook" : "ptc";
|
|
26
26
|
}
|
|
27
27
|
const argsAssignment = (args) => `globalThis.args = ${JSON.stringify(args ?? {})};`;
|
|
28
|
+
/**
|
|
29
|
+
* The line that scopes `tools` to a surface, after the `ptc` prelude installed
|
|
30
|
+
* the view: named the way the session keys its injected tools, so the two match.
|
|
31
|
+
*/
|
|
32
|
+
const scopeCall = (surface) => surface ? [`globalThis.__archmaxScope(${JSON.stringify(surface.map((name) => toCamelCase(name)))});`] : [];
|
|
28
33
|
/**
|
|
29
34
|
* The code a lifecycle hook runs as. The hook body is evaluated as its own
|
|
30
35
|
* async IIFE (`transformForEval`) so its completion value can be read — a
|
|
@@ -91,6 +96,7 @@ export function createScriptExecutor(opts) {
|
|
|
91
96
|
const prelude = readPrelude(sandboxContext(params), sandboxVersion);
|
|
92
97
|
const code = [
|
|
93
98
|
prelude,
|
|
99
|
+
...scopeCall(params.surface),
|
|
94
100
|
argsAssignment(params.args),
|
|
95
101
|
`globalThis.__scriptPath = ${JSON.stringify(normalizeRelPath(filePath))};`,
|
|
96
102
|
source,
|
|
@@ -101,9 +107,10 @@ export function createScriptExecutor(opts) {
|
|
|
101
107
|
if (!params.prelude)
|
|
102
108
|
return evalCode(code, params);
|
|
103
109
|
// Same contract as an authored file: the PTC prelude runs first so inline
|
|
104
|
-
// code sees the same `SANDBOX_CONTRACT` marker
|
|
105
|
-
// the hook-only vocabulary.
|
|
106
|
-
|
|
110
|
+
// code sees the same `SANDBOX_CONTRACT` marker, the same scoped `tools` and
|
|
111
|
+
// the same absence of the hook-only vocabulary.
|
|
112
|
+
const preamble = [readPrelude(sandboxContext(params), sandboxVersion), ...scopeCall(params.surface)];
|
|
113
|
+
return evalCode(`${preamble.join("\n")}\n${code}`, params);
|
|
107
114
|
},
|
|
108
115
|
dispose(sessionId, sessionNamespace) {
|
|
109
116
|
if (sessionNamespace) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/sandbox/executor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/sandbox/executor.ts"],"names":[],"mappings":"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"}
|
package/dist/sandbox/prelude.js
CHANGED
|
@@ -16,12 +16,42 @@ function readPart(name) {
|
|
|
16
16
|
return content;
|
|
17
17
|
}
|
|
18
18
|
/**
|
|
19
|
-
* The PTC context's whole prelude: the versioned contract marker and
|
|
20
|
-
*
|
|
21
|
-
* vocabulary — `tools` and `args` are injected
|
|
22
|
-
* the QuickJS session.
|
|
19
|
+
* The PTC context's whole prelude: the versioned contract marker and the view
|
|
20
|
+
* that scopes `tools` to the active state. The model's own code (`archmax_eval`,
|
|
21
|
+
* `archmax_run`) gets no hook vocabulary — `tools` and `args` are injected
|
|
22
|
+
* separately by the executor and the QuickJS session.
|
|
23
23
|
*/
|
|
24
|
-
const PTC_PRELUDE =
|
|
24
|
+
const PTC_PRELUDE = [
|
|
25
|
+
`globalThis.SANDBOX_CONTRACT = { context: "ptc", version: globalThis.__SANDBOX_VERSION };`,
|
|
26
|
+
// The session injects every PTC tool once, at its first evaluation, and keeps
|
|
27
|
+
// that object for its lifetime — across every state the run moves through. So
|
|
28
|
+
// the scoping happens in here: one Proxy, installed once, whose listing is the
|
|
29
|
+
// surface the executor names per evaluation (`__archmaxScope`). Its identity
|
|
30
|
+
// never changes, so a reference an earlier evaluation kept reads the current
|
|
31
|
+
// state. `get` still resolves a registered name outside the view, so calling
|
|
32
|
+
// one reaches governance and its refusal, not a TypeError. An IIFE: the
|
|
33
|
+
// evaluation hoists top-level declarations onto `globalThis`.
|
|
34
|
+
`(() => {
|
|
35
|
+
if (globalThis.__archmaxScope) return;
|
|
36
|
+
const all = globalThis.tools != null && typeof globalThis.tools === "object" ? globalThis.tools : {};
|
|
37
|
+
const injected = (name) => typeof name === "string" && Object.prototype.hasOwnProperty.call(all, name);
|
|
38
|
+
let surface = null;
|
|
39
|
+
const visible = (name) => injected(name) && (surface === null || surface.has(name));
|
|
40
|
+
const view = new Proxy({}, {
|
|
41
|
+
get: (_target, name) => (injected(name) ? all[name] : undefined),
|
|
42
|
+
has: (_target, name) => visible(name),
|
|
43
|
+
ownKeys: () => Object.keys(all).filter(visible),
|
|
44
|
+
getOwnPropertyDescriptor: (_target, name) =>
|
|
45
|
+
visible(name) ? { value: all[name], writable: false, enumerable: true, configurable: true } : undefined,
|
|
46
|
+
});
|
|
47
|
+
Object.defineProperty(globalThis, "__archmaxScope", {
|
|
48
|
+
value: (names) => {
|
|
49
|
+
surface = new Set(names);
|
|
50
|
+
globalThis.tools = view;
|
|
51
|
+
},
|
|
52
|
+
});
|
|
53
|
+
})();`,
|
|
54
|
+
].join("\n");
|
|
25
55
|
/**
|
|
26
56
|
* Assemble the QuickJS prelude for a sandbox context. The lifecycle-hook context
|
|
27
57
|
* is the verdict helpers (`ok`/`veto`/`correct`), `defineHook`, and the verdict
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prelude.js","sourceRoot":"","sources":["../../src/sandbox/prelude.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAuB,MAAM,wBAAwB,CAAC;AAEtF,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;AAC7C,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;AAEjD,SAAS,QAAQ;IACf,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC1E,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY;IAC5B,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACxC,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,GAAG,IAAI,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;IACrE,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;GAKG;AACH,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"prelude.js","sourceRoot":"","sources":["../../src/sandbox/prelude.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAuB,MAAM,wBAAwB,CAAC;AAEtF,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;AAC7C,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;AAEjD,SAAS,QAAQ;IACf,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC1E,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY;IAC5B,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACxC,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,GAAG,IAAI,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;IACrE,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;GAKG;AACH,MAAM,WAAW,GAAG;IAClB,0FAA0F;IAC1F,8EAA8E;IAC9E,8EAA8E;IAC9E,+EAA+E;IAC/E,6EAA6E;IAC7E,6EAA6E;IAC7E,6EAA6E;IAC7E,wEAAwE;IACxE,8DAA8D;IAC9D;;;;;;;;;;;;;;;;;;;MAmBI;CACL,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CACzB,UAA0B,gBAAgB,EAC1C,UAAkB,uBAAuB;IAEzC,MAAM,GAAG,GAAG,GAAG,OAAO,IAAI,OAAO,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACvC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACxC,MAAM,MAAM,GAAG,kCAAkC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC;IAC5E,MAAM,KAAK,GACT,OAAO,KAAK,KAAK;QACf,CAAC,CAAC,CAAC,WAAW,CAAC;QACf,CAAC,CAAC;YACE,QAAQ,CAAC,MAAM,CAAC;YAChB,QAAQ,CAAC,gBAAgB,CAAC;SAC3B,CAAC;IACR,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACnC,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -73,6 +73,13 @@ export interface PtcToolGateway {
|
|
|
73
73
|
* the state committed for this one.
|
|
74
74
|
*/
|
|
75
75
|
refresh(sessionId: string, next: PtcCallContext): void;
|
|
76
|
+
/**
|
|
77
|
+
* The tool names an agent script lists under `tools` right now: the state its
|
|
78
|
+
* calls are governed against, disclosed as the model's own tool list is, minus
|
|
79
|
+
* the names never on the bridge. Read from the same live context every wrapped
|
|
80
|
+
* tool decides by, so what a script sees and what it may do cannot disagree.
|
|
81
|
+
*/
|
|
82
|
+
surface(sessionId: string): readonly string[];
|
|
76
83
|
/** Drop a session's context (its wrapped tools go with the session). */
|
|
77
84
|
release(sessionId: string): void;
|
|
78
85
|
}
|
|
@@ -2,7 +2,7 @@ import { findMock, mockPayload, readMocks } from "../core/tool-mocks.js";
|
|
|
2
2
|
import { isWorkflowToolName } from "../machine/tool-names.js";
|
|
3
3
|
import { SubWorkflowError, subWorkflowParkOf } from "../workflow/sub-workflow.js";
|
|
4
4
|
import { toolCallDetail, toolOutputPreview } from "../core/tool-telemetry.js";
|
|
5
|
-
import { decide } from "../kernel/kernel.js";
|
|
5
|
+
import { decide, PTC_EXCLUDED_TOOLS } from "../kernel/kernel.js";
|
|
6
6
|
import { NO_MOUNTS } from "../core/mounts.js";
|
|
7
7
|
import { NO_SKILLS } from "../core/skills.js";
|
|
8
8
|
import { REDACTED_TOOLS, redactDisabledSkills } from "../core/skill-redact.js";
|
|
@@ -44,6 +44,8 @@ function toArgs(input) {
|
|
|
44
44
|
export function createPtcToolGateway(opts) {
|
|
45
45
|
const { machine, policyRules = [], mountPrefixes = NO_MOUNTS, skills = NO_SKILLS, emit } = opts;
|
|
46
46
|
const contexts = new Map();
|
|
47
|
+
// The machine is fixed for the gateway's life, so a state's surface is too.
|
|
48
|
+
const surfaces = new Map();
|
|
47
49
|
let callSeq = 0;
|
|
48
50
|
const skillSlugs = skills.map((skill) => skill.slug);
|
|
49
51
|
const redactSkills = (result, state, tool, origin) => redactPtcListing(result, machine.enabledSkills(state, skillSlugs), skills, tool, origin);
|
|
@@ -159,6 +161,15 @@ export function createPtcToolGateway(opts) {
|
|
|
159
161
|
context.replyOnly = next.replyOnly;
|
|
160
162
|
context.variables = next.variables;
|
|
161
163
|
},
|
|
164
|
+
surface(sessionId) {
|
|
165
|
+
const { state } = contextFor(sessionId);
|
|
166
|
+
let names = surfaces.get(state);
|
|
167
|
+
if (!names) {
|
|
168
|
+
names = [...machine.disclosedTools(state)].filter((name) => !PTC_EXCLUDED_TOOLS.has(name));
|
|
169
|
+
surfaces.set(state, names);
|
|
170
|
+
}
|
|
171
|
+
return names;
|
|
172
|
+
},
|
|
162
173
|
release(sessionId) {
|
|
163
174
|
contexts.delete(sessionId);
|
|
164
175
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ptc-gateway.js","sourceRoot":"","sources":["../../src/sandbox/ptc-gateway.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EAAE,MAAM,EAA4C,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"ptc-gateway.js","sourceRoot":"","sources":["../../src/sandbox/ptc-gateway.ts"],"names":[],"mappings":"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"}
|