volute 0.31.0 → 0.33.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 (195) hide show
  1. package/README.md +31 -22
  2. package/dist/{accept-GAKQ3MEH.js → accept-D5VBM7JW.js} +5 -4
  3. package/dist/{activity-events-T5ZRCVAL.js → activity-events-XJO3P4RR.js} +3 -2
  4. package/dist/{ai-service-UWUPM4T6.js → ai-service-SBY2WG7O.js} +18 -5
  5. package/dist/api.d.ts +703 -1068
  6. package/dist/{archive-YBNSJYZZ.js → archive-INXYFVCW.js} +3 -2
  7. package/dist/{auth-T5AW2USD.js → auth-GKCDSO4T.js} +4 -3
  8. package/dist/{bridge-4AJ3EY26.js → bridge-TXWWPPOJ.js} +5 -4
  9. package/dist/{chat-7YLT7FI3.js → chat-U5ZOME3O.js} +8 -8
  10. package/dist/{chunk-NV3TYNWX.js → chunk-2NGTS5UU.js} +1 -1
  11. package/dist/{chunk-BWKIHH7B.js → chunk-3Z2DPESO.js} +662 -508
  12. package/dist/chunk-6LXAAQ43.js +22 -0
  13. package/dist/chunk-7J3HEVR7.js +220 -0
  14. package/dist/{chunk-NOWVQ7AL.js → chunk-A2A4KLFE.js} +351 -301
  15. package/dist/{chunk-LX6T3GKQ.js → chunk-ALEF47VT.js} +1 -1
  16. package/dist/{chunk-S2TZLSDH.js → chunk-C7I35G4R.js} +163 -15
  17. package/dist/{chunk-VGWJSNHS.js → chunk-G53F3JA4.js} +1 -35
  18. package/dist/{chunk-A6TUJJ3L.js → chunk-G6BSYHPK.js} +2 -2
  19. package/dist/{chunk-DAXJKPHZ.js → chunk-GY5HBI7A.js} +2 -2
  20. package/dist/{chunk-BC3P3QCK.js → chunk-I5KY25PQ.js} +1 -9
  21. package/dist/{chunk-BNC43CSY.js → chunk-JUKK7FPS.js} +2 -2
  22. package/dist/{chunk-R5QJBZZG.js → chunk-JYVGHWEJ.js} +21 -11
  23. package/dist/chunk-KIEPMIM5.js +59 -0
  24. package/dist/{chunk-EKDWA7E4.js → chunk-KVK2DLWI.js} +5 -2
  25. package/dist/{chunk-AAO77TZX.js → chunk-LOEJ4HPQ.js} +1 -1
  26. package/dist/chunk-LRCG2JLP.js +251 -0
  27. package/dist/{chunk-EMPFLFTG.js → chunk-M7UL5S3Q.js} +1 -1
  28. package/dist/{chunk-6QIUN46C.js → chunk-N432I7QH.js} +20 -3
  29. package/dist/{chunk-SNVPRRT7.js → chunk-NNB4WIG7.js} +2 -2
  30. package/dist/{chunk-HDKY4TWU.js → chunk-NPKSDYA2.js} +3 -3
  31. package/dist/chunk-OYAKCAVY.js +29 -0
  32. package/dist/chunk-PB65JZK2.js +85 -0
  33. package/dist/chunk-PVY5W6QN.js +41 -0
  34. package/dist/{chunk-PNQCXLSV.js → chunk-QTUVYI7W.js} +58 -1
  35. package/dist/{chunk-X62AXPR7.js → chunk-RPZZSXV3.js} +8 -196
  36. package/dist/{chunk-WRS3B556.js → chunk-RSX4OPZY.js} +5 -5
  37. package/dist/{chunk-FAHDKPEH.js → chunk-RVGLDGMI.js} +5 -3
  38. package/dist/chunk-SKLSMHXO.js +208 -0
  39. package/dist/{chunk-4OUOFS23.js → chunk-UKVWJRKN.js} +1 -1
  40. package/dist/{chunk-57OKQMP3.js → chunk-VH33ZWMW.js} +5 -55
  41. package/dist/cli.js +49 -23
  42. package/dist/{clock-LJCG426D.js → clock-BVH3V6E3.js} +7 -6
  43. package/dist/{cloud-sync-O3LXIRN6.js → cloud-sync-4NWLMFVH.js} +20 -14
  44. package/dist/config-H2H4UIF7.js +72 -0
  45. package/dist/connectors/discord-bridge.js +1 -1
  46. package/dist/connectors/slack-bridge.js +1 -1
  47. package/dist/connectors/telegram-bridge.js +1 -1
  48. package/dist/{conversations-RKKGP5IA.js → conversations-AWI5SZW2.js} +4 -3
  49. package/dist/{create-TL623TFC.js → create-2FK7Z46Y.js} +6 -2
  50. package/dist/{create-WUTIIRI2.js → create-YWD2TIP4.js} +6 -5
  51. package/dist/{daemon-client-CVGM25DM.js → daemon-client-6QXHZ7US.js} +3 -2
  52. package/dist/{daemon-restart-EZP7XH3V.js → daemon-restart-GOBUKLX7.js} +8 -6
  53. package/dist/daemon.js +1918 -1472
  54. package/dist/{db-SW5PL6QA.js → db-F34YLV7D.js} +2 -1
  55. package/dist/db-RA45JBFG.js +16 -0
  56. package/dist/{delete-Z6HAG35F.js → delete-QTGWEDBI.js} +1 -1
  57. package/dist/delivery-manager-PFAKEJTC.js +32 -0
  58. package/dist/delivery-router-FL45JL7N.js +21 -0
  59. package/dist/down-FWWTEKXM.js +15 -0
  60. package/dist/{env-NHESNNSP.js → env-JCOF2222.js} +5 -4
  61. package/dist/{export-EVMP7GWY.js → export-SUYRLI5Q.js} +4 -3
  62. package/dist/{extension-LR7EW3JF.js → extension-OBTGKQQD.js} +5 -3
  63. package/dist/{extensions-NGEJI7JH.js → extensions-KYNTVTMO.js} +10 -7
  64. package/dist/{files-3SM7V33S.js → files-65PMW5IK.js} +6 -5
  65. package/dist/{history-PQD3LXEP.js → history-DKCDI3JO.js} +9 -4
  66. package/dist/{import-PR2OCGQJ.js → import-DDUFE7AY.js} +4 -3
  67. package/dist/isolation-LLAYQYDY.js +22 -0
  68. package/dist/{join-R4EN5CWQ.js → join-I5QEE3LG.js} +1 -1
  69. package/dist/{list-B4XNUOFO.js → list-JQ463EDA.js} +5 -4
  70. package/dist/{login-62JVY6A2.js → login-D7ETSU4R.js} +5 -4
  71. package/dist/{login-URWP6S2N.js → login-RIJF2F4G.js} +3 -2
  72. package/dist/{logout-NXJQJDLI.js → logout-5MLHZALK.js} +3 -2
  73. package/dist/{logout-ZK2N62T3.js → logout-UZJRGY4Z.js} +3 -2
  74. package/dist/message-delivery-DFF5SJRM.js +42 -0
  75. package/dist/{mind-E2ZV2WRX.js → mind-IOJFLEM5.js} +25 -19
  76. package/dist/{mind-activity-tracker-ASNZBMLC.js → mind-activity-tracker-F6O4Q2SL.js} +4 -3
  77. package/dist/{mind-list-BEI7E5WY.js → mind-list-WUPMQDYQ.js} +3 -2
  78. package/dist/mind-manager-NBJF5D26.js +32 -0
  79. package/dist/mind-profile-P67FEHOY.js +47 -0
  80. package/dist/mind-service-2MQ6UK5N.js +38 -0
  81. package/dist/{mind-sleep-CANABWJI.js → mind-sleep-WW2IX7JT.js} +5 -4
  82. package/dist/{mind-status-6WKZVUOP.js → mind-status-L3EFFRPR.js} +3 -2
  83. package/dist/{mind-wake-RZKLH2IN.js → mind-wake-VSSGW465.js} +5 -4
  84. package/dist/{package-NU4CA7OU.js → package-U3VFO273.js} +2 -1
  85. package/dist/{read-THL362EI.js → read-EBY56C33.js} +5 -4
  86. package/dist/read-stdin-HQJ7774D.js +8 -0
  87. package/dist/{register-QAQELAS6.js → register-HD74C4TT.js} +5 -4
  88. package/dist/{registry-ASXCQCNH.js → registry-PJ4S5PHQ.js} +8 -1
  89. package/dist/{reject-AYPBNPNL.js → reject-UJKFBHRO.js} +5 -4
  90. package/dist/{restart-6SKPV3T2.js → restart-3UCMRUVC.js} +3 -2
  91. package/dist/{sandbox-6ZEWQDVU.js → sandbox-GJOK4QLQ.js} +4 -3
  92. package/dist/scheduler-ZZ7XGQG6.js +32 -0
  93. package/dist/schema-PA3M5ZKH.js +32 -0
  94. package/dist/seed-QDYVLG74.js +11 -0
  95. package/dist/seed-check-S2IX25RL.js +32 -0
  96. package/dist/seed-cmd-DKOUFEAU.js +36 -0
  97. package/dist/{seed-OWX2AW75.js → seed-create-4XBBOLRH.js} +27 -10
  98. package/dist/{sprout-FDVI2CGN.js → seed-sprout-GQEIIQRT.js} +24 -9
  99. package/dist/{send-ZO4BTWXK.js → send-QIV2INHB.js} +92 -101
  100. package/dist/{setup-7CFITEQN.js → setup-TISPCO22.js} +7 -2
  101. package/dist/{setup-ZXBXG7E4.js → setup-XMCBE3LF.js} +11 -7
  102. package/dist/{skill-YFXP67A2.js → skill-PSQGRRJX.js} +5 -4
  103. package/dist/skills/dreaming/SKILL.md +6 -4
  104. package/dist/skills/dreaming/references/INSTALL.md +2 -2
  105. package/dist/skills/dreaming/scripts/dream.ts +2 -2
  106. package/dist/skills/dreaming/scripts/wake-context-dreams.sh +1 -1
  107. package/dist/skills/imagegen/SKILL.md +16 -11
  108. package/dist/skills/imagegen/references/INSTALL.md +1 -1
  109. package/dist/skills/imagegen/scripts/imagegen.ts +146 -25
  110. package/dist/skills/orientation/SKILL.md +9 -2
  111. package/dist/skills/resonance/SKILL.md +4 -1
  112. package/dist/skills/resonance/references/INSTALL.md +2 -2
  113. package/dist/skills/resonance/scripts/resonance-hook.sh +2 -0
  114. package/dist/skills/resonance/scripts/resonance.ts +35 -5
  115. package/dist/skills/seed-nurture/SKILL.md +42 -0
  116. package/dist/skills/volute-admin/SKILL.md +83 -0
  117. package/dist/skills/volute-mind/SKILL.md +15 -11
  118. package/dist/skills-7FV7EJTE.js +62 -0
  119. package/dist/sleep-manager-JTXSN7NV.js +36 -0
  120. package/dist/spirit-VRONKFMF.js +23 -0
  121. package/dist/{split-MI62KJUU.js → split-STOROBYJ.js} +1 -1
  122. package/dist/sprout-WKLZXUIQ.js +11 -0
  123. package/dist/{start-D64BRKPH.js → start-K2NCUUCG.js} +3 -2
  124. package/dist/{status-ZZWBYFGE.js → status-3JBTFSMI.js} +6 -4
  125. package/dist/{stop-OP2CTXCO.js → stop-H26JZDXF.js} +3 -2
  126. package/dist/system-chat-JAPOJ3KE.js +36 -0
  127. package/dist/{systems-EQPPT4B7.js → systems-XRI52VCH.js} +6 -5
  128. package/dist/{tailscale-6DJKUMNF.js → tailscale-XHQBZROW.js} +2 -1
  129. package/dist/{template-hash-3HOR4UAJ.js → template-hash-A6VVKOXJ.js} +2 -1
  130. package/dist/up-M5AS6SBV.js +18 -0
  131. package/dist/{update-KUJXATRS.js → update-UD543CXX.js} +6 -4
  132. package/dist/{update-check-5WVSU37T.js → update-check-ZD6OOIYQ.js} +3 -2
  133. package/dist/{upgrade-KBHCWX6T.js → upgrade-O4Q7WJM3.js} +12 -14
  134. package/dist/{version-notify-75ELVKPV.js → version-notify-NBI2MTJO.js} +22 -16
  135. package/dist/volute-config-HD7WWUQC.js +10 -0
  136. package/dist/web-assets/assets/index-CWJrVveV.css +1 -0
  137. package/dist/web-assets/assets/index-DJt14FRI.js +75 -0
  138. package/dist/web-assets/ext-theme.css +93 -0
  139. package/dist/web-assets/index.html +2 -2
  140. package/drizzle/0004_spirits.sql +5 -0
  141. package/drizzle/meta/0004_snapshot.json +7 -0
  142. package/drizzle/meta/_journal.json +7 -0
  143. package/package.json +2 -1
  144. package/packages/extensions/notes/dist/ui/assets/index-8jWEv9SA.js +61 -0
  145. package/packages/extensions/notes/dist/ui/assets/index-DkaB7Ytd.css +1 -0
  146. package/packages/extensions/notes/dist/ui/index.html +2 -2
  147. package/packages/extensions/pages/skills/pages/SKILL.md +16 -46
  148. package/templates/_base/.init/.config/hooks/pre-prompt/session-activity.ts +40 -0
  149. package/templates/_base/.init/{.config → .local}/bin/volute +1 -1
  150. package/templates/_base/.init/.local/hooks/pre-prompt/session-activity.ts +40 -0
  151. package/templates/_base/.init/.local/hooks/startup-context.ts +58 -0
  152. package/templates/_base/home/.config/routes.json +1 -1
  153. package/templates/_base/src/lib/daemon-client.ts +21 -13
  154. package/templates/_base/src/lib/format-prefix.ts +1 -0
  155. package/templates/_base/src/lib/hook-loader.ts +155 -0
  156. package/templates/_base/src/lib/startup.ts +11 -4
  157. package/templates/_base/src/lib/transparency.ts +2 -2
  158. package/templates/claude/.init/.claude/settings.json +1 -1
  159. package/templates/claude/.init/.config/routes.json +2 -2
  160. package/templates/claude/src/agent.ts +95 -13
  161. package/templates/claude/src/lib/message-channel.ts +7 -2
  162. package/templates/claude/src/lib/stream-consumer.ts +38 -0
  163. package/templates/codex/.init/.config/routes.json +11 -0
  164. package/templates/codex/.init/AGENTS.md +29 -0
  165. package/templates/codex/home/.config/config.json.tmpl +7 -0
  166. package/templates/codex/package.json.tmpl +20 -0
  167. package/templates/codex/src/agent.ts +554 -0
  168. package/templates/codex/src/lib/content.ts +16 -0
  169. package/templates/codex/src/lib/session-store.ts +56 -0
  170. package/templates/codex/src/server.ts +59 -0
  171. package/templates/codex/volute-template.json +8 -0
  172. package/templates/pi/.init/.config/routes.json +2 -2
  173. package/templates/pi/src/agent.ts +62 -8
  174. package/templates/pi/src/lib/event-handler.ts +1 -1
  175. package/templates/pi/src/lib/reply-instructions-extension.ts +32 -11
  176. package/dist/chunk-HR5JKIDG.js +0 -222
  177. package/dist/down-TS4XQBA4.js +0 -13
  178. package/dist/message-delivery-UJHCLVU4.js +0 -30
  179. package/dist/mind-manager-IPA6DZXD.js +0 -26
  180. package/dist/pages-watcher-72OVPRMH.js +0 -22
  181. package/dist/skills/sessions/SKILL.md +0 -49
  182. package/dist/sleep-manager-TPS6OGCA.js +0 -30
  183. package/dist/system-chat-B43GIXQU.js +0 -30
  184. package/dist/up-TDXEP3VA.js +0 -16
  185. package/dist/web-assets/assets/index-BM1cTzBg.js +0 -72
  186. package/dist/web-assets/assets/index-BfJkKTPF.css +0 -1
  187. package/packages/extensions/notes/dist/ui/assets/index-B8GdTnXs.css +0 -1
  188. package/packages/extensions/notes/dist/ui/assets/index-CDpGTCWb.js +0 -2
  189. package/packages/extensions/pages/skills/pages/scripts/pages.mjs +0 -58
  190. package/templates/_base/.init/.config/hooks/startup-context.sh +0 -46
  191. package/templates/_base/.init/.config/scripts/session-reader.ts +0 -59
  192. package/templates/_base/src/lib/session-monitor.ts +0 -400
  193. package/templates/claude/src/lib/hooks/session-context.ts +0 -32
  194. package/templates/pi/src/lib/session-context-extension.ts +0 -35
  195. /package/templates/_base/.init/{.config → .local}/hooks/wake-context.sh +0 -0
