@aiagentflow/cli 0.8.0 → 0.9.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.
- package/README.md +5 -4
- package/dist/cli/commands/init.js +20 -3
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/index.js +1 -1
- package/dist/core/config/schema.d.ts +132 -75
- package/dist/core/config/schema.d.ts.map +1 -1
- package/dist/core/config/schema.js +9 -1
- package/dist/core/config/schema.js.map +1 -1
- package/dist/providers/groq.d.ts +49 -0
- package/dist/providers/groq.d.ts.map +1 -0
- package/dist/providers/groq.js +192 -0
- package/dist/providers/groq.js.map +1 -0
- package/dist/providers/metadata.d.ts.map +1 -1
- package/dist/providers/metadata.js +3 -0
- package/dist/providers/metadata.js.map +1 -1
- package/dist/providers/provider-errors.d.ts +1 -1
- package/dist/providers/provider-errors.js +1 -1
- package/dist/providers/registry.d.ts +2 -2
- package/dist/providers/registry.d.ts.map +1 -1
- package/dist/providers/registry.js +11 -3
- package/dist/providers/registry.js.map +1 -1
- package/dist/providers/types.d.ts +1 -1
- package/dist/providers/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/core/config/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,qBAAqB;IAC9B,iDAAiD;;IAEjD,mCAAmC;;IAEnC,0EAA0E;;IAE1E,2DAA2D;;;;;;;;;;;;EAE7D,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;QAb1B,iDAAiD;;QAEjD,mCAAmC;;QAEnC,0EAA0E;;QAE1E,2DAA2D;;;;;;;;;;;;;;QAN3D,iDAAiD;;QAEjD,mCAAmC;;QAEnC,0EAA0E;;QAE1E,2DAA2D;;;;;;;;;;;;;;QAN3D,iDAAiD;;QAEjD,mCAAmC;;QAEnC,0EAA0E;;QAE1E,2DAA2D;;;;;;;;;;;;;;QAN3D,iDAAiD;;QAEjD,mCAAmC;;QAEnC,0EAA0E;;QAE1E,2DAA2D;;;;;;;;;;;;;;QAN3D,iDAAiD;;QAEjD,mCAAmC;;QAEnC,0EAA0E;;QAE1E,2DAA2D;;;;;;;;;;;;;;QAN3D,iDAAiD;;QAEjD,mCAAmC;;QAEnC,0EAA0E;;QAE1E,2DAA2D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAc7D,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;EAIlC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;EAE/B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;EAG/B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/core/config/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,qBAAqB;IAC9B,iDAAiD;;IAEjD,mCAAmC;;IAEnC,0EAA0E;;IAE1E,2DAA2D;;;;;;;;;;;;EAE7D,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;QAb1B,iDAAiD;;QAEjD,mCAAmC;;QAEnC,0EAA0E;;QAE1E,2DAA2D;;;;;;;;;;;;;;QAN3D,iDAAiD;;QAEjD,mCAAmC;;QAEnC,0EAA0E;;QAE1E,2DAA2D;;;;;;;;;;;;;;QAN3D,iDAAiD;;QAEjD,mCAAmC;;QAEnC,0EAA0E;;QAE1E,2DAA2D;;;;;;;;;;;;;;QAN3D,iDAAiD;;QAEjD,mCAAmC;;QAEnC,0EAA0E;;QAE1E,2DAA2D;;;;;;;;;;;;;;QAN3D,iDAAiD;;QAEjD,mCAAmC;;QAEnC,0EAA0E;;QAE1E,2DAA2D;;;;;;;;;;;;;;QAN3D,iDAAiD;;QAEjD,mCAAmC;;QAEnC,0EAA0E;;QAE1E,2DAA2D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAc7D,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;EAIlC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;EAE/B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;EAG/B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;EAG7B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAM/B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,mBAAmB;IAC5B,oCAAoC;;IAEpC,6DAA6D;;IAE7D,kEAAkE;;IAElE,sCAAsC;;IAEtC,oCAAoC;;;;;;;;;;;;;;EAEtC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB;IAC7B,uDAAuD;;IAEvD,wDAAwD;;IAExD,wDAAwD;;IAExD,yDAAyD;;IAEzD,oDAAoD;;IAEpD,uDAAuD;;IAEvD,mGAAmG;;IAEnG,qDAAqD;;IAErD,4DAA4D;;;;;;;;;;;;;;;;;;;;;;EAE9D,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,eAAe;IACxB,4CAA4C;;IAE5C,wCAAwC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAExC,iDAAiD;;;YA3HjD,iDAAiD;;YAEjD,mCAAmC;;YAEnC,0EAA0E;;YAE1E,2DAA2D;;;;;;;;;;;;;;YAN3D,iDAAiD;;YAEjD,mCAAmC;;YAEnC,0EAA0E;;YAE1E,2DAA2D;;;;;;;;;;;;;;YAN3D,iDAAiD;;YAEjD,mCAAmC;;YAEnC,0EAA0E;;YAE1E,2DAA2D;;;;;;;;;;;;;;YAN3D,iDAAiD;;YAEjD,mCAAmC;;YAEnC,0EAA0E;;YAE1E,2DAA2D;;;;;;;;;;;;;;YAN3D,iDAAiD;;YAEjD,mCAAmC;;YAEnC,0EAA0E;;YAE1E,2DAA2D;;;;;;;;;;;;;;YAN3D,iDAAiD;;YAEjD,mCAAmC;;YAEnC,0EAA0E;;YAE1E,2DAA2D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuH3D,8BAA8B;;QA/C9B,oCAAoC;;QAEpC,6DAA6D;;QAE7D,kEAAkE;;QAElE,sCAAsC;;QAEtC,oCAAoC;;;;;;;;;;;;;;;IAyCpC,mCAAmC;;QAjCnC,uDAAuD;;QAEvD,wDAAwD;;QAExD,wDAAwD;;QAExD,yDAAyD;;QAEzD,oDAAoD;;QAEpD,uDAAuD;;QAEvD,mGAAmG;;QAEnG,qDAAqD;;QAErD,4DAA4D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmB9D,CAAC"}
|
|
@@ -13,7 +13,7 @@ import { z } from 'zod';
|
|
|
13
13
|
*/
|
|
14
14
|
export const agentRoleConfigSchema = z.object({
|
|
15
15
|
/** Which provider to use for this agent role. */
|
|
16
|
-
provider: z.enum(['anthropic', 'gemini', 'ollama', 'openai']),
|
|
16
|
+
provider: z.enum(['anthropic', 'gemini', 'groq', 'ollama', 'openai']),
|
|
17
17
|
/** The model identifier to use. */
|
|
18
18
|
model: z.string().min(1),
|
|
19
19
|
/** Sampling temperature (0.0 = deterministic, higher = more creative). */
|
|
@@ -53,6 +53,13 @@ export const geminiProviderSchema = z.object({
|
|
|
53
53
|
apiKey: z.string().min(1, 'Gemini API key is required'),
|
|
54
54
|
baseUrl: z.string().url().default('https://generativelanguage.googleapis.com'),
|
|
55
55
|
});
|
|
56
|
+
/**
|
|
57
|
+
* Schema for Groq provider settings.
|
|
58
|
+
*/
|
|
59
|
+
export const groqProviderSchema = z.object({
|
|
60
|
+
apiKey: z.string().min(1, 'Groq API key is required'),
|
|
61
|
+
baseUrl: z.string().url().default('https://api.groq.com/openai/v1'),
|
|
62
|
+
});
|
|
56
63
|
/**
|
|
57
64
|
* Schema for OpenAI provider settings.
|
|
58
65
|
*/
|
|
@@ -67,6 +74,7 @@ export const openaiProviderSchema = z.object({
|
|
|
67
74
|
export const providerConfigSchema = z.object({
|
|
68
75
|
anthropic: anthropicProviderSchema.optional(),
|
|
69
76
|
gemini: geminiProviderSchema.optional(),
|
|
77
|
+
groq: groqProviderSchema.optional(),
|
|
70
78
|
ollama: ollamaProviderSchema.optional(),
|
|
71
79
|
openai: openaiProviderSchema.optional(),
|
|
72
80
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/core/config/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,iDAAiD;IACjD,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/core/config/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Groq provider adapter.
|
|
3
|
+
*
|
|
4
|
+
* Uses Groq's OpenAI-compatible Chat Completions API directly via fetch().
|
|
5
|
+
* Matches the existing OpenAI adapter flow but uses Groq defaults and paths.
|
|
6
|
+
*
|
|
7
|
+
* Dependency direction: groq.ts → providers/types.ts, core/errors.ts
|
|
8
|
+
* Used by: providers/registry.ts
|
|
9
|
+
*/
|
|
10
|
+
import type { LLMProvider, ChatMessage, ChatOptions, ChatResponse, ChatChunk, ModelInfo } from './types.js';
|
|
11
|
+
/** Configuration required to create a Groq provider. */
|
|
12
|
+
export interface GroqProviderConfig {
|
|
13
|
+
readonly apiKey: string;
|
|
14
|
+
readonly baseUrl?: string;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Groq provider implementation.
|
|
18
|
+
*
|
|
19
|
+
* Groq exposes an OpenAI-compatible API surface. The provider uses the
|
|
20
|
+
* official Groq base URL and endpoints so users can configure Groq directly
|
|
21
|
+
* instead of routing it through the OpenAI label.
|
|
22
|
+
*/
|
|
23
|
+
export declare class GroqProvider implements LLMProvider {
|
|
24
|
+
readonly name: "groq";
|
|
25
|
+
private readonly apiKey;
|
|
26
|
+
private readonly baseUrl;
|
|
27
|
+
constructor(config: GroqProviderConfig);
|
|
28
|
+
/**
|
|
29
|
+
* Send a non-streaming chat completion request.
|
|
30
|
+
*/
|
|
31
|
+
chat(messages: ChatMessage[], options?: ChatOptions): Promise<ChatResponse>;
|
|
32
|
+
/**
|
|
33
|
+
* Send a streaming chat completion request.
|
|
34
|
+
*/
|
|
35
|
+
stream(messages: ChatMessage[], options?: ChatOptions): AsyncIterable<ChatChunk>;
|
|
36
|
+
/**
|
|
37
|
+
* List available models from the Groq API.
|
|
38
|
+
*/
|
|
39
|
+
listModels(): Promise<ModelInfo[]>;
|
|
40
|
+
/**
|
|
41
|
+
* Validate that the Groq API connection is working.
|
|
42
|
+
*/
|
|
43
|
+
validateConnection(): Promise<boolean>;
|
|
44
|
+
private getHeaders;
|
|
45
|
+
private request;
|
|
46
|
+
private prepareMessages;
|
|
47
|
+
private extractUsage;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=groq.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"groq.d.ts","sourceRoot":"","sources":["../../src/providers/groq.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EACR,WAAW,EACX,WAAW,EACX,WAAW,EACX,YAAY,EACZ,SAAS,EACT,SAAS,EAEZ,MAAM,YAAY,CAAC;AAIpB,wDAAwD;AACxD,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC7B;AASD;;;;;;GAMG;AACH,qBAAa,YAAa,YAAW,WAAW;IAC5C,SAAgB,IAAI,EAAG,MAAM,CAAU;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,MAAM,EAAE,kBAAkB;IAQtC;;OAEG;IACG,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAoCjF;;OAEG;IACI,MAAM,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,aAAa,CAAC,SAAS,CAAC;IAsEvF;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAiBxC;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAa5C,OAAO,CAAC,UAAU;YAOJ,OAAO;IAUrB,OAAO,CAAC,eAAe;IAiBvB,OAAO,CAAC,YAAY;CAQvB"}
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Groq provider adapter.
|
|
3
|
+
*
|
|
4
|
+
* Uses Groq's OpenAI-compatible Chat Completions API directly via fetch().
|
|
5
|
+
* Matches the existing OpenAI adapter flow but uses Groq defaults and paths.
|
|
6
|
+
*
|
|
7
|
+
* Dependency direction: groq.ts → providers/types.ts, core/errors.ts
|
|
8
|
+
* Used by: providers/registry.ts
|
|
9
|
+
*/
|
|
10
|
+
import { ProviderError } from '../core/errors.js';
|
|
11
|
+
import { logger } from '../utils/logger.js';
|
|
12
|
+
import { fetchWithRetry, PROVIDER_TIMEOUT_MS } from './provider-errors.js';
|
|
13
|
+
/** Default Groq API settings. */
|
|
14
|
+
const DEFAULTS = {
|
|
15
|
+
baseUrl: 'https://api.groq.com/openai/v1',
|
|
16
|
+
model: 'llama-3.3-70b-versatile',
|
|
17
|
+
maxTokens: 4096,
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Groq provider implementation.
|
|
21
|
+
*
|
|
22
|
+
* Groq exposes an OpenAI-compatible API surface. The provider uses the
|
|
23
|
+
* official Groq base URL and endpoints so users can configure Groq directly
|
|
24
|
+
* instead of routing it through the OpenAI label.
|
|
25
|
+
*/
|
|
26
|
+
export class GroqProvider {
|
|
27
|
+
name = 'groq';
|
|
28
|
+
apiKey;
|
|
29
|
+
baseUrl;
|
|
30
|
+
constructor(config) {
|
|
31
|
+
if (!config.apiKey) {
|
|
32
|
+
throw new ProviderError('Groq API key is required', { provider: 'groq' });
|
|
33
|
+
}
|
|
34
|
+
this.apiKey = config.apiKey;
|
|
35
|
+
this.baseUrl = normalizeBaseUrl(config.baseUrl ?? DEFAULTS.baseUrl);
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Send a non-streaming chat completion request.
|
|
39
|
+
*/
|
|
40
|
+
async chat(messages, options) {
|
|
41
|
+
const apiMessages = this.prepareMessages(messages, options);
|
|
42
|
+
const model = options?.model ?? DEFAULTS.model;
|
|
43
|
+
const body = {
|
|
44
|
+
model,
|
|
45
|
+
messages: apiMessages,
|
|
46
|
+
};
|
|
47
|
+
if (options?.maxTokens !== undefined) {
|
|
48
|
+
body.max_completion_tokens = options.maxTokens;
|
|
49
|
+
}
|
|
50
|
+
if (options?.temperature !== undefined) {
|
|
51
|
+
body.temperature = options.temperature;
|
|
52
|
+
}
|
|
53
|
+
if (options?.stopSequences?.length) {
|
|
54
|
+
body.stop = options.stopSequences;
|
|
55
|
+
}
|
|
56
|
+
logger.debug(`Groq chat request: model=${model}, messages=${apiMessages.length}`);
|
|
57
|
+
const response = await this.request('/chat/completions', body);
|
|
58
|
+
const choice = response.choices?.[0];
|
|
59
|
+
const message = choice?.message;
|
|
60
|
+
const content = message?.content ?? '';
|
|
61
|
+
const usage = this.extractUsage(response);
|
|
62
|
+
return {
|
|
63
|
+
content,
|
|
64
|
+
model: response.model ?? model,
|
|
65
|
+
usage,
|
|
66
|
+
finishReason: choice?.finish_reason ?? 'unknown',
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Send a streaming chat completion request.
|
|
71
|
+
*/
|
|
72
|
+
async *stream(messages, options) {
|
|
73
|
+
const apiMessages = this.prepareMessages(messages, options);
|
|
74
|
+
const model = options?.model ?? DEFAULTS.model;
|
|
75
|
+
const body = {
|
|
76
|
+
model,
|
|
77
|
+
messages: apiMessages,
|
|
78
|
+
stream: true,
|
|
79
|
+
};
|
|
80
|
+
if (options?.maxTokens !== undefined) {
|
|
81
|
+
body.max_completion_tokens = options.maxTokens;
|
|
82
|
+
}
|
|
83
|
+
if (options?.temperature !== undefined) {
|
|
84
|
+
body.temperature = options.temperature;
|
|
85
|
+
}
|
|
86
|
+
const response = await fetchWithRetry(`${this.baseUrl}/chat/completions`, { method: 'POST', headers: this.getHeaders(), body: JSON.stringify(body) }, { provider: 'groq', baseUrl: this.baseUrl, timeoutMs: PROVIDER_TIMEOUT_MS });
|
|
87
|
+
if (!response.body) {
|
|
88
|
+
throw new ProviderError('Groq response has no body', { provider: 'groq' });
|
|
89
|
+
}
|
|
90
|
+
const reader = response.body.getReader();
|
|
91
|
+
const decoder = new TextDecoder();
|
|
92
|
+
let buffer = '';
|
|
93
|
+
try {
|
|
94
|
+
while (true) {
|
|
95
|
+
const { done, value } = await reader.read();
|
|
96
|
+
if (done)
|
|
97
|
+
break;
|
|
98
|
+
buffer += decoder.decode(value, { stream: true });
|
|
99
|
+
const lines = buffer.split('\n');
|
|
100
|
+
buffer = lines.pop() ?? '';
|
|
101
|
+
for (const line of lines) {
|
|
102
|
+
if (!line.startsWith('data: '))
|
|
103
|
+
continue;
|
|
104
|
+
const data = line.slice(6).trim();
|
|
105
|
+
if (data === '[DONE]') {
|
|
106
|
+
yield { content: '', done: true };
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
try {
|
|
110
|
+
const event = JSON.parse(data);
|
|
111
|
+
const delta = event.choices?.[0]?.delta;
|
|
112
|
+
if (delta?.content) {
|
|
113
|
+
yield { content: delta.content, done: false };
|
|
114
|
+
}
|
|
115
|
+
if (event.choices?.[0]?.finish_reason) {
|
|
116
|
+
yield { content: '', done: true };
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
catch {
|
|
121
|
+
// Skip unparseable lines
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
finally {
|
|
127
|
+
reader.releaseLock();
|
|
128
|
+
}
|
|
129
|
+
yield { content: '', done: true };
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* List available models from the Groq API.
|
|
133
|
+
*/
|
|
134
|
+
async listModels() {
|
|
135
|
+
const response = await fetchWithRetry(`${this.baseUrl}/models`, { method: 'GET', headers: this.getHeaders() }, { provider: 'groq', baseUrl: this.baseUrl, timeoutMs: PROVIDER_TIMEOUT_MS });
|
|
136
|
+
const body = await response.json();
|
|
137
|
+
const models = body.data ?? [];
|
|
138
|
+
return models.map((m) => ({
|
|
139
|
+
id: m.id,
|
|
140
|
+
name: m.id,
|
|
141
|
+
provider: 'groq',
|
|
142
|
+
}));
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Validate that the Groq API connection is working.
|
|
146
|
+
*/
|
|
147
|
+
async validateConnection() {
|
|
148
|
+
try {
|
|
149
|
+
const response = await fetch(`${this.baseUrl}/models`, {
|
|
150
|
+
method: 'GET',
|
|
151
|
+
headers: this.getHeaders(),
|
|
152
|
+
});
|
|
153
|
+
return response.ok;
|
|
154
|
+
}
|
|
155
|
+
catch {
|
|
156
|
+
return false;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
getHeaders() {
|
|
160
|
+
return {
|
|
161
|
+
'Content-Type': 'application/json',
|
|
162
|
+
'Authorization': `Bearer ${this.apiKey}`,
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
async request(path, body) {
|
|
166
|
+
const response = await fetchWithRetry(`${this.baseUrl}${path}`, { method: 'POST', headers: this.getHeaders(), body: JSON.stringify(body) }, { provider: 'groq', baseUrl: this.baseUrl, timeoutMs: PROVIDER_TIMEOUT_MS });
|
|
167
|
+
return response.json();
|
|
168
|
+
}
|
|
169
|
+
prepareMessages(messages, options) {
|
|
170
|
+
const apiMessages = [];
|
|
171
|
+
if (options?.systemPrompt) {
|
|
172
|
+
apiMessages.push({ role: 'system', content: options.systemPrompt });
|
|
173
|
+
}
|
|
174
|
+
for (const msg of messages) {
|
|
175
|
+
apiMessages.push({ role: msg.role, content: msg.content });
|
|
176
|
+
}
|
|
177
|
+
return apiMessages;
|
|
178
|
+
}
|
|
179
|
+
extractUsage(response) {
|
|
180
|
+
const usage = response.usage;
|
|
181
|
+
return {
|
|
182
|
+
promptTokens: usage?.prompt_tokens ?? 0,
|
|
183
|
+
completionTokens: usage?.completion_tokens ?? 0,
|
|
184
|
+
totalTokens: usage?.total_tokens ?? 0,
|
|
185
|
+
};
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
function normalizeBaseUrl(baseUrl) {
|
|
189
|
+
const trimmed = baseUrl.replace(/\/+$/, '');
|
|
190
|
+
return trimmed.endsWith('/v1') ? trimmed : `${trimmed}/v1`;
|
|
191
|
+
}
|
|
192
|
+
//# sourceMappingURL=groq.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"groq.js","sourceRoot":"","sources":["../../src/providers/groq.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/providers/metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,+CAA+C;AAC/C,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/providers/metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,+CAA+C;AAC/C,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,CAM3D,CAAC;AAEF,kEAAkE;AAClE,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,CAMnE,CAAC;AAEF,yFAAyF;AACzF,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,CAMjE,CAAC"}
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
export const PROVIDER_LABELS = {
|
|
13
13
|
anthropic: 'Anthropic (Claude)',
|
|
14
14
|
gemini: 'Google Gemini',
|
|
15
|
+
groq: 'Groq',
|
|
15
16
|
ollama: 'Ollama (Local)',
|
|
16
17
|
openai: 'OpenAI (GPT)',
|
|
17
18
|
};
|
|
@@ -19,6 +20,7 @@ export const PROVIDER_LABELS = {
|
|
|
19
20
|
export const PROVIDER_DEFAULT_MODELS = {
|
|
20
21
|
anthropic: 'claude-sonnet-4-20250514',
|
|
21
22
|
gemini: 'gemini-2.0-flash',
|
|
23
|
+
groq: 'llama-3.3-70b-versatile',
|
|
22
24
|
ollama: 'llama3.2:latest',
|
|
23
25
|
openai: 'gpt-4o-mini',
|
|
24
26
|
};
|
|
@@ -26,6 +28,7 @@ export const PROVIDER_DEFAULT_MODELS = {
|
|
|
26
28
|
export const PROVIDER_DESCRIPTIONS = {
|
|
27
29
|
anthropic: 'Anthropic (Claude) — requires API key',
|
|
28
30
|
gemini: 'Google Gemini — requires API key',
|
|
31
|
+
groq: 'Groq — fast OpenAI-compatible inference, requires API key',
|
|
29
32
|
ollama: 'Ollama (Local Models) — free, no API key needed',
|
|
30
33
|
openai: 'OpenAI (GPT) — requires API key',
|
|
31
34
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/providers/metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,+CAA+C;AAC/C,MAAM,CAAC,MAAM,eAAe,GAAoC;IAC5D,SAAS,EAAE,oBAAoB;IAC/B,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,gBAAgB;IACxB,MAAM,EAAE,cAAc;CACzB,CAAC;AAEF,kEAAkE;AAClE,MAAM,CAAC,MAAM,uBAAuB,GAAoC;IACpE,SAAS,EAAE,0BAA0B;IACrC,MAAM,EAAE,kBAAkB;IAC1B,MAAM,EAAE,iBAAiB;IACzB,MAAM,EAAE,aAAa;CACxB,CAAC;AAEF,yFAAyF;AACzF,MAAM,CAAC,MAAM,qBAAqB,GAAoC;IAClE,SAAS,EAAE,uCAAuC;IAClD,MAAM,EAAE,kCAAkC;IAC1C,MAAM,EAAE,iDAAiD;IACzD,MAAM,EAAE,iCAAiC;CAC5C,CAAC"}
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/providers/metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,+CAA+C;AAC/C,MAAM,CAAC,MAAM,eAAe,GAAoC;IAC5D,SAAS,EAAE,oBAAoB;IAC/B,MAAM,EAAE,eAAe;IACvB,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,gBAAgB;IACxB,MAAM,EAAE,cAAc;CACzB,CAAC;AAEF,kEAAkE;AAClE,MAAM,CAAC,MAAM,uBAAuB,GAAoC;IACpE,SAAS,EAAE,0BAA0B;IACrC,MAAM,EAAE,kBAAkB;IAC1B,IAAI,EAAE,yBAAyB;IAC/B,MAAM,EAAE,iBAAiB;IACzB,MAAM,EAAE,aAAa;CACxB,CAAC;AAEF,yFAAyF;AACzF,MAAM,CAAC,MAAM,qBAAqB,GAAoC;IAClE,SAAS,EAAE,uCAAuC;IAClD,MAAM,EAAE,kCAAkC;IAC1C,IAAI,EAAE,2DAA2D;IACjE,MAAM,EAAE,iDAAiD;IACzD,MAAM,EAAE,iCAAiC;CAC5C,CAAC"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* handling so each provider doesn't duplicate this logic.
|
|
6
6
|
*
|
|
7
7
|
* Dependency direction: provider-errors.ts → core/errors.ts, utils/logger.ts
|
|
8
|
-
* Used by: anthropic.ts, openai.ts, gemini.ts, ollama.ts
|
|
8
|
+
* Used by: anthropic.ts, openai.ts, gemini.ts, groq.ts, ollama.ts
|
|
9
9
|
*/
|
|
10
10
|
import { ProviderError } from '../core/errors.js';
|
|
11
11
|
/** Default timeout for cloud provider requests (60 seconds). */
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* handling so each provider doesn't duplicate this logic.
|
|
6
6
|
*
|
|
7
7
|
* Dependency direction: provider-errors.ts → core/errors.ts, utils/logger.ts
|
|
8
|
-
* Used by: anthropic.ts, openai.ts, gemini.ts, ollama.ts
|
|
8
|
+
* Used by: anthropic.ts, openai.ts, gemini.ts, groq.ts, ollama.ts
|
|
9
9
|
*/
|
|
10
10
|
import { ProviderError } from '../core/errors.js';
|
|
11
11
|
import { logger } from '../utils/logger.js';
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* 2. Register it in the PROVIDER_FACTORIES map below
|
|
7
7
|
* 3. Add the name to LLMProviderName type in types.ts
|
|
8
8
|
*
|
|
9
|
-
* Dependency direction: registry.ts → types.ts,
|
|
9
|
+
* Dependency direction: registry.ts → types.ts, provider adapters, errors.ts
|
|
10
10
|
* Used by: workflow engine, CLI doctor command
|
|
11
11
|
*/
|
|
12
12
|
import type { LLMProvider, LLMProviderName } from './types.js';
|
|
@@ -14,7 +14,7 @@ import type { ProviderConfig } from '../core/config/types.js';
|
|
|
14
14
|
/**
|
|
15
15
|
* Create (or return cached) a provider instance by name.
|
|
16
16
|
*
|
|
17
|
-
* @param name - The provider name
|
|
17
|
+
* @param name - The provider name
|
|
18
18
|
* @param config - The providers section of the app config
|
|
19
19
|
* @returns An LLMProvider instance
|
|
20
20
|
* @throws {ProviderError} if the provider name is unknown or config is missing
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/providers/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/providers/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAM/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AA8D9D;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,cAAc,GAAG,WAAW,CAiBzF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,eAAe,EAAE,CAEzD;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACtC,MAAM,EAAE,cAAc,GACvB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAmBlC"}
|
|
@@ -6,12 +6,13 @@
|
|
|
6
6
|
* 2. Register it in the PROVIDER_FACTORIES map below
|
|
7
7
|
* 3. Add the name to LLMProviderName type in types.ts
|
|
8
8
|
*
|
|
9
|
-
* Dependency direction: registry.ts → types.ts,
|
|
9
|
+
* Dependency direction: registry.ts → types.ts, provider adapters, errors.ts
|
|
10
10
|
* Used by: workflow engine, CLI doctor command
|
|
11
11
|
*/
|
|
12
12
|
import { AnthropicProvider } from './anthropic.js';
|
|
13
|
-
import { OllamaProvider } from './ollama.js';
|
|
14
13
|
import { GeminiProvider } from './gemini.js';
|
|
14
|
+
import { GroqProvider } from './groq.js';
|
|
15
|
+
import { OllamaProvider } from './ollama.js';
|
|
15
16
|
import { OpenAIProvider } from './openai.js';
|
|
16
17
|
import { ProviderError } from '../core/errors.js';
|
|
17
18
|
import { logger } from '../utils/logger.js';
|
|
@@ -34,6 +35,13 @@ const PROVIDER_FACTORIES = {
|
|
|
34
35
|
}
|
|
35
36
|
return new GeminiProvider(geminiConfig);
|
|
36
37
|
},
|
|
38
|
+
groq: (config) => {
|
|
39
|
+
const groqConfig = config.groq;
|
|
40
|
+
if (!groqConfig) {
|
|
41
|
+
throw new ProviderError('Groq provider is not configured. Run "aiagentflow init" to set up.', { provider: 'groq' });
|
|
42
|
+
}
|
|
43
|
+
return new GroqProvider(groqConfig);
|
|
44
|
+
},
|
|
37
45
|
ollama: (config) => {
|
|
38
46
|
const ollamaConfig = config.ollama;
|
|
39
47
|
return new OllamaProvider(ollamaConfig);
|
|
@@ -51,7 +59,7 @@ const providerCache = new Map();
|
|
|
51
59
|
/**
|
|
52
60
|
* Create (or return cached) a provider instance by name.
|
|
53
61
|
*
|
|
54
|
-
* @param name - The provider name
|
|
62
|
+
* @param name - The provider name
|
|
55
63
|
* @param config - The providers section of the app config
|
|
56
64
|
* @returns An LLMProvider instance
|
|
57
65
|
* @throws {ProviderError} if the provider name is unknown or config is missing
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/providers/registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/providers/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,iBAAiB,EAAgC,MAAM,gBAAgB,CAAC;AACjF,OAAO,EAAE,cAAc,EAA6B,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,YAAY,EAA2B,MAAM,WAAW,CAAC;AAClE,OAAO,EAAE,cAAc,EAA6B,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,cAAc,EAA6B,MAAM,aAAa,CAAC;AAExE,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C;;;GAGG;AACH,MAAM,kBAAkB,GAAqE;IACzF,SAAS,EAAE,CAAC,MAAsB,EAAE,EAAE;QAClC,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS,CAAC;QACzC,IAAI,CAAC,eAAe,EAAE,CAAC;YACnB,MAAM,IAAI,aAAa,CACnB,yEAAyE,EACzE,EAAE,QAAQ,EAAE,WAAW,EAAE,CAC5B,CAAC;QACN,CAAC;QACD,OAAO,IAAI,iBAAiB,CAAC,eAA0C,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,EAAE,CAAC,MAAsB,EAAE,EAAE;QAC/B,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;QACnC,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,MAAM,IAAI,aAAa,CACnB,sEAAsE,EACtE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CACzB,CAAC;QACN,CAAC;QACD,OAAO,IAAI,cAAc,CAAC,YAAoC,CAAC,CAAC;IACpE,CAAC;IAED,IAAI,EAAE,CAAC,MAAsB,EAAE,EAAE;QAC7B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;QAC/B,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,MAAM,IAAI,aAAa,CACnB,oEAAoE,EACpE,EAAE,QAAQ,EAAE,MAAM,EAAE,CACvB,CAAC;QACN,CAAC;QACD,OAAO,IAAI,YAAY,CAAC,UAAgC,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,EAAE,CAAC,MAAsB,EAAE,EAAE;QAC/B,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;QACnC,OAAO,IAAI,cAAc,CAAC,YAAgD,CAAC,CAAC;IAChF,CAAC;IAED,MAAM,EAAE,CAAC,MAAsB,EAAE,EAAE;QAC/B,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;QACnC,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,MAAM,IAAI,aAAa,CACnB,sEAAsE,EACtE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CACzB,CAAC;QACN,CAAC;QACD,OAAO,IAAI,cAAc,CAAC,YAAoC,CAAC,CAAC;IACpE,CAAC;CACJ,CAAC;AAEF,mEAAmE;AACnE,MAAM,aAAa,GAAG,IAAI,GAAG,EAAgC,CAAC;AAE9D;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,IAAqB,EAAE,MAAsB;IACxE,sCAAsC;IACtC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACvC,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAE1B,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,MAAM,IAAI,aAAa,CACnB,sBAAsB,IAAI,iBAAiB,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EACvF,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,CACjE,CAAC;IACN,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACjC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAClC,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAC9B,aAAa,CAAC,KAAK,EAAE,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACjC,OAAO,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAsB,CAAC;AAChE,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACtC,MAAsB;IAEtB,MAAM,OAAO,GAA4B,EAAE,CAAC;IAE5C,KAAK,MAAM,IAAI,IAAI,qBAAqB,EAAE,EAAE,CAAC;QACzC,IAAI,CAAC;YACD,uDAAuD;YACvD,IAAI,IAAI,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,IAA2B,CAAC,EAAE,CAAC;gBAC5D,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;gBACtB,SAAS;YACb,CAAC;YAED,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,QAAQ,CAAC,kBAAkB,EAAE,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QAC1B,CAAC;IACL,CAAC;IAED,OAAO,OAAO,CAAC;AACnB,CAAC"}
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* Used by: all provider implementations, registry, agents, workflow engine
|
|
10
10
|
*/
|
|
11
11
|
/** Supported LLM provider names. Add new providers here. */
|
|
12
|
-
export type LLMProviderName = 'anthropic' | 'gemini' | 'ollama' | 'openai';
|
|
12
|
+
export type LLMProviderName = 'anthropic' | 'gemini' | 'groq' | 'ollama' | 'openai';
|
|
13
13
|
/** Role in a chat conversation. */
|
|
14
14
|
export type ChatRole = 'system' | 'user' | 'assistant';
|
|
15
15
|
/** A single message in a chat conversation. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,4DAA4D;AAC5D,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,4DAA4D;AAC5D,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEpF,mCAAmC;AACnC,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;AAEvD,+CAA+C;AAC/C,MAAM,WAAW,WAAW;IACxB,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC5B;AAED,6CAA6C;AAC7C,MAAM,WAAW,WAAW;IACxB,oDAAoD;IACpD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,wCAAwC;IACxC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,sCAAsC;IACtC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,yCAAyC;IACzC,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C,6DAA6D;IAC7D,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,qDAAqD;AACrD,MAAM,WAAW,YAAY;IACzB,kCAAkC;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,+BAA+B;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,8BAA8B;IAC9B,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,uCAAuC;IACvC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CACjC;AAED,8CAA8C;AAC9C,MAAM,WAAW,SAAS;IACtB,gCAAgC;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,uCAAuC;IACvC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CAC1B;AAED,4CAA4C;AAC5C,MAAM,WAAW,UAAU;IACvB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAChC;AAED,4CAA4C;AAC5C,MAAM,WAAW,SAAS;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC,+CAA+C;IAC/C,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACnC;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,WAAW;IACxB,wCAAwC;IACxC,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAE/B;;;OAGG;IACH,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAE5E;;;;OAIG;IACH,MAAM,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IAEjF;;;OAGG;IACH,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAEnC;;;OAGG;IACH,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAC1C"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aiagentflow/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.9.0",
|
|
4
4
|
"description": "A local-first, CLI-driven multi-agent AI software engineering workflow orchestrator — feed specs, PRDs, and guidelines to auto-generate implementation plans and code",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|