agent-rev 0.3.2 → 0.3.3
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/core/engine.js +24 -3
- package/dist/utils/qwen-auth.js +23 -3
- package/package.json +1 -1
package/dist/core/engine.js
CHANGED
|
@@ -258,8 +258,13 @@ INSTRUCCIONES:
|
|
|
258
258
|
return await callQwenAPI(prompt, model);
|
|
259
259
|
}
|
|
260
260
|
catch (err) {
|
|
261
|
-
|
|
262
|
-
|
|
261
|
+
if (err.message?.startsWith('QWEN_AUTH_EXPIRED')) {
|
|
262
|
+
console.log(chalk.red('\n ✗ Sesión Qwen expirada.'));
|
|
263
|
+
console.log(chalk.yellow(' Ejecutá: /login para re-autenticarte.\n'));
|
|
264
|
+
}
|
|
265
|
+
else {
|
|
266
|
+
console.log(chalk.red(`\n ✗ Error Qwen: ${err.message}`));
|
|
267
|
+
}
|
|
263
268
|
return '';
|
|
264
269
|
}
|
|
265
270
|
}
|
|
@@ -452,6 +457,11 @@ INSTRUCCIONES:
|
|
|
452
457
|
return await callQwenAPIFromCreds(rolePrompt, model, credsPath);
|
|
453
458
|
}
|
|
454
459
|
catch (err) {
|
|
460
|
+
if (err.message?.startsWith('QWEN_AUTH_EXPIRED')) {
|
|
461
|
+
console.log(chalk.red(`\n ✗ Sesión expirada para ${cliName}.`));
|
|
462
|
+
console.log(chalk.yellow(` Ejecutá: ${cliName} --login\n`));
|
|
463
|
+
return null;
|
|
464
|
+
}
|
|
455
465
|
log.warn(`${cliName} direct API call failed: ${err.message}`);
|
|
456
466
|
return null;
|
|
457
467
|
}
|
|
@@ -843,7 +853,18 @@ INSTRUCCIONES:
|
|
|
843
853
|
3. Identifica dependencias entre servicios.
|
|
844
854
|
4. Crea/actualiza ${archPath} con tabla resumen y detalle por servicio.
|
|
845
855
|
5. Crea/actualiza ${contextDir}/<servicio>/architecture.md para cada servicio.`);
|
|
846
|
-
|
|
856
|
+
let result;
|
|
857
|
+
try {
|
|
858
|
+
result = await callQwenAPI(prompt, role.model);
|
|
859
|
+
}
|
|
860
|
+
catch (err) {
|
|
861
|
+
if (err.message?.startsWith('QWEN_AUTH_EXPIRED')) {
|
|
862
|
+
console.log(chalk.red('\n ✗ Sesión Qwen expirada.'));
|
|
863
|
+
console.log(chalk.yellow(' Ejecutá: agent-mp --login (o agent-explorer --login)\n'));
|
|
864
|
+
return '';
|
|
865
|
+
}
|
|
866
|
+
throw err;
|
|
867
|
+
}
|
|
847
868
|
try {
|
|
848
869
|
const ts = new Date().toISOString().replace(/[:.]/g, '-').slice(0, 19);
|
|
849
870
|
await writeFile(path.join(contextDir, `explorer-${ts}.md`), `# Explorer Report\n\nTask: ${effectiveTask}\n\n${result}\n`);
|
package/dist/utils/qwen-auth.js
CHANGED
|
@@ -254,6 +254,9 @@ async function callQwenAPIWithToken(token, prompt, model) {
|
|
|
254
254
|
});
|
|
255
255
|
if (!response.ok) {
|
|
256
256
|
const errorText = await response.text();
|
|
257
|
+
if (response.status === 401) {
|
|
258
|
+
throw new Error(`QWEN_AUTH_EXPIRED: ${errorText}`);
|
|
259
|
+
}
|
|
257
260
|
throw new Error(`Qwen API error: ${response.status} - ${errorText}`);
|
|
258
261
|
}
|
|
259
262
|
const data = await response.json();
|
|
@@ -262,9 +265,17 @@ async function callQwenAPIWithToken(token, prompt, model) {
|
|
|
262
265
|
export async function callQwenAPI(prompt, model = 'coder-model') {
|
|
263
266
|
const token = await loadToken();
|
|
264
267
|
if (!token) {
|
|
265
|
-
throw new Error('No hay token de Qwen. Ejecutá
|
|
268
|
+
throw new Error('QWEN_AUTH_EXPIRED: No hay token de Qwen. Ejecutá --login primero.');
|
|
269
|
+
}
|
|
270
|
+
try {
|
|
271
|
+
return await callQwenAPIWithToken(token, prompt, model);
|
|
272
|
+
}
|
|
273
|
+
catch (err) {
|
|
274
|
+
if (err.message?.startsWith('QWEN_AUTH_EXPIRED')) {
|
|
275
|
+
throw new Error('QWEN_AUTH_EXPIRED: Sesión expirada. Ejecutá: agent-mp --login');
|
|
276
|
+
}
|
|
277
|
+
throw err;
|
|
266
278
|
}
|
|
267
|
-
return callQwenAPIWithToken(token, prompt, model);
|
|
268
279
|
}
|
|
269
280
|
/** Call Qwen API using credentials from a specific file path (for role binaries) */
|
|
270
281
|
export async function callQwenAPIFromCreds(prompt, model, credsPath) {
|
|
@@ -293,5 +304,14 @@ export async function callQwenAPIFromCreds(prompt, model, credsPath) {
|
|
|
293
304
|
await fs.writeFile(credsPath, JSON.stringify(token, null, 2), 'utf-8');
|
|
294
305
|
}
|
|
295
306
|
}
|
|
296
|
-
|
|
307
|
+
try {
|
|
308
|
+
return await callQwenAPIWithToken(token, prompt, model);
|
|
309
|
+
}
|
|
310
|
+
catch (err) {
|
|
311
|
+
if (err.message?.startsWith('QWEN_AUTH_EXPIRED')) {
|
|
312
|
+
const cliName = path.basename(path.dirname(credsPath)).replace(/^\./, '');
|
|
313
|
+
throw new Error(`QWEN_AUTH_EXPIRED: Sesión expirada. Ejecutá: ${cliName} --login`);
|
|
314
|
+
}
|
|
315
|
+
throw err;
|
|
316
|
+
}
|
|
297
317
|
}
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"agent-rev","version":"0.3.
|
|
1
|
+
{"name":"agent-rev","version":"0.3.3","description":"agent-rev agent","type":"module","main":"./dist/index.js","files":["dist/"],"bin":{"agent-rev":"dist/index.js"},"scripts":{"build":"tsc"},"keywords":["ai","agent","cli"],"license":"MIT","dependencies":{"@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0","chalk":"^5.4.1","commander":"^13.1.0","open":"^11.0.0","openai":"^4.91.0"},"engines":{"node":">=18.0.0"}}
|