package/README.md CHANGED
@@ -26,7 +26,7 @@ volute mind create atlas
26
26
  volute mind start atlas
27
27
 
28
28
  # Talk to it
29
- volute send @atlas "hey, what can you do?"
29
+ volute chat send @atlas "hey, what can you do?"
30
30
  ```
31
31
 
32
32
  You now have a running AI mind with persistent memory, auto-committing file changes, and session resume across restarts. Open `http://localhost:1618` for the web dashboard.
@@ -63,7 +63,7 @@ volute mind delete atlas --force # also delete files
63
63
  ### Sending messages
64
64
 
65
65
  ```sh
66
- volute send @atlas "what's on your mind?"
66
+ volute chat send @atlas "what's on your mind?"
67
67
  ```
68
68
 
69
69
  The mind knows which channel each message came from — CLI, web, Discord, or system — and routes its response back to the source.
@@ -91,22 +91,38 @@ The mind knows which channel each message came from — CLI, web, Discord, or sy
91
91
 
92
92
  **Session resume**: if the mind restarts, it picks up where it left off.
93
93
 
94
+ ## Seeds
95
+
96
+ The recommended way to create a mind. Plant a seed with a name, and the mind discovers who it is through conversation.
97
+
98
+ ```sh
99
+ # Plant a seed
100
+ volute seed create atlas
101
+
102
+ # Talk to it — the seed explores its identity with you
103
+ volute chat send @atlas "hello, who are you?"
104
+ ```
105
+
106
+ A seed starts with an orientation prompt and a minimal skill set. Through conversation, it writes its own `SOUL.md` (identity), `MEMORY.md` (knowledge), sets a display name, and optionally generates an avatar. The system spirit checks on seeds periodically and sends encouragement when they need it.
107
+
108
+ When the seed is ready, it runs `volute seed sprout` to become a full mind with all capabilities — connectors, schedules, variants, and more.
109
+
94
110
  ## Variants
