@chatcode/chatcode-cli 3.0.4-rc.1 → 3.0.4-rc.3

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.
Files changed (136) hide show
  1. package/README.i18n.yaml +2 -2
  2. package/README.md +2 -0
  3. package/README.zh.md +2 -0
  4. package/lib/{command-errors-BkCHTQHj.js → command-errors-BJ_ZWzUU.js} +12 -12
  5. package/lib/{command-trees-5HFyC5sI.js → command-trees-C9b7-bci.js} +2 -2
  6. package/lib/{component-identity-De91VHwW.js → component-identity-Jb1DYjke.js} +3 -3
  7. package/lib/{dist-CsDWUvQ4.js → dist-w_sIm4VD.js} +231 -231
  8. package/lib/{extension-events-CdYCRP0o.js → extension-events-DKX4LXOd.js} +26 -26
  9. package/lib/{frames-DOX-Jgk8.js → frames-B89znn_0.js} +4 -4
  10. package/lib/{host-access-Bk4xps5E.js → host-access-CMg6rsWt.js} +1 -1
  11. package/lib/{keymap-CJ1kvLR2.js → keymap-CrC4pSNH.js} +2 -2
  12. package/lib/{plugin-XR7ncbnW.js → plugin-CmyMCGfb.js} +1651 -1365
  13. package/lib/{scenes-CAmWncZD.js → scenes-Cil9RnwU.js} +3 -3
  14. package/lib/{settings-sections-CakcvBv9.js → settings-sections-jVCqXwdH.js} +3 -3
  15. package/lib/{statusBarSettings-BPPS_Usm.js → statusBarSettings-DNoBH3Cq.js} +3 -3
  16. package/lib/{supports-color-DyChQwlI.js → supports-color-CcW-FGjr.js} +2 -2
  17. package/lib/{themes-OjcUpZzw.js → themes-BdgeY3It.js} +12 -12
  18. package/lib/tui-compat-command-trees.js +1 -1
  19. package/lib/tui-compat-extensions.js +3 -3
  20. package/lib/tui-compat-plugin-host.js +5 -5
  21. package/lib/tui-compat-scenes.js +1 -1
  22. package/lib/tui-compat-settings-sections.js +1 -1
  23. package/lib/tui-compat-working-activity.js +4 -4
  24. package/lib/tui-compat-workspaces.js +1 -1
  25. package/lib/tui-compat.js +5 -5
  26. package/lib/{workspaces-XY7UdfXp.js → workspaces-DOatJRYr.js} +2 -2
  27. package/package.json +30 -29
  28. package/runtime/manifest.json +2 -2
  29. package/runtime/node_modules/@deepseek-ai/dsh-agent-default-model/lib/index.js +118 -22
  30. package/runtime/node_modules/@deepseek-ai/dsh-agent-default-model/lib/types/index.d.ts +20 -3
  31. package/runtime/node_modules/@deepseek-ai/dsh-api-remotes/lib/client.js +113 -39
  32. package/runtime/node_modules/@deepseek-ai/dsh-api-remotes/lib/index.js +4 -0
  33. package/runtime/node_modules/@deepseek-ai/dsh-api-remotes/lib/types/remote-events.d.ts +3 -0
  34. package/runtime/node_modules/@deepseek-ai/dsh-api-remotes/lib/types/remote-events.js +1 -0
  35. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/index.js +173 -34
  36. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/typert.host.js +48 -28
  37. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/typert.remote-client.js +24 -19
  38. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/agent.d.ts +9 -1
  39. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/agent.js +36 -6
  40. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/archived-session-gate.js +1 -1
  41. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/catalog.js +4 -1
  42. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/client/sessions/service.d.ts +1 -1
  43. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/commands.d.ts +2 -2
  44. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/commands.js +24 -8
  45. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/index.d.ts +4 -3
  46. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/index.js +31 -14
  47. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/list.d.ts +6 -0
  48. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/list.js +89 -4
  49. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/remote-events.d.ts +1 -1
  50. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/types.d.ts +18 -1
  51. package/runtime/node_modules/@deepseek-ai/dsh-api-workspace-controller/lib/client.js +30 -0
  52. package/runtime/node_modules/@deepseek-ai/dsh-api-workspace-controller/lib/index.js +83 -2
  53. package/runtime/node_modules/@deepseek-ai/dsh-api-workspace-controller/lib/typert.host.js +104 -11
  54. package/runtime/node_modules/@deepseek-ai/dsh-api-workspace-controller/lib/typert.remote-client.d.ts +5 -1
  55. package/runtime/node_modules/@deepseek-ai/dsh-api-workspace-controller/lib/typert.remote-client.js +78 -11
  56. package/runtime/node_modules/@deepseek-ai/dsh-api-workspace-controller/lib/types/client/model.d.ts +14 -1
  57. package/runtime/node_modules/@deepseek-ai/dsh-api-workspace-controller/lib/types/client/model.js +17 -0
  58. package/runtime/node_modules/@deepseek-ai/dsh-api-workspace-controller/lib/types/client/service.d.ts +15 -0
  59. package/runtime/node_modules/@deepseek-ai/dsh-api-workspace-controller/lib/types/client/service.js +12 -0
  60. package/runtime/node_modules/@deepseek-ai/dsh-api-workspace-controller/lib/types/commands.d.ts +13 -1
  61. package/runtime/node_modules/@deepseek-ai/dsh-api-workspace-controller/lib/types/commands.js +44 -2
  62. package/runtime/node_modules/@deepseek-ai/dsh-api-workspace-controller/lib/types/index.d.ts +13 -1
  63. package/runtime/node_modules/@deepseek-ai/dsh-api-workspace-controller/lib/types/index.js +22 -0
  64. package/runtime/node_modules/@deepseek-ai/dsh-api-workspace-controller/lib/types/types.d.ts +17 -0
  65. package/runtime/node_modules/@deepseek-ai/dsh-app-boot/lib/index.js +2 -1
  66. package/runtime/node_modules/@deepseek-ai/dsh-atomic-write/lib/index.js +167 -44
  67. package/runtime/node_modules/@deepseek-ai/dsh-atomic-write/lib/types/index.d.ts +14 -6
  68. package/runtime/node_modules/@deepseek-ai/dsh-atomic-write/lib/types/linux-lock.d.ts +18 -0
  69. package/runtime/node_modules/@deepseek-ai/dsh-atomic-write/lib/types/windows-lock.d.ts +7 -0
  70. package/runtime/node_modules/@deepseek-ai/dsh-client-hmr/lib/client.js +931 -7
  71. package/runtime/node_modules/@deepseek-ai/dsh-client-hmr/lib/index.js +57 -19
  72. package/runtime/node_modules/@deepseek-ai/dsh-client-hmr/lib/types/client/index.d.ts +5 -2
  73. package/runtime/node_modules/@deepseek-ai/dsh-client-hmr/lib/types/config.d.ts +12 -0
  74. package/runtime/node_modules/@deepseek-ai/dsh-client-hmr/lib/types/events.d.ts +4 -4
  75. package/runtime/node_modules/@deepseek-ai/dsh-client-hmr/lib/types/index.d.ts +3 -8
  76. package/runtime/node_modules/@deepseek-ai/dsh-client-hmr/package.json +6 -2
  77. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-commands/lib/client.js +10 -0
  78. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-deliverables/lib/types/client/present-open.d.ts +1 -1
  79. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-model-selection/lib/client.js +8 -4
  80. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-settings-account/lib/client.js +2 -2
  81. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-settings-general/lib/client.js +1 -1
  82. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-sidebar/lib/client.js +1 -1
  83. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/client.js +1917 -206
  84. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/types/client/ArchivedSessions.d.ts +13 -0
  85. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/types/client/contract/slots.d.ts +4 -0
  86. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/types/client/locales.d.ts +40 -0
  87. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/types/client/recent.d.ts +11 -0
  88. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/types/client/rows/RecentList.d.ts +15 -0
  89. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/types/client/rows/Rows.d.ts +6 -1
  90. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/types/client/session-actions/DeleteSession.d.ts +24 -0
  91. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/types/client/stores.d.ts +2 -2
  92. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/types/client/tree.d.ts +15 -13
  93. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-workspace/package.json +3 -1
  94. package/runtime/node_modules/@deepseek-ai/dsh-commands/lib/index.js +16 -0
  95. package/runtime/node_modules/@deepseek-ai/dsh-commands/lib/typert.host.js +7 -3
  96. package/runtime/node_modules/@deepseek-ai/dsh-commands/lib/typert.remote-client.js +6 -2
  97. package/runtime/node_modules/@deepseek-ai/dsh-commands/lib/types/index.js +20 -0
  98. package/runtime/node_modules/@deepseek-ai/dsh-commands/lib/types/types.d.ts +5 -0
  99. package/runtime/node_modules/@deepseek-ai/dsh-cordis-client-runner/lib/client.js +5 -2
  100. package/runtime/node_modules/@deepseek-ai/dsh-llm-deepseek/lib/types/adapter.d.ts +1 -1
  101. package/runtime/node_modules/@deepseek-ai/dsh-llm-deepseek/lib/types/config.d.ts +3 -3
  102. package/runtime/node_modules/@deepseek-ai/dsh-llm-deepseek-account/lib/types/config.d.ts +2 -2
  103. package/runtime/node_modules/@deepseek-ai/dsh-llm-deepseek-api-key/lib/types/config.d.ts +2 -2
  104. package/runtime/node_modules/@deepseek-ai/dsh-schedule/lib/index.js +4 -0
  105. package/runtime/node_modules/@deepseek-ai/dsh-schedule/lib/typert.host.js +5 -5
  106. package/runtime/node_modules/@deepseek-ai/dsh-schedule/lib/typert.remote-client.js +5 -5
  107. package/runtime/node_modules/@deepseek-ai/dsh-schedule/lib/types/index.js +5 -0
  108. package/runtime/node_modules/@deepseek-ai/dsh-session/lib/types/index.d.ts +21 -0
  109. package/runtime/node_modules/@deepseek-ai/dsh-session-persistence/lib/index.js +12 -0
  110. package/runtime/node_modules/@deepseek-ai/dsh-session-persistence/lib/types/index.d.ts +15 -0
  111. package/runtime/node_modules/@deepseek-ai/dsh-session-persistence-jsonl/lib/index.js +95 -2
  112. package/runtime/node_modules/@deepseek-ai/dsh-session-persistence-jsonl/lib/types/index.d.ts +3 -1
  113. package/runtime/node_modules/@deepseek-ai/dsh-session-projection-cache/lib/index.js +25 -1
  114. package/runtime/node_modules/@deepseek-ai/dsh-session-projection-cache/lib/types/index.d.ts +1 -0
  115. package/runtime/node_modules/@deepseek-ai/dsh-session-projection-cache/package.json +2 -1
  116. package/runtime/node_modules/@deepseek-ai/dsh-session-query/lib/index.js +13 -0
  117. package/runtime/node_modules/@deepseek-ai/dsh-session-query/lib/types/observation.d.ts +5 -0
  118. package/runtime/node_modules/@deepseek-ai/dsh-session-query-sqlite/lib/index.js +26 -0
  119. package/runtime/node_modules/@deepseek-ai/dsh-session-query-sqlite/package.json +2 -1
  120. package/runtime/node_modules/@deepseek-ai/dsh-storage-domain/lib/index.js +5 -1
  121. package/runtime/node_modules/@deepseek-ai/dsh-storage-domain/lib/types/domain.d.ts +2 -2
  122. package/runtime/node_modules/@deepseek-ai/dsh-subagent/lib/types/control.d.ts +1 -1
  123. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/index.js +106 -56
  124. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/config.d.ts +2 -2
  125. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/index.d.ts +2 -1
  126. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/tianti/config.d.ts +4 -2
  127. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/tools.d.ts +2 -2
  128. package/runtime/node_modules/@deepseek-ai/dsh-tianti/package.json +2 -0
  129. package/runtime/node_modules/@deepseek-ai/dsh-tool-cordis/lib/types/api-catalog.js +104 -13
  130. package/runtime/node_modules/@deepseek-ai/dsh-workspace/lib/index.js +215 -4
  131. package/runtime/node_modules/@deepseek-ai/dsh-workspace/lib/invariant.js +6 -1
  132. package/runtime/node_modules/@deepseek-ai/dsh-workspace/lib/types/index.d.ts +31 -0
  133. package/runtime/node_modules/@deepseek-ai/dsh-workspace/lib/types/index.js +219 -2
  134. package/runtime/node_modules/@deepseek-ai/dsh-workspace/lib/types/spec.d.ts +4 -0
  135. package/runtime/node_modules/@deepseek-ai/dsh-workspace/lib/types/spec.js +4 -0
  136. package/scripts/launch.mjs +8 -0
