gthinking 1.3.0 → 2.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 (271) hide show
  1. package/.eslintrc.js +34 -0
  2. package/ANALYSIS_SUMMARY.md +363 -0
  3. package/README.md +230 -250
  4. package/dist/analysis/analysis-engine.d.ts +63 -0
  5. package/dist/analysis/analysis-engine.d.ts.map +1 -0
  6. package/dist/analysis/analysis-engine.js +322 -0
  7. package/dist/analysis/analysis-engine.js.map +1 -0
  8. package/dist/core/config.d.ts +1419 -0
  9. package/dist/core/config.d.ts.map +1 -0
  10. package/dist/core/config.js +361 -0
  11. package/dist/core/config.js.map +1 -0
  12. package/dist/core/engine.d.ts +176 -0
  13. package/dist/core/engine.d.ts.map +1 -0
  14. package/dist/core/engine.js +604 -0
  15. package/dist/core/engine.js.map +1 -0
  16. package/dist/core/errors.d.ts +153 -0
  17. package/dist/core/errors.d.ts.map +1 -0
  18. package/dist/core/errors.js +287 -0
  19. package/dist/core/errors.js.map +1 -0
  20. package/dist/core/index.d.ts +7 -0
  21. package/dist/core/index.d.ts.map +1 -0
  22. package/dist/{types.js → core/index.js} +8 -4
  23. package/dist/core/index.js.map +1 -0
  24. package/dist/core/pipeline.d.ts +121 -0
  25. package/dist/core/pipeline.d.ts.map +1 -0
  26. package/dist/core/pipeline.js +289 -0
  27. package/dist/core/pipeline.js.map +1 -0
  28. package/dist/core/rate-limiter.d.ts +58 -0
  29. package/dist/core/rate-limiter.d.ts.map +1 -0
  30. package/dist/core/rate-limiter.js +133 -0
  31. package/dist/core/rate-limiter.js.map +1 -0
  32. package/dist/core/session-manager.d.ts +96 -0
  33. package/dist/core/session-manager.d.ts.map +1 -0
  34. package/dist/core/session-manager.js +223 -0
  35. package/dist/core/session-manager.js.map +1 -0
  36. package/dist/creativity/creativity-engine.d.ts +6 -0
  37. package/dist/creativity/creativity-engine.d.ts.map +1 -0
  38. package/dist/creativity/creativity-engine.js +17 -0
  39. package/dist/creativity/creativity-engine.js.map +1 -0
  40. package/dist/index.d.ts +24 -32
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +130 -104
  43. package/dist/index.js.map +1 -1
  44. package/dist/learning/learning-engine.d.ts +6 -0
  45. package/dist/learning/learning-engine.d.ts.map +1 -0
  46. package/dist/learning/learning-engine.js +17 -0
  47. package/dist/learning/learning-engine.js.map +1 -0
  48. package/dist/llm/index.d.ts +10 -0
  49. package/dist/llm/index.d.ts.map +1 -0
  50. package/dist/llm/index.js +26 -0
  51. package/dist/llm/index.js.map +1 -0
  52. package/dist/llm/llm-service.d.ts +109 -0
  53. package/dist/llm/llm-service.d.ts.map +1 -0
  54. package/dist/llm/llm-service.js +224 -0
  55. package/dist/llm/llm-service.js.map +1 -0
  56. package/dist/llm/providers/base.d.ts +85 -0
  57. package/dist/llm/providers/base.d.ts.map +1 -0
  58. package/dist/llm/providers/base.js +57 -0
  59. package/dist/llm/providers/base.js.map +1 -0
  60. package/dist/llm/providers/cli.d.ts +23 -0
  61. package/dist/llm/providers/cli.d.ts.map +1 -0
  62. package/dist/llm/providers/cli.js +158 -0
  63. package/dist/llm/providers/cli.js.map +1 -0
  64. package/dist/llm/providers/gemini.d.ts +30 -0
  65. package/dist/llm/providers/gemini.d.ts.map +1 -0
  66. package/dist/llm/providers/gemini.js +168 -0
  67. package/dist/llm/providers/gemini.js.map +1 -0
  68. package/dist/llm/sanitization.d.ts +50 -0
  69. package/dist/llm/sanitization.d.ts.map +1 -0
  70. package/dist/llm/sanitization.js +149 -0
  71. package/dist/llm/sanitization.js.map +1 -0
  72. package/dist/{server.d.ts.map → mcp/server.d.ts.map} +1 -1
  73. package/dist/mcp/server.js +108 -0
  74. package/dist/mcp/server.js.map +1 -0
  75. package/dist/planning/planning-engine.d.ts +6 -0
  76. package/dist/planning/planning-engine.d.ts.map +1 -0
  77. package/dist/planning/planning-engine.js +17 -0
  78. package/dist/planning/planning-engine.js.map +1 -0
  79. package/dist/reasoning/reasoning-engine.d.ts +6 -0
  80. package/dist/reasoning/reasoning-engine.d.ts.map +1 -0
  81. package/dist/reasoning/reasoning-engine.js +17 -0
  82. package/dist/reasoning/reasoning-engine.js.map +1 -0
  83. package/dist/search/search-engine.d.ts +99 -0
  84. package/dist/search/search-engine.d.ts.map +1 -0
  85. package/dist/search/search-engine.js +271 -0
  86. package/dist/search/search-engine.js.map +1 -0
  87. package/dist/synthesis/synthesis-engine.d.ts +6 -0
  88. package/dist/synthesis/synthesis-engine.d.ts.map +1 -0
  89. package/dist/synthesis/synthesis-engine.js +17 -0
  90. package/dist/synthesis/synthesis-engine.js.map +1 -0
  91. package/dist/types/analysis.d.ts +1534 -49
  92. package/dist/types/analysis.d.ts.map +1 -1
  93. package/dist/types/analysis.js +250 -0
  94. package/dist/types/analysis.js.map +1 -1
  95. package/dist/types/core.d.ts +257 -30
  96. package/dist/types/core.d.ts.map +1 -1
  97. package/dist/types/core.js +148 -18
  98. package/dist/types/core.js.map +1 -1
  99. package/dist/types/creativity.d.ts +2871 -56
  100. package/dist/types/creativity.d.ts.map +1 -1
  101. package/dist/types/creativity.js +195 -0
  102. package/dist/types/creativity.js.map +1 -1
  103. package/dist/types/index.d.ts +6 -2
  104. package/dist/types/index.d.ts.map +1 -1
  105. package/dist/types/index.js +17 -2
  106. package/dist/types/index.js.map +1 -1
  107. package/dist/types/learning.d.ts +851 -61
  108. package/dist/types/learning.d.ts.map +1 -1
  109. package/dist/types/learning.js +155 -0
  110. package/dist/types/learning.js.map +1 -1
  111. package/dist/types/planning.d.ts +2223 -71
  112. package/dist/types/planning.d.ts.map +1 -1
  113. package/dist/types/planning.js +190 -0
  114. package/dist/types/planning.js.map +1 -1
  115. package/dist/types/reasoning.d.ts +2209 -72
  116. package/dist/types/reasoning.d.ts.map +1 -1
  117. package/dist/types/reasoning.js +200 -1
  118. package/dist/types/reasoning.js.map +1 -1
  119. package/dist/types/search.d.ts +981 -53
  120. package/dist/types/search.d.ts.map +1 -1
  121. package/dist/types/search.js +137 -0
  122. package/dist/types/search.js.map +1 -1
  123. package/dist/types/synthesis.d.ts +583 -38
  124. package/dist/types/synthesis.d.ts.map +1 -1
  125. package/dist/types/synthesis.js +138 -0
  126. package/dist/types/synthesis.js.map +1 -1
  127. package/dist/utils/cache.d.ts +144 -0
  128. package/dist/utils/cache.d.ts.map +1 -0
  129. package/dist/utils/cache.js +288 -0
  130. package/dist/utils/cache.js.map +1 -0
  131. package/dist/utils/id-generator.d.ts +89 -0
  132. package/dist/utils/id-generator.d.ts.map +1 -0
  133. package/dist/utils/id-generator.js +132 -0
  134. package/dist/utils/id-generator.js.map +1 -0
  135. package/dist/utils/index.d.ts +11 -0
  136. package/dist/utils/index.d.ts.map +1 -0
  137. package/dist/utils/index.js +33 -0
  138. package/dist/utils/index.js.map +1 -0
  139. package/dist/utils/logger.d.ts +142 -0
  140. package/dist/utils/logger.d.ts.map +1 -0
  141. package/dist/utils/logger.js +248 -0
  142. package/dist/utils/logger.js.map +1 -0
  143. package/dist/utils/metrics.d.ts +149 -0
  144. package/dist/utils/metrics.d.ts.map +1 -0
  145. package/dist/utils/metrics.js +296 -0
  146. package/dist/utils/metrics.js.map +1 -0
  147. package/dist/utils/timer.d.ts +7 -0
  148. package/dist/utils/timer.d.ts.map +1 -0
  149. package/dist/utils/timer.js +17 -0
  150. package/dist/utils/timer.js.map +1 -0
  151. package/dist/utils/validation.d.ts +147 -0
  152. package/dist/utils/validation.d.ts.map +1 -0
  153. package/dist/utils/validation.js +275 -0
  154. package/dist/utils/validation.js.map +1 -0
  155. package/docs/API.md +411 -0
  156. package/docs/ARCHITECTURE.md +271 -0
  157. package/docs/CHANGELOG.md +283 -0
  158. package/jest.config.js +28 -0
  159. package/package.json +43 -30
  160. package/src/analysis/analysis-engine.ts +383 -0
  161. package/src/core/config.ts +406 -0
  162. package/src/core/engine.ts +785 -0
  163. package/src/core/errors.ts +349 -0
  164. package/src/core/index.ts +12 -0
  165. package/src/core/pipeline.ts +424 -0
  166. package/src/core/rate-limiter.ts +155 -0
  167. package/src/core/session-manager.ts +269 -0
  168. package/src/creativity/creativity-engine.ts +14 -0
  169. package/src/index.ts +178 -0
  170. package/src/learning/learning-engine.ts +14 -0
  171. package/src/llm/index.ts +10 -0
  172. package/src/llm/llm-service.ts +285 -0
  173. package/src/llm/providers/base.ts +146 -0
  174. package/src/llm/providers/cli.ts +186 -0
  175. package/src/llm/providers/gemini.ts +201 -0
  176. package/src/llm/sanitization.ts +178 -0
  177. package/src/mcp/server.ts +117 -0
  178. package/src/planning/planning-engine.ts +14 -0
  179. package/src/reasoning/reasoning-engine.ts +14 -0
  180. package/src/search/search-engine.ts +333 -0
  181. package/src/synthesis/synthesis-engine.ts +14 -0
  182. package/src/types/analysis.ts +337 -0
  183. package/src/types/core.ts +342 -0
  184. package/src/types/creativity.ts +268 -0
  185. package/src/types/index.ts +31 -0
  186. package/src/types/learning.ts +215 -0
  187. package/src/types/planning.ts +251 -0
  188. package/src/types/reasoning.ts +288 -0
  189. package/src/types/search.ts +192 -0
  190. package/src/types/synthesis.ts +187 -0
  191. package/src/utils/cache.ts +363 -0
  192. package/src/utils/id-generator.ts +135 -0
  193. package/src/utils/index.ts +22 -0
  194. package/src/utils/logger.ts +290 -0
  195. package/src/utils/metrics.ts +380 -0
  196. package/src/utils/timer.ts +15 -0
  197. package/src/utils/validation.ts +297 -0
  198. package/tests/setup.ts +22 -0
  199. package/tests/unit/cache.test.ts +189 -0
  200. package/tests/unit/engine.test.ts +179 -0
  201. package/tests/unit/validation.test.ts +218 -0
  202. package/tsconfig.json +17 -12
  203. package/GEMINI.md +0 -68
  204. package/analysis.ts +0 -1063
  205. package/creativity.ts +0 -1055
  206. package/dist/analysis.d.ts +0 -54
  207. package/dist/analysis.d.ts.map +0 -1
  208. package/dist/analysis.js +0 -866
  209. package/dist/analysis.js.map +0 -1
  210. package/dist/creativity.d.ts +0 -81
  211. package/dist/creativity.d.ts.map +0 -1
  212. package/dist/creativity.js +0 -828
  213. package/dist/creativity.js.map +0 -1
  214. package/dist/engine.d.ts +0 -90
  215. package/dist/engine.d.ts.map +0 -1
  216. package/dist/engine.js +0 -720
  217. package/dist/engine.js.map +0 -1
  218. package/dist/examples.d.ts +0 -7
  219. package/dist/examples.d.ts.map +0 -1
  220. package/dist/examples.js +0 -506
  221. package/dist/examples.js.map +0 -1
  222. package/dist/learning.d.ts +0 -72
  223. package/dist/learning.d.ts.map +0 -1
  224. package/dist/learning.js +0 -615
  225. package/dist/learning.js.map +0 -1
  226. package/dist/llm-service.d.ts +0 -21
  227. package/dist/llm-service.d.ts.map +0 -1
  228. package/dist/llm-service.js +0 -100
  229. package/dist/llm-service.js.map +0 -1
  230. package/dist/planning.d.ts +0 -62
  231. package/dist/planning.d.ts.map +0 -1
  232. package/dist/planning.js +0 -886
  233. package/dist/planning.js.map +0 -1
  234. package/dist/reasoning.d.ts +0 -73
  235. package/dist/reasoning.d.ts.map +0 -1
  236. package/dist/reasoning.js +0 -845
  237. package/dist/reasoning.js.map +0 -1
  238. package/dist/search-discovery.d.ts +0 -73
  239. package/dist/search-discovery.d.ts.map +0 -1
  240. package/dist/search-discovery.js +0 -548
  241. package/dist/search-discovery.js.map +0 -1
  242. package/dist/server.js +0 -113
  243. package/dist/server.js.map +0 -1
  244. package/dist/types/engine.d.ts +0 -55
  245. package/dist/types/engine.d.ts.map +0 -1
  246. package/dist/types/engine.js +0 -3
  247. package/dist/types/engine.js.map +0 -1
  248. package/dist/types.d.ts +0 -6
  249. package/dist/types.d.ts.map +0 -1
  250. package/dist/types.js.map +0 -1
  251. package/engine.ts +0 -1009
  252. package/examples.ts +0 -717
  253. package/index.ts +0 -106
  254. package/learning.ts +0 -779
  255. package/llm-service.ts +0 -120
  256. package/planning.ts +0 -1101
  257. package/reasoning.ts +0 -1079
  258. package/search-discovery.ts +0 -700
  259. package/server.ts +0 -115
  260. package/types/analysis.ts +0 -69
  261. package/types/core.ts +0 -90
  262. package/types/creativity.ts +0 -72
  263. package/types/engine.ts +0 -60
  264. package/types/index.ts +0 -9
  265. package/types/learning.ts +0 -69
  266. package/types/planning.ts +0 -85
  267. package/types/reasoning.ts +0 -92
  268. package/types/search.ts +0 -58
  269. package/types/synthesis.ts +0 -43
  270. package/types.ts +0 -6
  271. /package/dist/{server.d.ts → mcp/server.d.ts} +0 -0
