@jixo/cli 0.10.1 → 0.12.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/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +6 -5
- package/dist/cli.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +18 -12
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/prompts/list.js +2 -2
- package/dist/commands/prompts/list.js.map +1 -1
- package/dist/commands/tasks/AiTaskTui.d.ts +22 -0
- package/dist/commands/tasks/AiTaskTui.d.ts.map +1 -0
- package/dist/commands/tasks/AiTaskTui.js +52 -0
- package/dist/commands/tasks/AiTaskTui.js.map +1 -0
- package/dist/commands/tasks/ai-tasl-tui.d.ts +22 -0
- package/dist/commands/tasks/ai-tasl-tui.d.ts.map +1 -0
- package/dist/commands/tasks/ai-tasl-tui.js +53 -0
- package/dist/commands/tasks/ai-tasl-tui.js.map +1 -0
- package/dist/commands/tasks/ai-tools.d.ts +281 -8
- package/dist/commands/tasks/ai-tools.d.ts.map +1 -1
- package/dist/commands/tasks/ai-tools.js +55 -16
- package/dist/commands/tasks/ai-tools.js.map +1 -1
- package/dist/commands/tasks/model-providers.d.ts +5 -1
- package/dist/commands/tasks/model-providers.d.ts.map +1 -1
- package/dist/commands/tasks/model-providers.js +31 -0
- package/dist/commands/tasks/model-providers.js.map +1 -1
- package/dist/commands/tasks/run-ai-task.d.ts +1 -1
- package/dist/commands/tasks/run-ai-task.d.ts.map +1 -1
- package/dist/commands/tasks/run-ai-task.js +141 -115
- package/dist/commands/tasks/run-ai-task.js.map +1 -1
- package/dist/commands/tasks/run.d.ts.map +1 -1
- package/dist/commands/tasks/run.js +24 -14
- package/dist/commands/tasks/run.js.map +1 -1
- package/dist/config.d.ts +14 -14
- package/dist/helper/ai-retry-error.d.ts +1 -1
- package/dist/helper/ai-retry-error.d.ts.map +1 -1
- package/dist/helper/ai-retry-error.js +63 -30
- package/dist/helper/ai-retry-error.js.map +1 -1
- package/dist/helper/handle-ai-error.d.ts +5 -0
- package/dist/helper/handle-ai-error.d.ts.map +1 -0
- package/dist/helper/handle-ai-error.js +122 -0
- package/dist/helper/handle-ai-error.js.map +1 -0
- package/dist/helper/logger.d.ts +3 -0
- package/dist/helper/logger.d.ts.map +1 -0
- package/dist/helper/logger.js +26 -0
- package/dist/helper/logger.js.map +1 -0
- package/dist/helper/prompts-loader.d.ts +9 -3
- package/dist/helper/prompts-loader.d.ts.map +1 -1
- package/dist/helper/prompts-loader.js +16 -16
- package/dist/helper/prompts-loader.js.map +1 -1
- package/dist/helper/resolve-ai-tasks.d.ts +24 -10
- package/dist/helper/resolve-ai-tasks.d.ts.map +1 -1
- package/dist/helper/resolve-ai-tasks.js +68 -26
- package/dist/helper/resolve-ai-tasks.js.map +1 -1
- package/dist/prompts.json +2 -2
- package/package.json +8 -3
@@ -1,8 +1,270 @@
|
|
1
1
|
import { type ToolSet } from "ai";
|
2
2
|
import z from "zod";
|
3
|
+
import type { AiTask } from "../../helper/resolve-ai-tasks.js";
|
3
4
|
export declare const tools: {
|
4
5
|
fileSystem: (cwd: string) => Promise<ToolSet>;
|
5
6
|
memory: (memory_filepath: string) => Promise<ToolSet>;
|
7
|
+
pnpm: import("@gaubee/util").FuncRemember<() => Promise<{
|
8
|
+
[x: string]: import("ai").Tool<unknown, z.objectOutputType<{
|
9
|
+
_meta: z.ZodOptional<z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>>;
|
10
|
+
} & {
|
11
|
+
content: z.ZodArray<z.ZodUnion<[z.ZodObject<{
|
12
|
+
type: z.ZodLiteral<"text">;
|
13
|
+
text: z.ZodString;
|
14
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
15
|
+
type: z.ZodLiteral<"text">;
|
16
|
+
text: z.ZodString;
|
17
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
18
|
+
type: z.ZodLiteral<"text">;
|
19
|
+
text: z.ZodString;
|
20
|
+
}, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
|
21
|
+
type: z.ZodLiteral<"image">;
|
22
|
+
data: z.ZodString;
|
23
|
+
mimeType: z.ZodString;
|
24
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
25
|
+
type: z.ZodLiteral<"image">;
|
26
|
+
data: z.ZodString;
|
27
|
+
mimeType: z.ZodString;
|
28
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
29
|
+
type: z.ZodLiteral<"image">;
|
30
|
+
data: z.ZodString;
|
31
|
+
mimeType: z.ZodString;
|
32
|
+
}, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
|
33
|
+
type: z.ZodLiteral<"resource">;
|
34
|
+
resource: z.ZodUnion<[z.ZodObject<{
|
35
|
+
uri: z.ZodString;
|
36
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
37
|
+
} & {
|
38
|
+
text: z.ZodString;
|
39
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
40
|
+
uri: z.ZodString;
|
41
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
42
|
+
} & {
|
43
|
+
text: z.ZodString;
|
44
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
45
|
+
uri: z.ZodString;
|
46
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
47
|
+
} & {
|
48
|
+
text: z.ZodString;
|
49
|
+
}, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
|
50
|
+
uri: z.ZodString;
|
51
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
52
|
+
} & {
|
53
|
+
blob: z.ZodString;
|
54
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
55
|
+
uri: z.ZodString;
|
56
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
57
|
+
} & {
|
58
|
+
blob: z.ZodString;
|
59
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
60
|
+
uri: z.ZodString;
|
61
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
62
|
+
} & {
|
63
|
+
blob: z.ZodString;
|
64
|
+
}, z.ZodTypeAny, "passthrough">>]>;
|
65
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
66
|
+
type: z.ZodLiteral<"resource">;
|
67
|
+
resource: z.ZodUnion<[z.ZodObject<{
|
68
|
+
uri: z.ZodString;
|
69
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
70
|
+
} & {
|
71
|
+
text: z.ZodString;
|
72
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
73
|
+
uri: z.ZodString;
|
74
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
75
|
+
} & {
|
76
|
+
text: z.ZodString;
|
77
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
78
|
+
uri: z.ZodString;
|
79
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
80
|
+
} & {
|
81
|
+
text: z.ZodString;
|
82
|
+
}, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
|
83
|
+
uri: z.ZodString;
|
84
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
85
|
+
} & {
|
86
|
+
blob: z.ZodString;
|
87
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
88
|
+
uri: z.ZodString;
|
89
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
90
|
+
} & {
|
91
|
+
blob: z.ZodString;
|
92
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
93
|
+
uri: z.ZodString;
|
94
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
95
|
+
} & {
|
96
|
+
blob: z.ZodString;
|
97
|
+
}, z.ZodTypeAny, "passthrough">>]>;
|
98
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
99
|
+
type: z.ZodLiteral<"resource">;
|
100
|
+
resource: z.ZodUnion<[z.ZodObject<{
|
101
|
+
uri: z.ZodString;
|
102
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
103
|
+
} & {
|
104
|
+
text: z.ZodString;
|
105
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
106
|
+
uri: z.ZodString;
|
107
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
108
|
+
} & {
|
109
|
+
text: z.ZodString;
|
110
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
111
|
+
uri: z.ZodString;
|
112
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
113
|
+
} & {
|
114
|
+
text: z.ZodString;
|
115
|
+
}, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
|
116
|
+
uri: z.ZodString;
|
117
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
118
|
+
} & {
|
119
|
+
blob: z.ZodString;
|
120
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
121
|
+
uri: z.ZodString;
|
122
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
123
|
+
} & {
|
124
|
+
blob: z.ZodString;
|
125
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
126
|
+
uri: z.ZodString;
|
127
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
128
|
+
} & {
|
129
|
+
blob: z.ZodString;
|
130
|
+
}, z.ZodTypeAny, "passthrough">>]>;
|
131
|
+
}, z.ZodTypeAny, "passthrough">>]>, "many">;
|
132
|
+
isError: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
133
|
+
}, z.ZodTypeAny, "passthrough"> | z.objectOutputType<{
|
134
|
+
_meta: z.ZodOptional<z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>>;
|
135
|
+
} & {
|
136
|
+
toolResult: z.ZodUnknown;
|
137
|
+
}, z.ZodTypeAny, "passthrough">> & Required<Pick<import("ai").Tool<unknown, z.objectOutputType<{
|
138
|
+
_meta: z.ZodOptional<z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>>;
|
139
|
+
} & {
|
140
|
+
content: z.ZodArray<z.ZodUnion<[z.ZodObject<{
|
141
|
+
type: z.ZodLiteral<"text">;
|
142
|
+
text: z.ZodString;
|
143
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
144
|
+
type: z.ZodLiteral<"text">;
|
145
|
+
text: z.ZodString;
|
146
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
147
|
+
type: z.ZodLiteral<"text">;
|
148
|
+
text: z.ZodString;
|
149
|
+
}, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
|
150
|
+
type: z.ZodLiteral<"image">;
|
151
|
+
data: z.ZodString;
|
152
|
+
mimeType: z.ZodString;
|
153
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
154
|
+
type: z.ZodLiteral<"image">;
|
155
|
+
data: z.ZodString;
|
156
|
+
mimeType: z.ZodString;
|
157
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
158
|
+
type: z.ZodLiteral<"image">;
|
159
|
+
data: z.ZodString;
|
160
|
+
mimeType: z.ZodString;
|
161
|
+
}, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
|
162
|
+
type: z.ZodLiteral<"resource">;
|
163
|
+
resource: z.ZodUnion<[z.ZodObject<{
|
164
|
+
uri: z.ZodString;
|
165
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
166
|
+
} & {
|
167
|
+
text: z.ZodString;
|
168
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
169
|
+
uri: z.ZodString;
|
170
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
171
|
+
} & {
|
172
|
+
text: z.ZodString;
|
173
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
174
|
+
uri: z.ZodString;
|
175
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
176
|
+
} & {
|
177
|
+
text: z.ZodString;
|
178
|
+
}, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
|
179
|
+
uri: z.ZodString;
|
180
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
181
|
+
} & {
|
182
|
+
blob: z.ZodString;
|
183
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
184
|
+
uri: z.ZodString;
|
185
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
186
|
+
} & {
|
187
|
+
blob: z.ZodString;
|
188
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
189
|
+
uri: z.ZodString;
|
190
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
191
|
+
} & {
|
192
|
+
blob: z.ZodString;
|
193
|
+
}, z.ZodTypeAny, "passthrough">>]>;
|
194
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
195
|
+
type: z.ZodLiteral<"resource">;
|
196
|
+
resource: z.ZodUnion<[z.ZodObject<{
|
197
|
+
uri: z.ZodString;
|
198
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
199
|
+
} & {
|
200
|
+
text: z.ZodString;
|
201
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
202
|
+
uri: z.ZodString;
|
203
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
204
|
+
} & {
|
205
|
+
text: z.ZodString;
|
206
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
207
|
+
uri: z.ZodString;
|
208
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
209
|
+
} & {
|
210
|
+
text: z.ZodString;
|
211
|
+
}, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
|
212
|
+
uri: z.ZodString;
|
213
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
214
|
+
} & {
|
215
|
+
blob: z.ZodString;
|
216
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
217
|
+
uri: z.ZodString;
|
218
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
219
|
+
} & {
|
220
|
+
blob: z.ZodString;
|
221
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
222
|
+
uri: z.ZodString;
|
223
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
224
|
+
} & {
|
225
|
+
blob: z.ZodString;
|
226
|
+
}, z.ZodTypeAny, "passthrough">>]>;
|
227
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
228
|
+
type: z.ZodLiteral<"resource">;
|
229
|
+
resource: z.ZodUnion<[z.ZodObject<{
|
230
|
+
uri: z.ZodString;
|
231
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
232
|
+
} & {
|
233
|
+
text: z.ZodString;
|
234
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
235
|
+
uri: z.ZodString;
|
236
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
237
|
+
} & {
|
238
|
+
text: z.ZodString;
|
239
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
240
|
+
uri: z.ZodString;
|
241
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
242
|
+
} & {
|
243
|
+
text: z.ZodString;
|
244
|
+
}, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
|
245
|
+
uri: z.ZodString;
|
246
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
247
|
+
} & {
|
248
|
+
blob: z.ZodString;
|
249
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
250
|
+
uri: z.ZodString;
|
251
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
252
|
+
} & {
|
253
|
+
blob: z.ZodString;
|
254
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
255
|
+
uri: z.ZodString;
|
256
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
257
|
+
} & {
|
258
|
+
blob: z.ZodString;
|
259
|
+
}, z.ZodTypeAny, "passthrough">>]>;
|
260
|
+
}, z.ZodTypeAny, "passthrough">>]>, "many">;
|
261
|
+
isError: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
262
|
+
}, z.ZodTypeAny, "passthrough"> | z.objectOutputType<{
|
263
|
+
_meta: z.ZodOptional<z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>>;
|
264
|
+
} & {
|
265
|
+
toolResult: z.ZodUnknown;
|
266
|
+
}, z.ZodTypeAny, "passthrough">>, "execute">>;
|
267
|
+
}>, void | ((this: unknown) => any)>;
|
6
268
|
sequentialThinking: import("@gaubee/util").FuncRemember<() => Promise<{
|
7
269
|
[x: string]: import("ai").Tool<unknown, z.objectOutputType<{
|
8
270
|
_meta: z.ZodOptional<z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>>;
|
@@ -526,13 +788,24 @@ export declare const tools: {
|
|
526
788
|
}, z.ZodTypeAny, "passthrough">>, "execute">>;
|
527
789
|
}>, void | ((this: unknown) => any)>;
|
528
790
|
git: (repo: string) => Promise<ToolSet>;
|
529
|
-
|
530
|
-
|
531
|
-
|
532
|
-
|
533
|
-
|
534
|
-
|
535
|
-
}
|
536
|
-
|
791
|
+
jixo: (ai_task: AiTask) => {
|
792
|
+
jixo_log_lock: import("ai").Tool<{}, {
|
793
|
+
type: string;
|
794
|
+
filepath: string;
|
795
|
+
content: string;
|
796
|
+
}>;
|
797
|
+
jixo_log_unlock: import("ai").Tool<{}, {
|
798
|
+
type: string;
|
799
|
+
}>;
|
800
|
+
jixo_tasks_exit: import("ai").Tool<{
|
801
|
+
code: number;
|
802
|
+
reason: string;
|
803
|
+
}, {
|
804
|
+
type: string;
|
805
|
+
}>;
|
806
|
+
get_jixo_skill: import("ai").Tool<{
|
807
|
+
name: string;
|
808
|
+
}, any>;
|
809
|
+
};
|
537
810
|
};
|
538
811
|
//# sourceMappingURL=ai-tools.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ai-tools.d.ts","sourceRoot":"","sources":["../../../src/commands/tasks/ai-tools.ts"],"names":[],"mappings":"AACA,OAAO,EAAwD,KAAK,OAAO,EAAC,MAAM,IAAI,CAAC;AAEvF,OAAO,CAAC,MAAM,KAAK,CAAC;
|
1
|
+
{"version":3,"file":"ai-tools.d.ts","sourceRoot":"","sources":["../../../src/commands/tasks/ai-tools.ts"],"names":[],"mappings":"AACA,OAAO,EAAwD,KAAK,OAAO,EAAC,MAAM,IAAI,CAAC;AAEvF,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,kCAAkC,CAAC;AAE7D,eAAO,MAAM,KAAK;sBAGD,MAAM;8BAeM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAmDjB,MAAM;oBAkBH,MAAM;;;;;;;;;;;;;;;;;;;CAgD1B,CAAC"}
|
@@ -1,8 +1,8 @@
|
|
1
|
-
import { func_lazy, func_remember, map_get_or_put_async
|
1
|
+
import { func_lazy, func_remember, map_get_or_put_async } from "@gaubee/util";
|
2
2
|
import { experimental_createMCPClient as createMCPClient, tool } from "ai";
|
3
3
|
import { Experimental_StdioMCPTransport } from "ai/mcp-stdio";
|
4
4
|
import z from "zod";
|
5
|
-
import {
|
5
|
+
import { getAllPromptConfigs, getAllSkillMap } from "../../helper/prompts-loader.js";
|
6
6
|
export const tools = {
|
7
7
|
fileSystem: func_lazy(() => {
|
8
8
|
const map = new Map();
|
@@ -10,8 +10,8 @@ export const tools = {
|
|
10
10
|
return map_get_or_put_async(map, cwd, async () => {
|
11
11
|
const mcpClient = await createMCPClient({
|
12
12
|
transport: new Experimental_StdioMCPTransport({
|
13
|
-
command: "
|
14
|
-
args: ["
|
13
|
+
command: "pnpm",
|
14
|
+
args: ["mcp-fs", cwd],
|
15
15
|
}),
|
16
16
|
});
|
17
17
|
const tools = await mcpClient.tools();
|
@@ -37,6 +37,18 @@ export const tools = {
|
|
37
37
|
});
|
38
38
|
};
|
39
39
|
}),
|
40
|
+
pnpm: func_remember(async () => {
|
41
|
+
const mcpClient = await createMCPClient({
|
42
|
+
transport: new Experimental_StdioMCPTransport({
|
43
|
+
// command: "pnpx",
|
44
|
+
// args: ["@jixo/mcp-pnpm"],
|
45
|
+
command: "pnpm",
|
46
|
+
args: ["mcp-pnpm"],
|
47
|
+
}),
|
48
|
+
});
|
49
|
+
const tools = await mcpClient.tools();
|
50
|
+
return tools;
|
51
|
+
}),
|
40
52
|
sequentialThinking: func_remember(async () => {
|
41
53
|
const mcpClient = await createMCPClient({
|
42
54
|
transport: new Experimental_StdioMCPTransport({
|
@@ -72,29 +84,56 @@ export const tools = {
|
|
72
84
|
});
|
73
85
|
};
|
74
86
|
}),
|
75
|
-
|
76
|
-
const
|
77
|
-
const
|
78
|
-
const
|
79
|
-
|
80
|
-
return
|
81
|
-
}, Object.create(null));
|
82
|
-
return {
|
83
|
-
allSkillNavList,
|
84
|
-
tools: {
|
87
|
+
jixo: func_lazy(() => {
|
88
|
+
// const map = new Map<string, ToolSet>();
|
89
|
+
const configs = getAllPromptConfigs();
|
90
|
+
const allSkillMap = getAllSkillMap();
|
91
|
+
return (ai_task) => {
|
92
|
+
return {
|
85
93
|
get_jixo_skill: tool({
|
86
94
|
description: "Get the JIXO skill prompt by name",
|
87
95
|
parameters: z.object({
|
88
96
|
name: z.string().describe("The name to get the skill for"),
|
89
97
|
}),
|
90
98
|
execute: async ({ name }) => {
|
91
|
-
if (name in
|
99
|
+
if (name in allSkillMap) {
|
92
100
|
return Reflect.get(configs, name);
|
93
101
|
}
|
94
102
|
return { type: "error", message: "Skill not found" };
|
95
103
|
},
|
96
104
|
}),
|
97
|
-
|
105
|
+
...(() => {
|
106
|
+
// TODO: use process shared lock-manager
|
107
|
+
return {
|
108
|
+
jixo_log_lock: tool({
|
109
|
+
description: "Lock the log file for writing, will return log file content",
|
110
|
+
parameters: z.object({}),
|
111
|
+
execute: async () => {
|
112
|
+
ai_task.reloadLog();
|
113
|
+
return { type: "success", filepath: ai_task.log.filepath, content: ai_task.log.content };
|
114
|
+
},
|
115
|
+
}),
|
116
|
+
jixo_log_unlock: tool({
|
117
|
+
description: "Unlock the log file, for other locker can read the log file and then write.",
|
118
|
+
parameters: z.object({}),
|
119
|
+
execute: async () => {
|
120
|
+
return { type: "success" };
|
121
|
+
},
|
122
|
+
}),
|
123
|
+
jixo_tasks_exit: tool({
|
124
|
+
description: "Exit the tasks.",
|
125
|
+
parameters: z.object({
|
126
|
+
code: z.number({ description: "Exit code: 0 is Success; 1 is Error; 2 is No Tasks" }),
|
127
|
+
reason: z.string({ description: "Exit reasons that provide human-readable information" }),
|
128
|
+
}),
|
129
|
+
execute: async ({ code, reason }) => {
|
130
|
+
ai_task.exit(code, reason);
|
131
|
+
return { type: "success" };
|
132
|
+
},
|
133
|
+
}),
|
134
|
+
};
|
135
|
+
})(),
|
136
|
+
};
|
98
137
|
};
|
99
138
|
}),
|
100
139
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ai-tools.js","sourceRoot":"","sources":["../../../src/commands/tasks/ai-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,aAAa,EAAE,oBAAoB,
|
1
|
+
{"version":3,"file":"ai-tools.js","sourceRoot":"","sources":["../../../src/commands/tasks/ai-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,aAAa,EAAE,oBAAoB,EAAC,MAAM,cAAc,CAAC;AAC5E,OAAO,EAAC,4BAA4B,IAAI,eAAe,EAAE,IAAI,EAAe,MAAM,IAAI,CAAC;AACvF,OAAO,EAAC,8BAA8B,EAAC,MAAM,cAAc,CAAC;AAC5D,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAC,mBAAmB,EAAE,cAAc,EAAC,MAAM,gCAAgC,CAAC;AAGnF,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,UAAU,EAAE,SAAS,CAAC,GAAG,EAAE;QACzB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAmB,CAAC;QACvC,OAAO,CAAC,GAAW,EAAE,EAAE;YACrB,OAAO,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE;gBAC/C,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC;oBACtC,SAAS,EAAE,IAAI,8BAA8B,CAAC;wBAC5C,OAAO,EAAE,MAAM;wBACf,IAAI,EAAE,CAAC,QAAQ,EAAE,GAAG,CAAC;qBACtB,CAAC;iBACH,CAAC,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;gBACtC,OAAO,KAAK,CAAC;YACf,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;IACJ,CAAC,CAAC;IACF,MAAM,EAAE,SAAS,CAAC,GAAG,EAAE;QACrB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAmB,CAAC;QACvC,OAAO,CAAC,eAAuB,EAAE,EAAE;YACjC,OAAO,oBAAoB,CAAC,GAAG,EAAE,eAAe,EAAE,KAAK,IAAI,EAAE;gBAC3D,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC;oBACtC,SAAS,EAAE,IAAI,8BAA8B,CAAC;wBAC5C,OAAO,EAAE,MAAM;wBACf,IAAI,EAAE,CAAC,qCAAqC,CAAC;wBAC7C,GAAG,EAAE;4BACH,gBAAgB,EAAE,eAAe;yBAClC;qBACF,CAAC;iBACH,CAAC,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;gBACtC,OAAO,KAAK,CAAC;YACf,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;IACJ,CAAC,CAAC;IACF,IAAI,EAAE,aAAa,CAAC,KAAK,IAAI,EAAE;QAC7B,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC;YACtC,SAAS,EAAE,IAAI,8BAA8B,CAAC;gBAC5C,mBAAmB;gBACnB,4BAA4B;gBAC5B,OAAO,EAAE,MAAM;gBACf,IAAI,EAAE,CAAC,UAAU,CAAC;aACnB,CAAC;SACH,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QACtC,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,kBAAkB,EAAE,aAAa,CAAC,KAAK,IAAI,EAAE;QAC3C,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC;YACtC,SAAS,EAAE,IAAI,8BAA8B,CAAC;gBAC5C,OAAO,EAAE,MAAM;gBACf,IAAI,EAAE,CAAC,kDAAkD,CAAC;aAC3D,CAAC;SACH,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QACtC,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,KAAK,EAAE,aAAa,CAAC,KAAK,IAAI,EAAE;QAC9B,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC;YACtC,SAAS,EAAE,IAAI,8BAA8B,CAAC;gBAC5C,OAAO,EAAE,KAAK;gBACd,IAAI,EAAE,CAAC,kBAAkB,CAAC;aAC3B,CAAC;SACH,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QACtC,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE;QAClB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAmB,CAAC;QAEvC,OAAO,CAAC,IAAY,EAAE,EAAE;YACtB,OAAO,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,IAAI,EAAE;gBAChD,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC;oBACtC,SAAS,EAAE,IAAI,8BAA8B,CAAC;wBAC5C,OAAO,EAAE,KAAK;wBACd,IAAI,EAAE,CAAC,gBAAgB,EAAE,cAAc,EAAE,IAAI,CAAC;qBAC/C,CAAC;iBACH,CAAC,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;gBACtC,OAAO,KAAK,CAAC;YACf,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,IAAI,EAAE,SAAS,CAAC,GAAG,EAAE;QACnB,0CAA0C;QAC1C,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;QACtC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;QACrC,OAAO,CAAC,OAAe,EAAE,EAAE;YACzB,OAAO;gBACL,cAAc,EAAE,IAAI,CAAC;oBACnB,WAAW,EAAE,mCAAmC;oBAChD,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;wBACnB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;qBAC3D,CAAC;oBACF,OAAO,EAAE,KAAK,EAAE,EAAC,IAAI,EAAC,EAAE,EAAE;wBACxB,IAAI,IAAI,IAAI,WAAW,EAAE,CAAC;4BACxB,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;wBACpC,CAAC;wBACD,OAAO,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAC,CAAC;oBACrD,CAAC;iBACF,CAAC;gBACF,GAAG,CAAC,GAAG,EAAE;oBACP,yCAAyC;oBACzC,OAAO;wBACL,aAAa,EAAE,IAAI,CAAC;4BAClB,WAAW,EAAE,6DAA6D;4BAC1E,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;4BACxB,OAAO,EAAE,KAAK,IAAI,EAAE;gCAClB,OAAO,CAAC,SAAS,EAAE,CAAC;gCACpB,OAAO,EAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,EAAC,CAAC;4BACzF,CAAC;yBACF,CAAC;wBACF,eAAe,EAAE,IAAI,CAAC;4BACpB,WAAW,EAAE,6EAA6E;4BAC1F,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;4BACxB,OAAO,EAAE,KAAK,IAAI,EAAE;gCAClB,OAAO,EAAC,IAAI,EAAE,SAAS,EAAC,CAAC;4BAC3B,CAAC;yBACF,CAAC;wBACF,eAAe,EAAE,IAAI,CAAC;4BACpB,WAAW,EAAE,iBAAiB;4BAC9B,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;gCACnB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAC,WAAW,EAAE,oDAAoD,EAAC,CAAC;gCACnF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAC,WAAW,EAAE,sDAAsD,EAAC,CAAC;6BACxF,CAAC;4BACF,OAAO,EAAE,KAAK,EAAE,EAAC,IAAI,EAAE,MAAM,EAAC,EAAE,EAAE;gCAChC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gCAC3B,OAAO,EAAC,IAAI,EAAE,SAAS,EAAC,CAAC;4BAC3B,CAAC;yBACF,CAAC;qBACH,CAAC;gBACJ,CAAC,CAAC,EAAE;aACL,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC,CAAC;CACH,CAAC","sourcesContent":["import {func_lazy, func_remember, map_get_or_put_async} from \"@gaubee/util\";\nimport {experimental_createMCPClient as createMCPClient, tool, type ToolSet} from \"ai\";\nimport {Experimental_StdioMCPTransport} from \"ai/mcp-stdio\";\nimport z from \"zod\";\nimport {getAllPromptConfigs, getAllSkillMap} from \"../../helper/prompts-loader.js\";\nimport type {AiTask} from \"../../helper/resolve-ai-tasks.js\";\n\nexport const tools = {\n fileSystem: func_lazy(() => {\n const map = new Map<string, ToolSet>();\n return (cwd: string) => {\n return map_get_or_put_async(map, cwd, async () => {\n const mcpClient = await createMCPClient({\n transport: new Experimental_StdioMCPTransport({\n command: \"pnpm\",\n args: [\"mcp-fs\", cwd],\n }),\n });\n const tools = await mcpClient.tools();\n return tools;\n });\n };\n }),\n memory: func_lazy(() => {\n const map = new Map<string, ToolSet>();\n return (memory_filepath: string) => {\n return map_get_or_put_async(map, memory_filepath, async () => {\n const mcpClient = await createMCPClient({\n transport: new Experimental_StdioMCPTransport({\n command: \"pnpx\",\n args: [\"@modelcontextprotocol/server-memory\"],\n env: {\n MEMORY_FILE_PATH: memory_filepath,\n },\n }),\n });\n const tools = await mcpClient.tools();\n return tools;\n });\n };\n }),\n pnpm: func_remember(async () => {\n const mcpClient = await createMCPClient({\n transport: new Experimental_StdioMCPTransport({\n // command: \"pnpx\",\n // args: [\"@jixo/mcp-pnpm\"],\n command: \"pnpm\",\n args: [\"mcp-pnpm\"],\n }),\n });\n const tools = await mcpClient.tools();\n return tools;\n }),\n sequentialThinking: func_remember(async () => {\n const mcpClient = await createMCPClient({\n transport: new Experimental_StdioMCPTransport({\n command: \"pnpx\",\n args: [\"@modelcontextprotocol/server-sequential-thinking\"],\n }),\n });\n const tools = await mcpClient.tools();\n return tools;\n }),\n fetch: func_remember(async () => {\n const mcpClient = await createMCPClient({\n transport: new Experimental_StdioMCPTransport({\n command: \"uvx\",\n args: [\"mcp-server-fetch\"],\n }),\n });\n const tools = await mcpClient.tools();\n return tools;\n }),\n git: func_lazy(() => {\n const map = new Map<string, ToolSet>();\n\n return (repo: string) => {\n return map_get_or_put_async(map, repo, async () => {\n const mcpClient = await createMCPClient({\n transport: new Experimental_StdioMCPTransport({\n command: \"uvx\",\n args: [\"mcp-server-git\", \"--repository\", repo],\n }),\n });\n const tools = await mcpClient.tools();\n return tools;\n });\n };\n }),\n\n jixo: func_lazy(() => {\n // const map = new Map<string, ToolSet>();\n const configs = getAllPromptConfigs();\n const allSkillMap = getAllSkillMap();\n return (ai_task: AiTask) => {\n return {\n get_jixo_skill: tool({\n description: \"Get the JIXO skill prompt by name\",\n parameters: z.object({\n name: z.string().describe(\"The name to get the skill for\"),\n }),\n execute: async ({name}) => {\n if (name in allSkillMap) {\n return Reflect.get(configs, name);\n }\n return {type: \"error\", message: \"Skill not found\"};\n },\n }),\n ...(() => {\n // TODO: use process shared lock-manager\n return {\n jixo_log_lock: tool({\n description: \"Lock the log file for writing, will return log file content\",\n parameters: z.object({}),\n execute: async () => {\n ai_task.reloadLog();\n return {type: \"success\", filepath: ai_task.log.filepath, content: ai_task.log.content};\n },\n }),\n jixo_log_unlock: tool({\n description: \"Unlock the log file, for other locker can read the log file and then write.\",\n parameters: z.object({}),\n execute: async () => {\n return {type: \"success\"};\n },\n }),\n jixo_tasks_exit: tool({\n description: \"Exit the tasks.\",\n parameters: z.object({\n code: z.number({description: \"Exit code: 0 is Success; 1 is Error; 2 is No Tasks\"}),\n reason: z.string({description: \"Exit reasons that provide human-readable information\"}),\n }),\n execute: async ({code, reason}) => {\n ai_task.exit(code, reason);\n return {type: \"success\"};\n },\n }),\n };\n })(),\n };\n };\n }),\n};\n"]}
|
@@ -1,9 +1,13 @@
|
|
1
|
+
import { type OpenAIProvider } from "@ai-sdk/openai";
|
1
2
|
export declare const providers: {
|
2
3
|
readonly deepseek: import("@ai-sdk/deepseek").DeepSeekProvider;
|
3
4
|
readonly anthropic: import("@ai-sdk/anthropic").AnthropicProvider;
|
4
5
|
readonly google: import("@ai-sdk/google").GoogleGenerativeAIProvider;
|
5
|
-
readonly openai:
|
6
|
+
readonly openai: OpenAIProvider;
|
6
7
|
readonly xai: import("@ai-sdk/xai").XaiProvider;
|
7
8
|
readonly deepinfra: import("@ai-sdk/deepinfra").DeepInfraProvider;
|
8
9
|
};
|
10
|
+
type LanguageModelV2 = ReturnType<OpenAIProvider>;
|
11
|
+
export declare const getModel: (model?: string) => LanguageModelV2;
|
12
|
+
export {};
|
9
13
|
//# sourceMappingURL=model-providers.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"model-providers.d.ts","sourceRoot":"","sources":["../../../src/commands/tasks/model-providers.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"model-providers.d.ts","sourceRoot":"","sources":["../../../src/commands/tasks/model-providers.ts"],"names":[],"mappings":"AAIA,OAAO,EAAe,KAAK,cAAc,EAAC,MAAM,gBAAgB,CAAC;AAOjE,eAAO,MAAM,SAAS;;;;;;;CA2CpB,CAAC;AAEH,KAAK,eAAe,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;AAClD,eAAO,MAAM,QAAQ,GAAI,QAAQ,MAAM,KAAG,eA6BzC,CAAC"}
|
@@ -5,6 +5,7 @@ import { createGoogleGenerativeAI } from "@ai-sdk/google";
|
|
5
5
|
import { createOpenAI } from "@ai-sdk/openai";
|
6
6
|
import { createXai } from "@ai-sdk/xai";
|
7
7
|
import { obj_lazify } from "@gaubee/util";
|
8
|
+
import { match, P } from "ts-pattern";
|
8
9
|
import { safeEnv } from "../../env.js";
|
9
10
|
// const wrapper = (provider:)
|
10
11
|
export const providers = obj_lazify({
|
@@ -50,4 +51,34 @@ export const providers = obj_lazify({
|
|
50
51
|
});
|
51
52
|
},
|
52
53
|
});
|
54
|
+
export const getModel = (model) => {
|
55
|
+
return match(model)
|
56
|
+
.with(P.string.startsWith("deepseek-"), (model) => providers.deepseek(model))
|
57
|
+
.with(P.string.startsWith("gemini-"), (model) => providers.google(model))
|
58
|
+
.with(P.string.startsWith("o3-"), P.string.startsWith("o1-"), P.string.startsWith("gpt-"), (model) => providers.openai(model))
|
59
|
+
.with(P.string.startsWith("claude-"), (model) => providers.anthropic(model))
|
60
|
+
.with(P.string.startsWith("grok-"), (model) => providers.xai(model))
|
61
|
+
.with(P.string.includes("/"), (model) => providers.deepinfra(model))
|
62
|
+
.otherwise(() => {
|
63
|
+
if (safeEnv.JIXO_DEEPSEEK_API_KEY) {
|
64
|
+
return providers.deepseek("deepseek-reasoner");
|
65
|
+
}
|
66
|
+
if (safeEnv.JIXO_GOOGLE_API_KEY) {
|
67
|
+
return providers.google("gemini-2.5-pro-preview-05-06");
|
68
|
+
}
|
69
|
+
if (safeEnv.JIXO_OPENAI_API_KEY) {
|
70
|
+
return providers.openai("o3-mini");
|
71
|
+
}
|
72
|
+
if (safeEnv.JIXO_ANTHROPIC_API_KEY) {
|
73
|
+
return providers.anthropic("claude-4-sonnet-20250514");
|
74
|
+
}
|
75
|
+
if (safeEnv.JIXO_XAI_API_KEY) {
|
76
|
+
return providers.xai("grok-3-beta");
|
77
|
+
}
|
78
|
+
if (safeEnv.JIXO_DEEPINFRA_API_KEY) {
|
79
|
+
return providers.deepinfra("meta-llama/Meta-Llama-3.1-405B-Instruct");
|
80
|
+
}
|
81
|
+
return providers.deepseek("deepseek-reasoner");
|
82
|
+
});
|
83
|
+
};
|
53
84
|
//# sourceMappingURL=model-providers.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"model-providers.js","sourceRoot":"","sources":["../../../src/commands/tasks/model-providers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAC,wBAAwB,EAAC,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAC,YAAY,
|
1
|
+
{"version":3,"file":"model-providers.js","sourceRoot":"","sources":["../../../src/commands/tasks/model-providers.ts"],"names":[],"mappings":"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","sourcesContent":["import {createAnthropic} from \"@ai-sdk/anthropic\";\nimport {createDeepInfra} from \"@ai-sdk/deepinfra\";\nimport {createDeepSeek} from \"@ai-sdk/deepseek\";\nimport {createGoogleGenerativeAI} from \"@ai-sdk/google\";\nimport {createOpenAI, type OpenAIProvider} from \"@ai-sdk/openai\";\nimport {createXai} from \"@ai-sdk/xai\";\nimport {obj_lazify} from \"@gaubee/util\";\nimport {match, P} from \"ts-pattern\";\nimport {safeEnv} from \"../../env.js\";\n\n// const wrapper = (provider:)\nexport const providers = obj_lazify({\n get deepseek() {\n return createDeepSeek({\n baseURL: safeEnv.JIXO_DEEPSEEK_BASE_URL || undefined,\n apiKey: safeEnv.JIXO_DEEPSEEK_API_KEY,\n });\n },\n get anthropic() {\n // const bashTool = anthropic.tools.bash_20250124({\n // execute: async ({command, restart}) => execSync(command).toString(),\n // });\n\n const provider = createAnthropic({\n baseURL: safeEnv.JIXO_ANTHROPIC_BASE_URL || undefined,\n apiKey: safeEnv.JIXO_ANTHROPIC_API_KEY,\n });\n return provider;\n },\n get google() {\n return createGoogleGenerativeAI({\n baseURL: safeEnv.JIXO_GOOGLE_BASE_URL || undefined,\n apiKey: safeEnv.JIXO_GOOGLE_API_KEY,\n });\n },\n get openai() {\n return createOpenAI({\n baseURL: safeEnv.JIXO_OPENAI_BASE_URL || undefined,\n apiKey: safeEnv.JIXO_OPENAI_API_KEY,\n organization: safeEnv.JIXO_OPENAI_ORGANIZATION || undefined,\n });\n },\n get xai() {\n return createXai({\n baseURL: safeEnv.JIXO_XAI_BASE_URL || undefined,\n apiKey: safeEnv.JIXO_XAI_API_KEY,\n });\n },\n get deepinfra() {\n return createDeepInfra({\n baseURL: safeEnv.JIXO_DEEPINFRA_BASE_URL || undefined,\n apiKey: safeEnv.JIXO_DEEPINFRA_API_KEY,\n });\n },\n});\n\ntype LanguageModelV2 = ReturnType<OpenAIProvider>;\nexport const getModel = (model?: string): LanguageModelV2 => {\n return match(model)\n .with(P.string.startsWith(\"deepseek-\"), (model) => providers.deepseek(model))\n .with(P.string.startsWith(\"gemini-\"), (model) => providers.google(model))\n .with(P.string.startsWith(\"o3-\"), P.string.startsWith(\"o1-\"), P.string.startsWith(\"gpt-\"), (model) => providers.openai(model))\n .with(P.string.startsWith(\"claude-\"), (model) => providers.anthropic(model))\n .with(P.string.startsWith(\"grok-\"), (model) => providers.xai(model))\n .with(P.string.includes(\"/\"), (model) => providers.deepinfra(model))\n .otherwise(() => {\n if (safeEnv.JIXO_DEEPSEEK_API_KEY) {\n return providers.deepseek(\"deepseek-reasoner\");\n }\n if (safeEnv.JIXO_GOOGLE_API_KEY) {\n return providers.google(\"gemini-2.5-pro-preview-05-06\");\n }\n if (safeEnv.JIXO_OPENAI_API_KEY) {\n return providers.openai(\"o3-mini\");\n }\n if (safeEnv.JIXO_ANTHROPIC_API_KEY) {\n return providers.anthropic(\"claude-4-sonnet-20250514\");\n }\n if (safeEnv.JIXO_XAI_API_KEY) {\n return providers.xai(\"grok-3-beta\");\n }\n if (safeEnv.JIXO_DEEPINFRA_API_KEY) {\n return providers.deepinfra(\"meta-llama/Meta-Llama-3.1-405B-Instruct\");\n }\n return providers.deepseek(\"deepseek-reasoner\");\n });\n};\n"]}
|
@@ -1,4 +1,4 @@
|
|
1
1
|
import { FileEntry } from "@gaubee/nodekit";
|
2
2
|
import type { AiTask } from "../../helper/resolve-ai-tasks.js";
|
3
|
-
export declare const runAiTask: (ai_task: AiTask, allFiles: FileEntry[], changedFilesSet: Record<string, FileEntry[]>) => Promise<void>;
|
3
|
+
export declare const runAiTask: (ai_task: AiTask, loopTimes: number, allFiles: FileEntry[], changedFilesSet: Record<string, FileEntry[]>) => Promise<void>;
|
4
4
|
//# sourceMappingURL=run-ai-task.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"run-ai-task.d.ts","sourceRoot":"","sources":["../../../src/commands/tasks/run-ai-task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,SAAS,
|
1
|
+
{"version":3,"file":"run-ai-task.d.ts","sourceRoot":"","sources":["../../../src/commands/tasks/run-ai-task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,SAAS,EAA0C,MAAM,iBAAiB,CAAC;AAW/F,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,kCAAkC,CAAC;AAO7D,eAAO,MAAM,SAAS,GAAU,SAAS,MAAM,EAAE,WAAW,MAAM,EAAE,UAAU,SAAS,EAAE,EAAE,iBAAiB,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,kBAuCtI,CAAC"}
|