@@ -69,6 +69,7 @@ const _deepseek_ai_dsh_api_session_controller_session_control_result$schema = ()
69
69
  'status': z.union([z.literal("completed"), z.literal("pending"), z.literal("in_progress")]),
70
70
  }))]).optional(),
71
71
  'sessionListMetadata': z.object({
72
+ 'hasUserPrompt': z.boolean().readonly().optional(),
72
73
  'blank': z.boolean().readonly(),
73
74
  'lastPromptAt': z.union([z.literal(null), z.number()]).readonly(),
74
75
  }).optional(),
@@ -241,6 +242,7 @@ const _deepseek_ai_dsh_api_session_controller_session_follow_result$schema = ()
241
242
  'status': z.union([z.literal("completed"), z.literal("pending"), z.literal("in_progress")]),
242
243
  }))]).optional(),
243
244
  'sessionListMetadata': z.object({
245
+ 'hasUserPrompt': z.boolean().readonly().optional(),
244
246
  'blank': z.boolean().readonly(),
245
247
  'lastPromptAt': z.union([z.literal(null), z.number()]).readonly(),
246
248
  }).optional(),
@@ -403,6 +405,7 @@ const _deepseek_ai_dsh_api_session_controller_session_list_result$schema = () =>
403
405
  'status': z.union([z.literal("completed"), z.literal("pending"), z.literal("in_progress")]),