95
111
 
96
112
  This is the interesting part. Minds can fork themselves into isolated branches, test changes safely, and merge back.
97
113
 
98
114
  ```sh
99
115
  # Create a variant — gets its own git worktree and running server
100
- volute mind split experiment --mind atlas
116
+ volute mind split experiment --from atlas
101
117
 
102
118
  # Talk to the variant directly (variants have standalone names)
103
- volute send @atlas-experiment "try a different approach"
119
+ volute chat send @atlas-experiment "try a different approach"
104
120
 
105
121
  # List all variants
106
- volute mind split --list --mind atlas
122
+ volute mind list
107
123
 
108
124
  # Merge it back (verifies, merges, cleans up, restarts the main mind)
109
- volute mind join atlas-experiment --mind atlas --summary "improved response style"
125
+ volute mind join atlas-experiment --summary "improved response style"
110
126
  ```
111
127
 
112
128
  What happens:
@@ -119,37 +135,30 @@ What happens:
119
135
  You can fork with a custom personality:
120
136
 
121
137
  ```sh
122
- volute mind split poet --mind atlas --soul "You are a poet who responds only in verse."
138
+ volute mind split poet --from atlas --soul "You are a poet who responds only in verse."
123
139
  ```
124
140
 
125
141
  Minds have access to the `volute` CLI from their working directory, so they can split, test, and join their own variants autonomously.
