@molecule/app-ide-react 1.0.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.
Files changed (250) hide show
  1. package/LICENSE +115 -0
  2. package/dist/chatTimelineOrdering.d.ts +50 -0
  3. package/dist/chatTimelineOrdering.d.ts.map +1 -0
  4. package/dist/chatTimelineOrdering.js +46 -0
  5. package/dist/chatTimelineOrdering.js.map +1 -0
  6. package/dist/command-metadata.d.ts +78 -0
  7. package/dist/command-metadata.d.ts.map +1 -0
  8. package/dist/command-metadata.js +214 -0
  9. package/dist/command-metadata.js.map +1 -0
  10. package/dist/components/ActivityCard.d.ts +28 -0
  11. package/dist/components/ActivityCard.d.ts.map +1 -0
  12. package/dist/components/ActivityCard.js +62 -0
  13. package/dist/components/ActivityCard.js.map +1 -0
  14. package/dist/components/AutoCommitBadge.d.ts +58 -0
  15. package/dist/components/AutoCommitBadge.d.ts.map +1 -0
  16. package/dist/components/AutoCommitBadge.js +78 -0
  17. package/dist/components/AutoCommitBadge.js.map +1 -0
  18. package/dist/components/ChatPanel.d.ts +184 -0
  19. package/dist/components/ChatPanel.d.ts.map +1 -0
  20. package/dist/components/ChatPanel.js +6691 -0
  21. package/dist/components/ChatPanel.js.map +1 -0
  22. package/dist/components/CommandPalette.d.ts +18 -0
  23. package/dist/components/CommandPalette.d.ts.map +1 -0
  24. package/dist/components/CommandPalette.js +33 -0
  25. package/dist/components/CommandPalette.js.map +1 -0
  26. package/dist/components/DeviceFrameSelector.d.ts +60 -0
  27. package/dist/components/DeviceFrameSelector.d.ts.map +1 -0
  28. package/dist/components/DeviceFrameSelector.js +230 -0
  29. package/dist/components/DeviceFrameSelector.js.map +1 -0
  30. package/dist/components/EditorPanel.d.ts +17 -0
  31. package/dist/components/EditorPanel.d.ts.map +1 -0
  32. package/dist/components/EditorPanel.js +241 -0
  33. package/dist/components/EditorPanel.js.map +1 -0
  34. package/dist/components/FileExplorer.d.ts +64 -0
  35. package/dist/components/FileExplorer.d.ts.map +1 -0
  36. package/dist/components/FileExplorer.js +1111 -0
  37. package/dist/components/FileExplorer.js.map +1 -0
  38. package/dist/components/FileExplorerContextMenu.d.ts +37 -0
  39. package/dist/components/FileExplorerContextMenu.d.ts.map +1 -0
  40. package/dist/components/FileExplorerContextMenu.js +241 -0
  41. package/dist/components/FileExplorerContextMenu.js.map +1 -0
  42. package/dist/components/HelpCard.d.ts +34 -0
  43. package/dist/components/HelpCard.d.ts.map +1 -0
  44. package/dist/components/HelpCard.js +28 -0
  45. package/dist/components/HelpCard.js.map +1 -0
  46. package/dist/components/Icon.d.ts +50 -0
  47. package/dist/components/Icon.d.ts.map +1 -0
  48. package/dist/components/Icon.js +25 -0
  49. package/dist/components/Icon.js.map +1 -0
  50. package/dist/components/KeyboardShortcutsPanel.d.ts +19 -0
  51. package/dist/components/KeyboardShortcutsPanel.d.ts.map +1 -0
  52. package/dist/components/KeyboardShortcutsPanel.js +187 -0
  53. package/dist/components/KeyboardShortcutsPanel.js.map +1 -0
  54. package/dist/components/MarkdownContent.d.ts +52 -0
  55. package/dist/components/MarkdownContent.d.ts.map +1 -0
  56. package/dist/components/MarkdownContent.js +303 -0
  57. package/dist/components/MarkdownContent.js.map +1 -0
  58. package/dist/components/ModelsTable.d.ts +38 -0
  59. package/dist/components/ModelsTable.d.ts.map +1 -0
  60. package/dist/components/ModelsTable.js +96 -0
  61. package/dist/components/ModelsTable.js.map +1 -0
  62. package/dist/components/PreviewPanel.d.ts +66 -0
  63. package/dist/components/PreviewPanel.d.ts.map +1 -0
  64. package/dist/components/PreviewPanel.js +1752 -0
  65. package/dist/components/PreviewPanel.js.map +1 -0
  66. package/dist/components/QuickOpen.d.ts +20 -0
  67. package/dist/components/QuickOpen.d.ts.map +1 -0
  68. package/dist/components/QuickOpen.js +72 -0
  69. package/dist/components/QuickOpen.js.map +1 -0
  70. package/dist/components/QuickPicker.d.ts +21 -0
  71. package/dist/components/QuickPicker.d.ts.map +1 -0
  72. package/dist/components/QuickPicker.js +174 -0
  73. package/dist/components/QuickPicker.js.map +1 -0
  74. package/dist/components/RelevantSkillSuggestion.d.ts +41 -0
  75. package/dist/components/RelevantSkillSuggestion.d.ts.map +1 -0
  76. package/dist/components/RelevantSkillSuggestion.js +85 -0
  77. package/dist/components/RelevantSkillSuggestion.js.map +1 -0
  78. package/dist/components/ReportModal.d.ts +35 -0
  79. package/dist/components/ReportModal.d.ts.map +1 -0
  80. package/dist/components/ReportModal.js +112 -0
  81. package/dist/components/ReportModal.js.map +1 -0
  82. package/dist/components/ResizeHandle.d.ts +21 -0
  83. package/dist/components/ResizeHandle.d.ts.map +1 -0
  84. package/dist/components/ResizeHandle.js +109 -0
  85. package/dist/components/ResizeHandle.js.map +1 -0
  86. package/dist/components/ScriptsCard.d.ts +37 -0
  87. package/dist/components/ScriptsCard.d.ts.map +1 -0
  88. package/dist/components/ScriptsCard.js +177 -0
  89. package/dist/components/ScriptsCard.js.map +1 -0
  90. package/dist/components/SearchPanel.d.ts +18 -0
  91. package/dist/components/SearchPanel.d.ts.map +1 -0
  92. package/dist/components/SearchPanel.js +449 -0
  93. package/dist/components/SearchPanel.js.map +1 -0
  94. package/dist/components/SettingsCard.d.ts +49 -0
  95. package/dist/components/SettingsCard.d.ts.map +1 -0
  96. package/dist/components/SettingsCard.js +59 -0
  97. package/dist/components/SettingsCard.js.map +1 -0
  98. package/dist/components/ShareModal.d.ts +32 -0
  99. package/dist/components/ShareModal.d.ts.map +1 -0
  100. package/dist/components/ShareModal.js +126 -0
  101. package/dist/components/ShareModal.js.map +1 -0
  102. package/dist/components/SidebarTabs.d.ts +18 -0
  103. package/dist/components/SidebarTabs.d.ts.map +1 -0
  104. package/dist/components/SidebarTabs.js +20 -0
  105. package/dist/components/SidebarTabs.js.map +1 -0
  106. package/dist/components/SkillsCard.d.ts +86 -0
  107. package/dist/components/SkillsCard.d.ts.map +1 -0
  108. package/dist/components/SkillsCard.js +227 -0
  109. package/dist/components/SkillsCard.js.map +1 -0
  110. package/dist/components/StreamingIndicator.d.ts +50 -0
  111. package/dist/components/StreamingIndicator.d.ts.map +1 -0
  112. package/dist/components/StreamingIndicator.js +142 -0
  113. package/dist/components/StreamingIndicator.js.map +1 -0
  114. package/dist/components/TabBar.d.ts +37 -0
  115. package/dist/components/TabBar.d.ts.map +1 -0
  116. package/dist/components/TabBar.js +187 -0
  117. package/dist/components/TabBar.js.map +1 -0
  118. package/dist/components/TipCard.d.ts +22 -0
  119. package/dist/components/TipCard.d.ts.map +1 -0
  120. package/dist/components/TipCard.js +73 -0
  121. package/dist/components/TipCard.js.map +1 -0
  122. package/dist/components/ToolCallCard.d.ts +18 -0
  123. package/dist/components/ToolCallCard.d.ts.map +1 -0
  124. package/dist/components/ToolCallCard.js +716 -0
  125. package/dist/components/ToolCallCard.js.map +1 -0
  126. package/dist/components/UserAvatar.d.ts +45 -0
  127. package/dist/components/UserAvatar.d.ts.map +1 -0
  128. package/dist/components/UserAvatar.js +80 -0
  129. package/dist/components/UserAvatar.js.map +1 -0
  130. package/dist/components/WorkspaceLayout.d.ts +19 -0
  131. package/dist/components/WorkspaceLayout.d.ts.map +1 -0
  132. package/dist/components/WorkspaceLayout.js +56 -0
  133. package/dist/components/WorkspaceLayout.js.map +1 -0
  134. package/dist/components/activity-utilities.d.ts +107 -0
  135. package/dist/components/activity-utilities.d.ts.map +1 -0
  136. package/dist/components/activity-utilities.js +154 -0
  137. package/dist/components/activity-utilities.js.map +1 -0
  138. package/dist/components/chat-autocommit-utilities.d.ts +172 -0
  139. package/dist/components/chat-autocommit-utilities.d.ts.map +1 -0
  140. package/dist/components/chat-autocommit-utilities.js +185 -0
  141. package/dist/components/chat-autocommit-utilities.js.map +1 -0
  142. package/dist/components/chat-card-style.d.ts +64 -0
  143. package/dist/components/chat-card-style.d.ts.map +1 -0
  144. package/dist/components/chat-card-style.js +74 -0
  145. package/dist/components/chat-card-style.js.map +1 -0
  146. package/dist/components/chat-commands.d.ts +17 -0
  147. package/dist/components/chat-commands.d.ts.map +1 -0
  148. package/dist/components/chat-commands.js +17 -0
  149. package/dist/components/chat-commands.js.map +1 -0
  150. package/dist/components/chat-commit-utilities.d.ts +29 -0
  151. package/dist/components/chat-commit-utilities.d.ts.map +1 -0
  152. package/dist/components/chat-commit-utilities.js +31 -0
  153. package/dist/components/chat-commit-utilities.js.map +1 -0
  154. package/dist/components/chat-cost-utilities.d.ts +62 -0
  155. package/dist/components/chat-cost-utilities.d.ts.map +1 -0
  156. package/dist/components/chat-cost-utilities.js +66 -0
  157. package/dist/components/chat-cost-utilities.js.map +1 -0
  158. package/dist/components/chat-effort-utilities.d.ts +96 -0
  159. package/dist/components/chat-effort-utilities.d.ts.map +1 -0
  160. package/dist/components/chat-effort-utilities.js +97 -0
  161. package/dist/components/chat-effort-utilities.js.map +1 -0
  162. package/dist/components/chat-help-utilities.d.ts +89 -0
  163. package/dist/components/chat-help-utilities.d.ts.map +1 -0
  164. package/dist/components/chat-help-utilities.js +131 -0
  165. package/dist/components/chat-help-utilities.js.map +1 -0
  166. package/dist/components/chat-model-mode-utilities.d.ts +143 -0
  167. package/dist/components/chat-model-mode-utilities.d.ts.map +1 -0
  168. package/dist/components/chat-model-mode-utilities.js +191 -0
  169. package/dist/components/chat-model-mode-utilities.js.map +1 -0
  170. package/dist/components/chat-models-utilities.d.ts +98 -0
  171. package/dist/components/chat-models-utilities.d.ts.map +1 -0
  172. package/dist/components/chat-models-utilities.js +136 -0
  173. package/dist/components/chat-models-utilities.js.map +1 -0
  174. package/dist/components/chat-report-utilities.d.ts +149 -0
  175. package/dist/components/chat-report-utilities.d.ts.map +1 -0
  176. package/dist/components/chat-report-utilities.js +151 -0
  177. package/dist/components/chat-report-utilities.js.map +1 -0
  178. package/dist/components/chat-scripts-utilities.d.ts +140 -0
  179. package/dist/components/chat-scripts-utilities.d.ts.map +1 -0
  180. package/dist/components/chat-scripts-utilities.js +158 -0
  181. package/dist/components/chat-scripts-utilities.js.map +1 -0
  182. package/dist/components/chat-settings-utilities.d.ts +72 -0
  183. package/dist/components/chat-settings-utilities.d.ts.map +1 -0
  184. package/dist/components/chat-settings-utilities.js +56 -0
  185. package/dist/components/chat-settings-utilities.js.map +1 -0
  186. package/dist/components/chat-share-utilities.d.ts +104 -0
  187. package/dist/components/chat-share-utilities.d.ts.map +1 -0
  188. package/dist/components/chat-share-utilities.js +90 -0
  189. package/dist/components/chat-share-utilities.js.map +1 -0
  190. package/dist/components/chat-skills-utilities.d.ts +242 -0
  191. package/dist/components/chat-skills-utilities.d.ts.map +1 -0
  192. package/dist/components/chat-skills-utilities.js +433 -0
  193. package/dist/components/chat-skills-utilities.js.map +1 -0
  194. package/dist/components/chat-stream-utilities.d.ts +74 -0
  195. package/dist/components/chat-stream-utilities.d.ts.map +1 -0
  196. package/dist/components/chat-stream-utilities.js +103 -0
  197. package/dist/components/chat-stream-utilities.js.map +1 -0
  198. package/dist/components/chat-tips-utilities.d.ts +108 -0
  199. package/dist/components/chat-tips-utilities.d.ts.map +1 -0
  200. package/dist/components/chat-tips-utilities.js +137 -0
  201. package/dist/components/chat-tips-utilities.js.map +1 -0
  202. package/dist/components/device-cycle.d.ts +84 -0
  203. package/dist/components/device-cycle.d.ts.map +1 -0
  204. package/dist/components/device-cycle.js +77 -0
  205. package/dist/components/device-cycle.js.map +1 -0
  206. package/dist/components/index.d.ts +36 -0
  207. package/dist/components/index.d.ts.map +1 -0
  208. package/dist/components/index.js +33 -0
  209. package/dist/components/index.js.map +1 -0
  210. package/dist/components/tool-call-utilities.d.ts +69 -0
  211. package/dist/components/tool-call-utilities.d.ts.map +1 -0
  212. package/dist/components/tool-call-utilities.js +368 -0
  213. package/dist/components/tool-call-utilities.js.map +1 -0
  214. package/dist/components/user-avatar-utilities.d.ts +41 -0
  215. package/dist/components/user-avatar-utilities.d.ts.map +1 -0
  216. package/dist/components/user-avatar-utilities.js +56 -0
  217. package/dist/components/user-avatar-utilities.js.map +1 -0
  218. package/dist/components/workspace-layout-utilities.d.ts +37 -0
  219. package/dist/components/workspace-layout-utilities.d.ts.map +1 -0
  220. package/dist/components/workspace-layout-utilities.js +58 -0
  221. package/dist/components/workspace-layout-utilities.js.map +1 -0
  222. package/dist/customEventCards.d.ts +117 -0
  223. package/dist/customEventCards.d.ts.map +1 -0
  224. package/dist/customEventCards.js +36 -0
  225. package/dist/customEventCards.js.map +1 -0
  226. package/dist/hooks/index.d.ts +8 -0
  227. package/dist/hooks/index.d.ts.map +1 -0
  228. package/dist/hooks/index.js +8 -0
  229. package/dist/hooks/index.js.map +1 -0
  230. package/dist/hooks/useKeyboardShortcuts.d.ts +48 -0
  231. package/dist/hooks/useKeyboardShortcuts.d.ts.map +1 -0
  232. package/dist/hooks/useKeyboardShortcuts.js +112 -0
  233. package/dist/hooks/useKeyboardShortcuts.js.map +1 -0
  234. package/dist/hooks/useViewport.d.ts +42 -0
  235. package/dist/hooks/useViewport.d.ts.map +1 -0
  236. package/dist/hooks/useViewport.js +61 -0
  237. package/dist/hooks/useViewport.js.map +1 -0
  238. package/dist/index.d.ts +75 -0
  239. package/dist/index.d.ts.map +1 -0
  240. package/dist/index.js +74 -0
  241. package/dist/index.js.map +1 -0
  242. package/dist/settings-metadata.d.ts +78 -0
  243. package/dist/settings-metadata.d.ts.map +1 -0
  244. package/dist/settings-metadata.js +131 -0
  245. package/dist/settings-metadata.js.map +1 -0
  246. package/dist/types.d.ts +751 -0
  247. package/dist/types.d.ts.map +1 -0
  248. package/dist/types.js +25 -0
  249. package/dist/types.js.map +1 -0
  250. package/package.json +90 -0