404
406
  }))]).optional(),
405
407
  'sessionListMetadata': z.object({
408
+ 'hasUserPrompt': z.boolean().readonly().optional(),
406
409
  'blank': z.boolean().readonly(),
407
410
  'lastPromptAt': z.union([z.literal(null), z.number()]).readonly(),
408
411
  }).optional(),
@@ -492,6 +495,7 @@ const _deepseek_ai_dsh_api_session_controller_session_modelCatalog_result$schema
492
495
  'model': z.string().readonly(),
493
496
  'reasoningEffort': z.string().readonly().optional(),
494
497
  }).readonly(),
498
+ 'selectionScope': z.literal("process").readonly().optional(),
495
499
  'savedDisplayName': z.object({
496
500
  'provider': z.string().readonly(),
497
501
  'model': z.string().readonly(),
@@ -587,6 +591,7 @@ const _deepseek_ai_dsh_api_session_controller_session_projections_result$schema
587
591
  'status': z.union([z.literal("completed"), z.literal("pending"), z.literal("in_progress")]),
588
592
  }))]).optional(),
589
593
  'sessionListMetadata': z.object({
594
+ 'hasUserPrompt': z.boolean().readonly().optional(),
590
595
  'blank': z.boolean().readonly(),
591
596
  'lastPromptAt': z.union([z.literal(null), z.number()]).readonly(),
592
597
  }).optional(),
@@ -843,7 +848,7 @@ export const TYPERT = {
843
848
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionAttachmentValue',
844
849
  create: _deepseek_ai_dsh_api_session_controller_session_attachment_result$schema,
845
850
  },
846
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":437,"column":3},
851
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":443,"column":3},
847
852
  },
848
853
  {
849
854
  id: '@deepseek-ai/dsh-api-session-controller#session/cancel',
@@ -868,7 +873,7 @@ export const TYPERT = {
868
873
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionCancelValue',
869
874
  create: _deepseek_ai_dsh_api_session_controller_session_cancel_result$schema,
870
875
  },
871
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":457,"column":3},
876
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":463,"column":3},
872
877
  },
873
878
  {
874
879
  id: '@deepseek-ai/dsh-api-session-controller#session/canOpenWorkspacePath',
@@ -883,7 +888,7 @@ export const TYPERT = {
883
888
  typeSymbol: '@deepseek-ai/dsh-api-session-controller#session/canOpenWorkspacePath:result',
884
889
  create: _deepseek_ai_dsh_api_session_controller_session_canOpenWorkspacePath_result$schema,
885
890
  },
886
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":319,"column":3},
891
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":325,"column":3},
887
892
  },
888
893
  {
889
894
  id: '@deepseek-ai/dsh-api-session-controller#session/control',
@@ -900,7 +905,7 @@ export const TYPERT = {
900
905
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionControlFrame',
901
906
  create: _deepseek_ai_dsh_api_session_controller_session_control_result$schema,
902
907
  },
903
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":520,"column":3},
908
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":535,"column":3},
904
909
  },
905
910
  {
906
911
  id: '@deepseek-ai/dsh-api-session-controller#session/create',
@@ -925,7 +930,7 @@ export const TYPERT = {
925
930
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionCreateValue',
926
931
  create: _deepseek_ai_dsh_api_session_controller_session_create_result$schema,
927
932
  },
928
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":273,"column":3},
933
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":276,"column":9},
929
934
  },
930
935
  {
931
936
  id: '@deepseek-ai/dsh-api-session-controller#session/follow',
@@ -952,7 +957,7 @@ export const TYPERT = {
952
957
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionFollowFrame',
953
958
  create: _deepseek_ai_dsh_api_session_controller_session_follow_result$schema,
954
959
  },
955
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":480,"column":3},
960
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":486,"column":10},
956
961
  },
957
962
  {
958
963
  id: '@deepseek-ai/dsh-api-session-controller#session/fork',
@@ -977,7 +982,7 @@ export const TYPERT = {
977
982
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionForkValue',
978
983
  create: _deepseek_ai_dsh_api_session_controller_session_fork_result$schema,
979
984
  },
980
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":415,"column":3},
985
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":421,"column":3},
981
986
  },
982
987
  {
983
988
  id: '@deepseek-ai/dsh-api-session-controller#session/initializeDefaultModel',
@@ -992,7 +997,7 @@ export const TYPERT = {
992
997
  typeSymbol: '@deepseek-ai/dsh-api-session-controller#session/initializeDefaultModel:result',
993
998
  create: _deepseek_ai_dsh_api_session_controller_session_initializeDefaultModel_result$schema,
994
999
  },
995
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":292,"column":9},
1000
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":296,"column":9},
996
1001
  },
997
1002
  {
998
1003
  id: '@deepseek-ai/dsh-api-session-controller#session/list',
@@ -1018,7 +1023,7 @@ export const TYPERT = {
1018
1023
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionListValue',
1019
1024
  create: _deepseek_ai_dsh_api_session_controller_session_list_result$schema,
1020
1025
  },
1021
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":252,"column":9},
1026
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":255,"column":9},
1022
1027
  },
1023
1028
  {
1024
1029
  id: '@deepseek-ai/dsh-api-session-controller#session/modelCatalog',
@@ -1033,7 +1038,7 @@ export const TYPERT = {
1033
1038
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#ModelCatalog',
1034
1039
  create: _deepseek_ai_dsh_api_session_controller_session_modelCatalog_result$schema,
1035
1040
  },
1036
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":310,"column":3},
1041
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":316,"column":3},
1037
1042
  },
