cf-claw 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. package/dist/agent.d.ts +15 -0
  2. package/dist/agent.d.ts.map +1 -0
  3. package/dist/agent.js +262 -0
  4. package/dist/agent.js.map +1 -0
  5. package/dist/agents.d.ts +51 -0
  6. package/dist/agents.d.ts.map +1 -0
  7. package/dist/agents.js +478 -0
  8. package/dist/agents.js.map +1 -0
  9. package/dist/api/routes.d.ts +3 -0
  10. package/dist/api/routes.d.ts.map +1 -0
  11. package/dist/api/routes.js +491 -0
  12. package/dist/api/routes.js.map +1 -0
  13. package/dist/bot.d.ts +4 -0
  14. package/dist/bot.d.ts.map +1 -0
  15. package/dist/bot.js +295 -0
  16. package/dist/bot.js.map +1 -0
  17. package/dist/canvas.d.ts +37 -0
  18. package/dist/canvas.d.ts.map +1 -0
  19. package/dist/canvas.js +47 -0
  20. package/dist/canvas.js.map +1 -0
  21. package/dist/cli.d.ts +3 -0
  22. package/dist/cli.d.ts.map +1 -0
  23. package/dist/cli.js +202 -0
  24. package/dist/cli.js.map +1 -0
  25. package/dist/commands.d.ts +6 -0
  26. package/dist/commands.d.ts.map +1 -0
  27. package/dist/commands.js +384 -0
  28. package/dist/commands.js.map +1 -0
  29. package/dist/components/TaskList.d.ts +7 -0
  30. package/dist/components/TaskList.d.ts.map +1 -0
  31. package/dist/components/TaskList.js +37 -0
  32. package/dist/components/TaskList.js.map +1 -0
  33. package/dist/config/encryption.d.ts +10 -0
  34. package/dist/config/encryption.d.ts.map +1 -0
  35. package/dist/config/encryption.js +111 -0
  36. package/dist/config/encryption.js.map +1 -0
  37. package/dist/config/json-config.d.ts +114 -0
  38. package/dist/config/json-config.d.ts.map +1 -0
  39. package/dist/config/json-config.js +388 -0
  40. package/dist/config/json-config.js.map +1 -0
  41. package/dist/config.d.ts +51 -0
  42. package/dist/config.d.ts.map +1 -0
  43. package/dist/config.js +137 -0
  44. package/dist/config.js.map +1 -0
  45. package/dist/context/pruning.d.ts +30 -0
  46. package/dist/context/pruning.d.ts.map +1 -0
  47. package/dist/context/pruning.js +132 -0
  48. package/dist/context/pruning.js.map +1 -0
  49. package/dist/dashboard/404/index.html +1 -0
  50. package/dist/dashboard/404.html +1 -0
  51. package/dist/dashboard/_next/static/chunks/117-c657912d4a6fa056.js +2 -0
  52. package/dist/dashboard/_next/static/chunks/191-a6922264096cb3ad.js +11 -0
  53. package/dist/dashboard/_next/static/chunks/343-71498a8257bc1e81.js +1 -0
  54. package/dist/dashboard/_next/static/chunks/app/_not-found/page-15cbe4395e02a084.js +1 -0
  55. package/dist/dashboard/_next/static/chunks/app/layout-191efbc962809bb4.js +1 -0
  56. package/dist/dashboard/_next/static/chunks/app/manual/page-3c401ecf89979cd7.js +1 -0
  57. package/dist/dashboard/_next/static/chunks/app/page-dff55e58941a3c4d.js +1 -0
  58. package/dist/dashboard/_next/static/chunks/fd9d1056-9583fa19bc194043.js +1 -0
  59. package/dist/dashboard/_next/static/chunks/framework-f66176bb897dc684.js +1 -0
  60. package/dist/dashboard/_next/static/chunks/main-2461f93106bcf687.js +1 -0
  61. package/dist/dashboard/_next/static/chunks/main-app-89f5ec28b3bb0e7f.js +1 -0
  62. package/dist/dashboard/_next/static/chunks/pages/_app-72b849fbd24ac258.js +1 -0
  63. package/dist/dashboard/_next/static/chunks/pages/_error-7ba65e1336b92748.js +1 -0
  64. package/dist/dashboard/_next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
  65. package/dist/dashboard/_next/static/chunks/webpack-616e068a201ad621.js +1 -0
  66. package/dist/dashboard/_next/static/css/baff0f221c10680b.css +3 -0
  67. package/dist/dashboard/_next/static/pyqPyo6dkz4uTWdfdFAOJ/_buildManifest.js +1 -0
  68. package/dist/dashboard/_next/static/pyqPyo6dkz4uTWdfdFAOJ/_ssgManifest.js +1 -0
  69. package/dist/dashboard/index.html +1 -0
  70. package/dist/dashboard/index.txt +7 -0
  71. package/dist/dashboard/manual/index.html +1 -0
  72. package/dist/dashboard/manual/index.txt +7 -0
  73. package/dist/documents.d.ts +20 -0
  74. package/dist/documents.d.ts.map +1 -0
  75. package/dist/documents.js +227 -0
  76. package/dist/documents.js.map +1 -0
  77. package/dist/embeddings.d.ts +15 -0
  78. package/dist/embeddings.d.ts.map +1 -0
  79. package/dist/embeddings.js +40 -0
  80. package/dist/embeddings.js.map +1 -0
  81. package/dist/factory.d.ts +72 -0
  82. package/dist/factory.d.ts.map +1 -0
  83. package/dist/factory.js +2010 -0
  84. package/dist/factory.js.map +1 -0
  85. package/dist/groups.d.ts +13 -0
  86. package/dist/groups.d.ts.map +1 -0
  87. package/dist/groups.js +42 -0
  88. package/dist/groups.js.map +1 -0
  89. package/dist/index.d.ts +2 -0
  90. package/dist/index.d.ts.map +1 -0
  91. package/dist/index.js +223 -0
  92. package/dist/index.js.map +1 -0
  93. package/dist/lib/taskStorage.d.ts +4 -0
  94. package/dist/lib/taskStorage.d.ts.map +1 -0
  95. package/dist/lib/taskStorage.js +28 -0
  96. package/dist/lib/taskStorage.js.map +1 -0
  97. package/dist/llm/anthropic.d.ts +13 -0
  98. package/dist/llm/anthropic.d.ts.map +1 -0
  99. package/dist/llm/anthropic.js +96 -0
  100. package/dist/llm/anthropic.js.map +1 -0
  101. package/dist/llm/failover.d.ts +13 -0
  102. package/dist/llm/failover.d.ts.map +1 -0
  103. package/dist/llm/failover.js +42 -0
  104. package/dist/llm/failover.js.map +1 -0
  105. package/dist/llm/google.d.ts +13 -0
  106. package/dist/llm/google.d.ts.map +1 -0
  107. package/dist/llm/google.js +112 -0
  108. package/dist/llm/google.js.map +1 -0
  109. package/dist/llm/groq.d.ts +8 -0
  110. package/dist/llm/groq.d.ts.map +1 -0
  111. package/dist/llm/groq.js +13 -0
  112. package/dist/llm/groq.js.map +1 -0
  113. package/dist/llm/index.d.ts +11 -0
  114. package/dist/llm/index.d.ts.map +1 -0
  115. package/dist/llm/index.js +10 -0
  116. package/dist/llm/index.js.map +1 -0
  117. package/dist/llm/ollama.d.ts +9 -0
  118. package/dist/llm/ollama.d.ts.map +1 -0
  119. package/dist/llm/ollama.js +27 -0
  120. package/dist/llm/ollama.js.map +1 -0
  121. package/dist/llm/openai-compat.d.ts +17 -0
  122. package/dist/llm/openai-compat.d.ts.map +1 -0
  123. package/dist/llm/openai-compat.js +69 -0
  124. package/dist/llm/openai-compat.js.map +1 -0
  125. package/dist/llm/openrouter.d.ts +8 -0
  126. package/dist/llm/openrouter.d.ts.map +1 -0
  127. package/dist/llm/openrouter.js +20 -0
  128. package/dist/llm/openrouter.js.map +1 -0
  129. package/dist/llm/provider.d.ts +41 -0
  130. package/dist/llm/provider.d.ts.map +1 -0
  131. package/dist/llm/provider.js +2 -0
  132. package/dist/llm/provider.js.map +1 -0
  133. package/dist/llm/registry.d.ts +10 -0
  134. package/dist/llm/registry.d.ts.map +1 -0
  135. package/dist/llm/registry.js +90 -0
  136. package/dist/llm/registry.js.map +1 -0
  137. package/dist/llm/thinking.d.ts +7 -0
  138. package/dist/llm/thinking.d.ts.map +1 -0
  139. package/dist/llm/thinking.js +34 -0
  140. package/dist/llm/thinking.js.map +1 -0
  141. package/dist/llm.d.ts +17 -0
  142. package/dist/llm.d.ts.map +1 -0
  143. package/dist/llm.js +184 -0
  144. package/dist/llm.js.map +1 -0
  145. package/dist/logs.d.ts +11 -0
  146. package/dist/logs.d.ts.map +1 -0
  147. package/dist/logs.js +54 -0
  148. package/dist/logs.js.map +1 -0
  149. package/dist/memory/knowledge-graph.d.ts +34 -0
  150. package/dist/memory/knowledge-graph.d.ts.map +1 -0
  151. package/dist/memory/knowledge-graph.js +137 -0
  152. package/dist/memory/knowledge-graph.js.map +1 -0
  153. package/dist/memory.d.ts +73 -0
  154. package/dist/memory.d.ts.map +1 -0
  155. package/dist/memory.js +320 -0
  156. package/dist/memory.js.map +1 -0
  157. package/dist/mesh.d.ts +18 -0
  158. package/dist/mesh.d.ts.map +1 -0
  159. package/dist/mesh.js +120 -0
  160. package/dist/mesh.js.map +1 -0
  161. package/dist/paths.d.ts +11 -0
  162. package/dist/paths.d.ts.map +1 -0
  163. package/dist/paths.js +51 -0
  164. package/dist/paths.js.map +1 -0
  165. package/dist/proactive/heartbeat.d.ts +4 -0
  166. package/dist/proactive/heartbeat.d.ts.map +1 -0
  167. package/dist/proactive/heartbeat.js +56 -0
  168. package/dist/proactive/heartbeat.js.map +1 -0
  169. package/dist/proactive/recap.d.ts +12 -0
  170. package/dist/proactive/recap.d.ts.map +1 -0
  171. package/dist/proactive/recap.js +90 -0
  172. package/dist/proactive/recap.js.map +1 -0
  173. package/dist/proactive/recommendations.d.ts +11 -0
  174. package/dist/proactive/recommendations.d.ts.map +1 -0
  175. package/dist/proactive/recommendations.js +92 -0
  176. package/dist/proactive/recommendations.js.map +1 -0
  177. package/dist/projects.d.ts +44 -0
  178. package/dist/projects.d.ts.map +1 -0
  179. package/dist/projects.js +101 -0
  180. package/dist/projects.js.map +1 -0
  181. package/dist/scheduler/index.d.ts +17 -0
  182. package/dist/scheduler/index.d.ts.map +1 -0
  183. package/dist/scheduler/index.js +116 -0
  184. package/dist/scheduler/index.js.map +1 -0
  185. package/dist/sessions.d.ts +19 -0
  186. package/dist/sessions.d.ts.map +1 -0
  187. package/dist/sessions.js +176 -0
  188. package/dist/sessions.js.map +1 -0
  189. package/dist/skills/index.d.ts +14 -0
  190. package/dist/skills/index.d.ts.map +1 -0
  191. package/dist/skills/index.js +126 -0
  192. package/dist/skills/index.js.map +1 -0
  193. package/dist/swarm.d.ts +18 -0
  194. package/dist/swarm.d.ts.map +1 -0
  195. package/dist/swarm.js +146 -0
  196. package/dist/swarm.js.map +1 -0
  197. package/dist/taskListWidget.d.ts +76 -0
  198. package/dist/taskListWidget.d.ts.map +1 -0
  199. package/dist/taskListWidget.js +312 -0
  200. package/dist/taskListWidget.js.map +1 -0
  201. package/dist/tools/browser.d.ts +5 -0
  202. package/dist/tools/browser.d.ts.map +1 -0
  203. package/dist/tools/browser.js +104 -0
  204. package/dist/tools/browser.js.map +1 -0
  205. package/dist/tools/config-tools.d.ts +4 -0
  206. package/dist/tools/config-tools.d.ts.map +1 -0
  207. package/dist/tools/config-tools.js +154 -0
  208. package/dist/tools/config-tools.js.map +1 -0
  209. package/dist/tools/files.d.ts +3 -0
  210. package/dist/tools/files.d.ts.map +1 -0
  211. package/dist/tools/files.js +208 -0
  212. package/dist/tools/files.js.map +1 -0
  213. package/dist/tools/index.d.ts +11 -0
  214. package/dist/tools/index.d.ts.map +1 -0
  215. package/dist/tools/index.js +1109 -0
  216. package/dist/tools/index.js.map +1 -0
  217. package/dist/tools/mcp-bridge.d.ts +5 -0
  218. package/dist/tools/mcp-bridge.d.ts.map +1 -0
  219. package/dist/tools/mcp-bridge.js +200 -0
  220. package/dist/tools/mcp-bridge.js.map +1 -0
  221. package/dist/tools/shell.d.ts +8 -0
  222. package/dist/tools/shell.d.ts.map +1 -0
  223. package/dist/tools/shell.js +78 -0
  224. package/dist/tools/shell.js.map +1 -0
  225. package/dist/tools/skills-manage.d.ts +25 -0
  226. package/dist/tools/skills-manage.d.ts.map +1 -0
  227. package/dist/tools/skills-manage.js +155 -0
  228. package/dist/tools/skills-manage.js.map +1 -0
  229. package/dist/tools/web-search.d.ts +4 -0
  230. package/dist/tools/web-search.d.ts.map +1 -0
  231. package/dist/tools/web-search.js +60 -0
  232. package/dist/tools/web-search.js.map +1 -0
  233. package/dist/tts.d.ts +6 -0
  234. package/dist/tts.d.ts.map +1 -0
  235. package/dist/tts.js +42 -0
  236. package/dist/tts.js.map +1 -0
  237. package/dist/types/task.d.ts +7 -0
  238. package/dist/types/task.d.ts.map +1 -0
  239. package/dist/types/task.js +2 -0
  240. package/dist/types/task.js.map +1 -0
  241. package/dist/typing.d.ts +18 -0
  242. package/dist/typing.d.ts.map +1 -0
  243. package/dist/typing.js +63 -0
  244. package/dist/typing.js.map +1 -0
  245. package/dist/usage.d.ts +28 -0
  246. package/dist/usage.d.ts.map +1 -0
  247. package/dist/usage.js +69 -0
  248. package/dist/usage.js.map +1 -0
  249. package/dist/voice.d.ts +6 -0
  250. package/dist/voice.d.ts.map +1 -0
  251. package/dist/voice.js +47 -0
  252. package/dist/voice.js.map +1 -0
  253. package/dist/webchat/index.d.ts +3 -0
  254. package/dist/webchat/index.d.ts.map +1 -0
  255. package/dist/webchat/index.js +3 -0
  256. package/dist/webchat/index.js.map +1 -0
  257. package/dist/webchat/public/index.html +344 -0
  258. package/dist/webchat/public/public/index.html +344 -0
  259. package/dist/webchat/public/public/task-list-widget.js +410 -0
  260. package/dist/webchat/public/task-list-widget.js +410 -0
  261. package/dist/webchat/server.d.ts +3 -0
  262. package/dist/webchat/server.d.ts.map +1 -0
  263. package/dist/webchat/server.js +80 -0
  264. package/dist/webchat/server.js.map +1 -0
  265. package/dist/webchat/ws.d.ts +4 -0
  266. package/dist/webchat/ws.d.ts.map +1 -0
  267. package/dist/webchat/ws.js +232 -0
  268. package/dist/webchat/ws.js.map +1 -0
  269. package/dist/webhooks/index.d.ts +14 -0
  270. package/dist/webhooks/index.d.ts.map +1 -0
  271. package/dist/webhooks/index.js +86 -0
  272. package/dist/webhooks/index.js.map +1 -0
  273. package/package.json +53 -0
