@ordewell/core 0.4.7 → 0.4.8
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/{ITerminalRunner-fynILAiR.d.mts → ITerminalRunner-1NAv8wCC.d.mts} +15 -3
- package/dist/{ITerminalRunner-Cpyzyrnl.d.ts → ITerminalRunner-CbE6gKLI.d.ts} +15 -3
- package/dist/index.d.mts +219 -3
- package/dist/index.d.ts +219 -3
- package/dist/index.js +619 -124
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +594 -126
- package/dist/index.mjs.map +1 -1
- package/dist/testing.d.mts +1 -1
- package/dist/testing.d.ts +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { h as RunnerId, c as PlanStatus, L as LegacyPlanState, d as ResearchProgress, a as DiscoveredModel, T as Task, R as ResearchLogEntry, C as ConversationMessage, n as TaskSnapshot, Q as QueuedMessage, A as ActiveTaskSession, g as ResearchToolType, u as Verdict, e as ResearchStep, b as PlanState } from './Task-1NwmUImI.js';
|
|
2
2
|
export { D as DiscoveredMode, M as Message, P as PlanModificationWarnings, f as ResearchStepOutcome, S as StreamEvent, i as StreamStepEvent, j as StreamThinkingEvent, k as TaskMode, l as TaskModelAssignment, m as TaskOutputSummary, o as TaskStatus, p as TaskType, q as ThinkingBlock, U as UserPromptEntry, r as UserStep, V as ValidationCheck, s as ValidationContext, t as ValidationResult, v as VerificationCheck, w as addTaskToPlan, x as createEmptyPlan, y as createTask, z as emptyWarnings, B as flattenTasks, E as migrateLegacyPlan, F as migratePlanState, G as migrateTask, H as removeTaskFromPlan, I as renumberTasks, J as updateTaskInPlan, K as validateModifiedPlan, N as warningsText } from './Task-1NwmUImI.js';
|
|
3
|
-
import { n as IFileSystem, I as IApproval, R as ReadFileOpts, T as ToolOutcome, k as GrepOptions, j as GlobOptions, i as FindSymbolOptions, f as ApprovalRequest, m as IConfig, A as AiProvider,
|
|
4
|
-
export { a as AllProviderModels, d as ApprovalPolicy, e as ApprovalPolicyOptions, C as CatalogModel, D as DENY_ALL, h as DiscoveryCommand, F as FetchAllProviderModelsOptions, G as GREP_DEFAULT_HEAD_LIMIT, l as GrepOutputMode, M as ModelCatalog, r as ModelShortcut, O as ORCHESTRATOR_SHORTCUTS, P as
|
|
3
|
+
import { n as IFileSystem, I as IApproval, R as ReadFileOpts, T as ToolOutcome, k as GrepOptions, j as GlobOptions, i as FindSymbolOptions, f as ApprovalRequest, m as IConfig, A as AiProvider, z as ProviderModelLists, c as ApprovalMode, q as ITerminalSession, p as ITerminalRunner, K as RunnerRegistry, s as OrchestratorOption, b as ApprovalKind, g as ApprovalSource, H as RunnerInvocation, o as IPluginStore, J as RunnerPluginManifest, E as ResolveContext } from './ITerminalRunner-CbE6gKLI.js';
|
|
4
|
+
export { a as AllProviderModels, d as ApprovalPolicy, e as ApprovalPolicyOptions, C as CatalogModel, D as DENY_ALL, h as DiscoveryCommand, F as FetchAllProviderModelsOptions, G as GREP_DEFAULT_HEAD_LIMIT, l as GrepOutputMode, M as ModelCatalog, r as ModelShortcut, O as ORCHESTRATOR_SHORTCUTS, P as PluginCloneFn, t as PluginEntry, u as PluginFeatures, v as PluginMode, w as PluginModelDiscovery, x as PluginRunnerDef, y as ProviderCredentialSource, B as ProviderModelsResult, S as SEARCH_EXCLUSIONS, L as collectProviderCredentials, N as enabledRunners, Q as fetchAllProviderModels, U as isReservedRunnerName, V as knownModelId, W as resolveModelShortcut, X as resolveProvider, Y as toOrchestratorOptions } from './ITerminalRunner-CbE6gKLI.js';
|
|
5
5
|
import { R as RunnerModeInfo, b as PlanParseError } from './parsing-RjN9JbyG.js';
|
|
6
6
|
export { M as ManifestLookup, P as PLAN_ENVELOPE_KEY, a as PartialPlanTask, T as TASK_OPS_ENVELOPE_KEY, c as buildModeGuide, d as checkDepsResolve, e as checkImmutableLog, f as checkInProgress, g as checkNoCycles, h as checkUniqueIds, i as escapeControlCharsInStrings, j as extractJsonObject, k as extractObjectWithBalance, l as extractObjectsWithKey, m as filteredBuildModes, n as looksLikePlanAttempt, p as parsePartialPlan, o as parsePlanJson, r as resolveDefaultMode, q as resolveTaskMode, s as runnerModesFrom, t as stripModelNoise, u as stripTrailingCommas, v as validatePlanModification } from './parsing-RjN9JbyG.js';
|
|
7
7
|
import { T as TaskOp } from './plan-utils-Cgc0cCH1.js';
|
|
@@ -121,12 +121,22 @@ declare function researchShellWarning(shell: ResearchShell): string | null;
|
|
|
121
121
|
* The old substring denylist both over-matched (`ls docs/removed` tripped `rm`)
|
|
122
122
|
* and under-matched (`$(rm -rf /)` was invisible once chaining was allowed).
|
|
123
123
|
*
|
|
124
|
+
* A segment is classified by the command that will actually execute, not by the
|
|
125
|
+
* name at the front of it: wrappers are unwrapped first, recursively, so
|
|
126
|
+
* `timeout 10 env nice rm -rf x` is an `rm`. See {@link WRAPPER_FAMILY}.
|
|
127
|
+
*
|
|
124
128
|
* The lexer is dialect-aware, because the interpreter that will actually run
|
|
125
129
|
* the command decides what the tokens are, and getting that wrong is not a
|
|
126
130
|
* cosmetic error here — it is the difference between classifying what runs and
|
|
127
131
|
* classifying something else. See {@link Dialect}.
|
|
128
132
|
*/
|
|
129
133
|
|
|
134
|
+
/**
|
|
135
|
+
* `env` is deliberately absent. Given a command it is a wrapper, classified by
|
|
136
|
+
* what it actually runs (see {@link WRAPPER_FAMILY}); given none it prints the
|
|
137
|
+
* whole process environment — provider credentials included — into the research
|
|
138
|
+
* log, which is a disclosure the developer should get to see coming.
|
|
139
|
+
*/
|
|
130
140
|
declare const AUTO_COMMANDS: string[];
|
|
131
141
|
declare const GIT_READONLY_SUBCOMMANDS: string[];
|
|
132
142
|
/**
|
|
@@ -1866,6 +1876,72 @@ declare function configuredProviders(config: {
|
|
|
1866
1876
|
openaiCompatibleBaseUrl: string;
|
|
1867
1877
|
}): AiProvider[];
|
|
1868
1878
|
|
|
1879
|
+
/**
|
|
1880
|
+
* Which environment variables a settings update may write.
|
|
1881
|
+
*
|
|
1882
|
+
* The daemon's settings update sets `process.env` on the daemon itself, and
|
|
1883
|
+
* every runner it spawns inherits that environment. The admission rule used to
|
|
1884
|
+
* be "any upper-case key", which admitted the variables that make the runtime
|
|
1885
|
+
* load arbitrary modules, preload libraries into every child, redirect the
|
|
1886
|
+
* executable search path, move where settings are persisted, and turn approval
|
|
1887
|
+
* prompting off — so a single settings write was arbitrary code execution.
|
|
1888
|
+
*
|
|
1889
|
+
* The rule is now an allowlist: the provider credential and base-URL families,
|
|
1890
|
+
* derived from the provider registry so a new provider needs no second edit,
|
|
1891
|
+
* plus a small set of Ordewell's own configuration variables. Everything else
|
|
1892
|
+
* is refused and named back to the caller.
|
|
1893
|
+
*/
|
|
1894
|
+
/**
|
|
1895
|
+
* Ordewell's own settable configuration. Deliberately short: a variable earns a
|
|
1896
|
+
* place here only when a surface has a reason to change it on a live daemon.
|
|
1897
|
+
*
|
|
1898
|
+
* `ORDEWELL_AUTONOMOUS_MODE` is conspicuously absent and is in
|
|
1899
|
+
* `SETTINGS_ENV_REFUSED` instead — see that list.
|
|
1900
|
+
*/
|
|
1901
|
+
declare const ORDEWELL_SETTABLE_ENV: readonly string[];
|
|
1902
|
+
/**
|
|
1903
|
+
* Refused by name, not merely left out of the allowlist.
|
|
1904
|
+
*
|
|
1905
|
+
* Omission alone would already refuse these, so this list buys no admission
|
|
1906
|
+
* behaviour — it buys a place where the reason is written down, and a failing
|
|
1907
|
+
* test the moment someone widens the allowlist over one of them. Each entry is
|
|
1908
|
+
* a known escalation from "can change a setting" to "can run code as the user":
|
|
1909
|
+
*
|
|
1910
|
+
* - The approval-mode and pre-approved-scope variables switch the consent gate
|
|
1911
|
+
* off, so every later command runs unprompted.
|
|
1912
|
+
* - The settings-path override is honoured by the settings service, which
|
|
1913
|
+
* creates directories recursively when persisting — admitting it turns the
|
|
1914
|
+
* same write into an arbitrary-path file write.
|
|
1915
|
+
* - The runtime-option and dynamic-loader variables load attacker-chosen
|
|
1916
|
+
* modules or shared objects into the daemon and into every process it spawns.
|
|
1917
|
+
* - The executable-path variables redirect which binary a runner's command name
|
|
1918
|
+
* resolves to.
|
|
1919
|
+
*/
|
|
1920
|
+
declare const SETTINGS_ENV_REFUSED: readonly string[];
|
|
1921
|
+
/**
|
|
1922
|
+
* The credential and endpoint keys alone. A write to one of these is what
|
|
1923
|
+
* invalidates a model catalog — picking a planner, a model or an effort level
|
|
1924
|
+
* changes nothing a catalog contains.
|
|
1925
|
+
*/
|
|
1926
|
+
declare const PROVIDER_CREDENTIAL_ENV: ReadonlySet<string>;
|
|
1927
|
+
/**
|
|
1928
|
+
* Every key a settings update may write. Built once at module load; the refused
|
|
1929
|
+
* names are subtracted last so a provider registration can never smuggle one in.
|
|
1930
|
+
*/
|
|
1931
|
+
declare const SETTINGS_ENV_ALLOWLIST: ReadonlySet<string>;
|
|
1932
|
+
interface EnvAdmission {
|
|
1933
|
+
/** Keys that may be written, with their string values. */
|
|
1934
|
+
accepted: Record<string, string>;
|
|
1935
|
+
/** Keys the caller sent that were refused, in the order they arrived. */
|
|
1936
|
+
rejected: string[];
|
|
1937
|
+
}
|
|
1938
|
+
/**
|
|
1939
|
+
* Splits a settings update's `env` object into what may be written and what was
|
|
1940
|
+
* refused. A non-string value for an allowlisted key is refused rather than
|
|
1941
|
+
* dropped, so the caller never sees silence for a write that did not happen.
|
|
1942
|
+
*/
|
|
1943
|
+
declare function admitSettingsEnv(env: Record<string, unknown>): EnvAdmission;
|
|
1944
|
+
|
|
1869
1945
|
interface SpawnSpec {
|
|
1870
1946
|
command: string;
|
|
1871
1947
|
args: string[];
|
|
@@ -3037,6 +3113,93 @@ interface WorkspaceCheckDeps {
|
|
|
3037
3113
|
}
|
|
3038
3114
|
/** Throws {@link WorkspaceNotFoundError} unless `workspace` names an existing directory. */
|
|
3039
3115
|
declare function assertWorkspaceExists(workspace: string, deps?: WorkspaceCheckDeps): void;
|
|
3116
|
+
/**
|
|
3117
|
+
* A workspace whose resolved path carries none of the markers below. Thrown
|
|
3118
|
+
* instead of admitting the directory as-is: without this, a request pointed
|
|
3119
|
+
* at the filesystem root or an arbitrary system directory becomes the
|
|
3120
|
+
* confinement boundary for every read, search and permitted command the
|
|
3121
|
+
* planner runs, by definition. A denylist of "dangerous" roots was rejected
|
|
3122
|
+
* for the same reason as the other denylists in this project's remediation —
|
|
3123
|
+
* it would still admit unlisted system directories.
|
|
3124
|
+
*/
|
|
3125
|
+
declare class WorkspaceNotAProjectError extends Error {
|
|
3126
|
+
readonly workspace: string;
|
|
3127
|
+
constructor(workspace: string);
|
|
3128
|
+
}
|
|
3129
|
+
interface WorkspaceProjectCheckDeps {
|
|
3130
|
+
/** Resolves symlinks/`..` segments to a canonical absolute path. Defaults to `fs.realpathSync`. */
|
|
3131
|
+
realpath?: (candidate: string) => string;
|
|
3132
|
+
/** True when `candidate` names an existing filesystem entry. Defaults to `fs.existsSync`. */
|
|
3133
|
+
exists?: (candidate: string) => boolean;
|
|
3134
|
+
}
|
|
3135
|
+
/**
|
|
3136
|
+
* Throws {@link WorkspaceNotAProjectError} unless `workspace` resolves to a
|
|
3137
|
+
* directory carrying at least one project marker. Resolves the path first —
|
|
3138
|
+
* via `realpath`, not string inspection — so a request that traverses
|
|
3139
|
+
* through symlinks or `..` segments is judged on where it actually lands,
|
|
3140
|
+
* not on the path as written.
|
|
3141
|
+
*/
|
|
3142
|
+
declare function assertWorkspaceIsProject(workspace: string, deps?: WorkspaceProjectCheckDeps): void;
|
|
3143
|
+
|
|
3144
|
+
/**
|
|
3145
|
+
* The daemon's bearer token: minted at startup, written beside the per-port
|
|
3146
|
+
* process-id file, read by the CLI.
|
|
3147
|
+
*
|
|
3148
|
+
* Header validation defends against browsers and nothing else. This is what
|
|
3149
|
+
* stops another process running as the same user — an install script in the
|
|
3150
|
+
* very repository the planner was pointed at, say — from driving the daemon
|
|
3151
|
+
* just because it can see the port.
|
|
3152
|
+
*
|
|
3153
|
+
* Both ends of the wire live here so the carrier encodings cannot drift: the
|
|
3154
|
+
* daemon extracts with the same functions the CLI attaches with.
|
|
3155
|
+
*/
|
|
3156
|
+
/**
|
|
3157
|
+
* The subprotocol the token rides on during the WebSocket upgrade. A query
|
|
3158
|
+
* parameter would land in access logs and in `ps`; a subprotocol travels in a
|
|
3159
|
+
* request header like the HTTP `Authorization` it stands in for.
|
|
3160
|
+
*/
|
|
3161
|
+
declare const DAEMON_TOKEN_SUBPROTOCOL_PREFIX = "ordewell.token.";
|
|
3162
|
+
/**
|
|
3163
|
+
* Offered alongside the token subprotocol, and the one the server selects, so
|
|
3164
|
+
* the 101 response never echoes the secret back.
|
|
3165
|
+
*/
|
|
3166
|
+
declare const DAEMON_SUBPROTOCOL = "ordewell.v1";
|
|
3167
|
+
/**
|
|
3168
|
+
* One token file per port, with no default-port special case: unlike the
|
|
3169
|
+
* process-id file there is no legacy name to preserve, and naming every file
|
|
3170
|
+
* after its port is what stops a second daemon clobbering the first's token.
|
|
3171
|
+
*/
|
|
3172
|
+
declare function daemonTokenPath(port: number): string;
|
|
3173
|
+
/**
|
|
3174
|
+
* Mint this daemon's token and hand it off through the filesystem.
|
|
3175
|
+
*
|
|
3176
|
+
* Unlink-then-create-exclusively rather than a plain write: `mode` is ignored
|
|
3177
|
+
* when the file already exists, so writing over a pre-created file would leave
|
|
3178
|
+
* the token at whatever permissions that file already had, and an existing
|
|
3179
|
+
* symlink would carry the write somewhere else entirely.
|
|
3180
|
+
*/
|
|
3181
|
+
declare function mintDaemonToken(port: number): {
|
|
3182
|
+
token: string;
|
|
3183
|
+
file: string;
|
|
3184
|
+
};
|
|
3185
|
+
/** The token a client should present to the daemon on `port`, if one has been minted. */
|
|
3186
|
+
declare function readDaemonToken(port: number): string | undefined;
|
|
3187
|
+
/** Best-effort cleanup on shutdown, so a dead daemon leaves no usable-looking token behind. */
|
|
3188
|
+
declare function clearDaemonToken(port: number): void;
|
|
3189
|
+
/** The `Authorization` header value for HTTP requests. */
|
|
3190
|
+
declare function bearerHeaderValue(token: string): string;
|
|
3191
|
+
/** What a client offers on the upgrade: the real subprotocol first, the token second. */
|
|
3192
|
+
declare function tokenSubprotocols(token: string): string[];
|
|
3193
|
+
interface TokenCarriers {
|
|
3194
|
+
/** `Authorization: Bearer <token>` — the HTTP carrier. */
|
|
3195
|
+
authorization?: string | null;
|
|
3196
|
+
/** `Sec-WebSocket-Protocol` — the upgrade carrier. */
|
|
3197
|
+
secWebSocketProtocol?: string | null;
|
|
3198
|
+
}
|
|
3199
|
+
/** Pull the token out of whichever carrier it arrived on. */
|
|
3200
|
+
declare function extractPresentedToken(carriers: TokenCarriers): string | undefined;
|
|
3201
|
+
/** Constant-time comparison, so a wrong token leaks no information about the right one. */
|
|
3202
|
+
declare function tokensMatch(presented: string | undefined, expected: string): boolean;
|
|
3040
3203
|
|
|
3041
3204
|
interface KillTreeDeps {
|
|
3042
3205
|
platform?: NodeJS.Platform;
|
|
@@ -3137,6 +3300,7 @@ declare function clipboardCopyCommand(hasBin?: HasBinFn, platform?: NodeJS.Platf
|
|
|
3137
3300
|
declare class FsPluginStore implements IPluginStore {
|
|
3138
3301
|
getUserPluginsDir(): string;
|
|
3139
3302
|
listUserPluginDirs(): string[];
|
|
3303
|
+
listDir(dir: string): string[];
|
|
3140
3304
|
loadManifest(pluginDir: string): RunnerPluginManifest | null;
|
|
3141
3305
|
copyDir(sourceDir: string, destDir: string): void;
|
|
3142
3306
|
removeDir(dir: string): void;
|
|
@@ -3147,6 +3311,56 @@ declare class FsPluginStore implements IPluginStore {
|
|
|
3147
3311
|
exists(path: string): boolean;
|
|
3148
3312
|
}
|
|
3149
3313
|
|
|
3314
|
+
/**
|
|
3315
|
+
* Shape check for a manifest read off disk or out of a cloned repository. The
|
|
3316
|
+
* name is constrained here rather than at each install route, so every store
|
|
3317
|
+
* implementation gets the same guarantee that a manifest name is a plain
|
|
3318
|
+
* segment and never a traversal sequence.
|
|
3319
|
+
*/
|
|
3320
|
+
declare function isValidManifest(obj: unknown): obj is RunnerPluginManifest;
|
|
3321
|
+
|
|
3322
|
+
/**
|
|
3323
|
+
* A plugin name is a single plain path segment: alphanumeric at both ends,
|
|
3324
|
+
* dots/dashes/underscores in between. This is what keeps a manifest name from
|
|
3325
|
+
* being a traversal sequence (`..`, `../../etc`), an absolute path, or a
|
|
3326
|
+
* dash-prefixed string that a downstream tool reads as a flag.
|
|
3327
|
+
*/
|
|
3328
|
+
declare const PLUGIN_NAME_PATTERN: RegExp;
|
|
3329
|
+
declare function isPlainPluginName(name: unknown): name is string;
|
|
3330
|
+
declare function assertPlainPluginName(name: unknown): asserts name is string;
|
|
3331
|
+
/**
|
|
3332
|
+
* Resolve where a plugin of this name installs, and assert the result is still
|
|
3333
|
+
* a direct child of the plugins directory. Validation and use share this one
|
|
3334
|
+
* call so they cannot disagree about the path being checked.
|
|
3335
|
+
*/
|
|
3336
|
+
declare function resolvePluginInstallDir(pluginsDir: string, name: unknown): string;
|
|
3337
|
+
|
|
3338
|
+
/** Hosts a plugin may be cloned from. Exact hostname match, case-insensitive. */
|
|
3339
|
+
declare const ALLOWED_PLUGIN_HOSTS: readonly string[];
|
|
3340
|
+
type PluginSource = {
|
|
3341
|
+
kind: 'git';
|
|
3342
|
+
url: string;
|
|
3343
|
+
} | {
|
|
3344
|
+
kind: 'path';
|
|
3345
|
+
path: string;
|
|
3346
|
+
};
|
|
3347
|
+
/**
|
|
3348
|
+
* Validate a plugin repository URL. Requires an ordinary HTTPS repository on an
|
|
3349
|
+
* allowed host, which is also what rejects git's transport helpers (`ext::`,
|
|
3350
|
+
* `git://`, `ssh://`, `file://`) — they never reach the clone because they are
|
|
3351
|
+
* not the https scheme.
|
|
3352
|
+
*
|
|
3353
|
+
* Returns the parsed URL so callers clone the normalised form they validated.
|
|
3354
|
+
*/
|
|
3355
|
+
declare function assertInstallablePluginUrl(url: unknown): URL;
|
|
3356
|
+
/**
|
|
3357
|
+
* Decide whether an install source names a remote repository or a local
|
|
3358
|
+
* directory. Anything that carries a scheme or looks like an scp-style remote
|
|
3359
|
+
* goes down the URL route so it is rejected as a bad URL rather than silently
|
|
3360
|
+
* retried as a (nonexistent) directory.
|
|
3361
|
+
*/
|
|
3362
|
+
declare function classifyPluginSource(source: string): PluginSource;
|
|
3363
|
+
|
|
3150
3364
|
declare function resolveArgs(manifest: RunnerPluginManifest, ctx: ResolveContext): RunnerInvocation;
|
|
3151
3365
|
|
|
3152
3366
|
declare const CLAUDE_CODE_MANIFEST: RunnerPluginManifest;
|
|
@@ -3178,6 +3392,8 @@ declare function getLatestSession(baseDir?: string, logger?: ILogger): {
|
|
|
3178
3392
|
} | null;
|
|
3179
3393
|
declare function deleteSession(sessionId: string, baseDir?: string, logger?: ILogger): boolean;
|
|
3180
3394
|
|
|
3395
|
+
declare function mintSessionId(): string;
|
|
3396
|
+
|
|
3181
3397
|
interface PrdBlock {
|
|
3182
3398
|
slug: string;
|
|
3183
3399
|
markdown: string;
|
|
@@ -3244,4 +3460,4 @@ declare class PlannerModelMemory {
|
|
|
3244
3460
|
recall(provider: string, catalog: PlannerModelCandidate[]): PlannerModelRecall;
|
|
3245
3461
|
}
|
|
3246
3462
|
|
|
3247
|
-
export { ALL_PROVIDERS, AUTO_COMMANDS, AbstractRunner, AbstractTerminalSession, ActiveTaskSession, type AgentAdapter, type AgentAdapterFactory, type AgentEvent, type AgentProcessDeps, type AgentStartOptions, AiProvider, ApprovalKind, ApprovalMode, ApprovalRequest, ApprovalSource, BaseAiService, BaseConfig, BaseFileSystem, CLAUDE_CODE_MANIFEST, CLI_PROVIDERS, CMD_EXE_MAX_COMMAND_LINE, CORE_PLANNER_PROMPT, type CappedRows, type CheckpointListener, ClaudeCodeAdapter, CliAgentAiService, type CliAgentAiServiceDeps, CodexAdapter, type CommandClassification, CommandLineTooLongError, type CommandTier, type ComposeOptions, ConsoleLogger, ContextCollector, ConversationMessage, type ConversationRequest, type ConversationTurn, DiscoveredModel, EmbeddedNewlineError, EnvConfig, type ExecFileFn, type ExecImpl, ExecutableNotFoundError, FindSymbolOptions, FsPluginStore, GIT_READONLY_SUBCOMMANDS, GeminiService, GlobOptions, type GrepInvocation, GrepOptions, type HasBinFn, HeadlessRunner, type HeadlessRunnerDeps, HeadlessSession, type IAiService, IApproval, IConfig, IFileSystem, type ILogger, type INotification, IPluginStore, ITerminalRunner, ITerminalSession, JSON_REPAIR_INSTRUCTION, type KillTreeDeps, type LaunchDeps, type LaunchPlan, LegacyPlanState, LineBuffer, type MappedTool, ModelResolver, type ModelResolverDeps, type ModifyPlanRequest, type NotificationAction, OPENCODE_MANIFEST, OpenAiService, OpenCodeAdapter, type OrchestratorObserver, OrchestratorOption, PROVIDER_DETECT_PRIORITY, PROVIDER_LABEL, PROVIDER_PRIORITY, PROVIDER_SHORT_LABEL, type PendingApproval, PendingApprovals, type PendingApprovalsOptions, PlanEditError, PlanParseError, type PlanRequest, PlanState, PlanStatus, PlanStore, Planner, type PlannerModelCandidate, type PlannerModelChoice, PlannerModelMemory, type PlannerModelRecall, type PlannerModelStore, type PlannerReplyClassification, type PlannerRuntimeToggles, type PrdBlock, type PreparedLaunch, type PriorOutput, type ProbeFn, ProviderModelLists, type ProviderRegistration, QueuedMessage, REFUSED_COMMANDS, ReadFileOpts, type RepairLoopOpts, type RepairVerdict, type ResearchChat, ResearchLogEntry, ResearchProgress, type ResearchShell, type ResearchShellDeps, ResearchStep, ResearchToolType, type ResearchTurn, ResolveContext, type RunnerCatalog, RunnerId, RunnerInstallation, RunnerInvocation, type RunnerMode, RunnerModeInfo, RunnerPluginManifest, RunnerRegistry, type RunnerSpawnOptions, STATE_DIR, STOPPED_TOOL_RESULT, SYMBOL_LANGUAGES, type SerializedPlan, type SerializedTask, type SerializedTaskStatus, Session, type SessionBroadcaster, type SessionData, type SessionDeps, type SessionMessage, type SessionMeta, type SessionPlanner, type SessionRuntimeSettings, SettingsService, type ShellDialect, type SpawnSpec, StdioAgentAdapter, TRUNCATED_PLAN_REPAIR_INSTRUCTION, Task, TaskOp, TaskOrchestrator, TaskSnapshot, TmuxRunner, type TmuxRunnerDeps, type ToolCall, ToolOutcome, type ToolResult, type UserSettings, Verdict, VerdictEngine, type VerdictListener, WINDOWS_MAX_COMMAND_LINE, type WorkspaceCheckDeps, WorkspaceNotFoundError, applyHeadLimit, assertWorkspaceExists, augmentPromptWithPriorOutputs, augmentedPath, buildConversationSystemPrompt, buildFallbackGrepArgs, buildGlobArgs, buildGrepArgs, buildMergePrompt, buildModifyDuringExecutionPrompt, buildModifyPlanPrompt, buildPlanWithResults, buildResearchPrompt, buildResearchToolsPrompt, buildRunnerInvocation, buildShellInvocation, buildSplitPrompt, buildSubagentSystemPrompt, clampThinkingEffort, classifyCommand, classifyPlannerReply, clearAugmentedPathCache, clearResearchShellCache, clearState, clipboardCopyCommand, coerceAssignments, collectDirectDependencyOutputs, composeAugmentedPrompt, configuredProviders, createAiService, defaultLogger, definitionPattern, deleteSession, discoverGeminiModels, effectiveAllowlist, ensureDir, executionLogBlock, executionSummary, extractPrdBlock, filterFallbackByAnchoredInclude, filterModelsForPrompt, formatSearchOutput, generatePlanWithRepair, getLatestSession, getProviderMeta, getSettingsPath, getStateDir, grantScopeFor, hasTmux, includeGlobFor, isCliProvider, isExecutableResolved, isOpenAiProvider, killTree, languageForId, listSessions, loadSession, loadSessionPlanState, loadState, mapAgentTool, modelContextBlock, modifyValidationFeedback, normalizeAgentArgs, normalizeGeminiModel, pendingEditRulesBlock, planDirectLaunch, planShellLaunch, posixShellQuote, prefixModelId, providerForRunner, reEmitPlanPrompt, reEmitTaskOpsPrompt, referencePattern, renderPlanMap, renderPriorOutputs, repairLoop, researchShellWarning, researchToolsPath, resolveArgs, resolveProviderFromPrefix, resolveResearchShell, resolveWithin, retargetTaskRunner, runnerAssignment, runnerForProvider, sanitizeSlug, savePrdMarkdown, saveSession, saveState, serializePlan, serializeTask, serializeTaskStatus, sessionRuntimeSettings, stateExists, stripAnsi, stripModelPrefix, summarizeOutput, taskOpsRejectedPrompt, tmuxSessionName, tmuxSocketName, tmuxWindowName, truncatedPlanReEmitPrompt, wellKnownBinDirs, windowsCommandLine, withPath, wrapWithPty };
|
|
3463
|
+
export { ALLOWED_PLUGIN_HOSTS, ALL_PROVIDERS, AUTO_COMMANDS, AbstractRunner, AbstractTerminalSession, ActiveTaskSession, type AgentAdapter, type AgentAdapterFactory, type AgentEvent, type AgentProcessDeps, type AgentStartOptions, AiProvider, ApprovalKind, ApprovalMode, ApprovalRequest, ApprovalSource, BaseAiService, BaseConfig, BaseFileSystem, CLAUDE_CODE_MANIFEST, CLI_PROVIDERS, CMD_EXE_MAX_COMMAND_LINE, CORE_PLANNER_PROMPT, type CappedRows, type CheckpointListener, ClaudeCodeAdapter, CliAgentAiService, type CliAgentAiServiceDeps, CodexAdapter, type CommandClassification, CommandLineTooLongError, type CommandTier, type ComposeOptions, ConsoleLogger, ContextCollector, ConversationMessage, type ConversationRequest, type ConversationTurn, DAEMON_SUBPROTOCOL, DAEMON_TOKEN_SUBPROTOCOL_PREFIX, DiscoveredModel, EmbeddedNewlineError, type EnvAdmission, EnvConfig, type ExecFileFn, type ExecImpl, ExecutableNotFoundError, FindSymbolOptions, FsPluginStore, GIT_READONLY_SUBCOMMANDS, GeminiService, GlobOptions, type GrepInvocation, GrepOptions, type HasBinFn, HeadlessRunner, type HeadlessRunnerDeps, HeadlessSession, type IAiService, IApproval, IConfig, IFileSystem, type ILogger, type INotification, IPluginStore, ITerminalRunner, ITerminalSession, JSON_REPAIR_INSTRUCTION, type KillTreeDeps, type LaunchDeps, type LaunchPlan, LegacyPlanState, LineBuffer, type MappedTool, ModelResolver, type ModelResolverDeps, type ModifyPlanRequest, type NotificationAction, OPENCODE_MANIFEST, ORDEWELL_SETTABLE_ENV, OpenAiService, OpenCodeAdapter, type OrchestratorObserver, OrchestratorOption, PLUGIN_NAME_PATTERN, PROVIDER_CREDENTIAL_ENV, PROVIDER_DETECT_PRIORITY, PROVIDER_LABEL, PROVIDER_PRIORITY, PROVIDER_SHORT_LABEL, type PendingApproval, PendingApprovals, type PendingApprovalsOptions, PlanEditError, PlanParseError, type PlanRequest, PlanState, PlanStatus, PlanStore, Planner, type PlannerModelCandidate, type PlannerModelChoice, PlannerModelMemory, type PlannerModelRecall, type PlannerModelStore, type PlannerReplyClassification, type PlannerRuntimeToggles, type PluginSource, type PrdBlock, type PreparedLaunch, type PriorOutput, type ProbeFn, ProviderModelLists, type ProviderRegistration, QueuedMessage, REFUSED_COMMANDS, ReadFileOpts, type RepairLoopOpts, type RepairVerdict, type ResearchChat, ResearchLogEntry, ResearchProgress, type ResearchShell, type ResearchShellDeps, ResearchStep, ResearchToolType, type ResearchTurn, ResolveContext, type RunnerCatalog, RunnerId, RunnerInstallation, RunnerInvocation, type RunnerMode, RunnerModeInfo, RunnerPluginManifest, RunnerRegistry, type RunnerSpawnOptions, SETTINGS_ENV_ALLOWLIST, SETTINGS_ENV_REFUSED, STATE_DIR, STOPPED_TOOL_RESULT, SYMBOL_LANGUAGES, type SerializedPlan, type SerializedTask, type SerializedTaskStatus, Session, type SessionBroadcaster, type SessionData, type SessionDeps, type SessionMessage, type SessionMeta, type SessionPlanner, type SessionRuntimeSettings, SettingsService, type ShellDialect, type SpawnSpec, StdioAgentAdapter, TRUNCATED_PLAN_REPAIR_INSTRUCTION, Task, TaskOp, TaskOrchestrator, TaskSnapshot, TmuxRunner, type TmuxRunnerDeps, type TokenCarriers, type ToolCall, ToolOutcome, type ToolResult, type UserSettings, Verdict, VerdictEngine, type VerdictListener, WINDOWS_MAX_COMMAND_LINE, type WorkspaceCheckDeps, WorkspaceNotAProjectError, WorkspaceNotFoundError, type WorkspaceProjectCheckDeps, admitSettingsEnv, applyHeadLimit, assertInstallablePluginUrl, assertPlainPluginName, assertWorkspaceExists, assertWorkspaceIsProject, augmentPromptWithPriorOutputs, augmentedPath, bearerHeaderValue, buildConversationSystemPrompt, buildFallbackGrepArgs, buildGlobArgs, buildGrepArgs, buildMergePrompt, buildModifyDuringExecutionPrompt, buildModifyPlanPrompt, buildPlanWithResults, buildResearchPrompt, buildResearchToolsPrompt, buildRunnerInvocation, buildShellInvocation, buildSplitPrompt, buildSubagentSystemPrompt, clampThinkingEffort, classifyCommand, classifyPlannerReply, classifyPluginSource, clearAugmentedPathCache, clearDaemonToken, clearResearchShellCache, clearState, clipboardCopyCommand, coerceAssignments, collectDirectDependencyOutputs, composeAugmentedPrompt, configuredProviders, createAiService, daemonTokenPath, defaultLogger, definitionPattern, deleteSession, discoverGeminiModels, effectiveAllowlist, ensureDir, executionLogBlock, executionSummary, extractPrdBlock, extractPresentedToken, filterFallbackByAnchoredInclude, filterModelsForPrompt, formatSearchOutput, generatePlanWithRepair, getLatestSession, getProviderMeta, getSettingsPath, getStateDir, grantScopeFor, hasTmux, includeGlobFor, isCliProvider, isExecutableResolved, isOpenAiProvider, isPlainPluginName, isValidManifest, killTree, languageForId, listSessions, loadSession, loadSessionPlanState, loadState, mapAgentTool, mintDaemonToken, mintSessionId, modelContextBlock, modifyValidationFeedback, normalizeAgentArgs, normalizeGeminiModel, pendingEditRulesBlock, planDirectLaunch, planShellLaunch, posixShellQuote, prefixModelId, providerForRunner, reEmitPlanPrompt, reEmitTaskOpsPrompt, readDaemonToken, referencePattern, renderPlanMap, renderPriorOutputs, repairLoop, researchShellWarning, researchToolsPath, resolveArgs, resolvePluginInstallDir, resolveProviderFromPrefix, resolveResearchShell, resolveWithin, retargetTaskRunner, runnerAssignment, runnerForProvider, sanitizeSlug, savePrdMarkdown, saveSession, saveState, serializePlan, serializeTask, serializeTaskStatus, sessionRuntimeSettings, stateExists, stripAnsi, stripModelPrefix, summarizeOutput, taskOpsRejectedPrompt, tmuxSessionName, tmuxSocketName, tmuxWindowName, tokenSubprotocols, tokensMatch, truncatedPlanReEmitPrompt, wellKnownBinDirs, windowsCommandLine, withPath, wrapWithPty };
|