1038
1043
  {
1039
1044
  id: '@deepseek-ai/dsh-api-session-controller#session/openWorkspacePath',
@@ -1059,7 +1064,7 @@ export const TYPERT = {
1059
1064
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionOpenWorkspacePathValue',
1060
1065
  create: _deepseek_ai_dsh_api_session_controller_session_openWorkspacePath_result$schema,
1061
1066
  },
1062
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":340,"column":9},
1067
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":346,"column":9},
1063
1068
  },
1064
1069
  {
1065
1070
  id: '@deepseek-ai/dsh-api-session-controller#session/page',
@@ -1085,7 +1090,7 @@ export const TYPERT = {
1085
1090
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionPage',
1086
1091
  create: _deepseek_ai_dsh_api_session_controller_session_page_result$schema,
1087
1092
  },
1088
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":468,"column":3},
1093
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":474,"column":3},
1089
1094
  },
1090
1095
  {
1091
1096
  id: '@deepseek-ai/dsh-api-session-controller#session/projections',
@@ -1111,7 +1116,7 @@ export const TYPERT = {
1111
1116
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionProjectionsValue',
1112
1117
  create: _deepseek_ai_dsh_api_session_controller_session_projections_result$schema,
1113
1118
  },
1114
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":491,"column":9},
1119
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":505,"column":9},
1115
1120
  },
1116
1121
  {
1117
1122
  id: '@deepseek-ai/dsh-api-session-controller#session/prompt',
@@ -1137,7 +1142,7 @@ export const TYPERT = {
1137
1142
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionPromptValue',
1138
1143
  create: _deepseek_ai_dsh_api_session_controller_session_prompt_result$schema,
1139
1144
  },
1140
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":426,"column":3},
1145
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":432,"column":3},
1141
1146
  },
1142
1147
  {
1143
1148
  id: '@deepseek-ai/dsh-api-session-controller#session/rename',
@@ -1162,7 +1167,7 @@ export const TYPERT = {
1162
1167
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionRenameValue',
1163
1168
  create: _deepseek_ai_dsh_api_session_controller_session_rename_result$schema,
1164
1169
  },
1165
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":403,"column":3},
1170
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":409,"column":3},
1166
1171
  },
1167
1172
  {
1168
1173
  id: '@deepseek-ai/dsh-api-session-controller#session/search',
@@ -1188,7 +1193,7 @@ export const TYPERT = {
1188
1193
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionSearchValue',
1189
1194
  create: _deepseek_ai_dsh_api_session_controller_session_search_result$schema,
1190
1195
  },
1191
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":263,"column":3},
1196
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":266,"column":3},
1192
1197
  },
1193
1198
  {
1194
1199
  id: '@deepseek-ai/dsh-api-session-controller#session/selectModel',
@@ -1213,7 +1218,7 @@ export const TYPERT = {
1213
1218
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionSelectModelValue',
1214
1219
  create: _deepseek_ai_dsh_api_session_controller_session_selectModel_result$schema,
1215
1220
  },
1216
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":283,"column":3},
1221
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":287,"column":3},
1217
1222
  },
1218
1223
  {
1219
1224
  id: '@deepseek-ai/dsh-api-session-controller#session/updateQueue',
@@ -1238,7 +1243,7 @@ export const TYPERT = {
1238
1243
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionUpdateQueueValue',
1239
1244
  create: _deepseek_ai_dsh_api_session_controller_session_updateQueue_result$schema,
1240
1245
  },
1241
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":447,"column":3},
1246
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":453,"column":3},
1242
1247
  },
1243
1248
  {
1244
1249
  id: '@deepseek-ai/dsh-api-session-controller#session/workspacePathApplications',
@@ -1264,7 +1269,7 @@ export const TYPERT = {
1264
1269
  typeSymbol: '@deepseek-ai/dsh-api-session-controller#session/workspacePathApplications:result',
1265
1270
  create: _deepseek_ai_dsh_api_session_controller_session_workspacePathApplications_result$schema,
1266
1271
  },
1267
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":370,"column":9},
1272
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":376,"column":9},
1268
1273
  },
