@poping/yome 0.0.2 → 0.0.4

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 (276) hide show
  1. package/LICENSE +202 -0
  2. package/NOTICE +11 -0
  3. package/README.md +306 -27
  4. package/README.zh-CN.md +333 -0
  5. package/bin/yome-calwatch +0 -0
  6. package/dist/agent.d.ts +24 -2
  7. package/dist/agent.js +34 -2
  8. package/dist/agent.js.map +1 -1
  9. package/dist/context.d.ts +2 -0
  10. package/dist/context.js +121 -13
  11. package/dist/context.js.map +1 -1
  12. package/dist/daemon/calendarPermission.d.ts +10 -0
  13. package/dist/daemon/calendarPermission.js +68 -0
  14. package/dist/daemon/calendarPermission.js.map +1 -0
  15. package/dist/daemon/cronCli.d.ts +19 -0
  16. package/dist/daemon/cronCli.js +403 -0
  17. package/dist/daemon/cronCli.js.map +1 -0
  18. package/dist/daemon/envHint.d.ts +5 -0
  19. package/dist/daemon/envHint.js +139 -0
  20. package/dist/daemon/envHint.js.map +1 -0
  21. package/dist/daemon/humanCron.d.ts +1 -0
  22. package/dist/daemon/humanCron.js +72 -0
  23. package/dist/daemon/humanCron.js.map +1 -0
  24. package/dist/daemon/humanOnce.d.ts +1 -0
  25. package/dist/daemon/humanOnce.js +54 -0
  26. package/dist/daemon/humanOnce.js.map +1 -0
  27. package/dist/daemon/index.d.ts +5 -0
  28. package/dist/daemon/index.js +168 -0
  29. package/dist/daemon/index.js.map +1 -0
  30. package/dist/daemon/launchd.d.ts +7 -0
  31. package/dist/daemon/launchd.js +93 -0
  32. package/dist/daemon/launchd.js.map +1 -0
  33. package/dist/daemon/log.d.ts +17 -0
  34. package/dist/daemon/log.js +57 -0
  35. package/dist/daemon/log.js.map +1 -0
  36. package/dist/daemon/paths.d.ts +11 -0
  37. package/dist/daemon/paths.js +27 -0
  38. package/dist/daemon/paths.js.map +1 -0
  39. package/dist/daemon/runTaskEntry.d.ts +1 -0
  40. package/dist/daemon/runTaskEntry.js +67 -0
  41. package/dist/daemon/runTaskEntry.js.map +1 -0
  42. package/dist/daemon/runner.d.ts +21 -0
  43. package/dist/daemon/runner.js +175 -0
  44. package/dist/daemon/runner.js.map +1 -0
  45. package/dist/daemon/scheduler.d.ts +5 -0
  46. package/dist/daemon/scheduler.js +162 -0
  47. package/dist/daemon/scheduler.js.map +1 -0
  48. package/dist/daemon/taskStore.d.ts +62 -0
  49. package/dist/daemon/taskStore.js +88 -0
  50. package/dist/daemon/taskStore.js.map +1 -0
  51. package/dist/daemon/triggers/calendar.d.ts +8 -0
  52. package/dist/daemon/triggers/calendar.js +248 -0
  53. package/dist/daemon/triggers/calendar.js.map +1 -0
  54. package/dist/daemon/triggers/childRunner.d.ts +14 -0
  55. package/dist/daemon/triggers/childRunner.js +111 -0
  56. package/dist/daemon/triggers/childRunner.js.map +1 -0
  57. package/dist/daemon/triggers/cron.d.ts +14 -0
  58. package/dist/daemon/triggers/cron.js +91 -0
  59. package/dist/daemon/triggers/cron.js.map +1 -0
  60. package/dist/daemon/triggers/file.d.ts +7 -0
  61. package/dist/daemon/triggers/file.js +123 -0
  62. package/dist/daemon/triggers/file.js.map +1 -0
  63. package/dist/daemon/triggers/once.d.ts +10 -0
  64. package/dist/daemon/triggers/once.js +80 -0
  65. package/dist/daemon/triggers/once.js.map +1 -0
  66. package/dist/index.js +240 -15
  67. package/dist/index.js.map +1 -1
  68. package/dist/llm.js +45 -2
  69. package/dist/llm.js.map +1 -1
  70. package/dist/loops/chain.js +8 -0
  71. package/dist/loops/chain.js.map +1 -1
  72. package/dist/loops/evaluator.js +8 -0
  73. package/dist/loops/evaluator.js.map +1 -1
  74. package/dist/loops/orchestrator.js +8 -0
  75. package/dist/loops/orchestrator.js.map +1 -1
  76. package/dist/loops/parallel.js.map +1 -1
  77. package/dist/loops/route.js +8 -0
  78. package/dist/loops/route.js.map +1 -1
  79. package/dist/loops/simple.js +15 -0
  80. package/dist/loops/simple.js.map +1 -1
  81. package/dist/permissions/index.d.ts +1 -1
  82. package/dist/permissions/index.js +1 -1
  83. package/dist/permissions/index.js.map +1 -1
  84. package/dist/permissions/loader.d.ts +20 -1
  85. package/dist/permissions/loader.js +51 -0
  86. package/dist/permissions/loader.js.map +1 -1
  87. package/dist/redact.d.ts +56 -0
  88. package/dist/redact.js +191 -0
  89. package/dist/redact.js.map +1 -0
  90. package/dist/skills/runner/applescript.d.ts +49 -0
  91. package/dist/skills/runner/applescript.js +100 -0
  92. package/dist/skills/runner/applescript.js.map +1 -0
  93. package/dist/skills/runner/dispatcher.d.ts +128 -0
  94. package/dist/skills/runner/dispatcher.js +617 -0
  95. package/dist/skills/runner/dispatcher.js.map +1 -0
  96. package/dist/skills/runner/dispatcher.test.d.ts +1 -0
  97. package/dist/skills/runner/dispatcher.test.js +141 -0
  98. package/dist/skills/runner/dispatcher.test.js.map +1 -0
  99. package/dist/skills/runner/kernel.d.ts +8 -0
  100. package/dist/skills/runner/kernel.js +731 -0
  101. package/dist/skills/runner/kernel.js.map +1 -0
  102. package/dist/skills/runner/nodeBackend.d.ts +32 -0
  103. package/dist/skills/runner/nodeBackend.js +147 -0
  104. package/dist/skills/runner/nodeBackend.js.map +1 -0
  105. package/dist/skills/runner/tokenizer.d.ts +36 -0
  106. package/dist/skills/runner/tokenizer.js +177 -0
  107. package/dist/skills/runner/tokenizer.js.map +1 -0
  108. package/dist/state/todos.d.ts +12 -0
  109. package/dist/state/todos.js +32 -0
  110. package/dist/state/todos.js.map +1 -0
  111. package/dist/threadCli.d.ts +11 -0
  112. package/dist/threadCli.js +177 -0
  113. package/dist/threadCli.js.map +1 -0
  114. package/dist/threadShare.d.ts +21 -0
  115. package/dist/threadShare.js +121 -0
  116. package/dist/threadShare.js.map +1 -0
  117. package/dist/threadSubmit.d.ts +32 -0
  118. package/dist/threadSubmit.js +199 -0
  119. package/dist/threadSubmit.js.map +1 -0
  120. package/dist/tools/askUser.d.ts +20 -0
  121. package/dist/tools/askUser.js +126 -0
  122. package/dist/tools/askUser.js.map +1 -0
  123. package/dist/tools/bash.js +63 -14
  124. package/dist/tools/bash.js.map +1 -1
  125. package/dist/tools/index.d.ts +24 -2
  126. package/dist/tools/index.js +54 -5
  127. package/dist/tools/index.js.map +1 -1
  128. package/dist/tools/skillCall.d.ts +2 -0
  129. package/dist/tools/skillCall.js +77 -0
  130. package/dist/tools/skillCall.js.map +1 -0
  131. package/dist/tools/todoWrite.d.ts +2 -0
  132. package/dist/tools/todoWrite.js +141 -0
  133. package/dist/tools/todoWrite.js.map +1 -0
  134. package/dist/tools/yome.d.ts +2 -0
  135. package/dist/tools/yome.js +87 -0
  136. package/dist/tools/yome.js.map +1 -0
  137. package/dist/ui/AgentPicker.js +3 -3
  138. package/dist/ui/AgentPicker.js.map +1 -1
  139. package/dist/ui/App.js +263 -61
  140. package/dist/ui/App.js.map +1 -1
  141. package/dist/ui/AskUserPrompt.d.ts +7 -0
  142. package/dist/ui/AskUserPrompt.js +78 -0
  143. package/dist/ui/AskUserPrompt.js.map +1 -0
  144. package/dist/ui/Banner.d.ts +2 -1
  145. package/dist/ui/Banner.js +23 -4
  146. package/dist/ui/Banner.js.map +1 -1
  147. package/dist/ui/InputBar.js +25 -36
  148. package/dist/ui/InputBar.js.map +1 -1
  149. package/dist/ui/Markdown.d.ts +2 -2
  150. package/dist/ui/Markdown.js +22 -7
  151. package/dist/ui/Markdown.js.map +1 -1
  152. package/dist/ui/MarketplacePicker.d.ts +7 -0
  153. package/dist/ui/MarketplacePicker.js +122 -0
  154. package/dist/ui/MarketplacePicker.js.map +1 -0
  155. package/dist/ui/MessageList.d.ts +12 -1
  156. package/dist/ui/MessageList.js +72 -7
  157. package/dist/ui/MessageList.js.map +1 -1
  158. package/dist/ui/ModelPicker.js +4 -4
  159. package/dist/ui/ModelPicker.js.map +1 -1
  160. package/dist/ui/MultilineTextInput.d.ts +31 -0
  161. package/dist/ui/MultilineTextInput.js +393 -0
  162. package/dist/ui/MultilineTextInput.js.map +1 -0
  163. package/dist/ui/MultilineTextInput.test.d.ts +1 -0
  164. package/dist/ui/MultilineTextInput.test.js +30 -0
  165. package/dist/ui/MultilineTextInput.test.js.map +1 -0
  166. package/dist/ui/PermissionPrompt.d.ts +16 -4
  167. package/dist/ui/PermissionPrompt.js +60 -15
  168. package/dist/ui/PermissionPrompt.js.map +1 -1
  169. package/dist/ui/SessionPicker.js +2 -2
  170. package/dist/ui/SessionPicker.js.map +1 -1
  171. package/dist/ui/ShimmerText.d.ts +8 -0
  172. package/dist/ui/ShimmerText.js +40 -0
  173. package/dist/ui/ShimmerText.js.map +1 -0
  174. package/dist/ui/Spinner.js +3 -9
  175. package/dist/ui/Spinner.js.map +1 -1
  176. package/dist/ui/TodoPanel.d.ts +7 -0
  177. package/dist/ui/TodoPanel.js +36 -0
  178. package/dist/ui/TodoPanel.js.map +1 -0
  179. package/dist/ui/TogglePicker.js +4 -4
  180. package/dist/ui/TogglePicker.js.map +1 -1
  181. package/dist/ui/ToolResult.js +6 -0
  182. package/dist/ui/ToolResult.js.map +1 -1
  183. package/dist/ui/UnifiedSkillsPicker.d.ts +10 -0
  184. package/dist/ui/UnifiedSkillsPicker.js +63 -0
  185. package/dist/ui/UnifiedSkillsPicker.js.map +1 -0
  186. package/dist/ui/animation.d.ts +3 -0
  187. package/dist/ui/animation.js +48 -0
  188. package/dist/ui/animation.js.map +1 -0
  189. package/dist/ui/useThrottledStream.d.ts +7 -0
  190. package/dist/ui/useThrottledStream.js +63 -0
  191. package/dist/ui/useThrottledStream.js.map +1 -0
  192. package/dist/yomeSkills/auth.d.ts +20 -0
  193. package/dist/yomeSkills/auth.js +70 -0
  194. package/dist/yomeSkills/auth.js.map +1 -0
  195. package/dist/yomeSkills/blacklist.d.ts +33 -0
  196. package/dist/yomeSkills/blacklist.js +101 -0
  197. package/dist/yomeSkills/blacklist.js.map +1 -0
  198. package/dist/yomeSkills/capabilities.d.ts +54 -0
  199. package/dist/yomeSkills/capabilities.js +175 -0
  200. package/dist/yomeSkills/capabilities.js.map +1 -0
  201. package/dist/yomeSkills/capabilityGuard.d.ts +31 -0
  202. package/dist/yomeSkills/capabilityGuard.js +113 -0
  203. package/dist/yomeSkills/capabilityGuard.js.map +1 -0
  204. package/dist/yomeSkills/cli.d.ts +25 -0
  205. package/dist/yomeSkills/cli.js +624 -0
  206. package/dist/yomeSkills/cli.js.map +1 -0
  207. package/dist/yomeSkills/deprecate.d.ts +29 -0
  208. package/dist/yomeSkills/deprecate.js +99 -0
  209. package/dist/yomeSkills/deprecate.js.map +1 -0
  210. package/dist/yomeSkills/devLink.d.ts +17 -0
  211. package/dist/yomeSkills/devLink.js +91 -0
  212. package/dist/yomeSkills/devLink.js.map +1 -0
  213. package/dist/yomeSkills/doctor.d.ts +13 -0
  214. package/dist/yomeSkills/doctor.js +152 -0
  215. package/dist/yomeSkills/doctor.js.map +1 -0
  216. package/dist/yomeSkills/enable.d.ts +8 -0
  217. package/dist/yomeSkills/enable.js +67 -0
  218. package/dist/yomeSkills/enable.js.map +1 -0
  219. package/dist/yomeSkills/hubPing.d.ts +1 -0
  220. package/dist/yomeSkills/hubPing.js +41 -0
  221. package/dist/yomeSkills/hubPing.js.map +1 -0
  222. package/dist/yomeSkills/install.d.ts +18 -0
  223. package/dist/yomeSkills/install.js +143 -0
  224. package/dist/yomeSkills/install.js.map +1 -0
  225. package/dist/yomeSkills/installFromHubTarball.d.ts +26 -0
  226. package/dist/yomeSkills/installFromHubTarball.js +161 -0
  227. package/dist/yomeSkills/installFromHubTarball.js.map +1 -0
  228. package/dist/yomeSkills/installGithub.d.ts +33 -0
  229. package/dist/yomeSkills/installGithub.js +213 -0
  230. package/dist/yomeSkills/installGithub.js.map +1 -0
  231. package/dist/yomeSkills/installMeta.d.ts +8 -0
  232. package/dist/yomeSkills/installMeta.js +76 -0
  233. package/dist/yomeSkills/installMeta.js.map +1 -0
  234. package/dist/yomeSkills/integrity.d.ts +26 -0
  235. package/dist/yomeSkills/integrity.js +107 -0
  236. package/dist/yomeSkills/integrity.js.map +1 -0
  237. package/dist/yomeSkills/invoke.d.ts +29 -0
  238. package/dist/yomeSkills/invoke.js +135 -0
  239. package/dist/yomeSkills/invoke.js.map +1 -0
  240. package/dist/yomeSkills/list.d.ts +11 -0
  241. package/dist/yomeSkills/list.js +55 -0
  242. package/dist/yomeSkills/list.js.map +1 -0
  243. package/dist/yomeSkills/login.d.ts +41 -0
  244. package/dist/yomeSkills/login.js +221 -0
  245. package/dist/yomeSkills/login.js.map +1 -0
  246. package/dist/yomeSkills/manifest.d.ts +60 -0
  247. package/dist/yomeSkills/manifest.js +47 -0
  248. package/dist/yomeSkills/manifest.js.map +1 -0
  249. package/dist/yomeSkills/paths.d.ts +13 -0
  250. package/dist/yomeSkills/paths.js +33 -0
  251. package/dist/yomeSkills/paths.js.map +1 -0
  252. package/dist/yomeSkills/publish.d.ts +18 -0
  253. package/dist/yomeSkills/publish.js +114 -0
  254. package/dist/yomeSkills/publish.js.map +1 -0
  255. package/dist/yomeSkills/rollback.d.ts +10 -0
  256. package/dist/yomeSkills/rollback.js +83 -0
  257. package/dist/yomeSkills/rollback.js.map +1 -0
  258. package/dist/yomeSkills/search.d.ts +21 -0
  259. package/dist/yomeSkills/search.js +31 -0
  260. package/dist/yomeSkills/search.js.map +1 -0
  261. package/dist/yomeSkills/skillsIndex.d.ts +36 -0
  262. package/dist/yomeSkills/skillsIndex.js +111 -0
  263. package/dist/yomeSkills/skillsIndex.js.map +1 -0
  264. package/dist/yomeSkills/unified.d.ts +53 -0
  265. package/dist/yomeSkills/unified.js +187 -0
  266. package/dist/yomeSkills/unified.js.map +1 -0
  267. package/dist/yomeSkills/uninstall.d.ts +7 -0
  268. package/dist/yomeSkills/uninstall.js +22 -0
  269. package/dist/yomeSkills/uninstall.js.map +1 -0
  270. package/dist/yomeSkills/update.d.ts +18 -0
  271. package/dist/yomeSkills/update.js +75 -0
  272. package/dist/yomeSkills/update.js.map +1 -0
  273. package/dist/yomeSkills/validate.d.ts +11 -0
  274. package/dist/yomeSkills/validate.js +99 -0
  275. package/dist/yomeSkills/validate.js.map +1 -0
  276. package/package.json +23 -6
