monty-autonomous-fullstack-dev-multillm 1.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 (186) hide show
  1. package/LICENSE +81 -0
  2. package/README.md +608 -0
  3. package/bin/cli.js +448 -0
  4. package/dist/agents/coding.d.ts +15 -0
  5. package/dist/agents/coding.d.ts.map +1 -0
  6. package/dist/agents/coding.js +189 -0
  7. package/dist/agents/coding.js.map +1 -0
  8. package/dist/agents/initializer.d.ts +15 -0
  9. package/dist/agents/initializer.d.ts.map +1 -0
  10. package/dist/agents/initializer.js +87 -0
  11. package/dist/agents/initializer.js.map +1 -0
  12. package/dist/agents/prompts/arbitrator.md +143 -0
  13. package/dist/agents/prompts/coding.md +247 -0
  14. package/dist/agents/prompts/initializer.md +98 -0
  15. package/dist/config/agent-config.d.ts +103 -0
  16. package/dist/config/agent-config.d.ts.map +1 -0
  17. package/dist/config/agent-config.js +138 -0
  18. package/dist/config/agent-config.js.map +1 -0
  19. package/dist/config/auth-config.d.ts +152 -0
  20. package/dist/config/auth-config.d.ts.map +1 -0
  21. package/dist/config/auth-config.js +139 -0
  22. package/dist/config/auth-config.js.map +1 -0
  23. package/dist/config/mcp-config.d.ts +109 -0
  24. package/dist/config/mcp-config.d.ts.map +1 -0
  25. package/dist/config/mcp-config.js +234 -0
  26. package/dist/config/mcp-config.js.map +1 -0
  27. package/dist/config/provider-config.d.ts +139 -0
  28. package/dist/config/provider-config.d.ts.map +1 -0
  29. package/dist/config/provider-config.js +344 -0
  30. package/dist/config/provider-config.js.map +1 -0
  31. package/dist/config/subagents-config.d.ts +85 -0
  32. package/dist/config/subagents-config.d.ts.map +1 -0
  33. package/dist/config/subagents-config.js +430 -0
  34. package/dist/config/subagents-config.js.map +1 -0
  35. package/dist/index.d.ts +14 -0
  36. package/dist/index.d.ts.map +1 -0
  37. package/dist/index.js +385 -0
  38. package/dist/index.js.map +1 -0
  39. package/dist/orchestrator/arbitrator.d.ts +93 -0
  40. package/dist/orchestrator/arbitrator.d.ts.map +1 -0
  41. package/dist/orchestrator/arbitrator.js +330 -0
  42. package/dist/orchestrator/arbitrator.js.map +1 -0
  43. package/dist/orchestrator/index.d.ts +113 -0
  44. package/dist/orchestrator/index.d.ts.map +1 -0
  45. package/dist/orchestrator/index.js +217 -0
  46. package/dist/orchestrator/index.js.map +1 -0
  47. package/dist/orchestrator/review-coordinator.d.ts +143 -0
  48. package/dist/orchestrator/review-coordinator.d.ts.map +1 -0
  49. package/dist/orchestrator/review-coordinator.js +401 -0
  50. package/dist/orchestrator/review-coordinator.js.map +1 -0
  51. package/dist/orchestrator/task-classifier.d.ts +87 -0
  52. package/dist/orchestrator/task-classifier.d.ts.map +1 -0
  53. package/dist/orchestrator/task-classifier.js +250 -0
  54. package/dist/orchestrator/task-classifier.js.map +1 -0
  55. package/dist/providers/anthropic-provider.d.ts +64 -0
  56. package/dist/providers/anthropic-provider.d.ts.map +1 -0
  57. package/dist/providers/anthropic-provider.js +264 -0
  58. package/dist/providers/anthropic-provider.js.map +1 -0
  59. package/dist/providers/base-provider.d.ts +219 -0
  60. package/dist/providers/base-provider.d.ts.map +1 -0
  61. package/dist/providers/base-provider.js +143 -0
  62. package/dist/providers/base-provider.js.map +1 -0
  63. package/dist/providers/cursor-provider.d.ts +82 -0
  64. package/dist/providers/cursor-provider.d.ts.map +1 -0
  65. package/dist/providers/cursor-provider.js +321 -0
  66. package/dist/providers/cursor-provider.js.map +1 -0
  67. package/dist/providers/google-provider.d.ts +75 -0
  68. package/dist/providers/google-provider.d.ts.map +1 -0
  69. package/dist/providers/google-provider.js +274 -0
  70. package/dist/providers/google-provider.js.map +1 -0
  71. package/dist/providers/index.d.ts +92 -0
  72. package/dist/providers/index.d.ts.map +1 -0
  73. package/dist/providers/index.js +233 -0
  74. package/dist/providers/index.js.map +1 -0
  75. package/dist/providers/openai-provider.d.ts +83 -0
  76. package/dist/providers/openai-provider.d.ts.map +1 -0
  77. package/dist/providers/openai-provider.js +295 -0
  78. package/dist/providers/openai-provider.js.map +1 -0
  79. package/dist/templates/feature_list.template.json +66 -0
  80. package/dist/templates/progress.template.txt +51 -0
  81. package/dist/utils/auth-manager.d.ts +121 -0
  82. package/dist/utils/auth-manager.d.ts.map +1 -0
  83. package/dist/utils/auth-manager.js +560 -0
  84. package/dist/utils/auth-manager.js.map +1 -0
  85. package/dist/utils/budget-enforcer.d.ts +181 -0
  86. package/dist/utils/budget-enforcer.d.ts.map +1 -0
  87. package/dist/utils/budget-enforcer.js +386 -0
  88. package/dist/utils/budget-enforcer.js.map +1 -0
  89. package/dist/utils/chatgpt-detector.d.ts +51 -0
  90. package/dist/utils/chatgpt-detector.d.ts.map +1 -0
  91. package/dist/utils/chatgpt-detector.js +274 -0
  92. package/dist/utils/chatgpt-detector.js.map +1 -0
  93. package/dist/utils/claude-code-detector.d.ts +39 -0
  94. package/dist/utils/claude-code-detector.d.ts.map +1 -0
  95. package/dist/utils/claude-code-detector.js +153 -0
  96. package/dist/utils/claude-code-detector.js.map +1 -0
  97. package/dist/utils/code-quality.d.ts +58 -0
  98. package/dist/utils/code-quality.d.ts.map +1 -0
  99. package/dist/utils/code-quality.js +258 -0
  100. package/dist/utils/code-quality.js.map +1 -0
  101. package/dist/utils/context-primer.d.ts +50 -0
  102. package/dist/utils/context-primer.d.ts.map +1 -0
  103. package/dist/utils/context-primer.js +429 -0
  104. package/dist/utils/context-primer.js.map +1 -0
  105. package/dist/utils/dependency-management.d.ts +40 -0
  106. package/dist/utils/dependency-management.d.ts.map +1 -0
  107. package/dist/utils/dependency-management.js +123 -0
  108. package/dist/utils/dependency-management.js.map +1 -0
  109. package/dist/utils/environment-validation.d.ts +33 -0
  110. package/dist/utils/environment-validation.d.ts.map +1 -0
  111. package/dist/utils/environment-validation.js +136 -0
  112. package/dist/utils/environment-validation.js.map +1 -0
  113. package/dist/utils/error-recovery.d.ts +60 -0
  114. package/dist/utils/error-recovery.d.ts.map +1 -0
  115. package/dist/utils/error-recovery.js +183 -0
  116. package/dist/utils/error-recovery.js.map +1 -0
  117. package/dist/utils/feature-list.d.ts +102 -0
  118. package/dist/utils/feature-list.d.ts.map +1 -0
  119. package/dist/utils/feature-list.js +191 -0
  120. package/dist/utils/feature-list.js.map +1 -0
  121. package/dist/utils/gemini-detector.d.ts +65 -0
  122. package/dist/utils/gemini-detector.d.ts.map +1 -0
  123. package/dist/utils/gemini-detector.js +340 -0
  124. package/dist/utils/gemini-detector.js.map +1 -0
  125. package/dist/utils/git-utils.d.ts +48 -0
  126. package/dist/utils/git-utils.d.ts.map +1 -0
  127. package/dist/utils/git-utils.js +110 -0
  128. package/dist/utils/git-utils.js.map +1 -0
  129. package/dist/utils/health-check.d.ts +32 -0
  130. package/dist/utils/health-check.d.ts.map +1 -0
  131. package/dist/utils/health-check.js +152 -0
  132. package/dist/utils/health-check.js.map +1 -0
  133. package/dist/utils/hooks-manager.d.ts +154 -0
  134. package/dist/utils/hooks-manager.d.ts.map +1 -0
  135. package/dist/utils/hooks-manager.js +359 -0
  136. package/dist/utils/hooks-manager.js.map +1 -0
  137. package/dist/utils/multi-auth-manager.d.ts +144 -0
  138. package/dist/utils/multi-auth-manager.d.ts.map +1 -0
  139. package/dist/utils/multi-auth-manager.js +588 -0
  140. package/dist/utils/multi-auth-manager.js.map +1 -0
  141. package/dist/utils/progress.d.ts +49 -0
  142. package/dist/utils/progress.d.ts.map +1 -0
  143. package/dist/utils/progress.js +209 -0
  144. package/dist/utils/progress.js.map +1 -0
  145. package/dist/utils/project-detection.d.ts +40 -0
  146. package/dist/utils/project-detection.d.ts.map +1 -0
  147. package/dist/utils/project-detection.js +230 -0
  148. package/dist/utils/project-detection.js.map +1 -0
  149. package/dist/utils/session-manager.d.ts +119 -0
  150. package/dist/utils/session-manager.d.ts.map +1 -0
  151. package/dist/utils/session-manager.js +389 -0
  152. package/dist/utils/session-manager.js.map +1 -0
  153. package/dist/utils/skills-manager.d.ts +113 -0
  154. package/dist/utils/skills-manager.d.ts.map +1 -0
  155. package/dist/utils/skills-manager.js +332 -0
  156. package/dist/utils/skills-manager.js.map +1 -0
  157. package/dist/utils/structured-output.d.ts +117 -0
  158. package/dist/utils/structured-output.d.ts.map +1 -0
  159. package/dist/utils/structured-output.js +191 -0
  160. package/dist/utils/structured-output.js.map +1 -0
  161. package/dist/utils/subagent-manager.d.ts +143 -0
  162. package/dist/utils/subagent-manager.d.ts.map +1 -0
  163. package/dist/utils/subagent-manager.js +326 -0
  164. package/dist/utils/subagent-manager.js.map +1 -0
  165. package/dist/utils/supabase-setup.d.ts +50 -0
  166. package/dist/utils/supabase-setup.d.ts.map +1 -0
  167. package/dist/utils/supabase-setup.js +151 -0
  168. package/dist/utils/supabase-setup.js.map +1 -0
  169. package/dist/utils/token-refresh.d.ts +21 -0
  170. package/dist/utils/token-refresh.d.ts.map +1 -0
  171. package/dist/utils/token-refresh.js +77 -0
  172. package/dist/utils/token-refresh.js.map +1 -0
  173. package/dist/utils/tos-warning.d.ts +115 -0
  174. package/dist/utils/tos-warning.d.ts.map +1 -0
  175. package/dist/utils/tos-warning.js +304 -0
  176. package/dist/utils/tos-warning.js.map +1 -0
  177. package/dist/utils/usage-monitor.d.ts +156 -0
  178. package/dist/utils/usage-monitor.d.ts.map +1 -0
  179. package/dist/utils/usage-monitor.js +296 -0
  180. package/dist/utils/usage-monitor.js.map +1 -0
  181. package/package.json +105 -0
  182. package/scripts/init.ps1 +73 -0
  183. package/scripts/init.sh +86 -0
  184. package/scripts/test-auth.sh +90 -0
  185. package/templates/feature_list.template.json +66 -0
  186. package/templates/progress.template.txt +51 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"google-provider.js","sourceRoot":"","sources":["../../src/providers/google-provider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,92 @@
1
+ /**
2
+ * Provider Factory
3
+ * Central factory for creating and managing AI provider instances.
4
+ * Supports multi-provider orchestration with automatic fallback.
5
+ *
6
+ * Copyright (c) 2025 Dobeu Tech Solutions LLC
7
+ * Licensed under CC BY-NC 4.0
8
+ */
9
+ import { BaseProvider, type AgentMessage, type QueryOptions } from './base-provider.js';
10
+ import { AnthropicProvider } from './anthropic-provider.js';
11
+ import { OpenAIProvider } from './openai-provider.js';
12
+ import { GoogleProvider } from './google-provider.js';
13
+ import { CursorProvider } from './cursor-provider.js';
14
+ import { type ProviderName } from '../config/provider-config.js';
15
+ /**
16
+ * Get or create a provider instance
17
+ */
18
+ export declare function getProvider(name: ProviderName, apiKey?: string): BaseProvider;
19
+ /**
20
+ * Create a new provider instance
21
+ */
22
+ export declare function createProvider(name: ProviderName, apiKey?: string): BaseProvider;
23
+ /**
24
+ * Get all available providers (initialized and authenticated)
25
+ */
26
+ export declare function getAvailableProviders(): Promise<BaseProvider[]>;
27
+ /**
28
+ * Check which providers are available and return their status
29
+ */
30
+ export declare function getProviderStatuses(): Promise<Map<ProviderName, {
31
+ available: boolean;
32
+ authenticated: boolean;
33
+ error?: string;
34
+ }>>;
35
+ /**
36
+ * Get the default provider (Anthropic)
37
+ */
38
+ export declare function getDefaultProvider(): BaseProvider;
39
+ /**
40
+ * Clear provider registry (for testing or re-initialization)
41
+ */
42
+ export declare function clearProviderRegistry(): void;
43
+ /**
44
+ * Provider factory configuration
45
+ */
46
+ export interface ProviderFactoryConfig {
47
+ defaultProvider: ProviderName;
48
+ fallbackEnabled: boolean;
49
+ fallbackOrder: ProviderName[];
50
+ credentials: Partial<Record<ProviderName, string>>;
51
+ }
52
+ /**
53
+ * Configure the provider factory
54
+ */
55
+ export declare function configureProviderFactory(config: Partial<ProviderFactoryConfig>): void;
56
+ /**
57
+ * Get current factory configuration
58
+ */
59
+ export declare function getFactoryConfig(): ProviderFactoryConfig;
60
+ /**
61
+ * Execute a query with automatic fallback
62
+ * Tries the primary provider first, then falls back to alternatives if enabled
63
+ */
64
+ export declare function queryWithFallback(prompt: string, options: QueryOptions & {
65
+ preferredProvider?: ProviderName;
66
+ }): AsyncGenerator<AgentMessage, void, unknown>;
67
+ /**
68
+ * Check if a specific provider is available
69
+ */
70
+ export declare function isProviderAvailable(name: ProviderName): Promise<boolean>;
71
+ /**
72
+ * Get provider by name with type assertion
73
+ */
74
+ export declare function getAnthropicProvider(apiKey?: string): AnthropicProvider;
75
+ export declare function getOpenAIProvider(apiKey?: string): OpenAIProvider;
76
+ export declare function getGoogleProvider(apiKey?: string): GoogleProvider;
77
+ export declare function getCursorProvider(apiKey?: string): CursorProvider;
78
+ export { BaseProvider, AnthropicProvider, OpenAIProvider, GoogleProvider, CursorProvider, type AgentMessage, type QueryOptions, };
79
+ declare const _default: {
80
+ getProvider: typeof getProvider;
81
+ createProvider: typeof createProvider;
82
+ getAvailableProviders: typeof getAvailableProviders;
83
+ getProviderStatuses: typeof getProviderStatuses;
84
+ getDefaultProvider: typeof getDefaultProvider;
85
+ clearProviderRegistry: typeof clearProviderRegistry;
86
+ configureProviderFactory: typeof configureProviderFactory;
87
+ getFactoryConfig: typeof getFactoryConfig;
88
+ queryWithFallback: typeof queryWithFallback;
89
+ isProviderAvailable: typeof isProviderAvailable;
90
+ };
91
+ export default _default;
92
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAA2B,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAE,cAAc,EAAwB,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAwB,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAwB,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EACL,KAAK,YAAY,EAIlB,MAAM,8BAA8B,CAAC;AAOtC;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,CAe7E;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,CAahF;AAED;;GAEG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAmBrE;AAED;;GAEG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE;IACrE,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CAAC,CA0BF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,YAAY,CAEjD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,eAAe,EAAE,YAAY,CAAC;IAC9B,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;CACpD;AAcD;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG,IAAI,CASrF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,qBAAqB,CAExD;AAED;;;GAGG;AACH,wBAAuB,iBAAiB,CACtC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,YAAY,GAAG;IAAE,iBAAiB,CAAC,EAAE,YAAY,CAAA;CAAE,GAC3D,cAAc,CAAC,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC,CAsD7C;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAO9E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,iBAAiB,CAEvE;AAED,wBAAgB,iBAAiB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,cAAc,CAEjE;AAED,wBAAgB,iBAAiB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,cAAc,CAEjE;AAED,wBAAgB,iBAAiB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,cAAc,CAEjE;AAGD,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,cAAc,EACd,KAAK,YAAY,EACjB,KAAK,YAAY,GAClB,CAAC;;;;;;;;;;;;;AAEF,wBAWE"}
@@ -0,0 +1,233 @@
1
+ /**
2
+ * Provider Factory
3
+ * Central factory for creating and managing AI provider instances.
4
+ * Supports multi-provider orchestration with automatic fallback.
5
+ *
6
+ * Copyright (c) 2025 Dobeu Tech Solutions LLC
7
+ * Licensed under CC BY-NC 4.0
8
+ */
9
+ import { BaseProvider } from './base-provider.js';
10
+ import { AnthropicProvider, createAnthropicProvider } from './anthropic-provider.js';
11
+ import { OpenAIProvider, createOpenAIProvider } from './openai-provider.js';
12
+ import { GoogleProvider, createGoogleProvider } from './google-provider.js';
13
+ import { CursorProvider, createCursorProvider } from './cursor-provider.js';
14
+ import { PROVIDER_CONFIGS, getProviderConfig, } from '../config/provider-config.js';
15
+ /**
16
+ * Provider registry - singleton instances
17
+ */
18
+ const providerRegistry = new Map();
19
+ /**
20
+ * Get or create a provider instance
21
+ */
22
+ export function getProvider(name, apiKey) {
23
+ // Check if already created
24
+ let provider = providerRegistry.get(name);
25
+ if (provider) {
26
+ // Update API key if provided
27
+ if (apiKey && 'setApiKey' in provider) {
28
+ provider.setApiKey(apiKey);
29
+ }
30
+ return provider;
31
+ }
32
+ // Create new provider
33
+ provider = createProvider(name, apiKey);
34
+ providerRegistry.set(name, provider);
35
+ return provider;
36
+ }
37
+ /**
38
+ * Create a new provider instance
39
+ */
40
+ export function createProvider(name, apiKey) {
41
+ switch (name) {
42
+ case 'anthropic':
43
+ return createAnthropicProvider(apiKey);
44
+ case 'openai':
45
+ return createOpenAIProvider(apiKey);
46
+ case 'google':
47
+ return createGoogleProvider(apiKey);
48
+ case 'cursor':
49
+ return createCursorProvider(apiKey);
50
+ default:
51
+ throw new Error(`Unknown provider: ${name}`);
52
+ }
53
+ }
54
+ /**
55
+ * Get all available providers (initialized and authenticated)
56
+ */
57
+ export async function getAvailableProviders() {
58
+ const available = [];
59
+ for (const config of Object.values(PROVIDER_CONFIGS)) {
60
+ if (!config.enabled)
61
+ continue;
62
+ try {
63
+ const provider = getProvider(config.name);
64
+ const isValid = await provider.validateCredentials();
65
+ if (isValid) {
66
+ available.push(provider);
67
+ }
68
+ }
69
+ catch {
70
+ // Provider not available (SDK not installed, etc.)
71
+ continue;
72
+ }
73
+ }
74
+ return available;
75
+ }
76
+ /**
77
+ * Check which providers are available and return their status
78
+ */
79
+ export async function getProviderStatuses() {
80
+ const statuses = new Map();
81
+ for (const config of Object.values(PROVIDER_CONFIGS)) {
82
+ try {
83
+ const provider = getProvider(config.name);
84
+ const isAuthenticated = await provider.validateCredentials();
85
+ statuses.set(config.name, {
86
+ available: provider.getStatus().available,
87
+ authenticated: isAuthenticated,
88
+ });
89
+ }
90
+ catch (error) {
91
+ statuses.set(config.name, {
92
+ available: false,
93
+ authenticated: false,
94
+ error: error instanceof Error ? error.message : 'Unknown error',
95
+ });
96
+ }
97
+ }
98
+ return statuses;
99
+ }
100
+ /**
101
+ * Get the default provider (Anthropic)
102
+ */
103
+ export function getDefaultProvider() {
104
+ return getProvider('anthropic');
105
+ }
106
+ /**
107
+ * Clear provider registry (for testing or re-initialization)
108
+ */
109
+ export function clearProviderRegistry() {
110
+ providerRegistry.clear();
111
+ }
112
+ /**
113
+ * Default factory configuration
114
+ */
115
+ const defaultFactoryConfig = {
116
+ defaultProvider: 'anthropic',
117
+ fallbackEnabled: true,
118
+ fallbackOrder: ['anthropic', 'openai', 'google', 'cursor'],
119
+ credentials: {},
120
+ };
121
+ let factoryConfig = { ...defaultFactoryConfig };
122
+ /**
123
+ * Configure the provider factory
124
+ */
125
+ export function configureProviderFactory(config) {
126
+ factoryConfig = { ...factoryConfig, ...config };
127
+ // Initialize providers with credentials
128
+ for (const [name, apiKey] of Object.entries(config.credentials ?? {})) {
129
+ if (apiKey) {
130
+ getProvider(name, apiKey);
131
+ }
132
+ }
133
+ }
134
+ /**
135
+ * Get current factory configuration
136
+ */
137
+ export function getFactoryConfig() {
138
+ return { ...factoryConfig };
139
+ }
140
+ /**
141
+ * Execute a query with automatic fallback
142
+ * Tries the primary provider first, then falls back to alternatives if enabled
143
+ */
144
+ export async function* queryWithFallback(prompt, options) {
145
+ const providerOrder = options.preferredProvider
146
+ ? [options.preferredProvider, ...factoryConfig.fallbackOrder.filter(p => p !== options.preferredProvider)]
147
+ : factoryConfig.fallbackOrder;
148
+ let lastError = null;
149
+ for (const providerName of providerOrder) {
150
+ const config = getProviderConfig(providerName);
151
+ if (!config.enabled)
152
+ continue;
153
+ try {
154
+ const provider = getProvider(providerName);
155
+ // Check if provider is authenticated
156
+ const isValid = await provider.validateCredentials();
157
+ if (!isValid)
158
+ continue;
159
+ // Execute query
160
+ for await (const message of provider.query(prompt, options)) {
161
+ yield message;
162
+ // If we get a successful result, we're done
163
+ if (message.type === 'result' && message.subtype === 'success') {
164
+ return;
165
+ }
166
+ }
167
+ // If we got here without error, we're done
168
+ return;
169
+ }
170
+ catch (error) {
171
+ lastError = error instanceof Error ? error : new Error(String(error));
172
+ console.warn(`Provider ${providerName} failed: ${lastError.message}`);
173
+ if (!factoryConfig.fallbackEnabled) {
174
+ throw lastError;
175
+ }
176
+ // Continue to next provider
177
+ continue;
178
+ }
179
+ }
180
+ // All providers failed
181
+ yield {
182
+ type: 'error',
183
+ content: [{
184
+ type: 'text',
185
+ text: `All providers failed. Last error: ${lastError?.message ?? 'Unknown error'}`,
186
+ }],
187
+ metadata: {
188
+ provider: factoryConfig.defaultProvider,
189
+ },
190
+ };
191
+ }
192
+ /**
193
+ * Check if a specific provider is available
194
+ */
195
+ export async function isProviderAvailable(name) {
196
+ try {
197
+ const provider = getProvider(name);
198
+ return await provider.validateCredentials();
199
+ }
200
+ catch {
201
+ return false;
202
+ }
203
+ }
204
+ /**
205
+ * Get provider by name with type assertion
206
+ */
207
+ export function getAnthropicProvider(apiKey) {
208
+ return getProvider('anthropic', apiKey);
209
+ }
210
+ export function getOpenAIProvider(apiKey) {
211
+ return getProvider('openai', apiKey);
212
+ }
213
+ export function getGoogleProvider(apiKey) {
214
+ return getProvider('google', apiKey);
215
+ }
216
+ export function getCursorProvider(apiKey) {
217
+ return getProvider('cursor', apiKey);
218
+ }
219
+ // Re-export types and classes
220
+ export { BaseProvider, AnthropicProvider, OpenAIProvider, GoogleProvider, CursorProvider, };
221
+ export default {
222
+ getProvider,
223
+ createProvider,
224
+ getAvailableProviders,
225
+ getProviderStatuses,
226
+ getDefaultProvider,
227
+ clearProviderRegistry,
228
+ configureProviderFactory,
229
+ getFactoryConfig,
230
+ queryWithFallback,
231
+ isProviderAvailable,
232
+ };
233
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,83 @@
1
+ /**
2
+ * OpenAI Provider (Codex SDK)
3
+ * Wrapper around OpenAI's Codex SDK for multi-provider orchestration.
4
+ * Supports thread-based conversations and code execution.
5
+ *
6
+ * Copyright (c) 2025 Dobeu Tech Solutions LLC
7
+ * Licensed under CC BY-NC 4.0
8
+ */
9
+ import { BaseProvider, type AgentMessage, type QueryOptions, type ProviderCapabilities, type ModelInfo } from './base-provider.js';
10
+ import { type ProviderName } from '../config/provider-config.js';
11
+ /**
12
+ * OpenAI Provider Implementation
13
+ * Wraps the Codex SDK for use in multi-provider orchestration
14
+ */
15
+ export declare class OpenAIProvider extends BaseProvider {
16
+ readonly name: ProviderName;
17
+ readonly displayName = "Codex (OpenAI)";
18
+ readonly packageName = "@openai/codex-sdk";
19
+ private config;
20
+ private apiKey;
21
+ private codexClient;
22
+ private currentThread;
23
+ private currentThreadId;
24
+ constructor(apiKey?: string);
25
+ /**
26
+ * Initialize the Codex SDK client
27
+ */
28
+ private initializeClient;
29
+ /**
30
+ * Execute a query using the Codex SDK
31
+ */
32
+ query(prompt: string, options: QueryOptions): AsyncGenerator<AgentMessage, void, unknown>;
33
+ /**
34
+ * Validate OpenAI API credentials
35
+ */
36
+ validateCredentials(): Promise<boolean>;
37
+ /**
38
+ * List available OpenAI models
39
+ */
40
+ listModels(): Promise<ModelInfo[]>;
41
+ /**
42
+ * Get OpenAI provider capabilities
43
+ */
44
+ getCapabilities(): ProviderCapabilities;
45
+ /**
46
+ * Get list of supported standard tools
47
+ */
48
+ getSupportedTools(): string[];
49
+ /**
50
+ * Map standard tool name to OpenAI tool name
51
+ */
52
+ mapToolName(standardTool: string): string | null;
53
+ /**
54
+ * Resume a previous thread
55
+ */
56
+ resumeThread(threadId: string): Promise<boolean>;
57
+ /**
58
+ * Get current thread ID
59
+ */
60
+ getCurrentThreadId(): string | null;
61
+ /**
62
+ * Clear current thread (start fresh on next query)
63
+ */
64
+ clearThread(): void;
65
+ /**
66
+ * Normalize Codex result to standard format
67
+ */
68
+ protected normalizeMessage(rawMessage: unknown): AgentMessage;
69
+ /**
70
+ * Set API key at runtime
71
+ */
72
+ setApiKey(key: string): void;
73
+ /**
74
+ * Get the current API key (masked for display)
75
+ */
76
+ getApiKeyPreview(): string | null;
77
+ }
78
+ /**
79
+ * Create a new OpenAI provider instance
80
+ */
81
+ export declare function createOpenAIProvider(apiKey?: string): OpenAIProvider;
82
+ export default OpenAIProvider;
83
+ //# sourceMappingURL=openai-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openai-provider.d.ts","sourceRoot":"","sources":["../../src/providers/openai-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,YAAY,EACZ,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,oBAAoB,EACzB,KAAK,SAAS,EACf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,KAAK,YAAY,EAGlB,MAAM,8BAA8B,CAAC;AAsBtC;;;GAGG;AACH,qBAAa,cAAe,SAAQ,YAAY;IAC9C,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAY;IACvC,QAAQ,CAAC,WAAW,oBAAoB;IACxC,QAAQ,CAAC,WAAW,uBAAuB;IAE3C,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,MAAM,CAAuB;IAErC,OAAO,CAAC,WAAW,CAAa;IAEhC,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,eAAe,CAAuB;gBAElC,MAAM,CAAC,EAAE,MAAM;IAO3B;;OAEG;YACW,gBAAgB;IAqC9B;;OAEG;IACI,KAAK,CACV,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,YAAY,GACpB,cAAc,CAAC,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC;IAuE9C;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC;IAyB7C;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAUxC;;OAEG;IACH,eAAe,IAAI,oBAAoB;IAIvC;;OAEG;IACH,iBAAiB,IAAI,MAAM,EAAE;IAM7B;;OAEG;IACH,WAAW,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAKhD;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAetD;;OAEG;IACH,kBAAkB,IAAI,MAAM,GAAG,IAAI;IAInC;;OAEG;IACH,WAAW,IAAI,IAAI;IAKnB;;OAEG;IACH,SAAS,CAAC,gBAAgB,CAAC,UAAU,EAAE,OAAO,GAAG,YAAY;IA8C7D;;OAEG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAS5B;;OAEG;IACH,gBAAgB,IAAI,MAAM,GAAG,IAAI;CAIlC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,cAAc,CAEpE;AAED,eAAe,cAAc,CAAC"}