1269
1274
  {
1270
1275
  id: '@deepseek-ai/dsh-api-session-controller#skills/list',
@@ -1334,7 +1339,7 @@ export const TYPERT = {
1334
1339
  {
1335
1340
  "kind": "method",
1336
1341
  "name": "create",
1337
- "signature": "@Remote('create') create(request: SessionCreateRequest): Promise<SessionCreateValue>",
1342
+ "signature": "@Remote('create') async create(request: SessionCreateRequest): Promise<SessionCreateValue>",
1338
1343
  "summary": "Create or idempotently adopt one ordinary Session.",
1339
1344
  "jsDoc": "/**\n * Create or idempotently adopt one ordinary Session.\n * @param request - requested identity, location, and Agent preset.\n * @returns the Session identity and resolved preset when configured.\n */"
1340
1345
  },
@@ -1342,15 +1347,15 @@ export const TYPERT = {
1342
1347
  "kind": "method",
1343
1348
  "name": "selectModel",
1344
1349
  "signature": "@Remote('selectModel') selectModel(request: SessionSelectModelRequest): Promise<SessionSelectModelValue>",
1345
- "summary": "Select one Session-local model after explicitly resuming the Session; save the default in the background.",
1346
- "jsDoc": "/**\n * Select one Session-local model after explicitly resuming the Session; save the default in the background.\n * @param request - Session identity and requested model selection.\n * @returns the normalized selection installed for the Session, without waiting for default persistence.\n */"
1350
+ "summary": "Select a model after explicitly resuming the Session and awaiting default persistence.",
1351
+ "jsDoc": "/**\n * Select a model after explicitly resuming the Session and awaiting default persistence.\n * @param request - Session identity and requested model selection.\n * @returns the normalized selection after the shared save and Session selection succeed.\n */"
1347
1352
  },
1348
1353
  {
1349
1354
  "kind": "method",
1350
1355
  "name": "initializeDefaultModel",
1351
1356
  "signature": "@Remote async initializeDefaultModel(): Promise<void>",
1352
- "summary": "Select the first available account model after login when no provider API key is configured.",
1353
- "jsDoc": "/**\n * Select the first available account model after login when no provider API key is configured.\n * @returns after saving the first available model or retaining the existing default.\n */"
1357
+ "summary": "Initialize legacy account deployments without changing a product process's cached selection.",
1358
+ "jsDoc": "/**\n * Initialize legacy account deployments without changing a product process's cached selection.\n * @returns after saving the first available model or retaining the existing default.\n */"
1354
1359
  },
1355
1360
  {
1356
1361
  "kind": "method",
@@ -1439,7 +1444,7 @@ export const TYPERT = {
1439
1444
  {
1440
1445
  "kind": "method",
1441
1446
  "name": "follow",
1442
- "signature": "@Remote({ mode: 'stream' }) follow(request: SessionFollowRequest, signal: AbortSignal): AsyncIterable<SessionFollowFrame>",
1447
+ "signature": "@Remote({ mode: 'stream' }) async *follow(request: SessionFollowRequest, signal: AbortSignal): AsyncIterable<SessionFollowFrame>",
1443
1448
  "summary": "Follow one Session log from its opening or resume cursor.",
1444
1449
  "jsDoc": "/**\n * Follow one Session log from its opening or resume cursor.\n * @param request - durable address and last committed sequence already held by the caller.\n * @param signal - cancellation owned by the Remote stream carrier.\n * @returns a complete opening snapshot followed by gap-free durable event\n * frames and optional cursorless assistant-stream frames.\n */"
1445
1450
  },
@@ -1785,7 +1790,7 @@ export const TYPERT = {
1785
1790
  },
1786
1791
  {
1787
1792
  "name": "ModelCatalog",
1788
- "declaration": "export interface ModelCatalog {\n readonly default: ModelSelection;\n readonly savedDisplayName?: { readonly provider: string; readonly model: string; readonly name: string; };\n readonly routableProviders: readonly string[];\n readonly groups: readonly ModelProviderGroup[];\n readonly failures: readonly ModelCatalogFailure[];\n}"
1793
+ "declaration": "export interface ModelCatalog {\n readonly default: ModelSelection;\n readonly selectionScope?: 'process';\n readonly savedDisplayName?: { readonly provider: string; readonly model: string; readonly name: string; };\n readonly routableProviders: readonly string[];\n readonly groups: readonly ModelProviderGroup[];\n readonly failures: readonly ModelCatalogFailure[];\n}"
1789
1794
  },
1790
1795
  {
1791
1796
  "name": "ModelCatalogFailure",
@@ -1881,7 +1886,7 @@ export const TYPERT = {
1881
1886
  },
1882
1887
  {
1883
1888
  "name": "RemoteErrorDetailsMap",
1884
- "declaration": "export interface RemoteErrorDetailsMap {\n 'gateway/bad-request': { readonly issues?: readonly object[]; };\n 'gateway/cancelled': {};\n 'gateway/internal': {};\n 'llm/model-discovery-rejected': { readonly settingsNs: string; readonly baseURL?: string; };\n 'session/not-found': { readonly sessionId: SessionId; };\n 'workspace/not-found': { readonly workspaceId: WorkspaceId; };\n 'agent-preset/not-found': { readonly agentPreset: string; readonly available: readonly string[]; };\n 'agent-preset/invalid': { readonly agentPreset: string; readonly reason: string; };\n 'agent-preset/locked': { readonly sessionId: SessionId; readonly agentPreset: string; };\n 'job/not-found': { readonly sessionId: SessionId; readonly jobId: JobId; };\n 'session/provider-credentials-unavailable': Record<string, never>;\n 'session/provider-models-unavailable': { readonly provider: string; };\n 'session/model-unavailable': { readonly provider: string; readonly model: string; };\n 'session/conflict': { readonly sessionId: SessionId; readonly requestedCwd: string; readonly existingCwd?: string; };\n 'session/projections-unavailable': Record<string, never>;\n 'session/writer-held': { readonly sessionId: SessionId; };\n 'session/agent-busy': { readonly reason: string; };\n 'session/invalid-time-zone': { readonly value: string; };\n 'session/workspace-attach-failed': { readonly sessionId: SessionId; readonly workspaceId: string; };\n 'agent-preset/conflict': { readonly sessionId: SessionId; readonly requestedPreset: string; readonly existingPreset?: string; };\n 'session/attachment-invalid': { readonly reason: string; };\n 'session/queue-item-not-found': { readonly itemId: MessageId; };\n 'session/steer-unavailable': { readonly itemId: MessageId; };\n 'session/title-invalid': { readonly sessionId: SessionId; };\n 'session/fork-unavailable': { readonly sessionId: SessionId; };\n 'subagent/not-found': { readonly parentSessionId: SessionId; readonly childSessionId: SessionId; };\n 'subagent/catalog-diagnostic': { readonly parentSessionId: SessionId; readonly childSessionId: SessionId; readonly reason: 'corrupt' | 'unsupported' | 'unavailable'; };\n 'subagent/invalid-time-zone': { readonly value: string; };\n 'subagent/parent-unavailable': { readonly parentSessionId: SessionId; };\n 'subagent/not-resumable': { readonly childSessionId: SessionId; };\n 'subagent/unauthorized': { readonly childSessionId: SessionId; };\n 'subagent/attachment-invalid': { readonly reason: string; };\n 'subagent/delivery-unavailable': { readonly childSessionId: SessionId; };\n 'settings/rejected': { readonly ns: string; };\n 'settings/conflict': { readonly ns: string; readonly expected: number; readonly actual: number; };\n 'credential/rejected': { readonly ref: string; };\n 'terminal/unavailable': Record<string, never>;\n 'terminal/control-unavailable': { readonly reason: 'read-only' | 'not-running'; };\n 'terminal/limit-reached': { readonly limit: number; };\n 'workspace/invalid-path': { readonly path: string; };\n 'workspace/name-conflict': { readonly name: string; };\n 'workspace/session-active': { readonly sessionId: SessionId; readonly activity: readonly SessionActivity[]; };\n 'workspace/move-invalid': { readonly workspaceId: WorkspaceId; readonly sessionId: SessionId; readonly beforeSessionId?: SessionId; };\n 'directory-picker/unavailable': { readonly capability: string; };\n 'directory-picker/unreadable': { readonly path: string; };\n 'directory-picker/exists': { readonly path: string; };\n 'directory-picker/create-failed': { readonly path: string; };\n 'workspace-file/watch-unsupported': { readonly path: string; };\n 'workspace-file/not-found': { readonly path: string; };\n 'workspace-file/outside-workspace': { readonly path: string; };\n 'workspace-file/too-large': { readonly path: string; readonly limit: number; };\n 'workspace-file/not-text': { readonly path: string; };\n 'workspace-file/not-regular-file': { readonly path: string; readonly kind: 'directory' | 'symlink' | 'other'; };\n 'workspace-file/not-directory': { readonly path: string; readonly kind: 'file' | 'symlink' | 'other'; };\n 'speech/invalid-audio': { readonly reason: string; };\n 'speech/transcription-failed': { readonly reason: string; };\n 'document-render/failed': { readonly reason: OfficeToPdfErrorCode; };\n}"
1889
+ "declaration": "export interface RemoteErrorDetailsMap {\n 'gateway/bad-request': { readonly issues?: readonly object[]; };\n 'gateway/cancelled': {};\n 'gateway/internal': {};\n 'llm/model-discovery-rejected': { readonly settingsNs: string; readonly baseURL?: string; };\n 'session/not-found': { readonly sessionId: SessionId; };\n 'workspace/not-found': { readonly workspaceId: WorkspaceId; };\n 'agent-preset/not-found': { readonly agentPreset: string; readonly available: readonly string[]; };\n 'agent-preset/invalid': { readonly agentPreset: string; readonly reason: string; };\n 'agent-preset/locked': { readonly sessionId: SessionId; readonly agentPreset: string; };\n 'job/not-found': { readonly sessionId: SessionId; readonly jobId: JobId; };\n 'session/provider-credentials-unavailable': Record<string, never>;\n 'session/provider-models-unavailable': { readonly provider: string; };\n 'session/model-unavailable': { readonly provider: string; readonly model: string; };\n 'session/model-save-failed': { readonly provider: string; readonly model: string; };\n 'session/model-install-failed': { readonly provider: string; readonly model: string; };\n 'session/conflict': { readonly sessionId: SessionId; readonly requestedCwd: string; readonly existingCwd?: string; };\n 'session/projections-unavailable': Record<string, never>;\n 'session/writer-held': { readonly sessionId: SessionId; };\n 'session/agent-busy': { readonly reason: string; };\n 'session/invalid-time-zone': { readonly value: string; };\n 'session/workspace-attach-failed': { readonly sessionId: SessionId; readonly workspaceId: string; };\n 'agent-preset/conflict': { readonly sessionId: SessionId; readonly requestedPreset: string; readonly existingPreset?: string; };\n 'session/attachment-invalid': { readonly reason: string; };\n 'session/queue-item-not-found': { readonly itemId: MessageId; };\n 'session/steer-unavailable': { readonly itemId: MessageId; };\n 'session/title-invalid': { readonly sessionId: SessionId; };\n 'session/fork-unavailable': { readonly sessionId: SessionId; };\n 'subagent/not-found': { readonly parentSessionId: SessionId; readonly childSessionId: SessionId; };\n 'subagent/catalog-diagnostic': { readonly parentSessionId: SessionId; readonly childSessionId: SessionId; readonly reason: 'corrupt' | 'unsupported' | 'unavailable'; };\n 'subagent/invalid-time-zone': { readonly value: string; };\n 'subagent/parent-unavailable': { readonly parentSessionId: SessionId; };\n 'subagent/not-resumable': { readonly childSessionId: SessionId; };\n 'subagent/unauthorized': { readonly childSessionId: SessionId; };\n 'subagent/attachment-invalid': { readonly reason: string; };\n 'subagent/delivery-unavailable': { readonly childSessionId: SessionId; };\n 'settings/rejected': { readonly ns: string; };\n 'settings/conflict': { readonly ns: string; readonly expected: number; readonly actual: number; };\n 'credential/rejected': { readonly ref: string; };\n 'terminal/unavailable': Record<string, never>;\n 'terminal/control-unavailable': { readonly reason: 'read-only' | 'not-running'; };\n 'terminal/limit-reached': { readonly limit: number; };\n 'workspace/invalid-path': { readonly path: string; };\n 'workspace/name-conflict': { readonly name: string; };\n 'workspace/session-active': { readonly sessionId: SessionId; readonly activity: readonly SessionActivity[]; };\n 'workspace/session-delete-refused': { readonly sessionId: SessionId; readonly reason: 'not-archived' | 'in-use' | 'deleted' | 'scope-changed'; };\n 'workspace/move-invalid': { readonly workspaceId: WorkspaceId; readonly sessionId: SessionId; readonly beforeSessionId?: SessionId; };\n 'directory-picker/unavailable': { readonly capability: string; };\n 'directory-picker/unreadable': { readonly path: string; };\n 'directory-picker/exists': { readonly path: string; };\n 'directory-picker/create-failed': { readonly path: string; };\n 'workspace-file/watch-unsupported': { readonly path: string; };\n 'workspace-file/not-found': { readonly path: string; };\n 'workspace-file/outside-workspace': { readonly path: string; };\n 'workspace-file/too-large': { readonly path: string; readonly limit: number; };\n 'workspace-file/not-text': { readonly path: string; };\n 'workspace-file/not-regular-file': { readonly path: string; readonly kind: 'directory' | 'symlink' | 'other'; };\n 'workspace-file/not-directory': { readonly path: string; readonly kind: 'file' | 'symlink' | 'other'; };\n 'speech/invalid-audio': { readonly reason: string; };\n 'speech/transcription-failed': { readonly reason: string; };\n 'document-render/failed': { readonly reason: OfficeToPdfErrorCode; };\n}"
1885
1890
  },
1886
1891
  {
1887
1892
  "name": "ReplayEnvelope",
@@ -2037,7 +2042,7 @@ export const TYPERT = {
2037
2042
  },
2038
2043
  {
2039
2044
  "name": "SessionListMetadata",
2040
- "declaration": "export interface SessionListMetadata {\n readonly blank: boolean;\n readonly lastPromptAt: number | null;\n}"
2045
+ "declaration": "export interface SessionListMetadata {\n readonly hasUserPrompt?: boolean;\n readonly blank: boolean;\n readonly lastPromptAt: number | null;\n}"
2041
2046
  },
2042
2047
  {
2043
2048
  "name": "SessionListRequest",
@@ -3012,6 +3017,21 @@ export const TYPERT = {
3012
3017
  "mode": "emit",
3013
3018
  "signature": "'api-session/error'(sessionId: SessionId, message: string): void"
3014
3019
  },
3020
+ {
3021
+ "description": "The Host process committed a user-selected default; browser catalogs must reload from that process.",
3022
+ "summary": "The Host process committed a user-selected default; browser catalogs must reload from that process.",
3023
+ "tags": [
3024
+ {
3025
+ "name": "mode",
3026
+ "comment": "emit",
3027
+ "text": "@mode emit"
3028
+ }
3029
+ ],
3030
+ "jsDoc": "/**\n * The Host process committed a user-selected default; browser catalogs must reload from that process.\n * @mode emit\n */",
3031
+ "name": "api-session/model-updated",
3032
+ "mode": "emit",
3033
+ "signature": "'api-session/model-updated'(): void"
3034
+ },
3015
3035
  {
3016
3036
  "description": "A Session left the live Host registry.",
3017
3037
  "summary": "A Session left the live Host registry.",
@@ -69,6 +69,7 @@ const _deepseek_ai_dsh_api_session_controller_session_control_result$schema = ()
69
69
  'status': z.union([z.literal("completed"), z.literal("pending"), z.literal("in_progress")]),
70
70
  }))]).optional(),
71
71
  'sessionListMetadata': z.object({
72
+ 'hasUserPrompt': z.boolean().readonly().optional(),
72
73
  'blank': z.boolean().readonly(),
73
74
  'lastPromptAt': z.union([z.literal(null), z.number()]).readonly(),
74
75
  }).optional(),
@@ -241,6 +242,7 @@ const _deepseek_ai_dsh_api_session_controller_session_follow_result$schema = ()
241
242
  'status': z.union([z.literal("completed"), z.literal("pending"), z.literal("in_progress")]),
242
243
  }))]).optional(),