package/dist/ui/App.js CHANGED
@@ -4,21 +4,37 @@ import { Box, Text, useApp, useInput } from 'ink';
4
4
  import { Agent } from '../agent.js';
5
5
  import { getVersion, loadModelEntries } from '../config.js';
6
6
  import { isSkillDisabled, isAgentDisabled, toggleSkill, toggleAgent } from '../toggleState.js';
7
- import { addPermissionRuleToUserSettings } from '../permissions/loader.js';
7
+ import { addPermissionRuleToUserSettings, extractBashRulePrefix } from '../permissions/loader.js';
8
8
  import { MessageList, getToolLabel, getToolDetail } from './MessageList.js';
9
9
  import { InputBar } from './InputBar.js';
10
- import { Banner } from './Banner.js';
11
10
  import { AgentPicker } from './AgentPicker.js';
12
11
  import { ModelPicker } from './ModelPicker.js';
13
12
  import { SessionPicker } from './SessionPicker.js';
14
13
  import { PermissionPrompt } from './PermissionPrompt.js';
14
+ import { AskUserPrompt } from './AskUserPrompt.js';
15
+ import { TodoPanel } from './TodoPanel.js';
16
+ import { setAskUserHandler } from '../tools/index.js';
17
+ import { getTodos, setTodosChangeHandler, clearTodos } from '../state/todos.js';
15
18
  import { TogglePicker } from './TogglePicker.js';