@@ -0,0 +1,1419 @@
1
+ /**
2
+ * Configuration for gthinking v2.0.0
3
+ * Centralized configuration management
4
+ */
5
+ import { z } from 'zod';
6
+ /**
7
+ * LLM Provider configuration schema
8
+ */
9
+ export declare const LLMProviderConfigSchema: z.ZodObject<{
10
+ provider: z.ZodEnum<["gemini", "claude", "openai", "kimi", "custom", "cli"]>;
11
+ apiKey: z.ZodOptional<z.ZodString>;
12
+ baseUrl: z.ZodOptional<z.ZodString>;
13
+ model: z.ZodOptional<z.ZodString>;
14
+ cliCommand: z.ZodDefault<z.ZodString>;
15
+ cliArgs: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
16
+ cliPromptPassingMethod: z.ZodDefault<z.ZodEnum<["stdin", "arg"]>>;
17
+ cliPromptFlag: z.ZodOptional<z.ZodString>;
18
+ timeout: z.ZodDefault<z.ZodNumber>;
19
+ maxRetries: z.ZodDefault<z.ZodNumber>;
20
+ rateLimitPerMinute: z.ZodDefault<z.ZodNumber>;
21
+ }, "strip", z.ZodTypeAny, {
22
+ timeout?: number;
23
+ maxRetries?: number;
24
+ provider?: "gemini" | "claude" | "openai" | "kimi" | "custom" | "cli";
25
+ apiKey?: string;
26
+ baseUrl?: string;
27
+ model?: string;
28
+ cliCommand?: string;
29
+ cliArgs?: string[];
30
+ cliPromptPassingMethod?: "stdin" | "arg";
31
+ cliPromptFlag?: string;
32
+ rateLimitPerMinute?: number;
33
+ }, {
34
+ timeout?: number;
35
+ maxRetries?: number;
36
+ provider?: "gemini" | "claude" | "openai" | "kimi" | "custom" | "cli";
37
+ apiKey?: string;
38
+ baseUrl?: string;
39
+ model?: string;
40
+ cliCommand?: string;
41
+ cliArgs?: string[];
42
+ cliPromptPassingMethod?: "stdin" | "arg";
43
+ cliPromptFlag?: string;
44
+ rateLimitPerMinute?: number;
45
+ }>;
46
+ export type LLMProviderConfig = z.infer<typeof LLMProviderConfigSchema>;
47
+ /**
48
+ * Search configuration schema
49
+ */
50
+ export declare const SearchConfigSchema: z.ZodObject<{
51
+ enabled: z.ZodDefault<z.ZodBoolean>;
52
+ providers: z.ZodDefault<z.ZodArray<z.ZodEnum<["google", "bing", "brave", "duckduckgo"]>, "many">>;
53
+ apiKeys: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
54
+ maxResults: z.ZodDefault<z.ZodNumber>;
55
+ timeout: z.ZodDefault<z.ZodNumber>;
56
+ cacheResults: z.ZodDefault<z.ZodBoolean>;
57
+ cacheTTL: z.ZodDefault<z.ZodNumber>;
58
+ }, "strip", z.ZodTypeAny, {
59
+ timeout?: number;
60
+ maxResults?: number;
61
+ enabled?: boolean;
62
+ providers?: ("google" | "bing" | "brave" | "duckduckgo")[];
63
+ apiKeys?: Record<string, string>;
64
+ cacheResults?: boolean;
65
+ cacheTTL?: number;
66
+ }, {
67
+ timeout?: number;
68
+ maxResults?: number;
69
+ enabled?: boolean;
70
+ providers?: ("google" | "bing" | "brave" | "duckduckgo")[];
71
+ apiKeys?: Record<string, string>;
72
+ cacheResults?: boolean;
73
+ cacheTTL?: number;
74
+ }>;
75
+ export type SearchConfig = z.infer<typeof SearchConfigSchema>;
76
+ /**
77
+ * Cache configuration schema
78
+ */
79
+ export declare const CacheConfigSchema: z.ZodObject<{
80
+ enabled: z.ZodDefault<z.ZodBoolean>;
81
+ maxSize: z.ZodDefault<z.ZodNumber>;
82
+ defaultTTL: z.ZodDefault<z.ZodNumber>;
83
+ checkInterval: z.ZodDefault<z.ZodNumber>;
84
+ persistence: z.ZodDefault<z.ZodEnum<["none", "file", "redis"]>>;
85
+ persistencePath: z.ZodOptional<z.ZodString>;
86
+ }, "strip", z.ZodTypeAny, {
87
+ enabled?: boolean;
88
+ maxSize?: number;
89
+ defaultTTL?: number;
90
+ checkInterval?: number;
91
+ persistence?: "file" | "redis" | "none";
92
+ persistencePath?: string;
93
+ }, {
94
+ enabled?: boolean;
95
+ maxSize?: number;
96
+ defaultTTL?: number;
97
+ checkInterval?: number;
98
+ persistence?: "file" | "redis" | "none";
99
+ persistencePath?: string;
100
+ }>;
101
+ export type CacheConfig = z.infer<typeof CacheConfigSchema>;
102
+ /**
103
+ * Logging configuration schema
104
+ */
105
+ export declare const LoggingConfigSchema: z.ZodObject<{
106
+ level: z.ZodDefault<z.ZodEnum<["debug", "info", "warn", "error"]>>;
107
+ enableConsole: z.ZodDefault<z.ZodBoolean>;
108
+ enableFile: z.ZodDefault<z.ZodBoolean>;
109
+ logDir: z.ZodDefault<z.ZodString>;
110
+ maxFiles: z.ZodDefault<z.ZodNumber>;
111
+ maxSize: z.ZodDefault<z.ZodString>;
112
+ }, "strip", z.ZodTypeAny, {
113
+ level?: "debug" | "info" | "warn" | "error";
114
+ enableConsole?: boolean;
115
+ enableFile?: boolean;
116
+ logDir?: string;
117
+ maxFiles?: number;
118
+ maxSize?: string;
119
+ }, {
120
+ level?: "debug" | "info" | "warn" | "error";
121
+ enableConsole?: boolean;
122
+ enableFile?: boolean;
123
+ logDir?: string;
124
+ maxFiles?: number;
125
+ maxSize?: string;
126
+ }>;
127
+ export type LoggingConfig = z.infer<typeof LoggingConfigSchema>;
128
+ /**
129
+ * Stage configuration schema
130
+ */
131
+ export declare const StageConfigSchema: z.ZodObject<{
132
+ enabled: z.ZodDefault<z.ZodBoolean>;
133
+ timeout: z.ZodDefault<z.ZodNumber>;
134
+ maxRetries: z.ZodDefault<z.ZodNumber>;
135
+ parallel: z.ZodDefault<z.ZodBoolean>;
136
+ required: z.ZodDefault<z.ZodBoolean>;
137
+ }, "strip", z.ZodTypeAny, {
138
+ timeout?: number;
139
+ maxRetries?: number;
140
+ enabled?: boolean;
141
+ parallel?: boolean;
142
+ required?: boolean;
143
+ }, {
144
+ timeout?: number;
145
+ maxRetries?: number;
146
+ enabled?: boolean;
147
+ parallel?: boolean;
148
+ required?: boolean;
149
+ }>;
150
+ export type StageConfig = z.infer<typeof StageConfigSchema>;
151
+ /**
152
+ * Pipeline configuration schema
153
+ */
154
+ export declare const PipelineConfigSchema: z.ZodObject<{
155
+ stages: z.ZodDefault<z.ZodObject<{
156
+ search: z.ZodDefault<z.ZodObject<{
157
+ enabled: z.ZodDefault<z.ZodBoolean>;
158
+ timeout: z.ZodDefault<z.ZodNumber>;
159
+ maxRetries: z.ZodDefault<z.ZodNumber>;
160
+ parallel: z.ZodDefault<z.ZodBoolean>;
161
+ required: z.ZodDefault<z.ZodBoolean>;
162
+ }, "strip", z.ZodTypeAny, {
163
+ timeout?: number;
164
+ maxRetries?: number;
165
+ enabled?: boolean;
166
+ parallel?: boolean;
167
+ required?: boolean;
168
+ }, {
169
+ timeout?: number;
170
+ maxRetries?: number;
171
+ enabled?: boolean;
172
+ parallel?: boolean;
173
+ required?: boolean;
174
+ }>>;
175
+ analysis: z.ZodDefault<z.ZodObject<{
176
+ enabled: z.ZodDefault<z.ZodBoolean>;
177
+ timeout: z.ZodDefault<z.ZodNumber>;
178
+ maxRetries: z.ZodDefault<z.ZodNumber>;
179
+ parallel: z.ZodDefault<z.ZodBoolean>;
180
+ required: z.ZodDefault<z.ZodBoolean>;
181
+ }, "strip", z.ZodTypeAny, {
182
+ timeout?: number;
183
+ maxRetries?: number;
184
+ enabled?: boolean;
185
+ parallel?: boolean;
186
+ required?: boolean;
187
+ }, {
188
+ timeout?: number;
189
+ maxRetries?: number;
190
+ enabled?: boolean;
191
+ parallel?: boolean;
192
+ required?: boolean;
193
+ }>>;
194
+ reasoning: z.ZodDefault<z.ZodObject<{
195
+ enabled: z.ZodDefault<z.ZodBoolean>;
196
+ timeout: z.ZodDefault<z.ZodNumber>;
197
+ maxRetries: z.ZodDefault<z.ZodNumber>;
198
+ parallel: z.ZodDefault<z.ZodBoolean>;
199
+ required: z.ZodDefault<z.ZodBoolean>;
200
+ }, "strip", z.ZodTypeAny, {
201
+ timeout?: number;
202
+ maxRetries?: number;
203
+ enabled?: boolean;
204
+ parallel?: boolean;
205
+ required?: boolean;
206
+ }, {
207
+ timeout?: number;
208
+ maxRetries?: number;
209
+ enabled?: boolean;
210
+ parallel?: boolean;
211
+ required?: boolean;
212
+ }>>;
213
+ learning: z.ZodDefault<z.ZodObject<{
214
+ enabled: z.ZodDefault<z.ZodBoolean>;
215
+ timeout: z.ZodDefault<z.ZodNumber>;
216
+ maxRetries: z.ZodDefault<z.ZodNumber>;
217
+ parallel: z.ZodDefault<z.ZodBoolean>;
218
+ required: z.ZodDefault<z.ZodBoolean>;
219
+ }, "strip", z.ZodTypeAny, {
220
+ timeout?: number;
221
+ maxRetries?: number;
222
+ enabled?: boolean;
223
+ parallel?: boolean;
224
+ required?: boolean;
225
+ }, {
226
+ timeout?: number;
227
+ maxRetries?: number;
228
+ enabled?: boolean;
229
+ parallel?: boolean;
230
+ required?: boolean;
231
+ }>>;
232
+ planning: z.ZodDefault<z.ZodObject<{
233
+ enabled: z.ZodDefault<z.ZodBoolean>;
234
+ timeout: z.ZodDefault<z.ZodNumber>;
235
+ maxRetries: z.ZodDefault<z.ZodNumber>;
236
+ parallel: z.ZodDefault<z.ZodBoolean>;
237
+ required: z.ZodDefault<z.ZodBoolean>;
238
+ }, "strip", z.ZodTypeAny, {
239
+ timeout?: number;
240
+ maxRetries?: number;
241
+ enabled?: boolean;
242
+ parallel?: boolean;
243
+ required?: boolean;
244
+ }, {
245
+ timeout?: number;
246
+ maxRetries?: number;
247
+ enabled?: boolean;
248
+ parallel?: boolean;
249
+ required?: boolean;
250
+ }>>;
251
+ creativity: z.ZodDefault<z.ZodObject<{
252
+ enabled: z.ZodDefault<z.ZodBoolean>;
253
+ timeout: z.ZodDefault<z.ZodNumber>;
254
+ maxRetries: z.ZodDefault<z.ZodNumber>;
255
+ parallel: z.ZodDefault<z.ZodBoolean>;
256
+ required: z.ZodDefault<z.ZodBoolean>;
257
+ }, "strip", z.ZodTypeAny, {
258
+ timeout?: number;
259
+ maxRetries?: number;
260
+ enabled?: boolean;
261
+ parallel?: boolean;
262
+ required?: boolean;
263
+ }, {
264
+ timeout?: number;
265
+ maxRetries?: number;
266
+ enabled?: boolean;
267
+ parallel?: boolean;
268
+ required?: boolean;
269
+ }>>;
270
+ synthesis: z.ZodDefault<z.ZodObject<{
271
+ enabled: z.ZodDefault<z.ZodBoolean>;
272
+ timeout: z.ZodDefault<z.ZodNumber>;
273
+ maxRetries: z.ZodDefault<z.ZodNumber>;
274
+ parallel: z.ZodDefault<z.ZodBoolean>;
275
+ required: z.ZodDefault<z.ZodBoolean>;
276
+ }, "strip", z.ZodTypeAny, {
277
+ timeout?: number;
278
+ maxRetries?: number;
279
+ enabled?: boolean;
280
+ parallel?: boolean;
281
+ required?: boolean;
282
+ }, {
283
+ timeout?: number;
284
+ maxRetries?: number;
285
+ enabled?: boolean;
286
+ parallel?: boolean;
287
+ required?: boolean;
288
+ }>>;
289
+ evaluation: z.ZodDefault<z.ZodObject<{
290
+ enabled: z.ZodDefault<z.ZodBoolean>;
291
+ timeout: z.ZodDefault<z.ZodNumber>;
292
+ maxRetries: z.ZodDefault<z.ZodNumber>;
293
+ parallel: z.ZodDefault<z.ZodBoolean>;
294
+ required: z.ZodDefault<z.ZodBoolean>;
295
+ }, "strip", z.ZodTypeAny, {
296
+ timeout?: number;
297
+ maxRetries?: number;
298
+ enabled?: boolean;
299
+ parallel?: boolean;
300
+ required?: boolean;
301
+ }, {
302
+ timeout?: number;
303
+ maxRetries?: number;
304
+ enabled?: boolean;
305
+ parallel?: boolean;
306
+ required?: boolean;
307
+ }>>;
308
+ }, "strip", z.ZodTypeAny, {
309
+ search?: {
310
+ timeout?: number;
311
+ maxRetries?: number;
312
+ enabled?: boolean;
313
+ parallel?: boolean;
314
+ required?: boolean;
315
+ };
316
+ analysis?: {
317
+ timeout?: number;
318
+ maxRetries?: number;
319
+ enabled?: boolean;
320
+ parallel?: boolean;
321
+ required?: boolean;
322
+ };
323
+ reasoning?: {
324
+ timeout?: number;
325
+ maxRetries?: number;
326
+ enabled?: boolean;
327
+ parallel?: boolean;
328
+ required?: boolean;
329
+ };
330
+ learning?: {
331
+ timeout?: number;
332
+ maxRetries?: number;
333
+ enabled?: boolean;
334
+ parallel?: boolean;
335
+ required?: boolean;
336
+ };
337
+ planning?: {
338
+ timeout?: number;
339
+ maxRetries?: number;
340
+ enabled?: boolean;
341
+ parallel?: boolean;
342
+ required?: boolean;
343
+ };
344
+ creativity?: {
345
+ timeout?: number;
346
+ maxRetries?: number;
347
+ enabled?: boolean;
348
+ parallel?: boolean;
349
+ required?: boolean;
350
+ };
351
+ synthesis?: {
352
+ timeout?: number;
353
+ maxRetries?: number;
354
+ enabled?: boolean;
355
+ parallel?: boolean;
356
+ required?: boolean;
357
+ };
358
+ evaluation?: {
359
+ timeout?: number;
360
+ maxRetries?: number;
361
+ enabled?: boolean;
362
+ parallel?: boolean;
363
+ required?: boolean;
364
+ };
365
+ }, {
366
+ search?: {
367
+ timeout?: number;
368
+ maxRetries?: number;
369
+ enabled?: boolean;
370
+ parallel?: boolean;
371
+ required?: boolean;
372
+ };
373
+ analysis?: {
374
+ timeout?: number;
375
+ maxRetries?: number;
376
+ enabled?: boolean;
377
+ parallel?: boolean;
378
+ required?: boolean;
379
+ };
380
+ reasoning?: {
381
+ timeout?: number;
382
+ maxRetries?: number;
383
+ enabled?: boolean;
384
+ parallel?: boolean;
385
+ required?: boolean;
386
+ };
387
+ learning?: {
388
+ timeout?: number;
389
+ maxRetries?: number;
390
+ enabled?: boolean;
391
+ parallel?: boolean;
392
+ required?: boolean;
393
+ };
394
+ planning?: {
395
+ timeout?: number;
396
+ maxRetries?: number;
397
+ enabled?: boolean;
398
+ parallel?: boolean;
399
+ required?: boolean;
400
+ };
401
+ creativity?: {
402
+ timeout?: number;
403
+ maxRetries?: number;
404
+ enabled?: boolean;
405
+ parallel?: boolean;
406
+ required?: boolean;
407
+ };
408
+ synthesis?: {
409
+ timeout?: number;
410
+ maxRetries?: number;
411
+ enabled?: boolean;
412
+ parallel?: boolean;
413
+ required?: boolean;
414
+ };
415
+ evaluation?: {
416
+ timeout?: number;
417
+ maxRetries?: number;
418
+ enabled?: boolean;
419
+ parallel?: boolean;
420
+ required?: boolean;
421
+ };
422
+ }>>;
423
+ enableDynamicPipeline: z.ZodDefault<z.ZodBoolean>;
424
+ enableStreaming: z.ZodDefault<z.ZodBoolean>;
425
+ maxConcurrentStages: z.ZodDefault<z.ZodNumber>;
426
+ defaultTimeout: z.ZodDefault<z.ZodNumber>;
427
+ errorHandling: z.ZodDefault<z.ZodEnum<["stop", "continue"]>>;
428
+ }, "strip", z.ZodTypeAny, {
429
+ stages?: {
430
+ search?: {
431
+ timeout?: number;
432
+ maxRetries?: number;
433
+ enabled?: boolean;
434
+ parallel?: boolean;
435
+ required?: boolean;
436
+ };
437
+ analysis?: {
438
+ timeout?: number;
439
+ maxRetries?: number;
440
+ enabled?: boolean;
441
+ parallel?: boolean;
442
+ required?: boolean;
443
+ };
444
+ reasoning?: {
445
+ timeout?: number;
446
+ maxRetries?: number;
447
+ enabled?: boolean;
448
+ parallel?: boolean;
449
+ required?: boolean;
450
+ };
451
+ learning?: {
452
+ timeout?: number;
453
+ maxRetries?: number;
454
+ enabled?: boolean;
455
+ parallel?: boolean;
456
+ required?: boolean;
457
+ };
458
+ planning?: {
459
+ timeout?: number;
460
+ maxRetries?: number;
461
+ enabled?: boolean;
462
+ parallel?: boolean;
463
+ required?: boolean;
464
+ };
465
+ creativity?: {
466
+ timeout?: number;
467
+ maxRetries?: number;
468
+ enabled?: boolean;
469
+ parallel?: boolean;
470
+ required?: boolean;
471
+ };
472
+ synthesis?: {
473
+ timeout?: number;
474
+ maxRetries?: number;
475
+ enabled?: boolean;
476
+ parallel?: boolean;
477
+ required?: boolean;
478
+ };
479
+ evaluation?: {
480
+ timeout?: number;
481
+ maxRetries?: number;
482
+ enabled?: boolean;
483
+ parallel?: boolean;
484
+ required?: boolean;
485
+ };
486
+ };
487
+ enableDynamicPipeline?: boolean;
488
+ enableStreaming?: boolean;
489
+ maxConcurrentStages?: number;
490
+ defaultTimeout?: number;
491
+ errorHandling?: "stop" | "continue";
492
+ }, {
493
+ stages?: {
494
+ search?: {
495
+ timeout?: number;
496
+ maxRetries?: number;
497
+ enabled?: boolean;
498
+ parallel?: boolean;
499
+ required?: boolean;
500
+ };
501
+ analysis?: {
502
+ timeout?: number;
503
+ maxRetries?: number;
504
+ enabled?: boolean;
505
+ parallel?: boolean;
506
+ required?: boolean;
507
+ };
508
+ reasoning?: {
509
+ timeout?: number;
510
+ maxRetries?: number;
511
+ enabled?: boolean;
512
+ parallel?: boolean;
513
+ required?: boolean;
514
+ };
515
+ learning?: {
516
+ timeout?: number;
517
+ maxRetries?: number;
518
+ enabled?: boolean;
519
+ parallel?: boolean;
520
+ required?: boolean;
521
+ };
522
+ planning?: {
523
+ timeout?: number;
524
+ maxRetries?: number;
525
+ enabled?: boolean;
526
+ parallel?: boolean;
527
+ required?: boolean;
528
+ };
529
+ creativity?: {
530
+ timeout?: number;
531
+ maxRetries?: number;
532
+ enabled?: boolean;
533
+ parallel?: boolean;
534
+ required?: boolean;
535
+ };
536
+ synthesis?: {
537
+ timeout?: number;
538
+ maxRetries?: number;
539
+ enabled?: boolean;
540
+ parallel?: boolean;
541
+ required?: boolean;
542
+ };
543
+ evaluation?: {
544
+ timeout?: number;
545
+ maxRetries?: number;
546
+ enabled?: boolean;
547
+ parallel?: boolean;
548
+ required?: boolean;
549
+ };
550
+ };
551
+ enableDynamicPipeline?: boolean;
552
+ enableStreaming?: boolean;
553
+ maxConcurrentStages?: number;
554
+ defaultTimeout?: number;
555
+ errorHandling?: "stop" | "continue";
556
+ }>;
557
+ export type PipelineConfig = z.infer<typeof PipelineConfigSchema>;
558
+ /**
559
+ * Main configuration schema
560
+ */
561
+ export declare const GThinkingConfigSchema: z.ZodObject<{
562
+ version: z.ZodDefault<z.ZodString>;
563
+ llm: z.ZodDefault<z.ZodObject<{
564
+ provider: z.ZodEnum<["gemini", "claude", "openai", "kimi", "custom", "cli"]>;
565
+ apiKey: z.ZodOptional<z.ZodString>;
566
+ baseUrl: z.ZodOptional<z.ZodString>;
567
+ model: z.ZodOptional<z.ZodString>;
568
+ cliCommand: z.ZodDefault<z.ZodString>;
569
+ cliArgs: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
570
+ cliPromptPassingMethod: z.ZodDefault<z.ZodEnum<["stdin", "arg"]>>;
571
+ cliPromptFlag: z.ZodOptional<z.ZodString>;
572
+ timeout: z.ZodDefault<z.ZodNumber>;
573
+ maxRetries: z.ZodDefault<z.ZodNumber>;
574
+ rateLimitPerMinute: z.ZodDefault<z.ZodNumber>;
575
+ }, "strip", z.ZodTypeAny, {
576
+ timeout?: number;
577
+ maxRetries?: number;
578
+ provider?: "gemini" | "claude" | "openai" | "kimi" | "custom" | "cli";
579
+ apiKey?: string;
580
+ baseUrl?: string;
581
+ model?: string;
582
+ cliCommand?: string;
583
+ cliArgs?: string[];
584
+ cliPromptPassingMethod?: "stdin" | "arg";
585
+ cliPromptFlag?: string;
586
+ rateLimitPerMinute?: number;
587
+ }, {
588
+ timeout?: number;
589
+ maxRetries?: number;
590
+ provider?: "gemini" | "claude" | "openai" | "kimi" | "custom" | "cli";
591
+ apiKey?: string;
592
+ baseUrl?: string;
593
+ model?: string;
594
+ cliCommand?: string;
595
+ cliArgs?: string[];
596
+ cliPromptPassingMethod?: "stdin" | "arg";
597
+ cliPromptFlag?: string;
598
+ rateLimitPerMinute?: number;
599
+ }>>;
600
+ search: z.ZodDefault<z.ZodObject<{
601
+ enabled: z.ZodDefault<z.ZodBoolean>;
602
+ providers: z.ZodDefault<z.ZodArray<z.ZodEnum<["google", "bing", "brave", "duckduckgo"]>, "many">>;
603
+ apiKeys: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
604
+ maxResults: z.ZodDefault<z.ZodNumber>;
605
+ timeout: z.ZodDefault<z.ZodNumber>;
606
+ cacheResults: z.ZodDefault<z.ZodBoolean>;
607
+ cacheTTL: z.ZodDefault<z.ZodNumber>;
608
+ }, "strip", z.ZodTypeAny, {
609
+ timeout?: number;
610
+ maxResults?: number;
611
+ enabled?: boolean;
612
+ providers?: ("google" | "bing" | "brave" | "duckduckgo")[];
613
+ apiKeys?: Record<string, string>;
614
+ cacheResults?: boolean;
615
+ cacheTTL?: number;
616
+ }, {
617
+ timeout?: number;
618
+ maxResults?: number;
619
+ enabled?: boolean;
620
+ providers?: ("google" | "bing" | "brave" | "duckduckgo")[];
621
+ apiKeys?: Record<string, string>;
622
+ cacheResults?: boolean;
623
+ cacheTTL?: number;
624
+ }>>;
625
+ cache: z.ZodDefault<z.ZodObject<{
626
+ enabled: z.ZodDefault<z.ZodBoolean>;
627
+ maxSize: z.ZodDefault<z.ZodNumber>;
628
+ defaultTTL: z.ZodDefault<z.ZodNumber>;
629
+ checkInterval: z.ZodDefault<z.ZodNumber>;
630
+ persistence: z.ZodDefault<z.ZodEnum<["none", "file", "redis"]>>;
631
+ persistencePath: z.ZodOptional<z.ZodString>;
632
+ }, "strip", z.ZodTypeAny, {
633
+ enabled?: boolean;
634
+ maxSize?: number;
635
+ defaultTTL?: number;
636
+ checkInterval?: number;
637
+ persistence?: "file" | "redis" | "none";
638
+ persistencePath?: string;
639
+ }, {
640
+ enabled?: boolean;
641
+ maxSize?: number;
642
+ defaultTTL?: number;
643
+ checkInterval?: number;
644
+ persistence?: "file" | "redis" | "none";
645
+ persistencePath?: string;
646
+ }>>;
647
+ logging: z.ZodDefault<z.ZodObject<{
648
+ level: z.ZodDefault<z.ZodEnum<["debug", "info", "warn", "error"]>>;
649
+ enableConsole: z.ZodDefault<z.ZodBoolean>;
650
+ enableFile: z.ZodDefault<z.ZodBoolean>;
651
+ logDir: z.ZodDefault<z.ZodString>;
652
+ maxFiles: z.ZodDefault<z.ZodNumber>;
653
+ maxSize: z.ZodDefault<z.ZodString>;
654
+ }, "strip", z.ZodTypeAny, {
655
+ level?: "debug" | "info" | "warn" | "error";
656
+ enableConsole?: boolean;
657
+ enableFile?: boolean;
658
+ logDir?: string;
659
+ maxFiles?: number;
660
+ maxSize?: string;
661
+ }, {
662
+ level?: "debug" | "info" | "warn" | "error";
663
+ enableConsole?: boolean;
664
+ enableFile?: boolean;
665
+ logDir?: string;
666
+ maxFiles?: number;
667
+ maxSize?: string;
668
+ }>>;
669
+ pipeline: z.ZodDefault<z.ZodObject<{
670
+ stages: z.ZodDefault<z.ZodObject<{
671
+ search: z.ZodDefault<z.ZodObject<{
672
+ enabled: z.ZodDefault<z.ZodBoolean>;
673
+ timeout: z.ZodDefault<z.ZodNumber>;
674
+ maxRetries: z.ZodDefault<z.ZodNumber>;
675
+ parallel: z.ZodDefault<z.ZodBoolean>;
676
+ required: z.ZodDefault<z.ZodBoolean>;
677
+ }, "strip", z.ZodTypeAny, {
678
+ timeout?: number;
679
+ maxRetries?: number;
680
+ enabled?: boolean;
681
+ parallel?: boolean;
682
+ required?: boolean;
683
+ }, {
684
+ timeout?: number;
685
+ maxRetries?: number;
686
+ enabled?: boolean;
687
+ parallel?: boolean;
688
+ required?: boolean;
689
+ }>>;
690
+ analysis: z.ZodDefault<z.ZodObject<{
691
+ enabled: z.ZodDefault<z.ZodBoolean>;
692
+ timeout: z.ZodDefault<z.ZodNumber>;
693
+ maxRetries: z.ZodDefault<z.ZodNumber>;
694
+ parallel: z.ZodDefault<z.ZodBoolean>;
695
+ required: z.ZodDefault<z.ZodBoolean>;
696
+ }, "strip", z.ZodTypeAny, {
697
+ timeout?: number;
698
+ maxRetries?: number;
699
+ enabled?: boolean;
700
+ parallel?: boolean;
701
+ required?: boolean;
702
+ }, {
703
+ timeout?: number;
704
+ maxRetries?: number;
705
+ enabled?: boolean;
706
+ parallel?: boolean;
707
+ required?: boolean;
708
+ }>>;
709
+ reasoning: z.ZodDefault<z.ZodObject<{
710
+ enabled: z.ZodDefault<z.ZodBoolean>;
711
+ timeout: z.ZodDefault<z.ZodNumber>;
712
+ maxRetries: z.ZodDefault<z.ZodNumber>;
713
+ parallel: z.ZodDefault<z.ZodBoolean>;
714
+ required: z.ZodDefault<z.ZodBoolean>;
715
+ }, "strip", z.ZodTypeAny, {
716
+ timeout?: number;
717
+ maxRetries?: number;
718
+ enabled?: boolean;
719
+ parallel?: boolean;
720
+ required?: boolean;
721
+ }, {
722
+ timeout?: number;
723
+ maxRetries?: number;
724
+ enabled?: boolean;
725
+ parallel?: boolean;
726
+ required?: boolean;
727
+ }>>;
728
+ learning: z.ZodDefault<z.ZodObject<{
729
+ enabled: z.ZodDefault<z.ZodBoolean>;
730
+ timeout: z.ZodDefault<z.ZodNumber>;
731
+ maxRetries: z.ZodDefault<z.ZodNumber>;
732
+ parallel: z.ZodDefault<z.ZodBoolean>;
733
+ required: z.ZodDefault<z.ZodBoolean>;
734
+ }, "strip", z.ZodTypeAny, {
735
+ timeout?: number;
736
+ maxRetries?: number;
737
+ enabled?: boolean;
738
+ parallel?: boolean;
739
+ required?: boolean;
740
+ }, {
741
+ timeout?: number;
742
+ maxRetries?: number;
743
+ enabled?: boolean;
744
+ parallel?: boolean;
745
+ required?: boolean;
746
+ }>>;
747
+ planning: z.ZodDefault<z.ZodObject<{
748
+ enabled: z.ZodDefault<z.ZodBoolean>;
749
+ timeout: z.ZodDefault<z.ZodNumber>;
750
+ maxRetries: z.ZodDefault<z.ZodNumber>;
751
+ parallel: z.ZodDefault<z.ZodBoolean>;
752
+ required: z.ZodDefault<z.ZodBoolean>;
753
+ }, "strip", z.ZodTypeAny, {
754
+ timeout?: number;
755
+ maxRetries?: number;
756
+ enabled?: boolean;
757
+ parallel?: boolean;
758
+ required?: boolean;
759
+ }, {
760
+ timeout?: number;
761
+ maxRetries?: number;
762
+ enabled?: boolean;
763
+ parallel?: boolean;
764
+ required?: boolean;
765
+ }>>;
766
+ creativity: z.ZodDefault<z.ZodObject<{
767
+ enabled: z.ZodDefault<z.ZodBoolean>;
768
+ timeout: z.ZodDefault<z.ZodNumber>;
769
+ maxRetries: z.ZodDefault<z.ZodNumber>;
770
+ parallel: z.ZodDefault<z.ZodBoolean>;
771
+ required: z.ZodDefault<z.ZodBoolean>;
772
+ }, "strip", z.ZodTypeAny, {
773
+ timeout?: number;
774
+ maxRetries?: number;
775
+ enabled?: boolean;
776
+ parallel?: boolean;
777
+ required?: boolean;
778
+ }, {
779
+ timeout?: number;
780
+ maxRetries?: number;
781
+ enabled?: boolean;
782
+ parallel?: boolean;
783
+ required?: boolean;
784
+ }>>;
785
+ synthesis: z.ZodDefault<z.ZodObject<{
786
+ enabled: z.ZodDefault<z.ZodBoolean>;
787
+ timeout: z.ZodDefault<z.ZodNumber>;
788
+ maxRetries: z.ZodDefault<z.ZodNumber>;
789
+ parallel: z.ZodDefault<z.ZodBoolean>;
790
+ required: z.ZodDefault<z.ZodBoolean>;
791
+ }, "strip", z.ZodTypeAny, {
792
+ timeout?: number;
793
+ maxRetries?: number;
794
+ enabled?: boolean;
795
+ parallel?: boolean;
796
+ required?: boolean;
797
+ }, {
798
+ timeout?: number;
799
+ maxRetries?: number;
800
+ enabled?: boolean;
801
+ parallel?: boolean;
802
+ required?: boolean;
803
+ }>>;
804
+ evaluation: z.ZodDefault<z.ZodObject<{
805
+ enabled: z.ZodDefault<z.ZodBoolean>;
806
+ timeout: z.ZodDefault<z.ZodNumber>;
807
+ maxRetries: z.ZodDefault<z.ZodNumber>;
808
+ parallel: z.ZodDefault<z.ZodBoolean>;
809
+ required: z.ZodDefault<z.ZodBoolean>;
810
+ }, "strip", z.ZodTypeAny, {
811
+ timeout?: number;
812
+ maxRetries?: number;
813
+ enabled?: boolean;
814
+ parallel?: boolean;
815
+ required?: boolean;
816
+ }, {
817
+ timeout?: number;
818
+ maxRetries?: number;
819
+ enabled?: boolean;
820
+ parallel?: boolean;
821
+ required?: boolean;
822
+ }>>;
823
+ }, "strip", z.ZodTypeAny, {
824
+ search?: {
825
+ timeout?: number;
826
+ maxRetries?: number;
827
+ enabled?: boolean;
828
+ parallel?: boolean;
829
+ required?: boolean;
830
+ };
831
+ analysis?: {
832
+ timeout?: number;
833
+ maxRetries?: number;
834
+ enabled?: boolean;
835
+ parallel?: boolean;
836
+ required?: boolean;
837
+ };
838
+ reasoning?: {
839
+ timeout?: number;
840
+ maxRetries?: number;
841
+ enabled?: boolean;
842
+ parallel?: boolean;
843
+ required?: boolean;
844
+ };
845
+ learning?: {
846
+ timeout?: number;
847
+ maxRetries?: number;
848
+ enabled?: boolean;
849
+ parallel?: boolean;
850
+ required?: boolean;
851
+ };
852
+ planning?: {
853
+ timeout?: number;
854
+ maxRetries?: number;
855
+ enabled?: boolean;
856
+ parallel?: boolean;
857
+ required?: boolean;
858
+ };
859
+ creativity?: {
860
+ timeout?: number;
861
+ maxRetries?: number;
862
+ enabled?: boolean;
863
+ parallel?: boolean;
864
+ required?: boolean;
865
+ };
866
+ synthesis?: {
867
+ timeout?: number;
868
+ maxRetries?: number;
869
+ enabled?: boolean;
870
+ parallel?: boolean;
871
+ required?: boolean;
872
+ };
873
+ evaluation?: {
874
+ timeout?: number;
875
+ maxRetries?: number;
876
+ enabled?: boolean;
877
+ parallel?: boolean;
878
+ required?: boolean;
879
+ };
880
+ }, {
881
+ search?: {
882
+ timeout?: number;
883
+ maxRetries?: number;
884
+ enabled?: boolean;
885
+ parallel?: boolean;
886
+ required?: boolean;
887
+ };
888
+ analysis?: {
889
+ timeout?: number;
890
+ maxRetries?: number;
891
+ enabled?: boolean;
892
+ parallel?: boolean;
893
+ required?: boolean;
894
+ };
895
+ reasoning?: {
896
+ timeout?: number;
897
+ maxRetries?: number;
898
+ enabled?: boolean;
899
+ parallel?: boolean;
900
+ required?: boolean;
901
+ };
902
+ learning?: {
903
+ timeout?: number;
904
+ maxRetries?: number;
905
+ enabled?: boolean;
906
+ parallel?: boolean;
907
+ required?: boolean;
908
+ };
909
+ planning?: {
910
+ timeout?: number;
911
+ maxRetries?: number;
912
+ enabled?: boolean;
913
+ parallel?: boolean;
914
+ required?: boolean;
915
+ };
916
+ creativity?: {
917
+ timeout?: number;
918
+ maxRetries?: number;
919
+ enabled?: boolean;
920
+ parallel?: boolean;
921
+ required?: boolean;
922
+ };
923
+ synthesis?: {
924
+ timeout?: number;
925
+ maxRetries?: number;
926
+ enabled?: boolean;
927
+ parallel?: boolean;
928
+ required?: boolean;
929
+ };
930
+ evaluation?: {
931
+ timeout?: number;
932
+ maxRetries?: number;
933
+ enabled?: boolean;
934
+ parallel?: boolean;
935
+ required?: boolean;
936
+ };
937
+ }>>;
938
+ enableDynamicPipeline: z.ZodDefault<z.ZodBoolean>;
939
+ enableStreaming: z.ZodDefault<z.ZodBoolean>;
940
+ maxConcurrentStages: z.ZodDefault<z.ZodNumber>;
941
+ defaultTimeout: z.ZodDefault<z.ZodNumber>;
942
+ errorHandling: z.ZodDefault<z.ZodEnum<["stop", "continue"]>>;
943
+ }, "strip", z.ZodTypeAny, {
944
+ stages?: {
945
+ search?: {
946
+ timeout?: number;
947
+ maxRetries?: number;
948
+ enabled?: boolean;
949
+ parallel?: boolean;
950
+ required?: boolean;
951
+ };
952
+ analysis?: {
953
+ timeout?: number;
954
+ maxRetries?: number;
955
+ enabled?: boolean;
956
+ parallel?: boolean;
957
+ required?: boolean;
958
+ };
959
+ reasoning?: {
960
+ timeout?: number;
961
+ maxRetries?: number;
962
+ enabled?: boolean;
963
+ parallel?: boolean;
964
+ required?: boolean;
965
+ };
966
+ learning?: {
967
+ timeout?: number;
968
+ maxRetries?: number;
969
+ enabled?: boolean;
970
+ parallel?: boolean;
971
+ required?: boolean;
972
+ };
973
+ planning?: {
974
+ timeout?: number;
975
+ maxRetries?: number;
976
+ enabled?: boolean;
977
+ parallel?: boolean;
978
+ required?: boolean;
979
+ };
980
+ creativity?: {
981
+ timeout?: number;
982
+ maxRetries?: number;
983
+ enabled?: boolean;
984
+ parallel?: boolean;
985
+ required?: boolean;
986
+ };
987
+ synthesis?: {
988
+ timeout?: number;
989
+ maxRetries?: number;
990
+ enabled?: boolean;
991
+ parallel?: boolean;
992
+ required?: boolean;
993
+ };
994
+ evaluation?: {
995
+ timeout?: number;
996
+ maxRetries?: number;
997
+ enabled?: boolean;
998
+ parallel?: boolean;
999
+ required?: boolean;
1000
+ };
1001
+ };
1002
+ enableDynamicPipeline?: boolean;
1003
+ enableStreaming?: boolean;
1004
+ maxConcurrentStages?: number;
1005
+ defaultTimeout?: number;
1006
+ errorHandling?: "stop" | "continue";
1007
+ }, {
1008
+ stages?: {
1009
+ search?: {
1010
+ timeout?: number;
1011
+ maxRetries?: number;
1012
+ enabled?: boolean;
1013
+ parallel?: boolean;
1014
+ required?: boolean;
1015
+ };
1016
+ analysis?: {
1017
+ timeout?: number;
1018
+ maxRetries?: number;
1019
+ enabled?: boolean;
1020
+ parallel?: boolean;
1021
+ required?: boolean;
1022
+ };
1023
+ reasoning?: {
1024
+ timeout?: number;
1025
+ maxRetries?: number;
1026
+ enabled?: boolean;
1027
+ parallel?: boolean;
1028
+ required?: boolean;
1029
+ };
1030
+ learning?: {
1031
+ timeout?: number;
1032
+ maxRetries?: number;
1033
+ enabled?: boolean;
1034
+ parallel?: boolean;
1035
+ required?: boolean;
1036
+ };
1037
+ planning?: {
1038
+ timeout?: number;
1039
+ maxRetries?: number;
1040
+ enabled?: boolean;
1041
+ parallel?: boolean;
1042
+ required?: boolean;
1043
+ };
1044
+ creativity?: {
1045
+ timeout?: number;
1046
+ maxRetries?: number;
1047
+ enabled?: boolean;
1048
+ parallel?: boolean;
1049
+ required?: boolean;
1050
+ };
1051
+ synthesis?: {
1052
+ timeout?: number;
1053
+ maxRetries?: number;
1054
+ enabled?: boolean;
1055
+ parallel?: boolean;
1056
+ required?: boolean;
1057
+ };
1058
+ evaluation?: {
1059
+ timeout?: number;
1060
+ maxRetries?: number;
1061
+ enabled?: boolean;
1062
+ parallel?: boolean;
1063
+ required?: boolean;
1064
+ };
1065
+ };
1066
+ enableDynamicPipeline?: boolean;
1067
+ enableStreaming?: boolean;
1068
+ maxConcurrentStages?: number;
1069
+ defaultTimeout?: number;
1070
+ errorHandling?: "stop" | "continue";
1071
+ }>>;
1072
+ security: z.ZodDefault<z.ZodObject<{
1073
+ enableInputSanitization: z.ZodDefault<z.ZodBoolean>;
1074
+ enableRateLimiting: z.ZodDefault<z.ZodBoolean>;
1075
+ maxRequestsPerMinute: z.ZodDefault<z.ZodNumber>;
1076
+ maxQueryLength: z.ZodDefault<z.ZodNumber>;
1077
+ }, "strip", z.ZodTypeAny, {
1078
+ enableInputSanitization?: boolean;
1079
+ enableRateLimiting?: boolean;
1080
+ maxRequestsPerMinute?: number;
1081
+ maxQueryLength?: number;
1082
+ }, {
1083
+ enableInputSanitization?: boolean;
1084
+ enableRateLimiting?: boolean;
1085
+ maxRequestsPerMinute?: number;
1086
+ maxQueryLength?: number;
1087
+ }>>;
1088
+ session: z.ZodDefault<z.ZodObject<{
1089
+ maxSessions: z.ZodDefault<z.ZodNumber>;
1090
+ sessionTTL: z.ZodDefault<z.ZodNumber>;
1091
+ enablePersistence: z.ZodDefault<z.ZodBoolean>;
1092
+ persistencePath: z.ZodOptional<z.ZodString>;
1093
+ }, "strip", z.ZodTypeAny, {
1094
+ persistencePath?: string;
1095
+ maxSessions?: number;
1096
+ sessionTTL?: number;
1097
+ enablePersistence?: boolean;
1098
+ }, {
1099
+ persistencePath?: string;
1100
+ maxSessions?: number;
1101
+ sessionTTL?: number;
1102
+ enablePersistence?: boolean;
1103
+ }>>;
1104
+ metrics: z.ZodDefault<z.ZodObject<{
1105
+ enabled: z.ZodDefault<z.ZodBoolean>;
1106
+ collectDetailedMetrics: z.ZodDefault<z.ZodBoolean>;
1107
+ metricsInterval: z.ZodDefault<z.ZodNumber>;
1108
+ }, "strip", z.ZodTypeAny, {
1109
+ enabled?: boolean;
1110
+ collectDetailedMetrics?: boolean;
1111
+ metricsInterval?: number;
1112
+ }, {
1113
+ enabled?: boolean;
1114
+ collectDetailedMetrics?: boolean;
1115
+ metricsInterval?: number;
1116
+ }>>;
1117
+ }, "strip", z.ZodTypeAny, {
1118
+ search?: {
1119
+ timeout?: number;
1120
+ maxResults?: number;
1121
+ enabled?: boolean;
1122
+ providers?: ("google" | "bing" | "brave" | "duckduckgo")[];
1123
+ apiKeys?: Record<string, string>;
1124
+ cacheResults?: boolean;
1125
+ cacheTTL?: number;
1126
+ };
1127
+ cache?: {
1128
+ enabled?: boolean;
1129
+ maxSize?: number;
1130
+ defaultTTL?: number;
1131
+ checkInterval?: number;
1132
+ persistence?: "file" | "redis" | "none";
1133
+ persistencePath?: string;
1134
+ };
1135
+ llm?: {
1136
+ timeout?: number;
1137
+ maxRetries?: number;
1138
+ provider?: "gemini" | "claude" | "openai" | "kimi" | "custom" | "cli";
1139
+ apiKey?: string;
1140
+ baseUrl?: string;
1141
+ model?: string;
1142
+ cliCommand?: string;
1143
+ cliArgs?: string[];
1144
+ cliPromptPassingMethod?: "stdin" | "arg";
1145
+ cliPromptFlag?: string;
1146
+ rateLimitPerMinute?: number;
1147
+ };
1148
+ metrics?: {
1149
+ enabled?: boolean;
1150
+ collectDetailedMetrics?: boolean;
1151
+ metricsInterval?: number;
1152
+ };
1153
+ session?: {
1154
+ persistencePath?: string;
1155
+ maxSessions?: number;
1156
+ sessionTTL?: number;
1157
+ enablePersistence?: boolean;
1158
+ };
1159
+ version?: string;
1160
+ logging?: {
1161
+ level?: "debug" | "info" | "warn" | "error";
1162
+ enableConsole?: boolean;
1163
+ enableFile?: boolean;
1164
+ logDir?: string;
1165
+ maxFiles?: number;
1166
+ maxSize?: string;
1167
+ };
1168
+ pipeline?: {
1169
+ stages?: {
1170
+ search?: {
1171
+ timeout?: number;
1172
+ maxRetries?: number;
1173
+ enabled?: boolean;
1174
+ parallel?: boolean;
1175
+ required?: boolean;
1176
+ };
1177
+ analysis?: {
1178
+ timeout?: number;
1179
+ maxRetries?: number;
1180
+ enabled?: boolean;
1181
+ parallel?: boolean;
1182
+ required?: boolean;
1183
+ };
1184
+ reasoning?: {
1185
+ timeout?: number;
1186
+ maxRetries?: number;
1187
+ enabled?: boolean;
1188
+ parallel?: boolean;
1189
+ required?: boolean;
1190
+ };
1191
+ learning?: {
1192
+ timeout?: number;
1193
+ maxRetries?: number;
1194
+ enabled?: boolean;
1195
+ parallel?: boolean;
1196
+ required?: boolean;
1197
+ };
1198
+ planning?: {
1199
+ timeout?: number;
1200
+ maxRetries?: number;
1201
+ enabled?: boolean;
1202
+ parallel?: boolean;
1203
+ required?: boolean;
1204
+ };
1205
+ creativity?: {
1206
+ timeout?: number;
1207
+ maxRetries?: number;
1208
+ enabled?: boolean;
1209
+ parallel?: boolean;
1210
+ required?: boolean;
1211
+ };
1212
+ synthesis?: {
1213
+ timeout?: number;
1214
+ maxRetries?: number;
1215
+ enabled?: boolean;
1216
+ parallel?: boolean;
1217
+ required?: boolean;
1218
+ };
1219
+ evaluation?: {
1220
+ timeout?: number;
1221
+ maxRetries?: number;
1222
+ enabled?: boolean;
1223
+ parallel?: boolean;
1224
+ required?: boolean;
1225
+ };
1226
+ };
1227
+ enableDynamicPipeline?: boolean;
1228
+ enableStreaming?: boolean;
1229
+ maxConcurrentStages?: number;
1230
+ defaultTimeout?: number;
1231
+ errorHandling?: "stop" | "continue";
1232
+ };
1233
+ security?: {
1234
+ enableInputSanitization?: boolean;
1235
+ enableRateLimiting?: boolean;
1236
+ maxRequestsPerMinute?: number;
1237
+ maxQueryLength?: number;
1238
+ };
1239
+ }, {
1240
+ search?: {
1241
+ timeout?: number;
1242
+ maxResults?: number;
1243
+ enabled?: boolean;
1244
+ providers?: ("google" | "bing" | "brave" | "duckduckgo")[];
1245
+ apiKeys?: Record<string, string>;
1246
+ cacheResults?: boolean;
1247
+ cacheTTL?: number;
1248
+ };
1249
+ cache?: {
1250
+ enabled?: boolean;
1251
+ maxSize?: number;
1252
+ defaultTTL?: number;
1253
+ checkInterval?: number;
1254
+ persistence?: "file" | "redis" | "none";
1255
+ persistencePath?: string;
1256
+ };
1257
+ llm?: {
1258
+ timeout?: number;
1259
+ maxRetries?: number;
1260
+ provider?: "gemini" | "claude" | "openai" | "kimi" | "custom" | "cli";
1261
+ apiKey?: string;
1262
+ baseUrl?: string;
1263
+ model?: string;
1264
+ cliCommand?: string;
1265
+ cliArgs?: string[];
1266
+ cliPromptPassingMethod?: "stdin" | "arg";
1267
+ cliPromptFlag?: string;
1268
+ rateLimitPerMinute?: number;
1269
+ };
1270
+ metrics?: {
1271
+ enabled?: boolean;
1272
+ collectDetailedMetrics?: boolean;
1273
+ metricsInterval?: number;
1274
+ };
1275
+ session?: {
1276
+ persistencePath?: string;
1277
+ maxSessions?: number;
1278
+ sessionTTL?: number;
1279
+ enablePersistence?: boolean;
1280
+ };
1281
+ version?: string;
1282
+ logging?: {
1283
+ level?: "debug" | "info" | "warn" | "error";
1284
+ enableConsole?: boolean;
1285
+ enableFile?: boolean;
1286
+ logDir?: string;
1287
+ maxFiles?: number;
1288
+ maxSize?: string;
1289
+ };
1290
+ pipeline?: {
1291
+ stages?: {
1292
+ search?: {
1293
+ timeout?: number;
1294
+ maxRetries?: number;
1295
+ enabled?: boolean;
1296
+ parallel?: boolean;
1297
+ required?: boolean;
1298
+ };
1299
+ analysis?: {
1300
+ timeout?: number;
1301
+ maxRetries?: number;
1302
+ enabled?: boolean;
1303
+ parallel?: boolean;
1304
+ required?: boolean;
1305
+ };
1306
+ reasoning?: {
1307
+ timeout?: number;
1308
+ maxRetries?: number;
1309
+ enabled?: boolean;
1310
+ parallel?: boolean;
1311
+ required?: boolean;
1312
+ };
1313
+ learning?: {
1314
+ timeout?: number;
1315
+ maxRetries?: number;
1316
+ enabled?: boolean;
1317
+ parallel?: boolean;
1318
+ required?: boolean;
1319
+ };
1320
+ planning?: {
1321
+ timeout?: number;
1322
+ maxRetries?: number;
1323
+ enabled?: boolean;
1324
+ parallel?: boolean;
1325
+ required?: boolean;
1326
+ };
1327
+ creativity?: {
1328
+ timeout?: number;
1329
+ maxRetries?: number;
1330
+ enabled?: boolean;
1331
+ parallel?: boolean;
1332
+ required?: boolean;
1333
+ };
1334
+ synthesis?: {
1335
+ timeout?: number;
1336
+ maxRetries?: number;
1337
+ enabled?: boolean;
1338
+ parallel?: boolean;
1339
+ required?: boolean;
1340
+ };
1341
+ evaluation?: {
1342
+ timeout?: number;
1343
+ maxRetries?: number;
1344
+ enabled?: boolean;
1345
+ parallel?: boolean;
1346
+ required?: boolean;
1347
+ };
1348
+ };
1349
+ enableDynamicPipeline?: boolean;
1350
+ enableStreaming?: boolean;
1351
+ maxConcurrentStages?: number;
1352
+ defaultTimeout?: number;
1353
+ errorHandling?: "stop" | "continue";
1354
+ };
1355
+ security?: {
1356
+ enableInputSanitization?: boolean;
1357
+ enableRateLimiting?: boolean;
1358
+ maxRequestsPerMinute?: number;
1359
+ maxQueryLength?: number;
1360
+ };
1361
+ }>;
1362
+ export type GThinkingConfig = z.infer<typeof GThinkingConfigSchema>;
1363
+ /**
1364
+ * Default configuration
1365
+ */
1366
+ export declare const defaultConfig: GThinkingConfig;
1367
+ /**
1368
+ * Configuration manager class
1369
+ */
1370
+ export declare class ConfigManager {
1371
+ private config;
1372
+ private validators;
1373
+ constructor(initialConfig?: Partial<GThinkingConfig>);
1374
+ /**
1375
+ * Get the current configuration
1376
+ * @returns The current configuration
1377
+ */
1378
+ getConfig(): GThinkingConfig;
1379
+ /**
1380
+ * Get a specific configuration value
1381
+ * @param path - The configuration path (e.g., 'llm.provider')
1382
+ * @returns The configuration value
1383
+ */
1384
+ get<T>(path: string): T | undefined;
1385
+ /**
1386
+ * Update the configuration
1387
+ * @param updates - Configuration updates
1388
+ */
1389
+ updateConfig(updates: Partial<GThinkingConfig>): void;
1390
+ /**
1391
+ * Update a specific configuration value
1392
+ * @param path - The configuration path
1393
+ * @param value - The new value
1394
+ */
1395
+ set<T>(path: string, value: T): void;
1396
+ /**
1397
+ * Load configuration from environment variables
1398
+ */
1399
+ loadFromEnvironment(): void;
1400
+ /**
1401
+ * Register a custom validator
1402
+ * @param path - The configuration path
1403
+ * @param validator - The validator function
1404
+ */
1405
+ registerValidator(path: string, validator: (value: unknown) => boolean): void;
1406
+ /**
1407
+ * Merge configurations
1408
+ * @param base - Base configuration
1409
+ * @param override - Override configuration
1410
+ * @returns Merged configuration
1411
+ */
1412
+ private mergeConfig;
1413
+ /**
1414
+ * Validate the configuration
1415
+ */
1416
+ private validateConfig;
1417
+ }
1418
+ export declare const configManager: ConfigManager;
1419
+ //# sourceMappingURL=config.d.ts.map