You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
mothership agent-cli: fixes from the exploration run
- docs search: the engine builds the secret-trace registry
(prepareCopilotEnvironmentContext) — without it the docs tool refused every
query as 'could not be processed safely'.
- universal grep: workspaceId on the list and detail requests that require it
(the export route takes none); the A2 tests had mocked the client.
- run-cli: strip ANSI escapes from CLI stdout/stderr (chalk keys off the
hosting server's TTY).
- pipeline: the jq/outline non-JSON error names | grep instead of a flag the
caller already passed; the to-sandbox notice names /home/user/<name>.
- sim-cli embed path only (public CLI unchanged): positional file arguments
(tables import, files upload, knowledge documents upload) read from the
host's pre-read @path map and refuse anything else; files get --output-file
writes through EmbedContext.writeFile (the chat sandbox) instead of the
server's disk, which is where it had been landing. embedded-files.test.ts.
Claude-Session: https://claude.ai/code/session_01HFVhPDtRZuCgupPco633w8
`${stage}: stdout is not JSON. Run the command with --output json before piping into ${stage}.`
66
+
`${stage}: this command's output is text, not JSON, so ${stage} cannot apply. Filter it with | grep instead, or use outputs get <id> --grep on a stored result.`
@@ -22,7 +25,7 @@ export async function applySink(
22
25
if(written.outcome==='written'){
23
26
return{
24
27
...result,
25
-
stdout: `[stdout written to ${sink.path} on your machine: ${result.stdout.length} chars. Read or process it with run_code, or pass it back as @${sink.path}.]`,
28
+
stdout: `[stdout written to ${resolveSessionPath(sink.path)} on your machine: ${result.stdout.length} chars. Read or process it with run_code, or pass it back as @${sink.path}.]`,
@@ -202,6 +203,26 @@ export async function saveToFile(
202
203
target: string,
203
204
force: boolean
204
205
): Promise<void>{
206
+
constembedded=embedStore.getStore()
207
+
if(embedded){
208
+
// In-process on the hosting server: the only legitimate destination is the
209
+
// caller's own machine, and the host decides how to reach it.
210
+
if(!embedded.writeFile){
211
+
thrownewSimApiError(
212
+
`--output-file cannot save ${target} here: this surface has no machine to write to. Read the file instead, or pipe a text command with | to-sandbox <name>.`,
0 commit comments