@deepseek-harness-tui/dsh-tui 0.11.2 → 0.13.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 +60 -8
- package/assets/deepy/README.md +60 -0
- package/assets/deepy/frames.json +1 -0
- package/assets/whale-girl/whale-girl-happy.png +0 -0
- package/assets/whaleGirl/README.md +7 -0
- package/assets/whaleGirl/frames.json +1 -0
- package/assets/whaleGirl/img/building/00.png +0 -0
- package/assets/whaleGirl/img/building/01.png +0 -0
- package/assets/whaleGirl/img/building/02.png +0 -0
- package/assets/whaleGirl/img/building/03.png +0 -0
- package/assets/whaleGirl/img/building/04.png +0 -0
- package/assets/whaleGirl/img/building/05.png +0 -0
- package/assets/whaleGirl/img/building/06.png +0 -0
- package/assets/whaleGirl/img/building/07.png +0 -0
- package/assets/whaleGirl/img/building/08.png +0 -0
- package/assets/whaleGirl/img/building/09.png +0 -0
- package/assets/whaleGirl/img/building/10.png +0 -0
- package/assets/whaleGirl/img/building/11.png +0 -0
- package/assets/whaleGirl/img/building/12.png +0 -0
- package/assets/whaleGirl/img/building/13.png +0 -0
- package/assets/whaleGirl/img/building/14.png +0 -0
- package/assets/whaleGirl/img/building/15.png +0 -0
- package/assets/whaleGirl/img/building/16.png +0 -0
- package/assets/whaleGirl/img/building/17.png +0 -0
- package/assets/whaleGirl/img/building/18.png +0 -0
- package/assets/whaleGirl/img/building/19.png +0 -0
- package/assets/whaleGirl/img/building/20.png +0 -0
- package/assets/whaleGirl/img/building/21.png +0 -0
- package/assets/whaleGirl/img/building/22.png +0 -0
- package/assets/whaleGirl/img/building/23.png +0 -0
- package/assets/whaleGirl/img/carrying/00.png +0 -0
- package/assets/whaleGirl/img/carrying/01.png +0 -0
- package/assets/whaleGirl/img/carrying/02.png +0 -0
- package/assets/whaleGirl/img/carrying/03.png +0 -0
- package/assets/whaleGirl/img/carrying/04.png +0 -0
- package/assets/whaleGirl/img/carrying/05.png +0 -0
- package/assets/whaleGirl/img/carrying/06.png +0 -0
- package/assets/whaleGirl/img/carrying/07.png +0 -0
- package/assets/whaleGirl/img/compacting/00.png +0 -0
- package/assets/whaleGirl/img/compacting/01.png +0 -0
- package/assets/whaleGirl/img/compacting/02.png +0 -0
- package/assets/whaleGirl/img/compacting/03.png +0 -0
- package/assets/whaleGirl/img/compacting/04.png +0 -0
- package/assets/whaleGirl/img/compacting/05.png +0 -0
- package/assets/whaleGirl/img/compacting/06.png +0 -0
- package/assets/whaleGirl/img/compacting/07.png +0 -0
- package/assets/whaleGirl/img/compacting/08.png +0 -0
- package/assets/whaleGirl/img/compacting/09.png +0 -0
- package/assets/whaleGirl/img/conducting/00.png +0 -0
- package/assets/whaleGirl/img/conducting/01.png +0 -0
- package/assets/whaleGirl/img/conducting/02.png +0 -0
- package/assets/whaleGirl/img/conducting/03.png +0 -0
- package/assets/whaleGirl/img/conducting/04.png +0 -0
- package/assets/whaleGirl/img/conducting/05.png +0 -0
- package/assets/whaleGirl/img/conducting/06.png +0 -0
- package/assets/whaleGirl/img/conducting/07.png +0 -0
- package/assets/whaleGirl/img/conducting/08.png +0 -0
- package/assets/whaleGirl/img/conducting/09.png +0 -0
- package/assets/whaleGirl/img/conducting/10.png +0 -0
- package/assets/whaleGirl/img/conducting/11.png +0 -0
- package/assets/whaleGirl/img/drag/00.png +0 -0
- package/assets/whaleGirl/img/drag/01.png +0 -0
- package/assets/whaleGirl/img/drag/02.png +0 -0
- package/assets/whaleGirl/img/drag/03.png +0 -0
- package/assets/whaleGirl/img/drag/04.png +0 -0
- package/assets/whaleGirl/img/drag/05.png +0 -0
- package/assets/whaleGirl/img/drag/06.png +0 -0
- package/assets/whaleGirl/img/drag/07.png +0 -0
- package/assets/whaleGirl/img/drag/08.png +0 -0
- package/assets/whaleGirl/img/drag/09.png +0 -0
- package/assets/whaleGirl/img/error/00.png +0 -0
- package/assets/whaleGirl/img/error/01.png +0 -0
- package/assets/whaleGirl/img/error/02.png +0 -0
- package/assets/whaleGirl/img/error/03.png +0 -0
- package/assets/whaleGirl/img/error/04.png +0 -0
- package/assets/whaleGirl/img/error/05.png +0 -0
- package/assets/whaleGirl/img/error/06.png +0 -0
- package/assets/whaleGirl/img/error/07.png +0 -0
- package/assets/whaleGirl/img/error/08.png +0 -0
- package/assets/whaleGirl/img/error/09.png +0 -0
- package/assets/whaleGirl/img/happy/00.png +0 -0
- package/assets/whaleGirl/img/happy/01.png +0 -0
- package/assets/whaleGirl/img/happy/02.png +0 -0
- package/assets/whaleGirl/img/happy/03.png +0 -0
- package/assets/whaleGirl/img/happy/04.png +0 -0
- package/assets/whaleGirl/img/happy/05.png +0 -0
- package/assets/whaleGirl/img/happy/06.png +0 -0
- package/assets/whaleGirl/img/happy/07.png +0 -0
- package/assets/whaleGirl/img/happy/08.png +0 -0
- package/assets/whaleGirl/img/happy/09.png +0 -0
- package/assets/whaleGirl/img/happy/10.png +0 -0
- package/assets/whaleGirl/img/idle/00.png +0 -0
- package/assets/whaleGirl/img/idle/01.png +0 -0
- package/assets/whaleGirl/img/idle/02.png +0 -0
- package/assets/whaleGirl/img/idle/03.png +0 -0
- package/assets/whaleGirl/img/idle/04.png +0 -0
- package/assets/whaleGirl/img/idle/05.png +0 -0
- package/assets/whaleGirl/img/idle/06.png +0 -0
- package/assets/whaleGirl/img/idle/07.png +0 -0
- package/assets/whaleGirl/img/idle/08.png +0 -0
- package/assets/whaleGirl/img/idle/09.png +0 -0
- package/assets/whaleGirl/img/idle/10.png +0 -0
- package/assets/whaleGirl/img/idle/11.png +0 -0
- package/assets/whaleGirl/img/idle/12.png +0 -0
- package/assets/whaleGirl/img/idle/13.png +0 -0
- package/assets/whaleGirl/img/idle/14.png +0 -0
- package/assets/whaleGirl/img/idle/15.png +0 -0
- package/assets/whaleGirl/img/idle/16.png +0 -0
- package/assets/whaleGirl/img/idle/17.png +0 -0
- package/assets/whaleGirl/img/idle/18.png +0 -0
- package/assets/whaleGirl/img/idle/19.png +0 -0
- package/assets/whaleGirl/img/idle/20.png +0 -0
- package/assets/whaleGirl/img/idle-look/00.png +0 -0
- package/assets/whaleGirl/img/idle-look/01.png +0 -0
- package/assets/whaleGirl/img/idle-look/02.png +0 -0
- package/assets/whaleGirl/img/idle-look/03.png +0 -0
- package/assets/whaleGirl/img/idle-look/04.png +0 -0
- package/assets/whaleGirl/img/idle-look/05.png +0 -0
- package/assets/whaleGirl/img/idle-look/06.png +0 -0
- package/assets/whaleGirl/img/idle-look/07.png +0 -0
- package/assets/whaleGirl/img/idle-look/08.png +0 -0
- package/assets/whaleGirl/img/idle-look/09.png +0 -0
- package/assets/whaleGirl/img/idle-look/10.png +0 -0
- package/assets/whaleGirl/img/idle-look/11.png +0 -0
- package/assets/whaleGirl/img/idle-look/12.png +0 -0
- package/assets/whaleGirl/img/idle-spout/00.png +0 -0
- package/assets/whaleGirl/img/idle-spout/01.png +0 -0
- package/assets/whaleGirl/img/idle-spout/02.png +0 -0
- package/assets/whaleGirl/img/idle-spout/03.png +0 -0
- package/assets/whaleGirl/img/idle-spout/04.png +0 -0
- package/assets/whaleGirl/img/idle-spout/05.png +0 -0
- package/assets/whaleGirl/img/idle-spout/06.png +0 -0
- package/assets/whaleGirl/img/idle-spout/07.png +0 -0
- package/assets/whaleGirl/img/idle-spout/08.png +0 -0
- package/assets/whaleGirl/img/idle-spout/09.png +0 -0
- package/assets/whaleGirl/img/idle-spout/10.png +0 -0
- package/assets/whaleGirl/img/music/00.png +0 -0
- package/assets/whaleGirl/img/music/01.png +0 -0
- package/assets/whaleGirl/img/music/02.png +0 -0
- package/assets/whaleGirl/img/music/03.png +0 -0
- package/assets/whaleGirl/img/music/04.png +0 -0
- package/assets/whaleGirl/img/music/05.png +0 -0
- package/assets/whaleGirl/img/music/06.png +0 -0
- package/assets/whaleGirl/img/music/07.png +0 -0
- package/assets/whaleGirl/img/notification/00.png +0 -0
- package/assets/whaleGirl/img/notification/01.png +0 -0
- package/assets/whaleGirl/img/notification/02.png +0 -0
- package/assets/whaleGirl/img/notification/03.png +0 -0
- package/assets/whaleGirl/img/notification/04.png +0 -0
- package/assets/whaleGirl/img/notification/05.png +0 -0
- package/assets/whaleGirl/img/notification/06.png +0 -0
- package/assets/whaleGirl/img/notification/07.png +0 -0
- package/assets/whaleGirl/img/poke-left/00.png +0 -0
- package/assets/whaleGirl/img/poke-left/01.png +0 -0
- package/assets/whaleGirl/img/poke-left/02.png +0 -0
- package/assets/whaleGirl/img/poke-left/03.png +0 -0
- package/assets/whaleGirl/img/poke-left/04.png +0 -0
- package/assets/whaleGirl/img/poke-left/05.png +0 -0
- package/assets/whaleGirl/img/poke-left/06.png +0 -0
- package/assets/whaleGirl/img/poke-left/07.png +0 -0
- package/assets/whaleGirl/img/poke-left/08.png +0 -0
- package/assets/whaleGirl/img/poke-left/09.png +0 -0
- package/assets/whaleGirl/img/poke-left/10.png +0 -0
- package/assets/whaleGirl/img/poke-right/00.png +0 -0
- package/assets/whaleGirl/img/poke-right/01.png +0 -0
- package/assets/whaleGirl/img/poke-right/02.png +0 -0
- package/assets/whaleGirl/img/poke-right/03.png +0 -0
- package/assets/whaleGirl/img/poke-right/04.png +0 -0
- package/assets/whaleGirl/img/poke-right/05.png +0 -0
- package/assets/whaleGirl/img/poke-right/06.png +0 -0
- package/assets/whaleGirl/img/poke-right/07.png +0 -0
- package/assets/whaleGirl/img/poke-right/08.png +0 -0
- package/assets/whaleGirl/img/poke-right/09.png +0 -0
- package/assets/whaleGirl/img/poke-right/10.png +0 -0
- package/assets/whaleGirl/img/sleeping/00.png +0 -0
- package/assets/whaleGirl/img/sleeping/01.png +0 -0
- package/assets/whaleGirl/img/sleeping/02.png +0 -0
- package/assets/whaleGirl/img/sleeping/03.png +0 -0
- package/assets/whaleGirl/img/sleeping/04.png +0 -0
- package/assets/whaleGirl/img/sleeping/05.png +0 -0
- package/assets/whaleGirl/img/smile-hearts/00.png +0 -0
- package/assets/whaleGirl/img/smile-hearts/01.png +0 -0
- package/assets/whaleGirl/img/smile-hearts/02.png +0 -0
- package/assets/whaleGirl/img/smile-hearts/03.png +0 -0
- package/assets/whaleGirl/img/smile-hearts/04.png +0 -0
- package/assets/whaleGirl/img/smile-hearts/05.png +0 -0
- package/assets/whaleGirl/img/smile-hearts/06.png +0 -0
- package/assets/whaleGirl/img/smile-hearts/07.png +0 -0
- package/assets/whaleGirl/img/smile-hearts/08.png +0 -0
- package/assets/whaleGirl/img/smile-hearts/09.png +0 -0
- package/assets/whaleGirl/img/smile-hearts/10.png +0 -0
- package/assets/whaleGirl/img/smile-hearts/11.png +0 -0
- package/assets/whaleGirl/img/smile-hearts/12.png +0 -0
- package/assets/whaleGirl/img/smile-hearts/13.png +0 -0
- package/assets/whaleGirl/img/smile-hearts/14.png +0 -0
- package/assets/whaleGirl/img/smile-hearts/15.png +0 -0
- package/assets/whaleGirl/img/swim/00.png +0 -0
- package/assets/whaleGirl/img/swim/01.png +0 -0
- package/assets/whaleGirl/img/swim/02.png +0 -0
- package/assets/whaleGirl/img/swim/03.png +0 -0
- package/assets/whaleGirl/img/swim/04.png +0 -0
- package/assets/whaleGirl/img/swim/05.png +0 -0
- package/assets/whaleGirl/img/swim/06.png +0 -0
- package/assets/whaleGirl/img/swim/07.png +0 -0
- package/assets/whaleGirl/img/thinking/00.png +0 -0
- package/assets/whaleGirl/img/thinking/01.png +0 -0
- package/assets/whaleGirl/img/thinking/02.png +0 -0
- package/assets/whaleGirl/img/thinking/03.png +0 -0
- package/assets/whaleGirl/img/thinking/04.png +0 -0
- package/assets/whaleGirl/img/thinking/05.png +0 -0
- package/assets/whaleGirl/img/thinking/06.png +0 -0
- package/assets/whaleGirl/img/thinking/07.png +0 -0
- package/assets/whaleGirl/img/thinking/08.png +0 -0
- package/assets/whaleGirl/img/thinking/09.png +0 -0
- package/assets/whaleGirl/img/thinking/10.png +0 -0
- package/assets/whaleGirl/img/thinking/11.png +0 -0
- package/assets/whaleGirl/img/thinking/12.png +0 -0
- package/assets/whaleGirl/img/thinking/13.png +0 -0
- package/assets/whaleGirl/img/thinking/14.png +0 -0
- package/assets/whaleGirl/img/thinking/15.png +0 -0
- package/assets/whaleGirl/img/thinking/16.png +0 -0
- package/assets/whaleGirl/img/thumbs-up/00.png +0 -0
- package/assets/whaleGirl/img/thumbs-up/01.png +0 -0
- package/assets/whaleGirl/img/thumbs-up/02.png +0 -0
- package/assets/whaleGirl/img/thumbs-up/03.png +0 -0
- package/assets/whaleGirl/img/thumbs-up/04.png +0 -0
- package/assets/whaleGirl/img/thumbs-up/05.png +0 -0
- package/assets/whaleGirl/img/thumbs-up/06.png +0 -0
- package/assets/whaleGirl/img/thumbs-up/07.png +0 -0
- package/assets/whaleGirl/img/thumbs-up/08.png +0 -0
- package/assets/whaleGirl/img/thumbs-up/09.png +0 -0
- package/assets/whaleGirl/img/thumbs-up/10.png +0 -0
- package/assets/whaleGirl/img/thumbs-up/11.png +0 -0
- package/assets/whaleGirl/img/thumbs-up/12.png +0 -0
- package/assets/whaleGirl/img/tickle/00.png +0 -0
- package/assets/whaleGirl/img/tickle/01.png +0 -0
- package/assets/whaleGirl/img/tickle/02.png +0 -0
- package/assets/whaleGirl/img/tickle/03.png +0 -0
- package/assets/whaleGirl/img/tickle/04.png +0 -0
- package/assets/whaleGirl/img/tickle/05.png +0 -0
- package/assets/whaleGirl/img/tickle/06.png +0 -0
- package/assets/whaleGirl/img/tickle/07.png +0 -0
- package/assets/whaleGirl/img/tickle/08.png +0 -0
- package/assets/whaleGirl/img/tickle/09.png +0 -0
- package/assets/whaleGirl/img/tickle/10.png +0 -0
- package/assets/whaleGirl/img/tickle/11.png +0 -0
- package/assets/whaleGirl/img/tickle/12.png +0 -0
- package/assets/whaleGirl/img/tickle/13.png +0 -0
- package/assets/whaleGirl/img/timings.json +1 -0
- package/assets/whaleGirl/img/typing/00.png +0 -0
- package/assets/whaleGirl/img/typing/01.png +0 -0
- package/assets/whaleGirl/img/typing/02.png +0 -0
- package/assets/whaleGirl/img/typing/03.png +0 -0
- package/assets/whaleGirl/img/typing/04.png +0 -0
- package/assets/whaleGirl/img/typing/05.png +0 -0
- package/assets/whaleGirl/img/typing/06.png +0 -0
- package/assets/whaleGirl/img/typing/07.png +0 -0
- package/assets/whaleGirl/img/typing/08.png +0 -0
- package/assets/whaleGirl/img/typing/09.png +0 -0
- package/assets/whaleGirl/img/typing/10.png +0 -0
- package/assets/whaleGirl/img/typing/11.png +0 -0
- package/assets/whaleGirl/img/typing/12.png +0 -0
- package/assets/whaleGirl/img/typing/13.png +0 -0
- package/assets/whaleGirl/img/waking/00.png +0 -0
- package/assets/whaleGirl/img/waking/01.png +0 -0
- package/assets/whaleGirl/img/waking/02.png +0 -0
- package/assets/whaleGirl/img/waking/03.png +0 -0
- package/assets/whaleGirl/img/waking/04.png +0 -0
- package/assets/whaleGirl/img/waking/05.png +0 -0
- package/assets/whaleGirl/img/waking/06.png +0 -0
- package/assets/whaleGirl/img/waking/07.png +0 -0
- package/assets/whaleGirl/img/waking/08.png +0 -0
- package/assets/whaleGirl/img/waking/09.png +0 -0
- package/assets/whaleGirl/img/waking/10.png +0 -0
- package/bin/dsh-tui.js +38 -6
- package/cordis.patch.yml +31 -6
- package/guide/dsh-tui-guide/SKILL.md +37 -0
- package/guide/dsh-tui-guide/configuration.en.md +415 -0
- package/guide/dsh-tui-guide/configuration.md +354 -0
- package/guide/dsh-tui-guide/getting-started.en.md +401 -0
- package/guide/dsh-tui-guide/getting-started.md +399 -0
- package/guide/dsh-tui-guide/interaction.en.md +738 -0
- package/guide/dsh-tui-guide/interaction.md +793 -0
- package/guide/dsh-tui-guide/migrate.en.md +166 -0
- package/guide/dsh-tui-guide/migrate.md +132 -0
- package/guide/dsh-tui-guide/plugins.en.md +78 -0
- package/guide/dsh-tui-guide/plugins.md +64 -0
- package/guide/dsh-tui-guide/themes.en.md +197 -0
- package/guide/dsh-tui-guide/themes.md +188 -0
- package/guide/dsh-tui-guide/user-guide.en.md +711 -0
- package/guide/dsh-tui-guide/user-guide.md +666 -0
- package/guide/dsh-tui-guide/vscode.en.md +301 -0
- package/guide/dsh-tui-guide/vscode.md +272 -0
- package/lib/settings.json +219 -5
- package/lib/types/adapter/channel/ui-policy.d.ts +7 -2
- package/lib/types/adapter/channel/ui-policy.d.ts.map +1 -1
- package/lib/types/adapter/channel/ui-policy.js +18 -1
- package/lib/types/adapter/index.d.ts +1 -1
- package/lib/types/adapter/index.js +1 -1
- package/lib/types/adapter/kernel/host-facade.d.ts +4 -1
- package/lib/types/adapter/kernel/host-facade.d.ts.map +1 -1
- package/lib/types/adapter/kernel/host-facade.js +8 -1
- package/lib/types/adapter/kernel/runtime.d.ts.map +1 -1
- package/lib/types/adapter/kernel/runtime.js +13 -0
- package/lib/types/adapter/kernel/slices/index.d.ts +1 -0
- package/lib/types/adapter/kernel/slices/index.d.ts.map +1 -1
- package/lib/types/adapter/kernel/slices/index.js +3 -0
- package/lib/types/adapter/kernel/slices/panels.d.ts +3 -0
- package/lib/types/adapter/kernel/slices/panels.d.ts.map +1 -0
- package/lib/types/adapter/kernel/slices/panels.js +14 -0
- package/lib/types/adapter/ports/channel-capabilities.d.ts +48 -0
- package/lib/types/adapter/ports/channel-capabilities.d.ts.map +1 -0
- package/lib/types/adapter/ports/channel-capabilities.js +2 -0
- package/lib/types/adapter/ports/channel-catalog.d.ts +7 -0
- package/lib/types/adapter/ports/channel-catalog.d.ts.map +1 -1
- package/lib/types/adapter/ports/channel-display.d.ts +10 -0
- package/lib/types/adapter/ports/channel-display.d.ts.map +1 -1
- package/lib/types/adapter/ports/channel-settings.d.ts +2 -1
- package/lib/types/adapter/ports/channel-settings.d.ts.map +1 -1
- package/lib/types/adapter/ports/channel-ui.d.ts +91 -4
- package/lib/types/adapter/ports/channel-ui.d.ts.map +1 -1
- package/lib/types/adapter/ports/channel-view.d.ts +137 -9
- package/lib/types/adapter/ports/channel-view.d.ts.map +1 -1
- package/lib/types/adapter/ports/channel.d.ts +1 -1
- package/lib/types/adapter/ports/channel.js +1 -1
- package/lib/types/adapter/ports/descriptor.d.ts +1 -1
- package/lib/types/adapter/ports/descriptor.js +1 -1
- package/lib/types/adapter/ports/index.d.ts +1 -1
- package/lib/types/adapter/ports/index.js +1 -1
- package/lib/types/adapter/ports/panels.d.ts +28 -0
- package/lib/types/adapter/ports/panels.d.ts.map +1 -0
- package/lib/types/adapter/ports/panels.js +8 -0
- package/lib/types/adapter/ports/workspace.d.ts +1 -1
- package/lib/types/adapter/ports/workspace.js +1 -1
- package/lib/types/adapter/spec/index.d.ts +2 -2
- package/lib/types/adapter/spec/index.js +2 -2
- package/lib/types/adapter/spec/profile.d.ts +6 -6
- package/lib/types/adapter/spec/profile.d.ts.map +1 -1
- package/lib/types/adapter/spec/profile.js +6 -6
- package/lib/types/adapter/spec/protocol-constants.d.ts +3 -3
- package/lib/types/adapter/spec/protocol-constants.d.ts.map +1 -1
- package/lib/types/adapter/spec/protocol-constants.js +5 -5
- package/lib/types/adapter/spec/tui-contributions.d.ts +4 -4
- package/lib/types/adapter/spec/tui-contributions.d.ts.map +1 -1
- package/lib/types/adapter/spec/tui-contributions.js +5 -5
- package/lib/types/adapter/standard/descriptor.js +1 -1
- package/lib/types/adapter/standard/index.d.ts +3 -3
- package/lib/types/adapter/standard/index.js +3 -3
- package/lib/types/adapter/standard/registry.d.ts +3 -2
- package/lib/types/adapter/standard/registry.d.ts.map +1 -1
- package/lib/types/adapter/standard/registry.js +6 -5
- package/lib/types/adapter/standard/tui-extension.d.ts +1 -1
- package/lib/types/adapter/standard/tui-extension.js +1 -1
- package/lib/types/adapter/upstream/index.d.ts +1 -0
- package/lib/types/adapter/upstream/index.d.ts.map +1 -1
- package/lib/types/adapter/upstream/index.js +1 -0
- package/lib/types/adapter/upstream/panels-driver.d.ts +18 -0
- package/lib/types/adapter/upstream/panels-driver.d.ts.map +1 -0
- package/lib/types/adapter/upstream/panels-driver.js +159 -0
- package/lib/types/api.d.ts +2 -0
- package/lib/types/api.d.ts.map +1 -1
- package/lib/types/api.js +3 -1
- package/lib/types/commands.d.ts.map +1 -1
- package/lib/types/commands.js +12 -4
- package/lib/types/components/ActivityLine.d.ts +6 -9
- package/lib/types/components/ActivityLine.d.ts.map +1 -1
- package/lib/types/components/ActivityLine.js +7 -8
- package/lib/types/components/Chat/JobCard.d.ts +27 -1
- package/lib/types/components/Chat/JobCard.d.ts.map +1 -1
- package/lib/types/components/Chat/JobCard.js +128 -33
- package/lib/types/components/Chat/JobGroupHeader.d.ts +27 -0
- package/lib/types/components/Chat/JobGroupHeader.d.ts.map +1 -0
- package/lib/types/components/Chat/JobGroupHeader.js +62 -0
- package/lib/types/components/Chat/SubagentMessage.js +6 -6
- package/lib/types/components/GoalTodoPanel.d.ts +13 -1
- package/lib/types/components/GoalTodoPanel.d.ts.map +1 -1
- package/lib/types/components/GoalTodoPanel.js +55 -14
- package/lib/types/components/JobsPanel.d.ts +42 -2
- package/lib/types/components/JobsPanel.d.ts.map +1 -1
- package/lib/types/components/JobsPanel.js +220 -40
- package/lib/types/components/LogoV2.d.ts +43 -3
- package/lib/types/components/LogoV2.d.ts.map +1 -1
- package/lib/types/components/LogoV2.js +42 -15
- package/lib/types/components/MessageList.d.ts +8 -2
- package/lib/types/components/MessageList.d.ts.map +1 -1
- package/lib/types/components/MessageList.js +215 -21
- package/lib/types/components/OverlayAbove.d.ts +11 -1
- package/lib/types/components/OverlayAbove.d.ts.map +1 -1
- package/lib/types/components/OverlayAbove.js +2 -12
- package/lib/types/components/PageMargin.d.ts.map +1 -1
- package/lib/types/components/PageMargin.js +3 -1
- package/lib/types/components/PluginSceneBoundary.d.ts +1 -1
- package/lib/types/components/PluginSceneBoundary.js +1 -1
- package/lib/types/components/PresetPicker.d.ts +4 -0
- package/lib/types/components/PresetPicker.d.ts.map +1 -1
- package/lib/types/components/PresetPicker.js +5 -1
- package/lib/types/components/PromptInput.d.ts +20 -22
- package/lib/types/components/PromptInput.d.ts.map +1 -1
- package/lib/types/components/PromptInput.js +425 -157
- package/lib/types/components/SearchBox.d.ts +22 -5
- package/lib/types/components/SearchBox.d.ts.map +1 -1
- package/lib/types/components/SearchBox.js +17 -13
- package/lib/types/components/StarPrompt.d.ts +6 -0
- package/lib/types/components/StarPrompt.d.ts.map +1 -1
- package/lib/types/components/StarPrompt.js +45 -0
- package/lib/types/components/SubagentCard.d.ts.map +1 -1
- package/lib/types/components/SubagentCard.js +24 -9
- package/lib/types/components/SubagentDashboard.d.ts +18 -3
- package/lib/types/components/SubagentDashboard.d.ts.map +1 -1
- package/lib/types/components/SubagentDashboard.js +53 -5
- package/lib/types/components/SubagentDetailScene.d.ts +7 -1
- package/lib/types/components/SubagentDetailScene.d.ts.map +1 -1
- package/lib/types/components/SubagentDetailScene.js +160 -13
- package/lib/types/components/SurfaceEdges.d.ts +21 -0
- package/lib/types/components/SurfaceEdges.d.ts.map +1 -0
- package/lib/types/components/SurfaceEdges.js +7 -0
- package/lib/types/components/ThemePicker.d.ts +9 -0
- package/lib/types/components/ThemePicker.d.ts.map +1 -1
- package/lib/types/components/ThemePicker.js +74 -10
- package/lib/types/components/ThemePreviewPane.d.ts +26 -0
- package/lib/types/components/ThemePreviewPane.d.ts.map +1 -0
- package/lib/types/components/ThemePreviewPane.js +99 -0
- package/lib/types/components/WhaleGirl.d.ts +6 -0
- package/lib/types/components/WhaleGirl.d.ts.map +1 -1
- package/lib/types/components/WhaleGirl.js +18 -0
- package/lib/types/components/design-system/Divider.d.ts.map +1 -1
- package/lib/types/components/design-system/Divider.js +14 -9
- package/lib/types/components/launchpadActions.d.ts +73 -0
- package/lib/types/components/launchpadActions.d.ts.map +1 -0
- package/lib/types/components/launchpadActions.js +111 -0
- package/lib/types/components/launchpadLayout.d.ts +62 -0
- package/lib/types/components/launchpadLayout.d.ts.map +1 -0
- package/lib/types/components/launchpadLayout.js +176 -0
- package/lib/types/components/messages/AssistantThinkingMessage.js +4 -4
- package/lib/types/components/onboardingModel.d.ts +83 -0
- package/lib/types/components/onboardingModel.d.ts.map +1 -0
- package/lib/types/components/onboardingModel.js +128 -0
- package/lib/types/components/sidePanel/InfoPanel.d.ts +17 -0
- package/lib/types/components/sidePanel/InfoPanel.d.ts.map +1 -0
- package/lib/types/components/sidePanel/InfoPanel.js +124 -0
- package/lib/types/components/sidePanel/PanelBar.d.ts +45 -0
- package/lib/types/components/sidePanel/PanelBar.d.ts.map +1 -0
- package/lib/types/components/sidePanel/PanelBar.js +104 -0
- package/lib/types/components/sidePanel/PanelErrorBoundary.d.ts +21 -0
- package/lib/types/components/sidePanel/PanelErrorBoundary.d.ts.map +1 -0
- package/lib/types/components/sidePanel/PanelErrorBoundary.js +30 -0
- package/lib/types/components/sidePanel/PanelHost.d.ts +36 -0
- package/lib/types/components/sidePanel/PanelHost.d.ts.map +1 -0
- package/lib/types/components/sidePanel/PanelHost.js +81 -0
- package/lib/types/components/sidePanel/PanelPicker.d.ts +24 -0
- package/lib/types/components/sidePanel/PanelPicker.d.ts.map +1 -0
- package/lib/types/components/sidePanel/PanelPicker.js +45 -0
- package/lib/types/components/sidePanel/PanelStore.d.ts +55 -0
- package/lib/types/components/sidePanel/PanelStore.d.ts.map +1 -0
- package/lib/types/components/sidePanel/PanelStore.js +109 -0
- package/lib/types/components/sidePanel/SidePanelColumn.d.ts +31 -0
- package/lib/types/components/sidePanel/SidePanelColumn.d.ts.map +1 -0
- package/lib/types/components/sidePanel/SidePanelColumn.js +70 -0
- package/lib/types/components/sidePanel/SidePanelLayout.d.ts +54 -0
- package/lib/types/components/sidePanel/SidePanelLayout.d.ts.map +1 -0
- package/lib/types/components/sidePanel/SidePanelLayout.js +81 -0
- package/lib/types/components/sidePanel/SidePanelRuntimeContext.d.ts +43 -0
- package/lib/types/components/sidePanel/SidePanelRuntimeContext.d.ts.map +1 -0
- package/lib/types/components/sidePanel/SidePanelRuntimeContext.js +26 -0
- package/lib/types/components/sidePanel/TrajectoryPanel.d.ts +7 -0
- package/lib/types/components/sidePanel/TrajectoryPanel.d.ts.map +1 -0
- package/lib/types/components/sidePanel/TrajectoryPanel.js +263 -0
- package/lib/types/components/sidePanel/WorkspacePanel.d.ts +4 -0
- package/lib/types/components/sidePanel/WorkspacePanel.d.ts.map +1 -0
- package/lib/types/components/sidePanel/WorkspacePanel.js +171 -0
- package/lib/types/components/sidePanel/builtinPanels.d.ts +3 -0
- package/lib/types/components/sidePanel/builtinPanels.d.ts.map +1 -0
- package/lib/types/components/sidePanel/builtinPanels.js +229 -0
- package/lib/types/components/sidePanel/companion/CompanionPanel.d.ts +53 -0
- package/lib/types/components/sidePanel/companion/CompanionPanel.d.ts.map +1 -0
- package/lib/types/components/sidePanel/companion/CompanionPanel.js +528 -0
- package/lib/types/components/sidePanel/companion/SplashMascot.d.ts +32 -0
- package/lib/types/components/sidePanel/companion/SplashMascot.d.ts.map +1 -0
- package/lib/types/components/sidePanel/companion/SplashMascot.js +103 -0
- package/lib/types/components/sidePanel/companion/deepy.d.ts +75 -0
- package/lib/types/components/sidePanel/companion/deepy.d.ts.map +1 -0
- package/lib/types/components/sidePanel/companion/deepy.js +222 -0
- package/lib/types/components/sidePanel/companion/mood.d.ts +176 -0
- package/lib/types/components/sidePanel/companion/mood.d.ts.map +1 -0
- package/lib/types/components/sidePanel/companion/mood.js +212 -0
- package/lib/types/components/sidePanel/companion/pose.d.ts +43 -0
- package/lib/types/components/sidePanel/companion/pose.d.ts.map +1 -0
- package/lib/types/components/sidePanel/companion/pose.js +34 -0
- package/lib/types/components/sidePanel/companion/skins.d.ts +102 -0
- package/lib/types/components/sidePanel/companion/skins.d.ts.map +1 -0
- package/lib/types/components/sidePanel/companion/skins.js +408 -0
- package/lib/types/components/sidePanel/dimensions.d.ts +60 -0
- package/lib/types/components/sidePanel/dimensions.d.ts.map +1 -0
- package/lib/types/components/sidePanel/dimensions.js +75 -0
- package/lib/types/components/sidePanel/jobsFocusStore.d.ts +21 -0
- package/lib/types/components/sidePanel/jobsFocusStore.d.ts.map +1 -0
- package/lib/types/components/sidePanel/jobsFocusStore.js +30 -0
- package/lib/types/components/sidePanel/panelBridge.d.ts +44 -0
- package/lib/types/components/sidePanel/panelBridge.d.ts.map +1 -0
- package/lib/types/components/sidePanel/panelBridge.js +55 -0
- package/lib/types/components/sidePanel/pluginPanelAdapter.d.ts +22 -0
- package/lib/types/components/sidePanel/pluginPanelAdapter.d.ts.map +1 -0
- package/lib/types/components/sidePanel/pluginPanelAdapter.js +148 -0
- package/lib/types/components/sidePanel/types.d.ts +110 -0
- package/lib/types/components/sidePanel/types.d.ts.map +1 -0
- package/lib/types/components/sidePanel/types.js +1 -0
- package/lib/types/components/sidePanel/usePanelInput.d.ts +5 -0
- package/lib/types/components/sidePanel/usePanelInput.d.ts.map +1 -0
- package/lib/types/components/sidePanel/usePanelInput.js +44 -0
- package/lib/types/components/sidePanel/useSidePanel.d.ts +47 -0
- package/lib/types/components/sidePanel/useSidePanel.d.ts.map +1 -0
- package/lib/types/components/sidePanel/useSidePanel.js +284 -0
- package/lib/types/components/trajectory/MiniWake.d.ts +11 -1
- package/lib/types/components/trajectory/MiniWake.d.ts.map +1 -1
- package/lib/types/components/trajectory/MiniWake.js +9 -3
- package/lib/types/components/workspaces/HomeWorkspaceRow.d.ts +3 -1
- package/lib/types/components/workspaces/HomeWorkspaceRow.d.ts.map +1 -1
- package/lib/types/components/workspaces/HomeWorkspaceRow.js +3 -2
- package/lib/types/deepseekPricing.d.ts +10 -9
- package/lib/types/deepseekPricing.d.ts.map +1 -1
- package/lib/types/deepseekPricing.js +18 -11
- package/lib/types/dsh-adapter/channel/attached-context.d.ts +58 -0
- package/lib/types/dsh-adapter/channel/attached-context.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/attached-context.js +109 -0
- package/lib/types/dsh-adapter/channel/binding-events.d.ts +6 -0
- package/lib/types/dsh-adapter/channel/binding-events.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/binding-events.js +43 -0
- package/lib/types/dsh-adapter/channel/capabilities.d.ts +82 -0
- package/lib/types/dsh-adapter/channel/capabilities.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/capabilities.js +165 -0
- package/lib/types/dsh-adapter/channel/command-completions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/command-completions.js +8 -0
- package/lib/types/dsh-adapter/channel/context-bookkeeping.d.ts +4 -12
- package/lib/types/dsh-adapter/channel/context-bookkeeping.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/context-bookkeeping.js +9 -4
- package/lib/types/dsh-adapter/channel/external-commands.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/external-commands.js +8 -2
- package/lib/types/dsh-adapter/channel/input-delivery.d.ts +13 -2
- package/lib/types/dsh-adapter/channel/input-delivery.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/input-delivery.js +18 -1
- package/lib/types/dsh-adapter/channel/job-projection.d.ts +1 -0
- package/lib/types/dsh-adapter/channel/job-projection.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/job-projection.js +88 -3
- package/lib/types/dsh-adapter/channel/mode-actions.d.ts +13 -3
- package/lib/types/dsh-adapter/channel/mode-actions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/mode-actions.js +55 -9
- package/lib/types/dsh-adapter/channel/mode-permission-actions.d.ts +8 -1
- package/lib/types/dsh-adapter/channel/mode-permission-actions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/mode-permission-actions.js +25 -10
- package/lib/types/dsh-adapter/channel/preferences.d.ts +1 -1
- package/lib/types/dsh-adapter/channel/preferences.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/preferences.js +26 -8
- package/lib/types/dsh-adapter/channel/projection.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/projection.js +42 -37
- package/lib/types/dsh-adapter/channel/reports.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/reports.js +13 -4
- package/lib/types/dsh-adapter/channel/session-reset.d.ts +5 -1
- package/lib/types/dsh-adapter/channel/session-reset.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/session-reset.js +1 -0
- package/lib/types/dsh-adapter/channel/state.d.ts +21 -3
- package/lib/types/dsh-adapter/channel/state.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/state.js +3 -2
- package/lib/types/dsh-adapter/channel/subagent-projection.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/subagent-projection.js +5 -0
- package/lib/types/dsh-adapter/channel/types.d.ts +1 -1
- package/lib/types/dsh-adapter/channel/types.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/usage.d.ts +18 -1
- package/lib/types/dsh-adapter/channel/usage.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/usage.js +97 -2
- package/lib/types/dsh-adapter/channel.d.ts +1 -1
- package/lib/types/dsh-adapter/channel.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel.js +72 -4
- package/lib/types/dsh-adapter/context-occupancy.d.ts +204 -0
- package/lib/types/dsh-adapter/context-occupancy.d.ts.map +1 -0
- package/lib/types/dsh-adapter/context-occupancy.js +299 -0
- package/lib/types/dsh-adapter/contract.d.ts +19 -4
- package/lib/types/dsh-adapter/contract.d.ts.map +1 -1
- package/lib/types/dsh-adapter/contract.js +33 -3
- package/lib/types/dsh-adapter/index.d.ts +32 -0
- package/lib/types/dsh-adapter/index.d.ts.map +1 -1
- package/lib/types/dsh-adapter/index.js +20 -1
- package/lib/types/dsh-adapter/jobs.d.ts +82 -16
- package/lib/types/dsh-adapter/jobs.d.ts.map +1 -1
- package/lib/types/dsh-adapter/jobs.js +104 -9
- package/lib/types/dsh-adapter/migrate/sessionize.d.ts.map +1 -1
- package/lib/types/dsh-adapter/migrate/sessionize.js +11 -12
- package/lib/types/dsh-adapter/oauth/bonus.d.ts +27 -0
- package/lib/types/dsh-adapter/oauth/bonus.d.ts.map +1 -0
- package/lib/types/dsh-adapter/oauth/bonus.js +69 -0
- package/{node_modules/@deepseek-harness-tui/dsh-auth/lib → lib/types/dsh-adapter/oauth}/command.d.ts +2 -1
- package/lib/types/dsh-adapter/oauth/command.d.ts.map +1 -0
- package/{node_modules/@deepseek-harness-tui/dsh-auth/lib → lib/types/dsh-adapter/oauth}/command.js +7 -4
- package/{node_modules/@deepseek-harness-tui/dsh-auth/lib → lib/types/dsh-adapter/oauth}/credentials.d.ts +13 -10
- package/lib/types/dsh-adapter/oauth/credentials.d.ts.map +1 -0
- package/{node_modules/@deepseek-harness-tui/dsh-auth/lib → lib/types/dsh-adapter/oauth}/credentials.js +61 -23
- package/lib/types/dsh-adapter/oauth/deepseek.d.ts +39 -0
- package/lib/types/dsh-adapter/oauth/deepseek.d.ts.map +1 -0
- package/lib/types/dsh-adapter/oauth/deepseek.js +189 -0
- package/{node_modules/@deepseek-harness-tui/dsh-auth/lib → lib/types/dsh-adapter/oauth}/index.d.ts +24 -16
- package/lib/types/dsh-adapter/oauth/index.d.ts.map +1 -0
- package/{node_modules/@deepseek-harness-tui/dsh-auth/lib → lib/types/dsh-adapter/oauth}/index.js +34 -20
- package/{node_modules/@deepseek-harness-tui/dsh-auth/lib → lib/types/dsh-adapter/oauth}/interaction.d.ts +14 -12
- package/lib/types/dsh-adapter/oauth/interaction.d.ts.map +1 -0
- package/lib/types/dsh-adapter/oauth/interaction.js +283 -0
- package/{node_modules/@deepseek-harness-tui/dsh-auth/lib → lib/types/dsh-adapter/oauth}/opener.d.ts +2 -1
- package/lib/types/dsh-adapter/oauth/opener.d.ts.map +1 -0
- package/{node_modules/@deepseek-harness-tui/dsh-auth/lib → lib/types/dsh-adapter/oauth}/opener.js +1 -1
- package/{node_modules/@deepseek-harness-tui/dsh-auth/lib → lib/types/dsh-adapter/oauth}/pi-ai.d.ts +10 -3
- package/lib/types/dsh-adapter/oauth/pi-ai.d.ts.map +1 -0
- package/{node_modules/@deepseek-harness-tui/dsh-auth/lib → lib/types/dsh-adapter/oauth}/pi-ai.js +8 -3
- package/{node_modules/@deepseek-harness-tui/dsh-auth/lib → lib/types/dsh-adapter/oauth}/profiles.d.ts +6 -3
- package/lib/types/dsh-adapter/oauth/profiles.d.ts.map +1 -0
- package/{node_modules/@deepseek-harness-tui/dsh-auth/lib → lib/types/dsh-adapter/oauth}/profiles.js +11 -3
- package/{node_modules/@deepseek-harness-tui/dsh-auth/lib → lib/types/dsh-adapter/oauth}/service.d.ts +14 -7
- package/lib/types/dsh-adapter/oauth/service.d.ts.map +1 -0
- package/{node_modules/@deepseek-harness-tui/dsh-auth/lib → lib/types/dsh-adapter/oauth}/service.js +82 -17
- package/lib/types/dsh-adapter/panel-runtime-registry.d.ts +39 -0
- package/lib/types/dsh-adapter/panel-runtime-registry.d.ts.map +1 -0
- package/lib/types/dsh-adapter/panel-runtime-registry.js +84 -0
- package/lib/types/dsh-adapter/panels.d.ts +251 -0
- package/lib/types/dsh-adapter/panels.d.ts.map +1 -0
- package/lib/types/dsh-adapter/panels.js +407 -0
- package/lib/types/dsh-adapter/plugin-host.js +1 -1
- package/lib/types/dsh-adapter/plugin.d.ts +25 -2
- package/lib/types/dsh-adapter/plugin.d.ts.map +1 -1
- package/lib/types/dsh-adapter/plugin.js +241 -44
- package/lib/types/dsh-adapter/presets.d.ts +26 -4
- package/lib/types/dsh-adapter/presets.d.ts.map +1 -1
- package/lib/types/dsh-adapter/presets.js +29 -5
- package/lib/types/dsh-adapter/providerWizard.d.ts.map +1 -1
- package/lib/types/dsh-adapter/providerWizard.js +6 -2
- package/lib/types/dsh-adapter/startup-args.d.ts +8 -0
- package/lib/types/dsh-adapter/startup-args.d.ts.map +1 -0
- package/lib/types/dsh-adapter/startup-args.js +34 -0
- package/lib/types/dsh-adapter/subagents.d.ts +1 -0
- package/lib/types/dsh-adapter/subagents.d.ts.map +1 -1
- package/lib/types/dsh-adapter/subagents.js +10 -1
- package/lib/types/history.d.ts +24 -7
- package/lib/types/history.d.ts.map +1 -1
- package/lib/types/history.js +77 -18
- package/lib/types/i18n.d.ts +908 -33
- package/lib/types/i18n.d.ts.map +1 -1
- package/lib/types/i18n.js +355 -17
- package/lib/types/ink/components/App.d.ts +14 -1
- package/lib/types/ink/components/App.d.ts.map +1 -1
- package/lib/types/ink/components/App.js +71 -61
- package/lib/types/ink/components/TerminalSizeContext.d.ts +7 -0
- package/lib/types/ink/components/TerminalSizeContext.d.ts.map +1 -1
- package/lib/types/ink/hooks/use-input.d.ts +11 -0
- package/lib/types/ink/hooks/use-input.d.ts.map +1 -1
- package/lib/types/ink/hooks/use-input.js +8 -2
- package/lib/types/ink/hooks/use-terminal-viewport.d.ts.map +1 -1
- package/lib/types/ink/hooks/use-terminal-viewport.js +3 -1
- package/lib/types/ink/ink.d.ts +18 -0
- package/lib/types/ink/ink.d.ts.map +1 -1
- package/lib/types/ink/ink.js +51 -8
- package/lib/types/ink/output.d.ts +10 -1
- package/lib/types/ink/output.d.ts.map +1 -1
- package/lib/types/ink/output.js +3 -3
- package/lib/types/ink/parse-keypress.d.ts +71 -3
- package/lib/types/ink/parse-keypress.d.ts.map +1 -1
- package/lib/types/ink/parse-keypress.js +815 -133
- package/lib/types/ink/render-node-to-output.d.ts +1 -1
- package/lib/types/ink/render-node-to-output.d.ts.map +1 -1
- package/lib/types/ink/render-node-to-output.js +37 -5
- package/lib/types/ink/screen.d.ts +26 -1
- package/lib/types/ink/screen.d.ts.map +1 -1
- package/lib/types/ink/screen.js +96 -1
- package/lib/types/ink/selection.d.ts +23 -1
- package/lib/types/ink/selection.d.ts.map +1 -1
- package/lib/types/ink/selection.js +102 -26
- package/lib/types/ink/sixel-codec.d.ts +11 -0
- package/lib/types/ink/sixel-codec.d.ts.map +1 -1
- package/lib/types/ink/sixel-codec.js +42 -8
- package/lib/types/ink/terminal-querier.d.ts +25 -0
- package/lib/types/ink/terminal-querier.d.ts.map +1 -1
- package/lib/types/ink/terminal-querier.js +42 -0
- package/lib/types/ink/update-overflow-guard.d.ts +24 -0
- package/lib/types/ink/update-overflow-guard.d.ts.map +1 -1
- package/lib/types/ink/update-overflow-guard.js +25 -3
- package/lib/types/math/renderer.d.ts +2 -0
- package/lib/types/math/renderer.d.ts.map +1 -1
- package/lib/types/math/renderer.js +4 -0
- package/lib/types/minimalUiMode.d.ts +19 -0
- package/lib/types/minimalUiMode.d.ts.map +1 -0
- package/lib/types/minimalUiMode.js +23 -0
- package/lib/types/oauth.d.ts +5 -10
- package/lib/types/oauth.d.ts.map +1 -1
- package/lib/types/oauth.js +5 -10
- package/lib/types/onboardingPrefs.d.ts +52 -0
- package/lib/types/onboardingPrefs.d.ts.map +1 -0
- package/lib/types/onboardingPrefs.js +107 -0
- package/lib/types/panels.d.ts +4 -0
- package/lib/types/panels.d.ts.map +1 -0
- package/lib/types/panels.js +4 -0
- package/lib/types/screens/Chat.d.ts +25 -1
- package/lib/types/screens/Chat.d.ts.map +1 -1
- package/lib/types/screens/Chat.js +1149 -302
- package/lib/types/screens/Launchpad.d.ts +194 -0
- package/lib/types/screens/Launchpad.d.ts.map +1 -0
- package/lib/types/screens/Launchpad.js +607 -0
- package/lib/types/screens/Onboarding.d.ts +37 -0
- package/lib/types/screens/Onboarding.d.ts.map +1 -0
- package/lib/types/screens/Onboarding.js +492 -0
- package/lib/types/screens/SessionSupervisor.d.ts.map +1 -1
- package/lib/types/screens/SessionSupervisor.js +18 -12
- package/lib/types/screens/StatusLine.d.ts +4 -0
- package/lib/types/screens/StatusLine.d.ts.map +1 -1
- package/lib/types/screens/StatusLine.js +43 -25
- package/lib/types/screens/StatusMetrics.d.ts +22 -0
- package/lib/types/screens/StatusMetrics.d.ts.map +1 -1
- package/lib/types/screens/StatusMetrics.js +20 -0
- package/lib/types/screens/chatOverlay.d.ts +18 -1
- package/lib/types/screens/chatOverlay.d.ts.map +1 -1
- package/lib/types/screens/chatOverlay.js +3 -0
- package/lib/types/screens/sessionSupervisor/model.d.ts +1 -2
- package/lib/types/screens/sessionSupervisor/model.d.ts.map +1 -1
- package/lib/types/screens/sessionSupervisor/model.js +4 -2
- package/lib/types/screens/sessionSupervisor/useSessionSupervisor.d.ts.map +1 -1
- package/lib/types/screens/sessionSupervisor/useSessionSupervisor.js +7 -3
- package/lib/types/settings/definitions.d.ts +93 -0
- package/lib/types/settings/definitions.d.ts.map +1 -1
- package/lib/types/settings/definitions.js +87 -4
- package/lib/types/tips.d.ts.map +1 -1
- package/lib/types/tips.js +13 -7
- package/lib/types/tuiDisplayPrefs.d.ts +42 -2
- package/lib/types/tuiDisplayPrefs.d.ts.map +1 -1
- package/lib/types/tuiDisplayPrefs.js +74 -0
- package/lib/types/update.d.ts +53 -9
- package/lib/types/update.d.ts.map +1 -1
- package/lib/types/update.js +103 -46
- package/lib/types/utils/bmp.d.ts.map +1 -1
- package/lib/types/utils/bmp.js +8 -1
- package/lib/types/utils/clipboard.d.ts.map +1 -1
- package/lib/types/utils/clipboard.js +25 -6
- package/lib/types/utils/credentials.d.ts.map +1 -1
- package/lib/types/utils/credentials.js +5 -1
- package/lib/types/utils/draftWordBoundary.d.ts +23 -0
- package/lib/types/utils/draftWordBoundary.d.ts.map +1 -0
- package/lib/types/utils/draftWordBoundary.js +161 -0
- package/lib/types/utils/fileTarget.d.ts.map +1 -1
- package/lib/types/utils/fileTarget.js +7 -9
- package/lib/types/utils/inputPaste.d.ts +62 -0
- package/lib/types/utils/inputPaste.d.ts.map +1 -0
- package/lib/types/utils/inputPaste.js +111 -0
- package/lib/types/utils/intl.d.ts +8 -0
- package/lib/types/utils/intl.d.ts.map +1 -1
- package/lib/types/utils/intl.js +11 -0
- package/lib/types/utils/keymap.d.ts +13 -3
- package/lib/types/utils/keymap.d.ts.map +1 -1
- package/lib/types/utils/keymap.js +27 -5
- package/lib/types/utils/pastedImagePath.d.ts +8 -0
- package/lib/types/utils/pastedImagePath.d.ts.map +1 -1
- package/lib/types/utils/pastedImagePath.js +29 -5
- package/package.json +128 -106
- package/presets/liangshen/agent.cordis.yml +4 -1
- package/presets/liangshen/preset.yml +1 -1
- package/{dsh-ecosystem-spec → tui-profile}/registry/README.md +1 -1
- package/{dsh-ecosystem-spec → tui-profile}/registry/registry-0.15.json +1 -1
- package/lib/types/minimalMode.d.ts +0 -13
- package/lib/types/minimalMode.d.ts.map +0 -1
- package/lib/types/minimalMode.js +0 -17
- package/node_modules/@deepseek-harness-tui/dsh-auth/LICENSE +0 -21
- package/node_modules/@deepseek-harness-tui/dsh-auth/README.md +0 -143
- package/node_modules/@deepseek-harness-tui/dsh-auth/cordis.patch.yml +0 -11
- package/node_modules/@deepseek-harness-tui/dsh-auth/dsh-plugin.json +0 -44
- package/node_modules/@deepseek-harness-tui/dsh-auth/lib/interaction.js +0 -193
- package/node_modules/@deepseek-harness-tui/dsh-auth/package.json +0 -69
- /package/{dsh-ecosystem-spec → tui-profile}/protocols/profile-definitions.d.ts +0 -0
- /package/{dsh-ecosystem-spec → tui-profile}/protocols/profile-definitions.js +0 -0
- /package/{dsh-ecosystem-spec → tui-profile}/protocols/tui-channel-http.d.ts +0 -0
- /package/{dsh-ecosystem-spec → tui-profile}/protocols/tui-channel-http.js +0 -0
- /package/{dsh-ecosystem-spec → tui-profile}/protocols/tui-channel.d.ts +0 -0
- /package/{dsh-ecosystem-spec → tui-profile}/protocols/tui-channel.js +0 -0
- /package/{dsh-ecosystem-spec → tui-profile}/protocols/tui-contributions.d.ts +0 -0
- /package/{dsh-ecosystem-spec → tui-profile}/protocols/tui-contributions.js +0 -0
- /package/{dsh-ecosystem-spec → tui-profile}/registry/contracts/decision-events-v1alpha1.json +0 -0
- /package/{dsh-ecosystem-spec → tui-profile}/registry/contracts/scene-v1alpha1.json +0 -0
- /package/{dsh-ecosystem-spec → tui-profile}/registry/contracts/settings-section-v1alpha1.json +0 -0
- /package/{dsh-ecosystem-spec → tui-profile}/registry/contracts/tui-channel-v1alpha1.json +0 -0
- /package/{dsh-ecosystem-spec → tui-profile}/registry/contracts/workspace-provider-v1alpha1.json +0 -0
- /package/{dsh-ecosystem-spec → tui-profile}/registry/host-descriptor.tui.example.json +0 -0
- /package/{dsh-ecosystem-spec → tui-profile}/registry/permissions-0.1.json +0 -0
- /package/{dsh-ecosystem-spec → tui-profile}/schemas/conformance-claim.schema.json +0 -0
- /package/{dsh-ecosystem-spec → tui-profile}/schemas/effect-ledger-record.schema.json +0 -0
- /package/{dsh-ecosystem-spec → tui-profile}/schemas/host-descriptor.schema.json +0 -0
package/lib/types/i18n.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../src/i18n.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AAMH,MAAM,MAAM,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AAI9B,+DAA+D;AAC/D,eAAO,MAAM,KAAK,uBAAwB,CAAA;AAE1C;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAE9D,QAAA,MAAM,IAAI
|
|
1
|
+
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../src/i18n.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AAMH,MAAM,MAAM,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AAI9B,+DAA+D;AAC/D,eAAO,MAAM,KAAK,uBAAwB,CAAA;AAE1C;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAE9D,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuuD0D,CAAA;AAEpE,MAAM,MAAM,OAAO,GAAG,MAAM,OAAO,IAAI,CAAA;AACvC,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAA;AAUxD,uEAAuE;AACvE,KAAK,QAAQ,GAAG,MAAM,IAAI,CAAA;AAG1B,8EAA8E;AAC9E,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,IAAI,CAG5D;AAED,qCAAqC;AACrC,wBAAgB,OAAO,IAAI,IAAI,CAE9B;AAED,yDAAyD;AACzD,wBAAgB,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAGxC;AAED,iDAAiD;AACjD,wBAAgB,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,IAAI,CAEpD;AAED;;;;;;GAMG;AACH,wBAAgB,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,GAAE,UAAe,GAAG,MAAM,CAG/D;AAwBD;;;;;;;;;GASG;AACH,wBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAE,UAAe,GAAG,MAAM,CAGlF;AAED,4EAA4E;AAC5E,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;IAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAA;CAAE,CAAC,CAAQ,CAAA;AAI1G;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAS5D;AAED,wEAAwE;AACxE,wBAAgB,YAAY,CAAC,GAAG,GAAE,MAAkB,GAAG,IAAI,GAAG,SAAS,CAMtE;AAED,iDAAiD;AACjD,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,GAAE,MAAkB,GAAG,OAAO,CAU1E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAWvC;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAIzC"}
|
package/lib/types/i18n.js
CHANGED
|
@@ -107,13 +107,16 @@ const dict = {
|
|
|
107
107
|
'preset-name-standard': { zh: '标准模式', en: 'Standard' },
|
|
108
108
|
'preset-desc-standard': { zh: '功能完整的编码 Agent,支持文件编辑、Shell、文件与网页检索、Skills、计划、目标、子代理和工作流。', en: 'Full-featured coding agent: file editing, shell, file & web search, skills, plans, goals, subagents and workflows.' },
|
|
109
109
|
'preset-name-minimal': { zh: '极简模式', en: 'Minimal' },
|
|
110
|
-
'preset-desc-minimal': { zh: '
|
|
110
|
+
'preset-desc-minimal': { zh: '内核 Agent 预设(极简模式):只暴露一个持久 shell 工具(POSIX 为 bash,Windows 为 pwsh),不带 compaction、计划模式与运行时上下文。', en: 'Kernel agent preset (Minimal): a single persistent-shell tool (bash on POSIX, pwsh on Windows), with no compaction, no plan mode and no runtime context.' },
|
|
111
111
|
'preset-name-code': { zh: 'PTC 模式', en: 'PTC' },
|
|
112
112
|
'preset-desc-code': { zh: '具备标准模式的全部能力,并通过 Code Mode SDK 呈现工具,让模型用一个 TypeScript 程序组合多步操作。', en: 'Everything standard mode offers, with tools exposed through the Code Mode SDK so the model composes multi-step operations in one TypeScript program.' },
|
|
113
113
|
'preset-name-cordis': { zh: '创造模式', en: 'Creation' },
|
|
114
114
|
'preset-desc-cordis': { zh: '用于创建自定义 Agent preset:具备标准模式的全部能力,并提供运行时检查、插件实验和 preset 创作指导。', en: 'For authoring custom agent presets: everything standard mode offers plus runtime inspection, plugin experiments and preset-authoring guidance.' },
|
|
115
115
|
'preset-name-liangshen': { zh: '梁神模式', en: 'Liangshen mode' },
|
|
116
|
-
'preset-desc-liangshen': { zh: '主 Agent 与子 Agent
|
|
116
|
+
'preset-desc-liangshen': { zh: '主 Agent 与子 Agent 首轮均保持极简模式的最小工具面,首次工具调用后开放完整目录,压缩后重新锚定。', en: 'Root and delegated agents keep the Minimal preset\'s minimal tool surface on the first turn; the full catalog opens after the first tool call and re-anchors after compaction.' },
|
|
117
|
+
// The preset picker's header names the AGENT PRESET explicitly, so it can
|
|
118
|
+
// never be read as the /settings 「极简界面」 (Minimal UI) display switch.
|
|
119
|
+
'preset-picker-title': { zh: '内核 Agent 预设', en: 'Kernel agent preset' },
|
|
117
120
|
'mcp-none-configured': { zh: '未配置 MCP 服务器。', en: 'No MCP servers configured.' },
|
|
118
121
|
'mcp-insert-hint': { zh: '在 profile 补丁层(~/.dsh/profiles/dsh-tui/cordis.patch.yml)insert 一行即可,例:', en: 'Insert one line in the profile patch layer (~/.dsh/profiles/dsh-tui/cordis.patch.yml), e.g.:' },
|
|
119
122
|
'mcp-readme-hint': { zh: '详见仓库 README 的 MCP 章节。', en: 'See the MCP section of the repo README.' },
|
|
@@ -133,6 +136,11 @@ const dict = {
|
|
|
133
136
|
zh: '已选中 {{lines}} 行 · {{path}}',
|
|
134
137
|
en: { one: 'Selected {{lines}} line from {{path}}', other: 'Selected {{lines}} lines from {{path}}' },
|
|
135
138
|
},
|
|
139
|
+
// "Send to Chat" (side-panel §6.7): the composer chip for one context a
|
|
140
|
+
// panel staged. zh and en deliberately carry the same shape — it is a label
|
|
141
|
+
// (mark + title), not a sentence, and the ⧉ mark matches the selection
|
|
142
|
+
// indicator's above.
|
|
143
|
+
'prompt-attached-context-chip': { zh: '⧉ {{title}}', en: '⧉ {{title}}' },
|
|
136
144
|
'transcript-image': { zh: '图片', en: 'Image' },
|
|
137
145
|
'image-preview-previous': { zh: '上一张', en: 'Previous image' },
|
|
138
146
|
'image-preview-next': { zh: '下一张', en: 'Next image' },
|
|
@@ -303,6 +311,34 @@ const dict = {
|
|
|
303
311
|
'compact-cancelled': { zh: '压缩已取消', en: 'Compaction cancelled' },
|
|
304
312
|
// 回合进行中的自动压缩:工作 spinner 上的后缀(只此一词,别抢行)。
|
|
305
313
|
'compact-badge': { zh: '压缩中', en: 'compacting' },
|
|
314
|
+
// ── 能力事实(dsh-adapter/channel/capabilities.ts)───────────────────
|
|
315
|
+
// 命令在「当前 agent 组合」下没有任何实现路径时,入口要先说清原因,
|
|
316
|
+
// 而不是看起来可用、按下去才报一句没有服务。
|
|
317
|
+
'capability-unavailable': {
|
|
318
|
+
zh: '/{{name}} 在当前 agent 预设下不可用:{{reason}}',
|
|
319
|
+
en: '/{{name}} is unavailable under the active agent preset: {{reason}}',
|
|
320
|
+
},
|
|
321
|
+
'capability-reason-no-compaction': {
|
|
322
|
+
zh: '该预设没有挂载压缩服务(内核「极简模式」预设不含 compaction,官方 /compact 命令也依赖它)',
|
|
323
|
+
en: 'the preset mounts no compaction service (the kernel Minimal preset omits compaction, and the official /compact command depends on it)',
|
|
324
|
+
},
|
|
325
|
+
'capability-reason-no-plan-command': {
|
|
326
|
+
zh: '该预设没有注册 /plan 命令(内核「极简模式」预设不含 plan-mode)',
|
|
327
|
+
en: 'the preset registers no /plan command (the kernel Minimal preset omits plan mode)',
|
|
328
|
+
},
|
|
329
|
+
// 进入/恢复一个缺能力的预设时的一次性告知:只讲用户会遇到的后果。
|
|
330
|
+
'capability-gap-compaction': {
|
|
331
|
+
zh: '当前 agent 预设没有压缩:长会话可能撞上下文上限,届时只能新开会话',
|
|
332
|
+
en: 'The active agent preset has no compaction: a long session can hit the context limit and has to be restarted',
|
|
333
|
+
},
|
|
334
|
+
'capability-gap-pruner': {
|
|
335
|
+
zh: '当前 agent 预设不剪枝工具结果:超长工具输出会整段留在上下文里',
|
|
336
|
+
en: 'The active agent preset does not prune tool results: oversized tool output stays in the context in full',
|
|
337
|
+
},
|
|
338
|
+
'capability-gap-compaction-pruner': {
|
|
339
|
+
zh: '当前 agent 预设既没有压缩也不剪枝工具结果:长会话可能撞上下文上限,超长工具输出也会整段留在上下文里',
|
|
340
|
+
en: 'The active agent preset has neither compaction nor tool-result pruning: a long session can hit the context limit, and oversized tool output stays in the context in full',
|
|
341
|
+
},
|
|
306
342
|
'turn-failed': { zh: '回合出错{{detail}}', en: 'Turn error{{detail}}' },
|
|
307
343
|
// ── dsh-adapter/promptDebug.ts(/debug-prompt 成功提示)─────────────
|
|
308
344
|
// 快照 0600 落在会话工作区根,与 export-saved 同一句清理提醒。
|
|
@@ -434,6 +470,9 @@ const dict = {
|
|
|
434
470
|
// ── screens/SessionSupervisor.tsx(三合一会话管理:/resume /agentview /home)─
|
|
435
471
|
'supervisor-title': { zh: '会话管理', en: 'Sessions' },
|
|
436
472
|
'supervisor-unregistered': { zh: '未登记的工作区', en: 'Unregistered' },
|
|
473
|
+
'supervisor-history-only': { zh: '仅历史', en: 'History only' },
|
|
474
|
+
'supervisor-workspace-groups': { zh: '工作区 {{registered}} · 历史目录 {{history}}', en: 'Workspaces {{registered}} · History {{history}}' },
|
|
475
|
+
'supervisor-workspace-removed': { zh: '工作区登记已移除;目录与历史会话仍保留', en: 'Workspace registration removed; directory and past sessions remain' },
|
|
437
476
|
'supervisor-no-matches': { zh: '没有匹配的会话 · Esc 清空筛选', en: 'No sessions match · Esc clears the filter' },
|
|
438
477
|
'supervisor-subtitle': { zh: '本终端托管多个会话 · 切换不中断', en: 'This terminal hosts several sessions · switching does not stop them' },
|
|
439
478
|
'supervisor-filter-placeholder': { zh: '输入以搜索会话…', en: 'Type to search sessions…' },
|
|
@@ -469,10 +508,12 @@ const dict = {
|
|
|
469
508
|
'supervisor-foreign-failed-not-a-session': { zh: '不是可导入的会话', en: 'not an importable session' },
|
|
470
509
|
'supervisor-foreign-failed-write-failed': { zh: '写入会话失败', en: 'writing the session failed' },
|
|
471
510
|
'supervisor-foreign-failed-unknown-source': { zh: '未知来源', en: 'unknown source' },
|
|
472
|
-
'cost-cache-rate': { zh: '
|
|
473
|
-
|
|
511
|
+
'cost-cache-rate': { zh: '本次请求缓存率 {{rate}}% · {{read}} 读 / {{write}} 写', en: 'Cache rate of this request: {{rate}}% · {{read}} read / {{write}} write' },
|
|
512
|
+
// 占用只有一个真源(官方 contextPressure 投影,见 dsh-adapter/context-occupancy.ts):
|
|
513
|
+
// 与 /tokens、状态栏 ctx 字段、告警共用同一读数。
|
|
514
|
+
'context-occupancy': { zh: '上下文占用 {{percent}}%({{used}}/{{window}})', en: 'Context occupancy {{percent}}% ({{used}}/{{window}})' },
|
|
474
515
|
'status-title': { zh: '标题 {{title}}', en: 'Title {{title}}' },
|
|
475
|
-
'cost-cache-hit-rate': { zh: '
|
|
516
|
+
'cost-cache-hit-rate': { zh: '本次请求缓存命中率 {{rate}}% · 缓存 {{read}} 读 / {{write}} 写', en: 'Cache hit rate of this request: {{rate}}% · cache {{read}} read / {{write}} write' },
|
|
476
517
|
// /cost 末尾口径:有金额 → 本地估算(官方单价 × 用量)、非平台账单;
|
|
477
518
|
// 无金额(无用量 / 全部未计价)→ 只解释 token,不套用金额口径。
|
|
478
519
|
// 旧文案"DSH 不提供 API 费用计量"与 T01/T03 的新展示/文档矛盾(#1089)。
|
|
@@ -533,13 +574,14 @@ const dict = {
|
|
|
533
574
|
'login-base-url': { zh: 'Base URL: {{url}}', en: 'Base URL: {{url}}' },
|
|
534
575
|
'login-official-endpoint': { zh: '官方端点', en: 'official endpoint' },
|
|
535
576
|
'login-logout-hint': { zh: '使用 /provider 管理 DSH 凭据;若来源为 env,请删除对应环境变量并重启 dsh-tui', en: 'Manage DSH credentials with /provider; for env sources, remove the corresponding environment variable and restart dsh-tui' },
|
|
536
|
-
// /login 的 OAuth
|
|
537
|
-
'login-oauth-heading': { zh: '
|
|
577
|
+
// /login 的 OAuth 账号状态段(内置 OAuth 模块挂载时追加)
|
|
578
|
+
'login-oauth-heading': { zh: 'OAuth 账号:', en: 'OAuth accounts:' },
|
|
538
579
|
'login-oauth-row': { zh: ' {{provider}} — {{state}}', en: ' {{provider}} — {{state}}' },
|
|
539
580
|
'login-oauth-in': { zh: '已登录 · 令牌到期 {{time}}', en: 'signed in · token expires {{time}}' },
|
|
581
|
+
'login-oauth-in-no-expiry': { zh: '已登录', en: 'signed in' },
|
|
540
582
|
'login-oauth-expired': { zh: '已登录但令牌已过期,重新登录可恢复', en: 'signed in but the token expired — sign in again to restore' },
|
|
541
583
|
'login-oauth-signed-out': { zh: '未登录', en: 'not signed in' },
|
|
542
|
-
'login-oauth-hint': { zh: ' 登录/登出:/provider
|
|
584
|
+
'login-oauth-hint': { zh: ' 登录/登出:/provider 账号登录,或 /auth login <provider>', en: ' Sign in/out: /provider account sign-in, or /auth login <provider>' },
|
|
543
585
|
'permission-policy-hint': { zh: 'DSH 权限策略由 fs-policy / bash-sandbox 配置决定(当前 leaf:workspace 内读写、写入需已读文件)。', en: 'DSH permission policy is set by fs-policy / bash-sandbox config (current leaf: read/write in workspace, writes need a prior read).' },
|
|
544
586
|
'permission-approval-hint': { zh: '审批通道已挂载:命令申请权限提升(sandbox_permissions)时弹出审批条,Yes 放行一次、No / Esc 拒绝。', en: 'The approval channel is mounted: sandbox escalations (sandbox_permissions) raise an approval bar — Yes allows once, No / Esc rejects.' },
|
|
545
587
|
'permission-root-hint': { zh: '当前文件系统策略以工作目录为根:{{cwd}}', en: 'Current filesystem policy is rooted at the working directory: {{cwd}}' },
|
|
@@ -656,8 +698,21 @@ const dict = {
|
|
|
656
698
|
'thinking-toggled': { zh: '思考过程:{{state}}', en: 'Thinking display: {{state}}' },
|
|
657
699
|
'thinking-on': { zh: '显示', en: 'shown' },
|
|
658
700
|
'thinking-off': { zh: '隐藏', en: 'hidden' },
|
|
659
|
-
|
|
660
|
-
|
|
701
|
+
// /tokens、/status、/cost 的 token 口径:provider 的四个桶是互斥计数,
|
|
702
|
+
// 「本次请求上传量」= input+cacheRead+cacheWrite(= prompt 大小),
|
|
703
|
+
// 「会话累计」才是 tokens 计数器。两者不得再并列成一句。
|
|
704
|
+
'tokens-request-upload': {
|
|
705
|
+
zh: '本次请求:上传 {{upload}}(输入 {{input}} · 缓存读 {{read}} · 缓存写 {{write}})· 命中率 {{rate}}%',
|
|
706
|
+
en: 'This request: {{upload}} uploaded (input {{input}} · cache read {{read}} · cache write {{write}}) · hit rate {{rate}}%',
|
|
707
|
+
},
|
|
708
|
+
'tokens-session-total': {
|
|
709
|
+
zh: '会话累计:未缓存输入 {{input}} · 输出 {{output}}',
|
|
710
|
+
en: 'Session total: {{input}} uncached input · {{output}} output',
|
|
711
|
+
},
|
|
712
|
+
'tokens-session-breakdown': {
|
|
713
|
+
zh: '会话累计:未缓存输入 {{input}} · 输出 {{output}} · 缓存读 {{read}} · 缓存写 {{write}}',
|
|
714
|
+
en: 'Session total: {{input}} uncached input · {{output}} output · {{read}} cache read · {{write}} cache write',
|
|
715
|
+
},
|
|
661
716
|
// ── plugin.ts — /update flow ───────────────────────────────────────
|
|
662
717
|
'update-aborted-no-profile': { zh: 'dsh-tui 更新中止:未解析到 dsh profile。', en: 'dsh-tui update aborted: no dsh profile resolved.' },
|
|
663
718
|
// 0.8.3 launcher alignment bridge: /update only replaces the profile
|
|
@@ -694,6 +749,7 @@ const dict = {
|
|
|
694
749
|
'mode-plan': { zh: '计划模式', en: 'plan mode' },
|
|
695
750
|
'mode-full': { zh: '完全访问', en: 'full access' },
|
|
696
751
|
'mode-plan-unavailable': { zh: '当前 preset 未注册 /plan 命令,无法切换计划模式', en: 'The active preset does not register /plan; cannot toggle plan mode' },
|
|
752
|
+
'mode-switch-failed': { zh: '模式切换失败 · {{err}}', en: 'Mode switch failed · {{err}}' },
|
|
697
753
|
'mode-permission-unregistered': { zh: '当前 preset 未注册 /permission 命令,无法切换权限模式', en: 'The active preset does not register /permission; cannot switch the permission mode' },
|
|
698
754
|
'mode-permission-invoke-failed': { zh: '/permission 切换失败,请重试或查看日志', en: '/permission switch failed; retry or check the logs' },
|
|
699
755
|
'mode-permission-unconfirmed': { zh: '权限切换未被 DSH 确认,模式未改变', en: 'The permission switch was not confirmed by DSH; the mode is unchanged' },
|
|
@@ -749,6 +805,10 @@ const dict = {
|
|
|
749
805
|
'star-modal-thanks-3': { zh: '这颗 Star 会变成 dshTUI 继续成长的动力。', en: 'This Star becomes fuel for dsh-TUI to keep growing.' },
|
|
750
806
|
'star-modal-thanks-4': { zh: '希望以后,它也能继续陪你走很久。', en: 'May it keep you company for a long time to come.' },
|
|
751
807
|
'star-modal-thanks-hint': { zh: '**Enter** / **Esc** 关闭', en: '**Enter** / **Esc** to close' },
|
|
808
|
+
'coupon-modal-title': { zh: '鲸鱼券', en: 'Whale coupon' },
|
|
809
|
+
'coupon-modal-received': { zh: 'DeepSeek 送你的 {{amount}} {{unit}}鲸鱼券到账啦~', en: 'Your {{amount}} {{unit}} whale coupon from DeepSeek is here ~' },
|
|
810
|
+
'coupon-modal-expiry': { zh: 'Deepy提醒:这张券 {{month}} 月 {{day}} 日 {{time}} 就要过期啦,别忘记用掉哦~', en: 'Deepy says: this coupon expires on {{month}}/{{day}} at {{time}}. Do not forget to use it ~' },
|
|
811
|
+
'coupon-modal-hint': { zh: '**Enter** / **Esc** 收好鲸鱼券', en: '**Enter** / **Esc** to tuck it away' },
|
|
752
812
|
'logo-tip-prefix': { zh: '提示:', en: 'Tip: ' },
|
|
753
813
|
'logo-tip-more': { zh: '更多技巧', en: 'more tips' },
|
|
754
814
|
// Upstream-drift notice (merged one-liner under the tip; copy explains
|
|
@@ -1048,7 +1108,7 @@ const dict = {
|
|
|
1048
1108
|
'plugins-check-usage': { zh: '用法:/plugins check <dsh-plugin.json 路径>', en: 'Usage: /plugins check <path-to-dsh-plugin.json>' },
|
|
1049
1109
|
'plugins-check-not-found': { zh: '文件不存在:{{path}}', en: 'File not found: {{path}}' },
|
|
1050
1110
|
'plugins-check-invalid-json': { zh: '不是可解析的 JSON:{{err}}', en: 'Not parseable JSON: {{err}}' },
|
|
1051
|
-
'plugins-check-spec-unavailable': { zh: 'vendored 规范数据不可用(
|
|
1111
|
+
'plugins-check-spec-unavailable': { zh: 'vendored 规范数据不可用(tui-profile/),无法校验。', en: 'Vendored spec data unavailable (tui-profile/); cannot validate.' },
|
|
1052
1112
|
'plugins-check-schema-failed': { zh: 'schema 校验失败:{{err}}', en: 'Schema validation failed: {{err}}' },
|
|
1053
1113
|
'plugins-check-invalid': { zh: '语义校验失败:{{err}}', en: 'Semantic validation failed: {{err}}' },
|
|
1054
1114
|
'plugins-check-state': { zh: '协商结果:{{state}}', en: 'Negotiation decision: {{state}}' },
|
|
@@ -1097,6 +1157,9 @@ const dict = {
|
|
|
1097
1157
|
'theme-auto-base': { zh: '内置 · 跟随系统/终端背景自动选择 light/dark', en: 'Built-in · follows the system/terminal background (light/dark)' },
|
|
1098
1158
|
'theme-user-base': { zh: '{{base}} 基底 · ~/.dsh-tui/themes/{{name}}.json', en: '{{base}} base · ~/.dsh-tui/themes/{{name}}.json' },
|
|
1099
1159
|
'theme-plugin-base': { zh: '插件 · {{base}} 基底 · {{name}}', en: 'Plugin · {{base}} base · {{name}}' },
|
|
1160
|
+
// ── components/ThemePreviewPane.tsx ─────────────────────────────────
|
|
1161
|
+
'theme-preview-title': { zh: '主题预览', en: 'Theme preview' },
|
|
1162
|
+
'theme-preview-follow': { zh: '跟焦点实时预览', en: 'Live, follows focus' },
|
|
1100
1163
|
// ── components/LoadedContextPanel.tsx ───────────────────────────────
|
|
1101
1164
|
'context-unavailable': { zh: '当前会话没有已加载的上下文', en: 'No loaded context is available for this session' },
|
|
1102
1165
|
'context-panel-sections': { zh: '系统提示词 · {{n}} 段', en: 'System prompt · {{n}} sections' },
|
|
@@ -1158,9 +1221,18 @@ const dict = {
|
|
|
1158
1221
|
'subagent-dashboard-title': { zh: ' 子代理面板 ', en: ' Subagent Dashboard ' },
|
|
1159
1222
|
'subagent-dashboard-hint-basic': { zh: '↑/↓ 浏览 · Esc 关闭', en: '↑/↓ browse · Esc close' },
|
|
1160
1223
|
'subagent-dashboard-hint-detail': { zh: '↑/↓ 选择 · Enter 查看详情 · Esc 关闭', en: '↑/↓ select · Enter view detail · Esc close' },
|
|
1224
|
+
// 侧栏形态的 Esc 语义与整屏不同:让出焦点回聊天(面板不自己关侧栏)。
|
|
1225
|
+
'subagent-dashboard-hint-panel': { zh: '↑/↓ 选择 · Enter 查看详情 · Esc 回到聊天', en: '↑/↓ select · Enter view detail · Esc chat' },
|
|
1161
1226
|
'subagent-card-prefix': { zh: '子代理:', en: 'Subagent: ' },
|
|
1227
|
+
'subagent-mode-continuable': { zh: '♻ 可继续', en: '♻ continuable' },
|
|
1228
|
+
'subagent-mode-one-shot': { zh: '◇ 一次性', en: '◇ one-shot' },
|
|
1162
1229
|
'subagent-tab-summary': { zh: '摘要', en: 'Summary' },
|
|
1163
1230
|
'subagent-no-summary': { zh: '暂无摘要', en: 'No summary yet' },
|
|
1231
|
+
'subagent-thinking-fold': { zh: '思考 · {{count}} 段 · {{chars}} 字', en: 'Thinking · {{count}} paras · {{chars}} chars' },
|
|
1232
|
+
'subagent-thinking-expand': { zh: 'Enter 展开', en: 'Enter expand' },
|
|
1233
|
+
'subagent-thinking-collapse': { zh: 'Enter 收起', en: 'Enter collapse' },
|
|
1234
|
+
'subagent-conclusion': { zh: '结论', en: 'Conclusion' },
|
|
1235
|
+
'subagent-hint-fold': { zh: 'Enter 思考折叠', en: 'Enter thinking' },
|
|
1164
1236
|
'subagent-no-tools': { zh: '暂无工具调用', en: 'No tool calls' },
|
|
1165
1237
|
'subagent-hint-page': { zh: '切页', en: 'page' },
|
|
1166
1238
|
'subagent-hint-scroll': { zh: '滚动', en: 'scroll' },
|
|
@@ -1179,17 +1251,34 @@ const dict = {
|
|
|
1179
1251
|
'jobs-panel-count-failed': { zh: '失败', en: 'failed' },
|
|
1180
1252
|
'jobs-panel-empty': { zh: '当前会话暂无后台任务', en: 'No background jobs in the current session' },
|
|
1181
1253
|
'jobs-panel-empty-hint': { zh: '后台运行的命令(run_in_background)会出现在这里', en: 'Commands the agent runs in the background appear here' },
|
|
1182
|
-
'jobs-panel-hint': { zh: '↑/↓
|
|
1254
|
+
'jobs-panel-hint': { zh: '↑/↓ 或点击选择 · k 两次停止选中任务 · Esc 关闭', en: '↑/↓ or click to select · press k twice to stop the focused job · Esc close' },
|
|
1255
|
+
'jobs-kill-armed': { zh: '再按 k 确认停止', en: 'press k again to confirm' },
|
|
1183
1256
|
'jobs-panel-started': { zh: '开始', en: 'started' },
|
|
1184
1257
|
'jobs-panel-finished': { zh: '结束', en: 'finished' },
|
|
1185
1258
|
'jobs-panel-command': { zh: '命令', en: 'command' },
|
|
1259
|
+
'jobs-panel-output': { zh: '输出', en: 'output' },
|
|
1186
1260
|
'jobs-panel-output-at': { zh: '输出更新于', en: 'output updated' },
|
|
1187
1261
|
'jobs-panel-no-output-yet': { zh: '(暂无镜像输出——agent 读取后显示)', en: '(no mirrored output yet — appears when the agent reads it)' },
|
|
1262
|
+
'jobs-output-gap': { zh: '……较早的输出已丢弃……', en: '……earlier output discarded……' },
|
|
1263
|
+
'jobs-output-dropped': { zh: '部分输出未保留', en: 'some output not retained' },
|
|
1264
|
+
'jobs-output-spill': { zh: '完整输出落盘:{{path}}', en: 'full output retained at: {{path}}' },
|
|
1188
1265
|
'jobs-toast-completed': { zh: '后台任务完成:{{label}}({{id}} · 用时 {{duration}})', en: 'Background job completed: {{label}} ({{id}} · {{duration}})' },
|
|
1189
1266
|
'jobs-toast-failed': { zh: '后台任务失败:{{label}}({{id}} · {{detail}})', en: 'Background job failed: {{label}} ({{id}} · {{detail}})' },
|
|
1190
1267
|
'jobs-toast-killed': { zh: '后台任务已停止:{{label}}({{id}} · 用时 {{duration}})', en: 'Background job killed: {{label}} ({{id}} · {{duration}})' },
|
|
1191
1268
|
'jobs-kill-failed': { zh: '无法停止任务 {{id}}(任务不存在或任务服务未挂载)', en: 'Could not kill job {{id}} (unknown job or jobs service not mounted)' },
|
|
1192
1269
|
'jobs-steer-killed': { zh: '我通过 /jobs 面板停止了后台任务 {{id}}({{label}})', en: 'I killed background job {{id}} ({{label}}) via the /jobs panel' },
|
|
1270
|
+
// 连续任务卡成组(JobGroupHeader):一批 run_in_background 连着落下时,
|
|
1271
|
+
// 组头一行汇总整组、组内不再互相空行;全组落定后整组折叠成这一行。
|
|
1272
|
+
'jobs-group-title': { zh: '后台任务 ×{{count}}', en: 'background jobs ×{{count}}' },
|
|
1273
|
+
'jobs-group-folded': { zh: '已折叠 {{count}} 个后台任务', en: '{{count}} background jobs folded' },
|
|
1274
|
+
'jobs-group-running': { zh: '{{count}} 运行中', en: '{{count}} running' },
|
|
1275
|
+
'jobs-group-completed': { zh: '{{count}} 已完成', en: '{{count}} completed' },
|
|
1276
|
+
'jobs-group-failed': { zh: '{{count}} 失败', en: '{{count}} failed' },
|
|
1277
|
+
'jobs-group-killed': { zh: '{{count}} 已停止', en: '{{count}} killed' },
|
|
1278
|
+
'jobs-group-all-completed': { zh: '全部完成', en: 'all completed' },
|
|
1279
|
+
'jobs-group-elapsed': { zh: '合计 {{duration}}', en: '{{duration}} total' },
|
|
1280
|
+
'jobs-group-hint-expand': { zh: '点击展开', en: 'click to expand' },
|
|
1281
|
+
'jobs-group-hint-fold': { zh: '点击折叠', en: 'click to fold' },
|
|
1193
1282
|
// ── components/questions/PlanReviewPanel.tsx ────────────────────────
|
|
1194
1283
|
'plan-review-fallback-header': { zh: '计划评审', en: 'Plan review' },
|
|
1195
1284
|
'plan-review-feedback-placeholder': { zh: '输入反馈,告诉模型要改什么…', en: 'Tell the model what to change…' },
|
|
@@ -1256,18 +1345,19 @@ const dict = {
|
|
|
1256
1345
|
'provider-q-switch': { zh: '立即切换到新 provider?', en: 'Switch to the new provider now?' },
|
|
1257
1346
|
'provider-opt-switch-now': { zh: '切换到 {{model}}', en: 'Switch to {{model}}' },
|
|
1258
1347
|
'provider-opt-switch-keep': { zh: '保持当前模型', en: 'Keep the current model' },
|
|
1259
|
-
// /provider OAuth
|
|
1260
|
-
'provider-opt-oauth': { zh: '
|
|
1261
|
-
'provider-opt-oauth-desc': { zh: '
|
|
1262
|
-
'provider-q-oauth': { zh: '
|
|
1348
|
+
// /provider OAuth 分支(内置 OAuth 模块挂载 ctx.dshAuth 时出现)
|
|
1349
|
+
'provider-opt-oauth': { zh: '账号登录(OAuth)', en: 'Account sign-in (OAuth)' },
|
|
1350
|
+
'provider-opt-oauth-desc': { zh: '使用当前宿主支持的账号登录,无需 API key', en: 'Sign in with an account supported by this host — no API key' },
|
|
1351
|
+
'provider-q-oauth': { zh: '登录哪个账号?', en: 'Sign in to which account?' },
|
|
1263
1352
|
'provider-oauth-state-in': { zh: '已登录 · 令牌到期 {{time}}', en: 'Signed in · token expires {{time}}' },
|
|
1353
|
+
'provider-oauth-state-in-no-expiry': { zh: '已登录', en: 'Signed in' },
|
|
1264
1354
|
'provider-oauth-state-expired': { zh: '已登录但令牌已过期,重新登录即可恢复', en: 'Signed in but the token expired — sign in again to restore' },
|
|
1265
1355
|
'provider-q-oauth-signed': { zh: '{{provider}} 已登录,接下来?', en: '{{provider}} is signed in — what next?' },
|
|
1266
1356
|
'provider-opt-oauth-relogin': { zh: '重新登录', en: 'Sign in again' },
|
|
1267
1357
|
'provider-opt-oauth-relogin-desc': { zh: '更换账号或刷新已有凭据', en: 'Switch accounts or refresh the stored credential' },
|
|
1268
1358
|
'provider-opt-oauth-logout': { zh: '登出', en: 'Sign out' },
|
|
1269
1359
|
'provider-opt-oauth-logout-desc': { zh: '删除本地保存的 OAuth 凭据', en: 'Remove the locally stored OAuth credential' },
|
|
1270
|
-
'provider-oauth-none': { zh: '没有可 OAuth 登录的 provider(检查
|
|
1360
|
+
'provider-oauth-none': { zh: '没有可 OAuth 登录的 provider(检查 OAuth 模块是否挂载)', en: 'No OAuth-capable providers (check whether the OAuth module is mounted)' },
|
|
1271
1361
|
'provider-oauth-login-ok': { zh: '{{provider}} 登录成功', en: 'Signed in to {{provider}}' },
|
|
1272
1362
|
'provider-oauth-login-failed': { zh: 'OAuth 登录失败 · {{{err}}}', en: 'OAuth sign-in failed · {{{err}}}' },
|
|
1273
1363
|
'provider-oauth-logout-ok': { zh: '{{provider}} 已登出', en: 'Signed out of {{provider}}' },
|
|
@@ -1275,6 +1365,26 @@ const dict = {
|
|
|
1275
1365
|
'provider-line-oauth-flow': { zh: '登录方式:{{flow}}', en: 'Sign-in: {{flow}}' },
|
|
1276
1366
|
'provider-line-oauth-expires': { zh: '令牌到期:{{time}}', en: 'Token expires: {{time}}' },
|
|
1277
1367
|
'provider-line-oauth-out': { zh: '已登出,本地 OAuth 凭据已删除', en: 'Signed out — the stored OAuth credential was removed' },
|
|
1368
|
+
// 内置 OAuth 与 pi-ai AuthInteraction 之间的问卷桥(provider 自带提示原文不改写)
|
|
1369
|
+
'oauth-event-auth-url': { zh: '打开以下 URL 完成授权(本地回调会自动结束登录):\n{{url}}', en: 'Open this URL to authorize (a local callback completes sign-in):\n{{url}}' },
|
|
1370
|
+
'oauth-event-device-code': { zh: '访问 {{uri}} 并输入以下代码:\n {{code}}', en: 'Visit {{uri}} and enter this code:\n {{code}}' },
|
|
1371
|
+
'oauth-copy-link': { zh: '复制授权链接', en: 'Copy authorization link' },
|
|
1372
|
+
'oauth-copy-code': { zh: '复制代码', en: 'Copy code' },
|
|
1373
|
+
'oauth-open-again': { zh: '重新打开浏览器', en: 'Open browser again' },
|
|
1374
|
+
'oauth-cancel': { zh: '取消登录', en: 'Cancel sign-in' },
|
|
1375
|
+
'oauth-auth-url-opened': { zh: '授权页面已在浏览器打开,请在浏览器中完成登录。', en: 'Authorization page opened in your browser — complete the sign-in there.' },
|
|
1376
|
+
'oauth-auth-url-opened-fallback': { zh: '若页面未打开,请复制下方链接手动访问。', en: 'If it did not open, copy the link below and open it by hand.' },
|
|
1377
|
+
'oauth-auth-url-manual': { zh: '打开以下 URL 完成授权。', en: 'Open this URL to authorize.' },
|
|
1378
|
+
'oauth-auth-url-copy-hint': { zh: '链接较长,换行后不宜手选;可使用复制操作。', en: 'Copy the link below (it is too long to select reliably once wrapped):' },
|
|
1379
|
+
'oauth-device-opened': { zh: '请在已打开的浏览器页面({{uri}})输入以下代码:', en: 'Enter this code on the page opened in your browser ({{uri}}):' },
|
|
1380
|
+
'oauth-device-manual': { zh: '访问 {{uri}} 并输入以下代码:', en: 'Visit {{uri}} and enter this code:' },
|
|
1381
|
+
'oauth-secret-unmasked': { zh: '此输入界面不会隐藏内容,请留意屏幕可见范围', en: 'Input is not masked on this surface — mind your screen' },
|
|
1382
|
+
'oauth-copied': { zh: '已复制,可粘贴到需要的位置。', en: 'Copied — paste it where you need it.' },
|
|
1383
|
+
'oauth-copy-failed': { zh: '复制失败;请手动选取文字。', en: 'Copy failed — no clipboard helper answered; select the text manually.' },
|
|
1384
|
+
'oauth-reopened': { zh: '已在浏览器重新打开。', en: 'Reopened in your browser.' },
|
|
1385
|
+
'oauth-open-failed': { zh: '无法打开浏览器,请改为复制链接。', en: 'Could not open the browser; copy the link instead.' },
|
|
1386
|
+
'oauth-waiting': { zh: '等待授权…', en: 'Waiting for authorization…' },
|
|
1387
|
+
'oauth-choose-action': { zh: '请选择一个操作。', en: 'Choose an action.' },
|
|
1278
1388
|
// /provider 动作层(添加/编辑;删除并入编辑菜单)
|
|
1279
1389
|
'provider-q-action': { zh: '要做什么?', en: 'What do you want to do?' },
|
|
1280
1390
|
'provider-opt-action-add': { zh: '添加新 provider', en: 'Add a new provider' },
|
|
@@ -1332,6 +1442,17 @@ const dict = {
|
|
|
1332
1442
|
'cmd-desc-new': { zh: '新开会话' },
|
|
1333
1443
|
'cmd-desc-clear': { zh: '清空当前会话' },
|
|
1334
1444
|
'cmd-desc-compact': { zh: '压缩会话历史' },
|
|
1445
|
+
// 能力缺失时的替代描述(`annotateCommandCapabilities` 按需改指到这里):
|
|
1446
|
+
// Help 与 `/` 补全都说清「为什么不可用」,而不是按下去才报错。en 必须写全,
|
|
1447
|
+
// 因为 cmd-desc-* 在 en 下会回退到 LOCAL_COMMANDS 的原文(不带标注)。
|
|
1448
|
+
'cmd-desc-compact-unavailable': {
|
|
1449
|
+
zh: '压缩会话历史(当前 agent 预设未挂载压缩服务,不可用)',
|
|
1450
|
+
en: 'Summarize earlier turns to free context space (unavailable: this agent preset mounts no compaction service)',
|
|
1451
|
+
},
|
|
1452
|
+
'cmd-desc-plan-unavailable': {
|
|
1453
|
+
zh: '切换计划模式(当前 agent 未注册 /plan 命令,不可用)',
|
|
1454
|
+
en: 'Toggle plan mode (unavailable: this agent has no /plan command registered)',
|
|
1455
|
+
},
|
|
1335
1456
|
'cmd-desc-resume': { zh: '恢复历史会话' },
|
|
1336
1457
|
'cmd-desc-agentview': { zh: '打开会话总览' },
|
|
1337
1458
|
'cmd-desc-bg': { zh: '当前会话转入后台并打开总览' },
|
|
@@ -1357,6 +1478,82 @@ const dict = {
|
|
|
1357
1478
|
'cmd-desc-init': { zh: '在工作目录创建 AGENTS.md' },
|
|
1358
1479
|
'cmd-desc-agents': { zh: '查看本会话的子代理' },
|
|
1359
1480
|
'cmd-desc-jobs': { zh: '查看本会话的后台任务' },
|
|
1481
|
+
'cmd-desc-panel': { zh: '侧栏面板:开关 / 聚焦 / 缩放 / 切换', en: 'Side panel: toggle / focus / zoom / switch' },
|
|
1482
|
+
// Side panel(侧栏)
|
|
1483
|
+
'panel-title-todo': { zh: '待办', en: 'Todo' },
|
|
1484
|
+
'panel-title-jobs': { zh: '任务', en: 'Jobs' },
|
|
1485
|
+
'panel-title-agents': { zh: '代理', en: 'Agents' },
|
|
1486
|
+
'panel-title-companion': { zh: '伙伴', en: 'Companion' },
|
|
1487
|
+
'panel-title-trajectory': { zh: '轨迹', en: 'Trajectory' },
|
|
1488
|
+
'panel-title-info': { zh: '信息', en: 'Info' },
|
|
1489
|
+
'panel-title-workspace': { zh: '工作区', en: 'Workspace' },
|
|
1490
|
+
'panel-trajectory-empty': { zh: '本次会话还没有轨迹:发出第一条消息后,这里会画出唤醒带与账本。', en: 'No trajectory yet — the wake band and ledger appear once this session has turns.' },
|
|
1491
|
+
'panel-trajectory-hint': { zh: '↑/↓ 选中 · Enter 展开 · Tab 热点 · ⤢ 全屏', en: '↑/↓ select · Enter expand · Tab hotspots · ⤢ fullscreen' },
|
|
1492
|
+
'info-section-session': { zh: '会话', en: 'Session' },
|
|
1493
|
+
'info-section-model': { zh: '模型', en: 'Model' },
|
|
1494
|
+
'info-section-context': { zh: '上下文', en: 'Context' },
|
|
1495
|
+
'info-section-runtime': { zh: '运行时', en: 'Runtime' },
|
|
1496
|
+
'info-row-title': { zh: '标题', en: 'Title' },
|
|
1497
|
+
'info-row-session-id': { zh: '会话 ID', en: 'Session ID' },
|
|
1498
|
+
'info-row-agent-id': { zh: '代理 ID', en: 'Agent ID' },
|
|
1499
|
+
'info-row-cwd': { zh: '工作目录', en: 'Working dir' },
|
|
1500
|
+
'info-row-branch': { zh: '分支', en: 'Branch' },
|
|
1501
|
+
'info-row-model': { zh: '模型', en: 'Model' },
|
|
1502
|
+
'info-row-effort': { zh: '思考深度', en: 'Effort' },
|
|
1503
|
+
'info-row-mode': { zh: '工作模式', en: 'Mode' },
|
|
1504
|
+
'info-row-approval': { zh: '权限', en: 'Permissions' },
|
|
1505
|
+
'info-row-context': { zh: '上下文占用', en: 'Context' },
|
|
1506
|
+
'info-row-window': { zh: '上下文窗口', en: 'Window' },
|
|
1507
|
+
'info-row-tokens': { zh: 'Token 用量', en: 'Tokens' },
|
|
1508
|
+
'info-row-cache': { zh: '缓存命中', en: 'Cache hit' },
|
|
1509
|
+
'info-row-cost': { zh: '消耗额度', en: 'Spend' },
|
|
1510
|
+
'info-row-tps': { zh: '生成速度', en: 'Throughput' },
|
|
1511
|
+
'info-row-status': { zh: '状态', en: 'Status' },
|
|
1512
|
+
'info-row-activity': { zh: '动作', en: 'Activity' },
|
|
1513
|
+
'info-row-jobs': { zh: '后台任务', en: 'Background jobs' },
|
|
1514
|
+
'info-row-subagents': { zh: '子代理', en: 'Subagents' },
|
|
1515
|
+
'info-value-none': { zh: '—', en: '—' },
|
|
1516
|
+
'panel-workspace-current': { zh: '当前工作区', en: 'Current workspace' },
|
|
1517
|
+
'panel-workspace-list': { zh: '已登记工作区 ×{{n}}', en: 'Registered workspaces ×{{n}}' },
|
|
1518
|
+
'panel-workspace-empty': { zh: '还没有登记的工作区(用 /workspace open <目录> 添加)', en: 'No registered workspaces yet (/workspace open <dir> to add one)' },
|
|
1519
|
+
'panel-workspace-missing': { zh: '目录不存在', en: 'directory missing' },
|
|
1520
|
+
'panel-workspace-sessions': { zh: '{{n}} 个会话', en: '{{n}} sessions' },
|
|
1521
|
+
'panel-workspace-loading': { zh: '正在读取工作区…', en: 'Loading workspaces…' },
|
|
1522
|
+
'panel-workspace-failed': { zh: '读取工作区失败 · {{err}}', en: 'Failed to load workspaces · {{err}}' },
|
|
1523
|
+
'panel-workspace-hint': { zh: '↑/↓ 选择 · Enter 打开工作区主页 · r 刷新', en: '↑/↓ select · Enter opens the workspace home · r refresh' },
|
|
1524
|
+
'companion-mood-sleeping': { zh: '睡觉中', en: 'Sleeping' },
|
|
1525
|
+
'companion-mood-idle': { zh: '发呆', en: 'Idle' },
|
|
1526
|
+
'companion-mood-waiting': { zh: '等待回复', en: 'Waiting' },
|
|
1527
|
+
'companion-mood-thinking': { zh: '思考中', en: 'Thinking' },
|
|
1528
|
+
'companion-mood-working': { zh: '工作中', en: 'Working' },
|
|
1529
|
+
'companion-mood-responding': { zh: '回复中', en: 'Responding' },
|
|
1530
|
+
'companion-mood-attention': { zh: '需要你', en: 'Needs you' },
|
|
1531
|
+
'companion-mood-celebrate': { zh: '完成啦', en: 'Done!' },
|
|
1532
|
+
'companion-mood-error': { zh: '出错了', en: 'Error' },
|
|
1533
|
+
'companion-stats-working': { zh: '{{duration}} · {{count}} 个工具', en: '{{duration}} · {{count}} tools' },
|
|
1534
|
+
'companion-hint': { zh: '点它戳一戳 · 连点挠痒痒 · 拖拽拎起来', en: 'click to poke · rapid clicks tickle · drag to carry' },
|
|
1535
|
+
'companion-cramped': { zh: '好挤呀!{{name}}暂时躲起来了~', en: 'So cramped! {{name}} is hiding for now~' },
|
|
1536
|
+
'companion-now-playing': { zh: '当前动作:{{anim}}', en: 'Now: {{anim}}' },
|
|
1537
|
+
'companion-stat-subagents': { zh: '子代理 ×{{n}}', en: 'subagents ×{{n}}' },
|
|
1538
|
+
'companion-stat-sessions': { zh: '会话 ×{{n}}', en: 'sessions ×{{n}}' },
|
|
1539
|
+
'picker-title-panel': { zh: '打开面板', en: 'Open panel' },
|
|
1540
|
+
'panel-sent-to-chat': { zh: '已附加到输入框:{{title}}(Esc 可撤)', en: 'Attached to the composer: {{title}} (Esc to remove)' },
|
|
1541
|
+
'companion-send-title': { zh: '伙伴状态', en: 'Companion status' },
|
|
1542
|
+
'panel-hint-focused': { zh: 'Esc 聊天 · ←/→ 切换 · z 缩放 · +/- 调宽', en: 'Esc chat · ←/→ panels · z zoom · +/- width' },
|
|
1543
|
+
'panel-hint-unfocused': { zh: 'Ctrl+B 聚焦侧栏', en: 'Ctrl+B focus panel' },
|
|
1544
|
+
'panel-empty-none': { zh: '没有已启用的面板(/panel manage 管理)', en: 'No enabled panels (/panel manage)' },
|
|
1545
|
+
'panel-too-narrow': { zh: '宽度不足(需 ≥ {{min}} 列)', en: 'Too narrow (needs ≥ {{min}} cols)' },
|
|
1546
|
+
'panel-error-title': { zh: '面板渲染出错', en: 'Panel render error' },
|
|
1547
|
+
'panel-error-hint': { zh: '该面板已被隔离,聊天不受影响', en: 'This panel is isolated; chat is unaffected' },
|
|
1548
|
+
'panel-plugin-disabled': { zh: '面板已禁用(连续崩溃)', en: 'Panel disabled (repeated crashes)' },
|
|
1549
|
+
'panel-plugin-disabled-hint': { zh: '本会话内不再挂载该插件面板;重启后恢复', en: 'This plugin panel stays unmounted for the session; restart resets it' },
|
|
1550
|
+
'panel-plugin-disabled-toast': { zh: '插件面板因连续崩溃已被禁用', en: 'A plugin panel was disabled after repeated crashes' },
|
|
1551
|
+
'panel-send-to-chat-denied': { zh: 'Send to Chat 需要 panels.chat.attach 授权(后续版本)', en: 'Send to Chat requires the panels.chat.attach grant (coming in a later version)' },
|
|
1552
|
+
'sugg-panel-toggle-desc': { zh: '开关侧栏', en: 'Toggle the sidebar' },
|
|
1553
|
+
'sugg-panel-focus-desc': { zh: '聚焦侧栏面板', en: 'Focus the side panel' },
|
|
1554
|
+
'sugg-panel-zoom-desc': { zh: '缩放当前面板', en: 'Zoom the active panel' },
|
|
1555
|
+
'sugg-panel-id-desc': { zh: '打开该面板', en: 'Open this panel' },
|
|
1556
|
+
'panel-unavailable-hint': { zh: '侧栏需要全屏且内容区 ≥93 列;该面板没有整屏形态', en: 'Sidebar needs fullscreen and ≥93 content columns; this panel has no fullscreen form' },
|
|
1360
1557
|
// Model / display
|
|
1361
1558
|
'cmd-desc-activity': { zh: '切换工作状态指示器预设' },
|
|
1362
1559
|
'cmd-desc-preset': { zh: '切换 Agent 预设(含梁神模式)' },
|
|
@@ -1439,6 +1636,147 @@ const dict = {
|
|
|
1439
1636
|
en: '**j/k** page · **enter/esc** collapse · **q** exit',
|
|
1440
1637
|
},
|
|
1441
1638
|
'traj-hint-failure': { zh: '{{key}} 看完整轨迹', en: '{{key}} for the full trajectory' },
|
|
1639
|
+
// ── screens/Launchpad.tsx(开屏落地页:取代旧的"只有标题的空白会话")───────
|
|
1640
|
+
// 落地页是"启动后第一屏":大标题与吉祥物居中、输入框在下、再往下是
|
|
1641
|
+
// 信息与快捷入口。用户真正发出第一条内容后才进聊天页,所以这里的
|
|
1642
|
+
// 文案要短、要是动作而不是说明。
|
|
1643
|
+
'launchpad-placeholder': { zh: '说点什么,或输入 / 看命令…', en: 'Say something, or type / for commands…' },
|
|
1644
|
+
// (launchpad-param-*-label / launchpad-param-mode-* 六键已删:2026-10 第四版
|
|
1645
|
+
// 参数行只画值不画字段名——用户原话"大家都知道是模型啊,不用画蛇添足";
|
|
1646
|
+
// 模式值固定产品词 Plan/Execute,不再本地化。)
|
|
1647
|
+
'launchpad-tip': {
|
|
1648
|
+
zh: '输入 / 看全部命令,/setup 可随时重跑引导',
|
|
1649
|
+
en: 'Type / for every command; /setup re-runs the guide anytime',
|
|
1650
|
+
},
|
|
1651
|
+
// 第六版设计 2:Tips 可点击轮换(点击/焦点+Enter 切下一条,循环)。
|
|
1652
|
+
// 轮换顺序 = launchpad-tip → launchpad-tip-2 → launchpad-tip-3 → 回到首条;
|
|
1653
|
+
// 首启那一条(launchpad-first-run)优先级最高,不参与轮换。
|
|
1654
|
+
'launchpad-tip-2': {
|
|
1655
|
+
zh: 'Ctrl+V 直接粘贴,Esc 清空后按 Esc 去看历史会话',
|
|
1656
|
+
en: 'Ctrl+V pastes; Esc clears the draft, then Esc again opens sessions',
|
|
1657
|
+
},
|
|
1658
|
+
'launchpad-tip-3': {
|
|
1659
|
+
zh: '参数行四段都能点:模型 · 思考深度 · 模式 · 权限',
|
|
1660
|
+
en: 'Every param chip is clickable: model · effort · mode · permission',
|
|
1661
|
+
},
|
|
1662
|
+
// Tips 前缀(第三版:● 彩色圆点 + Tips: 前缀,整行居中)。
|
|
1663
|
+
'launchpad-tip-prefix': { zh: 'Tips:', en: 'Tips: ' },
|
|
1664
|
+
// 入口行(第七版:四格 = Continue(条件) · 会话与工作区 · 设置 · 条件位)。
|
|
1665
|
+
// (launchpad-action-theme / -lang 三键早已删;第六版的 -sessions / -workspace
|
|
1666
|
+
// / -doctor / -setup / -setup-provider 五键随第七版合并/移除一并删除——
|
|
1667
|
+
// 历史会话与工作区合并成 -sessions-workspace,doctor 入口退役,首启由
|
|
1668
|
+
// 引导向导承担。verify-i18n 的死键检查同步收口。)
|
|
1669
|
+
'launchpad-action-continue': { zh: '继续上次', en: 'Continue' },
|
|
1670
|
+
'launchpad-action-continue-titled': { zh: '继续「{{title}}」', en: 'Continue "{{title}}"' },
|
|
1671
|
+
'launchpad-action-sessions-workspace': { zh: '会话与工作区', en: 'Sessions & workspaces' },
|
|
1672
|
+
'launchpad-action-settings': { zh: '设置', en: 'Settings' },
|
|
1673
|
+
'launchpad-action-help': { zh: '帮助', en: 'Help' },
|
|
1674
|
+
// 条件位(优先级 jobs > update > star > help,见 launchpadActions.ts)。
|
|
1675
|
+
'launchpad-action-jobs': { zh: '后台任务', en: 'Background jobs' },
|
|
1676
|
+
'launchpad-action-update': { zh: '有新版本', en: 'Update available' },
|
|
1677
|
+
'launchpad-action-star': { zh: '投喂一颗 Star', en: 'Feed us a star' },
|
|
1678
|
+
// Continue 的失败/空态(Chat 的 /continue 分支):绝不静默。
|
|
1679
|
+
'launchpad-continue-none': {
|
|
1680
|
+
zh: '没有可继续的会话,已打开历史会话列表',
|
|
1681
|
+
en: 'No session to continue — opened the session list',
|
|
1682
|
+
},
|
|
1683
|
+
'launchpad-continue-failed': {
|
|
1684
|
+
zh: '继续上次会话失败,已打开历史会话列表',
|
|
1685
|
+
en: 'Could not resume the last session — opened the session list',
|
|
1686
|
+
},
|
|
1687
|
+
'launchpad-first-run': {
|
|
1688
|
+
zh: '第一次用 dsh-TUI?花一分钟跑一遍引导,把 API Key、语言、主题、模型一次配好。',
|
|
1689
|
+
en: 'New to dsh-TUI? One minute of setup wires up your API key, language, theme and model.',
|
|
1690
|
+
},
|
|
1691
|
+
// (launchpad-cwd-prefix 已删:2026-10 落地页改版删掉了底部工作目录行。)
|
|
1692
|
+
// (launchpad-handoff 已删:第五版起落地页回车直接发送(channel.submit),
|
|
1693
|
+
// 没有草稿要交接,那句"已放进输入框"的提示反而是假的。)
|
|
1694
|
+
// ── screens/Onboarding.tsx(首次引导:四步把常用配置配好)────────────────
|
|
1695
|
+
'onboarding-title': { zh: '欢迎使用 dsh-TUI', en: 'Welcome to dsh-TUI' },
|
|
1696
|
+
'onboarding-step-progress': { zh: '第 {{n}} / {{total}} 步', en: 'Step {{n}} of {{total}}' },
|
|
1697
|
+
'onboarding-step-apikey-title': { zh: 'API Key 与连通性', en: 'API key and connectivity' },
|
|
1698
|
+
'onboarding-step-apikey-desc': {
|
|
1699
|
+
zh: '确认 DEEPSEEK_API_KEY 已就位,并真的连一次服务端。',
|
|
1700
|
+
en: 'Confirm DEEPSEEK_API_KEY is in place and actually reach the API.',
|
|
1701
|
+
},
|
|
1702
|
+
'onboarding-step-look-title': { zh: '语言与主题', en: 'Language and theme' },
|
|
1703
|
+
'onboarding-step-look-desc': {
|
|
1704
|
+
zh: '换成你顺眼的语言和配色;移动光标即可实时预览。',
|
|
1705
|
+
en: 'Pick the language and colors you like — moving the cursor previews them live.',
|
|
1706
|
+
},
|
|
1707
|
+
'onboarding-step-model-title': { zh: '模型与工作区', en: 'Model and workspace' },
|
|
1708
|
+
'onboarding-step-model-desc': {
|
|
1709
|
+
zh: '定下默认模型、推理强度,以及这次要在哪个目录里干活。',
|
|
1710
|
+
en: 'Choose the default model, reasoning effort, and the directory to work in.',
|
|
1711
|
+
},
|
|
1712
|
+
'onboarding-step-keys-title': { zh: '快捷键与招式', en: 'Shortcuts and commands' },
|
|
1713
|
+
'onboarding-step-keys-desc': {
|
|
1714
|
+
zh: '几个最省时间的键和最常用的命令,每一张都能直接点开试试。',
|
|
1715
|
+
en: 'The few keys and commands that save the most time — click any card to try it.',
|
|
1716
|
+
},
|
|
1717
|
+
// 第一步:凭证与连通性。分流口径与 adapter 的 CredentialStatus /
|
|
1718
|
+
// BalanceResult 一一对应,排查建议按原因分开给,而不是一句"检查网络"。
|
|
1719
|
+
'onboarding-key-checking': { zh: '正在读取凭证…', en: 'Reading credentials…' },
|
|
1720
|
+
'onboarding-key-configured': { zh: '已检测到 DEEPSEEK_API_KEY', en: 'DEEPSEEK_API_KEY detected' },
|
|
1721
|
+
'onboarding-key-source-env': { zh: '来源:环境变量', en: 'Source: environment variable' },
|
|
1722
|
+
'onboarding-key-source-config': { zh: '来源:配置文件', en: 'Source: config file' },
|
|
1723
|
+
'onboarding-key-source-unknown': { zh: '来源:未知', en: 'Source: unknown' },
|
|
1724
|
+
'onboarding-key-missing': { zh: '还没检测到 DEEPSEEK_API_KEY', en: 'No DEEPSEEK_API_KEY yet' },
|
|
1725
|
+
'onboarding-key-shape': { zh: '形如 sk-…(只判断存在与否,永远不显示完整值)', en: 'Looks like sk-… (presence only — the value is never printed)' },
|
|
1726
|
+
'onboarding-key-howto-env': { zh: '设置一个环境变量再重启:', en: 'Set an environment variable and restart:' },
|
|
1727
|
+
'onboarding-key-howto-config': { zh: '或写进 dsh 的配置里:', en: 'Or put it in the dsh config:' },
|
|
1728
|
+
'onboarding-key-retry': { zh: '重新检查', en: 'Check again' },
|
|
1729
|
+
'onboarding-conn-running': { zh: '正在连接 DeepSeek…', en: 'Connecting to DeepSeek…' },
|
|
1730
|
+
'onboarding-conn-ok': { zh: '连通正常', en: 'Connected' },
|
|
1731
|
+
'onboarding-conn-models': { zh: '{{count}} 个可用模型', en: '{{count}} models available' },
|
|
1732
|
+
'onboarding-conn-balance': { zh: '余额 {{amount}}', en: 'Balance {{amount}}' },
|
|
1733
|
+
'onboarding-conn-balance-none': { zh: '本次没有返回余额信息', en: 'No balance returned this time' },
|
|
1734
|
+
'onboarding-conn-fail-no-key': { zh: '没有可用的凭证,连通性检查没法开始', en: 'No usable credential, so the check cannot start' },
|
|
1735
|
+
'onboarding-conn-fail-network': { zh: '网络不通:检查代理、防火墙或离线环境', en: 'Network unreachable: check proxy, firewall or offline setup' },
|
|
1736
|
+
'onboarding-conn-fail-unauthorized': { zh: '凭证被拒绝:检查 key 是否复制完整、是否已失效', en: 'Credential rejected: check the key is complete and still valid' },
|
|
1737
|
+
'onboarding-conn-fail-http': { zh: '服务端返回 HTTP {{status}}:稍后重试', en: 'Server returned HTTP {{status}}: retry shortly' },
|
|
1738
|
+
'onboarding-conn-fail-invalid': { zh: '返回内容无法解析:可能被代理或网关改写', en: 'Unparseable response: a proxy or gateway may be rewriting it' },
|
|
1739
|
+
'onboarding-conn-fail-unknown': { zh: '连通性检查没通过', en: 'The connectivity check did not pass' },
|
|
1740
|
+
'onboarding-look-preview-note': { zh: '移动光标即时预览;选中即保存', en: 'Moving the cursor previews live; picking saves it' },
|
|
1741
|
+
'onboarding-model-workspace': { zh: '工作区', en: 'Workspace' },
|
|
1742
|
+
'onboarding-model-workspace-note': { zh: '切换工作区会新建一个会话', en: 'Switching the workspace starts a new session' },
|
|
1743
|
+
'onboarding-model-loading': { zh: '正在读取模型列表…', en: 'Loading the model list…' },
|
|
1744
|
+
'onboarding-model-empty': { zh: '没有读到可用模型(可先跳过,用 /provider 配置)', en: 'No models available yet (skip, then configure with /provider)' },
|
|
1745
|
+
'onboarding-model-back': { zh: '← 返回分组(Esc)', en: '← Back to providers (Esc)' },
|
|
1746
|
+
'onboarding-model-switch-failed': { zh: '模型「{{name}}」切换失败', en: 'Could not switch to model "{{name}}"' },
|
|
1747
|
+
'onboarding-model-switched': { zh: '默认模型已切换为 {{name}}', en: 'Default model switched to {{name}}' },
|
|
1748
|
+
'onboarding-effort-switched': { zh: '推理强度已设为 {{name}}', en: 'Reasoning effort set to {{name}}' },
|
|
1749
|
+
'onboarding-workspace-switched': { zh: '工作区已切换:{{name}}', en: 'Workspace switched: {{name}}' },
|
|
1750
|
+
'onboarding-workspace-failed': { zh: '工作区「{{name}}」切换失败', en: 'Could not switch to workspace "{{name}}"' },
|
|
1751
|
+
// 第四步:招式卡。每张卡 = 一句"它能干什么" + 一行可点/可读的键或命令。
|
|
1752
|
+
'onboarding-cards-title': { zh: '先记这六张,够用很久', en: 'Six cards that cover most of it' },
|
|
1753
|
+
'onboarding-card-cmd-title': { zh: '命令菜单', en: 'Command menu' },
|
|
1754
|
+
'onboarding-card-cmd-desc': { zh: '输入 / 打开全部命令,Tab 补全', en: 'Type / for every command, Tab to complete' },
|
|
1755
|
+
'onboarding-card-help-title': { zh: '帮助与快捷键', en: 'Help and shortcuts' },
|
|
1756
|
+
'onboarding-card-help-desc': { zh: '一张表看懂全部键位', en: 'Every key in one table' },
|
|
1757
|
+
'onboarding-card-model-title': { zh: '换模型', en: 'Switch model' },
|
|
1758
|
+
'onboarding-card-model-desc': { zh: '列出全部 provider 与模型', en: 'List every provider and model' },
|
|
1759
|
+
'onboarding-card-sessions-title': { zh: '会话与工作区', en: 'Sessions and workspaces' },
|
|
1760
|
+
'onboarding-card-sessions-desc': { zh: '找回旧会话、换工作区、后台并行', en: 'Reopen old sessions, switch workspace, work in parallel' },
|
|
1761
|
+
'onboarding-card-rewind-title': { zh: '回退一步', en: 'Rewind' },
|
|
1762
|
+
'onboarding-card-rewind-desc': { zh: '退回到任意一条消息重来', en: 'Go back to any earlier message' },
|
|
1763
|
+
'onboarding-card-interrupt-title': { zh: '打断与后台', en: 'Interrupt and background' },
|
|
1764
|
+
'onboarding-card-interrupt-desc': { zh: '停下手上的活;或把它丢到后台继续跑', en: 'Stop the current turn, or push it to the background' },
|
|
1765
|
+
'onboarding-card-try': { zh: '试一下', en: 'Try it' },
|
|
1766
|
+
'onboarding-card-tried': { zh: '已经试过', en: 'Tried' },
|
|
1767
|
+
// 收尾
|
|
1768
|
+
'onboarding-hint': {
|
|
1769
|
+
zh: '**←/→** 换步骤 · **Enter** 执行这一步 / 下一步 · **Esc** 跳过引导',
|
|
1770
|
+
en: '**←/→** step · **Enter** act on this step / go next · **Esc** skip the guide',
|
|
1771
|
+
},
|
|
1772
|
+
'onboarding-hint-last': { zh: '**Enter** 完成 · **Esc** 跳过引导', en: '**Enter** finish · **Esc** skip the guide' },
|
|
1773
|
+
'onboarding-skipped': { zh: '已跳过首次引导,随时可用 /setup 重跑', en: 'Setup skipped — run /setup whenever you like' },
|
|
1774
|
+
'onboarding-finished': { zh: '引导完成', en: 'Setup complete' },
|
|
1775
|
+
'onboarding-write-failed': {
|
|
1776
|
+
zh: '这次引导没能记进 ~/.dsh-tui/onboarding.json,下次启动可能还会再问一次',
|
|
1777
|
+
en: 'Could not record the guide in ~/.dsh-tui/onboarding.json, so it may ask again next launch',
|
|
1778
|
+
},
|
|
1779
|
+
'cmd-desc-setup': { zh: '重跑首次引导(API Key / 语言主题 / 模型工作区 / 快捷键)' },
|
|
1442
1780
|
};
|
|
1443
1781
|
/** The active language, module-level so non-React modules (channel.ts,
|
|
1444
1782
|
* loaded-context.ts) resolve strings without a context. Defaults to `zh`
|