feat(tui): personal TUI rework, integrating upstream model reasoning-effort selection

Consolidates the personal dsh-tui customizations (module split into
components/session/extension, prompt template + running-glyph indicator,
copyable transcript, tool-card headers, timing placement, XML tool output,
status/footer rework) and ports upstream's model reasoning-effort selector
(Shift+Tab effort cycling, effort-aware /model, footer, and /status) onto
the personal module layout.
This commit is contained in:
Turtle
2026-07-27 17:53:40 +08:00
parent 5d2329e207
commit 4c5f92e0fd
139 changed files with 7491 additions and 3792 deletions
@@ -1,136 +1,140 @@
terminal 100x36 buffer=normal length=64 base=28 viewport=28
terminal 100x36 buffer=normal length=62 base=26 viewport=26
lifecycle started=1 stopped=0 progress=inactive
title "Using ONE run_code program: call — DSH TUI snapshot"
cursor hidden column=1 viewportRow=33 bufferRow=61
cursor hidden column=7 viewportRow=35 bufferRow=61
buffer
0| " DEEPSEEK HARNESS"
style 1-8 fg=bright-blue bold
style 10-16 bold
1| " Using ONE run_code program: call"
style 1-32 fg=bright-black
2| " deepseek-v4-flash • main-session"
style 1-34 dim
2| " main-session"
style 1-12 dim
3| <blank>
4| " "
style 0-0 fg=bright-blue
5| "▌ You "
style 0-0 fg=bright-blue
style 2-4 fg=bright-blue bold
6| "▌ Using ONE run_code program: call the bash tool twice — exactly echo CODE_ONE then exactly echo "
style 0-0 fg=bright-blue
style 65-77 fg=cyan
style 92-99 fg=cyan
7| "▌ CODE_TWO. Inside that same program, console.log exactly captured output, then return the two "
style 0-0 fg=bright-blue
style 2-9 fg=cyan
style 58-72 fg=cyan
8| "▌ outputs joined with a plus sign. Reply with that joined string only and stop. "
style 0-0 fg=bright-blue
9| "▌ "
style 0-0 fg=bright-blue
10| <blank>
11| " Reasoning "
style 1-9 fg=bright-black italic
12| " The user wants me to write a single run_code program that: "
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-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-14 fg=cyan
style 15-23 fg=bright-black italic
style 24-38 fg=cyan
15| " 3. Returns the two outputs joined with a plus sign "
style 1-3 fg=bright-blue
style 4-50 fg=bright-black italic
16| " "
17| " Let me think about the structure. The bash tool returns an object with stdout/stderr. I need to "
style 1-38 fg=bright-black italic
style 39-42 fg=cyan
style 43-99 fg=bright-black italic
18| " extract the stdout text from each call. "
style 1-39 fg=bright-black italic
19| " "
20| " Looking at the bash output type: "
style 1-32 fg=bright-black italic
4| "You "
style 0-2 fg=bright-blue bold underline
5| "Using ONE run_code program: call the bash tool twice — exactly echo CODE_ONE then exactly echo "
style 63-75 fg=cyan
style 90-99 fg=cyan
6| "CODE_TWO. Inside that same program, console.log exactly captured output, then return the two outputs"
style 0-7 fg=cyan
style 56-70 fg=cyan
7| "joined with a plus sign. Reply with that joined string only and stop. "
8| <blank>
9| "Assistant "
style 0-8 fg=bright-magenta bold underline
10| "Reasoning "
style 0-8 fg=bright-black italic
11| "The user wants me to write a single run_code program that: "
style 0-35 fg=bright-black italic
style 36-43 fg=cyan
style 44-57 fg=bright-black italic
12| "1. Calls bash tool twice - first with echo CODE_ONE, then with echo CODE_TWO "
style 0-2 fg=bright-blue
style 3-8 fg=bright-black italic
style 9-12 fg=cyan
style 13-37 fg=bright-black italic
style 38-50 fg=cyan
style 51-62 fg=bright-black italic
style 63-75 fg=cyan
13| "2. console.log exactly captured output "
style 0-2 fg=bright-blue
style 3-13 fg=cyan
style 14-22 fg=bright-black italic
style 23-37 fg=cyan
14| "3. Returns the two outputs joined with a plus sign "
style 0-2 fg=bright-blue
style 3-49 fg=bright-black italic
15| " "
16| "Let me think about the structure. The bash tool returns an object with stdout/stderr. I need to "
style 0-37 fg=bright-black italic
style 38-41 fg=cyan
style 42-99 fg=bright-black italic
17| "extract the stdout text from each call. "
style 0-38 fg=bright-black italic
18| " "
19| "Looking at the bash output type: "
style 0-31 fg=bright-black italic
20| " "
21| " "
22| " ``` "
style 1-3 dim
23| " { "
24| " kind: \"foreground\"; "
25| " exitCode: number | null; "
26| " signal: string | null; "
27| " timedOut: boolean; "
28| " aborted: boolean; "
29| " timeoutMs: number; "
30| " stdout: { "
31| " text: string; "
32| " truncated: boolean; "
33| " spillPath?: string; "
34| " }; "
35| " stderr: { ... }; "
36| " sandbox?: { ... }; "
37| " } "
38| " ``` "
style 1-3 dim
39| " "
40| " So I need to access .stdout.text from each result. "
style 1-20 fg=bright-black italic
style 21-32 fg=cyan
style 33-50 fg=bright-black italic
41| " "
42| " Let me write the program. "
style 1-25 fg=bright-black italic
43| <blank>
44| " "
style 0-0 fg=green
45| "▌ ✓ Call bash twice, log, join outputs "
style 0-0 fg=green
style 2-2 fg=green bold
style 3-37 bold
46| "▌ captured output "
style 0-0 fg=green
47| "▌ CODE_ONE+CODE_TWO "
style 0-0 fg=green
48| "▌ "
style 0-0 fg=green
49| <blank>
50| " Reasoning "
style 1-9 fg=bright-black italic
51| " The program ran successfully. The output shows: "
style 1-47 fg=bright-black italic
52| " - captured output (from console.log) "
style 1-2 fg=bright-blue
style 3-17 fg=cyan
style 18-36 fg=bright-black italic
53| " - CODE_ONE+CODE_TWO (the returned joined string) "
style 1-2 fg=bright-blue
style 3-19 fg=cyan
style 20-48 fg=bright-black italic
22| " { "
style 2-2 fg=cyan
23| " kind: \"foreground\"; "
style 2-22 fg=cyan
24| " exitCode: number | null; "
style 2-27 fg=cyan
25| " signal: string | null; "
style 2-25 fg=cyan
26| " timedOut: boolean; "
style 2-21 fg=cyan
27| " aborted: boolean; "
style 2-20 fg=cyan
28| " timeoutMs: number; "
style 2-21 fg=cyan
29| " stdout: { "
style 2-12 fg=cyan
30| " text: string; "
style 2-18 fg=cyan
31| " truncated: boolean; "
style 2-24 fg=cyan
32| " spillPath?: string; "
style 2-24 fg=cyan
33| " }; "
style 2-5 fg=cyan
34| " stderr: { ... }; "
style 2-19 fg=cyan
35| " sandbox?: { ... }; "
style 2-21 fg=cyan
36| " } "
style 2-2 fg=cyan
37| " "
38| " "
39| "So I need to access .stdout.text from each result. "
style 0-19 fg=bright-black italic
style 20-31 fg=cyan
style 32-49 fg=bright-black italic
40| " "
41| "Let me write the program. "
style 0-24 fg=bright-black italic
42| <blank>
43| "● Tool / run_code"
style 0-16 fg=green
44| "Call bash twice, log, join outputs "
45| "captured output "
46| "CODE_ONE+CODE_TWO "
47| "Model wait 0.0s · Completed 2026-07-21 12:00:00 "
style 0-46 dim
48| <blank>
49| "Assistant "
style 0-8 fg=bright-magenta bold underline
50| "Reasoning "
style 0-8 fg=bright-black italic
51| "The program ran successfully. The output shows: "
style 0-46 fg=bright-black italic
52| "- captured output (from console.log) "
style 0-1 fg=bright-blue
style 2-16 fg=cyan
style 17-35 fg=bright-black italic
53| "- CODE_ONE+CODE_TWO (the returned joined string) "
style 0-1 fg=bright-blue
style 2-18 fg=cyan
style 19-47 fg=bright-black italic
54| " "
55| " The user asked me to reply with that joined string only and stop. So I'll reply with just "
style 1-99 fg=bright-black italic
56| " CODE_ONE+CODE_TWO. "
style 1-17 fg=cyan
style 18-18 fg=bright-black italic
57| <blank>
58| " Assistant "
style 1-9 fg=bright-magenta bold
59| " CODE_ONE+CODE_TWO "
60| "────────────────────────────────────────────────────────────────────────────────────────────────────"
style 0-99 dim
61| " "
style 1-1 inverse
62| "────────────────────────────────────────────────────────────────────────────────────────────────────"
style 0-99 dim
63| "deepseek-v4-flash /workspace/project ↑182 ↓446 cache 98% 4% context tools:c"
style 0-78 dim
style 81-99 dim
55| "The user asked me to reply with that joined string only and stop. So I'll reply with just "
style 0-99 fg=bright-black italic
56| "CODE_ONE+CODE_TWO. "
style 0-16 fg=cyan
style 17-17 fg=bright-black italic
57| "CODE_ONE+CODE_TWO "
58| "Model wait 0.0s · Completed 2026-07-21 12:00:00 "
style 0-46 dim
59| <blank>
60| "/workspace/project deepseek-v4-flash ↑182 ↓446 cache 98% 4% context"
style 0-37 fg=bright-blue bold
style 40-56 fg=bright-black
style 59-78 fg=bright-black
style 81-90 fg=bright-black
61| " dsh ◍ "
style 1-3 fg=bright-blue bold
style 5-6 fg=bright-black
style 7-7 inverse