243
244
  'sessionListMetadata': z.object({
245
+ 'hasUserPrompt': z.boolean().readonly().optional(),
244
246
  'blank': z.boolean().readonly(),
245
247
  'lastPromptAt': z.union([z.literal(null), z.number()]).readonly(),
246
248
  }).optional(),
@@ -403,6 +405,7 @@ const _deepseek_ai_dsh_api_session_controller_session_list_result$schema = () =>
403
405
  'status': z.union([z.literal("completed"), z.literal("pending"), z.literal("in_progress")]),
404
406
  }))]).optional(),
405
407
  'sessionListMetadata': z.object({
408
+ 'hasUserPrompt': z.boolean().readonly().optional(),
406
409
  'blank': z.boolean().readonly(),
407
410
  'lastPromptAt': z.union([z.literal(null), z.number()]).readonly(),
408
411
  }).optional(),
@@ -492,6 +495,7 @@ const _deepseek_ai_dsh_api_session_controller_session_modelCatalog_result$schema
492
495
  'model': z.string().readonly(),
493
496
  'reasoningEffort': z.string().readonly().optional(),
494
497
  }).readonly(),
498
+ 'selectionScope': z.literal("process").readonly().optional(),
495
499
  'savedDisplayName': z.object({
496
500
  'provider': z.string().readonly(),
497
501
  'model': z.string().readonly(),
@@ -587,6 +591,7 @@ const _deepseek_ai_dsh_api_session_controller_session_projections_result$schema
587
591
  'status': z.union([z.literal("completed"), z.literal("pending"), z.literal("in_progress")]),
588
592
  }))]).optional(),