@@ -0,0 +1,78 @@
1
+ /**
2
+ * React-free settings metadata — the single source of truth for every
3
+ * user-controllable agent setting the `/settings` view shows.
4
+ *
5
+ * Mirrors {@link module:./command-metadata}: this module deliberately imports
6
+ * **nothing** that pulls in React or i18n (only the `CommandId` *type* from the
7
+ * sibling command registry and the pure auto-commit default constant), so it
8
+ * can be consumed on *either* side of the api/app boundary. The IDE `/settings` card derives its rows from
9
+ * {@link SETTINGS} here (zipping in live, display-ready values via
10
+ * `buildSettingsList`), and the molecule.dev API system prompt can import the
11
+ * SAME array through the package's `./settings-metadata` subpath export to
12
+ * render its "User-Controllable Settings" section. One list, two consumers — so
13
+ * the settings the agent claims to respect can never drift from the settings
14
+ * the panel actually shows.
15
+ *
16
+ * This closes the SYN11 inconsistency: the panel previously hid settings while
17
+ * listing their commands in the very same card. The Effort setting was hidden
18
+ * while its `/effort` command was shown; the per-mode plan/execute models were
19
+ * collapsed into a single "Model" row; the Auto-commit setting had its
20
+ * `/autocommit` command shown with no matching row; and Hooks were enumerated in
21
+ * the spec but absent entirely — so a user's actual configuration was
22
+ * understated. Listing EVERY setting here (the per-mode models split out, plus
23
+ * Effort, Auto-commit, and Hooks) makes the panel a faithful, complete view;
24
+ * sourcing both the panel and the prompt from this one array makes the parity
25
+ * structural rather than hand-maintained.
26
+ *
27
+ * Add a setting here (plus its display value in the card and a branch wherever
28
+ * it is persisted) and it shows up in the `/settings` panel automatically — and
29
+ * in the system prompt once that consumer reads this array. Because the consuming
30
+ * side keys an exhaustive `Record<SettingKey, …>` off this union (the IDE card's
31
+ * display values, the API's `project.settings` storage keys), adding a key here
32
+ * fails those builds until each consumer binds the new setting — the compile-time
33
+ * guarantee the lists can never silently drift.
34
+ *
35
+ * @module
36
+ */
37
+ import type { CommandId } from './command-metadata.js';
38
+ /** Stable ids for each user-controllable setting (also the i18n key suffix). */
39
+ export type SettingKey = 'model' | 'planModel' | 'executeModel' | 'commitModel' | 'compactModel' | 'mode' | 'effort' | 'maxLoops' | 'autoFix' | 'autoCommit' | 'hooks' | 'autoApproveCommands' | 'sounds';
40
+ /** Canonical, value-free metadata for a single user-controllable setting. */
41
+ export interface SettingMeta {
42
+ /** Stable id (also the i18n key suffix, e.g. `'effort'`). */
43
+ id: SettingKey;
44
+ /** Human-readable label (English default; wrapped in `t()` at render). */
45
+ label: string;
46
+ /**
47
+ * One-line explanation of what the setting does (English default). May
48
+ * contain the `{{agentName}}` interpolation token, filled in at render from
49
+ * the host's agent identity (neutral default: "the assistant").
50
+ */
51
+ description: string;
52
+ /**
53
+ * The slash command that edits this setting client-side. Drives the inline
54
+ * "Edit" affordance and cross-links the setting to its command. Omitted only
55
+ * for read-only settings.
56
+ */
57
+ editCommand?: CommandId;
58
+ /**
59
+ * The exact slash-command input to prefill when editing, for settings whose
60
+ * bare {@link SettingMeta.editCommand} is not specific enough — e.g. the
61
+ * per-mode model rows both run the `model` command but must scope it to a
62
+ * mode (`/model --plan`, `/model --execute`). Omit when running the bare
63
+ * command suffices.
64
+ */
65
+ editInput?: string;
66
+ }
67
+ /**
68
+ * Every user-controllable setting, in display order. The authoritative list —
69
+ * the `/settings` view (via `buildSettingsList`) and the system prompt both read
70
+ * from it, so they cannot drift. The default `model` and the per-mode
71
+ * `planModel` / `executeModel` rows are kept distinct (rather than collapsed
72
+ * into one "Model" row); `effort`, `autoCommit`, and `hooks` are each listed
73
+ * alongside (or in `hooks`' case, instead of) the command the panel references —
74
+ * so a user's actual configuration is never understated and the panel never
75
+ * shows a command for a setting it hides.
76
+ */
77
+ export declare const SETTINGS: readonly SettingMeta[];
78
+ //# sourceMappingURL=settings-metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings-metadata.d.ts","sourceRoot":"","sources":["../src/settings-metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAGtD,gFAAgF;AAChF,MAAM,MAAM,UAAU,GAClB,OAAO,GACP,WAAW,GACX,cAAc,GACd,aAAa,GACb,cAAc,GACd,MAAM,GACN,QAAQ,GACR,UAAU,GACV,SAAS,GACT,YAAY,GACZ,OAAO,GACP,qBAAqB,GACrB,QAAQ,CAAA;AAEZ,6EAA6E;AAC7E,MAAM,WAAW,WAAW;IAC1B,6DAA6D;IAC7D,EAAE,EAAE,UAAU,CAAA;IACd,0EAA0E;IAC1E,KAAK,EAAE,MAAM,CAAA;IACb;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;;;OAIG;IACH,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,QAAQ,EAAE,SAAS,WAAW,EAyFjC,CAAA"}
@@ -0,0 +1,131 @@
1
+ /**
2
+ * React-free settings metadata — the single source of truth for every
3
+ * user-controllable agent setting the `/settings` view shows.
4
+ *
5
+ * Mirrors {@link module:./command-metadata}: this module deliberately imports
6
+ * **nothing** that pulls in React or i18n (only the `CommandId` *type* from the
7
+ * sibling command registry and the pure auto-commit default constant), so it
8
+ * can be consumed on *either* side of the api/app boundary. The IDE `/settings` card derives its rows from
9
+ * {@link SETTINGS} here (zipping in live, display-ready values via
10
+ * `buildSettingsList`), and the molecule.dev API system prompt can import the
11
+ * SAME array through the package's `./settings-metadata` subpath export to
12
+ * render its "User-Controllable Settings" section. One list, two consumers — so
13
+ * the settings the agent claims to respect can never drift from the settings
14
+ * the panel actually shows.
15
+ *
16
+ * This closes the SYN11 inconsistency: the panel previously hid settings while
17
+ * listing their commands in the very same card. The Effort setting was hidden
18
+ * while its `/effort` command was shown; the per-mode plan/execute models were
19
+ * collapsed into a single "Model" row; the Auto-commit setting had its
20
+ * `/autocommit` command shown with no matching row; and Hooks were enumerated in
21
+ * the spec but absent entirely — so a user's actual configuration was
22
+ * understated. Listing EVERY setting here (the per-mode models split out, plus
23
+ * Effort, Auto-commit, and Hooks) makes the panel a faithful, complete view;
24
+ * sourcing both the panel and the prompt from this one array makes the parity
25
+ * structural rather than hand-maintained.
26
+ *
27
+ * Add a setting here (plus its display value in the card and a branch wherever
28
+ * it is persisted) and it shows up in the `/settings` panel automatically — and
29
+ * in the system prompt once that consumer reads this array. Because the consuming
30
+ * side keys an exhaustive `Record<SettingKey, …>` off this union (the IDE card's
31
+ * display values, the API's `project.settings` storage keys), adding a key here
32
+ * fails those builds until each consumer binds the new setting — the compile-time
33
+ * guarantee the lists can never silently drift.
34
+ *
35
+ * @module
36
+ */
37
+ import { DEFAULT_AUTO_COMMIT_SECONDS } from './components/chat-autocommit-utilities.js';
38
+ /**
39
+ * Every user-controllable setting, in display order. The authoritative list —
40
+ * the `/settings` view (via `buildSettingsList`) and the system prompt both read
41
+ * from it, so they cannot drift. The default `model` and the per-mode
42
+ * `planModel` / `executeModel` rows are kept distinct (rather than collapsed
43
+ * into one "Model" row); `effort`, `autoCommit`, and `hooks` are each listed
44
+ * alongside (or in `hooks`' case, instead of) the command the panel references —
45
+ * so a user's actual configuration is never understated and the panel never
46
+ * shows a command for a setting it hides.
47
+ */
48
+ export const SETTINGS = [
49
+ {
50
+ id: 'model',
51
+ label: 'Default model',
52
+ description: "The model {{agentName}} uses when a mode-specific model isn't set.",
53
+ editCommand: 'model',
54
+ },
55
+ {
56
+ id: 'planModel',
57
+ label: 'Plan-mode model',
58
+ description: 'The model used in plan mode. Falls back to the default model when unset.',
59
+ editCommand: 'model',
60
+ editInput: '/model --plan',
61
+ },
62
+ {
63
+ id: 'executeModel',
64
+ label: 'Execute-mode model',
65
+ description: 'The model used in execute mode. Falls back to the default model when unset.',
66
+ editCommand: 'model',
67
+ editInput: '/model --execute',
68
+ },
69
+ {
70
+ id: 'commitModel',
71
+ label: 'Commit-message model',
72
+ description: 'The model that writes commit messages. Falls back to a fast default when unset.',
73
+ editCommand: 'model',
74
+ editInput: '/model --commit',
75
+ },
76
+ {
77
+ id: 'compactModel',
78
+ label: 'Compaction model',
79
+ description: 'The model that summarizes older messages when the conversation nears its context limit. Falls back to a fast default when unset.',
80
+ editCommand: 'model',
81
+ editInput: '/model --compact',
82
+ },
83
+ {
84
+ id: 'mode',
85
+ label: 'Mode',
86
+ description: 'Plan mode researches and proposes without editing files; execute mode writes code.',
87
+ editCommand: 'plan',
88
+ },
89
+ {
90
+ id: 'effort',
91
+ label: 'Reasoning effort',
92
+ description: "How hard {{agentName}} thinks, set per mode using each mode's model-native levels (e.g. high/xhigh); also scales the agent loop budget.",
93
+ editCommand: 'effort',
94
+ },
95
+ {
96
+ id: 'maxLoops',
97
+ label: 'Max tool iterations',
98
+ description: 'Upper bound on the tool calls {{agentName}} runs in one turn before it pauses for you.',
99
+ editCommand: 'maxloops',
100
+ },
101
+ {
102
+ id: 'autoFix',
103
+ label: 'Auto-fix',
104
+ description: 'After AI edits, re-run type-check and lint and feed any errors back so {{agentName}} fixes them.',
105
+ editCommand: 'autofix',
106
+ },
107
+ {
108
+ id: 'autoCommit',
109
+ label: 'Auto-commit',
110
+ description: `Automatically commit your work a set number of seconds after the last file change — on by default (${DEFAULT_AUTO_COMMIT_SECONDS}s; 0 = off), and it waits until {{agentName}} finishes its turn before committing. Each change restarts the countdown, then it pauses after committing so a clean tree is never re-committed.`,
111
+ editCommand: 'autocommit',
112
+ },
113
+ {
114
+ id: 'hooks',
115
+ label: 'Hooks',
116
+ description: "Shell commands that run before tool actions and can gate them — for example previewing a change before {{agentName}} overwrites or deletes a file. Configure them in your project's agent settings file.",
117
+ },
118
+ {
119
+ id: 'autoApproveCommands',
120
+ label: 'Auto-approve commands',
121
+ description: "Skip the 'Proceed?' confirmation before {{agentName}} runs a bulk/destructive command (a hard reset, a recursive delete, an in-place edit). The network-exfiltration guard still asks before sending data off the box.",
122
+ editCommand: 'autoapprove',
123
+ },
124
+ {
125
+ id: 'sounds',
126
+ label: 'Notification sounds',
127
+ description: 'Per-event notification sounds for responses, errors, file changes, and more.',
128
+ editCommand: 'sounds',
129
+ },
130
+ ];
131
+ //# sourceMappingURL=settings-metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings-metadata.js","sourceRoot":"","sources":["../src/settings-metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAGH,OAAO,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAA;AA8CvF;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,QAAQ,GAA2B;IAC9C;QACE,EAAE,EAAE,OAAO;QACX,KAAK,EAAE,eAAe;QACtB,WAAW,EAAE,oEAAoE;QACjF,WAAW,EAAE,OAAO;KACrB;IACD;QACE,EAAE,EAAE,WAAW;QACf,KAAK,EAAE,iBAAiB;QACxB,WAAW,EAAE,0EAA0E;QACvF,WAAW,EAAE,OAAO;QACpB,SAAS,EAAE,eAAe;KAC3B;IACD;QACE,EAAE,EAAE,cAAc;QAClB,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EAAE,6EAA6E;QAC1F,WAAW,EAAE,OAAO;QACpB,SAAS,EAAE,kBAAkB;KAC9B;IACD;QACE,EAAE,EAAE,aAAa;QACjB,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EAAE,iFAAiF;QAC9F,WAAW,EAAE,OAAO;QACpB,SAAS,EAAE,iBAAiB;KAC7B;IACD;QACE,EAAE,EAAE,cAAc;QAClB,KAAK,EAAE,kBAAkB;QACzB,WAAW,EACT,kIAAkI;QACpI,WAAW,EAAE,OAAO;QACpB,SAAS,EAAE,kBAAkB;KAC9B;IACD;QACE,EAAE,EAAE,MAAM;QACV,KAAK,EAAE,MAAM;QACb,WAAW,EACT,oFAAoF;QACtF,WAAW,EAAE,MAAM;KACpB;IACD;QACE,EAAE,EAAE,QAAQ;QACZ,KAAK,EAAE,kBAAkB;QACzB,WAAW,EACT,yIAAyI;QAC3I,WAAW,EAAE,QAAQ;KACtB;IACD;QACE,EAAE,EAAE,UAAU;QACd,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EACT,wFAAwF;QAC1F,WAAW,EAAE,UAAU;KACxB;IACD;QACE,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,UAAU;QACjB,WAAW,EACT,kGAAkG;QACpG,WAAW,EAAE,SAAS;KACvB;IACD;QACE,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,sGAAsG,2BAA2B,+LAA+L;QAC7U,WAAW,EAAE,YAAY;KAC1B;IACD;QACE,EAAE,EAAE,OAAO;QACX,KAAK,EAAE,OAAO;QACd,WAAW,EACT,0MAA0M;KAC7M;IACD;QACE,EAAE,EAAE,qBAAqB;QACzB,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EACT,wNAAwN;QAC1N,WAAW,EAAE,aAAa;KAC3B;IACD;QACE,EAAE,EAAE,QAAQ;QACZ,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE,8EAA8E;QAC3F,WAAW,EAAE,QAAQ;KACtB;CACO,CAAA"}