@@ -0,0 +1,114 @@
1
+ export declare function resetConfigPath(): void;
2
+ export interface ModelProvider {
3
+ apiKey?: string;
4
+ models: string[];
5
+ default: string;
6
+ baseUrl?: string;
7
+ }
8
+ export interface ModelsConfig {
9
+ active: string;
10
+ providers: Record<string, ModelProvider>;
11
+ failoverChain: string[];
12
+ }
13
+ export interface TelegramConfig {
14
+ botToken?: string;
15
+ allowedUserIds: number[];
16
+ }
17
+ export interface ShellConfig {
18
+ allowlist: string[];
19
+ yolo: boolean;
20
+ timeout: number;
21
+ }
22
+ export interface WebchatConfig {
23
+ port: number;
24
+ authToken?: string;
25
+ }
26
+ export interface VoiceConfig {
27
+ elevenlabsApiKey?: string;
28
+ voiceId?: string;
29
+ }
30
+ export interface FeaturesConfig {
31
+ browserHeadless: boolean;
32
+ schedulerEnabled: boolean;
33
+ heartbeatIntervalMs: number;
34
+ recapHour: number;
35
+ contextTokenLimit: number;
36
+ maxAgentIterations: number;
37
+ }
38
+ export interface FactoryConfig {
39
+ minPipeline?: string[];
40
+ orchestration?: FactoryOrchestrationConfig;
41
+ }
42
+ export interface FactoryStageSelectors {
43
+ phase?: string[];
44
+ team?: string[];
45
+ tags?: string[];
46
+ toolsAny?: string[];
47
+ }
48
+ export interface FactoryRetryPolicy {
49
+ maxRetries: number;
50
+ }
51
+ export interface FactoryFailPolicy {
52
+ action: "retry" | "route" | "block_and_route" | "human_intervention" | "complete_with_warning";
53
+ targetStage?: string;
54
+ }
55
+ export interface FactoryStageDefinition {
56
+ id: string;
57
+ name: string;
58
+ order: number;
59
+ enabledByDefault: boolean;
60
+ parallelizable?: boolean;
61
+ selectors?: FactoryStageSelectors;
62
+ retryPolicy?: FactoryRetryPolicy;
63
+ onFail?: FactoryFailPolicy;
64
+ humanGate?: boolean;
65
+ }
66
+ export interface FactoryProfileDefinition {
67
+ mandatoryStages: string[];
68
+ optionalStages: string[];
69
+ }
70
+ export interface FactorySelectionConfig {
71
+ mode: "auto" | "manual";
72
+ defaultProfile: string;
73
+ }
74
+ export interface FactoryGlobalPolicies {
75
+ totalTaskMaxRetries: number;
76
+ humanInterventionOnlyAfterRetryBudget: boolean;
77
+ allowAutoRepairPipeline: boolean;
78
+ }
79
+ export interface FactoryOrchestrationConfig {
80
+ selection: FactorySelectionConfig;
81
+ globalPolicies: FactoryGlobalPolicies;
82
+ stageCatalog: Record<string, FactoryStageDefinition>;
83
+ profiles: Record<string, FactoryProfileDefinition>;
84
+ }
85
+ export declare function getDefaultFactoryOrchestrationConfig(): FactoryOrchestrationConfig;
86
+ export interface ConfigMeta {
87
+ version: string;
88
+ machineIdHash?: string;
89
+ createdAt?: string;
90
+ updatedAt?: string;
91
+ }
92
+ export interface JsonConfig {
93
+ _meta: ConfigMeta;
94
+ models: ModelsConfig;
95
+ telegram: TelegramConfig;
96
+ shell: ShellConfig;
97
+ webchat: WebchatConfig;
98
+ voice: VoiceConfig;
99
+ features: FeaturesConfig;
100
+ factory?: FactoryConfig;
101
+ }
102
+ export declare function getDefaultConfig(): JsonConfig;
103
+ export declare function loadConfig(): JsonConfig;
104
+ export declare function saveConfig(config: JsonConfig): void;
105
+ export declare function clearCache(): void;
106
+ export declare function getNestedValue(obj: Record<string, unknown>, path: string): unknown;
107
+ export declare function setNestedValue(obj: Record<string, unknown>, path: string, value: unknown): void;
108
+ export declare function getConfig(path?: string, decryptValues?: boolean): Promise<unknown>;
109
+ export declare function setConfig(path: string, value: unknown, encryptValues?: boolean): Promise<void>;
110
+ export declare function setConfigSecret(path: string, value: string): Promise<void>;
111
+ export declare function getConfigSecret(path: string): Promise<string | undefined>;
112
+ export declare function listConfigPaths(config: JsonConfig, prefix?: string): string[];
113
+ export declare function isSecretField(path: string): boolean;
114
+ //# sourceMappingURL=json-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-config.d.ts","sourceRoot":"","sources":["../../src/config/json-config.ts"],"names":[],"mappings":"AASA,wBAAgB,eAAe,IAAI,IAAI,CAEtC;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACzC,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,OAAO,CAAC;IACzB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,CAAC,EAAE,0BAA0B,CAAC;CAC5C;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,OAAO,GAAG,OAAO,GAAG,iBAAiB,GAAG,oBAAoB,GAAG,uBAAuB,CAAC;IAC/F,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAClC,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,wBAAwB;IACvC,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,qBAAqB;IACpC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,qCAAqC,EAAE,OAAO,CAAC;IAC/C,uBAAuB,EAAE,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,0BAA0B;IACzC,SAAS,EAAE,sBAAsB,CAAC;IAClC,cAAc,EAAE,qBAAqB,CAAC;IACtC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IACrD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;CACpD;AAED,wBAAgB,oCAAoC,IAAI,0BAA0B,CAuJjF;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,UAAU,CAAC;IAClB,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,cAAc,CAAC;IACzB,KAAK,EAAE,WAAW,CAAC;IACnB,OAAO,EAAE,aAAa,CAAC;IACvB,KAAK,EAAE,WAAW,CAAC;IACnB,QAAQ,EAAE,cAAc,CAAC;IACzB,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB;AAsCD,wBAAgB,gBAAgB,IAAI,UAAU,CAsE7C;AAED,wBAAgB,UAAU,IAAI,UAAU,CAyBvC;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAOnD;AAED,wBAAgB,UAAU,IAAI,IAAI,CAEjC;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAYlF;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAa/F;AAED,wBAAsB,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,aAAa,UAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAkBrF;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,UAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAWjG;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGhF;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAQ/E;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,SAAK,GAAG,MAAM,EAAE,CAgBzE;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAWnD"}
@@ -0,0 +1,388 @@
1
+ import fs from "node:fs";
2
+ import { encrypt, decrypt, encryptIfNeeded, decryptIfNeeded, isEncryptedValue } from "./encryption.js";
3
+ import { createHash } from "node:crypto";
4
+ import { getConfigPath } from "../paths.js";
5
+ let CONFIG_PATH = getConfigPath();
6
+ const CONFIG_VERSION = "1.0";
7
+ export function resetConfigPath() {
8
+ CONFIG_PATH = getConfigPath();
9
+ }
10
+ export function getDefaultFactoryOrchestrationConfig() {
11
+ return {
12
+ selection: {
13
+ mode: "auto",
14
+ defaultProfile: "webapp-saas",
15
+ },
16
+ globalPolicies: {
17
+ totalTaskMaxRetries: 10,
18
+ humanInterventionOnlyAfterRetryBudget: true,
19
+ allowAutoRepairPipeline: true,
20
+ },
21
+ stageCatalog: {
22
+ "ideation": {
23
+ id: "ideation",
24
+ name: "Ideation",
25
+ order: 1,
26
+ enabledByDefault: true,
27
+ selectors: { phase: ["ideation"], team: ["strategy"], tags: ["product", "backlog", "user-stories"] },
28
+ retryPolicy: { maxRetries: 2 },
29
+ onFail: { action: "route", targetStage: "feedback" },
30
+ },
31
+ "blueprint": {
32
+ id: "blueprint",
33
+ name: "Blueprint",
34
+ order: 2,
35
+ enabledByDefault: true,
36
+ selectors: { phase: ["blueprint"], team: ["strategy"], tags: ["architecture", "infrastructure"] },
37
+ retryPolicy: { maxRetries: 2 },
38
+ onFail: { action: "route", targetStage: "ideation" },
39
+ },
40
+ "ui-ux-design": {
41
+ id: "ui-ux-design",
42
+ name: "UI/UX Design",
43
+ order: 3,
44
+ enabledByDefault: true,
45
+ selectors: { phase: ["design"], team: ["design"], tags: ["design", "ux", "ui"] },
46
+ retryPolicy: { maxRetries: 2 },
47
+ onFail: { action: "retry" },
48
+ },
49
+ "implementation": {
50
+ id: "implementation",
51
+ name: "Implementation",
52
+ order: 4,
53
+ enabledByDefault: true,
54
+ parallelizable: true,
55
+ selectors: { phase: ["implementation"], team: ["development"], toolsAny: ["file_write", "shell"] },
56
+ retryPolicy: { maxRetries: 10 },
57
+ onFail: { action: "retry" },
58
+ },
59
+ "integration": {
60
+ id: "integration",
61
+ name: "Integration",
62
+ order: 5,
63
+ enabledByDefault: true,
64
+ parallelizable: true,
65
+ selectors: { phase: ["integration"], tags: ["integrations", "api", "webhooks", "automation"] },
66
+ retryPolicy: { maxRetries: 5 },
67
+ onFail: { action: "route", targetStage: "blueprint" },
68
+ },
69
+ "security-audit": {
70
+ id: "security-audit",
71
+ name: "Security Audit",
72
+ order: 6,
73
+ enabledByDefault: true,
74
+ selectors: { phase: ["security"], tags: ["security", "auth", "gdpr", "audit"] },
75
+ retryPolicy: { maxRetries: 3 },
76
+ onFail: { action: "block_and_route", targetStage: "implementation" },
77
+ },
78
+ "qa-testing": {
79
+ id: "qa-testing",
80
+ name: "QA Testing",
81
+ order: 7,
82
+ enabledByDefault: true,
83
+ selectors: { phase: ["qa"], team: ["quality"], tags: ["qa", "testing", "quality"] },
84
+ retryPolicy: { maxRetries: 3 },
85
+ onFail: { action: "route", targetStage: "implementation" },
86
+ },
87
+ "code-review": {
88
+ id: "code-review",
89
+ name: "Code Review",
90
+ order: 8,
91
+ enabledByDefault: true,
92
+ selectors: { phase: ["code-review"], tags: ["review", "code-review"] },
93
+ retryPolicy: { maxRetries: 3 },
94
+ onFail: { action: "route", targetStage: "implementation" },
95
+ },
96
+ "final-review": {
97
+ id: "final-review",
98
+ name: "Final Review",
99
+ order: 9,
100
+ enabledByDefault: true,
101
+ selectors: { phase: ["ideation"], tags: ["product", "acceptance"] },
102
+ retryPolicy: { maxRetries: 1 },
103
+ onFail: { action: "human_intervention" },
104
+ humanGate: true,
105
+ },
106
+ "deployment": {
107
+ id: "deployment",
108
+ name: "Deployment",
109
+ order: 10,
110
+ enabledByDefault: true,
111
+ selectors: { team: ["operations"], tags: ["devops", "deployment", "docker", "aws", "vercel"] },
112
+ retryPolicy: { maxRetries: 2 },
113
+ onFail: { action: "route", targetStage: "blueprint" },
114
+ },
115
+ "release": {
116
+ id: "release",
117
+ name: "Release",
118
+ order: 11,
119
+ enabledByDefault: true,
120
+ selectors: { team: ["operations"], tags: ["release", "semver", "rollback"] },
121
+ retryPolicy: { maxRetries: 2 },
122
+ onFail: { action: "route", targetStage: "deployment" },
123
+ },
124
+ "feedback": {
125
+ id: "feedback",
126
+ name: "Feedback",
127
+ order: 12,
128
+ enabledByDefault: true,
129
+ selectors: { phase: ["feedback"], team: ["support"], tags: ["feedback", "support", "users"] },
130
+ retryPolicy: { maxRetries: 1 },
131
+ onFail: { action: "complete_with_warning" },
132
+ },
133
+ },
134
+ profiles: {
135
+ "webapp-saas": {
136
+ mandatoryStages: ["ideation", "blueprint", "implementation", "integration", "security-audit", "qa-testing", "code-review", "final-review", "deployment", "release", "feedback"],
137
+ optionalStages: ["ui-ux-design"],
138
+ },
139
+ "game-engine-cpp": {
140
+ mandatoryStages: ["ideation", "blueprint", "implementation", "integration", "qa-testing", "code-review", "release", "feedback"],
141
+ optionalStages: ["security-audit", "deployment", "ui-ux-design", "final-review"],
142
+ },
143
+ "mobile-app": {
144
+ mandatoryStages: ["ideation", "blueprint", "ui-ux-design", "implementation", "integration", "qa-testing", "code-review", "final-review", "release", "feedback"],
145
+ optionalStages: ["security-audit", "deployment"],
146
+ },
147
+ "marketing-campaign": {
148
+ mandatoryStages: ["ideation", "ui-ux-design", "final-review", "release", "feedback"],
149
+ optionalStages: ["qa-testing", "code-review", "deployment", "blueprint"],
150
+ },
151
+ "code-review-only": {
152
+ mandatoryStages: ["code-review", "security-audit", "qa-testing", "final-review"],
153
+ optionalStages: ["feedback"],
154
+ },
155
+ "publishing-workflow": {
156
+ mandatoryStages: ["ideation", "final-review", "release", "feedback"],
157
+ optionalStages: ["qa-testing", "code-review", "security-audit", "ui-ux-design"],
158
+ },
159
+ },
160
+ };
161
+ }
162
+ let cachedConfig = null;
163
+ let machineIdHash = null;
164
+ function getMachineIdHash() {
165
+ if (machineIdHash)
166
+ return machineIdHash;
167
+ const platform = process.platform;
168
+ let command;
169
+ let parseFn;
170
+ if (platform === "linux") {
171
+ command = "cat /etc/machine-id 2>/dev/null || cat /var/lib/dbus/machine-id 2>/dev/null";
172
+ parseFn = (s) => s.trim();
173
+ }
174
+ else if (platform === "darwin") {
175
+ command = "ioreg -rd1 -c IOPlatformExpertDevice 2>/dev/null | grep IOPlatformUUID | awk -F'\"' '{print $4}'";
176
+ parseFn = (s) => s.trim().toLowerCase();
177
+ }
178
+ else if (platform === "win32") {
179
+ command = "reg query HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid 2>nul | findstr MachineGuid";
180
+ parseFn = (s) => s.replace(/.*MachineGuid\s+REG_SZ\s+/, "").trim();
181
+ }
182
+ else {
183
+ const randomHash = require("node:crypto").randomBytes(16).toString("hex");
184
+ return randomHash;
185
+ }
186
+ try {
187
+ const { execSync } = require("node:child_process");
188
+ const stdout = execSync(command, { encoding: "utf8", timeout: 5000 });
189
+ machineIdHash = createHash("sha256").update(parseFn(stdout)).digest("hex").substring(0, 16);
190
+ return machineIdHash;
191
+ }
192
+ catch {
193
+ const randomHash = require("node:crypto").randomBytes(16).toString("hex");
194
+ machineIdHash = randomHash;
195
+ return randomHash;
196
+ }
197
+ }
198
+ export function getDefaultConfig() {
199
+ return {
200
+ _meta: {
201
+ version: CONFIG_VERSION,
202
+ machineIdHash: getMachineIdHash(),
203
+ createdAt: new Date().toISOString(),
204
+ updatedAt: new Date().toISOString(),
205
+ },
206
+ models: {
207
+ active: "glm-5-turbo",
208
+ providers: {
209
+ glm: {
210
+ models: ["glm-5.1", "glm-5-turbo"],
211
+ default: "glm-5-turbo",
212
+ baseUrl: "https://api.z.ai/api/coding/paas/v4/",
213
+ },
214
+ minimax: {
215
+ models: ["minimax-m2.7"],
216
+ default: "minimax-m2.7",
217
+ baseUrl: "https://api.minimax.chat/v1",
218
+ },
219
+ openai: {
220
+ models: ["gpt-4o-mini"],
221
+ default: "gpt-4o-mini",
222
+ baseUrl: "https://api.openai.com/v1",
223
+ },
224
+ deepseek: {
225
+ models: ["deepseek-chat", "deepseek-reasoner"],
226
+ default: "deepseek-chat",
227
+ baseUrl: "https://api.deepseek.com/v1",
228
+ },
229
+ groq: {
230
+ models: ["llama-3.3-70b-versatile", "llama-3.1-8b-instant", "mixtral-8x7b-32768", "gemma2-9b-it"],
231
+ default: "llama-3.3-70b-versatile",
232
+ },
233
+ openrouter: {
234
+ models: ["nvidia/nemotron-3-super-120b-a12b:free", "stepfun/step-3.5-flash:free", "qwen/qwen3-coder:free"],
235
+ default: "qwen/qwen3-coder:free",
236
+ baseUrl: "https://openrouter.ai/api/v1",
237
+ },
238
+ },
239
+ failoverChain: ["glm-5-turbo", "minimax-m2.7", "deepseek-chat"],
240
+ },
241
+ telegram: {
242
+ allowedUserIds: [],
243
+ },
244
+ shell: {
245
+ allowlist: ["ls", "cat", "head", "tail", "pwd", "date", "echo", "whoami", "git", "git status", "git log", "git diff", "git branch", "npm", "npmp", "mkdir", "cd"],
246
+ yolo: false,
247
+ timeout: 30000,
248
+ },
249
+ webchat: {
250
+ port: 3000,
251
+ },
252
+ voice: {
253
+ voiceId: "21m00Tcm4TlvDq8ikWAM",
254
+ },
255
+ features: {
256
+ browserHeadless: true,
257
+ schedulerEnabled: true,
258
+ heartbeatIntervalMs: 300000,
259
+ recapHour: 21,
260
+ contextTokenLimit: 8000,
261
+ maxAgentIterations: 30,
262
+ },
263
+ factory: {
264
+ minPipeline: ["qa", "code-review", "security-audit"],
265
+ orchestration: getDefaultFactoryOrchestrationConfig(),
266
+ },
267
+ };
268
+ }
269
+ export function loadConfig() {
270
+ if (cachedConfig)
271
+ return cachedConfig;
272
+ if (!fs.existsSync(CONFIG_PATH)) {
273
+ const defaultConfig = getDefaultConfig();
274
+ cachedConfig = defaultConfig;
275
+ saveConfig(defaultConfig);
276
+ return defaultConfig;
277
+ }
278
+ try {
279
+ const raw = fs.readFileSync(CONFIG_PATH, "utf8");
280
+ cachedConfig = JSON.parse(raw);
281
+ if (!cachedConfig._meta) {
282
+ cachedConfig._meta = getDefaultConfig()._meta;
283
+ }
284
+ return cachedConfig;
285
+ }
286
+ catch (error) {
287
+ console.error("Failed to load config.json, using default:", error);
288
+ const defaultConfig = getDefaultConfig();
289
+ cachedConfig = defaultConfig;
290
+ return defaultConfig;
291
+ }
292
+ }
293
+ export function saveConfig(config) {
294
+ config._meta = config._meta || getDefaultConfig()._meta;
295
+ config._meta.updatedAt = new Date().toISOString();
296
+ config._meta.machineIdHash = getMachineIdHash();
297
+ fs.writeFileSync(CONFIG_PATH, JSON.stringify(config, null, 2), "utf8");
298
+ cachedConfig = config;
299
+ }
300
+ export function clearCache() {
301
+ cachedConfig = null;
302
+ }
303
+ export function getNestedValue(obj, path) {
304
+ const keys = path.split(".");
305
+ let current = obj;
306
+ for (const key of keys) {
307
+ if (typeof current !== "object" || current === null) {
308
+ return undefined;
309
+ }
310
+ current = current[key];
311
+ }
312
+ return current;
313
+ }
314
+ export function setNestedValue(obj, path, value) {
315
+ const keys = path.split(".");
316
+ let current = obj;
317
+ for (let i = 0; i < keys.length - 1; i++) {
318
+ const key = keys[i];
319
+ if (!(key in current) || typeof current[key] !== "object" || current[key] === null) {
320
+ current[key] = {};
321
+ }
322
+ current = current[key];
323
+ }
324
+ current[keys[keys.length - 1]] = value;
325
+ }
326
+ export async function getConfig(path, decryptValues = true) {
327
+ const config = loadConfig();
328
+ const configObj = config;
329
+ if (!path) {
330
+ if (decryptValues) {
331
+ return decryptIfNeeded(configObj);
332
+ }
333
+ return configObj;
334
+ }
335
+ const value = getNestedValue(configObj, path);
336
+ if (decryptValues && value !== undefined) {
337
+ return decryptIfNeeded(value);
338
+ }
339
+ return value;
340
+ }
341
+ export async function setConfig(path, value, encryptValues = true) {
342
+ const config = loadConfig();
343
+ const configObj = config;
344
+ let processedValue = value;
345
+ if (encryptValues) {
346
+ processedValue = await encryptIfNeeded(value);
347
+ }
348
+ setNestedValue(configObj, path, processedValue);
349
+ saveConfig(config);
350
+ }
351
+ export async function setConfigSecret(path, value) {
352
+ const encrypted = await encrypt(value);
353
+ await setConfig(path, { encrypted }, false);
354
+ }
355
+ export async function getConfigSecret(path) {
356
+ const value = await getConfig(path, false);
357
+ if (isEncryptedValue(value)) {
358
+ return decrypt(value.encrypted);
359
+ }
360
+ return undefined;
361
+ }
362
+ export function listConfigPaths(config, prefix = "") {
363
+ const paths = [];
364
+ for (const [key, value] of Object.entries(config)) {
365
+ if (key === "_meta")
366
+ continue;
367
+ const currentPath = prefix ? `${prefix}.${key}` : key;
368
+ if (typeof value === "object" && value !== null && !Array.isArray(value)) {
369
+ paths.push(...listConfigPaths(value, currentPath));
370
+ }
371
+ else {
372
+ paths.push(currentPath);
373
+ }
374
+ }
375
+ return paths;
376
+ }
377
+ export function isSecretField(path) {
378
+ const secretPatterns = [
379
+ /apiKey$/i,
380
+ /token$/i,
381
+ /password$/i,
382
+ /secret$/i,
383
+ /BotToken/i,
384
+ /AuthToken/i,
385
+ ];
386
+ return secretPatterns.some((pattern) => pattern.test(path));
387
+ }
388
+ //# sourceMappingURL=json-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-config.js","sourceRoot":"","sources":["../../src/config/json-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACvG,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,IAAI,WAAW,GAAG,aAAa,EAAE,CAAC;AAClC,MAAM,cAAc,GAAG,KAAK,CAAC;AAE7B,MAAM,UAAU,eAAe;IAC7B,WAAW,GAAG,aAAa,EAAE,CAAC;AAChC,CAAC;AAqGD,MAAM,UAAU,oCAAoC;IAClD,OAAO;QACL,SAAS,EAAE;YACT,IAAI,EAAE,MAAM;YACZ,cAAc,EAAE,aAAa;SAC9B;QACD,cAAc,EAAE;YACd,mBAAmB,EAAE,EAAE;YACvB,qCAAqC,EAAE,IAAI;YAC3C,uBAAuB,EAAE,IAAI;SAC9B;QACD,YAAY,EAAE;YACZ,UAAU,EAAE;gBACV,EAAE,EAAE,UAAU;gBACd,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,CAAC;gBACR,gBAAgB,EAAE,IAAI;gBACtB,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,cAAc,CAAC,EAAE;gBACpG,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE;gBAC9B,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE;aACrD;YACD,WAAW,EAAE;gBACX,EAAE,EAAE,WAAW;gBACf,IAAI,EAAE,WAAW;gBACjB,KAAK,EAAE,CAAC;gBACR,gBAAgB,EAAE,IAAI;gBACtB,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,cAAc,EAAE,gBAAgB,CAAC,EAAE;gBACjG,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE;gBAC9B,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE;aACrD;YACD,cAAc,EAAE;gBACd,EAAE,EAAE,cAAc;gBAClB,IAAI,EAAE,cAAc;gBACpB,KAAK,EAAE,CAAC;gBACR,gBAAgB,EAAE,IAAI;gBACtB,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE;gBAChF,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE;gBAC9B,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;aAC5B;YACD,gBAAgB,EAAE;gBAChB,EAAE,EAAE,gBAAgB;gBACpB,IAAI,EAAE,gBAAgB;gBACtB,KAAK,EAAE,CAAC;gBACR,gBAAgB,EAAE,IAAI;gBACtB,cAAc,EAAE,IAAI;gBACpB,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE;gBAClG,WAAW,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;gBAC/B,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;aAC5B;YACD,aAAa,EAAE;gBACb,EAAE,EAAE,aAAa;gBACjB,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE,CAAC;gBACR,gBAAgB,EAAE,IAAI;gBACtB,cAAc,EAAE,IAAI;gBACpB,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,CAAC,EAAE;gBAC9F,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE;gBAC9B,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE;aACtD;YACD,gBAAgB,EAAE;gBAChB,EAAE,EAAE,gBAAgB;gBACpB,IAAI,EAAE,gBAAgB;gBACtB,KAAK,EAAE,CAAC;gBACR,gBAAgB,EAAE,IAAI;gBACtB,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;gBAC/E,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE;gBAC9B,MAAM,EAAE,EAAE,MAAM,EAAE,iBAAiB,EAAE,WAAW,EAAE,gBAAgB,EAAE;aACrE;YACD,YAAY,EAAE;gBACZ,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,CAAC;gBACR,gBAAgB,EAAE,IAAI;gBACtB,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE;gBACnF,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE;gBAC9B,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE;aAC3D;YACD,aAAa,EAAE;gBACb,EAAE,EAAE,aAAa;gBACjB,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE,CAAC;gBACR,gBAAgB,EAAE,IAAI;gBACtB,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE;gBACtE,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE;gBAC9B,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE;aAC3D;YACD,cAAc,EAAE;gBACd,EAAE,EAAE,cAAc;gBAClB,IAAI,EAAE,cAAc;gBACpB,KAAK,EAAE,CAAC;gBACR,gBAAgB,EAAE,IAAI;gBACtB,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE;gBACnE,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE;gBAC9B,MAAM,EAAE,EAAE,MAAM,EAAE,oBAAoB,EAAE;gBACxC,SAAS,EAAE,IAAI;aAChB;YACD,YAAY,EAAE;gBACZ,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,EAAE;gBACT,gBAAgB,EAAE,IAAI;gBACtB,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE;gBAC9F,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE;gBAC9B,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE;aACtD;YACD,SAAS,EAAE;gBACT,EAAE,EAAE,SAAS;gBACb,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,EAAE;gBACT,gBAAgB,EAAE,IAAI;gBACtB,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE;gBAC5E,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE;gBAC9B,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE;aACvD;YACD,UAAU,EAAE;gBACV,EAAE,EAAE,UAAU;gBACd,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,EAAE;gBACT,gBAAgB,EAAE,IAAI;gBACtB,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE;gBAC7F,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE;gBAC9B,MAAM,EAAE,EAAE,MAAM,EAAE,uBAAuB,EAAE;aAC5C;SACF;QACD,QAAQ,EAAE;YACR,aAAa,EAAE;gBACb,eAAe,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,CAAC;gBAC/K,cAAc,EAAE,CAAC,cAAc,CAAC;aACjC;YACD,iBAAiB,EAAE;gBACjB,eAAe,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,CAAC;gBAC/H,cAAc,EAAE,CAAC,gBAAgB,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,CAAC;aACjF;YACD,YAAY,EAAE;gBACZ,eAAe,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,SAAS,EAAE,UAAU,CAAC;gBAC/J,cAAc,EAAE,CAAC,gBAAgB,EAAE,YAAY,CAAC;aACjD;YACD,oBAAoB,EAAE;gBACpB,eAAe,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,SAAS,EAAE,UAAU,CAAC;gBACpF,cAAc,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,CAAC;aACzE;YACD,kBAAkB,EAAE;gBAClB,eAAe,EAAE,CAAC,aAAa,EAAE,gBAAgB,EAAE,YAAY,EAAE,cAAc,CAAC;gBAChF,cAAc,EAAE,CAAC,UAAU,CAAC;aAC7B;YACD,qBAAqB,EAAE;gBACrB,eAAe,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,SAAS,EAAE,UAAU,CAAC;gBACpE,cAAc,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,cAAc,CAAC;aAChF;SACF;KACF,CAAC;AACJ,CAAC;AAoBD,IAAI,YAAY,GAAsB,IAAI,CAAC;AAC3C,IAAI,aAAa,GAAkB,IAAI,CAAC;AAExC,SAAS,gBAAgB;IACvB,IAAI,aAAa;QAAE,OAAO,aAAa,CAAC;IAExC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAClC,IAAI,OAAe,CAAC;IACpB,IAAI,OAAmC,CAAC;IAExC,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,OAAO,GAAG,6EAA6E,CAAC;QACxF,OAAO,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5B,CAAC;SAAM,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,GAAG,kGAAkG,CAAC;QAC7G,OAAO,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC1C,CAAC;SAAM,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QAChC,OAAO,GAAG,4GAA4G,CAAC;QACvH,OAAO,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACrE,CAAC;SAAM,CAAC;QACN,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC1E,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACtE,aAAa,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5F,OAAO,aAAa,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC1E,aAAa,GAAG,UAAU,CAAC;QAC3B,OAAO,UAAU,CAAC;IACpB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,OAAO;QACL,KAAK,EAAE;YACL,OAAO,EAAE,cAAc;YACvB,aAAa,EAAE,gBAAgB,EAAE;YACjC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC;QACD,MAAM,EAAE;YACN,MAAM,EAAE,aAAa;YACrB,SAAS,EAAE;gBACT,GAAG,EAAE;oBACH,MAAM,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC;oBAClC,OAAO,EAAE,aAAa;oBACtB,OAAO,EAAE,sCAAsC;iBAChD;gBACD,OAAO,EAAE;oBACP,MAAM,EAAE,CAAC,cAAc,CAAC;oBACxB,OAAO,EAAE,cAAc;oBACvB,OAAO,EAAE,6BAA6B;iBACvC;gBACD,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,aAAa,CAAC;oBACvB,OAAO,EAAE,aAAa;oBACtB,OAAO,EAAE,2BAA2B;iBACrC;gBACD,QAAQ,EAAE;oBACR,MAAM,EAAE,CAAC,eAAe,EAAE,mBAAmB,CAAC;oBAC9C,OAAO,EAAE,eAAe;oBACxB,OAAO,EAAE,6BAA6B;iBACvC;gBACD,IAAI,EAAE;oBACJ,MAAM,EAAE,CAAC,yBAAyB,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,cAAc,CAAC;oBACjG,OAAO,EAAE,yBAAyB;iBACnC;gBACD,UAAU,EAAE;oBACV,MAAM,EAAE,CAAC,wCAAwC,EAAE,6BAA6B,EAAE,uBAAuB,CAAC;oBAC1G,OAAO,EAAE,uBAAuB;oBAChC,OAAO,EAAE,8BAA8B;iBACxC;aACF;YACD,aAAa,EAAE,CAAC,aAAa,EAAE,cAAc,EAAE,eAAe,CAAC;SAChE;QACD,QAAQ,EAAE;YACR,cAAc,EAAE,EAAE;SACnB;QACD,KAAK,EAAE;YACL,SAAS,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC;YACjK,IAAI,EAAE,KAAK;YACX,OAAO,EAAE,KAAK;SACf;QACD,OAAO,EAAE;YACP,IAAI,EAAE,IAAI;SACX;QACD,KAAK,EAAE;YACL,OAAO,EAAE,sBAAsB;SAChC;QACD,QAAQ,EAAE;YACR,eAAe,EAAE,IAAI;YACrB,gBAAgB,EAAE,IAAI;YACtB,mBAAmB,EAAE,MAAM;YAC3B,SAAS,EAAE,EAAE;YACb,iBAAiB,EAAE,IAAI;YACvB,kBAAkB,EAAE,EAAE;SACvB;QACD,OAAO,EAAE;YACP,WAAW,EAAE,CAAC,IAAI,EAAE,aAAa,EAAE,gBAAgB,CAAC;YACpD,aAAa,EAAE,oCAAoC,EAAE;SACtD;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,IAAI,YAAY;QAAE,OAAO,YAAY,CAAC;IAEtC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAChC,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;QACzC,YAAY,GAAG,aAAa,CAAC;QAC7B,UAAU,CAAC,aAAa,CAAC,CAAC;QAC1B,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACjD,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAe,CAAC;QAE7C,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;YACxB,YAAY,CAAC,KAAK,GAAG,gBAAgB,EAAE,CAAC,KAAK,CAAC;QAChD,CAAC;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,KAAK,CAAC,CAAC;QACnE,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;QACzC,YAAY,GAAG,aAAa,CAAC;QAC7B,OAAO,aAAa,CAAC;IACvB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAAkB;IAC3C,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,gBAAgB,EAAE,CAAC,KAAK,CAAC;IACxD,MAAM,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAClD,MAAM,CAAC,KAAK,CAAC,aAAa,GAAG,gBAAgB,EAAE,CAAC;IAEhD,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACvE,YAAY,GAAG,MAAM,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,YAAY,GAAG,IAAI,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAA4B,EAAE,IAAY;IACvE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,OAAO,GAAY,GAAG,CAAC;IAE3B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACpD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,GAAI,OAAmC,CAAC,GAAG,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAA4B,EAAE,IAAY,EAAE,KAAc;IACvF,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,OAAO,GAA4B,GAAG,CAAC;IAE3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,CAAC,CAAC,GAAG,IAAI,OAAO,CAAC,IAAI,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;YACnF,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QACpB,CAAC;QACD,OAAO,GAAG,OAAO,CAAC,GAAG,CAA4B,CAAC;IACpD,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;AACzC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAa,EAAE,aAAa,GAAG,IAAI;IACjE,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAC5B,MAAM,SAAS,GAAG,MAA4C,CAAC;IAE/D,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,eAAe,CAAC,SAAS,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,KAAK,GAAG,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAE9C,IAAI,aAAa,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACzC,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAY,EAAE,KAAc,EAAE,aAAa,GAAG,IAAI;IAChF,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAC5B,MAAM,SAAS,GAAG,MAA4C,CAAC;IAE/D,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,aAAa,EAAE,CAAC;QAClB,cAAc,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC,CAAC;IAChD,CAAC;IAED,cAAc,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;IAChD,UAAU,CAAC,MAAoB,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAY,EAAE,KAAa;IAC/D,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,KAAK,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAY;IAChD,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAE3C,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAkB,EAAE,MAAM,GAAG,EAAE;IAC7D,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,GAAG,KAAK,OAAO;YAAE,SAAS;QAE9B,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAEtD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzE,KAAK,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,KAAmB,EAAE,WAAW,CAAC,CAAC,CAAC;QACnE,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,MAAM,cAAc,GAAG;QACrB,UAAU;QACV,SAAS;QACT,YAAY;QACZ,UAAU;QACV,WAAW;QACX,YAAY;KACb,CAAC;IAEF,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC9D,CAAC"}
@@ -0,0 +1,51 @@
1
+ import "dotenv/config";
2
+ import type { FactoryOrchestrationConfig } from "./config/json-config.js";
3
+ export interface Config {
4
+ telegramBotToken: string;
5
+ glmApiKey?: string;
6
+ minimaxApiKey?: string;
7
+ codexApiKey?: string;
8
+ openaiApiKey?: string;
9
+ anthropicApiKey?: string;
10
+ googleApiKey?: string;
11
+ deepseekApiKey?: string;
12
+ groqApiKey?: string;
13
+ openrouterApiKey?: string;
14
+ kiloApiKey?: string;
15
+ ollamaBaseUrl?: string;
16
+ elevenlabsApiKey?: string;
17
+ elevenlabsVoiceId?: string;
18
+ allowedUserIds: Set<number>;
19
+ maxAgentIterations: number;
20
+ activeModel: string;
21
+ failoverChain: string[];
22
+ webchatPort: number;
23
+ webchatAuthToken?: string;
24
+ shellAllowlist: string[];
25
+ shellYolo: boolean;
26
+ shellTimeout: number;
27
+ fileAllowedPaths: string[];
28
+ maxFileSize: number;
29
+ browserHeadless: boolean;
30
+ schedulerEnabled: boolean;
31
+ heartbeatIntervalMs: number;
32
+ recapHour: number;
33
+ contextTokenLimit: number;
34
+ modelsConfig: {
35
+ active: string;
36
+ providers: Record<string, {
37
+ apiKey?: string;
38
+ models: string[];
39
+ default: string;
40
+ baseUrl?: string;
41
+ }>;
42
+ failoverChain: string[];
43
+ };
44
+ factoryMinPipeline: string[];
45
+ factoryOrchestration: FactoryOrchestrationConfig;
46
+ }
47
+ export declare const config: Config;
48
+ export declare function refreshConfigFromSecrets(): Promise<void>;
49
+ export { loadConfig, getConfigSecret, setConfigSecret, setConfig, getConfig, saveConfig, listConfigPaths, isSecretField } from "./config/json-config.js";
50
+ export type { JsonConfig } from "./config/json-config.js";
51
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAE1E,MAAM,WAAW,MAAM;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;IACzB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE;YACxB,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,MAAM,EAAE,MAAM,EAAE,CAAC;YACjB,OAAO,EAAE,MAAM,CAAC;YAChB,OAAO,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC,CAAC;QACH,aAAa,EAAE,MAAM,EAAE,CAAC;KACzB,CAAC;IACF,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,oBAAoB,EAAE,0BAA0B,CAAC;CAClD;AAuFD,eAAO,MAAM,MAAM,EAAE,MAkCpB,CAAC;AAOF,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CAW9D;AAED,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACzJ,YAAY,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC"}