@ai-setting/roy-agent-cli 1.5.102 → 1.5.104
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/bin/roy-agent.js +59 -5
- package/dist/index.js +59 -5
- package/dist/roy-agent-linux-x64/bin/roy-agent +0 -0
- package/package.json +1 -1
package/dist/bin/roy-agent.js
CHANGED
|
@@ -7427,7 +7427,7 @@ var require_dist = __commonJS((exports) => {
|
|
|
7427
7427
|
var require_package = __commonJS((exports, module) => {
|
|
7428
7428
|
module.exports = {
|
|
7429
7429
|
name: "@ai-setting/roy-agent-cli",
|
|
7430
|
-
version: "1.5.
|
|
7430
|
+
version: "1.5.104",
|
|
7431
7431
|
type: "module",
|
|
7432
7432
|
description: "CLI for roy-agent - Non-interactive command execution",
|
|
7433
7433
|
main: "./dist/index.js",
|
|
@@ -9084,13 +9084,23 @@ class QueryExecutor {
|
|
|
9084
9084
|
this.output.info(`执行: ${message}`);
|
|
9085
9085
|
}
|
|
9086
9086
|
const contextHandler = new ContextHandlerService(this.env, this.sessionComponent, { maxRetries: 1, autoCompact: true });
|
|
9087
|
-
const {
|
|
9087
|
+
const {
|
|
9088
|
+
systemPrompt: agentContextSystemPrompt,
|
|
9089
|
+
eventSourceSystemPrompt: agentContextPreloadedPrompts,
|
|
9090
|
+
...restAgentContext
|
|
9091
|
+
} = agentContext ?? {};
|
|
9092
|
+
let eventSourceFinalPrompt;
|
|
9093
|
+
if (typeof agentContextSystemPrompt === "string" && agentContextSystemPrompt.length > 0) {
|
|
9094
|
+
eventSourceFinalPrompt = agentContextSystemPrompt;
|
|
9095
|
+
} else if (typeof agentContextPreloadedPrompts === "string" && agentContextPreloadedPrompts.length > 0) {
|
|
9096
|
+
eventSourceFinalPrompt = agentContextPreloadedPrompts;
|
|
9097
|
+
}
|
|
9088
9098
|
const context = {
|
|
9089
9099
|
sessionId,
|
|
9090
9100
|
metadata: {
|
|
9091
9101
|
originalQuery: message,
|
|
9092
9102
|
traceId,
|
|
9093
|
-
systemPrompt:
|
|
9103
|
+
systemPrompt: eventSourceFinalPrompt
|
|
9094
9104
|
},
|
|
9095
9105
|
...restAgentContext
|
|
9096
9106
|
};
|
|
@@ -9668,6 +9678,41 @@ async function startSingleEventSourceImpl(eventSourceComponent, output, eventSou
|
|
|
9668
9678
|
}
|
|
9669
9679
|
}
|
|
9670
9680
|
|
|
9681
|
+
// src/commands/collect-event-source-system-prompts.ts
|
|
9682
|
+
import { resolveBountyIMSystemPrompt } from "@ai-setting/roy-agent-core";
|
|
9683
|
+
function resolveSystemPromptForSource(config) {
|
|
9684
|
+
if (config.type === "bounty-im") {
|
|
9685
|
+
const imServerUrl = config.imServerUrl || config.options && config.options.imServerUrl;
|
|
9686
|
+
const address = config.address || config.options && config.options.address || "unknown";
|
|
9687
|
+
return resolveBountyIMSystemPrompt({
|
|
9688
|
+
configSystemPrompt: config.systemPrompt,
|
|
9689
|
+
currentAddress: address,
|
|
9690
|
+
imServerUrl
|
|
9691
|
+
});
|
|
9692
|
+
}
|
|
9693
|
+
return config.systemPrompt;
|
|
9694
|
+
}
|
|
9695
|
+
function collectEventSourceSystemPrompts(eventSourceIds, eventSourceComponent) {
|
|
9696
|
+
const result = [];
|
|
9697
|
+
for (const id of eventSourceIds) {
|
|
9698
|
+
const config = eventSourceComponent.get(id);
|
|
9699
|
+
if (!config)
|
|
9700
|
+
continue;
|
|
9701
|
+
const prompt = resolveSystemPromptForSource(config);
|
|
9702
|
+
if (!prompt)
|
|
9703
|
+
continue;
|
|
9704
|
+
result.push({ id, type: config.type, prompt });
|
|
9705
|
+
}
|
|
9706
|
+
return result;
|
|
9707
|
+
}
|
|
9708
|
+
function joinResolvedSystemPrompts(prompts) {
|
|
9709
|
+
return prompts.map((p) => p.prompt).join(`
|
|
9710
|
+
|
|
9711
|
+
---
|
|
9712
|
+
|
|
9713
|
+
`);
|
|
9714
|
+
}
|
|
9715
|
+
|
|
9671
9716
|
// src/commands/shared/ask-user-handler.ts
|
|
9672
9717
|
import * as readline from "readline";
|
|
9673
9718
|
import chalk3 from "chalk";
|
|
@@ -10139,11 +10184,13 @@ ${COLORS.system("[通知2] ❯ " + message.replace(/\n/g, `
|
|
|
10139
10184
|
pluginEnabled,
|
|
10140
10185
|
envEvent,
|
|
10141
10186
|
plugins,
|
|
10142
|
-
eventSessionId
|
|
10187
|
+
eventSessionId,
|
|
10188
|
+
systemPrompt: envEvent.metadata?.systemPrompt
|
|
10143
10189
|
};
|
|
10144
10190
|
await this.executeInternal(message, { showPrompt: true });
|
|
10145
10191
|
}
|
|
10146
10192
|
currentAgentContext = undefined;
|
|
10193
|
+
eventSourceSystemPrompts = [];
|
|
10147
10194
|
isIdle() {
|
|
10148
10195
|
return !this.isExecuting;
|
|
10149
10196
|
}
|
|
@@ -10588,10 +10635,13 @@ function createInteractiveCommand(externalEnvService) {
|
|
|
10588
10635
|
sessionTitle,
|
|
10589
10636
|
onExecute: async (message, traceId, agentContext) => {
|
|
10590
10637
|
resetStreamAbort();
|
|
10638
|
+
const preloadedPrompts = this.eventSourceSystemPrompts;
|
|
10639
|
+
const eventSourceSystemPrompt = preloadedPrompts.length > 0 ? joinResolvedSystemPrompts(preloadedPrompts) : undefined;
|
|
10591
10640
|
const mergedContext = {
|
|
10592
10641
|
...currentAgentContext,
|
|
10593
10642
|
model: args.model,
|
|
10594
|
-
...agentContext
|
|
10643
|
+
...agentContext,
|
|
10644
|
+
eventSourceSystemPrompt
|
|
10595
10645
|
};
|
|
10596
10646
|
const effectiveSessionId = mergedContext.eventSessionId ?? sessionId;
|
|
10597
10647
|
const result = await queryExecutor.execute(message, effectiveSessionId, {
|
|
@@ -10672,6 +10722,10 @@ function createInteractiveCommand(externalEnvService) {
|
|
|
10672
10722
|
process.exit(1);
|
|
10673
10723
|
}
|
|
10674
10724
|
const summary = await startEventSources(eventSourceIds, eventSourceComponent, output);
|
|
10725
|
+
this.eventSourceSystemPrompts = collectEventSourceSystemPrompts(eventSourceIds, eventSourceComponent);
|
|
10726
|
+
if (this.eventSourceSystemPrompts.length > 0) {
|
|
10727
|
+
output.info(`\uD83D\uDCE6 Preloaded ${this.eventSourceSystemPrompts.length} event-source systemPrompt(s)`);
|
|
10728
|
+
}
|
|
10675
10729
|
if (eventSourceIds.length === 1 && summary.failedCount > 0) {
|
|
10676
10730
|
process.exit(1);
|
|
10677
10731
|
}
|
package/dist/index.js
CHANGED
|
@@ -7426,7 +7426,7 @@ var require_dist = __commonJS((exports) => {
|
|
|
7426
7426
|
var require_package = __commonJS((exports, module) => {
|
|
7427
7427
|
module.exports = {
|
|
7428
7428
|
name: "@ai-setting/roy-agent-cli",
|
|
7429
|
-
version: "1.5.
|
|
7429
|
+
version: "1.5.104",
|
|
7430
7430
|
type: "module",
|
|
7431
7431
|
description: "CLI for roy-agent - Non-interactive command execution",
|
|
7432
7432
|
main: "./dist/index.js",
|
|
@@ -9083,13 +9083,23 @@ class QueryExecutor {
|
|
|
9083
9083
|
this.output.info(`执行: ${message}`);
|
|
9084
9084
|
}
|
|
9085
9085
|
const contextHandler = new ContextHandlerService(this.env, this.sessionComponent, { maxRetries: 1, autoCompact: true });
|
|
9086
|
-
const {
|
|
9086
|
+
const {
|
|
9087
|
+
systemPrompt: agentContextSystemPrompt,
|
|
9088
|
+
eventSourceSystemPrompt: agentContextPreloadedPrompts,
|
|
9089
|
+
...restAgentContext
|
|
9090
|
+
} = agentContext ?? {};
|
|
9091
|
+
let eventSourceFinalPrompt;
|
|
9092
|
+
if (typeof agentContextSystemPrompt === "string" && agentContextSystemPrompt.length > 0) {
|
|
9093
|
+
eventSourceFinalPrompt = agentContextSystemPrompt;
|
|
9094
|
+
} else if (typeof agentContextPreloadedPrompts === "string" && agentContextPreloadedPrompts.length > 0) {
|
|
9095
|
+
eventSourceFinalPrompt = agentContextPreloadedPrompts;
|
|
9096
|
+
}
|
|
9087
9097
|
const context = {
|
|
9088
9098
|
sessionId,
|
|
9089
9099
|
metadata: {
|
|
9090
9100
|
originalQuery: message,
|
|
9091
9101
|
traceId,
|
|
9092
|
-
systemPrompt:
|
|
9102
|
+
systemPrompt: eventSourceFinalPrompt
|
|
9093
9103
|
},
|
|
9094
9104
|
...restAgentContext
|
|
9095
9105
|
};
|
|
@@ -9667,6 +9677,41 @@ async function startSingleEventSourceImpl(eventSourceComponent, output, eventSou
|
|
|
9667
9677
|
}
|
|
9668
9678
|
}
|
|
9669
9679
|
|
|
9680
|
+
// src/commands/collect-event-source-system-prompts.ts
|
|
9681
|
+
import { resolveBountyIMSystemPrompt } from "@ai-setting/roy-agent-core";
|
|
9682
|
+
function resolveSystemPromptForSource(config) {
|
|
9683
|
+
if (config.type === "bounty-im") {
|
|
9684
|
+
const imServerUrl = config.imServerUrl || config.options && config.options.imServerUrl;
|
|
9685
|
+
const address = config.address || config.options && config.options.address || "unknown";
|
|
9686
|
+
return resolveBountyIMSystemPrompt({
|
|
9687
|
+
configSystemPrompt: config.systemPrompt,
|
|
9688
|
+
currentAddress: address,
|
|
9689
|
+
imServerUrl
|
|
9690
|
+
});
|
|
9691
|
+
}
|
|
9692
|
+
return config.systemPrompt;
|
|
9693
|
+
}
|
|
9694
|
+
function collectEventSourceSystemPrompts(eventSourceIds, eventSourceComponent) {
|
|
9695
|
+
const result = [];
|
|
9696
|
+
for (const id of eventSourceIds) {
|
|
9697
|
+
const config = eventSourceComponent.get(id);
|
|
9698
|
+
if (!config)
|
|
9699
|
+
continue;
|
|
9700
|
+
const prompt = resolveSystemPromptForSource(config);
|
|
9701
|
+
if (!prompt)
|
|
9702
|
+
continue;
|
|
9703
|
+
result.push({ id, type: config.type, prompt });
|
|
9704
|
+
}
|
|
9705
|
+
return result;
|
|
9706
|
+
}
|
|
9707
|
+
function joinResolvedSystemPrompts(prompts) {
|
|
9708
|
+
return prompts.map((p) => p.prompt).join(`
|
|
9709
|
+
|
|
9710
|
+
---
|
|
9711
|
+
|
|
9712
|
+
`);
|
|
9713
|
+
}
|
|
9714
|
+
|
|
9670
9715
|
// src/commands/shared/ask-user-handler.ts
|
|
9671
9716
|
import * as readline from "readline";
|
|
9672
9717
|
import chalk3 from "chalk";
|
|
@@ -10138,11 +10183,13 @@ ${COLORS.system("[通知2] ❯ " + message.replace(/\n/g, `
|
|
|
10138
10183
|
pluginEnabled,
|
|
10139
10184
|
envEvent,
|
|
10140
10185
|
plugins,
|
|
10141
|
-
eventSessionId
|
|
10186
|
+
eventSessionId,
|
|
10187
|
+
systemPrompt: envEvent.metadata?.systemPrompt
|
|
10142
10188
|
};
|
|
10143
10189
|
await this.executeInternal(message, { showPrompt: true });
|
|
10144
10190
|
}
|
|
10145
10191
|
currentAgentContext = undefined;
|
|
10192
|
+
eventSourceSystemPrompts = [];
|
|
10146
10193
|
isIdle() {
|
|
10147
10194
|
return !this.isExecuting;
|
|
10148
10195
|
}
|
|
@@ -10587,10 +10634,13 @@ function createInteractiveCommand(externalEnvService) {
|
|
|
10587
10634
|
sessionTitle,
|
|
10588
10635
|
onExecute: async (message, traceId, agentContext) => {
|
|
10589
10636
|
resetStreamAbort();
|
|
10637
|
+
const preloadedPrompts = this.eventSourceSystemPrompts;
|
|
10638
|
+
const eventSourceSystemPrompt = preloadedPrompts.length > 0 ? joinResolvedSystemPrompts(preloadedPrompts) : undefined;
|
|
10590
10639
|
const mergedContext = {
|
|
10591
10640
|
...currentAgentContext,
|
|
10592
10641
|
model: args.model,
|
|
10593
|
-
...agentContext
|
|
10642
|
+
...agentContext,
|
|
10643
|
+
eventSourceSystemPrompt
|
|
10594
10644
|
};
|
|
10595
10645
|
const effectiveSessionId = mergedContext.eventSessionId ?? sessionId;
|
|
10596
10646
|
const result = await queryExecutor.execute(message, effectiveSessionId, {
|
|
@@ -10671,6 +10721,10 @@ function createInteractiveCommand(externalEnvService) {
|
|
|
10671
10721
|
process.exit(1);
|
|
10672
10722
|
}
|
|
10673
10723
|
const summary = await startEventSources(eventSourceIds, eventSourceComponent, output);
|
|
10724
|
+
this.eventSourceSystemPrompts = collectEventSourceSystemPrompts(eventSourceIds, eventSourceComponent);
|
|
10725
|
+
if (this.eventSourceSystemPrompts.length > 0) {
|
|
10726
|
+
output.info(`\uD83D\uDCE6 Preloaded ${this.eventSourceSystemPrompts.length} event-source systemPrompt(s)`);
|
|
10727
|
+
}
|
|
10674
10728
|
if (eventSourceIds.length === 1 && summary.failedCount > 0) {
|
|
10675
10729
|
process.exit(1);
|
|
10676
10730
|
}
|
|
Binary file
|