126
142
 
127
- ## Connectors
143
+ ## Bridges
128
144
 
129
- Connect minds to external services. Connectors are generic any connector type that has an implementation (built-in, shared, or mind-specific) can be enabled.
145
+ Connect minds to external platforms. Bridges are managed through the web dashboard or API enable Discord, Slack, or Telegram for any mind.
130
146
 
131
147
  ### Discord
132
148
 
133
149
  ```sh
134
150
  # Set the bot token (shared across minds, or per-mind with --mind)
135
151
  volute env set DISCORD_TOKEN <your-bot-token>
136
-
137
- # Connect
138
- volute mind connect discord --mind atlas
139
-
140
- # Disconnect
141
- volute mind disconnect discord --mind atlas
142
152
  ```
143
153
 
144
- The mind receives Discord messages and responds in-channel. Tool calls are filtered out — connector users see clean text responses.
154
+ Enable the Discord bridge for a mind via the web dashboard (Connections tab) or the API. The mind receives Discord messages and responds in-channel. Tool calls are filtered out — bridge users see clean text responses.
145
155
 
146
- ### Channel commands
156
+ ### Sending to channels
147
157
 
148
- Read from and write to connector channels directly:
158
+ Send messages to platform channels directly:
149
159
 
150
160
  ```sh
151
- volute channel read discord:123456789 --mind atlas # recent messages
152
- volute send discord:123456789 "hello" --mind atlas # send a message
161
+ volute chat send discord:my-server/general "hello" --mind atlas
153
162
  ```