19
+ import { UnifiedSkillsPicker } from './UnifiedSkillsPicker.js';
20
+ import { MarketplacePicker } from './MarketplacePicker.js';
21
+ import { listAllUnified } from '../yomeSkills/unified.js';
22
+ import { uninstallBySlug } from '../yomeSkills/uninstall.js';
23
+ import { setSkillEnabled } from '../yomeSkills/enable.js';
16
24
  import { listSessions } from '../sessions.js';
17
25
  import { getImageFromClipboard } from '../utils/imagePaste.js';
26
+ import { useThrottledStream } from './useThrottledStream.js';
27
+ import { ShimmerText } from './ShimmerText.js';
28
+ // Monotonic id source for messages. Required by <Static> so React can
29
+ // keep stable keys across renders even when older messages mutate
30
+ // (e.g. a tool_start flipping `done`). Lives at module scope so it's
31
+ // stable across re-mounts within the same process.
32
+ let _msgIdSeq = 0;
33
+ const nextMsgId = () => ++_msgIdSeq;
18
34
  export function App({ config }) {
19
35
  const { exit } = useApp();
20
36
  const [messages, setMessages] = useState([]);
21
- const [streamText, setStreamText] = useState('');
37
+ const stream = useThrottledStream();
22
38
  const [inputValue, setInputValue] = useState('');
23
39
  const [isRunning, setIsRunning] = useState(false);
24
40
  const [showAgentPicker, setShowAgentPicker] = useState(false);
@@ -26,11 +42,20 @@ export function App({ config }) {
26
42
  const [showSkillsPicker, setShowSkillsPicker] = useState(false);
27
43
  const [showAgentsPicker, setShowAgentsPicker] = useState(false);
28
44
  const [showSessionPicker, setShowSessionPicker] = useState(false);
45
+ const [showMarketplace, setShowMarketplace] = useState(false);
46
+ const [unifiedSkillsCache, setUnifiedSkillsCache] = useState([]);
29
47
  const [currentModelDisplay, setCurrentModelDisplay] = useState(config.model);
30
48
  const [pendingPermission, setPendingPermission] = useState(null);
31
49
  const pendingPermissionRef = useRef(pendingPermission);
32
50
  pendingPermissionRef.current = pendingPermission;
51
+ const [pendingAskUser, setPendingAskUser] = useState(null);
52
+ const [todos, setLocalTodos] = useState(() => getTodos());
33
53
  const [pickerVersion, setPickerVersion] = useState(0);
54
+ // Bumped whenever the conversation resets (`/new`, session restore).
55
+ // MessageList forwards this to <Static key=...> so Ink remounts the
56
+ // append-only scrollback buffer instead of leaving the old chat
57
+ // visible above the new one.
58
+ const [resetEpoch, setResetEpoch] = useState(0);
34
59
  const [usage, setUsage] = useState({ inputTokens: 0, outputTokens: 0 });
35
60
  const [agent] = useState(() => new Agent(config));
36
61
  const [loopName, setLoopName] = useState(() => agent.getCurrentLoopName());
@@ -47,18 +72,32 @@ export function App({ config }) {
47
72
  if (prompt === '/new') {
48
73
  agent.resetContext();
49
74
  setMessages([]);
50
- setStreamText('');
75
+ stream.reset();
51
76
  setUsage({ inputTokens: 0, outputTokens: 0 });
52
77
  isFirstMessage.current = true;
78
+ // Wipe todos too — a new session shouldn't inherit the previous
79
+ // task list. setTodos triggers the change handler, which keeps
80
+ // the panel in sync.
81
+ clearTodos();
82
+ // Wipe the terminal scrollback so the previous chat actually
83
+ // disappears. Ink's <Static> is append-only — without clearing
84
+ // the screen + bumping resetEpoch (forces a fresh Static
85
+ // instance) the user sees the old session sitting above the new
86
+ // banner, which is exactly the "/new doesn't work" symptom.
87
+ process.stdout.write('\x1b[2J\x1b[3J\x1b[H');
88
+ setResetEpoch((e) => e + 1);
53
89
  return;
54
90
  }
55
91
  // /login — mock login command
56
92
  if (prompt === '/login') {
57
- setMessages((prev) => [...prev, { type: 'text', content: '🔒 Login requested. This is a mock implementation.' }]);
58
- setMessages((prev) => [...prev, { type: 'text', content: 'Enter your credentials (mock):' }]);
59
- setMessages((prev) => [...prev, { type: 'text', content: ' Username: `user@example.com`' }]);
60
- setMessages((prev) => [...prev, { type: 'text', content: ' Password: `••••••••`' }]);
61
- setMessages((prev) => [...prev, { type: 'text', content: ' Login successful! You are now authenticated.' }]);
93
+ setMessages((prev) => [
94
+ ...prev,
95
+ { id: nextMsgId(), type: 'text', content: '🔒 Login requested. This is a mock implementation.' },
96
+ { id: nextMsgId(), type: 'text', content: 'Enter your credentials (mock):' },
97
+ { id: nextMsgId(), type: 'text', content: ' Username: `user@example.com`' },
98
+ { id: nextMsgId(), type: 'text', content: '• Password: `••••••••`' },
99
+ { id: nextMsgId(), type: 'text', content: '✅ Login successful! You are now authenticated.' },
100
+ ]);
62
101
  return;
63
102
  }
64
103
  // /sessions — open session picker
@@ -66,12 +105,55 @@ export function App({ config }) {
66
105
  setShowSessionPicker(true);
67
106
  return;
68
107
  }
69
- // /skills — interactive toggle picker
108
+ // /skills — unified picker (prompt skills + hub skills together)
70
109
  if (prompt === '/skills') {
110
+ setUnifiedSkillsCache(listAllUnified(true));
71
111
  setShowSkillsPicker(true);
72
112
  setPickerVersion((v) => v + 1);
73
113
  return;
74
114
  }
115
+ // /plugins — open the hub marketplace (search + install)
116
+ if (prompt === '/plugins' || prompt === '/marketplace') {
117
+ setShowMarketplace(true);
118
+ return;
119
+ }
120
+ // /skill <subcommand> — inline non-interactive CLI subcommands.
121
+ // Lets users install/uninstall/list without leaving the chat.
122
+ // Examples:
123
+ // /skill install github:owner/repo
124
+ // /skill list
125
+ // /skill uninstall @yome/ppt
126
+ if (prompt.startsWith('/skill ') || prompt === '/skill') {
127
+ const argsText = prompt.replace(/^\/skill\s*/, '').trim();
128
+ if (argsText.length === 0) {
129
+ setMessages((prev) => [...prev, {
130
+ id: nextMsgId(),
131
+ type: 'text',
132
+ content: 'Usage: `/skill <subcommand>` — try `install github:owner/repo`, `list`, `uninstall <slug>`, or open `/skills` for the picker.',
133
+ }]);
134
+ return;
135
+ }
136
+ const argv = argsText.split(/\s+/);
137
+ const { runSkillSubcommand } = await import('../yomeSkills/cli.js');
138
+ // Capture stdout/stderr so the chat shows what would have printed.
139
+ const captured = [];
140
+ const origLog = console.log;
141
+ const origErr = console.error;
142
+ console.log = (...a) => captured.push(a.map(String).join(' '));
143
+ console.error = (...a) => captured.push(a.map(String).join(' '));
144
+ try {
145
+ await runSkillSubcommand(argv, { yes: true, skipVerify: true });
146
+ }
147
+ finally {
148
+ console.log = origLog;
149
+ console.error = origErr;
150
+ }
151
+ const out = captured.join('\n').trim() || '(no output)';
152
+ setMessages((prev) => [...prev, { id: nextMsgId(), type: 'text', content: '```\n' + out + '\n```' }]);
153
+ // Refresh the cache so a follow-up /skills sees the result.
154
+ setUnifiedSkillsCache(listAllUnified(true));
155
+ return;
156
+ }
75
157
  // /subagents — interactive toggle picker
76
158
  if (prompt === '/subagents') {
77
159
  setShowAgentsPicker(true);
@@ -93,8 +175,8 @@ export function App({ config }) {
93
175
  const imageLabel = images.length > 0
94
176
  ? ` [${images.length} image${images.length > 1 ? 's' : ''}]`
95
177
  : '';
96
- setMessages((prev) => [...prev, { type: 'user', content: (prompt || '(image)') + imageLabel }]);
97
- setStreamText('');
178
+ setMessages((prev) => [...prev, { id: nextMsgId(), type: 'user', content: (prompt || '(image)') + imageLabel }]);
179
+ stream.reset();
98
180
  setIsRunning(true);
99
181
  // Persist user message to session
100
182
  agent.persistMessage({ role: 'user', content: prompt || '(image)' });
@@ -102,29 +184,51 @@ export function App({ config }) {
102
184
  agent.persistTitle(prompt.slice(0, 100) || '(image)');
103
185
  isFirstMessage.current = false;
104
186
  }
187
+ // Local accumulator for the current assistant turn — written to from
188
+ // onTextDelta, snapshotted into a real Message on tool boundaries
189
+ // and onDone. We track it via a closure variable rather than the
190
+ // throttled stream's buffer so persisting + flushing stay accurate
191
+ // even when tokens arrive faster than the throttle interval.
105
192
  let currentText = '';
193
+ const commitStreamingText = () => {
194
+ if (!currentText)
195
+ return;
196
+ const text = currentText;
197
+ currentText = '';
198
+ // Flush the throttled buffer first so we don't see a stale tail
199
+ // flicker after the message gets pushed.
200
+ stream.reset();
201
+ setMessages((prev) => [...prev, { id: nextMsgId(), type: 'text', content: text }]);
202
+ };
106
203
  await agent.run(prompt || 'What is in this image?', {
107
204
  async onAskPermission(toolName, message, input) {
108
205
  const detail = toolName === 'Bash'
109
206
  ? input.command ?? ''
110
207
  : input.file_path ?? '';
208
+ // Compute the most useful "always allow" rule string for this call.
209
+ // - Bash: derive command prefix like `Bash(npm run:*)` so the rule
210
+ // only matches similar commands instead of all shell access.
211
+ // - Other tools: fall back to plain tool name so a single approval
212
+ // silences future prompts for that tool.
213
+ let suggestedRule = toolName;
214
+ if (toolName === 'Bash') {
215
+ const prefix = extractBashRulePrefix(detail);
216
+ suggestedRule = prefix ? `Bash(${prefix})` : `Bash(${detail})`;
217
+ }
111
218
  return new Promise((resolve) => {
112
- setPendingPermission({ toolName, message, detail, resolve });
219
+ setPendingPermission({ toolName, message, detail, suggestedRule, resolve });
113
220
  });
114
221
  },
115
222
  onTextDelta(delta) {
116
223
  currentText += delta;
117
- setStreamText(currentText);
224
+ stream.append(delta);
118
225
  },
119
226
  onToolUse(name, input) {
120
- if (currentText) {
121
- setMessages((prev) => [...prev, { type: 'text', content: currentText }]);
122
- currentText = '';
123
- setStreamText('');
124
- }
227
+ commitStreamingText();
125
228
  setMessages((prev) => [
126
229
  ...prev,
127
230
  {
231
+ id: nextMsgId(),
128
232
  type: 'tool_start',
129
233
  content: name,
130
234
  toolName: name,
@@ -142,15 +246,17 @@ export function App({ config }) {
142
246
  break;
143
247
  }
144
248
  }
145
- return [...updated, { type: 'tool_result', content: result, toolName: name }];
249
+ return [...updated, { id: nextMsgId(), type: 'tool_result', content: result, toolName: name }];
146
250
  });
147
251
  },
148
252
  onDone(u) {
149
253
  if (currentText) {
150
- setMessages((prev) => [...prev, { type: 'text', content: currentText }]);
151
- agent.persistMessage({ role: 'assistant', content: currentText });
152
- setStreamText('');
254
+ const text = currentText;
255
+ currentText = '';
256
+ setMessages((prev) => [...prev, { id: nextMsgId(), type: 'text', content: text }]);
257
+ agent.persistMessage({ role: 'assistant', content: text });
153
258
  }
259
+ stream.reset();
154
260
  setUsage((prev) => ({
155
261
  inputTokens: prev.inputTokens + u.inputTokens,
156
262
  outputTokens: prev.outputTokens + u.outputTokens,
@@ -158,18 +264,19 @@ export function App({ config }) {
158
264
  setIsRunning(false);
159
265
  },
160
266
  onError(err) {
161
- setMessages((prev) => [...prev, { type: 'error', content: err.message }]);
267
+ setMessages((prev) => [...prev, { id: nextMsgId(), type: 'error', content: err.message }]);
268
+ stream.reset();
162
269
  setIsRunning(false);
163
270
  },
164
271
  }, images.length > 0 ? images : undefined);
165
- }, [agent, isRunning, pendingImages]);
272
+ }, [agent, isRunning, pendingImages, stream]);
166
273
  const handleAgentSelect = useCallback((name) => {
167
274
  agent.switchLoop(name);
168
275
  setLoopName(name);
169
276
  setShowAgentPicker(false);
170
277
  setMessages((prev) => [
171
278
  ...prev,
172
- { type: 'text', content: `Switched to **${name}** agent loop.` },
279
+ { id: nextMsgId(), type: 'text', content: `Switched to **${name}** agent loop.` },
173
280
  ]);
174
281
  }, [agent]);
175
282
  const handleAgentCancel = useCallback(() => {
@@ -181,7 +288,7 @@ export function App({ config }) {
181
288
  setShowModelPicker(false);
182
289
  setMessages((prev) => [
183
290
  ...prev,
184
- { type: 'text', content: `Switched to model **${entry.displayName}** (${entry.model}).` },
291
+ { id: nextMsgId(), type: 'text', content: `Switched to model **${entry.displayName}** (${entry.model}).` },
185
292
  ]);
186
293
  }, [agent]);
187
294
  const handleModelCancel = useCallback(() => {
@@ -199,7 +306,7 @@ export function App({ config }) {
199
306
  .filter((b) => b.type === 'text')
200
307
  .map((b) => b.text)
201
308
  .join(' ');
202
- uiMessages.push({ type: 'user', content: text });
309
+ uiMessages.push({ id: nextMsgId(), type: 'user', content: text });
203
310
  }
204
311
  else if (msg.role === 'assistant') {
205
312
  const text = typeof msg.content === 'string'
@@ -209,43 +316,55 @@ export function App({ config }) {
209
316
  .map((b) => b.text)
210
317
  .join(' ');
211
318
  if (text)
212
- uiMessages.push({ type: 'text', content: text });
319
+ uiMessages.push({ id: nextMsgId(), type: 'text', content: text });
213
320
  }
214
321
  }
215
322
  setMessages(uiMessages);
216
- setStreamText('');
323
+ stream.reset();
217
324
  setUsage({ inputTokens: 0, outputTokens: 0 });
218
325
  isFirstMessage.current = false;
219
326
  setShowSessionPicker(false);
220
- }, [agent]);
327
+ // Same scrollback-clearing dance as /new — see comment there.
328
+ process.stdout.write('\x1b[2J\x1b[3J\x1b[H');
329
+ setResetEpoch((e) => e + 1);
330
+ }, [agent, stream]);
221
331
  const handleSessionCancel = useCallback(() => {
222
332
  setShowSessionPicker(false);
223
333
  }, []);
224
- const handlePermissionAllow = useCallback(() => {
225
- if (pendingPermissionRef.current) {
226
- pendingPermissionRef.current.resolve(true);
227
- setPendingPermission(null);
228
- }
229
- }, []);
230
- const handlePermissionDeny = useCallback(() => {
231
- if (pendingPermissionRef.current) {
232
- pendingPermissionRef.current.resolve(false);
233
- setPendingPermission(null);
234
- }
235
- }, []);
236
- const handlePermissionAlwaysAllow = useCallback(() => {
237
- if (pendingPermissionRef.current) {
238
- const { toolName } = pendingPermissionRef.current;
239
- addPermissionRuleToUserSettings(toolName, 'allow');
240
- // Also update the in-memory context so it takes effect immediately
241
- agent.switchPermissionMode(agent.getPermissionContext().mode); // triggers re-init won't help — we need to reload
242
- pendingPermissionRef.current.resolve(true);
243
- setPendingPermission(null);
244
- setMessages((prev) => [
245
- ...prev,
246
- { type: 'text', content: `**${toolName}** added to always-allow rules.` },
247
- ]);
334
+ const handlePermissionResolve = useCallback((choice) => {
335
+ const pending = pendingPermissionRef.current;
336
+ if (!pending)
337
+ return;
338
+ const { toolName, resolve } = pending;
339
+ switch (choice.kind) {
340
+ case 'allow_once':
341
+ resolve({ decision: 'allow' });
342
+ break;
343
+ case 'allow_session':
344
+ // In-memory only — no disk write, vanishes on CLI restart.
345
+ agent.addPermissionRule(choice.ruleString, 'allow', 'session');
346
+ resolve({ decision: 'allow' });
347
+ setMessages((prev) => [
348
+ ...prev,
349
+ { id: nextMsgId(), type: 'text', content: `已添加本会话允许规则:\`${choice.ruleString}\`` },
350
+ ]);
351
+ break;
352
+ case 'allow_always':
353
+ // Persist + mirror into memory so the *current* session also benefits
354
+ // (was a bug previously: write went to disk but live ctx wasn't refreshed).
355
+ addPermissionRuleToUserSettings(choice.ruleString, 'allow');
356
+ agent.addPermissionRule(choice.ruleString, 'allow', 'userSettings');
357
+ resolve({ decision: 'allow' });
358
+ setMessages((prev) => [
359
+ ...prev,
360
+ { id: nextMsgId(), type: 'text', content: `已永久允许规则:\`${choice.ruleString}\`(写入 ~/.yome/settings.json)` },
361
+ ]);
362
+ break;
363
+ case 'deny':
364
+ resolve({ decision: 'deny', feedback: choice.feedback });
365
+ break;
248
366
  }
367
+ setPendingPermission(null);
249
368
  }, [agent]);
250
369
  const buildSkillItems = useCallback(() => {
251
370
  return agent.getSkills().map((s) => ({
@@ -268,20 +387,96 @@ export function App({ config }) {
268
387
  const nowEnabled = toggleSkill(name);
269
388
  setPickerVersion((v) => v + 1);
270
389
  const status = nowEnabled ? 'enabled' : 'disabled';
271
- setMessages((prev) => [...prev, { type: 'text', content: `Skill **${name}** ${status}.` }]);
390
+ setMessages((prev) => [...prev, { id: nextMsgId(), type: 'text', content: `Skill **${name}** ${status}.` }]);
272
391
  }, []);
273
392
  const handleAgentToggle = useCallback((name) => {
274
393
  const nowEnabled = toggleAgent(name);
275
394
  setPickerVersion((v) => v + 1);
276
395
  const status = nowEnabled ? 'enabled' : 'disabled';
277
- setMessages((prev) => [...prev, { type: 'text', content: `Agent **${name}** ${status}.` }]);
396
+ setMessages((prev) => [...prev, { id: nextMsgId(), type: 'text', content: `Agent **${name}** ${status}.` }]);
397
+ }, []);
398
+ // ── Unified /skills handlers ──────────────────────────────────
399
+ const refreshUnifiedSkills = useCallback(() => {
400
+ setUnifiedSkillsCache(listAllUnified(true));
401
+ setPickerVersion((v) => v + 1);
402
+ }, []);
403
+ const handleUnifiedToggle = useCallback((s) => {
404
+ if (s.kind === 'prompt') {
405
+ const nowEnabled = toggleSkill(s.name);
406
+ setMessages((prev) => [...prev, {
407
+ id: nextMsgId(),
408
+ type: 'text',
409
+ content: `Skill **${s.name}** ${nowEnabled ? 'enabled' : 'disabled'}.`,
410
+ }]);
411
+ }
412
+ else {
413
+ // hub: enabled = currently enabled; we want the opposite
414
+ const r = setSkillEnabled(s.slug, !s.enabled);
415
+ if (!r.ok) {
416
+ setMessages((prev) => [...prev, { id: nextMsgId(), type: 'error', content: r.reason ?? 'toggle failed' }]);
417
+ return;
418
+ }
419
+ setMessages((prev) => [...prev, {
420
+ id: nextMsgId(),
421
+ type: 'text',
422
+ content: `Hub skill **${s.slug}** ${!s.enabled ? 'enabled' : 'disabled'}.`,
423
+ }]);
424
+ }
425
+ refreshUnifiedSkills();
426
+ }, [refreshUnifiedSkills]);
427
+ const handleUnifiedUninstall = useCallback((s) => {
428
+ if (s.kind !== 'hub' || !s.slug)
429
+ return;
430
+ const r = uninstallBySlug(s.slug);
431
+ if (!r.ok) {
432
+ setMessages((prev) => [...prev, { id: nextMsgId(), type: 'error', content: r.reason ?? 'uninstall failed' }]);
433
+ return;
434
+ }
435
+ setMessages((prev) => [...prev, { id: nextMsgId(), type: 'text', content: `Removed hub skill **${s.slug}**.` }]);
436
+ refreshUnifiedSkills();
437
+ }, [refreshUnifiedSkills]);
438
+ const handleAddFromMarketplace = useCallback(() => {
439
+ setShowSkillsPicker(false);
440
+ setShowMarketplace(true);
441
+ }, []);
442
+ const handleMarketplaceClose = useCallback(() => {
443
+ setShowMarketplace(false);
444
+ refreshUnifiedSkills();
445
+ }, [refreshUnifiedSkills]);
446
+ const handleMarketplaceInstalled = useCallback((slug) => {
447
+ setMessages((prev) => [...prev, {
448
+ id: nextMsgId(),
449
+ type: 'text',
450
+ content: `Installed hub skill **${slug}** from marketplace.`,
451
+ }]);
278
452
  }, []);
279
453
  useEffect(() => {
280
454
  const initialPrompt = config.__initialPrompt;
281
455
  if (initialPrompt)
282
456
  handleSubmit(initialPrompt);
283
457
  }, []);
284
- const isPickerOpen = showAgentPicker || showModelPicker || showSkillsPicker || showAgentsPicker || showSessionPicker || pendingPermission !== null;
458
+ // Wire up the AskUser tool: register a TUI handler that pushes the
459
+ // questions into pendingAskUser state and resolves the promise once
460
+ // the user finishes (or cancels) the AskUserPrompt component.
461
+ useEffect(() => {
462
+ setAskUserHandler((questions) => {
463
+ return new Promise((resolve) => {
464
+ setPendingAskUser({ questions, resolve });
465
+ });
466
+ });
467
+ // No teardown — leaving a handler in place across remounts is safe;
468
+ // the closure captures the latest setPendingAskUser via React's
469
+ // stable setState identity.
470
+ }, []);
471
+ // Mirror the session-scope todo store into local React state so the
472
+ // TodoPanel re-renders on every TodoWrite call.
473
+ useEffect(() => {
474
+ setTodosChangeHandler((next) => setLocalTodos(next));
475
+ // Pick up any todos written before this effect attached (cheap; the
476
+ // store's getTodos is just a module-scope read).
477
+ setLocalTodos(getTodos());
478
+ }, []);
479
+ const isPickerOpen = showAgentPicker || showModelPicker || showSkillsPicker || showAgentsPicker || showSessionPicker || showMarketplace || pendingPermission !== null || pendingAskUser !== null;
285
480
  const PERMISSION_CYCLE = ['default', 'acceptEdits', 'bypassPermissions'];
286
481
  const handleImagePaste = useCallback(() => {
287
482
  const image = getImageFromClipboard();
@@ -308,7 +503,9 @@ export function App({ config }) {
308
503
  { name: 'login', description: 'Mock login command (for demonstration)' },
309
504
  { name: 'sessions', description: 'Browse and continue previous sessions' },
310
505
  { name: 'model', description: 'Switch model' },
311
- { name: 'skills', description: 'Manage skills (enable/disable)' },
506
+ { name: 'skills', description: 'Manage installed skills (prompt + hub)' },
507
+ { name: 'plugins', description: 'Browse the hub marketplace and install skills' },
508
+ { name: 'skill', description: 'Inline skill subcommand: install / list / uninstall …' },
312
509
  { name: 'subagents', description: 'Manage subagents (enable/disable)' },
313
510
  { name: 'agent', description: 'Switch agent loop mode' },
314
511
  ];
@@ -318,10 +515,15 @@ export function App({ config }) {
318
515
  return [...builtIn, ...skillItems];
319
516
  }, [agent, pickerVersion]);
320
517
  const totalTokens = usage.inputTokens + usage.outputTokens;
321
- return (_jsxs(Box, { flexDirection: "column", paddingX: 1, children: [messages.length === 0 && !isRunning && !showAgentPicker && _jsx(Banner, {}), messages.length > 0 && (_jsxs(Box, { marginBottom: 1, marginTop: 1, children: [_jsx(Text, { bold: true, color: "magenta", children: '> ' }), _jsx(Text, { bold: true, children: "Yome" }), _jsxs(Text, { dimColor: true, children: [" v", version] }), totalTokens > 0 && (_jsxs(Text, { dimColor: true, children: [" ", '\u00B7', " ", (totalTokens / 1000).toFixed(1), "k tokens"] }))] })), _jsx(MessageList, { messages: messages, streamText: streamText, isRunning: isRunning }), showAgentPicker && (_jsx(Box, { marginTop: 1, children: _jsx(AgentPicker, { options: agent.getAvailableLoops().map((l) => ({
518
+ return (_jsxs(Box, { flexDirection: "column", paddingX: 1, children: [messages.length > 0 && (_jsxs(Box, { marginBottom: 1, marginTop: 1, children: [_jsx(Text, { bold: true, color: "#E87B35", children: '> ' }), _jsx(Text, { bold: true, children: "Yome" }), _jsx(Text, { children: " " }), isRunning
519
+ ? _jsx(ShimmerText, { text: "streaming" })
520
+ : _jsx(Text, { dimColor: true, children: "Waiting" }), totalTokens > 0 && (_jsxs(Text, { dimColor: true, children: [" ", '\u00B7', " ", (totalTokens / 1000).toFixed(1), "k tokens"] }))] })), _jsx(MessageList, { messages: messages, streamText: stream.displayText, isRunning: isRunning, resetEpoch: resetEpoch }), showAgentPicker && (_jsx(Box, { marginTop: 1, children: _jsx(AgentPicker, { options: agent.getAvailableLoops().map((l) => ({
322
521
  name: l.name,
323
522
  description: l.description,
324
523
  active: l.name === loopName,
325
- })), onSelect: handleAgentSelect, onCancel: handleAgentCancel }) })), showSkillsPicker && (_jsx(Box, { marginTop: 1, children: _jsx(TogglePicker, { title: "Skills", items: buildSkillItems(), onToggle: handleSkillToggle, onClose: () => setShowSkillsPicker(false), emptyHint: 'No skills found.\n\nCreate skills in:\n ~/.yome/skills/<name>/SKILL.md (user)\n .yome/skills/<name>/SKILL.md (project)' }, `skills-${pickerVersion}`) })), showModelPicker && (_jsx(Box, { marginTop: 1, children: _jsx(ModelPicker, { models: loadModelEntries(), currentModel: agent.getConfig().model, onSelect: handleModelSelect, onCancel: handleModelCancel }) })), showSessionPicker && (_jsx(Box, { marginTop: 1, children: _jsx(SessionPicker, { sessions: listSessions(), onSelect: handleSessionSelect, onCancel: handleSessionCancel }) })), showAgentsPicker && (_jsx(Box, { marginTop: 1, children: _jsx(TogglePicker, { title: "Agents", items: buildAgentItems(), onToggle: handleAgentToggle, onClose: () => setShowAgentsPicker(false), emptyHint: 'No agents found.\n\nCreate agents in:\n ~/.yome/agents/<name>.md (user)\n .yome/agents/<name>.md (project)' }, `agents-${pickerVersion}`) })), pendingPermission && (_jsx(PermissionPrompt, { toolName: pendingPermission.toolName, message: pendingPermission.message, detail: pendingPermission.detail, onAllow: handlePermissionAllow, onDeny: handlePermissionDeny, onAlwaysAllow: handlePermissionAlwaysAllow })), !isRunning && !isPickerOpen && (_jsx(InputBar, { value: inputValue, onChange: setInputValue, onSubmit: handleSubmit, model: currentModelDisplay, loopName: loopName, slashCommands: slashCommands, permissionMode: permissionMode, imageCount: pendingImages.length }))] }));
524
+ })), onSelect: handleAgentSelect, onCancel: handleAgentCancel }) })), showSkillsPicker && (_jsx(Box, { marginTop: 1, width: "100%", children: _jsx(UnifiedSkillsPicker, { skills: unifiedSkillsCache, onToggle: handleUnifiedToggle, onUninstall: handleUnifiedUninstall, onAdd: handleAddFromMarketplace, onClose: () => setShowSkillsPicker(false) }, `unified-skills-${pickerVersion}`) })), showMarketplace && (_jsx(Box, { marginTop: 1, width: "100%", children: _jsx(MarketplacePicker, { onClose: handleMarketplaceClose, onInstalled: handleMarketplaceInstalled }) })), showModelPicker && (_jsx(Box, { marginTop: 1, children: _jsx(ModelPicker, { models: loadModelEntries(), currentModel: agent.getConfig().model, onSelect: handleModelSelect, onCancel: handleModelCancel }) })), showSessionPicker && (_jsx(Box, { marginTop: 1, children: _jsx(SessionPicker, { sessions: listSessions(), onSelect: handleSessionSelect, onCancel: handleSessionCancel }) })), showAgentsPicker && (_jsx(Box, { marginTop: 1, children: _jsx(TogglePicker, { title: "Agents", items: buildAgentItems(), onToggle: handleAgentToggle, onClose: () => setShowAgentsPicker(false), emptyHint: 'No agents found.\n\nCreate agents in:\n ~/.yome/agents/<name>.md (user)\n .yome/agents/<name>.md (project)' }, `agents-${pickerVersion}`) })), pendingPermission && (_jsx(PermissionPrompt, { toolName: pendingPermission.toolName, message: pendingPermission.message, detail: pendingPermission.detail, suggestedRule: pendingPermission.suggestedRule, onResolve: handlePermissionResolve })), pendingAskUser && (_jsx(AskUserPrompt, { questions: pendingAskUser.questions, onResolve: (result) => {
525
+ pendingAskUser.resolve(result);
526
+ setPendingAskUser(null);
527
+ } })), _jsx(TodoPanel, { todos: todos }), !isRunning && !isPickerOpen && (_jsx(InputBar, { value: inputValue, onChange: setInputValue, onSubmit: handleSubmit, model: currentModelDisplay, loopName: loopName, slashCommands: slashCommands, permissionMode: permissionMode, imageCount: pendingImages.length }))] }));
326
528
  }
327
529
  //# sourceMappingURL=App.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sourceRoot":"","sources":["../../src/ui/App.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"App.js","sourceRoot":"","sources":["../../src/ui/App.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { AskUserQuestion, AskUserResult } from '../tools/askUser.js';
2
+ interface AskUserPromptProps {
3
+ questions: AskUserQuestion[];
4
+ onResolve: (result: AskUserResult) => void;
5
+ }
6
+ export declare function AskUserPrompt({ questions, onResolve }: AskUserPromptProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};