@murphai/murph 0.1.1

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 (301) hide show
  1. package/CHANGELOG.md +2009 -0
  2. package/LICENSE +674 -0
  3. package/README.md +97 -0
  4. package/dist/.tsbuildinfo +1 -0
  5. package/dist/assistant/automation/run-loop.d.ts +21 -0
  6. package/dist/assistant/automation/run-loop.d.ts.map +1 -0
  7. package/dist/assistant/automation/run-loop.js +31 -0
  8. package/dist/assistant/automation/run-loop.js.map +1 -0
  9. package/dist/assistant/automation.d.ts +10 -0
  10. package/dist/assistant/automation.d.ts.map +1 -0
  11. package/dist/assistant/automation.js +5 -0
  12. package/dist/assistant/automation.js.map +1 -0
  13. package/dist/assistant/cron.d.ts +19 -0
  14. package/dist/assistant/cron.d.ts.map +1 -0
  15. package/dist/assistant/cron.js +59 -0
  16. package/dist/assistant/cron.js.map +1 -0
  17. package/dist/assistant/doctor-security.d.ts +15 -0
  18. package/dist/assistant/doctor-security.d.ts.map +1 -0
  19. package/dist/assistant/doctor-security.js +172 -0
  20. package/dist/assistant/doctor-security.js.map +1 -0
  21. package/dist/assistant/doctor.d.ts +5 -0
  22. package/dist/assistant/doctor.d.ts.map +1 -0
  23. package/dist/assistant/doctor.js +527 -0
  24. package/dist/assistant/doctor.js.map +1 -0
  25. package/dist/assistant/outbox.d.ts +19 -0
  26. package/dist/assistant/outbox.d.ts.map +1 -0
  27. package/dist/assistant/outbox.js +28 -0
  28. package/dist/assistant/outbox.js.map +1 -0
  29. package/dist/assistant/provider-catalog.d.ts +61 -0
  30. package/dist/assistant/provider-catalog.d.ts.map +1 -0
  31. package/dist/assistant/provider-catalog.js +205 -0
  32. package/dist/assistant/provider-catalog.js.map +1 -0
  33. package/dist/assistant/service.d.ts +85 -0
  34. package/dist/assistant/service.d.ts.map +1 -0
  35. package/dist/assistant/service.js +26 -0
  36. package/dist/assistant/service.js.map +1 -0
  37. package/dist/assistant/status.d.ts +9 -0
  38. package/dist/assistant/status.d.ts.map +1 -0
  39. package/dist/assistant/status.js +16 -0
  40. package/dist/assistant/status.js.map +1 -0
  41. package/dist/assistant/stop.d.ts +20 -0
  42. package/dist/assistant/stop.d.ts.map +1 -0
  43. package/dist/assistant/stop.js +142 -0
  44. package/dist/assistant/stop.js.map +1 -0
  45. package/dist/assistant/store.d.ts +6 -0
  46. package/dist/assistant/store.d.ts.map +1 -0
  47. package/dist/assistant/store.js +21 -0
  48. package/dist/assistant/store.js.map +1 -0
  49. package/dist/assistant/ui/ink.d.ts +247 -0
  50. package/dist/assistant/ui/ink.d.ts.map +1 -0
  51. package/dist/assistant/ui/ink.js +2417 -0
  52. package/dist/assistant/ui/ink.js.map +1 -0
  53. package/dist/assistant/ui/theme.d.ts +64 -0
  54. package/dist/assistant/ui/theme.d.ts.map +1 -0
  55. package/dist/assistant/ui/theme.js +180 -0
  56. package/dist/assistant/ui/theme.js.map +1 -0
  57. package/dist/assistant/ui/view-model.d.ts +89 -0
  58. package/dist/assistant/ui/view-model.d.ts.map +1 -0
  59. package/dist/assistant/ui/view-model.js +298 -0
  60. package/dist/assistant/ui/view-model.js.map +1 -0
  61. package/dist/assistant-chat-ink.d.ts +2 -0
  62. package/dist/assistant-chat-ink.d.ts.map +1 -0
  63. package/dist/assistant-chat-ink.js +2 -0
  64. package/dist/assistant-chat-ink.js.map +1 -0
  65. package/dist/assistant-daemon-client.d.ts +81 -0
  66. package/dist/assistant-daemon-client.d.ts.map +1 -0
  67. package/dist/assistant-daemon-client.js +473 -0
  68. package/dist/assistant-daemon-client.js.map +1 -0
  69. package/dist/assistant-runtime.d.ts +25 -0
  70. package/dist/assistant-runtime.d.ts.map +1 -0
  71. package/dist/assistant-runtime.js +17 -0
  72. package/dist/assistant-runtime.js.map +1 -0
  73. package/dist/bin.d.ts +3 -0
  74. package/dist/bin.d.ts.map +1 -0
  75. package/dist/bin.js +7 -0
  76. package/dist/bin.js.map +1 -0
  77. package/dist/cli-entry.d.ts +10 -0
  78. package/dist/cli-entry.d.ts.map +1 -0
  79. package/dist/cli-entry.js +127 -0
  80. package/dist/cli-entry.js.map +1 -0
  81. package/dist/commands/assistant.d.ts +5 -0
  82. package/dist/commands/assistant.d.ts.map +1 -0
  83. package/dist/commands/assistant.js +1663 -0
  84. package/dist/commands/assistant.js.map +1 -0
  85. package/dist/commands/audit-command-helpers.d.ts +15 -0
  86. package/dist/commands/audit-command-helpers.d.ts.map +1 -0
  87. package/dist/commands/audit-command-helpers.js +24 -0
  88. package/dist/commands/audit-command-helpers.js.map +1 -0
  89. package/dist/commands/audit.d.ts +4 -0
  90. package/dist/commands/audit.d.ts.map +1 -0
  91. package/dist/commands/audit.js +107 -0
  92. package/dist/commands/audit.js.map +1 -0
  93. package/dist/commands/device.d.ts +4 -0
  94. package/dist/commands/device.d.ts.map +1 -0
  95. package/dist/commands/device.js +177 -0
  96. package/dist/commands/device.js.map +1 -0
  97. package/dist/commands/document.d.ts +4 -0
  98. package/dist/commands/document.d.ts.map +1 -0
  99. package/dist/commands/document.js +117 -0
  100. package/dist/commands/document.js.map +1 -0
  101. package/dist/commands/event.d.ts +4 -0
  102. package/dist/commands/event.d.ts.map +1 -0
  103. package/dist/commands/event.js +136 -0
  104. package/dist/commands/event.js.map +1 -0
  105. package/dist/commands/experiment.d.ts +4 -0
  106. package/dist/commands/experiment.d.ts.map +1 -0
  107. package/dist/commands/experiment.js +140 -0
  108. package/dist/commands/experiment.js.map +1 -0
  109. package/dist/commands/export-intake-read-helpers.d.ts +150 -0
  110. package/dist/commands/export-intake-read-helpers.d.ts.map +1 -0
  111. package/dist/commands/export-intake-read-helpers.js +328 -0
  112. package/dist/commands/export-intake-read-helpers.js.map +1 -0
  113. package/dist/commands/export.d.ts +4 -0
  114. package/dist/commands/export.d.ts.map +1 -0
  115. package/dist/commands/export.js +179 -0
  116. package/dist/commands/export.js.map +1 -0
  117. package/dist/commands/food.d.ts +4 -0
  118. package/dist/commands/food.d.ts.map +1 -0
  119. package/dist/commands/food.js +190 -0
  120. package/dist/commands/food.js.map +1 -0
  121. package/dist/commands/health-command-factory.d.ts +230 -0
  122. package/dist/commands/health-command-factory.d.ts.map +1 -0
  123. package/dist/commands/health-command-factory.js +551 -0
  124. package/dist/commands/health-command-factory.js.map +1 -0
  125. package/dist/commands/health-entity-command-registry.d.ts +27 -0
  126. package/dist/commands/health-entity-command-registry.d.ts.map +1 -0
  127. package/dist/commands/health-entity-command-registry.js +84 -0
  128. package/dist/commands/health-entity-command-registry.js.map +1 -0
  129. package/dist/commands/inbox.d.ts +5 -0
  130. package/dist/commands/inbox.d.ts.map +1 -0
  131. package/dist/commands/inbox.js +841 -0
  132. package/dist/commands/inbox.js.map +1 -0
  133. package/dist/commands/intake.d.ts +4 -0
  134. package/dist/commands/intake.d.ts.map +1 -0
  135. package/dist/commands/intake.js +175 -0
  136. package/dist/commands/intake.js.map +1 -0
  137. package/dist/commands/intervention.d.ts +4 -0
  138. package/dist/commands/intervention.d.ts.map +1 -0
  139. package/dist/commands/intervention.js +122 -0
  140. package/dist/commands/intervention.js.map +1 -0
  141. package/dist/commands/journal.d.ts +12 -0
  142. package/dist/commands/journal.d.ts.map +1 -0
  143. package/dist/commands/journal.js +186 -0
  144. package/dist/commands/journal.js.map +1 -0
  145. package/dist/commands/meal.d.ts +4 -0
  146. package/dist/commands/meal.d.ts.map +1 -0
  147. package/dist/commands/meal.js +123 -0
  148. package/dist/commands/meal.js.map +1 -0
  149. package/dist/commands/profile.d.ts +4 -0
  150. package/dist/commands/profile.d.ts.map +1 -0
  151. package/dist/commands/profile.js +62 -0
  152. package/dist/commands/profile.js.map +1 -0
  153. package/dist/commands/protocol.d.ts +4 -0
  154. package/dist/commands/protocol.d.ts.map +1 -0
  155. package/dist/commands/protocol.js +79 -0
  156. package/dist/commands/protocol.js.map +1 -0
  157. package/dist/commands/provider.d.ts +4 -0
  158. package/dist/commands/provider.d.ts.map +1 -0
  159. package/dist/commands/provider.js +115 -0
  160. package/dist/commands/provider.js.map +1 -0
  161. package/dist/commands/read.d.ts +4 -0
  162. package/dist/commands/read.d.ts.map +1 -0
  163. package/dist/commands/read.js +55 -0
  164. package/dist/commands/read.js.map +1 -0
  165. package/dist/commands/recipe.d.ts +4 -0
  166. package/dist/commands/recipe.d.ts.map +1 -0
  167. package/dist/commands/recipe.js +116 -0
  168. package/dist/commands/recipe.js.map +1 -0
  169. package/dist/commands/record-mutation-command-helpers.d.ts +196 -0
  170. package/dist/commands/record-mutation-command-helpers.d.ts.map +1 -0
  171. package/dist/commands/record-mutation-command-helpers.js +150 -0
  172. package/dist/commands/record-mutation-command-helpers.js.map +1 -0
  173. package/dist/commands/research.d.ts +3 -0
  174. package/dist/commands/research.d.ts.map +1 -0
  175. package/dist/commands/research.js +104 -0
  176. package/dist/commands/research.js.map +1 -0
  177. package/dist/commands/sample-batch-command-helpers.d.ts +24 -0
  178. package/dist/commands/sample-batch-command-helpers.d.ts.map +1 -0
  179. package/dist/commands/sample-batch-command-helpers.js +99 -0
  180. package/dist/commands/sample-batch-command-helpers.js.map +1 -0
  181. package/dist/commands/sample-import-command-helpers.d.ts +24 -0
  182. package/dist/commands/sample-import-command-helpers.d.ts.map +1 -0
  183. package/dist/commands/sample-import-command-helpers.js +49 -0
  184. package/dist/commands/sample-import-command-helpers.js.map +1 -0
  185. package/dist/commands/sample-query-command-helpers.d.ts +11 -0
  186. package/dist/commands/sample-query-command-helpers.d.ts.map +1 -0
  187. package/dist/commands/sample-query-command-helpers.js +26 -0
  188. package/dist/commands/sample-query-command-helpers.js.map +1 -0
  189. package/dist/commands/samples.d.ts +4 -0
  190. package/dist/commands/samples.d.ts.map +1 -0
  191. package/dist/commands/samples.js +261 -0
  192. package/dist/commands/samples.js.map +1 -0
  193. package/dist/commands/search.d.ts +4 -0
  194. package/dist/commands/search.d.ts.map +1 -0
  195. package/dist/commands/search.js +295 -0
  196. package/dist/commands/search.js.map +1 -0
  197. package/dist/commands/supplement.d.ts +4 -0
  198. package/dist/commands/supplement.d.ts.map +1 -0
  199. package/dist/commands/supplement.js +338 -0
  200. package/dist/commands/supplement.js.map +1 -0
  201. package/dist/commands/vault.d.ts +4 -0
  202. package/dist/commands/vault.d.ts.map +1 -0
  203. package/dist/commands/vault.js +164 -0
  204. package/dist/commands/vault.js.map +1 -0
  205. package/dist/commands/workout.d.ts +4 -0
  206. package/dist/commands/workout.d.ts.map +1 -0
  207. package/dist/commands/workout.js +284 -0
  208. package/dist/commands/workout.js.map +1 -0
  209. package/dist/incur.generated.d.ts +2164 -0
  210. package/dist/incur.generated.d.ts.map +1 -0
  211. package/dist/incur.generated.js +2 -0
  212. package/dist/incur.generated.js.map +1 -0
  213. package/dist/index.d.ts +13 -0
  214. package/dist/index.d.ts.map +1 -0
  215. package/dist/index.js +14 -0
  216. package/dist/index.js.map +1 -0
  217. package/dist/research-cli-contracts.d.ts +22 -0
  218. package/dist/research-cli-contracts.d.ts.map +1 -0
  219. package/dist/research-cli-contracts.js +18 -0
  220. package/dist/research-cli-contracts.js.map +1 -0
  221. package/dist/research-runtime.d.ts +79 -0
  222. package/dist/research-runtime.d.ts.map +1 -0
  223. package/dist/research-runtime.js +351 -0
  224. package/dist/research-runtime.js.map +1 -0
  225. package/dist/run-terminal-logging.d.ts +12 -0
  226. package/dist/run-terminal-logging.d.ts.map +1 -0
  227. package/dist/run-terminal-logging.js +323 -0
  228. package/dist/run-terminal-logging.js.map +1 -0
  229. package/dist/setup-agentmail.d.ts +30 -0
  230. package/dist/setup-agentmail.d.ts.map +1 -0
  231. package/dist/setup-agentmail.js +136 -0
  232. package/dist/setup-agentmail.js.map +1 -0
  233. package/dist/setup-assistant-account.d.ts +29 -0
  234. package/dist/setup-assistant-account.d.ts.map +1 -0
  235. package/dist/setup-assistant-account.js +443 -0
  236. package/dist/setup-assistant-account.js.map +1 -0
  237. package/dist/setup-assistant.d.ts +34 -0
  238. package/dist/setup-assistant.d.ts.map +1 -0
  239. package/dist/setup-assistant.js +355 -0
  240. package/dist/setup-assistant.js.map +1 -0
  241. package/dist/setup-cli.d.ts +72 -0
  242. package/dist/setup-cli.d.ts.map +1 -0
  243. package/dist/setup-cli.js +387 -0
  244. package/dist/setup-cli.js.map +1 -0
  245. package/dist/setup-services/channels.d.ts +19 -0
  246. package/dist/setup-services/channels.d.ts.map +1 -0
  247. package/dist/setup-services/channels.js +721 -0
  248. package/dist/setup-services/channels.js.map +1 -0
  249. package/dist/setup-services/process.d.ts +18 -0
  250. package/dist/setup-services/process.d.ts.map +1 -0
  251. package/dist/setup-services/process.js +98 -0
  252. package/dist/setup-services/process.js.map +1 -0
  253. package/dist/setup-services/scheduled-updates.d.ts +9 -0
  254. package/dist/setup-services/scheduled-updates.d.ts.map +1 -0
  255. package/dist/setup-services/scheduled-updates.js +64 -0
  256. package/dist/setup-services/scheduled-updates.js.map +1 -0
  257. package/dist/setup-services/shell.d.ts +18 -0
  258. package/dist/setup-services/shell.d.ts.map +1 -0
  259. package/dist/setup-services/shell.js +447 -0
  260. package/dist/setup-services/shell.js.map +1 -0
  261. package/dist/setup-services/steps.d.ts +39 -0
  262. package/dist/setup-services/steps.d.ts.map +1 -0
  263. package/dist/setup-services/steps.js +86 -0
  264. package/dist/setup-services/steps.js.map +1 -0
  265. package/dist/setup-services/toolchain.d.ts +46 -0
  266. package/dist/setup-services/toolchain.d.ts.map +1 -0
  267. package/dist/setup-services/toolchain.js +232 -0
  268. package/dist/setup-services/toolchain.js.map +1 -0
  269. package/dist/setup-services.d.ts +44 -0
  270. package/dist/setup-services.d.ts.map +1 -0
  271. package/dist/setup-services.js +739 -0
  272. package/dist/setup-services.js.map +1 -0
  273. package/dist/setup-wizard.d.ts +101 -0
  274. package/dist/setup-wizard.d.ts.map +1 -0
  275. package/dist/setup-wizard.js +1458 -0
  276. package/dist/setup-wizard.js.map +1 -0
  277. package/dist/usecases/intervention.d.ts +63 -0
  278. package/dist/usecases/intervention.d.ts.map +1 -0
  279. package/dist/usecases/intervention.js +205 -0
  280. package/dist/usecases/intervention.js.map +1 -0
  281. package/dist/usecases/text-duration.d.ts +4 -0
  282. package/dist/usecases/text-duration.d.ts.map +1 -0
  283. package/dist/usecases/text-duration.js +63 -0
  284. package/dist/usecases/text-duration.js.map +1 -0
  285. package/dist/usecases/workout-format.d.ts +139 -0
  286. package/dist/usecases/workout-format.d.ts.map +1 -0
  287. package/dist/usecases/workout-format.js +445 -0
  288. package/dist/usecases/workout-format.js.map +1 -0
  289. package/dist/usecases/workout.d.ts +94 -0
  290. package/dist/usecases/workout.d.ts.map +1 -0
  291. package/dist/usecases/workout.js +411 -0
  292. package/dist/usecases/workout.js.map +1 -0
  293. package/dist/vault-cli-command-manifest.d.ts +562 -0
  294. package/dist/vault-cli-command-manifest.d.ts.map +1 -0
  295. package/dist/vault-cli-command-manifest.js +759 -0
  296. package/dist/vault-cli-command-manifest.js.map +1 -0
  297. package/dist/vault-cli.d.ts +6 -0
  298. package/dist/vault-cli.d.ts.map +1 -0
  299. package/dist/vault-cli.js +38 -0
  300. package/dist/vault-cli.js.map +1 -0
  301. package/package.json +85 -0
