feat(tools): run_code description param + native-parity dispatch logging + web code-mode seam
run_code gains a required bash-style description parameter: presentCall titles the card with it and moves the program to rawInput, so every surface gets a readable label. tool/code-dispatch now logs each sub-call's complete content/isError (the tool/result vocabulary), replacing the bounded resultSummary and deleting the summarize/cwd machinery — a UI renders sub-calls through the identical path as native results. The dsh config tree mounts the worker code runtime and reads DSH_TOOLS_MODE (temporary seam until per-session mode selection lands). Session format stays v0 (pre-release churn). Code-mode ACP/TUI fixtures re-recorded; TUI presenter pin refreshed; catalogs regenerated. Keyless web smoke pins the code-mode wire contract (tools=[run_code] + SDK prompt section).
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
terminal 100x36 buffer=normal length=38 base=2 viewport=2
|
||||
terminal 100x36 buffer=normal length=53 base=17 viewport=17
|
||||
lifecycle started=1 stopped=0 progress=inactive
|
||||
title "Using ONE run_code program: call — DSH TUI snapshot"
|
||||
cursor hidden column=1 viewportRow=31 bufferRow=33
|
||||
cursor hidden column=1 viewportRow=31 bufferRow=48
|
||||
buffer
|
||||
0| " DEEPSEEK HARNESS"
|
||||
style 1-8 fg=bright-blue bold
|
||||
@@ -32,58 +32,107 @@ buffer
|
||||
11| " Reasoning "
|
||||
style 1-9 fg=bright-black italic
|
||||
12| " The user wants me to write a single run_code program that: "
|
||||
style 1-58 fg=bright-black italic
|
||||
style 1-36 fg=bright-black italic
|
||||
style 37-44 fg=cyan
|
||||
style 45-58 fg=bright-black italic
|
||||
13| " 1. Calls bash tool twice - first with echo CODE_ONE, then with echo CODE_TWO "
|
||||
style 1-3 fg=bright-blue
|
||||
style 4-38 fg=bright-black italic
|
||||
style 4-9 fg=bright-black italic
|
||||
style 10-13 fg=cyan
|
||||
style 14-38 fg=bright-black italic
|
||||
style 39-51 fg=cyan
|
||||
style 52-63 fg=bright-black italic
|
||||
style 64-76 fg=cyan
|
||||
14| " 2. console.log exactly captured output "
|
||||
style 1-3 fg=bright-blue
|
||||
style 4-23 fg=bright-black italic
|
||||
style 4-14 fg=cyan
|
||||
style 15-23 fg=bright-black italic
|
||||
style 24-38 fg=cyan
|
||||
15| " 3. Return the two outputs joined with a plus sign "
|
||||
15| " 3. Returns the two outputs joined with a plus sign "
|
||||
style 1-3 fg=bright-blue
|
||||
style 4-49 fg=bright-black italic
|
||||
style 4-50 fg=bright-black italic
|
||||
16| " "
|
||||
17| " Let me write this carefully. "
|
||||
style 1-28 fg=bright-black italic
|
||||
18| <blank>
|
||||
19| "▌ "
|
||||
17| " The program body is an async function. I need to: "
|
||||
style 1-49 fg=bright-black italic
|
||||
18| " - Call tools.bash({command: \"echo CODE_ONE\", description: \"Echo CODE_ONE\"}) "
|
||||
style 1-2 fg=bright-blue
|
||||
style 3-7 fg=bright-black italic
|
||||
style 8-75 fg=cyan
|
||||
19| " - Call tools.bash({command: \"echo CODE_TWO\", description: \"Echo CODE_TWO\"}) "
|
||||
style 1-2 fg=bright-blue
|
||||
style 3-7 fg=bright-black italic
|
||||
style 8-75 fg=cyan
|
||||
20| " - Extract the stdout text from each "
|
||||
style 1-2 fg=bright-blue
|
||||
style 3-35 fg=bright-black italic
|
||||
21| " - console.log exactly captured output "
|
||||
style 1-2 fg=bright-blue
|
||||
style 3-22 fg=bright-black italic
|
||||
style 23-37 fg=cyan
|
||||
22| " - Return them joined with + "
|
||||
style 1-2 fg=bright-blue
|
||||
style 3-26 fg=bright-black italic
|
||||
style 27-27 fg=cyan
|
||||
23| " "
|
||||
24| " Let me look at the bash output shape. From the schema, it returns {kind: \"foreground\", stdout: "
|
||||
style 1-66 fg=bright-black italic
|
||||
style 67-99 fg=cyan
|
||||
25| " {text: string, ...}, ...}. So I'd access result.stdout.text. "
|
||||
style 1-25 fg=cyan
|
||||
style 26-41 fg=bright-black italic
|
||||
style 42-59 fg=cyan
|
||||
style 60-60 fg=bright-black italic
|
||||
26| " "
|
||||
27| " The echo commands produce output like \"CODE_ONE\\n\" - I should trim the trailing newline. "
|
||||
style 1-88 fg=bright-black italic
|
||||
28| " "
|
||||
29| " Let me write the code. "
|
||||
style 1-22 fg=bright-black italic
|
||||
30| <blank>
|
||||
31| "▌ "
|
||||
style 0-0 fg=green
|
||||
20| "▌ ✓ const result1 = await tools.bash({ command: \"echo CODE_ONE\", description: \"First echo\" }); "
|
||||
32| "▌ ✓ Echo CODE_ONE and CODE_TWO, join with plus "
|
||||
style 0-0 fg=green
|
||||
style 2-2 fg=green bold
|
||||
style 3-99 bold
|
||||
21| "▌ cons "
|
||||
style 3-45 bold
|
||||
33| "▌ captured output "
|
||||
style 0-0 fg=green
|
||||
style 2-5 bold
|
||||
22| "▌ captured output "
|
||||
34| "▌ CODE_ONE+CODE_TWO "
|
||||
style 0-0 fg=green
|
||||
23| "▌ CODE_ONE+CODE_TWO "
|
||||
35| "▌ "
|
||||
style 0-0 fg=green
|
||||
24| "▌ "
|
||||
style 0-0 fg=green
|
||||
25| <blank>
|
||||
26| " Reasoning "
|
||||
36| <blank>
|
||||
37| " Reasoning "
|
||||
style 1-9 fg=bright-black italic
|
||||
27| " The user asked me to reply with that joined string only and stop. The joined string is "
|
||||
38| " The output shows: "
|
||||
style 1-17 fg=bright-black italic
|
||||
39| " 1. console.log(\"captured output\") printed captured output "
|
||||
style 1-3 fg=bright-blue
|
||||
style 4-33 fg=cyan
|
||||
style 34-42 fg=bright-black italic
|
||||
style 43-57 fg=cyan
|
||||
40| " 2. The return value CODE_ONE+CODE_TWO was also printed "
|
||||
style 1-3 fg=bright-blue
|
||||
style 4-20 fg=bright-black italic
|
||||
style 21-37 fg=cyan
|
||||
style 38-54 fg=bright-black italic
|
||||
41| " "
|
||||
42| " The user said \"Reply with that joined string only and stop.\" So I should reply with just "
|
||||
style 1-99 fg=bright-black italic
|
||||
28| " CODE_ONE+CODE_TWO. "
|
||||
43| " CODE_ONE+CODE_TWO. "
|
||||
style 1-17 fg=cyan
|
||||
style 18-18 fg=bright-black italic
|
||||
29| <blank>
|
||||
30| " Assistant "
|
||||
44| <blank>
|
||||
45| " Assistant "
|
||||
style 1-9 fg=bright-magenta bold
|
||||
31| " CODE_ONE+CODE_TWO "
|
||||
32| "────────────────────────────────────────────────────────────────────────────────────────────────────"
|
||||
46| " CODE_ONE+CODE_TWO "
|
||||
47| "────────────────────────────────────────────────────────────────────────────────────────────────────"
|
||||
style 0-99 dim
|
||||
33| " "
|
||||
48| " "
|
||||
style 1-1 inverse
|
||||
34| "────────────────────────────────────────────────────────────────────────────────────────────────────"
|
||||
49| "────────────────────────────────────────────────────────────────────────────────────────────────────"
|
||||
style 0-99 dim
|
||||
35| "deepseek-v4-flash /workspace/project ↑4.1k ↓227 cache 53% 4% context tools:"
|
||||
style 0-79 dim
|
||||
style 82-99 dim
|
||||
36-37| <blank>
|
||||
50| "deepseek-v4-flash /workspace/project ↑150 ↓464 cache 98% 4% context tools:c"
|
||||
style 0-78 dim
|
||||
style 81-99 dim
|
||||
51-52| <blank>
|
||||
|
||||
Reference in New Issue
Block a user