@useorgx/openclaw-plugin 0.4.9 → 0.7.0
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/README.md +35 -0
- package/dashboard/dist/assets/BJgZIVUQ.js +53 -0
- package/dashboard/dist/assets/BJgZIVUQ.js.br +0 -0
- package/dashboard/dist/assets/BJgZIVUQ.js.gz +0 -0
- package/dashboard/dist/assets/BXWDRGm-.js +1 -0
- package/dashboard/dist/assets/BXWDRGm-.js.br +0 -0
- package/dashboard/dist/assets/BXWDRGm-.js.gz +0 -0
- package/dashboard/dist/assets/BgOYB78t.js +4 -0
- package/dashboard/dist/assets/BgOYB78t.js.br +0 -0
- package/dashboard/dist/assets/BgOYB78t.js.gz +0 -0
- package/dashboard/dist/assets/C-KIc3Wc.js.br +0 -0
- package/dashboard/dist/assets/C-KIc3Wc.js.gz +0 -0
- package/dashboard/dist/assets/CE38zU4U.js +1 -0
- package/dashboard/dist/assets/CE38zU4U.js.br +0 -0
- package/dashboard/dist/assets/CE38zU4U.js.gz +0 -0
- package/dashboard/dist/assets/CFGKRAzG.js +1 -0
- package/dashboard/dist/assets/CFGKRAzG.js.br +0 -0
- package/dashboard/dist/assets/CFGKRAzG.js.gz +0 -0
- package/dashboard/dist/assets/CGGR2GZh.js +1 -0
- package/dashboard/dist/assets/CGGR2GZh.js.br +0 -0
- package/dashboard/dist/assets/CGGR2GZh.js.gz +0 -0
- package/dashboard/dist/assets/CL_wXqR7.js +1 -0
- package/dashboard/dist/assets/CL_wXqR7.js.br +0 -0
- package/dashboard/dist/assets/CL_wXqR7.js.gz +0 -0
- package/dashboard/dist/assets/CPFiTmlw.js +8 -0
- package/dashboard/dist/assets/CPFiTmlw.js.br +0 -0
- package/dashboard/dist/assets/CPFiTmlw.js.gz +0 -0
- package/dashboard/dist/assets/CZZTvkQZ.js +1 -0
- package/dashboard/dist/assets/CZZTvkQZ.js.br +0 -0
- package/dashboard/dist/assets/CZZTvkQZ.js.gz +0 -0
- package/dashboard/dist/assets/{CpJsfbXo.js → CxQ08qFN.js} +2 -2
- package/dashboard/dist/assets/CxQ08qFN.js.br +0 -0
- package/dashboard/dist/assets/CxQ08qFN.js.gz +0 -0
- package/dashboard/dist/assets/D-bf6hEI.js +213 -0
- package/dashboard/dist/assets/D-bf6hEI.js.br +0 -0
- package/dashboard/dist/assets/D-bf6hEI.js.gz +0 -0
- package/dashboard/dist/assets/DG6y9wJI.js +2 -0
- package/dashboard/dist/assets/DG6y9wJI.js.br +0 -0
- package/dashboard/dist/assets/DG6y9wJI.js.gz +0 -0
- package/dashboard/dist/assets/DNxKz-GV.js +1 -0
- package/dashboard/dist/assets/DNxKz-GV.js.br +0 -0
- package/dashboard/dist/assets/DNxKz-GV.js.gz +0 -0
- package/dashboard/dist/assets/DW_rKUic.js +11 -0
- package/dashboard/dist/assets/DW_rKUic.js.br +0 -0
- package/dashboard/dist/assets/DW_rKUic.js.gz +0 -0
- package/dashboard/dist/assets/DbNoijHm.js +1 -0
- package/dashboard/dist/assets/DbNoijHm.js.br +0 -0
- package/dashboard/dist/assets/DbNoijHm.js.gz +0 -0
- package/dashboard/dist/assets/DjcdE6jC.js +2 -0
- package/dashboard/dist/assets/DjcdE6jC.js.br +0 -0
- package/dashboard/dist/assets/DjcdE6jC.js.gz +0 -0
- package/dashboard/dist/assets/FZYuCDnt.js +1 -0
- package/dashboard/dist/assets/FZYuCDnt.js.br +0 -0
- package/dashboard/dist/assets/FZYuCDnt.js.gz +0 -0
- package/dashboard/dist/assets/PAUiij_z.js +1 -0
- package/dashboard/dist/assets/PAUiij_z.js.br +0 -0
- package/dashboard/dist/assets/PAUiij_z.js.gz +0 -0
- package/dashboard/dist/assets/cNrhgGc1.js +8 -0
- package/dashboard/dist/assets/cNrhgGc1.js.br +0 -0
- package/dashboard/dist/assets/cNrhgGc1.js.gz +0 -0
- package/dashboard/dist/assets/h5biQs2I.css +1 -0
- package/dashboard/dist/assets/h5biQs2I.css.br +0 -0
- package/dashboard/dist/assets/h5biQs2I.css.gz +0 -0
- package/dashboard/dist/assets/ic2FaMnh.js +1 -0
- package/dashboard/dist/assets/ic2FaMnh.js.br +0 -0
- package/dashboard/dist/assets/ic2FaMnh.js.gz +0 -0
- package/dashboard/dist/assets/nByHNHoW.js +1 -0
- package/dashboard/dist/assets/nByHNHoW.js.br +0 -0
- package/dashboard/dist/assets/nByHNHoW.js.gz +0 -0
- package/dashboard/dist/assets/qm8xLgv-.css +1 -0
- package/dashboard/dist/assets/qm8xLgv-.css.br +0 -0
- package/dashboard/dist/assets/qm8xLgv-.css.gz +0 -0
- package/dashboard/dist/assets/tS9mbYZi.js +1 -0
- package/dashboard/dist/assets/tS9mbYZi.js.br +0 -0
- package/dashboard/dist/assets/tS9mbYZi.js.gz +0 -0
- package/dashboard/dist/brand/anthropic-mark.svg.br +0 -0
- package/dashboard/dist/brand/anthropic-mark.svg.gz +0 -0
- package/dashboard/dist/brand/openai-mark.svg.br +0 -0
- package/dashboard/dist/brand/openai-mark.svg.gz +0 -0
- package/dashboard/dist/brand/openclaw-mark.svg.br +0 -0
- package/dashboard/dist/brand/openclaw-mark.svg.gz +0 -0
- package/dashboard/dist/brand/xandy-orchestrator.png +0 -0
- package/dashboard/dist/index.html +7 -5
- package/dashboard/dist/index.html.br +0 -0
- package/dashboard/dist/index.html.gz +0 -0
- package/dist/activity-actor-fields.js +26 -4
- package/dist/activity-store.js +34 -8
- package/dist/agent-context-store.js +79 -17
- package/dist/agent-run-store.js +44 -3
- package/dist/agent-suite.d.ts +9 -0
- package/dist/agent-suite.js +149 -9
- package/dist/artifacts/artifact-domain-schemas.d.ts +66 -0
- package/dist/artifacts/artifact-domain-schemas.js +357 -0
- package/dist/artifacts/register-artifact.d.ts +4 -3
- package/dist/artifacts/register-artifact.js +170 -57
- package/dist/chat-store.d.ts +157 -0
- package/dist/chat-store.js +586 -0
- package/dist/cli/orgx.js +11 -0
- package/dist/contracts/client.d.ts +43 -3
- package/dist/contracts/client.js +159 -30
- package/dist/contracts/retro-schema.d.ts +81 -0
- package/dist/contracts/retro-schema.js +80 -0
- package/dist/contracts/shared-types.d.ts +159 -0
- package/dist/contracts/shared-types.js +177 -1
- package/dist/contracts/skill-pack-schema.d.ts +192 -0
- package/dist/contracts/skill-pack-schema.js +180 -0
- package/dist/contracts/types.d.ts +227 -2
- package/dist/entities/auto-assignment.js +43 -17
- package/dist/event-sanitization.d.ts +11 -0
- package/dist/event-sanitization.js +113 -0
- package/dist/fs-utils.js +13 -1
- package/dist/gateway-watchdog.d.ts +5 -0
- package/dist/gateway-watchdog.js +50 -0
- package/dist/hooks/post-reporting-event.mjs +1 -5
- package/dist/http/helpers/activity-headline.js +13 -132
- package/dist/http/helpers/auto-continue-engine.d.ts +198 -10
- package/dist/http/helpers/auto-continue-engine.js +2531 -186
- package/dist/http/helpers/autopilot-operations.d.ts +19 -0
- package/dist/http/helpers/autopilot-operations.js +182 -31
- package/dist/http/helpers/autopilot-runtime.d.ts +1 -0
- package/dist/http/helpers/autopilot-runtime.js +308 -20
- package/dist/http/helpers/autopilot-slice-utils.d.ts +18 -0
- package/dist/http/helpers/autopilot-slice-utils.js +516 -93
- package/dist/http/helpers/decision-mapper.d.ts +40 -0
- package/dist/http/helpers/decision-mapper.js +223 -7
- package/dist/http/helpers/dispatch-lifecycle.d.ts +19 -2
- package/dist/http/helpers/dispatch-lifecycle.js +242 -37
- package/dist/http/helpers/kickoff-context.js +74 -0
- package/dist/http/helpers/llm-client.d.ts +47 -0
- package/dist/http/helpers/llm-client.js +256 -0
- package/dist/http/helpers/mission-control.d.ts +102 -3
- package/dist/http/helpers/mission-control.js +498 -9
- package/dist/http/helpers/sentinel-catalog.d.ts +23 -0
- package/dist/http/helpers/sentinel-catalog.js +193 -0
- package/dist/http/helpers/session-classification.d.ts +9 -0
- package/dist/http/helpers/session-classification.js +564 -0
- package/dist/http/helpers/slice-experience-v2.d.ts +137 -0
- package/dist/http/helpers/slice-experience-v2.js +677 -0
- package/dist/http/helpers/slice-run-projections.d.ts +72 -0
- package/dist/http/helpers/slice-run-projections.js +860 -0
- package/dist/http/helpers/triage-mapper.d.ts +43 -0
- package/dist/http/helpers/triage-mapper.js +549 -0
- package/dist/http/helpers/value-utils.js +7 -2
- package/dist/http/helpers/workspace-scope.d.ts +15 -0
- package/dist/http/helpers/workspace-scope.js +170 -0
- package/dist/http/index.js +1354 -97
- package/dist/http/routes/agent-suite.d.ts +9 -0
- package/dist/http/routes/agent-suite.js +207 -8
- package/dist/http/routes/agents-catalog.js +64 -19
- package/dist/http/routes/chat.d.ts +19 -0
- package/dist/http/routes/chat.js +522 -0
- package/dist/http/routes/decision-actions.d.ts +8 -1
- package/dist/http/routes/decision-actions.js +42 -5
- package/dist/http/routes/dispatch-gateway-envelope.d.ts +25 -0
- package/dist/http/routes/dispatch-gateway-envelope.js +26 -0
- package/dist/http/routes/entities.d.ts +16 -0
- package/dist/http/routes/entities.js +294 -6
- package/dist/http/routes/live-legacy.d.ts +5 -0
- package/dist/http/routes/live-legacy.js +23 -509
- package/dist/http/routes/live-misc.d.ts +12 -0
- package/dist/http/routes/live-misc.js +251 -31
- package/dist/http/routes/live-snapshot.d.ts +48 -2
- package/dist/http/routes/live-snapshot.js +638 -19
- package/dist/http/routes/live-terminal.d.ts +11 -0
- package/dist/http/routes/live-terminal.js +261 -0
- package/dist/http/routes/live-triage.d.ts +61 -0
- package/dist/http/routes/live-triage.js +248 -0
- package/dist/http/routes/mission-control-actions.d.ts +49 -1
- package/dist/http/routes/mission-control-actions.js +1334 -84
- package/dist/http/routes/mission-control-read.d.ts +48 -3
- package/dist/http/routes/mission-control-read.js +1593 -20
- package/dist/http/routes/realtime-orchestrator.d.ts +10 -0
- package/dist/http/routes/realtime-orchestrator.js +74 -0
- package/dist/http/routes/run-control.d.ts +5 -2
- package/dist/http/routes/run-control.js +10 -0
- package/dist/http/routes/sentinels-catalog.d.ts +7 -0
- package/dist/http/routes/sentinels-catalog.js +24 -0
- package/dist/http/routes/summary.js +10 -3
- package/dist/http/routes/usage.d.ts +24 -0
- package/dist/http/routes/usage.js +362 -0
- package/dist/http/routes/work-artifacts.js +28 -9
- package/dist/index.js +165 -27
- package/dist/local-openclaw.js +29 -6
- package/dist/mcp-client-setup.js +3 -3
- package/dist/mcp-http-handler.js +33 -59
- package/dist/next-up-queue-store.d.ts +16 -1
- package/dist/next-up-queue-store.js +89 -7
- package/dist/outbox.d.ts +5 -0
- package/dist/outbox.js +113 -9
- package/dist/paths.js +24 -5
- package/dist/reporting/rollups.d.ts +53 -0
- package/dist/reporting/rollups.js +148 -0
- package/dist/retro/domain-templates.d.ts +45 -0
- package/dist/retro/domain-templates.js +297 -0
- package/dist/retro/quality-rubric.d.ts +33 -0
- package/dist/retro/quality-rubric.js +213 -0
- package/dist/runtime-cleanup.d.ts +18 -0
- package/dist/runtime-cleanup.js +87 -0
- package/dist/services/background.d.ts +11 -0
- package/dist/services/background.js +22 -0
- package/dist/services/experiment-randomization.d.ts +21 -0
- package/dist/services/experiment-randomization.js +63 -0
- package/dist/skill-pack-state.d.ts +36 -5
- package/dist/skill-pack-state.js +273 -29
- package/dist/sync/local-agent-telemetry.d.ts +13 -0
- package/dist/sync/local-agent-telemetry.js +128 -0
- package/dist/sync/outbox-replay.js +131 -24
- package/dist/team-context-store.d.ts +23 -0
- package/dist/team-context-store.js +116 -0
- package/dist/telemetry/posthog.js +4 -2
- package/dist/tools/core-tools.d.ts +10 -14
- package/dist/tools/core-tools.js +1289 -24
- package/dist/types.d.ts +2 -0
- package/dist/types.js +2 -0
- package/dist/worker-supervisor.js +23 -0
- package/package.json +14 -4
- package/dashboard/dist/assets/B3ziCA02.js +0 -8
- package/dashboard/dist/assets/B5NEElEI.css +0 -1
- package/dashboard/dist/assets/BhapSNAs.js +0 -215
- package/dashboard/dist/assets/iFdvE7lx.js +0 -1
- package/dashboard/dist/assets/jRJsmpYM.js +0 -1
- package/dashboard/dist/assets/sAhvFnpk.js +0 -4
|
@@ -42,6 +42,12 @@ export interface RuntimeInstance {
|
|
|
42
42
|
metadata: Record<string, unknown> | null;
|
|
43
43
|
}
|
|
44
44
|
export type LiveActivityType = 'run_started' | 'run_completed' | 'run_failed' | 'artifact_created' | 'decision_requested' | 'decision_resolved' | 'handoff_requested' | 'handoff_claimed' | 'handoff_fulfilled' | 'blocker_created' | 'milestone_completed' | 'delegation';
|
|
45
|
+
/**
|
|
46
|
+
* Canonical event names set in `metadata.event` on activity items.
|
|
47
|
+
* Keep in sync with emitters in auto-continue-engine.ts, autopilot-operations.ts,
|
|
48
|
+
* dispatch-lifecycle.ts, and http/index.ts.
|
|
49
|
+
*/
|
|
50
|
+
export type ActivityEventName = 'autopilot_slice_dispatched' | 'autopilot_slice_started' | 'autopilot_slice_heartbeat' | 'autopilot_slice_finished' | 'autopilot_slice_result' | 'autopilot_slice_handoff' | 'autopilot_slice_mcp_handshake_failed' | 'autopilot_slice_timeout' | 'autopilot_slice_log_stall' | 'autopilot_slice_artifact_buffered' | 'autopilot_slice_status_updates_buffered' | 'auto_continue_started' | 'auto_continue_stopped' | 'auto_continue_spawn_guard_blocked' | 'auto_continue_spawn_guard_rate_limited' | 'auto_continue_spawn_guard_rate_limit_overridden' | 'auto_continue_behavior_config_drift_detected' | 'auto_continue_behavior_config_approval_required' | 'auto_continue_behavior_automation_manual_blocked' | 'auto_continue_behavior_automation_supervised_one_shot' | 'autopilot_autofix_scheduled' | 'autopilot_autofix_executed' | 'autopilot_autofix_skipped' | 'orchestrator_dispatch' | 'autopilot_transition' | 'next_up_manual_dispatch_started' | 'scope_completed' | 'session_start' | 'session_stop' | 'heartbeat' | 'decision_buffered' | 'decision_resolved' | 'spawn_guard_degraded' | 'dashboard_run_mark_completed' | 'proof_gate_warning' | 'artifact_registered';
|
|
45
51
|
export interface LiveActivityItem {
|
|
46
52
|
id: string;
|
|
47
53
|
type: LiveActivityType;
|
|
@@ -69,16 +75,94 @@ export interface LiveActivityItem {
|
|
|
69
75
|
lastHeartbeatAt?: string | null;
|
|
70
76
|
metadata?: Record<string, unknown>;
|
|
71
77
|
}
|
|
78
|
+
export declare const KNOWN_ACTIVITY_ACTION_TYPES: readonly ["orchestrator_dispatch", "dispatch_slice", "spawn_worker", "run_heartbeat", "run_state_transition", "run_started", "run_completed", "run_failed", "slice_handoff", "decision_requested", "decision_resolved", "status_updates_applied", "status_updates_buffered", "artifact_registered", "spawn_guard_blocked", "spawn_guard_rate_limited", "behavior_config_review", "auto_fix", "auto_continue_started", "auto_continue_stopped", "milestone_completed", "workflow_error"];
|
|
79
|
+
export type KnownActivityActionType = (typeof KNOWN_ACTIVITY_ACTION_TYPES)[number];
|
|
80
|
+
export type ActivityActionType = KnownActivityActionType | (string & {});
|
|
81
|
+
export declare const KNOWN_ACTIVITY_ACTION_PHASES: readonly ["intent", "dispatch", "execution", "handoff", "review", "completed", "blocked", "error"];
|
|
82
|
+
export type ActivityActionPhase = (typeof KNOWN_ACTIVITY_ACTION_PHASES)[number];
|
|
83
|
+
export declare function normalizeActivityActionType(value: unknown): ActivityActionType | null;
|
|
84
|
+
export declare function isKnownActivityActionType(value: unknown): value is KnownActivityActionType;
|
|
85
|
+
export declare function normalizeActivityActionPhase(value: unknown): ActivityActionPhase | null;
|
|
86
|
+
export declare const KNOWN_DECISION_ACTION_TYPES: readonly ["approve", "reject", "provide_context", "request_info", "confirm_scope", "retry", "resume", "start", "pause", "defer", "cancel", "queue_top", "queue_bottom", "remove_from_queue", "reassign", "assign", "notify", "escalate", "handoff", "spawn", "execute_task", "review_blocker", "review_decision", "open_artifact", "open_logs", "open_session", "open_run", "open_workstream", "open_task", "open_initiative", "open_pr", "open_diff", "open_branch", "open_deal", "update_deal", "open_settings", "open_workspace", "connect_provider", "refresh_credentials", "auto_fix", "ignore_once"];
|
|
87
|
+
export type KnownDecisionActionType = (typeof KNOWN_DECISION_ACTION_TYPES)[number];
|
|
88
|
+
export type DecisionActionType = KnownDecisionActionType | (string & {});
|
|
89
|
+
export declare function normalizeDecisionActionType(value: unknown): DecisionActionType | null;
|
|
90
|
+
export declare function isKnownDecisionActionType(value: unknown): value is KnownDecisionActionType;
|
|
91
|
+
export type LiveDecisionOptionStatus = 'approved' | 'declined' | 'cancelled';
|
|
92
|
+
export interface LiveDecisionOption {
|
|
93
|
+
id: string;
|
|
94
|
+
label: string;
|
|
95
|
+
description: string | null;
|
|
96
|
+
impliedStatus: LiveDecisionOptionStatus | null;
|
|
97
|
+
actionType: DecisionActionType | null;
|
|
98
|
+
requiresNote: boolean;
|
|
99
|
+
}
|
|
100
|
+
export interface LiveDecisionEvidenceRef {
|
|
101
|
+
evidenceType: string | null;
|
|
102
|
+
title: string | null;
|
|
103
|
+
summary: string | null;
|
|
104
|
+
sourceUrl: string | null;
|
|
105
|
+
sourcePointer: string | null;
|
|
106
|
+
freshness: string | null;
|
|
107
|
+
confidence: number | null;
|
|
108
|
+
payload: Record<string, unknown> | null;
|
|
109
|
+
}
|
|
72
110
|
export interface LiveDecision {
|
|
73
111
|
id: string;
|
|
74
112
|
title: string;
|
|
75
113
|
context: string | null;
|
|
76
114
|
status: string;
|
|
115
|
+
priority?: string | null;
|
|
116
|
+
decisionType?: string | null;
|
|
77
117
|
agentName: string | null;
|
|
118
|
+
agentId?: string | null;
|
|
119
|
+
initiativeId?: string | null;
|
|
120
|
+
workstreamId?: string | null;
|
|
121
|
+
dueAt?: string | null;
|
|
78
122
|
requestedAt: string | null;
|
|
79
123
|
updatedAt: string | null;
|
|
124
|
+
sourceSystem?: string | null;
|
|
125
|
+
conflictSource?: string | null;
|
|
126
|
+
dedupeKey?: string | null;
|
|
127
|
+
recommendedAction?: string | null;
|
|
128
|
+
occurrenceCount?: number | null;
|
|
129
|
+
firstSeenAt?: string | null;
|
|
130
|
+
lastSeenAt?: string | null;
|
|
131
|
+
sourceRunId?: string | null;
|
|
132
|
+
sourceSessionId?: string | null;
|
|
133
|
+
sourceStreamId?: string | null;
|
|
134
|
+
evidenceRefs?: LiveDecisionEvidenceRef[];
|
|
80
135
|
waitingMinutes: number;
|
|
81
136
|
metadata?: Record<string, unknown>;
|
|
137
|
+
options?: LiveDecisionOption[];
|
|
138
|
+
selectedOptionId?: string | null;
|
|
139
|
+
}
|
|
140
|
+
export interface SessionBlockerContext {
|
|
141
|
+
initiativeId: string | null;
|
|
142
|
+
initiativeIds?: string[];
|
|
143
|
+
workstreamId: string | null;
|
|
144
|
+
workstreamIds?: string[];
|
|
145
|
+
workstreamTitle: string | null;
|
|
146
|
+
taskIds: string[];
|
|
147
|
+
milestoneIds: string[];
|
|
148
|
+
iwmtId?: string | null;
|
|
149
|
+
iwmtIds?: string[];
|
|
150
|
+
sliceRunId: string | null;
|
|
151
|
+
parallelMode: string | null;
|
|
152
|
+
logPath: string | null;
|
|
153
|
+
outputPath: string | null;
|
|
154
|
+
}
|
|
155
|
+
export interface SessionBlockerDiagnostics {
|
|
156
|
+
reason: string | null;
|
|
157
|
+
source: string | null;
|
|
158
|
+
errorCode: string | null;
|
|
159
|
+
errorCategory: string | null;
|
|
160
|
+
retryable: boolean | null;
|
|
161
|
+
suggestedActions: string[];
|
|
162
|
+
eventId: string | null;
|
|
163
|
+
eventType: string | null;
|
|
164
|
+
eventTimestamp: string | null;
|
|
165
|
+
context: SessionBlockerContext;
|
|
82
166
|
}
|
|
83
167
|
export interface SessionTreeNode {
|
|
84
168
|
id: string;
|
|
@@ -109,6 +193,7 @@ export interface SessionTreeNode {
|
|
|
109
193
|
runtimeProvider?: RuntimeProviderLogo | null;
|
|
110
194
|
instanceId?: string | null;
|
|
111
195
|
lastHeartbeatAt?: string | null;
|
|
196
|
+
blockerDiagnostics?: SessionBlockerDiagnostics | null;
|
|
112
197
|
}
|
|
113
198
|
export interface SessionTreeEdge {
|
|
114
199
|
parentId: string;
|
|
@@ -145,3 +230,77 @@ export interface HandoffSummary {
|
|
|
145
230
|
updatedAt: string;
|
|
146
231
|
events: HandoffEvent[];
|
|
147
232
|
}
|
|
233
|
+
export type TriageItemKind = 'decision_required' | 'blocked_intervention' | 'review_required' | 'failure_diagnostic';
|
|
234
|
+
export type TriageItemStatus = 'open' | 'snoozed' | 'resolved' | 'dismissed';
|
|
235
|
+
export type TriageSeverity = 'critical' | 'high' | 'medium' | 'low';
|
|
236
|
+
export type TriageActionType = 'approve' | 'reject' | 'retry' | 'autofix' | 'defer' | 'snooze' | 'dismiss';
|
|
237
|
+
export interface TriageAction {
|
|
238
|
+
action: TriageActionType;
|
|
239
|
+
label: string;
|
|
240
|
+
description: string;
|
|
241
|
+
consequences: string;
|
|
242
|
+
requiresNote: boolean;
|
|
243
|
+
available: boolean;
|
|
244
|
+
}
|
|
245
|
+
export interface ProofBundle {
|
|
246
|
+
artifactRefs: string[];
|
|
247
|
+
fileChanges: string[];
|
|
248
|
+
prRefs: string[];
|
|
249
|
+
logRefs: string[];
|
|
250
|
+
decisionRefs: string[];
|
|
251
|
+
}
|
|
252
|
+
export interface TriageImpact {
|
|
253
|
+
initiativeCount: number;
|
|
254
|
+
workstreamCount: number;
|
|
255
|
+
downstreamBlockedCount: number;
|
|
256
|
+
}
|
|
257
|
+
export interface LiveTriageItem {
|
|
258
|
+
id: string;
|
|
259
|
+
kind: TriageItemKind;
|
|
260
|
+
status: TriageItemStatus;
|
|
261
|
+
title: string;
|
|
262
|
+
summary: string;
|
|
263
|
+
initiativeId: string | null;
|
|
264
|
+
initiativeTitle: string | null;
|
|
265
|
+
workstreamId: string | null;
|
|
266
|
+
workstreamTitle: string | null;
|
|
267
|
+
taskId: string | null;
|
|
268
|
+
taskTitle: string | null;
|
|
269
|
+
sourceSystem: string | null;
|
|
270
|
+
conflictSource: string | null;
|
|
271
|
+
dedupeKey: string | null;
|
|
272
|
+
occurrenceCount: number;
|
|
273
|
+
severity: TriageSeverity;
|
|
274
|
+
blocking: boolean;
|
|
275
|
+
recommendedAction: string | null;
|
|
276
|
+
agentId: string | null;
|
|
277
|
+
impact: TriageImpact;
|
|
278
|
+
proofBundle: ProofBundle;
|
|
279
|
+
actionContract: TriageAction[];
|
|
280
|
+
createdAt: string;
|
|
281
|
+
updatedAt: string;
|
|
282
|
+
firstSeenAt: string;
|
|
283
|
+
lastSeenAt: string;
|
|
284
|
+
snoozedUntil: string | null;
|
|
285
|
+
sourceDecisionId: string | null;
|
|
286
|
+
sourceActivityId: string | null;
|
|
287
|
+
}
|
|
288
|
+
export interface TriageActionRequest {
|
|
289
|
+
action: string;
|
|
290
|
+
note?: string;
|
|
291
|
+
optionId?: string;
|
|
292
|
+
snoozeDurationMinutes?: number;
|
|
293
|
+
}
|
|
294
|
+
export interface TriageActionResponse {
|
|
295
|
+
ok: boolean;
|
|
296
|
+
itemStatus: TriageItemStatus;
|
|
297
|
+
continuationPlan: string | null;
|
|
298
|
+
sideEffects: string[];
|
|
299
|
+
}
|
|
300
|
+
export interface TriageListResponse {
|
|
301
|
+
ok: boolean;
|
|
302
|
+
items: LiveTriageItem[];
|
|
303
|
+
total: number;
|
|
304
|
+
generatedAt: string;
|
|
305
|
+
degraded?: string[];
|
|
306
|
+
}
|
|
@@ -1,3 +1,179 @@
|
|
|
1
1
|
// Canonical shared types consumed by both core plugin code and dashboard code.
|
|
2
2
|
// Keep this file dependency-free so it can be imported across build boundaries.
|
|
3
|
-
export
|
|
3
|
+
export const KNOWN_ACTIVITY_ACTION_TYPES = [
|
|
4
|
+
"orchestrator_dispatch",
|
|
5
|
+
"dispatch_slice",
|
|
6
|
+
"spawn_worker",
|
|
7
|
+
"run_heartbeat",
|
|
8
|
+
"run_state_transition",
|
|
9
|
+
"run_started",
|
|
10
|
+
"run_completed",
|
|
11
|
+
"run_failed",
|
|
12
|
+
"slice_handoff",
|
|
13
|
+
"decision_requested",
|
|
14
|
+
"decision_resolved",
|
|
15
|
+
"status_updates_applied",
|
|
16
|
+
"status_updates_buffered",
|
|
17
|
+
"artifact_registered",
|
|
18
|
+
"spawn_guard_blocked",
|
|
19
|
+
"spawn_guard_rate_limited",
|
|
20
|
+
"behavior_config_review",
|
|
21
|
+
"auto_fix",
|
|
22
|
+
"auto_continue_started",
|
|
23
|
+
"auto_continue_stopped",
|
|
24
|
+
"milestone_completed",
|
|
25
|
+
"workflow_error",
|
|
26
|
+
];
|
|
27
|
+
export const KNOWN_ACTIVITY_ACTION_PHASES = [
|
|
28
|
+
"intent",
|
|
29
|
+
"dispatch",
|
|
30
|
+
"execution",
|
|
31
|
+
"handoff",
|
|
32
|
+
"review",
|
|
33
|
+
"completed",
|
|
34
|
+
"blocked",
|
|
35
|
+
"error",
|
|
36
|
+
];
|
|
37
|
+
const ACTIVITY_ACTION_TYPE_ALIASES = {
|
|
38
|
+
orchestrator: "orchestrator_dispatch",
|
|
39
|
+
dispatch: "dispatch_slice",
|
|
40
|
+
dispatched: "dispatch_slice",
|
|
41
|
+
start: "run_started",
|
|
42
|
+
started: "run_started",
|
|
43
|
+
stop: "auto_continue_stopped",
|
|
44
|
+
stopped: "auto_continue_stopped",
|
|
45
|
+
complete: "run_completed",
|
|
46
|
+
completed: "run_completed",
|
|
47
|
+
fail: "run_failed",
|
|
48
|
+
failed: "run_failed",
|
|
49
|
+
};
|
|
50
|
+
export function normalizeActivityActionType(value) {
|
|
51
|
+
if (typeof value !== "string")
|
|
52
|
+
return null;
|
|
53
|
+
const normalized = value.trim().toLowerCase();
|
|
54
|
+
if (!normalized)
|
|
55
|
+
return null;
|
|
56
|
+
const alias = ACTIVITY_ACTION_TYPE_ALIASES[normalized];
|
|
57
|
+
if (alias)
|
|
58
|
+
return alias;
|
|
59
|
+
return normalized.replace(/\s+/g, "_");
|
|
60
|
+
}
|
|
61
|
+
export function isKnownActivityActionType(value) {
|
|
62
|
+
if (typeof value !== "string")
|
|
63
|
+
return false;
|
|
64
|
+
return KNOWN_ACTIVITY_ACTION_TYPES.includes(value);
|
|
65
|
+
}
|
|
66
|
+
export function normalizeActivityActionPhase(value) {
|
|
67
|
+
if (typeof value !== "string")
|
|
68
|
+
return null;
|
|
69
|
+
const normalized = value.trim().toLowerCase();
|
|
70
|
+
if (!normalized)
|
|
71
|
+
return null;
|
|
72
|
+
if (KNOWN_ACTIVITY_ACTION_PHASES.includes(normalized)) {
|
|
73
|
+
return normalized;
|
|
74
|
+
}
|
|
75
|
+
return null;
|
|
76
|
+
}
|
|
77
|
+
export const KNOWN_DECISION_ACTION_TYPES = [
|
|
78
|
+
"approve",
|
|
79
|
+
"reject",
|
|
80
|
+
"provide_context",
|
|
81
|
+
"request_info",
|
|
82
|
+
"confirm_scope",
|
|
83
|
+
"retry",
|
|
84
|
+
"resume",
|
|
85
|
+
"start",
|
|
86
|
+
"pause",
|
|
87
|
+
"defer",
|
|
88
|
+
"cancel",
|
|
89
|
+
"queue_top",
|
|
90
|
+
"queue_bottom",
|
|
91
|
+
"remove_from_queue",
|
|
92
|
+
"reassign",
|
|
93
|
+
"assign",
|
|
94
|
+
"notify",
|
|
95
|
+
"escalate",
|
|
96
|
+
"handoff",
|
|
97
|
+
"spawn",
|
|
98
|
+
"execute_task",
|
|
99
|
+
"review_blocker",
|
|
100
|
+
"review_decision",
|
|
101
|
+
"open_artifact",
|
|
102
|
+
"open_logs",
|
|
103
|
+
"open_session",
|
|
104
|
+
"open_run",
|
|
105
|
+
"open_workstream",
|
|
106
|
+
"open_task",
|
|
107
|
+
"open_initiative",
|
|
108
|
+
"open_pr",
|
|
109
|
+
"open_diff",
|
|
110
|
+
"open_branch",
|
|
111
|
+
"open_deal",
|
|
112
|
+
"update_deal",
|
|
113
|
+
"open_settings",
|
|
114
|
+
"open_workspace",
|
|
115
|
+
"connect_provider",
|
|
116
|
+
"refresh_credentials",
|
|
117
|
+
"auto_fix",
|
|
118
|
+
"ignore_once",
|
|
119
|
+
];
|
|
120
|
+
const DECISION_ACTION_TYPE_ALIASES = {
|
|
121
|
+
declined: "reject",
|
|
122
|
+
decline: "reject",
|
|
123
|
+
deny: "reject",
|
|
124
|
+
dismiss: "ignore_once",
|
|
125
|
+
retry_slice: "retry",
|
|
126
|
+
continue: "resume",
|
|
127
|
+
restart: "resume",
|
|
128
|
+
play: "start",
|
|
129
|
+
stop: "pause",
|
|
130
|
+
snooze: "defer",
|
|
131
|
+
queue: "queue_bottom",
|
|
132
|
+
add_to_end: "queue_bottom",
|
|
133
|
+
add_to_queue: "queue_bottom",
|
|
134
|
+
queue_to_end: "queue_bottom",
|
|
135
|
+
queue_to_bottom: "queue_bottom",
|
|
136
|
+
queue_to_top: "queue_top",
|
|
137
|
+
move_to_top: "queue_top",
|
|
138
|
+
move_to_bottom: "queue_bottom",
|
|
139
|
+
remove: "remove_from_queue",
|
|
140
|
+
remove_queue: "remove_from_queue",
|
|
141
|
+
unqueue: "remove_from_queue",
|
|
142
|
+
openartifact: "open_artifact",
|
|
143
|
+
open_artifacts: "open_artifact",
|
|
144
|
+
open_pr_diff: "open_diff",
|
|
145
|
+
open_pull_request: "open_pr",
|
|
146
|
+
open_work_item: "open_task",
|
|
147
|
+
providecontext: "provide_context",
|
|
148
|
+
request_context: "request_info",
|
|
149
|
+
ask_info: "request_info",
|
|
150
|
+
ask_question: "request_info",
|
|
151
|
+
reassign_agent: "reassign",
|
|
152
|
+
assign_agent: "assign",
|
|
153
|
+
spawn_agent: "spawn",
|
|
154
|
+
connect_credentials: "connect_provider",
|
|
155
|
+
fix_credentials: "refresh_credentials",
|
|
156
|
+
refresh_credential: "refresh_credentials",
|
|
157
|
+
autofix: "auto_fix",
|
|
158
|
+
auto_resolve: "auto_fix",
|
|
159
|
+
};
|
|
160
|
+
const KNOWN_DECISION_ACTION_TYPE_SET = new Set(KNOWN_DECISION_ACTION_TYPES);
|
|
161
|
+
export function normalizeDecisionActionType(value) {
|
|
162
|
+
if (typeof value !== "string")
|
|
163
|
+
return null;
|
|
164
|
+
const normalized = value.trim().toLowerCase();
|
|
165
|
+
if (!normalized)
|
|
166
|
+
return null;
|
|
167
|
+
if (KNOWN_DECISION_ACTION_TYPE_SET.has(normalized)) {
|
|
168
|
+
return normalized;
|
|
169
|
+
}
|
|
170
|
+
if (DECISION_ACTION_TYPE_ALIASES[normalized]) {
|
|
171
|
+
return DECISION_ACTION_TYPE_ALIASES[normalized];
|
|
172
|
+
}
|
|
173
|
+
return normalized;
|
|
174
|
+
}
|
|
175
|
+
export function isKnownDecisionActionType(value) {
|
|
176
|
+
if (typeof value !== "string")
|
|
177
|
+
return false;
|
|
178
|
+
return KNOWN_DECISION_ACTION_TYPE_SET.has(value.trim().toLowerCase());
|
|
179
|
+
}
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
export declare const OPENCLAW_SKILL_PACK_SCHEMA_VERSION: "openclaw-skill-pack.v1";
|
|
2
|
+
export declare const ORGX_AGENT_DOMAINS: readonly ["engineering", "product", "design", "marketing", "sales", "operations", "orchestration"];
|
|
3
|
+
export type OrgxAgentDomainName = (typeof ORGX_AGENT_DOMAINS)[number];
|
|
4
|
+
export type ManifestConfigType = "openclaw_skills" | "openclawSkills" | "openclaw.skills" | "none";
|
|
5
|
+
export declare const OPENCLAW_SKILLS_MAP_JSON_SCHEMA: {
|
|
6
|
+
readonly type: "object";
|
|
7
|
+
readonly additionalProperties: false;
|
|
8
|
+
readonly properties: {
|
|
9
|
+
readonly engineering: {
|
|
10
|
+
readonly type: "string";
|
|
11
|
+
readonly minLength: 1;
|
|
12
|
+
};
|
|
13
|
+
readonly product: {
|
|
14
|
+
readonly type: "string";
|
|
15
|
+
readonly minLength: 1;
|
|
16
|
+
};
|
|
17
|
+
readonly design: {
|
|
18
|
+
readonly type: "string";
|
|
19
|
+
readonly minLength: 1;
|
|
20
|
+
};
|
|
21
|
+
readonly marketing: {
|
|
22
|
+
readonly type: "string";
|
|
23
|
+
readonly minLength: 1;
|
|
24
|
+
};
|
|
25
|
+
readonly sales: {
|
|
26
|
+
readonly type: "string";
|
|
27
|
+
readonly minLength: 1;
|
|
28
|
+
};
|
|
29
|
+
readonly operations: {
|
|
30
|
+
readonly type: "string";
|
|
31
|
+
readonly minLength: 1;
|
|
32
|
+
};
|
|
33
|
+
readonly orchestration: {
|
|
34
|
+
readonly type: "string";
|
|
35
|
+
readonly minLength: 1;
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
export declare const OPENCLAW_SKILL_PACK_MANIFEST_JSON_SCHEMA: {
|
|
40
|
+
readonly $schema: "https://json-schema.org/draft/2020-12/schema";
|
|
41
|
+
readonly $id: "https://schemas.useorgx.com/openclaw-skill-pack/v1.json";
|
|
42
|
+
readonly title: "OrgX OpenClaw Skill Pack Manifest";
|
|
43
|
+
readonly description: "Behavior config manifest for OpenClaw skill overrides by domain.";
|
|
44
|
+
readonly type: "object";
|
|
45
|
+
readonly additionalProperties: true;
|
|
46
|
+
readonly oneOf: readonly [{
|
|
47
|
+
readonly type: "object";
|
|
48
|
+
readonly additionalProperties: true;
|
|
49
|
+
readonly properties: {
|
|
50
|
+
readonly schema_version: {
|
|
51
|
+
readonly type: "string";
|
|
52
|
+
readonly const: "openclaw-skill-pack.v1";
|
|
53
|
+
};
|
|
54
|
+
readonly openclaw_skills: {
|
|
55
|
+
readonly type: "object";
|
|
56
|
+
readonly additionalProperties: false;
|
|
57
|
+
readonly properties: {
|
|
58
|
+
readonly engineering: {
|
|
59
|
+
readonly type: "string";
|
|
60
|
+
readonly minLength: 1;
|
|
61
|
+
};
|
|
62
|
+
readonly product: {
|
|
63
|
+
readonly type: "string";
|
|
64
|
+
readonly minLength: 1;
|
|
65
|
+
};
|
|
66
|
+
readonly design: {
|
|
67
|
+
readonly type: "string";
|
|
68
|
+
readonly minLength: 1;
|
|
69
|
+
};
|
|
70
|
+
readonly marketing: {
|
|
71
|
+
readonly type: "string";
|
|
72
|
+
readonly minLength: 1;
|
|
73
|
+
};
|
|
74
|
+
readonly sales: {
|
|
75
|
+
readonly type: "string";
|
|
76
|
+
readonly minLength: 1;
|
|
77
|
+
};
|
|
78
|
+
readonly operations: {
|
|
79
|
+
readonly type: "string";
|
|
80
|
+
readonly minLength: 1;
|
|
81
|
+
};
|
|
82
|
+
readonly orchestration: {
|
|
83
|
+
readonly type: "string";
|
|
84
|
+
readonly minLength: 1;
|
|
85
|
+
};
|
|
86
|
+
};
|
|
87
|
+
};
|
|
88
|
+
};
|
|
89
|
+
readonly required: readonly ["openclaw_skills"];
|
|
90
|
+
}, {
|
|
91
|
+
readonly type: "object";
|
|
92
|
+
readonly additionalProperties: true;
|
|
93
|
+
readonly properties: {
|
|
94
|
+
readonly schema_version: {
|
|
95
|
+
readonly type: "string";
|
|
96
|
+
readonly const: "openclaw-skill-pack.v1";
|
|
97
|
+
};
|
|
98
|
+
readonly openclawSkills: {
|
|
99
|
+
readonly type: "object";
|
|
100
|
+
readonly additionalProperties: false;
|
|
101
|
+
readonly properties: {
|
|
102
|
+
readonly engineering: {
|
|
103
|
+
readonly type: "string";
|
|
104
|
+
readonly minLength: 1;
|
|
105
|
+
};
|
|
106
|
+
readonly product: {
|
|
107
|
+
readonly type: "string";
|
|
108
|
+
readonly minLength: 1;
|
|
109
|
+
};
|
|
110
|
+
readonly design: {
|
|
111
|
+
readonly type: "string";
|
|
112
|
+
readonly minLength: 1;
|
|
113
|
+
};
|
|
114
|
+
readonly marketing: {
|
|
115
|
+
readonly type: "string";
|
|
116
|
+
readonly minLength: 1;
|
|
117
|
+
};
|
|
118
|
+
readonly sales: {
|
|
119
|
+
readonly type: "string";
|
|
120
|
+
readonly minLength: 1;
|
|
121
|
+
};
|
|
122
|
+
readonly operations: {
|
|
123
|
+
readonly type: "string";
|
|
124
|
+
readonly minLength: 1;
|
|
125
|
+
};
|
|
126
|
+
readonly orchestration: {
|
|
127
|
+
readonly type: "string";
|
|
128
|
+
readonly minLength: 1;
|
|
129
|
+
};
|
|
130
|
+
};
|
|
131
|
+
};
|
|
132
|
+
};
|
|
133
|
+
readonly required: readonly ["openclawSkills"];
|
|
134
|
+
}, {
|
|
135
|
+
readonly type: "object";
|
|
136
|
+
readonly additionalProperties: true;
|
|
137
|
+
readonly properties: {
|
|
138
|
+
readonly schema_version: {
|
|
139
|
+
readonly type: "string";
|
|
140
|
+
readonly const: "openclaw-skill-pack.v1";
|
|
141
|
+
};
|
|
142
|
+
readonly openclaw: {
|
|
143
|
+
readonly type: "object";
|
|
144
|
+
readonly additionalProperties: true;
|
|
145
|
+
readonly properties: {
|
|
146
|
+
readonly skills: {
|
|
147
|
+
readonly type: "object";
|
|
148
|
+
readonly additionalProperties: false;
|
|
149
|
+
readonly properties: {
|
|
150
|
+
readonly engineering: {
|
|
151
|
+
readonly type: "string";
|
|
152
|
+
readonly minLength: 1;
|
|
153
|
+
};
|
|
154
|
+
readonly product: {
|
|
155
|
+
readonly type: "string";
|
|
156
|
+
readonly minLength: 1;
|
|
157
|
+
};
|
|
158
|
+
readonly design: {
|
|
159
|
+
readonly type: "string";
|
|
160
|
+
readonly minLength: 1;
|
|
161
|
+
};
|
|
162
|
+
readonly marketing: {
|
|
163
|
+
readonly type: "string";
|
|
164
|
+
readonly minLength: 1;
|
|
165
|
+
};
|
|
166
|
+
readonly sales: {
|
|
167
|
+
readonly type: "string";
|
|
168
|
+
readonly minLength: 1;
|
|
169
|
+
};
|
|
170
|
+
readonly operations: {
|
|
171
|
+
readonly type: "string";
|
|
172
|
+
readonly minLength: 1;
|
|
173
|
+
};
|
|
174
|
+
readonly orchestration: {
|
|
175
|
+
readonly type: "string";
|
|
176
|
+
readonly minLength: 1;
|
|
177
|
+
};
|
|
178
|
+
};
|
|
179
|
+
};
|
|
180
|
+
};
|
|
181
|
+
readonly required: readonly ["skills"];
|
|
182
|
+
};
|
|
183
|
+
};
|
|
184
|
+
readonly required: readonly ["openclaw"];
|
|
185
|
+
}];
|
|
186
|
+
};
|
|
187
|
+
export declare function validateOpenClawSkillPackManifest(manifest: unknown): {
|
|
188
|
+
ok: boolean;
|
|
189
|
+
configType: ManifestConfigType;
|
|
190
|
+
openclaw_skills: Partial<Record<OrgxAgentDomainName, string>>;
|
|
191
|
+
errors: string[];
|
|
192
|
+
};
|