@@ -0,0 +1,196 @@
1
+ import { z } from 'incur';
2
+ interface EntityCommandArgConfig {
3
+ name: string;
4
+ schema: z.ZodType<string>;
5
+ }
6
+ interface EntityEditCommandInput {
7
+ vault: string;
8
+ requestId: string | null;
9
+ lookup: string;
10
+ inputFile?: string;
11
+ set?: string[];
12
+ clear?: string[];
13
+ }
14
+ export interface EventBackedEntityEditCommandInput extends EntityEditCommandInput {
15
+ dayKeyPolicy?: 'keep' | 'recompute';
16
+ }
17
+ interface EntityDeleteCommandInput {
18
+ vault: string;
19
+ requestId: string | null;
20
+ lookup: string;
21
+ }
22
+ interface EntityEditCommandConfig<TResult, TInput extends EntityEditCommandInput = EntityEditCommandInput> {
23
+ arg: EntityCommandArgConfig;
24
+ description: string;
25
+ hint?: string;
26
+ examples?: Array<Record<string, unknown>>;
27
+ output?: z.ZodType<TResult>;
28
+ options?: Record<string, z.ZodTypeAny>;
29
+ buildInput?: (input: EntityEditCommandInput, options: Record<string, unknown>) => TInput;
30
+ run(input: TInput): Promise<TResult>;
31
+ }
32
+ interface EntityDeleteCommandConfig<TResult> {
33
+ arg: EntityCommandArgConfig;
34
+ description: string;
35
+ hint?: string;
36
+ examples?: Array<Record<string, unknown>>;
37
+ output?: z.ZodType<TResult>;
38
+ run(input: EntityDeleteCommandInput): Promise<TResult>;
39
+ }
40
+ export declare const dayKeyPolicySchema: z.ZodEnum<{
41
+ keep: "keep";
42
+ recompute: "recompute";
43
+ }>;
44
+ export declare function createEntityEditCommandConfig<TResult, TInput extends EntityEditCommandInput = EntityEditCommandInput>(config: EntityEditCommandConfig<TResult, TInput>): {
45
+ name: string;
46
+ args: z.ZodObject<{
47
+ [x: string]: z.ZodType<string, unknown, z.core.$ZodTypeInternals<string, unknown>>;
48
+ }, z.core.$strip>;
49
+ description: string;
50
+ hint: string;
51
+ examples: Record<string, unknown>[] | undefined;
52
+ options: {
53
+ input: z.ZodOptional<z.ZodString>;
54
+ set: z.ZodOptional<z.ZodArray<z.ZodString>>;
55
+ clear: z.ZodOptional<z.ZodArray<z.ZodString>>;
56
+ };
57
+ output: z.ZodType<TResult>;
58
+ run(context: {
59
+ args: Record<string, unknown>;
60
+ options: {
61
+ vault: string;
62
+ input?: string;
63
+ set?: string[];
64
+ clear?: string[];
65
+ dayKeyPolicy?: string;
66
+ };
67
+ requestId: string | null;
68
+ }): Promise<TResult>;
69
+ };
70
+ export declare function createEventBackedEntityEditCommandConfig<TResult>(config: Omit<EntityEditCommandConfig<TResult, EventBackedEntityEditCommandInput>, 'buildInput' | 'hint' | 'options'> & {
71
+ hint?: string;
72
+ options?: Record<string, z.ZodTypeAny>;
73
+ }): {
74
+ name: string;
75
+ args: z.ZodObject<{
76
+ [x: string]: z.ZodType<string, unknown, z.core.$ZodTypeInternals<string, unknown>>;
77
+ }, z.core.$strip>;
78
+ description: string;
79
+ hint: string;
80
+ examples: Record<string, unknown>[] | undefined;
81
+ options: {
82
+ input: z.ZodOptional<z.ZodString>;
83
+ set: z.ZodOptional<z.ZodArray<z.ZodString>>;
84
+ clear: z.ZodOptional<z.ZodArray<z.ZodString>>;
85
+ };
86
+ output: z.ZodType<TResult, unknown, z.core.$ZodTypeInternals<TResult, unknown>>;
87
+ run(context: {
88
+ args: Record<string, unknown>;
89
+ options: {
90
+ vault: string;
91
+ input?: string;
92
+ set?: string[];
93
+ clear?: string[];
94
+ dayKeyPolicy?: string;
95
+ };
96
+ requestId: string | null;
97
+ }): Promise<TResult>;
98
+ };
99
+ export declare function createEntityDeleteCommandConfig<TResult>(config: EntityDeleteCommandConfig<TResult>): {
100
+ name: string;
101
+ args: z.ZodObject<{
102
+ [x: string]: z.ZodType<string, unknown, z.core.$ZodTypeInternals<string, unknown>>;
103
+ }, z.core.$strip>;
104
+ description: string;
105
+ hint: string | undefined;
106
+ examples: Record<string, unknown>[] | undefined;
107
+ output: z.ZodType<TResult>;
108
+ run(context: {
109
+ args: Record<string, unknown>;
110
+ options: {
111
+ vault: string;
112
+ };
113
+ requestId: string | null;
114
+ }): Promise<TResult>;
115
+ };
116
+ export declare function createDirectEntityEditCommandDefinition<TResult>(config: EntityEditCommandConfig<TResult>): {
117
+ args: z.ZodObject<{
118
+ [x: string]: z.ZodType<string, unknown, z.core.$ZodTypeInternals<string, unknown>>;
119
+ }, z.core.$strip>;
120
+ description: string;
121
+ examples: Record<string, unknown>[] | undefined;
122
+ hint: string;
123
+ options: z.ZodObject<{
124
+ vault: z.ZodString;
125
+ requestId: z.ZodOptional<z.ZodString>;
126
+ } & {
127
+ input: z.ZodOptional<z.ZodString>;
128
+ set: z.ZodOptional<z.ZodArray<z.ZodString>>;
129
+ clear: z.ZodOptional<z.ZodArray<z.ZodString>>;
130
+ }, z.core.$strip>;
131
+ output: z.ZodType<TResult, unknown, z.core.$ZodTypeInternals<TResult, unknown>>;
132
+ run(context: {
133
+ args: Record<string, unknown>;
134
+ options: {
135
+ vault: string;
136
+ requestId?: string;
137
+ input?: string;
138
+ set?: string[];
139
+ clear?: string[];
140
+ dayKeyPolicy?: "keep" | "recompute";
141
+ };
142
+ }): Promise<TResult>;
143
+ };
144
+ export declare function createDirectEventBackedEntityEditCommandDefinition<TResult>(config: Omit<EntityEditCommandConfig<TResult, EventBackedEntityEditCommandInput>, 'buildInput' | 'hint' | 'options'> & {
145
+ hint?: string;
146
+ options?: Record<string, z.ZodTypeAny>;
147
+ }): {
148
+ args: z.ZodObject<{
149
+ [x: string]: z.ZodType<string, unknown, z.core.$ZodTypeInternals<string, unknown>>;
150
+ }, z.core.$strip>;
151
+ description: string;
152
+ examples: Record<string, unknown>[] | undefined;
153
+ hint: string;
154
+ options: z.ZodObject<{
155
+ vault: z.ZodString;
156
+ requestId: z.ZodOptional<z.ZodString>;
157
+ } & {
158
+ input: z.ZodOptional<z.ZodString>;
159
+ set: z.ZodOptional<z.ZodArray<z.ZodString>>;
160
+ clear: z.ZodOptional<z.ZodArray<z.ZodString>>;
161
+ }, z.core.$strip>;
162
+ output: z.ZodType<TResult, unknown, z.core.$ZodTypeInternals<TResult, unknown>>;
163
+ run(context: {
164
+ args: Record<string, unknown>;
165
+ options: {
166
+ vault: string;
167
+ requestId?: string;
168
+ input?: string;
169
+ set?: string[];
170
+ clear?: string[];
171
+ dayKeyPolicy?: "keep" | "recompute";
172
+ };
173
+ }): Promise<TResult>;
174
+ };
175
+ export declare function createDirectEntityDeleteCommandDefinition<TResult>(config: EntityDeleteCommandConfig<TResult>): {
176
+ args: z.ZodObject<{
177
+ [x: string]: z.ZodType<string, unknown, z.core.$ZodTypeInternals<string, unknown>>;
178
+ }, z.core.$strip>;
179
+ description: string;
180
+ examples: Record<string, unknown>[] | undefined;
181
+ hint: string | undefined;
182
+ options: z.ZodObject<{
183
+ vault: z.ZodString;
184
+ requestId: z.ZodOptional<z.ZodString>;
185
+ }, z.core.$strip>;
186
+ output: z.ZodType<TResult, unknown, z.core.$ZodTypeInternals<TResult, unknown>>;
187
+ run(context: {
188
+ args: Record<string, unknown>;
189
+ options: {
190
+ vault: string;
191
+ requestId?: string;
192
+ };
193
+ }): Promise<TResult>;
194
+ };
195
+ export {};
196
+ //# sourceMappingURL=record-mutation-command-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record-mutation-command-helpers.d.ts","sourceRoot":"","sources":["../../src/commands/record-mutation-command-helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,150 @@
1
+ import { z } from 'incur';
2
+ import { requestIdFromOptions, withBaseOptions, } from '@murphai/assistant-core/command-helpers';
3
+ import { inputFileOptionSchema, normalizeInputFileOption, } from '@murphai/assistant-core/json-input';
4
+ import { deleteResultSchema, showResultSchema, } from '@murphai/assistant-core/vault-cli-contracts';
5
+ const pathAssignmentSchema = z
6
+ .string()
7
+ .min(1)
8
+ .describe('Path assignment in dotted.path=value form. Repeat --set for multiple fields.');
9
+ const clearPathSchema = z
10
+ .string()
11
+ .min(1)
12
+ .describe('Dotted path to clear from the saved record. Repeat --clear for multiple fields.');
13
+ export const dayKeyPolicySchema = z
14
+ .enum(['keep', 'recompute'])
15
+ .describe('Required for event-backed edits when occurredAt or timeZone changes and dayKey is not patched directly. `keep` preserves the saved dayKey; `recompute` drops it so core recalculates from the explicit event timeZone.');
16
+ const EVENT_BACKED_DAY_KEY_POLICY_HINT = 'When you change occurredAt or timeZone without patching dayKey directly, you must also pass --day-key-policy keep or --day-key-policy recompute so the saved local day stays explicit.';
17
+ export function createEntityEditCommandConfig(config) {
18
+ return {
19
+ name: 'edit',
20
+ args: z.object({
21
+ [config.arg.name]: config.arg.schema,
22
+ }),
23
+ description: config.description,
24
+ hint: config.hint ??
25
+ 'Pass --input @patch.json for a structured partial patch, use repeated --set dotted.path=value assignments for quick fixes, or use --clear dotted.path to remove fields.',
26
+ examples: config.examples,
27
+ options: {
28
+ input: inputFileOptionSchema
29
+ .optional()
30
+ .describe('Optional partial JSON patch in @file.json form or - for stdin.'),
31
+ set: z.array(pathAssignmentSchema).optional(),
32
+ clear: z.array(clearPathSchema).optional(),
33
+ ...(config.options ?? {}),
34
+ },
35
+ output: (config.output ?? showResultSchema),
36
+ async run(context) {
37
+ const lookup = String(context.args[config.arg.name] ?? '');
38
+ const input = {
39
+ vault: context.options.vault,
40
+ requestId: context.requestId,
41
+ lookup,
42
+ inputFile: typeof context.options.input === 'string'
43
+ ? normalizeInputFileOption(context.options.input)
44
+ : undefined,
45
+ set: Array.isArray(context.options.set)
46
+ ? context.options.set.filter((value) => typeof value === 'string')
47
+ : undefined,
48
+ clear: Array.isArray(context.options.clear)
49
+ ? context.options.clear.filter((value) => typeof value === 'string')
50
+ : undefined,
51
+ };
52
+ return config.run(config.buildInput
53
+ ? config.buildInput(input, context.options)
54
+ : input);
55
+ },
56
+ };
57
+ }
58
+ export function createEventBackedEntityEditCommandConfig(config) {
59
+ return createEntityEditCommandConfig({
60
+ ...config,
61
+ hint: config.hint ?? EVENT_BACKED_DAY_KEY_POLICY_HINT,
62
+ options: {
63
+ dayKeyPolicy: dayKeyPolicySchema.optional(),
64
+ ...(config.options ?? {}),
65
+ },
66
+ buildInput(input, options) {
67
+ return {
68
+ ...input,
69
+ dayKeyPolicy: options.dayKeyPolicy === 'keep' || options.dayKeyPolicy === 'recompute'
70
+ ? options.dayKeyPolicy
71
+ : undefined,
72
+ };
73
+ },
74
+ });
75
+ }
76
+ export function createEntityDeleteCommandConfig(config) {
77
+ return {
78
+ name: 'delete',
79
+ args: z.object({
80
+ [config.arg.name]: config.arg.schema,
81
+ }),
82
+ description: config.description,
83
+ hint: config.hint,
84
+ examples: config.examples,
85
+ output: (config.output ?? deleteResultSchema),
86
+ async run(context) {
87
+ const lookup = String(context.args[config.arg.name] ?? '');
88
+ return config.run({
89
+ vault: context.options.vault,
90
+ requestId: context.requestId,
91
+ lookup,
92
+ });
93
+ },
94
+ };
95
+ }
96
+ export function createDirectEntityEditCommandDefinition(config) {
97
+ const command = createEntityEditCommandConfig(config);
98
+ return {
99
+ args: command.args,
100
+ description: command.description,
101
+ examples: command.examples,
102
+ hint: command.hint,
103
+ options: withBaseOptions(command.options ?? {}),
104
+ output: command.output,
105
+ async run(context) {
106
+ return command.run({
107
+ args: context.args,
108
+ options: context.options,
109
+ requestId: requestIdFromOptions(context.options),
110
+ });
111
+ },
112
+ };
113
+ }
114
+ export function createDirectEventBackedEntityEditCommandDefinition(config) {
115
+ const command = createEventBackedEntityEditCommandConfig(config);
116
+ return {
117
+ args: command.args,
118
+ description: command.description,
119
+ examples: command.examples,
120
+ hint: command.hint,
121
+ options: withBaseOptions(command.options ?? {}),
122
+ output: command.output,
123
+ async run(context) {
124
+ return command.run({
125
+ args: context.args,
126
+ options: context.options,
127
+ requestId: requestIdFromOptions(context.options),
128
+ });
129
+ },
130
+ };
131
+ }
132
+ export function createDirectEntityDeleteCommandDefinition(config) {
133
+ const command = createEntityDeleteCommandConfig(config);
134
+ return {
135
+ args: command.args,
136
+ description: command.description,
137
+ examples: command.examples,
138
+ hint: command.hint,
139
+ options: withBaseOptions(),
140
+ output: command.output,
141
+ async run(context) {
142
+ return command.run({
143
+ args: context.args,
144
+ options: context.options,
145
+ requestId: requestIdFromOptions(context.options),
146
+ });
147
+ },
148
+ };
149
+ }
150
+ //# sourceMappingURL=record-mutation-command-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record-mutation-command-helpers.js","sourceRoot":"","sources":["../../src/commands/record-mutation-command-helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Cli } from 'incur';
2
+ export declare function registerResearchCommands(cli: Cli.Cli): void;
3
+ //# sourceMappingURL=research.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"research.d.ts","sourceRoot":"","sources":["../../src/commands/research.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAK,MAAM,OAAO,CAAA;AAiF9B,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,QA6DpD"}
@@ -0,0 +1,104 @@
1
+ import { Cli, z } from 'incur';
2
+ import { withBaseOptions } from '@murphai/assistant-core/command-helpers';
3
+ import { researchRunResultSchema } from '../research-cli-contracts.js';
4
+ import { runDeepthinkPrompt, runResearchPrompt, } from '../research-runtime.js';
5
+ const researchArgsSchema = z.object({
6
+ prompt: z
7
+ .string()
8
+ .min(1)
9
+ .describe('Prompt to send through review:gpt before Murph saves the captured response into research/ inside the vault.'),
10
+ });
11
+ const researchOptionsSchema = withBaseOptions({
12
+ title: z
13
+ .string()
14
+ .min(1)
15
+ .optional()
16
+ .describe('Optional note title override for the saved markdown file.'),
17
+ chat: z
18
+ .string()
19
+ .min(1)
20
+ .optional()
21
+ .describe('Optional ChatGPT chat URL or id to target instead of opening a fresh thread.'),
22
+ browserPath: z
23
+ .string()
24
+ .min(1)
25
+ .optional()
26
+ .describe('Optional Chromium-compatible browser binary override for review:gpt.'),
27
+ timeout: z
28
+ .string()
29
+ .min(1)
30
+ .optional()
31
+ .describe('Optional overall browser automation timeout such as 10m or 40m. Murph defaults this to 40m when omitted.'),
32
+ waitTimeout: z
33
+ .string()
34
+ .min(1)
35
+ .optional()
36
+ .describe('Optional assistant-response timeout override. Usually leave this unset; it defaults to the overall timeout.'),
37
+ });
38
+ function createResearchCommandDefinition(input) {
39
+ return {
40
+ args: researchArgsSchema,
41
+ description: input.description,
42
+ hint: input.hint,
43
+ examples: input.examples,
44
+ options: researchOptionsSchema,
45
+ output: researchRunResultSchema,
46
+ async run(context) {
47
+ return input.runPrompt({
48
+ vault: context.options.vault,
49
+ prompt: context.args.prompt,
50
+ title: context.options.title,
51
+ chat: context.options.chat,
52
+ browserPath: context.options.browserPath,
53
+ timeout: context.options.timeout,
54
+ waitTimeout: context.options.waitTimeout,
55
+ });
56
+ },
57
+ };
58
+ }
59
+ export function registerResearchCommands(cli) {
60
+ cli.command('research', createResearchCommandDefinition({
61
+ description: 'Run ChatGPT Deep Research through review:gpt, auto-send the staged prompt, wait for the result, and save the captured markdown note under research/ in the selected vault.',
62
+ hint: 'Use this when you need a deeper current-evidence scan that should leave a durable markdown note in the vault. Deep Research commonly takes 10 to 60 minutes, so keep the command running unless it errors. Murph defaults the overall timeout to 40m; raise `--timeout` for longer runs, and only use `--wait-timeout` when you want a different response-wait cap. Free-tier access may be more limited.',
63
+ examples: [
64
+ {
65
+ args: {
66
+ prompt: 'Research new LDL cholesterol therapies and practical interventions from the last 30 days.',
67
+ },
68
+ options: {
69
+ vault: './vault',
70
+ },
71
+ description: 'Run one Deep Research prompt and save the captured note into the current vault.',
72
+ },
73
+ {
74
+ args: {
75
+ prompt: 'Check Brisbane environmental health hazards from the last week and focus on water and air quality.',
76
+ },
77
+ options: {
78
+ vault: './vault',
79
+ title: 'Brisbane environmental health watch',
80
+ chat: 'https://chatgpt.com/c/69a86c41-cca8-8327-975a-1716caa599cf',
81
+ },
82
+ description: 'Reuse one chat thread and save the note under a stable title.',
83
+ },
84
+ ],
85
+ runPrompt: runResearchPrompt,
86
+ }));
87
+ cli.command('deepthink', createResearchCommandDefinition({
88
+ description: 'Run GPT Pro through review:gpt, auto-send the staged prompt, wait for the result, and save the captured markdown note under research/ in the selected vault.',
89
+ hint: 'Use this when you want a durable GPT Pro synthesis saved into the vault without switching into Deep Research mode. Murph still defaults the overall timeout to 40m here; `--wait-timeout` is only for the uncommon case where you want the response-wait cap different from the overall timeout. Murph will warn when the saved assistant account is not Pro.',
90
+ examples: [
91
+ {
92
+ args: {
93
+ prompt: 'Think through the strongest arguments for and against increasing weekly zone-2 training volume.',
94
+ },
95
+ options: {
96
+ vault: './vault',
97
+ },
98
+ description: 'Capture one GPT Pro deepthink note into the current vault.',
99
+ },
100
+ ],
101
+ runPrompt: runDeepthinkPrompt,
102
+ }));
103
+ }
104
+ //# sourceMappingURL=research.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"research.js","sourceRoot":"","sources":["../../src/commands/research.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ type JsonObject = Record<string, unknown>;
2
+ export interface SampleBatchDetails {
3
+ batchId: string;
4
+ stream: string | null;
5
+ manifestFile: string;
6
+ rawDirectory: string | null;
7
+ importedAt: string | null;
8
+ source: string | null;
9
+ importedCount: number | null;
10
+ sampleIds: string[];
11
+ importConfig: JsonObject;
12
+ artifacts: JsonObject[];
13
+ manifest: JsonObject;
14
+ }
15
+ export interface SampleBatchListOptions {
16
+ from?: string;
17
+ to?: string;
18
+ limit?: number;
19
+ stream?: string;
20
+ }
21
+ export declare function showSampleBatch(vaultRoot: string, batchId: string): Promise<SampleBatchDetails>;
22
+ export declare function listSampleBatches(vaultRoot: string, options?: SampleBatchListOptions): Promise<SampleBatchDetails[]>;
23
+ export {};
24
+ //# sourceMappingURL=sample-batch-command-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sample-batch-command-helpers.d.ts","sourceRoot":"","sources":["../../src/commands/sample-batch-command-helpers.ts"],"names":[],"mappings":"AAiBA,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAWzC,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,YAAY,EAAE,UAAU,CAAA;IACxB,SAAS,EAAE,UAAU,EAAE,CAAA;IACvB,QAAQ,EAAE,UAAU,CAAA;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,kBAAkB,CAAC,CAQ7B;AAED,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAa/B"}
@@ -0,0 +1,99 @@
1
+ import { readdir } from 'node:fs/promises';
2
+ import path from 'node:path';
3
+ import { VaultCliError } from '@murphai/assistant-core/vault-cli-errors';
4
+ import { applyLimit, arrayOfStrings, asObject, compareNullableDates, firstString, isJsonObject, isMissingPathError, matchesDateRange, nullableString, numberOrNull, readJsonObject, } from '@murphai/assistant-core/commands/query-record-command-helpers';
5
+ export async function showSampleBatch(vaultRoot, batchId) {
6
+ const details = await findSampleBatch(vaultRoot, batchId);
7
+ if (!details) {
8
+ throw new VaultCliError('not_found', `No sample batch found for "${batchId}".`);
9
+ }
10
+ return details;
11
+ }
12
+ export async function listSampleBatches(vaultRoot, options = {}) {
13
+ const manifestFiles = await walkSampleManifestFiles(vaultRoot);
14
+ const batches = (await Promise.all(manifestFiles.map((manifestFile) => readSampleBatchManifest(vaultRoot, manifestFile))))
15
+ .filter((batch) => batch !== null)
16
+ .filter((batch) => (options.stream ? batch.stream === options.stream : true))
17
+ .filter((batch) => matchesDateRange(batch.importedAt, options.from, options.to))
18
+ .sort((left, right) => compareNullableDates(right.importedAt, left.importedAt));
19
+ return applyLimit(batches, options.limit);
20
+ }
21
+ async function findSampleBatch(vaultRoot, batchId) {
22
+ const manifestFiles = await walkSampleManifestFiles(vaultRoot);
23
+ for (const manifestFile of manifestFiles) {
24
+ const batch = await readSampleBatchManifest(vaultRoot, manifestFile);
25
+ if (batch?.batchId === batchId) {
26
+ return batch;
27
+ }
28
+ }
29
+ return null;
30
+ }
31
+ async function readSampleBatchManifest(vaultRoot, manifestFile) {
32
+ const manifest = await readJsonObject(path.join(vaultRoot, manifestFile), `sample batch manifest "${manifestFile}"`);
33
+ const batchId = firstString(manifest, ['importId']) ??
34
+ manifestFile.split('/').at(-2) ??
35
+ null;
36
+ if (!batchId) {
37
+ return null;
38
+ }
39
+ const typedManifest = manifest;
40
+ const provenance = asObject(typedManifest.provenance);
41
+ const artifacts = Array.isArray(typedManifest.artifacts)
42
+ ? typedManifest.artifacts
43
+ .map((artifact) => asObject(artifact))
44
+ .filter(isJsonObject)
45
+ : [];
46
+ const sampleIds = arrayOfStrings(provenance?.sampleIds);
47
+ const importConfig = asObject(provenance?.importConfig) ?? {};
48
+ return {
49
+ batchId,
50
+ stream: inferSampleStream(manifestFile, manifest),
51
+ manifestFile,
52
+ rawDirectory: firstString(manifest, ['rawDirectory']),
53
+ importedAt: firstString(manifest, ['importedAt']),
54
+ source: nullableString(typedManifest.source),
55
+ importedCount: numberOrNull(provenance?.importedCount),
56
+ sampleIds,
57
+ importConfig,
58
+ artifacts,
59
+ manifest,
60
+ };
61
+ }
62
+ async function walkSampleManifestFiles(vaultRoot) {
63
+ const root = path.join(vaultRoot, 'raw', 'samples');
64
+ return walkRelativeFiles(root, 'raw/samples');
65
+ }
66
+ async function walkRelativeFiles(absoluteDirectory, relativeDirectory) {
67
+ let entries;
68
+ try {
69
+ entries = await readdir(absoluteDirectory, { withFileTypes: true });
70
+ }
71
+ catch (error) {
72
+ if (isMissingPathError(error)) {
73
+ return [];
74
+ }
75
+ throw error;
76
+ }
77
+ const files = [];
78
+ for (const entry of entries) {
79
+ const absolutePath = path.join(absoluteDirectory, entry.name);
80
+ const relativePath = path.posix.join(relativeDirectory, entry.name);
81
+ if (entry.isDirectory()) {
82
+ files.push(...(await walkRelativeFiles(absolutePath, relativePath)));
83
+ continue;
84
+ }
85
+ if (entry.isFile() && entry.name === 'manifest.json') {
86
+ files.push(relativePath);
87
+ }
88
+ }
89
+ return files.sort();
90
+ }
91
+ function inferSampleStream(manifestFile, manifest) {
92
+ const rawDirectory = firstString(manifest, ['rawDirectory']);
93
+ const sourcePath = rawDirectory ?? manifestFile;
94
+ const segments = sourcePath.split('/');
95
+ const samplesIndex = segments.indexOf('samples');
96
+ const streamSegment = samplesIndex >= 0 ? segments[samplesIndex + 1] : null;
97
+ return streamSegment ? streamSegment.replace(/-/g, '_') : null;
98
+ }
99
+ //# sourceMappingURL=sample-batch-command-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sample-batch-command-helpers.js","sourceRoot":"","sources":["../../src/commands/sample-batch-command-helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ export interface ImportCsvSamplesOptions {
2
+ delimiter?: string;
3
+ file: string;
4
+ metadataColumns?: string[];
5
+ presetId?: string;
6
+ requestId?: string | null;
7
+ source?: string;
8
+ stream?: string;
9
+ tsColumn?: string;
10
+ unit?: string;
11
+ valueColumn?: string;
12
+ vault: string;
13
+ }
14
+ export declare function importCsvSamples(options: ImportCsvSamplesOptions): Promise<{
15
+ vault: string;
16
+ sourceFile: string;
17
+ stream: string;
18
+ importedCount: number;
19
+ transformId: string;
20
+ manifestFile: string;
21
+ lookupIds: string[];
22
+ ledgerFiles: string[];
23
+ }>;
24
+ //# sourceMappingURL=sample-import-command-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sample-import-command-helpers.d.ts","sourceRoot":"","sources":["../../src/commands/sample-import-command-helpers.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,uBAAuB;IACtC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;CACd;AAID,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,uBAAuB;;;;;;;;;GA4BtE"}