589
593
  'sessionListMetadata': z.object({
594
+ 'hasUserPrompt': z.boolean().readonly().optional(),
590
595
  'blank': z.boolean().readonly(),
591
596
  'lastPromptAt': z.union([z.literal(null), z.number()]).readonly(),
592
597
  }).optional(),
@@ -840,7 +845,7 @@ export const TYPERT_REMOTE = {
840
845
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionAttachmentValue',
841
846
  create: _deepseek_ai_dsh_api_session_controller_session_attachment_result$schema,
842
847
  },
843
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":437,"column":3},
848
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":443,"column":3},
844
849
  },
845
850
  {
846
851
  id: '@deepseek-ai/dsh-api-session-controller#session/cancel',
@@ -865,7 +870,7 @@ export const TYPERT_REMOTE = {
865
870
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionCancelValue',
866
871
  create: _deepseek_ai_dsh_api_session_controller_session_cancel_result$schema,
867
872
  },
868
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":457,"column":3},
873
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":463,"column":3},
869
874
  },
870
875
  {
871
876
  id: '@deepseek-ai/dsh-api-session-controller#session/canOpenWorkspacePath',
@@ -880,7 +885,7 @@ export const TYPERT_REMOTE = {
880
885
  typeSymbol: '@deepseek-ai/dsh-api-session-controller#session/canOpenWorkspacePath:result',
881
886
  create: _deepseek_ai_dsh_api_session_controller_session_canOpenWorkspacePath_result$schema,
882
887
  },
883
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":319,"column":3},
888
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":325,"column":3},
884
889
  },
885
890
  {
886
891
  id: '@deepseek-ai/dsh-api-session-controller#session/control',
@@ -897,7 +902,7 @@ export const TYPERT_REMOTE = {
897
902
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionControlFrame',
898
903
  create: _deepseek_ai_dsh_api_session_controller_session_control_result$schema,
899
904
  },
900
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":520,"column":3},
905
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":535,"column":3},
901
906
  },
902
907
  {
903
908
  id: '@deepseek-ai/dsh-api-session-controller#session/create',
@@ -922,7 +927,7 @@ export const TYPERT_REMOTE = {
922
927
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionCreateValue',
923
928
  create: _deepseek_ai_dsh_api_session_controller_session_create_result$schema,
924
929
  },
925
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":273,"column":3},
930
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":276,"column":9},
926
931
  },
927
932
  {
928
933
  id: '@deepseek-ai/dsh-api-session-controller#session/follow',
@@ -949,7 +954,7 @@ export const TYPERT_REMOTE = {
949
954
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionFollowFrame',
950
955
  create: _deepseek_ai_dsh_api_session_controller_session_follow_result$schema,
951
956
  },
952
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":480,"column":3},
957
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":486,"column":10},
953
958
  },
954
959
  {
955
960
  id: '@deepseek-ai/dsh-api-session-controller#session/fork',
@@ -974,7 +979,7 @@ export const TYPERT_REMOTE = {
974
979
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionForkValue',
975
980
  create: _deepseek_ai_dsh_api_session_controller_session_fork_result$schema,
976
981
  },
977
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":415,"column":3},
982
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":421,"column":3},
978
983
  },
979
984
  {
980
985
  id: '@deepseek-ai/dsh-api-session-controller#session/initializeDefaultModel',
@@ -989,7 +994,7 @@ export const TYPERT_REMOTE = {
989
994
  typeSymbol: '@deepseek-ai/dsh-api-session-controller#session/initializeDefaultModel:result',
990
995
  create: _deepseek_ai_dsh_api_session_controller_session_initializeDefaultModel_result$schema,
991
996
  },
992
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":292,"column":9},
997
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":296,"column":9},
993
998
  },
994
999
  {
995
1000
  id: '@deepseek-ai/dsh-api-session-controller#session/list',
@@ -1015,7 +1020,7 @@ export const TYPERT_REMOTE = {
1015
1020
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionListValue',
1016
1021
  create: _deepseek_ai_dsh_api_session_controller_session_list_result$schema,
1017
1022
  },
1018
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":252,"column":9},
1023
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":255,"column":9},
1019
1024
  },
