ai-whisper 0.4.2 → 0.4.4
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/.tsbuildinfo +1 -0
- package/dist/bin/broker-daemon.d.ts +3 -0
- package/dist/bin/broker-daemon.d.ts.map +1 -0
- package/dist/bin/companion-agent.d.ts +3 -0
- package/dist/bin/companion-agent.d.ts.map +1 -0
- package/dist/bin/relay-monitor.d.ts +3 -0
- package/dist/bin/relay-monitor.d.ts.map +1 -0
- package/dist/bin/whisper.d.ts +3 -0
- package/dist/bin/whisper.d.ts.map +1 -0
- package/dist/bin/whisper.js +182 -100
- package/dist/commands/collab/dashboard.d.ts +18 -0
- package/dist/commands/collab/dashboard.d.ts.map +1 -0
- package/dist/commands/collab/inspect.d.ts +23 -0
- package/dist/commands/collab/inspect.d.ts.map +1 -0
- package/dist/commands/collab/mount.d.ts +54 -0
- package/dist/commands/collab/mount.d.ts.map +1 -0
- package/dist/commands/collab/reconnect.d.ts +44 -0
- package/dist/commands/collab/reconnect.d.ts.map +1 -0
- package/dist/commands/collab/recover.d.ts +33 -0
- package/dist/commands/collab/recover.d.ts.map +1 -0
- package/dist/commands/collab/relay-monitor.d.ts +21 -0
- package/dist/commands/collab/relay-monitor.d.ts.map +1 -0
- package/dist/commands/collab/start.d.ts +53 -0
- package/dist/commands/collab/start.d.ts.map +1 -0
- package/dist/commands/collab/status.d.ts +6 -0
- package/dist/commands/collab/status.d.ts.map +1 -0
- package/dist/commands/collab/stop.d.ts +13 -0
- package/dist/commands/collab/stop.d.ts.map +1 -0
- package/dist/commands/collab/tell.d.ts +26 -0
- package/dist/commands/collab/tell.d.ts.map +1 -0
- package/dist/commands/skill/install.d.ts +12 -0
- package/dist/commands/skill/install.d.ts.map +1 -0
- package/dist/commands/workflow/cancel.d.ts +14 -0
- package/dist/commands/workflow/cancel.d.ts.map +1 -0
- package/dist/commands/workflow/inspect.d.ts +40 -0
- package/dist/commands/workflow/inspect.d.ts.map +1 -0
- package/dist/commands/workflow/list.d.ts +27 -0
- package/dist/commands/workflow/list.d.ts.map +1 -0
- package/dist/commands/workflow/pause.d.ts +14 -0
- package/dist/commands/workflow/pause.d.ts.map +1 -0
- package/dist/commands/workflow/resume.d.ts +17 -0
- package/dist/commands/workflow/resume.d.ts.map +1 -0
- package/dist/commands/workflow/start.d.ts +60 -0
- package/dist/commands/workflow/start.d.ts.map +1 -0
- package/dist/commands/workflow/types.d.ts +2 -0
- package/dist/commands/workflow/types.d.ts.map +1 -0
- package/dist/create-cli.d.ts +4 -0
- package/dist/create-cli.d.ts.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/runtime/action-inference.d.ts +3 -0
- package/dist/runtime/action-inference.d.ts.map +1 -0
- package/dist/runtime/artifact-input.d.ts +2 -0
- package/dist/runtime/artifact-input.d.ts.map +1 -0
- package/dist/runtime/assistant-turn-capture.d.ts +14 -0
- package/dist/runtime/assistant-turn-capture.d.ts.map +1 -0
- package/dist/runtime/bracketed-paste-detector.d.ts +16 -0
- package/dist/runtime/bracketed-paste-detector.d.ts.map +1 -0
- package/dist/runtime/broker-artifact-service.d.ts +48 -0
- package/dist/runtime/broker-artifact-service.d.ts.map +1 -0
- package/dist/runtime/broker-connect.d.ts +9 -0
- package/dist/runtime/broker-connect.d.ts.map +1 -0
- package/dist/runtime/broker-daemon.d.ts +25 -0
- package/dist/runtime/broker-daemon.d.ts.map +1 -0
- package/dist/runtime/busy-indicator.d.ts +11 -0
- package/dist/runtime/busy-indicator.d.ts.map +1 -0
- package/dist/runtime/capture-handback-text.d.ts +39 -0
- package/dist/runtime/capture-handback-text.d.ts.map +1 -0
- package/dist/runtime/clipboard-change-count.d.ts +12 -0
- package/dist/runtime/clipboard-change-count.d.ts.map +1 -0
- package/dist/runtime/clipboard-handback-capture.d.ts +13 -0
- package/dist/runtime/clipboard-handback-capture.d.ts.map +1 -0
- package/dist/runtime/collab-resolver.d.ts +36 -0
- package/dist/runtime/collab-resolver.d.ts.map +1 -0
- package/dist/runtime/companion-agent-loop.d.ts +13 -0
- package/dist/runtime/companion-agent-loop.d.ts.map +1 -0
- package/dist/runtime/context-injector.d.ts +20 -0
- package/dist/runtime/context-injector.d.ts.map +1 -0
- package/dist/runtime/context-policy.d.ts +3 -0
- package/dist/runtime/context-policy.d.ts.map +1 -0
- package/dist/runtime/current-tty.d.ts +2 -0
- package/dist/runtime/current-tty.d.ts.map +1 -0
- package/dist/runtime/dashboard-glyph.d.ts +12 -0
- package/dist/runtime/dashboard-glyph.d.ts.map +1 -0
- package/dist/runtime/dashboard-state.d.ts +182 -0
- package/dist/runtime/dashboard-state.d.ts.map +1 -0
- package/dist/runtime/dashboard-view.d.ts +34 -0
- package/dist/runtime/dashboard-view.d.ts.map +1 -0
- package/dist/runtime/dashboard.d.ts +46 -0
- package/dist/runtime/dashboard.d.ts.map +1 -0
- package/dist/runtime/evaluator-config.d.ts +21 -0
- package/dist/runtime/evaluator-config.d.ts.map +1 -0
- package/dist/runtime/evaluator-observer.d.ts +8 -0
- package/dist/runtime/evaluator-observer.d.ts.map +1 -0
- package/dist/runtime/id-factory.d.ts +5 -0
- package/dist/runtime/id-factory.d.ts.map +1 -0
- package/dist/runtime/launcher.d.ts +39 -0
- package/dist/runtime/launcher.d.ts.map +1 -0
- package/dist/runtime/live-session-broker-executor.d.ts +8 -0
- package/dist/runtime/live-session-broker-executor.d.ts.map +1 -0
- package/dist/runtime/live-session.d.ts +25 -0
- package/dist/runtime/live-session.d.ts.map +1 -0
- package/dist/runtime/load-dot-env.d.ts +6 -0
- package/dist/runtime/load-dot-env.d.ts.map +1 -0
- package/dist/runtime/local-multiline-composer.d.ts +23 -0
- package/dist/runtime/local-multiline-composer.d.ts.map +1 -0
- package/dist/runtime/mount-session-main.d.ts +44 -0
- package/dist/runtime/mount-session-main.d.ts.map +1 -0
- package/dist/runtime/mounted-turn-owned-relay.d.ts +160 -0
- package/dist/runtime/mounted-turn-owned-relay.d.ts.map +1 -0
- package/dist/runtime/on-demand-processing.d.ts +23 -0
- package/dist/runtime/on-demand-processing.d.ts.map +1 -0
- package/dist/runtime/operator-inspect-captures.d.ts +6 -0
- package/dist/runtime/operator-inspect-captures.d.ts.map +1 -0
- package/dist/runtime/operator-inspect-verdicts.d.ts +6 -0
- package/dist/runtime/operator-inspect-verdicts.d.ts.map +1 -0
- package/dist/runtime/operator-inspect.d.ts +137 -0
- package/dist/runtime/operator-inspect.d.ts.map +1 -0
- package/dist/runtime/paths.d.ts +2 -0
- package/dist/runtime/paths.d.ts.map +1 -0
- package/dist/runtime/port-allocator.d.ts +7 -0
- package/dist/runtime/port-allocator.d.ts.map +1 -0
- package/dist/runtime/port-utils.d.ts +3 -0
- package/dist/runtime/port-utils.d.ts.map +1 -0
- package/dist/runtime/process-start-time.d.ts +7 -0
- package/dist/runtime/process-start-time.d.ts.map +1 -0
- package/dist/runtime/provider-submit-strategy.d.ts +13 -0
- package/dist/runtime/provider-submit-strategy.d.ts.map +1 -0
- package/dist/runtime/providers.d.ts +17 -0
- package/dist/runtime/providers.d.ts.map +1 -0
- package/dist/runtime/record-evaluator-status.d.ts +9 -0
- package/dist/runtime/record-evaluator-status.d.ts.map +1 -0
- package/dist/runtime/recovery-guard.d.ts +12 -0
- package/dist/runtime/recovery-guard.d.ts.map +1 -0
- package/dist/runtime/relay-directive.d.ts +4 -0
- package/dist/runtime/relay-directive.d.ts.map +1 -0
- package/dist/runtime/relay-line-buffer.d.ts +22 -0
- package/dist/runtime/relay-line-buffer.d.ts.map +1 -0
- package/dist/runtime/relay-monitor.d.ts +26 -0
- package/dist/runtime/relay-monitor.d.ts.map +1 -0
- package/dist/runtime/relay-orchestrator-evaluator.d.ts +160 -0
- package/dist/runtime/relay-orchestrator-evaluator.d.ts.map +1 -0
- package/dist/runtime/relay-orchestrator.d.ts +116 -0
- package/dist/runtime/relay-orchestrator.d.ts.map +1 -0
- package/dist/runtime/relay-pane-writer.d.ts +28 -0
- package/dist/runtime/relay-pane-writer.d.ts.map +1 -0
- package/dist/runtime/relay-service.d.ts +76 -0
- package/dist/runtime/relay-service.d.ts.map +1 -0
- package/dist/runtime/relay-view-input.d.ts +17 -0
- package/dist/runtime/relay-view-input.d.ts.map +1 -0
- package/dist/runtime/relay-view-state.d.ts +86 -0
- package/dist/runtime/relay-view-state.d.ts.map +1 -0
- package/dist/runtime/relay-view.d.ts +16 -0
- package/dist/runtime/relay-view.d.ts.map +1 -0
- package/dist/runtime/reply-wait.d.ts +21 -0
- package/dist/runtime/reply-wait.d.ts.map +1 -0
- package/dist/runtime/runtime-debug-log.d.ts +7 -0
- package/dist/runtime/runtime-debug-log.d.ts.map +1 -0
- package/dist/runtime/state-root.d.ts +3 -0
- package/dist/runtime/state-root.d.ts.map +1 -0
- package/dist/runtime/terminal-input-normalizer.d.ts +11 -0
- package/dist/runtime/terminal-input-normalizer.d.ts.map +1 -0
- package/dist/runtime/theme.d.ts +15 -0
- package/dist/runtime/theme.d.ts.map +1 -0
- package/dist/runtime/version-check.d.ts +17 -0
- package/dist/runtime/version-check.d.ts.map +1 -0
- package/dist/runtime/wait-for-broker-ready.d.ts +13 -0
- package/dist/runtime/wait-for-broker-ready.d.ts.map +1 -0
- package/dist/runtime/workspace-id.d.ts +3 -0
- package/dist/runtime/workspace-id.d.ts.map +1 -0
- package/package.json +3 -3
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { BrokerRuntime } from "@ai-whisper/broker";
|
|
2
|
+
export declare function createContextInjector(input: {
|
|
3
|
+
broker: BrokerRuntime;
|
|
4
|
+
collabId: string;
|
|
5
|
+
sessionId: string;
|
|
6
|
+
}): {
|
|
7
|
+
injectContext(params: {
|
|
8
|
+
userInput: string;
|
|
9
|
+
activeThreadId: string;
|
|
10
|
+
}): {
|
|
11
|
+
injected: boolean;
|
|
12
|
+
payload: string;
|
|
13
|
+
summary: string | null;
|
|
14
|
+
};
|
|
15
|
+
enrichContextPacket(params: {
|
|
16
|
+
activeThreadId: string;
|
|
17
|
+
basePacket: Record<string, unknown>;
|
|
18
|
+
}): Record<string, unknown>;
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=context-injector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-injector.d.ts","sourceRoot":"","sources":["../../src/runtime/context-injector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC5C,MAAM,EAAE,aAAa,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CAClB;0BAEuB;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;KACvB,GAAG;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE;gCAqCtC;QAC3B,cAAc,EAAE,MAAM,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;EAkC5B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-policy.d.ts","sourceRoot":"","sources":["../../src/runtime/context-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AASnD,wBAAgB,yBAAyB,CACxC,MAAM,EAAE,QAAQ,CAAC,iBAAiB,CAAC,GACjC,OAAO,CAET"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"current-tty.d.ts","sourceRoot":"","sources":["../../src/runtime/current-tty.ts"],"names":[],"mappings":"AAGA,wBAAgB,iBAAiB,IAAI,MAAM,CAkB1C"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { THEME } from "./theme.js";
|
|
2
|
+
export type StatusKey = "running" | "stuck" | "done" | "canceled" | "idle";
|
|
3
|
+
export type GlyphResult = {
|
|
4
|
+
glyph: "●" | "⚠" | "✓" | "✖" | "◌";
|
|
5
|
+
color: (typeof THEME)[keyof typeof THEME];
|
|
6
|
+
key: StatusKey;
|
|
7
|
+
};
|
|
8
|
+
export declare function statusGlyph(input: {
|
|
9
|
+
workflowStatus: "running" | "done" | "halted" | "canceled" | null;
|
|
10
|
+
stuck: boolean;
|
|
11
|
+
}): GlyphResult;
|
|
12
|
+
//# sourceMappingURL=dashboard-glyph.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dashboard-glyph.d.ts","sourceRoot":"","sources":["../../src/runtime/dashboard-glyph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;AAE3E,MAAM,MAAM,WAAW,GAAG;IACzB,KAAK,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IACnC,KAAK,EAAE,CAAC,OAAO,KAAK,CAAC,CAAC,MAAM,OAAO,KAAK,CAAC,CAAC;IAC1C,GAAG,EAAE,SAAS,CAAC;CACf,CAAC;AAEF,wBAAgB,WAAW,CAAC,KAAK,EAAE;IAClC,cAAc,EAAE,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,GAAG,IAAI,CAAC;IAClE,KAAK,EAAE,OAAO,CAAC;CACf,GAAG,WAAW,CAoBd"}
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import type { LogLine, PhaseRunRef, RelayViewSnapshot, RelayViewState } from "./relay-view-state.js";
|
|
2
|
+
import { buildRelayViewState, deriveLogLines, fmtDur } from "./relay-view-state.js";
|
|
3
|
+
import type { CollabSummary, RelayHandoffLogRow, RunCostRow, WorkflowSummaryRow } from "@ai-whisper/broker";
|
|
4
|
+
export type WallEvent = {
|
|
5
|
+
step: string;
|
|
6
|
+
route: string;
|
|
7
|
+
verdict: string;
|
|
8
|
+
};
|
|
9
|
+
export type WallPaneState = {
|
|
10
|
+
collabId: string;
|
|
11
|
+
workflowId: string | null;
|
|
12
|
+
statusKey: "running" | "stuck" | "done" | "canceled" | "idle";
|
|
13
|
+
label: string;
|
|
14
|
+
workflowType: string | null;
|
|
15
|
+
round: {
|
|
16
|
+
current: number;
|
|
17
|
+
max: number;
|
|
18
|
+
} | null;
|
|
19
|
+
progress: {
|
|
20
|
+
current: number;
|
|
21
|
+
total: number;
|
|
22
|
+
} | null;
|
|
23
|
+
agentHealth: Array<{
|
|
24
|
+
agent: "codex" | "claude";
|
|
25
|
+
health: "healthy" | "degraded" | "dead";
|
|
26
|
+
}>;
|
|
27
|
+
stuckWhy: string | null;
|
|
28
|
+
events: WallEvent[];
|
|
29
|
+
elapsed: string;
|
|
30
|
+
cardKind: "full" | "compact";
|
|
31
|
+
};
|
|
32
|
+
export type WallStateSection = {
|
|
33
|
+
group: WallGroupKey;
|
|
34
|
+
label: string;
|
|
35
|
+
cardKind: "full" | "compact";
|
|
36
|
+
panes: WallPaneState[];
|
|
37
|
+
};
|
|
38
|
+
export type WallState = {
|
|
39
|
+
sections: WallStateSection[];
|
|
40
|
+
panes: WallPaneState[];
|
|
41
|
+
page: number;
|
|
42
|
+
pageCount: number;
|
|
43
|
+
totalRuns: number;
|
|
44
|
+
selected: number;
|
|
45
|
+
};
|
|
46
|
+
export type PhaseStat = {
|
|
47
|
+
phaseIndex: number;
|
|
48
|
+
phaseName: string;
|
|
49
|
+
roundsUsed: number;
|
|
50
|
+
maxRounds: number;
|
|
51
|
+
durationMs: number | null;
|
|
52
|
+
outcome: string | null;
|
|
53
|
+
estInTokens: number;
|
|
54
|
+
estOutTokens: number;
|
|
55
|
+
};
|
|
56
|
+
export type EvidenceItem = {
|
|
57
|
+
round: number | null;
|
|
58
|
+
step: string | null;
|
|
59
|
+
sender: string;
|
|
60
|
+
target: string;
|
|
61
|
+
verdict: string | null;
|
|
62
|
+
confidence: number | null;
|
|
63
|
+
reasonExcerpt: string;
|
|
64
|
+
captureStatus: string | null;
|
|
65
|
+
};
|
|
66
|
+
export type DiagItem = {
|
|
67
|
+
kind: "evaluator" | "capture";
|
|
68
|
+
text: string;
|
|
69
|
+
};
|
|
70
|
+
export type CostSummary = {
|
|
71
|
+
totalMs: number;
|
|
72
|
+
estInputTokens: number;
|
|
73
|
+
estOutputTokens: number;
|
|
74
|
+
perPhase: Array<{
|
|
75
|
+
phaseRunId: string | null;
|
|
76
|
+
phaseName: string;
|
|
77
|
+
estInTokens: number;
|
|
78
|
+
estOutTokens: number;
|
|
79
|
+
durationMs: number | null;
|
|
80
|
+
}>;
|
|
81
|
+
};
|
|
82
|
+
export type WorkflowHistoryItem = {
|
|
83
|
+
workflowId: string;
|
|
84
|
+
workflowType: string;
|
|
85
|
+
name: string | null;
|
|
86
|
+
status: "running" | "paused" | "done" | "halted" | "canceled";
|
|
87
|
+
currentPhaseIndex: number;
|
|
88
|
+
createdAt: string;
|
|
89
|
+
selected: boolean;
|
|
90
|
+
};
|
|
91
|
+
export type InspectorState = {
|
|
92
|
+
live: RelayViewState;
|
|
93
|
+
timeline: PhaseStat[];
|
|
94
|
+
workflowHistory: WorkflowHistoryItem[];
|
|
95
|
+
evidence: {
|
|
96
|
+
phase: string | null;
|
|
97
|
+
chainId: string | null;
|
|
98
|
+
items: EvidenceItem[];
|
|
99
|
+
diagnostics: DiagItem[];
|
|
100
|
+
likelyCause: string;
|
|
101
|
+
};
|
|
102
|
+
cost: CostSummary;
|
|
103
|
+
};
|
|
104
|
+
export declare function estimateTokens(chars: number): number;
|
|
105
|
+
export { buildRelayViewState, deriveLogLines, fmtDur };
|
|
106
|
+
export type { LogLine, PhaseRunRef, RelayViewSnapshot, RelayViewState, RelayHandoffLogRow, CollabSummary, RunCostRow };
|
|
107
|
+
export type WallGroupKey = "active" | "idleManual" | "halted" | "doneCanceled";
|
|
108
|
+
export type WallGroups = {
|
|
109
|
+
active: CollabSummary[];
|
|
110
|
+
idleManual: CollabSummary[];
|
|
111
|
+
halted: CollabSummary[];
|
|
112
|
+
doneCanceled: CollabSummary[];
|
|
113
|
+
};
|
|
114
|
+
export declare function partitionWallGroups(summaries: CollabSummary[]): WallGroups;
|
|
115
|
+
export type WallSection = {
|
|
116
|
+
group: WallGroupKey;
|
|
117
|
+
label: string;
|
|
118
|
+
cardKind: "full" | "compact";
|
|
119
|
+
cards: CollabSummary[];
|
|
120
|
+
};
|
|
121
|
+
export type WallSectionsResult = {
|
|
122
|
+
sections: WallSection[];
|
|
123
|
+
page: number;
|
|
124
|
+
pageCount: number;
|
|
125
|
+
totalRuns: number;
|
|
126
|
+
};
|
|
127
|
+
export declare function allocateWallSections(input: {
|
|
128
|
+
groups: WallGroups;
|
|
129
|
+
cols: number;
|
|
130
|
+
rows: number;
|
|
131
|
+
page: number;
|
|
132
|
+
}): WallSectionsResult;
|
|
133
|
+
export declare function selectWallPage(input: {
|
|
134
|
+
summaries: CollabSummary[];
|
|
135
|
+
capacity: number;
|
|
136
|
+
page: number;
|
|
137
|
+
selected: number;
|
|
138
|
+
}): {
|
|
139
|
+
pageSummaries: CollabSummary[];
|
|
140
|
+
page: number;
|
|
141
|
+
pageCount: number;
|
|
142
|
+
totalRuns: number;
|
|
143
|
+
selected: number;
|
|
144
|
+
};
|
|
145
|
+
export declare function buildInspectorState(input: {
|
|
146
|
+
snapshot: RelayViewSnapshot;
|
|
147
|
+
phaseRuns: PhaseRunRef[];
|
|
148
|
+
phaseMaxRounds: Record<number, number>;
|
|
149
|
+
costRows: RunCostRow[];
|
|
150
|
+
workflowCreatedAt: string | null;
|
|
151
|
+
chainId: string | null;
|
|
152
|
+
evidenceHandoffs: RelayHandoffLogRow[];
|
|
153
|
+
evaluatorDiags: Array<{
|
|
154
|
+
verdict: string | null;
|
|
155
|
+
confidence: number | null;
|
|
156
|
+
reason: string | null;
|
|
157
|
+
outcome: string;
|
|
158
|
+
}>;
|
|
159
|
+
captureDiags: Array<{
|
|
160
|
+
captureStatus: string;
|
|
161
|
+
turnConfidence: string;
|
|
162
|
+
}>;
|
|
163
|
+
focusedPhaseRunId: string | null;
|
|
164
|
+
workflows?: WorkflowSummaryRow[];
|
|
165
|
+
selectedWorkflowId?: string | null;
|
|
166
|
+
}): InspectorState;
|
|
167
|
+
export declare function buildWallState(input: {
|
|
168
|
+
summaries: CollabSummary[];
|
|
169
|
+
now: string;
|
|
170
|
+
idleThresholdMs: number;
|
|
171
|
+
capacity?: number;
|
|
172
|
+
cols?: number;
|
|
173
|
+
rows?: number;
|
|
174
|
+
page: number;
|
|
175
|
+
selected: number;
|
|
176
|
+
snapshots: Record<string, {
|
|
177
|
+
handoffs: RelayHandoffLogRow[];
|
|
178
|
+
phaseRuns: PhaseRunRef[];
|
|
179
|
+
totalPhases: number;
|
|
180
|
+
}>;
|
|
181
|
+
}): WallState;
|
|
182
|
+
//# sourceMappingURL=dashboard-state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dashboard-state.d.ts","sourceRoot":"","sources":["../../src/runtime/dashboard-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { ReactElement } from "react";
|
|
2
|
+
import type { WallState } from "./dashboard-state.js";
|
|
3
|
+
import { type Viewport } from "./relay-view.js";
|
|
4
|
+
import type { InspectorState } from "./dashboard-state.js";
|
|
5
|
+
export declare function abbreviateWorkflowType(full: string): string;
|
|
6
|
+
export declare function gridCapacity(cols: number, rows: number): number;
|
|
7
|
+
export declare function Wall(props: {
|
|
8
|
+
state: WallState;
|
|
9
|
+
cols: number;
|
|
10
|
+
rows: number;
|
|
11
|
+
}): ReactElement;
|
|
12
|
+
export type InspectorSection = "live" | "timeline" | "evidence" | "cost";
|
|
13
|
+
export declare function Inspector(props: {
|
|
14
|
+
state: InspectorState;
|
|
15
|
+
section: InspectorSection;
|
|
16
|
+
viewport: Viewport;
|
|
17
|
+
cols: number;
|
|
18
|
+
rows: number;
|
|
19
|
+
label: string;
|
|
20
|
+
workflowType: string | null;
|
|
21
|
+
workflowStatus?: "running" | "done" | "halted" | "canceled" | null;
|
|
22
|
+
}): ReactElement;
|
|
23
|
+
type KeyEv = {
|
|
24
|
+
upArrow?: boolean;
|
|
25
|
+
downArrow?: boolean;
|
|
26
|
+
escape?: boolean;
|
|
27
|
+
key?: string;
|
|
28
|
+
};
|
|
29
|
+
export declare function DashboardApp(props: {
|
|
30
|
+
node: ReactElement;
|
|
31
|
+
onKey: (ev: KeyEv) => void;
|
|
32
|
+
}): ReactElement;
|
|
33
|
+
export {};
|
|
34
|
+
//# sourceMappingURL=dashboard-view.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dashboard-view.d.ts","sourceRoot":"","sources":["../../src/runtime/dashboard-view.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAa,MAAM,OAAO,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAoB3D,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK3D;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAI/D;AAwMD,wBAAgB,IAAI,CAAC,KAAK,EAAE;IAC3B,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACb,GAAG,YAAY,CA0Df;AAED,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,MAAM,CAAC;AA+BzE,wBAAgB,SAAS,CAAC,KAAK,EAAE;IAChC,KAAK,EAAE,cAAc,CAAC;IACtB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,QAAQ,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,cAAc,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,GAAG,IAAI,CAAC;CACnE,GAAG,YAAY,CAsIf;AAED,KAAK,KAAK,GAAG;IACZ,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;CACb,CAAC;AAmBF,wBAAgB,YAAY,CAAC,KAAK,EAAE;IACnC,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,EAAE,CAAC,EAAE,EAAE,KAAK,KAAK,IAAI,CAAC;CAC3B,GAAG,YAAY,CAOf"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { BrokerRuntime } from "@ai-whisper/broker";
|
|
2
|
+
import { type InspectorSection } from "./dashboard-view.js";
|
|
3
|
+
import type { Viewport } from "./relay-view.js";
|
|
4
|
+
export declare function probeMountAlive(pid: number | null, kill?: (pid: number, signal: number) => void): boolean;
|
|
5
|
+
export declare function buildMountAliveByAgent(attachments: Array<{
|
|
6
|
+
agentType: string;
|
|
7
|
+
attachmentKind: string;
|
|
8
|
+
pid: number | null;
|
|
9
|
+
}>): (agentType: string) => boolean;
|
|
10
|
+
export declare function parseDashboardWindow(input: string | undefined): number | null;
|
|
11
|
+
type Mode = "wall" | "inspector";
|
|
12
|
+
export declare function createDashboardRuntime(input: {
|
|
13
|
+
broker: BrokerRuntime;
|
|
14
|
+
dashboardId: string;
|
|
15
|
+
stdout: NodeJS.WritableStream;
|
|
16
|
+
pollIntervalMs?: number;
|
|
17
|
+
/** Override the eligible-collab window (ms). When set, this beats the
|
|
18
|
+
* AI_WHISPER_DASHBOARD_WINDOW_MS env var and the 30-minute default. */
|
|
19
|
+
windowMs?: number;
|
|
20
|
+
/** Recycle (unmount+remount) the ink instance every N actual renders to
|
|
21
|
+
* hard-bound ink's per-rerender memory retention. Test seam; default 750. */
|
|
22
|
+
__recycleEveryRenders?: number;
|
|
23
|
+
}): {
|
|
24
|
+
start(): void;
|
|
25
|
+
stop(): Promise<void>;
|
|
26
|
+
waitUntilStopped(): Promise<void>;
|
|
27
|
+
__mode: () => Mode;
|
|
28
|
+
__section: () => InspectorSection;
|
|
29
|
+
__handleKey: (ev: {
|
|
30
|
+
upArrow?: boolean;
|
|
31
|
+
downArrow?: boolean;
|
|
32
|
+
escape?: boolean;
|
|
33
|
+
key?: string;
|
|
34
|
+
}) => void;
|
|
35
|
+
__viewport: Viewport;
|
|
36
|
+
__wallSelected: () => number;
|
|
37
|
+
__pollHealth: () => {
|
|
38
|
+
consecutiveErrors: number;
|
|
39
|
+
lastError: string | null;
|
|
40
|
+
};
|
|
41
|
+
__renderCount: () => number;
|
|
42
|
+
__recycles: () => number;
|
|
43
|
+
__clears: () => number;
|
|
44
|
+
};
|
|
45
|
+
export {};
|
|
46
|
+
//# sourceMappingURL=dashboard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../src/runtime/dashboard.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD,OAAO,EAIN,KAAK,gBAAgB,EACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAgBhD,wBAAgB,eAAe,CAC9B,GAAG,EAAE,MAAM,GAAG,IAAI,EAClB,IAAI,GAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAEtC,GACC,OAAO,CAQT;AAUD,wBAAgB,sBAAsB,CACrC,WAAW,EAAE,KAAK,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,GACnF,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAShC;AAMD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAoB7E;AAYD,KAAK,IAAI,GAAG,MAAM,GAAG,WAAW,CAAC;AAEjC,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC7C,MAAM,EAAE,aAAa,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;2EACuE;IACvE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;iFAC6E;IAC7E,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAC/B;;;;;;sBA2VuB;QACtB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,GAAG,CAAC,EAAE,MAAM,CAAC;KACb;;;;;;;;;;EA+GD"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export type EvaluatorStatus = "ready" | "missing_anthropic_key" | "invalid_config" | "disabled" | "unknown";
|
|
2
|
+
export interface ResolvedEvaluatorConfig {
|
|
3
|
+
provider: "anthropic" | "ollama";
|
|
4
|
+
fallback: "anthropic" | "ollama" | null;
|
|
5
|
+
anthropic: {
|
|
6
|
+
apiKey: string | null;
|
|
7
|
+
model: string | null;
|
|
8
|
+
};
|
|
9
|
+
ollama: {
|
|
10
|
+
host: string | null;
|
|
11
|
+
model: string | null;
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
export declare function loadEvaluatorConfig(): ResolvedEvaluatorConfig;
|
|
15
|
+
export declare function computeEvaluatorStatus(cfg: ResolvedEvaluatorConfig, ctx: {
|
|
16
|
+
orchestratorEnabled: boolean;
|
|
17
|
+
loaderError: Error | null;
|
|
18
|
+
}): Exclude<EvaluatorStatus, "unknown">;
|
|
19
|
+
export declare function isEvaluatorReady(status: EvaluatorStatus): boolean;
|
|
20
|
+
export declare function isEvaluatorPreflightBlocked(status: EvaluatorStatus): boolean;
|
|
21
|
+
//# sourceMappingURL=evaluator-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evaluator-config.d.ts","sourceRoot":"","sources":["../../src/runtime/evaluator-config.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,eAAe,GACxB,OAAO,GACP,uBAAuB,GACvB,gBAAgB,GAChB,UAAU,GACV,SAAS,CAAC;AAEb,MAAM,WAAW,uBAAuB;IACvC,QAAQ,EAAE,WAAW,GAAG,QAAQ,CAAC;IACjC,QAAQ,EAAE,WAAW,GAAG,QAAQ,GAAG,IAAI,CAAC;IACxC,SAAS,EAAE;QAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IAC3D,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;CACtD;AA8DD,wBAAgB,mBAAmB,IAAI,uBAAuB,CA4C7D;AAED,wBAAgB,sBAAsB,CACrC,GAAG,EAAE,uBAAuB,EAC5B,GAAG,EAAE;IAAE,mBAAmB,EAAE,OAAO,CAAC;IAAC,WAAW,EAAE,KAAK,GAAG,IAAI,CAAA;CAAE,GAC9D,OAAO,CAAC,eAAe,EAAE,SAAS,CAAC,CAOrC;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAGjE;AAKD,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAE5E"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { BrokerRuntime } from "@ai-whisper/broker";
|
|
2
|
+
import type { EvaluatorCallEvent } from "./relay-orchestrator-evaluator.js";
|
|
3
|
+
export type BuildEvaluatorObserverCallbackInput = {
|
|
4
|
+
broker: Pick<BrokerRuntime, "control">;
|
|
5
|
+
now?: () => string;
|
|
6
|
+
};
|
|
7
|
+
export declare function buildEvaluatorObserverCallback(input: BuildEvaluatorObserverCallbackInput): (event: EvaluatorCallEvent) => void;
|
|
8
|
+
//# sourceMappingURL=evaluator-observer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evaluator-observer.d.ts","sourceRoot":"","sources":["../../src/runtime/evaluator-observer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAwC5E,MAAM,MAAM,mCAAmC,GAAG;IACjD,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IACvC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAgB,8BAA8B,CAC7C,KAAK,EAAE,mCAAmC,GACxC,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CA4CrC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare function createCliCollabId(now: string): `collab_${string}`;
|
|
2
|
+
export declare function createCliSessionId(agentType: "codex" | "claude", now: string): `session_${string}`;
|
|
3
|
+
export declare function createCliThreadId(now: string): `thread_${string}`;
|
|
4
|
+
export declare function createCliWorkItemId(now: string): `work_${string}`;
|
|
5
|
+
//# sourceMappingURL=id-factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"id-factory.d.ts","sourceRoot":"","sources":["../../src/runtime/id-factory.ts"],"names":[],"mappings":"AAcA,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,MAAM,EAAE,CAEjE;AAED,wBAAgB,kBAAkB,CACjC,SAAS,EAAE,OAAO,GAAG,QAAQ,EAC7B,GAAG,EAAE,MAAM,GACT,WAAW,MAAM,EAAE,CAErB;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,MAAM,EAAE,CAEjE;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,MAAM,EAAE,CAEjE"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export type LaunchMode = "tmux" | "terminals" | "none";
|
|
2
|
+
export type SpawnFn = (command: string) => number | void;
|
|
3
|
+
export type ExecFn = (command: string) => void;
|
|
4
|
+
export type LaunchResult = {
|
|
5
|
+
launched: true;
|
|
6
|
+
launchMode: LaunchMode;
|
|
7
|
+
tmuxSession?: string;
|
|
8
|
+
commands: {
|
|
9
|
+
codex: string;
|
|
10
|
+
claude: string;
|
|
11
|
+
relayMonitor: string;
|
|
12
|
+
};
|
|
13
|
+
runtime: {
|
|
14
|
+
codexPid?: number;
|
|
15
|
+
claudePid?: number;
|
|
16
|
+
relayMonitorPid?: number;
|
|
17
|
+
codexWindowLabel?: string;
|
|
18
|
+
claudeWindowLabel?: string;
|
|
19
|
+
relayMonitorWindowLabel?: string;
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
export declare function detectTmux(): boolean;
|
|
23
|
+
export declare function chooseLaunchMode(input: {
|
|
24
|
+
tmuxAvailable: boolean;
|
|
25
|
+
forceNoTmux: boolean;
|
|
26
|
+
forceNoLaunch: boolean;
|
|
27
|
+
}): LaunchMode;
|
|
28
|
+
export declare function launchSessions(input: {
|
|
29
|
+
launchMode: LaunchMode;
|
|
30
|
+
attachTmux?: boolean;
|
|
31
|
+
collabId: string;
|
|
32
|
+
workspaceRoot: string;
|
|
33
|
+
brokerSqlitePath: string;
|
|
34
|
+
brokerHost: string;
|
|
35
|
+
brokerPort: number;
|
|
36
|
+
spawn?: SpawnFn;
|
|
37
|
+
exec?: ExecFn;
|
|
38
|
+
}): LaunchResult;
|
|
39
|
+
//# sourceMappingURL=launcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"launcher.d.ts","sourceRoot":"","sources":["../../src/runtime/launcher.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;AAEvD,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;AACzD,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;AAU/C,MAAM,MAAM,YAAY,GAAG;IAC1B,QAAQ,EAAE,IAAI,CAAC;IACf,UAAU,EAAE,UAAU,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE;QACT,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,OAAO,EAAE;QACR,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,uBAAuB,CAAC,EAAE,MAAM,CAAC;KACjC,CAAC;CACF,CAAC;AAEF,wBAAgB,UAAU,IAAI,OAAO,CAOpC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE;IACvC,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC;CACvB,GAAG,UAAU,CAIb;AAsED,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACrC,UAAU,EAAE,UAAU,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACd,GAAG,YAAY,CAiFf"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { CompanionProvider, ProviderReply, ProviderWorkRequest } from "@ai-whisper/shared";
|
|
2
|
+
import type { BrokerArtifactService } from "./broker-artifact-service.js";
|
|
3
|
+
export declare function createLiveSessionBrokerExecutor(input: {
|
|
4
|
+
provider: CompanionProvider;
|
|
5
|
+
artifactService: BrokerArtifactService;
|
|
6
|
+
sessionId: string;
|
|
7
|
+
}): (request: ProviderWorkRequest) => Promise<ProviderReply>;
|
|
8
|
+
//# sourceMappingURL=live-session-broker-executor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"live-session-broker-executor.d.ts","sourceRoot":"","sources":["../../src/runtime/live-session-broker-executor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAChG,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAE1E,wBAAgB,+BAA+B,CAAC,KAAK,EAAE;IACtD,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,eAAe,EAAE,qBAAqB,CAAC;IACvC,SAAS,EAAE,MAAM,CAAC;CAClB,GAAG,CAAC,OAAO,EAAE,mBAAmB,KAAK,OAAO,CAAC,aAAa,CAAC,CA6F3D"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { InteractiveSessionController, RelayDirective } from "@ai-whisper/shared";
|
|
2
|
+
import type { createRelayPaneWriter } from "./relay-pane-writer.js";
|
|
3
|
+
export declare function createLiveSessionRuntime(input: {
|
|
4
|
+
interactiveSession: InteractiveSessionController;
|
|
5
|
+
stdin: NodeJS.ReadableStream;
|
|
6
|
+
stdout: NodeJS.WritableStream;
|
|
7
|
+
onRelay: (directive: RelayDirective, sendNow: (message: string) => void) => Promise<string | null>;
|
|
8
|
+
onRelayCancel?: () => void;
|
|
9
|
+
relayPaneWriter?: ReturnType<typeof createRelayPaneWriter> | undefined;
|
|
10
|
+
externalInputGate?: {
|
|
11
|
+
isBlocked(): boolean;
|
|
12
|
+
renderBlockedMessage(): string;
|
|
13
|
+
onCancel(): void;
|
|
14
|
+
};
|
|
15
|
+
externalInputRouter?: {
|
|
16
|
+
handleInput(text: string): Promise<boolean> | boolean;
|
|
17
|
+
};
|
|
18
|
+
onActivity?: () => void;
|
|
19
|
+
}): {
|
|
20
|
+
start(): Promise<void>;
|
|
21
|
+
isPaused(): boolean;
|
|
22
|
+
withPausedInput<T>(run: () => Promise<T>): Promise<T>;
|
|
23
|
+
stop(): Promise<void>;
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=live-session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"live-session.d.ts","sourceRoot":"","sources":["../../src/runtime/live-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,4BAA4B,EAC5B,cAAc,EACd,MAAM,oBAAoB,CAAC;AAQ5B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAapE,wBAAgB,wBAAwB,CAAC,KAAK,EAAE;IAC/C,kBAAkB,EAAE,4BAA4B,CAAC;IACjD,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC;IAC9B,OAAO,EAAE,CACR,SAAS,EAAE,cAAc,EACzB,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,KAC9B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,eAAe,CAAC,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,GAAG,SAAS,CAAC;IACvE,iBAAiB,CAAC,EAAE;QACnB,SAAS,IAAI,OAAO,CAAC;QACrB,oBAAoB,IAAI,MAAM,CAAC;QAC/B,QAAQ,IAAI,IAAI,CAAC;KACjB,CAAC;IACF,mBAAmB,CAAC,EAAE;QACrB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;KACtD,CAAC;IACF,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;;gBA4Ma,OAAO;oBAGG,CAAC,OAAO,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;;EAqB5D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-dot-env.d.ts","sourceRoot":"","sources":["../../src/runtime/load-dot-env.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,UAAU,IAAI,IAAI,CAajC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export declare function createLocalModalLineReader(input: {
|
|
2
|
+
stdin: NodeJS.ReadableStream;
|
|
3
|
+
stdout: NodeJS.WritableStream;
|
|
4
|
+
}): {
|
|
5
|
+
readLine: () => Promise<string>;
|
|
6
|
+
close: () => void;
|
|
7
|
+
};
|
|
8
|
+
export declare function createLocalModalConfirm(input: {
|
|
9
|
+
stdin: NodeJS.ReadableStream;
|
|
10
|
+
stdout: NodeJS.WritableStream;
|
|
11
|
+
message: string;
|
|
12
|
+
}): {
|
|
13
|
+
run: () => Promise<boolean>;
|
|
14
|
+
};
|
|
15
|
+
export declare function createLocalMultilineComposer(input: {
|
|
16
|
+
prompt: string;
|
|
17
|
+
initialValue: string;
|
|
18
|
+
writeLocalMessage: (text: string) => void;
|
|
19
|
+
readLine: () => Promise<string>;
|
|
20
|
+
}): {
|
|
21
|
+
run(): Promise<string | null>;
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=local-multiline-composer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-multiline-composer.d.ts","sourceRoot":"","sources":["../../src/runtime/local-multiline-composer.ts"],"names":[],"mappings":"AAOA,wBAAgB,0BAA0B,CAAC,KAAK,EAAE;IACjD,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC;CAC9B;;;EAgGA;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC9C,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;CAChB;;EAsEA;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE;IACnD,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;CAChC;WAEc,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;EAapC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { BrokerRuntime } from "@ai-whisper/broker";
|
|
2
|
+
import { createLiveSessionRuntime } from "./live-session.js";
|
|
3
|
+
import { runCompanionAgentLoop } from "./companion-agent-loop.js";
|
|
4
|
+
import { createInteractiveSessionForTarget, createProviderForTarget } from "./providers.js";
|
|
5
|
+
import { createMountedTurnOwnedRelay } from "./mounted-turn-owned-relay.js";
|
|
6
|
+
export declare function safeReapSessions(input: {
|
|
7
|
+
collabId: string;
|
|
8
|
+
agentType: string;
|
|
9
|
+
keepSessionId: string;
|
|
10
|
+
reap?: (collabId: string, agentType: string, keepSessionId: string) => number;
|
|
11
|
+
logError?: (err: unknown) => void;
|
|
12
|
+
}): void;
|
|
13
|
+
type ReapLifecycleInput = {
|
|
14
|
+
collabId: string;
|
|
15
|
+
agentType: string;
|
|
16
|
+
keepSessionId: string;
|
|
17
|
+
reap?: (collabId: string, agentType: string, keepSessionId: string) => number;
|
|
18
|
+
logError?: (err: unknown) => void;
|
|
19
|
+
};
|
|
20
|
+
export declare function reapStaleSessionsOnMount(input: ReapLifecycleInput): void;
|
|
21
|
+
export declare function reapStaleSessionsOnTeardown(input: ReapLifecycleInput): void;
|
|
22
|
+
export declare function createMountSessionRuntime(input: {
|
|
23
|
+
target: "codex" | "claude";
|
|
24
|
+
ttyPath: string;
|
|
25
|
+
workspaceRoot: string;
|
|
26
|
+
claimId: string;
|
|
27
|
+
secret: string;
|
|
28
|
+
broker: BrokerRuntime;
|
|
29
|
+
/**
|
|
30
|
+
* Extra args forwarded to the visible agent spawn (codex/claude). Wired
|
|
31
|
+
* into createInteractiveSessionForTarget only — createProviderForTarget
|
|
32
|
+
* (the non-visible relay/companion side) is unaffected.
|
|
33
|
+
*/
|
|
34
|
+
passthroughArgs?: string[];
|
|
35
|
+
createProvider?: typeof createProviderForTarget;
|
|
36
|
+
createInteractiveSession?: typeof createInteractiveSessionForTarget;
|
|
37
|
+
createLiveSession?: typeof createLiveSessionRuntime;
|
|
38
|
+
runLoop?: typeof runCompanionAgentLoop;
|
|
39
|
+
createTurnRelay?: typeof createMountedTurnOwnedRelay;
|
|
40
|
+
}): {
|
|
41
|
+
start(): Promise<void>;
|
|
42
|
+
};
|
|
43
|
+
export {};
|
|
44
|
+
//# sourceMappingURL=mount-session-main.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mount-session-main.d.ts","sourceRoot":"","sources":["../../src/runtime/mount-session-main.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAWxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EACN,iCAAiC,EACjC,uBAAuB,EACvB,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAwC5E,wBAAgB,gBAAgB,CAAC,KAAK,EAAE;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,KAAK,MAAM,CAAC;IAC9E,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;CAClC,GAAG,IAAI,CAmBP;AAED,KAAK,kBAAkB,GAAG;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,KAAK,MAAM,CAAC;IAC9E,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;CAClC,CAAC;AAOF,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAExE;AAKD,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAE3E;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE;IAChD,MAAM,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,aAAa,CAAC;IACtB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,cAAc,CAAC,EAAE,OAAO,uBAAuB,CAAC;IAChD,wBAAwB,CAAC,EAAE,OAAO,iCAAiC,CAAC;IACpE,iBAAiB,CAAC,EAAE,OAAO,wBAAwB,CAAC;IACpD,OAAO,CAAC,EAAE,OAAO,qBAAqB,CAAC;IACvC,eAAe,CAAC,EAAE,OAAO,2BAA2B,CAAC;CACrD;;EA6ZA"}
|