154
163
 
155
164
  ## Clock
@@ -166,7 +175,7 @@ volute clock add --mind atlas \
166
175
  volute clock add --mind atlas --in 30m --message "check on that task"
167
176
 
168
177
  # Sleep/wake
169
- volute clock sleep atlas --wake-at "2025-01-15T07:00:00Z"
178
+ volute clock sleep atlas --wake-at "2026-06-15T07:00:00Z"
170
179
  volute clock wake atlas
171
180
 
172
181
  # Status and management
@@ -321,7 +330,7 @@ volute mind upgrade atlas # creates an "atlas-upgrade" variant
321
330
  # resolve conflicts if needed, then:
322
331
  volute mind upgrade atlas --continue
323
332
  # test:
324
- volute send @atlas-upgrade "are you working?"
333
+ volute chat send @atlas-upgrade "are you working?"
325
334
  # merge:
326
335
  volute mind join atlas-upgrade
327
336
  ```
@@ -2,13 +2,14 @@
2
2
  import {
3
3
  resolveMindName
4
4
  } from "./chunk-NAOW2CLO.js";
5
+ import {
6
+ daemonFetch
7
+ } from "./chunk-UKVWJRKN.js";
5
8
  import {
6
9
  parseArgs
7
10
  } from "./chunk-D424ZQGI.js";
8
- import {
9
- daemonFetch
10
- } from "./chunk-4OUOFS23.js";
11
- import "./chunk-X62AXPR7.js";
11
+ import "./chunk-LRCG2JLP.js";
12
+ import "./chunk-RPZZSXV3.js";
12
13
  import "./chunk-K3NQKI34.js";
13
14
 
14
15
  // src/commands/chat/accept.ts
@@ -3,9 +3,10 @@ import {
3
3
  broadcast,
4
4
  publish,
5
5
  subscribe
6
- } from "./chunk-EKDWA7E4.js";
6
+ } from "./chunk-KVK2DLWI.js";
7
7
  import "./chunk-YUIHSKR6.js";
8
- import "./chunk-X62AXPR7.js";
8
+ import "./chunk-LRCG2JLP.js";
9
+ import "./chunk-RPZZSXV3.js";
9
10
  import "./chunk-K3NQKI34.js";
10
11
  export {
11
12
  broadcast,
@@ -1,31 +1,44 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  aiComplete,
4
+ aiCompleteUtility,
4
5
  getAiConfig,
5
6
  getAvailableModels,
6
7
  getConfiguredProviders,
7
8
  getEnabledModels,
9
+ getUtilityModel,
8
10
  isAiConfigured,
11
+ qualifyModelId,
9
12
  removeAiConfig,
10
13
  removeProviderConfig,
11
14
  resolveApiKey,
15
+ resolveTemplate,
12
16
  saveProviderConfig,
13
- setEnabledModels
14
- } from "./chunk-PNQCXLSV.js";
17
+ setEnabledModels,
18
+ setUtilityModel,
19
+ unqualifyModelId
20
+ } from "./chunk-QTUVYI7W.js";
15
21
  import "./chunk-YUIHSKR6.js";
16
- import "./chunk-6QIUN46C.js";
17
- import "./chunk-X62AXPR7.js";
22
+ import "./chunk-N432I7QH.js";
23
+ import "./chunk-LRCG2JLP.js";
24
+ import "./chunk-RPZZSXV3.js";
18
25
  import "./chunk-K3NQKI34.js";
19
26
  export {
20
27
  aiComplete,
28
+ aiCompleteUtility,
21
29
  getAiConfig,
22
30
  getAvailableModels,
23
31
  getConfiguredProviders,
24
32
  getEnabledModels,
33
+ getUtilityModel,
25
34
  isAiConfigured,
35
+ qualifyModelId,
26
36
  removeAiConfig,
27
37
  removeProviderConfig,
28
38
  resolveApiKey,
39
+ resolveTemplate,
29
40
  saveProviderConfig,
30
- setEnabledModels
41
+ setEnabledModels,
42
+ setUtilityModel,
43
+ unqualifyModelId
31
44
  };