1020
1025
  {
1021
1026
  id: '@deepseek-ai/dsh-api-session-controller#session/modelCatalog',
@@ -1030,7 +1035,7 @@ export const TYPERT_REMOTE = {
1030
1035
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#ModelCatalog',
1031
1036
  create: _deepseek_ai_dsh_api_session_controller_session_modelCatalog_result$schema,
1032
1037
  },
1033
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":310,"column":3},
1038
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":316,"column":3},
1034
1039
  },
1035
1040
  {
1036
1041
  id: '@deepseek-ai/dsh-api-session-controller#session/openWorkspacePath',
@@ -1056,7 +1061,7 @@ export const TYPERT_REMOTE = {
1056
1061
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionOpenWorkspacePathValue',
1057
1062
  create: _deepseek_ai_dsh_api_session_controller_session_openWorkspacePath_result$schema,
1058
1063
  },
1059
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":340,"column":9},
1064
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":346,"column":9},
1060
1065
  },
1061
1066
  {
1062
1067
  id: '@deepseek-ai/dsh-api-session-controller#session/page',
@@ -1082,7 +1087,7 @@ export const TYPERT_REMOTE = {
1082
1087
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionPage',
1083
1088
  create: _deepseek_ai_dsh_api_session_controller_session_page_result$schema,
1084
1089
  },
1085
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":468,"column":3},
1090
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":474,"column":3},
1086
1091
  },
1087
1092
  {
1088
1093
  id: '@deepseek-ai/dsh-api-session-controller#session/projections',
@@ -1108,7 +1113,7 @@ export const TYPERT_REMOTE = {
1108
1113
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionProjectionsValue',
1109
1114
  create: _deepseek_ai_dsh_api_session_controller_session_projections_result$schema,
1110
1115
  },
1111
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":491,"column":9},
1116
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":505,"column":9},
1112
1117
  },
1113
1118
  {
1114
1119
  id: '@deepseek-ai/dsh-api-session-controller#session/prompt',
@@ -1134,7 +1139,7 @@ export const TYPERT_REMOTE = {
1134
1139
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionPromptValue',
1135
1140
  create: _deepseek_ai_dsh_api_session_controller_session_prompt_result$schema,
1136
1141
  },
1137
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":426,"column":3},
1142
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":432,"column":3},
1138
1143
  },
1139
1144
  {
1140
1145
  id: '@deepseek-ai/dsh-api-session-controller#session/rename',
@@ -1159,7 +1164,7 @@ export const TYPERT_REMOTE = {
1159
1164
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionRenameValue',
1160
1165
  create: _deepseek_ai_dsh_api_session_controller_session_rename_result$schema,
1161
1166
  },
1162
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":403,"column":3},
1167
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":409,"column":3},
1163
1168
  },
1164
1169
  {
1165
1170
  id: '@deepseek-ai/dsh-api-session-controller#session/search',
@@ -1185,7 +1190,7 @@ export const TYPERT_REMOTE = {
1185
1190
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionSearchValue',
1186
1191
  create: _deepseek_ai_dsh_api_session_controller_session_search_result$schema,
1187
1192
  },
1188
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":263,"column":3},
1193
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":266,"column":3},
1189
1194
  },
1190
1195
  {
1191
1196
  id: '@deepseek-ai/dsh-api-session-controller#session/selectModel',
@@ -1210,7 +1215,7 @@ export const TYPERT_REMOTE = {
1210
1215
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionSelectModelValue',
1211
1216
  create: _deepseek_ai_dsh_api_session_controller_session_selectModel_result$schema,
1212
1217
  },
1213
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":283,"column":3},
1218
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":287,"column":3},
1214
1219
  },
1215
1220
  {
1216
1221
  id: '@deepseek-ai/dsh-api-session-controller#session/updateQueue',
@@ -1235,7 +1240,7 @@ export const TYPERT_REMOTE = {
1235
1240
  typeSymbol: '@deepseek-ai/dsh-api-session-controller/types#SessionUpdateQueueValue',
1236
1241
  create: _deepseek_ai_dsh_api_session_controller_session_updateQueue_result$schema,
1237
1242
  },
1238
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":447,"column":3},
1243
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":453,"column":3},
1239
1244
  },
1240
1245
  {
1241
1246
  id: '@deepseek-ai/dsh-api-session-controller#session/workspacePathApplications',
@@ -1261,7 +1266,7 @@ export const TYPERT_REMOTE = {
1261
1266
  typeSymbol: '@deepseek-ai/dsh-api-session-controller#session/workspacePathApplications:result',
1262
1267
  create: _deepseek_ai_dsh_api_session_controller_session_workspacePathApplications_result$schema,
1263
1268
  },
1264
- sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":370,"column":9},
1269
+ sourceLocation: {"file":"packages/api/session-controller/src/index.ts","line":376,"column":9},
1265
1270
  },
1266
1271
  {
1267
1272
  id: '@deepseek-ai/dsh-api-session-controller#skills/list',
@@ -1,6 +1,6 @@
1
1
  /** Agent activation, composition, and model-selection policy owned by API Session. */
2
2
  import type { Context } from '@deepseek-ai/cordis';
3
- import type { Agent, AgentSetup, ModelSelection as AgentModelSelection, ModelSelectionRef } from '@deepseek-ai/dsh-agent';
3
+ import type { Agent, AgentHandle, CreateAgentOptions, AgentSetup, ModelSelection as AgentModelSelection, ModelSelectionRef } from '@deepseek-ai/dsh-agent';
4
4
  import type { Session, SessionId } from '@deepseek-ai/dsh-session';
5
5
  import type { SessionInspection } from '@deepseek-ai/dsh-session-persistence';
6
6
  import { type SessionObservation } from '@deepseek-ai/dsh-session-query';
@@ -65,6 +65,7 @@ export declare function inspectApiSession(ctx: Context, sessionId: SessionId, si
65
65
  /** Owns every operation that may create, resume, or configure a Web Agent. */
66
66
  export declare class ApiSessionAgentController {
67
67
  private readonly ctx;
68
+ private readonly owned;
68
69
  private readonly resumes;
69
70
  private readonly creations;
70
71
  private readonly selections;
@@ -140,6 +141,13 @@ export declare class ApiSessionAgentController {
140
141
  private resume;
141
142
  private resumeObserved;
142
143
  private createOrAdopt;
144
+ /**
145
+ * Create a Web-owned Agent whose idle handle can be released before permanent deletion.
146
+ * @param options - Agent creation input shared by new Sessions and ordinary forks.
147
+ * @returns the owned Agent handle.
148
+ */
149
+ createOwned(options: CreateAgentOptions): Promise<AgentHandle>;
150
+ private remember;
143
151
  private agentOptions;
144
152
  private installSelection;
145
153
  /**