@opengoat/core 2026.2.18-2 → 2026.2.20

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.
Files changed (45) hide show
  1. package/dist/core/agents/application/agent.service.d.ts +11 -0
  2. package/dist/core/agents/application/agent.service.js +129 -15
  3. package/dist/core/agents/application/agent.service.js.map +1 -1
  4. package/dist/core/boards/application/board.service.d.ts +8 -1
  5. package/dist/core/boards/application/board.service.js +262 -38
  6. package/dist/core/boards/application/board.service.js.map +1 -1
  7. package/dist/core/boards/domain/board.d.ts +1 -2
  8. package/dist/core/bootstrap/application/bootstrap.service.js +4 -0
  9. package/dist/core/bootstrap/application/bootstrap.service.js.map +1 -1
  10. package/dist/core/opengoat/application/opengoat.service.d.ts +6 -1
  11. package/dist/core/opengoat/application/opengoat.service.helpers.d.ts +52 -0
  12. package/dist/core/opengoat/application/opengoat.service.helpers.js +129 -3
  13. package/dist/core/opengoat/application/opengoat.service.helpers.js.map +1 -1
  14. package/dist/core/opengoat/application/opengoat.service.js +310 -47
  15. package/dist/core/opengoat/application/opengoat.service.js.map +1 -1
  16. package/dist/core/orchestration/application/orchestration.service.js +6 -1
  17. package/dist/core/orchestration/application/orchestration.service.js.map +1 -1
  18. package/dist/core/ports/file-system.port.d.ts +3 -0
  19. package/dist/core/providers/application/provider.service.d.ts +3 -0
  20. package/dist/core/providers/application/provider.service.js +126 -0
  21. package/dist/core/providers/application/provider.service.js.map +1 -1
  22. package/dist/core/providers/cli-provider.d.ts +1 -0
  23. package/dist/core/providers/cli-provider.js +11 -8
  24. package/dist/core/providers/cli-provider.js.map +1 -1
  25. package/dist/core/providers/openclaw-gateway-rpc.js +70 -17
  26. package/dist/core/providers/openclaw-gateway-rpc.js.map +1 -1
  27. package/dist/core/providers/providers/codex/provider.d.ts +1 -0
  28. package/dist/core/providers/providers/codex/provider.js +24 -0
  29. package/dist/core/providers/providers/codex/provider.js.map +1 -1
  30. package/dist/core/providers/providers/copilot-cli/index.d.ts +4 -0
  31. package/dist/core/providers/providers/copilot-cli/index.js +37 -0
  32. package/dist/core/providers/providers/copilot-cli/index.js.map +1 -0
  33. package/dist/core/providers/providers/copilot-cli/provider.d.ts +6 -0
  34. package/dist/core/providers/providers/copilot-cli/provider.js +39 -0
  35. package/dist/core/providers/providers/copilot-cli/provider.js.map +1 -0
  36. package/dist/core/providers/providers/registry.js +2 -0
  37. package/dist/core/providers/providers/registry.js.map +1 -1
  38. package/dist/core/providers/types.d.ts +1 -0
  39. package/dist/core/templates/assets/ceo/BOOTSTRAP.md +3 -3
  40. package/dist/core/templates/assets/ceo/ROLE.md +4 -4
  41. package/dist/core/templates/assets/skills/og-board-manager/SKILL.md +3 -6
  42. package/dist/platform/node/node-file-system.d.ts +3 -0
  43. package/dist/platform/node/node-file-system.js +30 -1
  44. package/dist/platform/node/node-file-system.js.map +1 -1
  45. package/package.json +1 -1
@@ -10,6 +10,7 @@ import type { OpenGoatPathsProvider } from "../../ports/paths-provider.port.js";
10
10
  import type { AgentProviderBinding, OpenClawGatewayConfig, ProviderAuthOptions, ProviderExecutionResult, ProviderOnboardingSpec, ProviderRegistry, ProviderStoredConfig, ProviderSummary } from "../../providers/index.js";
11
11
  import { type AgentLastAction, type SessionCompactionResult, type SessionHistoryResult, type SessionRemoveResult, type SessionRunInfo, type SessionSummary } from "../../sessions/index.js";
12
12
  import { type InstallSkillRequest, type InstallSkillResult, type ResolvedSkill } from "../../skills/index.js";
