@opengoat/core 2026.2.14-2 → 2026.2.14-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/agents/application/agent.service.d.ts +1 -0
- package/dist/core/agents/application/agent.service.js +12 -7
- package/dist/core/agents/application/agent.service.js.map +1 -1
- package/dist/core/bootstrap/application/bootstrap.service.js +7 -0
- package/dist/core/bootstrap/application/bootstrap.service.js.map +1 -1
- package/dist/core/opengoat/application/opengoat.service.d.ts +2 -0
- package/dist/core/opengoat/application/opengoat.service.helpers.d.ts +52 -0
- package/dist/core/opengoat/application/opengoat.service.helpers.js +325 -0
- package/dist/core/opengoat/application/opengoat.service.helpers.js.map +1 -0
- package/dist/core/opengoat/application/opengoat.service.js +41 -289
- package/dist/core/opengoat/application/opengoat.service.js.map +1 -1
- package/dist/core/templates/assets/ceo/BOOTSTRAP.md +3 -3
- package/dist/core/templates/default-templates.js +15 -3
- package/dist/core/templates/default-templates.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { homedir } from "node:os";
|
|
2
|
-
import path from "node:path";
|
|
3
1
|
import { AgentManifestService } from "../../agents/application/agent-manifest.service.js";
|
|
4
2
|
import { AgentService } from "../../agents/application/agent.service.js";
|
|
5
3
|
import { BoardService, } from "../../boards/index.js";
|
|
@@ -11,6 +9,7 @@ import { ProviderService } from "../../providers/application/provider.service.js
|
|
|
11
9
|
import { ProviderCommandNotFoundError, createDefaultProviderRegistry, } from "../../providers/index.js";
|
|
12
10
|
import { SessionService, } from "../../sessions/index.js";
|
|
13
11
|
import { SkillService, } from "../../skills/index.js";
|
|
12
|
+
import { assertAgentExists, buildBlockedTaskMessage, buildInactiveAgentMessage, buildInactiveSessionRef, buildReporteeStats, buildTaskSessionRef, buildTodoTaskMessage, collectAllReportees, containsAgentNotFoundMessage, containsAlreadyExistsMessage, extractManagedSkillsDir, extractOpenClawAgentEntry, extractOpenClawAgents, isSpawnPermissionOrMissing, pathIsWithin, pathMatches, prepareOpenClawCommandEnv, resolveInactiveAgentNotificationTarget, resolveInactiveMinutes, toErrorMessage, } from "./opengoat.service.helpers.js";
|
|
14
13
|
const OPENCLAW_PROVIDER_ID = "openclaw";
|
|
15
14
|
const OPENCLAW_DEFAULT_AGENT_ID = "main";
|
|
16
15
|
export class OpenGoatService {
|
|
@@ -390,12 +389,13 @@ export class OpenGoatService {
|
|
|
390
389
|
this.agentService.listAgents(paths),
|
|
391
390
|
this.agentManifestService.listManifests(paths),
|
|
392
391
|
]);
|
|
392
|
+
const reporteeStats = buildReporteeStats(manifests);
|
|
393
393
|
const descriptorsById = new Map(agents.map((agent) => [agent.id, agent]));
|
|
394
394
|
const agent = descriptorsById.get(agentId);
|
|
395
395
|
if (!agent) {
|
|
396
396
|
throw new Error(`Agent "${agentId}" does not exist.`);
|
|
397
397
|
}
|
|
398
|
-
const totalReportees =
|
|
398
|
+
const totalReportees = reporteeStats.totalByManager.get(agentId) ?? 0;
|
|
399
399
|
const directReportees = manifests
|
|
400
400
|
.filter((manifest) => manifest.metadata.reportsTo === agentId)
|
|
401
401
|
.map((manifest) => {
|
|
@@ -408,8 +408,7 @@ export class OpenGoatService {
|
|
|
408
408
|
id: manifest.agentId,
|
|
409
409
|
name,
|
|
410
410
|
role,
|
|
411
|
-
totalReportees:
|
|
412
|
-
.length,
|
|
411
|
+
totalReportees: reporteeStats.totalByManager.get(manifest.agentId) ?? 0,
|
|
413
412
|
};
|
|
414
413
|
})
|
|
415
414
|
.sort((left, right) => left.id.localeCompare(right.id));
|
|
@@ -507,7 +506,6 @@ export class OpenGoatService {
|
|
|
507
506
|
const paths = this.pathsProvider.getPaths();
|
|
508
507
|
const ranAt = this.resolveNowIso();
|
|
509
508
|
const manifests = await this.agentManifestService.listManifests(paths);
|
|
510
|
-
const manifestsById = new Map(manifests.map((manifest) => [manifest.agentId, manifest]));
|
|
511
509
|
const inactiveMinutes = resolveInactiveMinutes(options.inactiveMinutes);
|
|
512
510
|
const notificationTarget = resolveInactiveAgentNotificationTarget(options.notificationTarget);
|
|
513
511
|
const notifyInactiveAgents = options.notifyInactiveAgents ?? true;
|
|
@@ -518,8 +516,27 @@ export class OpenGoatService {
|
|
|
518
516
|
? await this.resolveLatestProjectPathForAgent(paths, DEFAULT_AGENT_ID)
|
|
519
517
|
: undefined;
|
|
520
518
|
const tasks = await this.boardService.listTasks(paths, { limit: 10_000 });
|
|
519
|
+
const taskStatusDispatch = await this.dispatchTaskStatusAutomations(paths, tasks, manifests);
|
|
520
|
+
const inactiveDispatches = await this.dispatchInactiveAgentAutomations(paths, inactiveCandidates, inactiveMinutes, latestCeoProjectPath);
|
|
521
|
+
const dispatches = [
|
|
522
|
+
...taskStatusDispatch.dispatches,
|
|
523
|
+
...inactiveDispatches,
|
|
524
|
+
];
|
|
525
|
+
const failed = dispatches.filter((entry) => !entry.ok).length;
|
|
526
|
+
return {
|
|
527
|
+
ranAt,
|
|
528
|
+
scannedTasks: tasks.length,
|
|
529
|
+
todoTasks: taskStatusDispatch.todoTasks,
|
|
530
|
+
blockedTasks: taskStatusDispatch.blockedTasks,
|
|
531
|
+
inactiveAgents: inactiveCandidates.length,
|
|
532
|
+
sent: dispatches.length - failed,
|
|
533
|
+
failed,
|
|
534
|
+
dispatches,
|
|
535
|
+
};
|
|
536
|
+
}
|
|
537
|
+
async dispatchTaskStatusAutomations(paths, tasks, manifests) {
|
|
538
|
+
const manifestsById = new Map(manifests.map((manifest) => [manifest.agentId, manifest]));
|
|
521
539
|
const dispatches = [];
|
|
522
|
-
let scannedTasks = tasks.length;
|
|
523
540
|
let todoTasks = 0;
|
|
524
541
|
let blockedTasks = 0;
|
|
525
542
|
for (const task of tasks) {
|
|
@@ -558,6 +575,14 @@ export class OpenGoatService {
|
|
|
558
575
|
error: result.error,
|
|
559
576
|
});
|
|
560
577
|
}
|
|
578
|
+
return {
|
|
579
|
+
dispatches,
|
|
580
|
+
todoTasks,
|
|
581
|
+
blockedTasks,
|
|
582
|
+
};
|
|
583
|
+
}
|
|
584
|
+
async dispatchInactiveAgentAutomations(paths, inactiveCandidates, inactiveMinutes, latestCeoProjectPath) {
|
|
585
|
+
const dispatches = [];
|
|
561
586
|
for (const candidate of inactiveCandidates) {
|
|
562
587
|
const sessionRef = buildInactiveSessionRef(candidate.managerAgentId, candidate.subjectAgentId);
|
|
563
588
|
const message = buildInactiveAgentMessage({
|
|
@@ -565,6 +590,8 @@ export class OpenGoatService {
|
|
|
565
590
|
subjectAgentId: candidate.subjectAgentId,
|
|
566
591
|
subjectName: candidate.subjectName,
|
|
567
592
|
role: candidate.role,
|
|
593
|
+
directReporteesCount: candidate.directReporteesCount,
|
|
594
|
+
indirectReporteesCount: candidate.indirectReporteesCount,
|
|
568
595
|
inactiveMinutes,
|
|
569
596
|
lastActionTimestamp: candidate.lastActionTimestamp,
|
|
570
597
|
});
|
|
@@ -580,17 +607,7 @@ export class OpenGoatService {
|
|
|
580
607
|
error: result.error,
|
|
581
608
|
});
|
|
582
609
|
}
|
|
583
|
-
|
|
584
|
-
return {
|
|
585
|
-
ranAt,
|
|
586
|
-
scannedTasks,
|
|
587
|
-
todoTasks,
|
|
588
|
-
blockedTasks,
|
|
589
|
-
inactiveAgents: inactiveCandidates.length,
|
|
590
|
-
sent: dispatches.length - failed,
|
|
591
|
-
failed,
|
|
592
|
-
dispatches,
|
|
593
|
-
};
|
|
610
|
+
return dispatches;
|
|
594
611
|
}
|
|
595
612
|
async listSkills(agentId = DEFAULT_AGENT_ID) {
|
|
596
613
|
const paths = this.pathsProvider.getPaths();
|
|
@@ -912,6 +929,7 @@ export class OpenGoatService {
|
|
|
912
929
|
async collectInactiveAgents(paths, manifests, inactiveMinutes, notificationTarget) {
|
|
913
930
|
const nowMs = this.resolveNowMs();
|
|
914
931
|
const inactiveCutoffMs = nowMs - inactiveMinutes * 60_000;
|
|
932
|
+
const reporteeStats = buildReporteeStats(manifests);
|
|
915
933
|
const inactive = [];
|
|
916
934
|
for (const manifest of manifests) {
|
|
917
935
|
const managerAgentId = normalizeAgentId(manifest.metadata.reportsTo ?? "");
|
|
@@ -926,11 +944,16 @@ export class OpenGoatService {
|
|
|
926
944
|
if (lastAction && lastAction.timestamp >= inactiveCutoffMs) {
|
|
927
945
|
continue;
|
|
928
946
|
}
|
|
947
|
+
const directReporteesCount = reporteeStats.directByManager.get(manifest.agentId) ?? 0;
|
|
948
|
+
const totalReporteesCount = reporteeStats.totalByManager.get(manifest.agentId) ?? 0;
|
|
949
|
+
const indirectReporteesCount = Math.max(0, totalReporteesCount - directReporteesCount);
|
|
929
950
|
inactive.push({
|
|
930
951
|
managerAgentId,
|
|
931
952
|
subjectAgentId: manifest.agentId,
|
|
932
953
|
subjectName: manifest.metadata.name,
|
|
933
954
|
role: manifest.metadata.description,
|
|
955
|
+
directReporteesCount,
|
|
956
|
+
indirectReporteesCount,
|
|
934
957
|
lastActionTimestamp: lastAction?.timestamp,
|
|
935
958
|
});
|
|
936
959
|
}
|
|
@@ -946,275 +969,4 @@ export class OpenGoatService {
|
|
|
946
969
|
return latestProjectPath || undefined;
|
|
947
970
|
}
|
|
948
971
|
}
|
|
949
|
-
function containsAlreadyExistsMessage(stdout, stderr) {
|
|
950
|
-
const text = `${stdout}\n${stderr}`.toLowerCase();
|
|
951
|
-
return /\balready exists?\b/.test(text);
|
|
952
|
-
}
|
|
953
|
-
function containsAgentNotFoundMessage(stdout, stderr) {
|
|
954
|
-
const text = `${stdout}\n${stderr}`.toLowerCase();
|
|
955
|
-
return /\b(not found|does not exist|no such agent|unknown agent|could not find|no agent found|not exist)\b/.test(text);
|
|
956
|
-
}
|
|
957
|
-
function toErrorMessage(error) {
|
|
958
|
-
if (error instanceof Error) {
|
|
959
|
-
return error.message;
|
|
960
|
-
}
|
|
961
|
-
return String(error);
|
|
962
|
-
}
|
|
963
|
-
function resolveInactiveMinutes(value) {
|
|
964
|
-
if (typeof value !== "number" || !Number.isFinite(value) || value <= 0) {
|
|
965
|
-
return 30;
|
|
966
|
-
}
|
|
967
|
-
return Math.floor(value);
|
|
968
|
-
}
|
|
969
|
-
function resolveInactiveAgentNotificationTarget(value) {
|
|
970
|
-
return value === "ceo-only" ? "ceo-only" : "all-managers";
|
|
971
|
-
}
|
|
972
|
-
function extractManagedSkillsDir(payload) {
|
|
973
|
-
if (!payload || typeof payload !== "object" || Array.isArray(payload)) {
|
|
974
|
-
return null;
|
|
975
|
-
}
|
|
976
|
-
const record = payload;
|
|
977
|
-
if (typeof record.managedSkillsDir !== "string") {
|
|
978
|
-
return null;
|
|
979
|
-
}
|
|
980
|
-
const managedSkillsDir = record.managedSkillsDir.trim();
|
|
981
|
-
return managedSkillsDir || null;
|
|
982
|
-
}
|
|
983
|
-
function extractOpenClawAgents(payload) {
|
|
984
|
-
if (!Array.isArray(payload)) {
|
|
985
|
-
return [];
|
|
986
|
-
}
|
|
987
|
-
const entries = [];
|
|
988
|
-
for (const entry of payload) {
|
|
989
|
-
if (!entry || typeof entry !== "object" || Array.isArray(entry)) {
|
|
990
|
-
continue;
|
|
991
|
-
}
|
|
992
|
-
const record = entry;
|
|
993
|
-
const id = normalizeAgentId(String(record.id ?? ""));
|
|
994
|
-
if (!id) {
|
|
995
|
-
continue;
|
|
996
|
-
}
|
|
997
|
-
entries.push({
|
|
998
|
-
id,
|
|
999
|
-
workspace: typeof record.workspace === "string" ? record.workspace : "",
|
|
1000
|
-
agentDir: typeof record.agentDir === "string" ? record.agentDir : "",
|
|
1001
|
-
});
|
|
1002
|
-
}
|
|
1003
|
-
return entries;
|
|
1004
|
-
}
|
|
1005
|
-
function extractOpenClawAgentEntry(payload, agentId) {
|
|
1006
|
-
const normalizedAgentId = normalizeAgentId(agentId);
|
|
1007
|
-
if (!normalizedAgentId) {
|
|
1008
|
-
return null;
|
|
1009
|
-
}
|
|
1010
|
-
for (const entry of extractOpenClawAgents(payload)) {
|
|
1011
|
-
if (entry.id !== normalizedAgentId) {
|
|
1012
|
-
continue;
|
|
1013
|
-
}
|
|
1014
|
-
return {
|
|
1015
|
-
workspace: entry.workspace,
|
|
1016
|
-
agentDir: entry.agentDir,
|
|
1017
|
-
};
|
|
1018
|
-
}
|
|
1019
|
-
return null;
|
|
1020
|
-
}
|
|
1021
|
-
function pathMatches(left, right) {
|
|
1022
|
-
const leftNormalized = normalizePathForCompare(left);
|
|
1023
|
-
const rightNormalized = normalizePathForCompare(right);
|
|
1024
|
-
if (!leftNormalized || !rightNormalized) {
|
|
1025
|
-
return false;
|
|
1026
|
-
}
|
|
1027
|
-
return leftNormalized === rightNormalized;
|
|
1028
|
-
}
|
|
1029
|
-
function pathIsWithin(containerPath, candidatePath) {
|
|
1030
|
-
const normalizedContainer = normalizePathForCompare(containerPath);
|
|
1031
|
-
const normalizedCandidate = normalizePathForCompare(candidatePath);
|
|
1032
|
-
if (!normalizedContainer || !normalizedCandidate) {
|
|
1033
|
-
return false;
|
|
1034
|
-
}
|
|
1035
|
-
const relative = path.relative(normalizedContainer, normalizedCandidate);
|
|
1036
|
-
if (!relative) {
|
|
1037
|
-
return true;
|
|
1038
|
-
}
|
|
1039
|
-
return !relative.startsWith("..") && !path.isAbsolute(relative);
|
|
1040
|
-
}
|
|
1041
|
-
function normalizePathForCompare(value) {
|
|
1042
|
-
const trimmed = value.trim();
|
|
1043
|
-
if (!trimmed) {
|
|
1044
|
-
return "";
|
|
1045
|
-
}
|
|
1046
|
-
const resolved = path.resolve(trimmed);
|
|
1047
|
-
if (process.platform === "win32") {
|
|
1048
|
-
return resolved.toLowerCase();
|
|
1049
|
-
}
|
|
1050
|
-
return resolved;
|
|
1051
|
-
}
|
|
1052
|
-
function buildTaskSessionRef(agentId, taskId) {
|
|
1053
|
-
const normalizedAgentId = normalizeAgentId(agentId) || DEFAULT_AGENT_ID;
|
|
1054
|
-
const normalizedTaskId = normalizeAgentId(taskId) || "task";
|
|
1055
|
-
return `agent:${normalizedAgentId}:agent_${normalizedAgentId}_task_${normalizedTaskId}`;
|
|
1056
|
-
}
|
|
1057
|
-
function buildInactiveSessionRef(managerAgentId, subjectAgentId) {
|
|
1058
|
-
const manager = normalizeAgentId(managerAgentId) || DEFAULT_AGENT_ID;
|
|
1059
|
-
const subject = normalizeAgentId(subjectAgentId) || "agent";
|
|
1060
|
-
return `agent:${manager}:agent_${manager}_inactive_${subject}`;
|
|
1061
|
-
}
|
|
1062
|
-
function buildTodoTaskMessage(params) {
|
|
1063
|
-
const blockers = params.task.blockers.length > 0 ? params.task.blockers.join("; ") : "None";
|
|
1064
|
-
const artifacts = params.task.artifacts.length > 0
|
|
1065
|
-
? params.task.artifacts
|
|
1066
|
-
.map((entry) => `- ${entry.createdAt} @${entry.createdBy}: ${entry.content}`)
|
|
1067
|
-
.join("\n")
|
|
1068
|
-
: "- None";
|
|
1069
|
-
const worklog = params.task.worklog.length > 0
|
|
1070
|
-
? params.task.worklog
|
|
1071
|
-
.map((entry) => `- ${entry.createdAt} @${entry.createdBy}: ${entry.content}`)
|
|
1072
|
-
.join("\n")
|
|
1073
|
-
: "- None";
|
|
1074
|
-
return [
|
|
1075
|
-
`Task #${params.task.taskId} is assigned to you and currently in TODO. Please work on it now.`,
|
|
1076
|
-
"",
|
|
1077
|
-
`Task ID: ${params.task.taskId}`,
|
|
1078
|
-
`Title: ${params.task.title}`,
|
|
1079
|
-
`Description: ${params.task.description}`,
|
|
1080
|
-
`Project: ${params.task.project}`,
|
|
1081
|
-
`Status: ${params.task.status}`,
|
|
1082
|
-
`Owner: @${params.task.owner}`,
|
|
1083
|
-
`Assigned to: @${params.task.assignedTo}`,
|
|
1084
|
-
`Created at: ${params.task.createdAt}`,
|
|
1085
|
-
`Blockers: ${blockers}`,
|
|
1086
|
-
"Artifacts:",
|
|
1087
|
-
artifacts,
|
|
1088
|
-
"Worklog:",
|
|
1089
|
-
worklog,
|
|
1090
|
-
].join("\n");
|
|
1091
|
-
}
|
|
1092
|
-
function buildBlockedTaskMessage(params) {
|
|
1093
|
-
const blockerReason = params.task.blockers.length > 0
|
|
1094
|
-
? params.task.blockers.join("; ")
|
|
1095
|
-
: params.task.statusReason?.trim() || "no blocker details were provided";
|
|
1096
|
-
const artifacts = params.task.artifacts.length > 0
|
|
1097
|
-
? params.task.artifacts
|
|
1098
|
-
.map((entry) => `- ${entry.createdAt} @${entry.createdBy}: ${entry.content}`)
|
|
1099
|
-
.join("\n")
|
|
1100
|
-
: "- None";
|
|
1101
|
-
const worklog = params.task.worklog.length > 0
|
|
1102
|
-
? params.task.worklog
|
|
1103
|
-
.map((entry) => `- ${entry.createdAt} @${entry.createdBy}: ${entry.content}`)
|
|
1104
|
-
.join("\n")
|
|
1105
|
-
: "- None";
|
|
1106
|
-
return [
|
|
1107
|
-
`Task #${params.task.taskId}, assigned to your reportee "@${params.task.assignedTo}" is blocked because of ${blockerReason}. Help unblocking it.`,
|
|
1108
|
-
"",
|
|
1109
|
-
`Task ID: ${params.task.taskId}`,
|
|
1110
|
-
`Title: ${params.task.title}`,
|
|
1111
|
-
`Description: ${params.task.description}`,
|
|
1112
|
-
`Project: ${params.task.project}`,
|
|
1113
|
-
`Status: ${params.task.status}`,
|
|
1114
|
-
`Owner: @${params.task.owner}`,
|
|
1115
|
-
`Assigned to: @${params.task.assignedTo}`,
|
|
1116
|
-
`Created at: ${params.task.createdAt}`,
|
|
1117
|
-
"Artifacts:",
|
|
1118
|
-
artifacts,
|
|
1119
|
-
"Worklog:",
|
|
1120
|
-
worklog,
|
|
1121
|
-
].join("\n");
|
|
1122
|
-
}
|
|
1123
|
-
function buildInactiveAgentMessage(params) {
|
|
1124
|
-
const lastAction = typeof params.lastActionTimestamp === "number" &&
|
|
1125
|
-
Number.isFinite(params.lastActionTimestamp)
|
|
1126
|
-
? new Date(params.lastActionTimestamp).toISOString()
|
|
1127
|
-
: null;
|
|
1128
|
-
return [
|
|
1129
|
-
`Your reportee "@${params.subjectAgentId}" (${params.subjectName}) has no activity in the last ${params.inactiveMinutes} minutes.`,
|
|
1130
|
-
...(params.role ? [`Role: ${params.role}`] : []),
|
|
1131
|
-
...(lastAction ? [`Last action: ${lastAction}`] : []),
|
|
1132
|
-
"Please check in and unblock progress.",
|
|
1133
|
-
].join("\n");
|
|
1134
|
-
}
|
|
1135
|
-
function assertAgentExists(manifests, agentId) {
|
|
1136
|
-
if (manifests.some((manifest) => manifest.agentId === agentId)) {
|
|
1137
|
-
return;
|
|
1138
|
-
}
|
|
1139
|
-
throw new Error(`Agent "${agentId}" does not exist.`);
|
|
1140
|
-
}
|
|
1141
|
-
function collectAllReportees(manifests, managerAgentId) {
|
|
1142
|
-
const byManager = new Map();
|
|
1143
|
-
for (const manifest of manifests) {
|
|
1144
|
-
const reportsTo = manifest.metadata.reportsTo;
|
|
1145
|
-
if (!reportsTo) {
|
|
1146
|
-
continue;
|
|
1147
|
-
}
|
|
1148
|
-
const reportees = byManager.get(reportsTo) ?? [];
|
|
1149
|
-
reportees.push(manifest.agentId);
|
|
1150
|
-
byManager.set(reportsTo, reportees);
|
|
1151
|
-
}
|
|
1152
|
-
const visited = new Set();
|
|
1153
|
-
const queue = [...(byManager.get(managerAgentId) ?? [])];
|
|
1154
|
-
while (queue.length > 0) {
|
|
1155
|
-
const current = queue.shift();
|
|
1156
|
-
if (!current || current === managerAgentId || visited.has(current)) {
|
|
1157
|
-
continue;
|
|
1158
|
-
}
|
|
1159
|
-
visited.add(current);
|
|
1160
|
-
queue.push(...(byManager.get(current) ?? []));
|
|
1161
|
-
}
|
|
1162
|
-
return [...visited].sort((left, right) => left.localeCompare(right));
|
|
1163
|
-
}
|
|
1164
|
-
function prepareOpenClawCommandEnv(env) {
|
|
1165
|
-
const mergedPath = dedupePathEntries([
|
|
1166
|
-
...resolvePreferredOpenClawCommandPaths(env),
|
|
1167
|
-
...(env.PATH?.split(path.delimiter) ?? []),
|
|
1168
|
-
]);
|
|
1169
|
-
return {
|
|
1170
|
-
...env,
|
|
1171
|
-
PATH: mergedPath.join(path.delimiter),
|
|
1172
|
-
};
|
|
1173
|
-
}
|
|
1174
|
-
function resolvePreferredOpenClawCommandPaths(env) {
|
|
1175
|
-
const homeDir = homedir();
|
|
1176
|
-
const preferredPaths = [
|
|
1177
|
-
path.dirname(process.execPath),
|
|
1178
|
-
path.join(homeDir, ".npm-global", "bin"),
|
|
1179
|
-
path.join(homeDir, ".npm", "bin"),
|
|
1180
|
-
path.join(homeDir, ".local", "bin"),
|
|
1181
|
-
path.join(homeDir, ".volta", "bin"),
|
|
1182
|
-
path.join(homeDir, ".fnm", "current", "bin"),
|
|
1183
|
-
path.join(homeDir, ".asdf", "shims"),
|
|
1184
|
-
path.join(homeDir, "bin"),
|
|
1185
|
-
];
|
|
1186
|
-
const npmPrefixCandidates = dedupePathEntries([
|
|
1187
|
-
env.npm_config_prefix ?? "",
|
|
1188
|
-
env.NPM_CONFIG_PREFIX ?? "",
|
|
1189
|
-
process.env.npm_config_prefix ?? "",
|
|
1190
|
-
process.env.NPM_CONFIG_PREFIX ?? "",
|
|
1191
|
-
]);
|
|
1192
|
-
for (const prefix of npmPrefixCandidates) {
|
|
1193
|
-
preferredPaths.push(path.join(prefix, "bin"));
|
|
1194
|
-
}
|
|
1195
|
-
if (process.platform === "darwin") {
|
|
1196
|
-
preferredPaths.push("/opt/homebrew/bin", "/opt/homebrew/opt/node@22/bin", "/usr/local/opt/node@22/bin");
|
|
1197
|
-
}
|
|
1198
|
-
return preferredPaths;
|
|
1199
|
-
}
|
|
1200
|
-
function dedupePathEntries(entries) {
|
|
1201
|
-
const seen = new Set();
|
|
1202
|
-
const deduped = [];
|
|
1203
|
-
for (const rawEntry of entries) {
|
|
1204
|
-
const entry = rawEntry.trim();
|
|
1205
|
-
if (!entry || seen.has(entry)) {
|
|
1206
|
-
continue;
|
|
1207
|
-
}
|
|
1208
|
-
seen.add(entry);
|
|
1209
|
-
deduped.push(entry);
|
|
1210
|
-
}
|
|
1211
|
-
return deduped;
|
|
1212
|
-
}
|
|
1213
|
-
function isSpawnPermissionOrMissing(error) {
|
|
1214
|
-
return (typeof error === "object" &&
|
|
1215
|
-
error !== null &&
|
|
1216
|
-
"code" in error &&
|
|
1217
|
-
((error.code ?? "") === "ENOENT" ||
|
|
1218
|
-
(error.code ?? "") === "EACCES"));
|
|
1219
|
-
}
|
|
1220
972
|
//# sourceMappingURL=opengoat.service.js.map
|
|
@@ -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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"}
|
|
@@ -26,9 +26,9 @@ Then figure out together:
|
|
|
26
26
|
|
|
27
27
|
Write them down:
|
|
28
28
|
|
|
29
|
-
- Update
|
|
30
|
-
- Update
|
|
31
|
-
- Update
|
|
29
|
+
- Update `../../organization/MISSION.md` with the "what / who / problem"
|
|
30
|
+
- Update `../../organization/VISION.md` with the vision
|
|
31
|
+
- Update `../../organization/STRATEGY.md` only if the answers clearly imply changes to "where we play / how we win"
|
|
32
32
|
|
|
33
33
|
Then propose the next 1 to 3 concrete tasks and start.
|
|
34
34
|
|
|
@@ -130,9 +130,7 @@ function readMarkdownTemplate(relativePath) {
|
|
|
130
130
|
function discoverOrganizationMarkdownTemplates() {
|
|
131
131
|
let fileNames;
|
|
132
132
|
try {
|
|
133
|
-
fileNames =
|
|
134
|
-
.filter((name) => isMarkdownFile(name))
|
|
135
|
-
.sort((left, right) => left.localeCompare(right));
|
|
133
|
+
fileNames = listOrganizationMarkdownFileNames(new URL("./assets/organization/", import.meta.url));
|
|
136
134
|
}
|
|
137
135
|
catch (error) {
|
|
138
136
|
if (isNotFoundError(error)) {
|
|
@@ -148,6 +146,20 @@ function discoverOrganizationMarkdownTemplates() {
|
|
|
148
146
|
function isMarkdownFile(fileName) {
|
|
149
147
|
return fileName.toLowerCase().endsWith(".md");
|
|
150
148
|
}
|
|
149
|
+
function listOrganizationMarkdownFileNames(directory, relativePrefix = "") {
|
|
150
|
+
const entries = readdirSync(directory, { withFileTypes: true }).sort((left, right) => left.name.localeCompare(right.name));
|
|
151
|
+
const fileNames = [];
|
|
152
|
+
for (const entry of entries) {
|
|
153
|
+
if (entry.isDirectory()) {
|
|
154
|
+
fileNames.push(...listOrganizationMarkdownFileNames(new URL(`${entry.name}/`, directory), `${relativePrefix}${entry.name}/`));
|
|
155
|
+
continue;
|
|
156
|
+
}
|
|
157
|
+
if (entry.isFile() && isMarkdownFile(entry.name)) {
|
|
158
|
+
fileNames.push(`${relativePrefix}${entry.name}`);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
return fileNames;
|
|
162
|
+
}
|
|
151
163
|
function isNotFoundError(error) {
|
|
152
164
|
if (!error || typeof error !== "object") {
|
|
153
165
|
return false;
|