@wrongstack/cli 1.0.33 → 1.0.35
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/{acp-EDGUWU7N.js → acp-T77EAEDB.js} +469 -465
- package/dist/{auth-SUHKFFO4.js → auth-M6LXZTDA.js} +4 -4
- package/dist/auth-menu/openai-codex-oauth.d.ts +1 -1
- package/dist/auth-menu/panel-provider-edits.d.ts +15 -0
- package/dist/auth-menu/panel-service.d.ts +1 -1
- package/dist/boot/governance-evidence-candidate.d.ts +1 -2
- package/dist/boot/system-prompt-builder.d.ts +1 -1
- package/dist/boot/tui-project-spawn.d.ts +0 -1
- package/dist/boot/tui-session-resume-contracts.d.ts +95 -0
- package/dist/boot/tui-session-resume.d.ts +2 -88
- package/dist/boot/tui-settings-read.d.ts +3 -0
- package/dist/{boot-auto-thin-K2DHHYIW.js → boot-auto-thin-YMAZI3QL.js} +2 -2
- package/dist/boot-launch-choices.d.ts +22 -0
- package/dist/boot-provider-gate.d.ts +28 -0
- package/dist/boot-subcommand-dispatch.d.ts +24 -0
- package/dist/boot.d.ts +1 -1
- package/dist/chimera-cascade-evidence.d.ts +1 -1
- package/dist/{chunk-TI7KLHYX.js → chunk-2CMMWRQH.js} +81 -80
- package/dist/{chunk-3LEFXLAW.js → chunk-6SIUTX75.js} +36 -36
- package/dist/{chunk-RQ4UBKYH.js → chunk-6Z6C6ZHH.js} +3 -3
- package/dist/{chunk-5EA6OTLJ.js → chunk-AFOH6CHO.js} +2 -2
- package/dist/{chunk-WHEYHDIE.js → chunk-AKESWZH5.js} +2 -1
- package/dist/{chunk-JHUJUIOH.js → chunk-AT2A7RJZ.js} +4 -16
- package/dist/{chunk-U3SS4NRH.js → chunk-BHXAKTBE.js} +1 -1
- package/dist/{chunk-MPQCHBDJ.js → chunk-CJSHS2K7.js} +5 -1
- package/dist/{chunk-P3GRLV47.js → chunk-GZSKLXYG.js} +208 -141
- package/dist/{chunk-4MDRHMX4.js → chunk-KMU7GF7X.js} +3 -26
- package/dist/{chunk-SWOPJHXI.js → chunk-LDV4ERNV.js} +4 -4
- package/dist/{chunk-24C6VVLM.js → chunk-LDXXMPMS.js} +12 -12
- package/dist/{chunk-UQUYBDMG.js → chunk-M4G5FO7F.js} +1 -1
- package/dist/{chunk-5UZBUV2H.js → chunk-RKU66D2O.js} +6 -4
- package/dist/{chunk-PGNERAZL.js → chunk-RWNI5OWT.js} +2 -2
- package/dist/chunk-TGSPCFBT.js +1 -0
- package/dist/{cli-context-7HK67B2Z.js → cli-context-II57EHD2.js} +1554 -1450
- package/dist/cli-initial-tools.d.ts +54 -0
- package/dist/{cli-main-TQGLKB6D.js → cli-main-YR2WJCPL.js} +38062 -37035
- package/dist/cli-main-boot.d.ts +133 -0
- package/dist/cli-main-orchestration.d.ts +170 -0
- package/dist/cli-main-state.d.ts +19 -0
- package/dist/config-doctor.d.ts +1 -1
- package/dist/{config-transfer-UE37X4B5.js → config-transfer-VOIFY7U4.js} +2 -2
- package/dist/{execution-C2IECWF7.js → execution-IBAZ2EIU.js} +138 -124
- package/dist/fleet/host-director-setup.d.ts +41 -0
- package/dist/fleet/host-spawn-types.d.ts +17 -0
- package/dist/fleet/host.d.ts +2 -1
- package/dist/goal-host-prompts.d.ts +5 -0
- package/dist/goal-host-types.d.ts +94 -0
- package/dist/goal-host.d.ts +2 -91
- package/dist/{hq-KBFDKTDD.js → hq-5OIEKB4V.js} +5 -6
- package/dist/hq-server/handle-types.d.ts +1 -1
- package/dist/hq-server/routes/auth-handlers.d.ts +1 -1
- package/dist/hq-server/routes.d.ts +1 -13
- package/dist/hq-server/utils.d.ts +1 -1
- package/dist/{hq-server-AVNKZ2PV.js → hq-server-DU3ZH3X7.js} +3 -3
- package/dist/{hq-service-FGB7BY2D.js → hq-service-LYZV7EK7.js} +3 -3
- package/dist/index.js +4 -4
- package/dist/live-settings-input.d.ts +2 -0
- package/dist/mailbox-bridge-bootstrap.d.ts +1 -4
- package/dist/picker-effort.d.ts +32 -0
- package/dist/picker-model-picker.d.ts +13 -2
- package/dist/picker-provider-list.d.ts +66 -0
- package/dist/picker.d.ts +12 -12
- package/dist/{providers-models-O75MKLN2.js → providers-models-37DUV2GW.js} +247 -237
- package/dist/repl-suggestions.d.ts +0 -5
- package/dist/{sdd-runtime-PTOSPYI4.js → sdd-runtime-PF72WHLO.js} +3 -20
- package/dist/services/sdd/task-manager.d.ts +1 -12
- package/dist/services/sdd-runtime.d.ts +3 -4
- package/dist/services/statusline-config.d.ts +0 -2
- package/dist/settings-behavior-sections.d.ts +0 -1
- package/dist/short-circuit-flags-EXJBJ5GT.js +10 -0
- package/dist/{skill-suggest-L2EVWB6R.js → skill-suggest-THANK3LV.js} +1 -1
- package/dist/slash-commands/command-context.d.ts +2 -0
- package/dist/slash-commands/fallback-chain-view.d.ts +3 -0
- package/dist/slash-commands/fallback-ref-validation.d.ts +34 -0
- package/dist/slash-commands/goal-refiner.d.ts +10 -2
- package/dist/slash-commands/goals.d.ts +6 -0
- package/dist/slash-commands/kanban-task-completion.d.ts +17 -0
- package/dist/slash-commands/mcp.d.ts +0 -1
- package/dist/slash-commands/memory-purge-domain-terms.d.ts +5 -0
- package/dist/slash-commands/nextsteps-mode.d.ts +13 -0
- package/dist/slash-commands/session-live-status.d.ts +21 -0
- package/dist/slash-commands/session.d.ts +1 -1
- package/dist/slash-commands/settings-feature-ui-mutations.d.ts +8 -0
- package/dist/slash-commands/settings-hq-autonomy-mutations.d.ts +8 -0
- package/dist/slash-commands/settings-persist-deps.d.ts +10 -0
- package/dist/slash-commands/settings-runtime-mutations.d.ts +12 -0
- package/dist/slash-commands/shadow.d.ts +0 -1
- package/dist/slash-commands/tool-auto-thin-commands.d.ts +15 -0
- package/dist/subcommands/handlers/acp-agents.d.ts +9 -0
- package/dist/subcommands/handlers/acp-server.d.ts +7 -0
- package/dist/subcommands/handlers/hq.d.ts +0 -1
- package/dist/subcommands/handlers/providers-models-custom.d.ts +33 -0
- package/dist/subcommands/handlers/providers-models-visibility.d.ts +29 -0
- package/dist/subcommands/handlers/skill-suggest.d.ts +0 -2
- package/dist/{subcommands-CLI6QTLU.js → subcommands-DTKBXLPU.js} +2 -2
- package/dist/{update-J5WHAFPE.js → update-6OEPAEUV.js} +3 -3
- package/dist/utils/win32-cmd.d.ts +1 -1
- package/dist/{version-help-ATOKGMTK.js → version-help-JQGRPDJW.js} +2 -2
- package/dist/webui-server/host-settings.d.ts +17 -0
- package/dist/webui-server/http-bridge.d.ts +32 -0
- package/dist/webui-server/instance-registration.d.ts +19 -0
- package/dist/webui-server/kanban-services.d.ts +9 -0
- package/dist/webui-server/message-router.d.ts +14 -0
- package/dist/webui-server/prefs-seeding.d.ts +1 -2
- package/dist/webui-server/provider-config.d.ts +0 -1
- package/dist/webui-server/provider-plane.d.ts +14 -0
- package/dist/webui-server/session-agents.d.ts +18 -0
- package/dist/webui-server/session-start-live.d.ts +11 -0
- package/dist/webui-server/stream-coalescer.d.ts +1 -1
- package/dist/webui-server/transport.d.ts +12 -0
- package/dist/{webui-server-GQOVLQS3.js → webui-server-6IC3SLZG.js} +1600 -1435
- package/dist/webui-session-maintenance.d.ts +16 -0
- package/dist/wiring/brain-and-orchestration.d.ts +1 -1
- package/dist/wiring/cli-slash-commands-setup.d.ts +1 -0
- package/dist/wiring/command-host-state.d.ts +11 -2
- package/dist/wiring/dep-watcher-bridge.d.ts +8 -1
- package/dist/wiring/session-command-handlers.d.ts +2 -1
- package/dist/worktree-command-host.d.ts +31 -0
- package/package.json +30 -30
- package/dist/chunk-WHOIR577.js +0 -1
- package/dist/short-circuit-flags-D6VAG47Y.js +0 -10
|
@@ -12,7 +12,6 @@
|
|
|
12
12
|
* therefore structurally free of credentials and model-routing data.
|
|
13
13
|
*/
|
|
14
14
|
export declare const BEHAVIOR_SECTION_KEYS: readonly ['context', 'tools', 'log', 'features', 'session', 'indexing', 'circuitBreaker', 'modelRuntime', 'Sage', 'skills', 'systemPrompt', 'autonomy', 'maxConcurrent', 'yolo', 'nextPrediction', 'hints', 'debugStream'];
|
|
15
|
-
export type BehaviorSectionKey = (typeof BEHAVIOR_SECTION_KEYS)[number];
|
|
16
15
|
/** Deep-copy the behavior sections out of a loaded config. */
|
|
17
16
|
export declare function extractBehaviorSettings(config: Record<string, unknown>): Record<string, unknown>;
|
|
18
17
|
/** Merge behavior sections from a portable export over an existing config object. */
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import {
|
|
2
|
+
handleHelpVersionShortCircuit
|
|
3
|
+
} from "./chunk-LDV4ERNV.js";
|
|
4
|
+
import "./chunk-CJSHS2K7.js";
|
|
5
|
+
import "./chunk-AKESWZH5.js";
|
|
6
|
+
import "./chunk-F5DCFAKI.js";
|
|
7
|
+
export {
|
|
8
|
+
handleHelpVersionShortCircuit
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=short-circuit-flags-EXJBJ5GT.js.map
|
|
@@ -263,6 +263,8 @@ export interface SlashCommandContext {
|
|
|
263
263
|
onContextLimit?: ((tokens?: number) => number) | undefined;
|
|
264
264
|
/** Toggle or query YOLO mode at runtime. Pass undefined to query, boolean to set. */
|
|
265
265
|
onYolo?: ((setTo?: boolean) => boolean) | undefined;
|
|
266
|
+
/** Read or set YOLO+ (nothing ever asks). On implies YOLO. */
|
|
267
|
+
onYoloPlus?: ((setTo?: boolean) => boolean) | undefined;
|
|
266
268
|
/**
|
|
267
269
|
* Read, or set, which kinds of damage still prompt while YOLO is on.
|
|
268
270
|
*
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reason a ref may NOT be stored in a chain or profile, or undefined when it
|
|
3
|
+
* is acceptable. Only hard, user-owned rules live here:
|
|
4
|
+
*
|
|
5
|
+
* 1. It parses to a non-empty model.
|
|
6
|
+
* 2. It is in `favoriteModels` (skipped when favorites are empty — legacy
|
|
7
|
+
* behavior: no favorites ⇒ no enforcement). This is an explicit policy
|
|
8
|
+
* the user turned on, so it stays blocking.
|
|
9
|
+
*
|
|
10
|
+
* The `providers[].models` allow-list is deliberately NOT blocking: it is an
|
|
11
|
+
* unrefreshed snapshot that re-auth and manual edits rewrite, so a stale entry
|
|
12
|
+
* would refuse a model the provider actually serves. It is surfaced as a
|
|
13
|
+
* warning instead (see {@link refStaleModelListWarning}).
|
|
14
|
+
*/
|
|
15
|
+
export declare function refInvalidReason(ref: string, config: {
|
|
16
|
+
provider: string;
|
|
17
|
+
providers?: Record<string, {
|
|
18
|
+
models?: string[] | undefined;
|
|
19
|
+
}> | undefined;
|
|
20
|
+
favoriteModels?: string[] | undefined;
|
|
21
|
+
}): string | undefined;
|
|
22
|
+
/**
|
|
23
|
+
* Advisory note when a ref names a model the provider's saved `models` list
|
|
24
|
+
* does not contain. The runtime still tries the entry (the list drifts), so
|
|
25
|
+
* this is a "check this" hint, never a drop — the previous wording claimed the
|
|
26
|
+
* entry was "inactive", which was true then and would be misleading now.
|
|
27
|
+
*/
|
|
28
|
+
export declare function refStaleModelListWarning(ref: string, config: {
|
|
29
|
+
provider: string;
|
|
30
|
+
providers?: Record<string, {
|
|
31
|
+
models?: string[] | undefined;
|
|
32
|
+
}> | undefined;
|
|
33
|
+
}): string | undefined;
|
|
34
|
+
//# sourceMappingURL=fallback-ref-validation.d.ts.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { OneShotOrchestrator } from '@wrongstack/core/execution';
|
|
2
2
|
import { type RefinedMission } from '@wrongstack/core/goal';
|
|
3
|
-
import type { Provider } from '@wrongstack/core/types';
|
|
3
|
+
import type { Provider, Usage } from '@wrongstack/core/types';
|
|
4
4
|
export { refineGoalHeuristic, resolveRefinerTarget } from '@wrongstack/core/goal';
|
|
5
5
|
/**
|
|
6
6
|
* Result of refining a user's raw goal into a clear, actionable mission.
|
|
@@ -27,6 +27,11 @@ interface GoalRefinerOptions {
|
|
|
27
27
|
* chain support and cheap-model defaulting.
|
|
28
28
|
*/
|
|
29
29
|
oneShotOrchestrator?: OneShotOrchestrator | undefined;
|
|
30
|
+
/** Token-usage hook: fired by the serving tier with the reported usage. */
|
|
31
|
+
onUsage?: ((usage: Usage, source: {
|
|
32
|
+
providerId: string;
|
|
33
|
+
model: string;
|
|
34
|
+
}) => void) | undefined;
|
|
30
35
|
}
|
|
31
36
|
/**
|
|
32
37
|
* Refine a raw goal using the best available model/provider, with a
|
|
@@ -45,5 +50,8 @@ export declare function refineGoalWithFallback(rawGoal: string, opts: GoalRefine
|
|
|
45
50
|
* with unambiguous deliverables. Returns null if no LLM is available
|
|
46
51
|
* or the call fails.
|
|
47
52
|
*/
|
|
48
|
-
export declare function refineGoal(rawGoal: string, provider: Provider, model: string, oneShotOrchestrator?: OneShotOrchestrator | undefined
|
|
53
|
+
export declare function refineGoal(rawGoal: string, provider: Provider, model: string, oneShotOrchestrator?: OneShotOrchestrator | undefined, onUsage?: ((usage: Usage, source: {
|
|
54
|
+
providerId: string;
|
|
55
|
+
model: string;
|
|
56
|
+
}) => void) | undefined): Promise<RefinedGoal | null>;
|
|
49
57
|
//# sourceMappingURL=goal-refiner.d.ts.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type GoalSummary } from '@wrongstack/core/goal';
|
|
2
|
+
import type { SlashCommand } from '@wrongstack/core/types';
|
|
3
|
+
import type { SlashCommandContext } from './command-context.js';
|
|
4
|
+
export declare function formatGoalSummary(goal: GoalSummary): string;
|
|
5
|
+
export declare function buildGoalsCommand(opts: SlashCommandContext): SlashCommand;
|
|
6
|
+
//# sourceMappingURL=goals.d.ts.map
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
interface CompleteKanbanTaskInput {
|
|
2
|
+
sub: string;
|
|
3
|
+
rest: string[];
|
|
4
|
+
board: import('@wrongstack/kanban').KanbanBoard;
|
|
5
|
+
eventContext: import('@wrongstack/kanban').KanbanEventContext;
|
|
6
|
+
projectRoot: string;
|
|
7
|
+
boardId: string;
|
|
8
|
+
syncTaskToContext: (opts: import('./command-context.js').SlashCommandContext, task: import('@wrongstack/kanban').KanbanTask | undefined, options?: {
|
|
9
|
+
remove?: boolean;
|
|
10
|
+
}) => Promise<void>;
|
|
11
|
+
opts: import('./command-context.js').SlashCommandContext;
|
|
12
|
+
}
|
|
13
|
+
export declare function completeKanbanTask({ sub, rest, board, eventContext, projectRoot, boardId, syncTaskToContext, opts, }: CompleteKanbanTaskInput): Promise<{
|
|
14
|
+
message: string;
|
|
15
|
+
} | undefined>;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=kanban-task-completion.d.ts.map
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { SlashCommand } from '@wrongstack/core/types';
|
|
2
2
|
import type { SlashCommandContext } from './command-context.js';
|
|
3
|
-
export type { McpParsedArgs } from '../services/mcp-management.js';
|
|
4
3
|
export { parseMcpArgs, runMcpManagementCommand } from '../services/mcp-management.js';
|
|
5
4
|
/**
|
|
6
5
|
* /mcp slash command — manage MCP servers from the REPL.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { SlashCommand } from '@wrongstack/core/types';
|
|
2
|
+
import type { SlashCommandContext } from './command-context.js';
|
|
3
|
+
/** Offered limits for consecutive automatic turns; 0 = unlimited. */
|
|
4
|
+
export declare const NEXT_STEPS_LIMIT_PRESETS: readonly [5, 10, 20, 50, 100, 0];
|
|
5
|
+
/** Parse a limit argument: a preset, any non-negative integer, or "unlimited". */
|
|
6
|
+
export declare function parseNextStepsLimit(raw: string): number | undefined;
|
|
7
|
+
/**
|
|
8
|
+
* `/nextsteps` — whether the leader must end every finished turn with
|
|
9
|
+
* suggestions (`autonomy.nextSteps`), and how many consecutive automatic turns
|
|
10
|
+
* `auto` autonomy may run on them (`autonomy.autoProceedMaxIterations`).
|
|
11
|
+
*/
|
|
12
|
+
export declare function buildNextStepsModeCommand(opts: SlashCommandContext): SlashCommand;
|
|
13
|
+
//# sourceMappingURL=nextsteps-mode.d.ts.map
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export declare function formatBytes(value: number | undefined): string;
|
|
2
|
+
export declare function isSafeSessionKillPid(pid: number): boolean;
|
|
3
|
+
/**
|
|
4
|
+
* Build a compact one-line-per-event summary of a recovery plan's
|
|
5
|
+
* pending events. Stops early once we've shown enough to be useful
|
|
6
|
+
* (cap = 12 lines) — the recovery is informational, not a re-execution.
|
|
7
|
+
*/
|
|
8
|
+
export declare function summarizePending(events: import('@wrongstack/core/types').SessionEvent[]): string[];
|
|
9
|
+
export declare function listLiveSessions(): Promise<{
|
|
10
|
+
message: string;
|
|
11
|
+
}>;
|
|
12
|
+
export declare function sessionStatusDetail(sessionId: string): Promise<{
|
|
13
|
+
message: string;
|
|
14
|
+
}>;
|
|
15
|
+
export declare function listLiveAgents(): Promise<{
|
|
16
|
+
message: string;
|
|
17
|
+
}>;
|
|
18
|
+
export declare function killSession(sessionId: string, confirm?: (question: string, defaultYes?: boolean) => Promise<boolean | null>): Promise<{
|
|
19
|
+
message: string;
|
|
20
|
+
}>;
|
|
21
|
+
//# sourceMappingURL=session-live-status.d.ts.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { SlashCommand } from '@wrongstack/core/types';
|
|
2
2
|
import type { SlashCommandContext } from './command-context.js';
|
|
3
|
-
export
|
|
3
|
+
export { isSafeSessionKillPid } from './session-live-status.js';
|
|
4
4
|
export declare function buildSaveCommand(_opts: SlashCommandContext): SlashCommand;
|
|
5
5
|
export declare function buildLoadCommand(opts: SlashCommandContext): SlashCommand;
|
|
6
6
|
export declare function buildExitCommand(opts: SlashCommandContext): SlashCommand;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** `/settings` mutations for feature flags, fleet chat, loop limits, logging and TUI presentation. */
|
|
2
|
+
import type { SlashCommandContext } from './command-context.js';
|
|
3
|
+
import type { SettingsPersistDeps } from './settings-persist-deps.js';
|
|
4
|
+
/** Feature flag, fleet, iteration, logging and presentation keys. Returns undefined for a key it does not own. */
|
|
5
|
+
export declare function executeFeatureAndUiSettings(sub: string, rest: string[], persistDeps: SettingsPersistDeps, opts: SlashCommandContext, _activeProfile: string): Promise<{
|
|
6
|
+
message: string;
|
|
7
|
+
} | undefined>;
|
|
8
|
+
//# sourceMappingURL=settings-feature-ui-mutations.d.ts.map
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** `/settings` mutations for HQ, autonomy pacing, config scope, filesystem access and the prompt refiner. */
|
|
2
|
+
import type { SlashCommandContext } from './command-context.js';
|
|
3
|
+
import type { SettingsPersistDeps } from './settings-persist-deps.js';
|
|
4
|
+
/** HQ, autonomy, scope, filesystem-access and refiner keys. Returns undefined for a key it does not own. */
|
|
5
|
+
export declare function executeHqAndAutonomySettings(sub: string, rest: string[], persistDeps: SettingsPersistDeps, opts: SlashCommandContext, activeProfile: string): Promise<{
|
|
6
|
+
message: string;
|
|
7
|
+
} | undefined>;
|
|
8
|
+
//# sourceMappingURL=settings-hq-autonomy-mutations.d.ts.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/** Persistence target shared by every `/settings` mutation group. */
|
|
2
|
+
import type { SlashCommandContext } from './command-context.js';
|
|
3
|
+
export declare function buildSettingsPersistDeps(opts: SlashCommandContext, activeProfile: string): {
|
|
4
|
+
configStore: import("@wrongstack/core/types").ConfigStore;
|
|
5
|
+
profileConfigPath: string;
|
|
6
|
+
inProjectConfigPath: string;
|
|
7
|
+
vault: import("@wrongstack/core/types").SecretVault;
|
|
8
|
+
};
|
|
9
|
+
export type SettingsPersistDeps = ReturnType<typeof buildSettingsPersistDeps>;
|
|
10
|
+
//# sourceMappingURL=settings-persist-deps.d.ts.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** `/settings` mutations for versioning, the shell circuit breaker and model-runtime behaviour. */
|
|
2
|
+
import type { SlashCommandContext } from './command-context.js';
|
|
3
|
+
import type { SettingsPersistDeps } from './settings-persist-deps.js';
|
|
4
|
+
/** semver-part and circuit-breaker keys. Returns undefined for a key it does not own. */
|
|
5
|
+
export declare function executeBreakerSettings(sub: string, rest: string[], persistDeps: SettingsPersistDeps, _opts: SlashCommandContext, _activeProfile: string): Promise<{
|
|
6
|
+
message: string;
|
|
7
|
+
} | undefined>;
|
|
8
|
+
/** Title animation, reasoning, cache TTL and stream-watchdog keys. Returns undefined for a key it does not own. */
|
|
9
|
+
export declare function executeModelRuntimeSettings(sub: string, rest: string[], persistDeps: SettingsPersistDeps, _opts: SlashCommandContext, _activeProfile: string): Promise<{
|
|
10
|
+
message: string;
|
|
11
|
+
} | undefined>;
|
|
12
|
+
//# sourceMappingURL=settings-runtime-mutations.d.ts.map
|
|
@@ -13,5 +13,4 @@ import type { SlashCommandContext } from './command-context.js';
|
|
|
13
13
|
* - Can intervene via "hoop" command to stop agents and send notifications
|
|
14
14
|
*/
|
|
15
15
|
export declare function buildShadowCommand(opts: SlashCommandContext): SlashCommand;
|
|
16
|
-
export declare const shadowCommand: typeof buildShadowCommand;
|
|
17
16
|
//# sourceMappingURL=shadow.d.ts.map
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { DisabledToolMeta } from '@wrongstack/core/types';
|
|
2
|
+
interface CreateToolAutoThinCommandsInput {
|
|
3
|
+
getCurrentTools: () => import('@wrongstack/core/types').ToolsConfig;
|
|
4
|
+
opts: import('./command-context.js').SlashCommandContext;
|
|
5
|
+
}
|
|
6
|
+
export declare function createToolAutoThinCommands({ getCurrentTools, opts, }: CreateToolAutoThinCommandsInput): {
|
|
7
|
+
persistDisabledWithMeta: (names: string[], metaDelta: Record<string, DisabledToolMeta>) => Promise<void>;
|
|
8
|
+
cmdAutoThinStatus: () => Promise<string>;
|
|
9
|
+
cmdAutoThinCandidates: () => Promise<string>;
|
|
10
|
+
cmdAutoThinApply: () => Promise<string>;
|
|
11
|
+
cmdAutoThinUndo: () => Promise<string>;
|
|
12
|
+
cmdAutoThinConfig: (rest: string) => Promise<string>;
|
|
13
|
+
};
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=tool-auto-thin-commands.d.ts.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/** `wstack acp list|sync|spawn|parallel|probe|bench` — driving other ACP agents. */
|
|
2
|
+
import type { SubcommandDeps } from '../contracts.js';
|
|
3
|
+
export declare function listACPAgents(deps: SubcommandDeps): Promise<number>;
|
|
4
|
+
export declare function syncACPRegistry(deps: SubcommandDeps): Promise<number>;
|
|
5
|
+
export declare function spawnACPAgent(args: string[], deps: SubcommandDeps): Promise<number>;
|
|
6
|
+
export declare function parallelACPAgents(args: string[], deps: SubcommandDeps): Promise<number>;
|
|
7
|
+
export declare function probeACPAgents(args: string[], deps: SubcommandDeps): Promise<number>;
|
|
8
|
+
export declare function benchACPAgents(args: string[], deps: SubcommandDeps): Promise<number>;
|
|
9
|
+
//# sourceMappingURL=acp-agents.d.ts.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `wstack acp` server mode: WrongStack as an ACP agent over stdio JSON-RPC or,
|
|
3
|
+
* with `--ws[=port]`, over a loopback WebSocket.
|
|
4
|
+
*/
|
|
5
|
+
import type { SubcommandDeps } from '../contracts.js';
|
|
6
|
+
export declare function runACPServer(deps: SubcommandDeps): Promise<number>;
|
|
7
|
+
//# sourceMappingURL=acp-server.d.ts.map
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { type CustomModelDefinition, type ProviderConfig } from '@wrongstack/core/types';
|
|
2
|
+
import type { SubcommandHandler } from '../contracts.js';
|
|
3
|
+
/** Parse `--key value` flags from a flat args array. */
|
|
4
|
+
export declare function parseFlags(args: string[]): Record<string, string | boolean>;
|
|
5
|
+
/** Filter out flag args and return only positional (non-flag) args. */
|
|
6
|
+
export declare function positionals(args: string[]): string[];
|
|
7
|
+
export declare function fmtPrice(usdPer1M: number | undefined): string;
|
|
8
|
+
export declare function modelsResetCustomModel(providerId: string, modelId: string, saved: ProviderConfig, deps: Parameters<SubcommandHandler>[1]): Promise<number>;
|
|
9
|
+
export declare function modelsReset(args: string[], deps: Parameters<SubcommandHandler>[1]): Promise<number>;
|
|
10
|
+
export declare function modelsCaps(args: string[], deps: Parameters<SubcommandHandler>[1]): Promise<number>;
|
|
11
|
+
/**
|
|
12
|
+
* Load → mutate → encrypt → atomic-write for the `models` section.
|
|
13
|
+
*/
|
|
14
|
+
export declare function mutateModelsConfig(deps: Parameters<SubcommandHandler>[1], mutator: (models: Record<string, CustomModelDefinition>) => void): Promise<void>;
|
|
15
|
+
/** Parse a human-readable size like "128k", "1M", "200000" into a number. */
|
|
16
|
+
export declare function parseSizeFlag(raw: string | undefined): number | undefined;
|
|
17
|
+
/**
|
|
18
|
+
* Flags visible to this subcommand.
|
|
19
|
+
*
|
|
20
|
+
* `parseArgs` pulls every `--flag` out of argv and hands the handler only the
|
|
21
|
+
* positional remainder, so a handler parsing just its own `args` sees none of
|
|
22
|
+
* them — `models <provider> --search x` and `models add <id> --tools` both lost
|
|
23
|
+
* theirs silently. `deps.flags` is what that top-level parse captured. The
|
|
24
|
+
* local parse still wins, so a directly-invoked handler (and anything after
|
|
25
|
+
* `--`) keeps overriding it.
|
|
26
|
+
*/
|
|
27
|
+
export declare function subcommandFlags(args: string[], deps: Parameters<SubcommandHandler>[1]): Record<string, string | boolean>;
|
|
28
|
+
/** Parse a boolean flag like "--tools" / "--no-tools". */
|
|
29
|
+
export declare function parseBoolFlag(flags: Record<string, string | boolean>, key: string): boolean | undefined;
|
|
30
|
+
export declare function modelsAdd(args: string[], deps: Parameters<SubcommandHandler>[1]): Promise<number>;
|
|
31
|
+
export declare function modelsRemove(args: string[], deps: Parameters<SubcommandHandler>[1]): Promise<number>;
|
|
32
|
+
export declare function modelsList(_args: string[], deps: Parameters<SubcommandHandler>[1]): Promise<number>;
|
|
33
|
+
//# sourceMappingURL=providers-models-custom.d.ts.map
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { ProviderConfig } from '@wrongstack/core/types';
|
|
2
|
+
import type { SubcommandHandler } from '../contracts.js';
|
|
3
|
+
export declare function aliasProviderId(configProviderId: string, cfg: ProviderConfig | undefined): string;
|
|
4
|
+
/**
|
|
5
|
+
* One-shot `/v1/models` auto-discovery, merged into the registry overlay.
|
|
6
|
+
*
|
|
7
|
+
* The REPL learns a gateway's models because boot runs this; subcommands have
|
|
8
|
+
* no boot, so without it `wstack models ai-gateway` reported "not in catalog"
|
|
9
|
+
* for a provider serving 200+ models. Best-effort and silent, exactly as at
|
|
10
|
+
* boot — a down server must not turn a listing into a hard error.
|
|
11
|
+
*/
|
|
12
|
+
export declare function discoverProviderModels(deps: Parameters<SubcommandHandler>[1], ids: string[], onlyProviderId?: string | undefined): Promise<Awaited<ReturnType<typeof deps.modelsRegistry.getProvider>>>;
|
|
13
|
+
export declare function getCatalogProviderForConfigProvider(providerId: string, deps: Parameters<SubcommandHandler>[1]): Promise<{
|
|
14
|
+
providerId: string;
|
|
15
|
+
provider: Awaited<ReturnType<typeof deps.modelsRegistry.getProvider>>;
|
|
16
|
+
}>;
|
|
17
|
+
export declare function usesAccountCatalog(cfg: ProviderConfig | undefined): boolean;
|
|
18
|
+
export declare function uniqueStrings(values: string[]): string[];
|
|
19
|
+
export declare function modelsHide(args: string[], deps: Parameters<SubcommandHandler>[1]): Promise<number>;
|
|
20
|
+
export declare function modelsShow(args: string[], deps: Parameters<SubcommandHandler>[1]): Promise<number>;
|
|
21
|
+
export declare function modelsHidden(args: string[], deps: Parameters<SubcommandHandler>[1]): Promise<number>;
|
|
22
|
+
/**
|
|
23
|
+
* Reflect a provider change in this process's config. The loaded config is
|
|
24
|
+
* frozen (`ConfigLoader.load`), so assigning into it threw AFTER the change had
|
|
25
|
+
* already been written to disk: the command printed a stack trace and exited
|
|
26
|
+
* non-zero on success. Replace the object instead of mutating it.
|
|
27
|
+
*/
|
|
28
|
+
export declare function publishProviderConfig(deps: Parameters<SubcommandHandler>[1], providerId: string, next: ProviderConfig): void;
|
|
29
|
+
//# sourceMappingURL=providers-models-visibility.d.ts.map
|
|
@@ -14,8 +14,6 @@
|
|
|
14
14
|
* request text to TypeSafe, so `--eval` prints what it is about to spend before
|
|
15
15
|
* it spends it.
|
|
16
16
|
*/
|
|
17
|
-
import { type LabeledRequest, type ScoredCase } from '@wrongstack/core/skills';
|
|
18
17
|
import type { SubcommandHandler } from '../contracts.js';
|
|
19
18
|
export declare const skillSuggestCmd: SubcommandHandler;
|
|
20
|
-
export type { LabeledRequest, ScoredCase };
|
|
21
19
|
//# sourceMappingURL=skill-suggest.d.ts.map
|
|
@@ -3,8 +3,8 @@ import {
|
|
|
3
3
|
detectUpdatePackageName,
|
|
4
4
|
runUpdateCommand,
|
|
5
5
|
updateCmd
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-RWNI5OWT.js";
|
|
7
|
+
import "./chunk-BHXAKTBE.js";
|
|
8
8
|
import "./chunk-DIOODAYM.js";
|
|
9
9
|
import "./chunk-F5DCFAKI.js";
|
|
10
10
|
export {
|
|
@@ -13,4 +13,4 @@ export {
|
|
|
13
13
|
runUpdateCommand,
|
|
14
14
|
updateCmd
|
|
15
15
|
};
|
|
16
|
-
//# sourceMappingURL=update-
|
|
16
|
+
//# sourceMappingURL=update-6OEPAEUV.js.map
|
|
@@ -6,5 +6,5 @@
|
|
|
6
6
|
* left metacharacter-bearing arguments unquoted under `shell: true`. Keeping one
|
|
7
7
|
* implementation in core removes the divergence risk (WS-004 / CMDI-005).
|
|
8
8
|
*/
|
|
9
|
-
export { buildWin32CmdShimInvocation,
|
|
9
|
+
export { buildWin32CmdShimInvocation, } from '@wrongstack/core/utils';
|
|
10
10
|
//# sourceMappingURL=win32-cmd.d.ts.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
helpCmd,
|
|
3
3
|
versionCmd
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-AKESWZH5.js";
|
|
5
5
|
import "./chunk-F5DCFAKI.js";
|
|
6
6
|
export {
|
|
7
7
|
helpCmd,
|
|
8
8
|
versionCmd
|
|
9
9
|
};
|
|
10
|
-
//# sourceMappingURL=version-help-
|
|
10
|
+
//# sourceMappingURL=version-help-JQGRPDJW.js.map
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** Static settings for the CLI-embedded WebUI host, resolved from options and the environment. */
|
|
2
|
+
import type { CliWebUIOptions } from '../webui-server-options.js';
|
|
3
|
+
export declare function resolveWebuiHostSettings(opts: CliWebUIOptions): {
|
|
4
|
+
host: string;
|
|
5
|
+
publicUrl: string | undefined;
|
|
6
|
+
publicWsUrl: string | undefined;
|
|
7
|
+
requireToken: boolean;
|
|
8
|
+
surface: "simpleui" | "webui";
|
|
9
|
+
requestedHttpPort: number;
|
|
10
|
+
strictPort: boolean;
|
|
11
|
+
globalRoot: string;
|
|
12
|
+
profileConfigPath: string;
|
|
13
|
+
profileDir: string;
|
|
14
|
+
rateLimitMax: number;
|
|
15
|
+
publicHostnames: string[];
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=host-settings.d.ts.map
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTTP + WebSocket listeners for the CLI-embedded WebUI host: the static
|
|
3
|
+
* frontend (when built), the authenticated WS bridge, the deferred SimpleUI
|
|
4
|
+
* bind, the IPv6 loopback proxy and the ready banner.
|
|
5
|
+
*/
|
|
6
|
+
import type { Server as HttpServer, IncomingMessage } from 'node:http';
|
|
7
|
+
import { type SessionAgentRegistry } from '@wrongstack/webui-server';
|
|
8
|
+
import type { CliWebUIOptions } from '../webui-server-options.js';
|
|
9
|
+
import type { WebuiTransport } from './transport.js';
|
|
10
|
+
export interface WebuiHttpBridgeInput {
|
|
11
|
+
opts: CliWebUIOptions;
|
|
12
|
+
surface: 'webui' | 'simpleui';
|
|
13
|
+
host: string;
|
|
14
|
+
httpPort: number;
|
|
15
|
+
strictPort: boolean;
|
|
16
|
+
globalRoot: string;
|
|
17
|
+
wsToken: string;
|
|
18
|
+
publicUrl: string | undefined;
|
|
19
|
+
publicWsUrl: string | undefined;
|
|
20
|
+
requireToken: boolean;
|
|
21
|
+
getSessionAgents: () => SessionAgentRegistry | undefined;
|
|
22
|
+
onFleetPing: () => void;
|
|
23
|
+
broadcast: WebuiTransport['broadcast'];
|
|
24
|
+
/** The bind advanced past the requested port; called before anything else reads the port. */
|
|
25
|
+
onPortRebound: (port: number) => void;
|
|
26
|
+
}
|
|
27
|
+
export declare function startWebuiHttpBridge(input: WebuiHttpBridgeInput): Promise<{
|
|
28
|
+
httpServer: import("@wrongstack/webui-server").StaticServeHandle | null;
|
|
29
|
+
wss: import("ws").Server<typeof import("ws").WebSocket, typeof IncomingMessage>;
|
|
30
|
+
ipv6LoopbackServer: HttpServer<typeof IncomingMessage, typeof import("node:http").ServerResponse> | null;
|
|
31
|
+
}>;
|
|
32
|
+
//# sourceMappingURL=http-bridge.d.ts.map
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/** Registers the CLI-embedded WebUI host in the shared instance registry. */
|
|
2
|
+
import type { CliWebUIOptions } from '../webui-server-options.js';
|
|
3
|
+
export interface EmbeddedInstanceRegistrationInput {
|
|
4
|
+
opts: CliWebUIOptions;
|
|
5
|
+
surface: 'webui' | 'simpleui';
|
|
6
|
+
host: string;
|
|
7
|
+
httpPort: number;
|
|
8
|
+
publicUrl: string | undefined;
|
|
9
|
+
registryBaseDir: string;
|
|
10
|
+
wsToken: string;
|
|
11
|
+
currentSessionId: () => string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Resolves true once the instance is registered. A session child awaits the
|
|
15
|
+
* registration (its parent reads the record to attach); every other host
|
|
16
|
+
* registers in the background and reports success optimistically.
|
|
17
|
+
*/
|
|
18
|
+
export declare function registerEmbeddedWebuiInstance(input: EmbeddedInstanceRegistrationInput): Promise<boolean>;
|
|
19
|
+
//# sourceMappingURL=instance-registration.d.ts.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/** Kanban run mirror + supervisor for the CLI-embedded WebUI host (only when a project root is known). */
|
|
2
|
+
import type { CliWebUIOptions } from '../webui-server-options.js';
|
|
3
|
+
import type { WebuiTransport } from './transport.js';
|
|
4
|
+
export declare function createWebuiKanbanServices(opts: CliWebUIOptions, broadcast: WebuiTransport['broadcast']): {
|
|
5
|
+
kanbanRunMirror: import("./kanban-run-mirror.js").KanbanRunMirror | null;
|
|
6
|
+
kanbanSupervisor: import("./kanban-supervisor.js").KanbanSupervisor | null;
|
|
7
|
+
stopKanbanSupervisorMemoryStats: (() => Promise<void>) | undefined;
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=kanban-services.d.ts.map
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** Maps the CLI host's route contexts and domain handlers onto the shared embedded message router. */
|
|
2
|
+
import { createEmbeddedMessageRouter } from '@wrongstack/webui-server';
|
|
3
|
+
import type { CliWebUIOptions } from '../webui-server-options.js';
|
|
4
|
+
import type { createWebuiDomainHandlers } from './domain-handlers.js';
|
|
5
|
+
import type { createWebuiRouteContexts } from './route-contexts.js';
|
|
6
|
+
type EmbeddedRouterOptions = Parameters<typeof createEmbeddedMessageRouter>[0];
|
|
7
|
+
export type CliEmbeddedRouterInput = Pick<EmbeddedRouterOptions, 'trustBoundary' | 'send' | 'sendResult' | 'sessionPayload' | 'currentSessionId' | 'shutdown' | 'onDispose' | 'providerCtx' | 'kanbanHostRoutes'> & {
|
|
8
|
+
opts: CliWebUIOptions;
|
|
9
|
+
routeContexts: ReturnType<typeof createWebuiRouteContexts>;
|
|
10
|
+
domainHandlers: ReturnType<typeof createWebuiDomainHandlers>;
|
|
11
|
+
};
|
|
12
|
+
export declare function createCliEmbeddedMessageRouter(input: CliEmbeddedRouterInput): import("@wrongstack/webui-server").EmbeddedMessageRouter;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=message-router.d.ts.map
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { ModelBlackoutRule } from '@wrongstack/core/models';
|
|
2
2
|
import type { Config } from '@wrongstack/core/types';
|
|
3
|
-
import { PREF_KEYS } from '@wrongstack/webui-server';
|
|
4
3
|
interface CliWebUIOptions {
|
|
5
4
|
agent: {
|
|
6
5
|
ctx: {
|
|
@@ -35,7 +34,6 @@ interface CliWebUIOptions {
|
|
|
35
34
|
} | undefined;
|
|
36
35
|
}
|
|
37
36
|
type PrefSnapshot = Record<string, unknown>;
|
|
38
|
-
export { PREF_KEYS };
|
|
39
37
|
export declare function seedConfigToMeta(opts: CliWebUIOptions): Promise<void>;
|
|
40
38
|
export interface PrefsSeeding {
|
|
41
39
|
/**
|
|
@@ -51,4 +49,5 @@ export interface PrefsSeeding {
|
|
|
51
49
|
persistPrefs: (payload: PrefSnapshot) => Promise<void>;
|
|
52
50
|
}
|
|
53
51
|
export declare function createPrefsSeeding(opts: CliWebUIOptions): PrefsSeeding;
|
|
52
|
+
export {};
|
|
54
53
|
//# sourceMappingURL=prefs-seeding.d.ts.map
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { DefaultSecretVault } from '@wrongstack/core/security';
|
|
2
2
|
import type { ProviderConfig } from '@wrongstack/core/types';
|
|
3
|
-
export { expectDefined, maskedKey, normalizeKeys, nowIso, writeKeysBack, } from '../provider-config-utils.js';
|
|
4
3
|
/**
|
|
5
4
|
* PR 4 of Issue #30 (webui-server 8-PR refactor):
|
|
6
5
|
* provider-config IO.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** Provider routes context + credential hot-reload for the CLI-embedded WebUI host. */
|
|
2
|
+
import { type EmbeddedProviderContext } from '@wrongstack/webui-server';
|
|
3
|
+
import type { CliWebUIOptions } from '../webui-server-options.js';
|
|
4
|
+
import type { WebuiTransport } from './transport.js';
|
|
5
|
+
export declare function createEmbeddedProviderPlane(input: {
|
|
6
|
+
opts: CliWebUIOptions;
|
|
7
|
+
profileConfigPath: string;
|
|
8
|
+
send: WebuiTransport['send'];
|
|
9
|
+
broadcast: WebuiTransport['broadcast'];
|
|
10
|
+
}): {
|
|
11
|
+
wsHandlerCtx: EmbeddedProviderContext;
|
|
12
|
+
credentialWatcherClose: (() => void) | undefined;
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=provider-plane.d.ts.map
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/** Per-tab agents for the CLI-embedded WebUI host. */
|
|
2
|
+
import type { WebSocket } from 'ws';
|
|
3
|
+
import type { CliWebUIOptions } from '../webui-server-options.js';
|
|
4
|
+
import type { ConnectedClient } from './connection-handler.js';
|
|
5
|
+
/**
|
|
6
|
+
* One Agent per open tab.
|
|
7
|
+
*
|
|
8
|
+
* The embedded host used to hand every tab the same leader Agent, so the
|
|
9
|
+
* second tab to start a run hit `Agent.run()`'s concurrency guard —
|
|
10
|
+
* "already in progress on this instance". Four tabs need four Agents; the
|
|
11
|
+
* registry clones the leader's wiring and gives each session its own
|
|
12
|
+
* `Context`, which is the state a run actually mutates.
|
|
13
|
+
*/
|
|
14
|
+
export declare function createEmbeddedSessionAgents(opts: CliWebUIOptions, clients: Map<WebSocket, ConnectedClient>, abortControllers: Map<string, AbortController>): {
|
|
15
|
+
sessionAgents: import("@wrongstack/webui-server").SessionAgentRegistry;
|
|
16
|
+
isSessionDisplayed: (sessionId: string) => boolean;
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=session-agents.d.ts.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/** The CLI host's `session.start` payload builder, bound to the live options and per-tab agents. */
|
|
2
|
+
import type { SessionAgentRegistry } from '@wrongstack/webui-server';
|
|
3
|
+
import { type BuildSessionStartPayload, type SessionStartPayloadDeps } from './session-start-payload.js';
|
|
4
|
+
/**
|
|
5
|
+
* The host's builder, reading the live `opts` and the per-tab agent registry.
|
|
6
|
+
* `getSessionAgents` is a forward reference: the registry is built after the
|
|
7
|
+
* builder, so a payload for a background tab still reports that tab's model,
|
|
8
|
+
* mode and context window rather than the leader's.
|
|
9
|
+
*/
|
|
10
|
+
export declare function createLiveSessionStartPayloadBuilder<T extends SessionStartPayloadDeps>(opts: T, getSessionAgents: () => SessionAgentRegistry | undefined): BuildSessionStartPayload;
|
|
11
|
+
//# sourceMappingURL=session-start-live.d.ts.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { createStreamCoalescer, type StreamCoalescer,
|
|
1
|
+
export { createStreamCoalescer, type StreamCoalescer, } from '@wrongstack/webui-server';
|
|
2
2
|
//# sourceMappingURL=stream-coalescer.d.ts.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** Outbound frame delivery for the CLI-embedded WebUI host: unicast, session-aware broadcast, fan-out. */
|
|
2
|
+
import type { WebSocket } from 'ws';
|
|
3
|
+
import type { ConnectedClient } from './connection-handler.js';
|
|
4
|
+
import type { WSServerMessage } from './contracts.js';
|
|
5
|
+
export interface WebuiTransport {
|
|
6
|
+
send(ws: WebSocket, msg: WSServerMessage): void;
|
|
7
|
+
broadcast(msg: WSServerMessage, targetSessionId?: string): void;
|
|
8
|
+
broadcastEveryone(msg: WSServerMessage): void;
|
|
9
|
+
sendResult(ws: WebSocket, success: boolean, message: string): void;
|
|
10
|
+
}
|
|
11
|
+
export declare function createWebuiTransport(clients: Map<WebSocket, ConnectedClient>): WebuiTransport;
|
|
12
|
+
//# sourceMappingURL=transport.d.ts.map
|