13
+ import { type TaskDelegationStrategiesConfig } from "./opengoat.service.helpers.js";
13
14
  interface OpenGoatServiceDeps {
14
15
  fileSystem: FileSystemPort;
15
16
  pathPort: PathPort;
@@ -25,7 +26,7 @@ export interface RuntimeDefaultsSyncResult {
25
26
  warnings: string[];
26
27
  }
27
28
  export interface TaskCronDispatchResult {
28
- kind: "todo" | "pending" | "blocked" | "inactive";
29
+ kind: "todo" | "doing" | "pending" | "blocked" | "inactive" | "topdown";
29
30
  targetAgentId: string;
30
31
  sessionRef: string;
31
32
  taskId?: string;
@@ -38,6 +39,7 @@ export interface TaskCronRunResult {
38
39
  ranAt: string;
39
40
  scannedTasks: number;
40
41
  todoTasks: number;
42
+ doingTasks: number;
41
43
  blockedTasks: number;
42
44
  inactiveAgents: number;
43
45
  sent: number;
@@ -125,10 +127,13 @@ export declare class OpenGoatService {
125
127
  private assertManagerSupportsReportees;
126
128
  runTaskCronCycle(options?: {
127
129
  inactiveMinutes?: number;
130
+ inProgressMinutes?: number;
128
131
  notificationTarget?: InactiveAgentNotificationTarget;
129
132
  notifyInactiveAgents?: boolean;
133
+ delegationStrategies?: TaskDelegationStrategiesConfig;
130
134
  maxParallelFlows?: number;
131
135
  }): Promise<TaskCronRunResult>;
136
+ private dispatchTopDownTaskDelegationAutomations;
132
137
  private dispatchTaskStatusAutomations;
133
138
  private dispatchInactiveAgentAutomations;
134
139
  listSkills(agentId?: string): Promise<ResolvedSkill[]>;
@@ -14,8 +14,41 @@ export declare function containsAlreadyExistsMessage(stdout: string, stderr: str
14
14
  export declare function containsAgentNotFoundMessage(stdout: string, stderr: string): boolean;
15
15
  export declare function toErrorMessage(error: unknown): string;
16
16
  export declare function resolveInactiveMinutes(value: number | undefined): number;
17
+ export declare function resolveInProgressTimeoutMinutes(value: number | undefined): number;
17
18
  export declare function resolveMaxParallelFlows(value: number | undefined): number;
18
19
  export declare function resolveInactiveAgentNotificationTarget(value: "all-managers" | "ceo-only" | undefined): "all-managers" | "ceo-only";
20
+ export interface BottomUpTaskDelegationStrategyConfig {
21
+ enabled?: boolean;
22
+ inactiveMinutes?: number;
23
+ notificationTarget?: "all-managers" | "ceo-only";
24
+ }
25
+ export interface TopDownTaskDelegationStrategyConfig {
26
+ enabled?: boolean;
27
+ openTasksThreshold?: number;
28
+ }
29
+ export interface TaskDelegationStrategiesConfig {
30
+ topDown?: TopDownTaskDelegationStrategyConfig;
31
+ bottomUp?: BottomUpTaskDelegationStrategyConfig;
32
+ }
33
+ export interface ResolvedTopDownTaskDelegationStrategy {
34
+ enabled: boolean;
35
+ openTasksThreshold: number;
36
+ }
37
+ export interface ResolvedBottomUpTaskDelegationStrategy {
38
+ enabled: boolean;
39
+ inactiveMinutes: number;
40
+ notificationTarget: "all-managers" | "ceo-only";
41
+ }
42
+ export declare function resolveTopDownOpenTasksThreshold(value: number | undefined): number;
43
+ export declare function resolveTopDownTaskDelegationStrategy(options: {
44
+ delegationStrategies?: TaskDelegationStrategiesConfig;
45
+ }): ResolvedTopDownTaskDelegationStrategy;
46
+ export declare function resolveBottomUpTaskDelegationStrategy(options: {
47
+ inactiveMinutes?: number;
48
+ notificationTarget?: "all-managers" | "ceo-only";
49
+ notifyInactiveAgents?: boolean;
50
+ delegationStrategies?: TaskDelegationStrategiesConfig;
51
+ }): ResolvedBottomUpTaskDelegationStrategy;
19
52
  export declare function extractManagedSkillsDir(payload: unknown): string | null;
20
53
  export declare function extractOpenClawAgents(payload: unknown): OpenClawAgentPathEntry[];
21
54
  export declare function extractOpenClawAgentEntry(payload: unknown, agentId: string): {
@@ -36,10 +69,29 @@ export declare function buildPendingTaskMessage(params: {
36
69
  pendingMinutes: number;
37
70
  notificationTimestamp?: string;
38
71
  }): string;
72
+ export declare function buildDoingTaskMessage(params: {
73
+ task: TaskRecord;
74
+ doingMinutes: number;
75
+ notificationTimestamp?: string;
76
+ }): string;
39
77
  export declare function buildBlockedTaskMessage(params: {
40
78
  task: TaskRecord;
41
79
  notificationTimestamp?: string;
42
80
  }): string;
81
+ export declare function buildTopDownTaskDelegationMessage(params: {
82
+ openTasksThreshold: number;
83
+ openTasksCount: number;
84
+ totalAgents: number;
85
+ managerAgents: number;
86
+ ceoDirectReportees: number;
87
+ openTasks: Array<{
88
+ taskId: string;
89
+ title: string;
90
+ status: string;
91
+ assignedTo: string;
92
+ }>;
93
+ notificationTimestamp?: string;
94
+ }): string;
43
95
  export declare function buildInactiveAgentMessage(params: {
44
96
  managerAgentId: string;
45
97
  subjectAgentId: string;
@@ -21,9 +21,18 @@ export function resolveInactiveMinutes(value) {
21
21
  }
22
22
  return Math.floor(value);
23
23
  }
24
+ export function resolveInProgressTimeoutMinutes(value) {
25
+ if (typeof value !== "number" || !Number.isFinite(value) || value <= 0) {
26
+ return 4 * 60;
27
+ }
28
+ return Math.floor(value);
29
+ }
24
30
  const DEFAULT_MAX_PARALLEL_FLOWS = 3;
25
31
  const MIN_MAX_PARALLEL_FLOWS = 1;
26
32
  const MAX_MAX_PARALLEL_FLOWS = 32;
33
+ const DEFAULT_TOP_DOWN_OPEN_TASKS_THRESHOLD = 5;
34
+ const MIN_TOP_DOWN_OPEN_TASKS_THRESHOLD = 0;
35
+ const MAX_TOP_DOWN_OPEN_TASKS_THRESHOLD = 10_000;
27
36
  export function resolveMaxParallelFlows(value) {
28
37
  if (typeof value !== "number" || !Number.isFinite(value)) {
29
38
  return DEFAULT_MAX_PARALLEL_FLOWS;
@@ -40,6 +49,41 @@ export function resolveMaxParallelFlows(value) {
40
49
  export function resolveInactiveAgentNotificationTarget(value) {
41
50
  return value === "ceo-only" ? "ceo-only" : "all-managers";
42
51
  }
52
+ export function resolveTopDownOpenTasksThreshold(value) {
53
+ if (typeof value !== "number" || !Number.isFinite(value)) {
54
+ return DEFAULT_TOP_DOWN_OPEN_TASKS_THRESHOLD;
55
+ }
56
+ const normalized = Math.floor(value);
57
+ if (normalized < MIN_TOP_DOWN_OPEN_TASKS_THRESHOLD) {
58
+ return MIN_TOP_DOWN_OPEN_TASKS_THRESHOLD;
59
+ }
60
+ if (normalized > MAX_TOP_DOWN_OPEN_TASKS_THRESHOLD) {
61
+ return MAX_TOP_DOWN_OPEN_TASKS_THRESHOLD;
62
+ }
63
+ return normalized;
64
+ }
65
+ export function resolveTopDownTaskDelegationStrategy(options) {
66
+ const topDownConfig = options.delegationStrategies?.topDown;
67
+ const enabled = typeof topDownConfig?.enabled === "boolean" ? topDownConfig.enabled : true;
68
+ return {
69
+ enabled,
70
+ openTasksThreshold: resolveTopDownOpenTasksThreshold(topDownConfig?.openTasksThreshold),
71
+ };
72
+ }
73
+ export function resolveBottomUpTaskDelegationStrategy(options) {
74
+ const bottomUpConfig = options.delegationStrategies?.bottomUp;
75
+ const bottomUpEnabled = bottomUpConfig?.enabled;
76
+ const enabled = typeof bottomUpEnabled === "boolean"
77
+ ? bottomUpEnabled
78
+ : typeof options.notifyInactiveAgents === "boolean"
79
+ ? options.notifyInactiveAgents
80
+ : false;
81
+ return {
82
+ enabled,
83
+ inactiveMinutes: resolveInactiveMinutes(bottomUpConfig?.inactiveMinutes ?? options.inactiveMinutes),
84
+ notificationTarget: resolveInactiveAgentNotificationTarget(bottomUpConfig?.notificationTarget ?? options.notificationTarget),
85
+ };
86
+ }
43
87
  export function extractManagedSkillsDir(payload) {
44
88
  if (!payload || typeof payload !== "object" || Array.isArray(payload)) {
45
89
  return null;
@@ -131,6 +175,7 @@ export function buildNotificationSessionRef(agentId) {
131
175
  return `agent:${normalizedAgentId}:agent_${normalizedAgentId}_notifications`;
132
176
  }
133
177
  export function buildTodoTaskMessage(params) {
178
+ const statusUpdateReminder = "Make sure the task status is updated";
134
179
  const blockers = params.task.blockers.length > 0 ? params.task.blockers.join("; ") : "None";
135
180
  const artifacts = params.task.artifacts.length > 0
136
181
  ? params.task.artifacts
@@ -152,7 +197,6 @@ export function buildTodoTaskMessage(params) {
152
197
  `Task ID: ${params.task.taskId}`,
153
198
  `Title: ${params.task.title}`,
154
199
  `Description: ${params.task.description}`,
155
- `Project: ${params.task.project}`,
156
200
  `Status: ${params.task.status}`,
157
201
  `Owner: @${params.task.owner}`,
158
202
  `Assigned to: @${params.task.assignedTo}`,
@@ -162,9 +206,12 @@ export function buildTodoTaskMessage(params) {
162
206
  artifacts,
163
207
  "Worklog:",
164
208
  worklog,
209
+ "",
210
+ statusUpdateReminder,
165
211
  ].join("\n");
166
212
  }
167
213
  export function buildPendingTaskMessage(params) {
214
+ const statusUpdateReminder = "Make sure the task status is updated";
168
215
  const blockers = params.task.blockers.length > 0 ? params.task.blockers.join("; ") : "None";
169
216
  const artifacts = params.task.artifacts.length > 0
170
217
  ? params.task.artifacts
@@ -187,7 +234,6 @@ export function buildPendingTaskMessage(params) {
187
234
  `Task ID: ${params.task.taskId}`,
188
235
  `Title: ${params.task.title}`,
189
236
  `Description: ${params.task.description}`,
190
- `Project: ${params.task.project}`,
191
237
  `Status: ${params.task.status}`,
192
238
  `Owner: @${params.task.owner}`,
193
239
  `Assigned to: @${params.task.assignedTo}`,
@@ -198,6 +244,45 @@ export function buildPendingTaskMessage(params) {
198
244
  artifacts,
199
245
  "Worklog:",
200
246
  worklog,
247
+ "",
248
+ statusUpdateReminder,
249
+ ].join("\n");
250
+ }
251
+ export function buildDoingTaskMessage(params) {
252
+ const statusUpdateReminder = "Make sure the task status is updated";
253
+ const blockers = params.task.blockers.length > 0 ? params.task.blockers.join("; ") : "None";
254
+ const artifacts = params.task.artifacts.length > 0
255
+ ? params.task.artifacts
256
+ .map((entry) => `- ${entry.createdAt} @${entry.createdBy}: ${entry.content}`)
257
+ .join("\n")
258
+ : "- None";
259
+ const worklog = params.task.worklog.length > 0
260
+ ? params.task.worklog
261
+ .map((entry) => `- ${entry.createdAt} @${entry.createdBy}: ${entry.content}`)
262
+ .join("\n")
263
+ : "- None";
264
+ const notificationTimestamp = resolveNotificationTimestamp(params.notificationTimestamp);
265
+ return [
266
+ `Task #${params.task.taskId} is still in progress after ${params.doingMinutes} minutes.`,
267
+ ...(notificationTimestamp
268
+ ? [`Notification timestamp: ${notificationTimestamp}`]
269
+ : []),
270
+ "Please continue working on it or update the task status if needed.",
271
+ "",
272
+ `Task ID: ${params.task.taskId}`,
273
+ `Title: ${params.task.title}`,
274
+ `Description: ${params.task.description}`,
275
+ `Status: ${params.task.status}`,
276
+ `Owner: @${params.task.owner}`,
277
+ `Assigned to: @${params.task.assignedTo}`,
278
+ `Created at: ${params.task.createdAt}`,
279
+ `Blockers: ${blockers}`,
280
+ "Artifacts:",
281
+ artifacts,
282
+ "Worklog:",
283
+ worklog,
284
+ "",
285
+ statusUpdateReminder,
201
286
  ].join("\n");
202
287
  }
203
288
  export function buildBlockedTaskMessage(params) {
@@ -224,7 +309,6 @@ export function buildBlockedTaskMessage(params) {
224
309
  `Task ID: ${params.task.taskId}`,
225
310
  `Title: ${params.task.title}`,
226
311
  `Description: ${params.task.description}`,
227
- `Project: ${params.task.project}`,
228
312
  `Status: ${params.task.status}`,
229
313
  `Owner: @${params.task.owner}`,
230
314
  `Assigned to: @${params.task.assignedTo}`,
@@ -235,6 +319,48 @@ export function buildBlockedTaskMessage(params) {
235
319
  worklog,
236
320
  ].join("\n");
237
321
  }
322
+ export function buildTopDownTaskDelegationMessage(params) {
323
+ const notificationTimestamp = resolveNotificationTimestamp(params.notificationTimestamp);
324
+ const openTasksPreview = params.openTasks.slice(0, 8);
325
+ const statusCounts = new Map();
326
+ for (const task of params.openTasks) {
327
+ const key = task.status.trim().toLowerCase() || "unknown";
328
+ statusCounts.set(key, (statusCounts.get(key) ?? 0) + 1);
329
+ }
330
+ const statusSummary = statusCounts.size === 0
331
+ ? "none"
332
+ : [...statusCounts.entries()]
333
+ .sort(([left], [right]) => left.localeCompare(right))
334
+ .map(([status, count]) => `${status}:${count}`)
335
+ .join(", ");
336
+ const lines = [
337
+ `Open tasks are at ${params.openTasksCount}, which is at or below the Top-Down threshold (${params.openTasksThreshold}).`,
338
+ ...(notificationTimestamp
339
+ ? [`Notification timestamp: ${notificationTimestamp}`]
340
+ : []),
341
+ `Organization context: ${params.totalAgents} total agents, ${params.managerAgents} managers, ${params.ceoDirectReportees} direct CEO reportees.`,
342
+ `Open task status distribution: ${statusSummary}.`,
343
+ "",
344
+ "CEO guidance for creating next tasks:",
345
+ "1. Review current project status and near-term objectives before creating work.",
346
+ "2. Keep decisions aligned with MISSION, VISION, and STRATEGY.",
347
+ "3. Prioritize high-value, low-effort tasks when possible.",
348
+ "4. Match task size to organization capacity: larger teams can absorb broader scopes, smaller teams need tighter scopes.",
349
+ "5. Delegate realistically to reportees; tag reportees who should decompose work and pass it down.",
350
+ "6. Balance long-term direction with short-term deliverables that can be completed now.",
351
+ "",
352
+ "Open tasks snapshot:",
353
+ ...(openTasksPreview.length === 0
354
+ ? ["- none"]
355
+ : openTasksPreview.map((task) => `- ${task.taskId} [${task.status}] @${task.assignedTo}: ${task.title}`)),
356
+ ...(params.openTasks.length > openTasksPreview.length
357
+ ? [`- ...and ${params.openTasks.length - openTasksPreview.length} more`]
358
+ : []),
359
+ "",
360
+ "Create and assign the next set of practical, high-impact tasks now.",
361
+ ];
362
+ return lines.join("\n");
363
+ }
238
364
  export function buildInactiveAgentMessage(params) {
239
365
  return buildInactiveAgentsMessage({
240
366
  inactiveMinutes: params.inactiveMinutes,
@@ -1 +1 @@
1
- {"version":3,"file":"opengoat.service.helpers.js","sourceRoot":"","sources":["../../../../src/core/opengoat/application/opengoat.service.helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"opengoat.service.helpers.js","sourceRoot":"","sources":["../../../../src/core/opengoat/application/opengoat.service.helpers.ts"],"names":[],"mappings":"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"}