@opengoat/core 2026.2.21 → 2026.2.23
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/bootstrap/application/bootstrap.service.js +26 -7
- package/dist/core/bootstrap/application/bootstrap.service.js.map +1 -1
- package/dist/core/opengoat/application/opengoat.service.d.ts +13 -0
- package/dist/core/opengoat/application/opengoat.service.js +150 -45
- package/dist/core/opengoat/application/opengoat.service.js.map +1 -1
- package/dist/core/opengoat/index.d.ts +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DEFAULT_AGENT_ID } from "../../domain/agent-id.js";
|
|
1
|
+
import { DEFAULT_AGENT_ID, normalizeAgentId } from "../../domain/agent-id.js";
|
|
2
2
|
import { listOrganizationMarkdownTemplates, renderAgentsIndex, renderGlobalConfig, } from "../../templates/default-templates.js";
|
|
3
3
|
export class BootstrapService {
|
|
4
4
|
fileSystem;
|
|
@@ -26,7 +26,7 @@ export class BootstrapService {
|
|
|
26
26
|
await this.ensureDirectory(paths.runsDir, createdPaths, skippedPaths);
|
|
27
27
|
await this.ensureOrganizationMarkdownFiles(paths.organizationDir, createdPaths, skippedPaths);
|
|
28
28
|
const now = this.nowIso();
|
|
29
|
-
await this.ensureGlobalConfig(paths.globalConfigJsonPath, now, createdPaths, skippedPaths);
|
|
29
|
+
const defaultAgent = await this.ensureGlobalConfig(paths.globalConfigJsonPath, now, createdPaths, skippedPaths);
|
|
30
30
|
await this.ensureAgentsIndex(paths.agentsIndexJsonPath, now, createdPaths, skippedPaths);
|
|
31
31
|
const ceo = {
|
|
32
32
|
id: DEFAULT_AGENT_ID,
|
|
@@ -59,20 +59,38 @@ export class BootstrapService {
|
|
|
59
59
|
paths,
|
|
60
60
|
createdPaths,
|
|
61
61
|
skippedPaths,
|
|
62
|
-
defaultAgent
|
|
62
|
+
defaultAgent,
|
|
63
63
|
};
|
|
64
64
|
}
|
|
65
65
|
async ensureGlobalConfig(globalConfigJsonPath, now, createdPaths, skippedPaths) {
|
|
66
66
|
const exists = await this.fileSystem.exists(globalConfigJsonPath);
|
|
67
67
|
if (!exists) {
|
|
68
|
-
|
|
68
|
+
const created = renderGlobalConfig(now);
|
|
69
|
+
await this.fileSystem.writeFile(globalConfigJsonPath, `${JSON.stringify(created, null, 2)}\n`);
|
|
69
70
|
createdPaths.push(globalConfigJsonPath);
|
|
70
|
-
return;
|
|
71
|
+
return created.defaultAgent;
|
|
71
72
|
}
|
|
72
73
|
const current = await this.readJsonIfPresent(globalConfigJsonPath);
|
|
73
|
-
|
|
74
|
+
const normalizedDefaultAgent = normalizeAgentId(current?.defaultAgent ?? "");
|
|
75
|
+
if (current && normalizedDefaultAgent) {
|
|
76
|
+
if (current.schemaVersion === 1 &&
|
|
77
|
+
current.defaultAgent === normalizedDefaultAgent &&
|
|
78
|
+
typeof current.createdAt === "string" &&
|
|
79
|
+
current.createdAt.trim() &&
|
|
80
|
+
typeof current.updatedAt === "string" &&
|
|
81
|
+
current.updatedAt.trim()) {
|
|
82
|
+
skippedPaths.push(globalConfigJsonPath);
|
|
83
|
+
return normalizedDefaultAgent;
|
|
84
|
+
}
|
|
85
|
+
const repairedCurrent = {
|
|
86
|
+
schemaVersion: 1,
|
|
87
|
+
defaultAgent: normalizedDefaultAgent,
|
|
88
|
+
createdAt: current.createdAt ?? now,
|
|
89
|
+
updatedAt: now,
|
|
90
|
+
};
|
|
91
|
+
await this.fileSystem.writeFile(globalConfigJsonPath, `${JSON.stringify(repairedCurrent, null, 2)}\n`);
|
|
74
92
|
skippedPaths.push(globalConfigJsonPath);
|
|
75
|
-
return;
|
|
93
|
+
return repairedCurrent.defaultAgent;
|
|
76
94
|
}
|
|
77
95
|
const repaired = {
|
|
78
96
|
schemaVersion: 1,
|
|
@@ -82,6 +100,7 @@ export class BootstrapService {
|
|
|
82
100
|
};
|
|
83
101
|
await this.fileSystem.writeFile(globalConfigJsonPath, `${JSON.stringify(repaired, null, 2)}\n`);
|
|
84
102
|
skippedPaths.push(globalConfigJsonPath);
|
|
103
|
+
return repaired.defaultAgent;
|
|
85
104
|
}
|
|
86
105
|
async ensureAgentsIndex(agentsIndexJsonPath, now, createdPaths, skippedPaths) {
|
|
87
106
|
const exists = await this.fileSystem.exists(agentsIndexJsonPath);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.service.js","sourceRoot":"","sources":["../../../../src/core/bootstrap/application/bootstrap.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"bootstrap.service.js","sourceRoot":"","sources":["../../../../src/core/bootstrap/application/bootstrap.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,6 +25,11 @@ export interface RuntimeDefaultsSyncResult {
|
|
|
25
25
|
ceoSynced: boolean;
|
|
26
26
|
warnings: string[];
|
|
27
27
|
}
|
|
28
|
+
export interface DefaultAgentUpdateResult {
|
|
29
|
+
defaultAgent: string;
|
|
30
|
+
previousDefaultAgent: string;
|
|
31
|
+
configPath: string;
|
|
32
|
+
}
|
|
28
33
|
export interface TaskCronDispatchResult {
|
|
29
34
|
kind: "todo" | "doing" | "pending" | "blocked" | "inactive" | "topdown";
|
|
30
35
|
targetAgentId: string;
|
|
@@ -77,6 +82,10 @@ export declare class OpenGoatService {
|
|
|
77
82
|
initialize(options?: {
|
|
78
83
|
syncRuntimeDefaults?: boolean;
|
|
79
84
|
}): Promise<InitializationResult>;
|
|
85
|
+
getDefaultAgentId(options?: {
|
|
86
|
+
requireExisting?: boolean;
|
|
87
|
+
}): Promise<string>;
|
|
88
|
+
setDefaultAgent(rawAgentId: string): Promise<DefaultAgentUpdateResult>;
|
|
80
89
|
hardReset(): Promise<HardResetResult>;
|
|
81
90
|
syncRuntimeDefaults(): Promise<RuntimeDefaultsSyncResult>;
|
|
82
91
|
createAgent(rawName: string, options?: CreateAgentOptions): Promise<AgentCreationResult>;
|
|
@@ -166,6 +175,10 @@ export declare class OpenGoatService {
|
|
|
166
175
|
getPaths(): import("../../domain/opengoat-paths.js").OpenGoatPaths;
|
|
167
176
|
private dispatchAutomationMessage;
|
|
168
177
|
private resolveNowIso;
|
|
178
|
+
private resolveInputAgentId;
|
|
179
|
+
private resolveDefaultAgentId;
|
|
180
|
+
private readGlobalConfig;
|
|
181
|
+
private readJsonFileIfPresent;
|
|
169
182
|
private initializeRuntimeDefaults;
|
|
170
183
|
private resolveNowMs;
|
|
171
184
|
private syncOpenClawRoleSkills;
|
|
@@ -20,6 +20,7 @@ const OPENCLAW_OPENGOAT_PLUGIN_ID = "openclaw-plugin";
|
|
|
20
20
|
const OPENCLAW_OPENGOAT_PLUGIN_ROOT_ID = "opengoat-plugin";
|
|
21
21
|
const OPENCLAW_OPENGOAT_PLUGIN_LEGACY_PACK_ID = "openclaw-plugin-pack";
|
|
22
22
|
const OPENCLAW_OPENGOAT_PLUGIN_FALLBACK_ID = "workspace";
|
|
23
|
+
const OPENGOAT_DEFAULT_AGENT_ENV = "OPENGOAT_DEFAULT_AGENT";
|
|
23
24
|
const NOTIFICATION_SESSION_COMPACTION_COMMAND = [
|
|
24
25
|
"/compact",
|
|
25
26
|
"Keep only the last 3 notification exchanges plus active task ids, statuses, blockers, and explicit next actions.",
|
|
@@ -109,6 +110,39 @@ export class OpenGoatService {
|
|
|
109
110
|
syncRuntimeDefaults: options.syncRuntimeDefaults ?? true,
|
|
110
111
|
});
|
|
111
112
|
}
|
|
113
|
+
async getDefaultAgentId(options = {}) {
|
|
114
|
+
const paths = this.pathsProvider.getPaths();
|
|
115
|
+
return this.resolveDefaultAgentId(paths, {
|
|
116
|
+
requireExisting: options.requireExisting ?? true,
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
async setDefaultAgent(rawAgentId) {
|
|
120
|
+
const defaultAgent = normalizeAgentId(rawAgentId);
|
|
121
|
+
if (!defaultAgent) {
|
|
122
|
+
throw new Error("Agent id cannot be empty.");
|
|
123
|
+
}
|
|
124
|
+
const paths = this.pathsProvider.getPaths();
|
|
125
|
+
await this.bootstrapService.initialize();
|
|
126
|
+
const agents = await this.agentService.listAgents(paths);
|
|
127
|
+
if (!agents.some((agent) => agent.id === defaultAgent)) {
|
|
128
|
+
throw new Error(`Agent "${defaultAgent}" does not exist.`);
|
|
129
|
+
}
|
|
130
|
+
const now = this.resolveNowIso();
|
|
131
|
+
const currentConfig = await this.readGlobalConfig(paths);
|
|
132
|
+
const previousDefaultAgent = normalizeAgentId(currentConfig?.defaultAgent ?? "") || DEFAULT_AGENT_ID;
|
|
133
|
+
const nextConfig = {
|
|
134
|
+
schemaVersion: 1,
|
|
135
|
+
defaultAgent,
|
|
136
|
+
createdAt: currentConfig?.createdAt ?? now,
|
|
137
|
+
updatedAt: now,
|
|
138
|
+
};
|
|
139
|
+
await this.fileSystem.writeFile(paths.globalConfigJsonPath, `${JSON.stringify(nextConfig, null, 2)}\n`);
|
|
140
|
+
return {
|
|
141
|
+
defaultAgent,
|
|
142
|
+
previousDefaultAgent,
|
|
143
|
+
configPath: paths.globalConfigJsonPath,
|
|
144
|
+
};
|
|
145
|
+
}
|
|
112
146
|
async hardReset() {
|
|
113
147
|
const paths = this.pathsProvider.getPaths();
|
|
114
148
|
const warnings = [];
|
|
@@ -278,14 +312,17 @@ export class OpenGoatService {
|
|
|
278
312
|
}
|
|
279
313
|
async createAgent(rawName, options = {}) {
|
|
280
314
|
const identity = this.agentService.normalizeAgentName(rawName);
|
|
281
|
-
const
|
|
315
|
+
const paths = this.pathsProvider.getPaths();
|
|
316
|
+
const defaultManagerAgentId = await this.resolveDefaultAgentId(paths, {
|
|
317
|
+
requireExisting: true,
|
|
318
|
+
});
|
|
319
|
+
const managerAgentId = resolveCreateAgentManagerId(identity.id, options.reportsTo, defaultManagerAgentId);
|
|
282
320
|
if (managerAgentId) {
|
|
283
321
|
await this.assertManagerSupportsReportees(managerAgentId);
|
|
284
322
|
}
|
|
285
|
-
const paths = this.pathsProvider.getPaths();
|
|
286
323
|
const created = await this.agentService.ensureAgent(paths, identity, {
|
|
287
324
|
type: options.type,
|
|
288
|
-
reportsTo: options.reportsTo,
|
|
325
|
+
reportsTo: options.reportsTo === undefined ? managerAgentId : options.reportsTo,
|
|
289
326
|
skills: options.skills,
|
|
290
327
|
role: options.role,
|
|
291
328
|
});
|
|
@@ -398,12 +435,15 @@ export class OpenGoatService {
|
|
|
398
435
|
};
|
|
399
436
|
}
|
|
400
437
|
async setAgentManager(rawAgentId, rawReportsTo) {
|
|
401
|
-
const
|
|
438
|
+
const paths = this.pathsProvider.getPaths();
|
|
439
|
+
const defaultManagerAgentId = await this.resolveDefaultAgentId(paths, {
|
|
440
|
+
requireExisting: true,
|
|
441
|
+
});
|
|
442
|
+
const managerAgentId = resolveCreateAgentManagerId(rawAgentId, rawReportsTo, defaultManagerAgentId);
|
|
402
443
|
if (managerAgentId) {
|
|
403
444
|
await this.assertManagerSupportsReportees(managerAgentId);
|
|
404
445
|
}
|
|
405
|
-
const
|
|
406
|
-
const updated = await this.agentService.setAgentManager(paths, rawAgentId, rawReportsTo);
|
|
446
|
+
const updated = await this.agentService.setAgentManager(paths, rawAgentId, managerAgentId);
|
|
407
447
|
await this.syncOpenClawRoleSkills(paths, updated.agentId);
|
|
408
448
|
if (updated.previousReportsTo) {
|
|
409
449
|
await this.syncOpenClawRoleSkills(paths, updated.previousReportsTo);
|
|
@@ -587,6 +627,9 @@ export class OpenGoatService {
|
|
|
587
627
|
}
|
|
588
628
|
async runTaskCronCycle(options = {}) {
|
|
589
629
|
const paths = this.pathsProvider.getPaths();
|
|
630
|
+
const defaultAgentId = await this.resolveDefaultAgentId(paths, {
|
|
631
|
+
requireExisting: true,
|
|
632
|
+
});
|
|
590
633
|
const ranAt = this.resolveNowIso();
|
|
591
634
|
const manifests = await this.agentManifestService.listManifests(paths);
|
|
592
635
|
const inProgressMinutes = resolveInProgressTimeoutMinutes(options.inProgressMinutes);
|
|
@@ -594,16 +637,16 @@ export class OpenGoatService {
|
|
|
594
637
|
const bottomUpStrategy = resolveBottomUpTaskDelegationStrategy(options);
|
|
595
638
|
const maxParallelFlows = resolveMaxParallelFlows(options.maxParallelFlows);
|
|
596
639
|
const inactiveCandidates = bottomUpStrategy.enabled
|
|
597
|
-
? await this.collectInactiveAgents(paths, manifests, bottomUpStrategy.inactiveMinutes, bottomUpStrategy.notificationTarget)
|
|
640
|
+
? await this.collectInactiveAgents(paths, manifests, bottomUpStrategy.inactiveMinutes, bottomUpStrategy.notificationTarget, defaultAgentId)
|
|
598
641
|
: [];
|
|
599
642
|
const tasks = await this.boardService.listTasks(paths, { limit: 10_000 });
|
|
600
643
|
const topDownDispatches = topDownStrategy.enabled
|
|
601
|
-
? await this.dispatchTopDownTaskDelegationAutomations(paths, tasks, manifests, topDownStrategy.openTasksThreshold, ranAt, maxParallelFlows)
|
|
644
|
+
? await this.dispatchTopDownTaskDelegationAutomations(paths, tasks, manifests, topDownStrategy.openTasksThreshold, ranAt, defaultAgentId, maxParallelFlows)
|
|
602
645
|
: [];
|
|
603
646
|
const pendingTaskIds = new Set(await this.boardService.listPendingTaskIdsOlderThan(paths, bottomUpStrategy.inactiveMinutes));
|
|
604
647
|
const doingTaskIds = new Set(await this.boardService.listDoingTaskIdsOlderThan(paths, inProgressMinutes));
|
|
605
|
-
const taskStatusDispatch = await this.dispatchTaskStatusAutomations(paths, tasks, manifests, doingTaskIds, pendingTaskIds, inProgressMinutes, bottomUpStrategy.inactiveMinutes, ranAt, maxParallelFlows);
|
|
606
|
-
const inactiveDispatches = await this.dispatchInactiveAgentAutomations(paths, inactiveCandidates, bottomUpStrategy.inactiveMinutes, ranAt, maxParallelFlows);
|
|
648
|
+
const taskStatusDispatch = await this.dispatchTaskStatusAutomations(paths, tasks, manifests, doingTaskIds, pendingTaskIds, inProgressMinutes, bottomUpStrategy.inactiveMinutes, ranAt, defaultAgentId, maxParallelFlows);
|
|
649
|
+
const inactiveDispatches = await this.dispatchInactiveAgentAutomations(paths, inactiveCandidates, bottomUpStrategy.inactiveMinutes, ranAt, defaultAgentId, maxParallelFlows);
|
|
607
650
|
const dispatches = [
|
|
608
651
|
...topDownDispatches,
|
|
609
652
|
...taskStatusDispatch.dispatches,
|
|
@@ -622,7 +665,7 @@ export class OpenGoatService {
|
|
|
622
665
|
dispatches,
|
|
623
666
|
};
|
|
624
667
|
}
|
|
625
|
-
async dispatchTopDownTaskDelegationAutomations(paths, tasks, manifests, openTasksThreshold, notificationTimestamp, maxParallelFlows = 1) {
|
|
668
|
+
async dispatchTopDownTaskDelegationAutomations(paths, tasks, manifests, openTasksThreshold, notificationTimestamp, defaultAgentId, maxParallelFlows = 1) {
|
|
626
669
|
const openTasks = tasks
|
|
627
670
|
.filter((task) => isTopDownOpenTaskStatus(task.status))
|
|
628
671
|
.sort((left, right) => {
|
|
@@ -643,8 +686,8 @@ export class OpenGoatService {
|
|
|
643
686
|
return [];
|
|
644
687
|
}
|
|
645
688
|
const managerAgents = manifests.filter((manifest) => manifest.metadata.type === "manager").length;
|
|
646
|
-
const ceoDirectReportees = manifests.filter((manifest) => normalizeAgentId(manifest.metadata.reportsTo ?? "") ===
|
|
647
|
-
const sessionRef = buildNotificationSessionRef(
|
|
689
|
+
const ceoDirectReportees = manifests.filter((manifest) => normalizeAgentId(manifest.metadata.reportsTo ?? "") === defaultAgentId).length;
|
|
690
|
+
const sessionRef = buildNotificationSessionRef(defaultAgentId);
|
|
648
691
|
const message = buildTopDownTaskDelegationMessage({
|
|
649
692
|
openTasksThreshold,
|
|
650
693
|
openTasksCount: openTasks.length,
|
|
@@ -661,7 +704,7 @@ export class OpenGoatService {
|
|
|
661
704
|
});
|
|
662
705
|
const requests = [
|
|
663
706
|
{
|
|
664
|
-
targetAgentId:
|
|
707
|
+
targetAgentId: defaultAgentId,
|
|
665
708
|
sessionRef,
|
|
666
709
|
message,
|
|
667
710
|
},
|
|
@@ -678,7 +721,7 @@ export class OpenGoatService {
|
|
|
678
721
|
};
|
|
679
722
|
});
|
|
680
723
|
}
|
|
681
|
-
async dispatchTaskStatusAutomations(paths, tasks, manifests, doingTaskIds, pendingTaskIds, doingMinutes, pendingMinutes, notificationTimestamp, maxParallelFlows) {
|
|
724
|
+
async dispatchTaskStatusAutomations(paths, tasks, manifests, doingTaskIds, pendingTaskIds, doingMinutes, pendingMinutes, notificationTimestamp, defaultAgentId, maxParallelFlows) {
|
|
682
725
|
const manifestsById = new Map(manifests.map((manifest) => [manifest.agentId, manifest]));
|
|
683
726
|
const requests = [];
|
|
684
727
|
let todoTasks = 0;
|
|
@@ -750,7 +793,7 @@ export class OpenGoatService {
|
|
|
750
793
|
blockedTasks += 1;
|
|
751
794
|
const assigneeManifest = manifestsById.get(task.assignedTo);
|
|
752
795
|
const managerAgentId = normalizeAgentId(assigneeManifest?.metadata.reportsTo ?? "") ||
|
|
753
|
-
|
|
796
|
+
defaultAgentId;
|
|
754
797
|
const sessionRef = buildNotificationSessionRef(managerAgentId);
|
|
755
798
|
const message = buildBlockedTaskMessage({
|
|
756
799
|
task,
|
|
@@ -765,7 +808,7 @@ export class OpenGoatService {
|
|
|
765
808
|
});
|
|
766
809
|
}
|
|
767
810
|
}
|
|
768
|
-
const dispatches = await runWithConcurrencyByKey(requests, maxParallelFlows, (request) => normalizeAgentId(request.targetAgentId) ||
|
|
811
|
+
const dispatches = await runWithConcurrencyByKey(requests, maxParallelFlows, (request) => normalizeAgentId(request.targetAgentId) || defaultAgentId, async (request) => {
|
|
769
812
|
const result = await this.dispatchAutomationMessage(paths, request.targetAgentId, request.sessionRef, request.message);
|
|
770
813
|
return {
|
|
771
814
|
kind: request.kind,
|
|
@@ -792,10 +835,10 @@ export class OpenGoatService {
|
|
|
792
835
|
blockedTasks,
|
|
793
836
|
};
|
|
794
837
|
}
|
|
795
|
-
async dispatchInactiveAgentAutomations(paths, inactiveCandidates, inactiveMinutes, notificationTimestamp, maxParallelFlows = 1) {
|
|
838
|
+
async dispatchInactiveAgentAutomations(paths, inactiveCandidates, inactiveMinutes, notificationTimestamp, defaultAgentId, maxParallelFlows = 1) {
|
|
796
839
|
const groupedCandidatesByManager = new Map();
|
|
797
840
|
for (const candidate of inactiveCandidates) {
|
|
798
|
-
const managerAgentId = normalizeAgentId(candidate.managerAgentId) ||
|
|
841
|
+
const managerAgentId = normalizeAgentId(candidate.managerAgentId) || defaultAgentId;
|
|
799
842
|
const bucket = groupedCandidatesByManager.get(managerAgentId) ?? [];
|
|
800
843
|
bucket.push(candidate);
|
|
801
844
|
groupedCandidatesByManager.set(managerAgentId, bucket);
|
|
@@ -831,9 +874,10 @@ export class OpenGoatService {
|
|
|
831
874
|
};
|
|
832
875
|
});
|
|
833
876
|
}
|
|
834
|
-
async listSkills(agentId
|
|
877
|
+
async listSkills(agentId) {
|
|
835
878
|
const paths = this.pathsProvider.getPaths();
|
|
836
|
-
|
|
879
|
+
const resolvedAgentId = await this.resolveInputAgentId(paths, agentId);
|
|
880
|
+
return this.skillService.listSkills(paths, resolvedAgentId);
|
|
837
881
|
}
|
|
838
882
|
async listGlobalSkills() {
|
|
839
883
|
const paths = this.pathsProvider.getPaths();
|
|
@@ -843,7 +887,7 @@ export class OpenGoatService {
|
|
|
843
887
|
const paths = this.pathsProvider.getPaths();
|
|
844
888
|
const scope = request.scope === "global" ? "global" : "agent";
|
|
845
889
|
if (scope === "agent") {
|
|
846
|
-
const normalizedAgentId =
|
|
890
|
+
const normalizedAgentId = await this.resolveInputAgentId(paths, request.agentId);
|
|
847
891
|
const installOptions = await this.resolveAgentSkillInstallOptions(paths, normalizedAgentId);
|
|
848
892
|
const result = await this.skillService.installSkill(paths, {
|
|
849
893
|
...request,
|
|
@@ -882,7 +926,7 @@ export class OpenGoatService {
|
|
|
882
926
|
const paths = this.pathsProvider.getPaths();
|
|
883
927
|
const scope = request.scope === "global" ? "global" : "agent";
|
|
884
928
|
if (scope === "agent") {
|
|
885
|
-
const normalizedAgentId =
|
|
929
|
+
const normalizedAgentId = await this.resolveInputAgentId(paths, request.agentId);
|
|
886
930
|
const installOptions = await this.resolveAgentSkillInstallOptions(paths, normalizedAgentId);
|
|
887
931
|
const result = await this.skillService.removeSkill(paths, {
|
|
888
932
|
...request,
|
|
@@ -950,13 +994,15 @@ export class OpenGoatService {
|
|
|
950
994
|
throw error;
|
|
951
995
|
}
|
|
952
996
|
}
|
|
953
|
-
async listSessions(agentId
|
|
997
|
+
async listSessions(agentId, options = {}) {
|
|
954
998
|
const paths = this.pathsProvider.getPaths();
|
|
955
|
-
|
|
999
|
+
const resolvedAgentId = await this.resolveInputAgentId(paths, agentId);
|
|
1000
|
+
return this.sessionService.listSessions(paths, resolvedAgentId, options);
|
|
956
1001
|
}
|
|
957
|
-
async prepareSession(agentId
|
|
1002
|
+
async prepareSession(agentId, options = {}) {
|
|
958
1003
|
const paths = this.pathsProvider.getPaths();
|
|
959
|
-
const
|
|
1004
|
+
const resolvedAgentId = await this.resolveInputAgentId(paths, agentId);
|
|
1005
|
+
const prepared = await this.sessionService.prepareRunSession(paths, resolvedAgentId, {
|
|
960
1006
|
sessionRef: options.sessionRef,
|
|
961
1007
|
forceNew: options.forceNew,
|
|
962
1008
|
userMessage: "",
|
|
@@ -966,29 +1012,35 @@ export class OpenGoatService {
|
|
|
966
1012
|
}
|
|
967
1013
|
return prepared.info;
|
|
968
1014
|
}
|
|
969
|
-
async getAgentLastAction(agentId
|
|
1015
|
+
async getAgentLastAction(agentId) {
|
|
970
1016
|
const paths = this.pathsProvider.getPaths();
|
|
971
|
-
|
|
1017
|
+
const resolvedAgentId = await this.resolveInputAgentId(paths, agentId);
|
|
1018
|
+
return this.sessionService.getLastAgentAction(paths, resolvedAgentId);
|
|
972
1019
|
}
|
|
973
|
-
async getSessionHistory(agentId
|
|
1020
|
+
async getSessionHistory(agentId, options = {}) {
|
|
974
1021
|
const paths = this.pathsProvider.getPaths();
|
|
975
|
-
|
|
1022
|
+
const resolvedAgentId = await this.resolveInputAgentId(paths, agentId);
|
|
1023
|
+
return this.sessionService.getSessionHistory(paths, resolvedAgentId, options);
|
|
976
1024
|
}
|
|
977
|
-
async resetSession(agentId
|
|
1025
|
+
async resetSession(agentId, sessionRef) {
|
|
978
1026
|
const paths = this.pathsProvider.getPaths();
|
|
979
|
-
|
|
1027
|
+
const resolvedAgentId = await this.resolveInputAgentId(paths, agentId);
|
|
1028
|
+
return this.sessionService.resetSession(paths, resolvedAgentId, sessionRef);
|
|
980
1029
|
}
|
|
981
|
-
async compactSession(agentId
|
|
1030
|
+
async compactSession(agentId, sessionRef) {
|
|
982
1031
|
const paths = this.pathsProvider.getPaths();
|
|
983
|
-
|
|
1032
|
+
const resolvedAgentId = await this.resolveInputAgentId(paths, agentId);
|
|
1033
|
+
return this.sessionService.compactSession(paths, resolvedAgentId, sessionRef);
|
|
984
1034
|
}
|
|
985
|
-
async renameSession(agentId
|
|
1035
|
+
async renameSession(agentId, title = "", sessionRef) {
|
|
986
1036
|
const paths = this.pathsProvider.getPaths();
|
|
987
|
-
|
|
1037
|
+
const resolvedAgentId = await this.resolveInputAgentId(paths, agentId);
|
|
1038
|
+
return this.sessionService.renameSession(paths, resolvedAgentId, title, sessionRef);
|
|
988
1039
|
}
|
|
989
|
-
async removeSession(agentId
|
|
1040
|
+
async removeSession(agentId, sessionRef) {
|
|
990
1041
|
const paths = this.pathsProvider.getPaths();
|
|
991
|
-
|
|
1042
|
+
const resolvedAgentId = await this.resolveInputAgentId(paths, agentId);
|
|
1043
|
+
return this.sessionService.removeSession(paths, resolvedAgentId, sessionRef);
|
|
992
1044
|
}
|
|
993
1045
|
getHomeDir() {
|
|
994
1046
|
return this.pathsProvider.getPaths().homeDir;
|
|
@@ -1047,6 +1099,53 @@ export class OpenGoatService {
|
|
|
1047
1099
|
resolveNowIso() {
|
|
1048
1100
|
return this.nowIso();
|
|
1049
1101
|
}
|
|
1102
|
+
async resolveInputAgentId(paths, requestedAgentId) {
|
|
1103
|
+
const normalizedRequested = normalizeAgentId(requestedAgentId ?? "");
|
|
1104
|
+
if (normalizedRequested) {
|
|
1105
|
+
return normalizedRequested;
|
|
1106
|
+
}
|
|
1107
|
+
return this.resolveDefaultAgentId(paths, { requireExisting: true });
|
|
1108
|
+
}
|
|
1109
|
+
async resolveDefaultAgentId(paths, options) {
|
|
1110
|
+
const envDefaultAgent = normalizeAgentId(process.env[OPENGOAT_DEFAULT_AGENT_ENV] ?? "");
|
|
1111
|
+
const configDefaultAgent = normalizeAgentId((await this.readGlobalConfig(paths))?.defaultAgent ?? "");
|
|
1112
|
+
const candidates = dedupeStrings([
|
|
1113
|
+
envDefaultAgent,
|
|
1114
|
+
configDefaultAgent,
|
|
1115
|
+
DEFAULT_AGENT_ID,
|
|
1116
|
+
]);
|
|
1117
|
+
if (!options.requireExisting) {
|
|
1118
|
+
return candidates[0] ?? DEFAULT_AGENT_ID;
|
|
1119
|
+
}
|
|
1120
|
+
let knownAgentIds;
|
|
1121
|
+
try {
|
|
1122
|
+
knownAgentIds = new Set((await this.agentService.listAgents(paths)).map((agent) => agent.id));
|
|
1123
|
+
}
|
|
1124
|
+
catch {
|
|
1125
|
+
return candidates[0] ?? DEFAULT_AGENT_ID;
|
|
1126
|
+
}
|
|
1127
|
+
for (const candidate of candidates) {
|
|
1128
|
+
if (knownAgentIds.has(candidate)) {
|
|
1129
|
+
return candidate;
|
|
1130
|
+
}
|
|
1131
|
+
}
|
|
1132
|
+
return DEFAULT_AGENT_ID;
|
|
1133
|
+
}
|
|
1134
|
+
async readGlobalConfig(paths) {
|
|
1135
|
+
return this.readJsonFileIfPresent(paths.globalConfigJsonPath);
|
|
1136
|
+
}
|
|
1137
|
+
async readJsonFileIfPresent(filePath) {
|
|
1138
|
+
if (!(await this.fileSystem.exists(filePath))) {
|
|
1139
|
+
return null;
|
|
1140
|
+
}
|
|
1141
|
+
try {
|
|
1142
|
+
const raw = await this.fileSystem.readFile(filePath);
|
|
1143
|
+
return JSON.parse(raw);
|
|
1144
|
+
}
|
|
1145
|
+
catch {
|
|
1146
|
+
return null;
|
|
1147
|
+
}
|
|
1148
|
+
}
|
|
1050
1149
|
async initializeRuntimeDefaults(options) {
|
|
1051
1150
|
const initialization = await this.bootstrapService.initialize();
|
|
1052
1151
|
if (options.syncRuntimeDefaults) {
|
|
@@ -1057,7 +1156,13 @@ export class OpenGoatService {
|
|
|
1057
1156
|
// Startup remains functional even if OpenClaw CLI/runtime is unavailable.
|
|
1058
1157
|
}
|
|
1059
1158
|
}
|
|
1060
|
-
|
|
1159
|
+
const defaultAgent = await this.resolveDefaultAgentId(initialization.paths, {
|
|
1160
|
+
requireExisting: true,
|
|
1161
|
+
});
|
|
1162
|
+
return {
|
|
1163
|
+
...initialization,
|
|
1164
|
+
defaultAgent,
|
|
1165
|
+
};
|
|
1061
1166
|
}
|
|
1062
1167
|
resolveNowMs() {
|
|
1063
1168
|
return Date.now();
|
|
@@ -1540,7 +1645,7 @@ export class OpenGoatService {
|
|
|
1540
1645
|
...process.env,
|
|
1541
1646
|
};
|
|
1542
1647
|
}
|
|
1543
|
-
async collectInactiveAgents(paths, manifests, inactiveMinutes, notificationTarget) {
|
|
1648
|
+
async collectInactiveAgents(paths, manifests, inactiveMinutes, notificationTarget, defaultAgentId) {
|
|
1544
1649
|
const nowMs = this.resolveNowMs();
|
|
1545
1650
|
const inactiveCutoffMs = nowMs - inactiveMinutes * 60_000;
|
|
1546
1651
|
const reporteeStats = buildReporteeStats(manifests);
|
|
@@ -1551,7 +1656,7 @@ export class OpenGoatService {
|
|
|
1551
1656
|
continue;
|
|
1552
1657
|
}
|
|
1553
1658
|
if (notificationTarget === "ceo-only" &&
|
|
1554
|
-
managerAgentId !==
|
|
1659
|
+
managerAgentId !== defaultAgentId) {
|
|
1555
1660
|
continue;
|
|
1556
1661
|
}
|
|
1557
1662
|
const lastAction = await this.sessionService.getLastAgentAction(paths, manifest.agentId);
|
|
@@ -1785,17 +1890,17 @@ function extractBalancedJsonCandidate(raw, startIndex) {
|
|
|
1785
1890
|
function dedupeNumbers(values) {
|
|
1786
1891
|
return [...new Set(values)];
|
|
1787
1892
|
}
|
|
1788
|
-
function resolveCreateAgentManagerId(agentId, reportsTo) {
|
|
1893
|
+
function resolveCreateAgentManagerId(agentId, reportsTo, defaultManagerAgentId) {
|
|
1789
1894
|
const normalizedAgentId = normalizeAgentId(agentId);
|
|
1790
1895
|
if (isDefaultAgentId(normalizedAgentId)) {
|
|
1791
1896
|
return null;
|
|
1792
1897
|
}
|
|
1793
1898
|
if (reportsTo === null || reportsTo === undefined) {
|
|
1794
|
-
return
|
|
1899
|
+
return defaultManagerAgentId;
|
|
1795
1900
|
}
|
|
1796
1901
|
const normalizedManagerId = normalizeAgentId(reportsTo);
|
|
1797
1902
|
if (!normalizedManagerId || normalizedManagerId === normalizedAgentId) {
|
|
1798
|
-
return
|
|
1903
|
+
return defaultManagerAgentId;
|
|
1799
1904
|
}
|
|
1800
1905
|
return normalizedManagerId;
|
|
1801
1906
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opengoat.service.js","sourceRoot":"","sources":["../../../../src/core/opengoat/application/opengoat.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"opengoat.service.js","sourceRoot":"","sources":["../../../../src/core/opengoat/application/opengoat.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { OpenGoatService } from "./application/opengoat.service.js";
|
|
2
|
-
export type { HardResetResult, TaskCronDispatchResult, TaskCronRunResult, } from "./application/opengoat.service.js";
|
|
2
|
+
export type { DefaultAgentUpdateResult, HardResetResult, TaskCronDispatchResult, TaskCronRunResult, } from "./application/opengoat.service.js";
|