@gaunt-sloth/core 2.0.0-alpha.28 → 2.0.0-alpha.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -36,6 +36,12 @@ const response = await config.llm.invoke('Say hello');
36
36
  console.log(response.text);
37
37
  ```
38
38
 
39
+ When the configured provider has no API key anywhere — not in `llm.apiKey`, not in
40
+ `llm.apiKeyEnvironmentVariable`, not in any variable that provider accepts — `initConfig` rejects
41
+ with a `MissingProviderKeyError` carrying `provider` and `envVars`, so a caller running several
42
+ configs can report which one lacked a secret and carry on with the rest. Use
43
+ `isMissingProviderKeyError(error)` to recognise it.
44
+
39
45
  All config keys (providers, prompts, tools, per-command settings) are documented in
40
46
  [the configuration guide](https://github.com/pukeko-robotics/gaunt-sloth/blob/main/docs/configuration/index.md).
41
47
 
@@ -0,0 +1,41 @@
1
+ /**
2
+ * @packageDocumentation
3
+ * The single interpretation of the `filesystem` config value: **which filesystem tools it
4
+ * registers**.
5
+ *
6
+ * `filesystem` is a union — `'all'`, `'read'`, `'none'`, or a `string[]` of tool names — so any
7
+ * two-value check ("is it `read` or `none`?") is wrong by construction. The toolkit filter in
8
+ * `@gaunt-sloth/agent` (`filterFilesystemTools`) and the system-prompt notes in this package both
9
+ * need the answer, and they must never derive it separately: a prompt that names a tool the filter
10
+ * did not register tells the model to call something that does not exist. {@link
11
+ * isFilesystemToolRegistered} is that one derivation; both call it.
12
+ */
13
+ import { type BuiltInToolAccess } from '#src/config/tool-descriptions.js';
14
+ /** The `filesystem` config union: an allow-list of tool names, or one of the three modes. */
15
+ export type FilesystemToolsConfig = string[] | 'all' | 'read' | 'none';
16
+ /**
17
+ * The filesystem tool that creates a file from supplied content.
18
+ *
19
+ * Exported as a constant because prompt text names it literally: the note telling the model how to
20
+ * write a commit message interpolates this, so the name the model is told and the name the
21
+ * registration check asks about cannot drift apart.
22
+ */
23
+ export declare const WRITE_FILE_TOOL_NAME = "write_file";
24
+ /**
25
+ * Whether a filesystem tool is registered under the given `filesystem` config.
26
+ *
27
+ * `access` is the tool's own read/write class — the runtime `gthFileSystemType` the toolkit stamps
28
+ * on each tool, or {@link BUILT_IN_TOOL_ACCESS} for a caller that has only a name. A tool with no
29
+ * class is never covered by `'read'`; it can still be named explicitly in the array form.
30
+ *
31
+ * The array form is an allow-list of tool NAMES which may also carry the `'read'` and `'all'`
32
+ * keywords, so `['read', 'write_file']` means "every read tool, plus write_file". A value that is
33
+ * neither a known mode nor an array leaves the toolset unrestricted, matching the filter's own
34
+ * fallback, so an absent or malformed value never silently strips the model's tools.
35
+ */
36
+ export declare function isFilesystemToolRegistered(filesystemConfig: FilesystemToolsConfig | undefined, toolName: string | undefined, access: BuiltInToolAccess | undefined): boolean;
37
+ /**
38
+ * Whether {@link WRITE_FILE_TOOL_NAME} is registered under the given `filesystem` config — the
39
+ * question the commit-message guidance asks before it names the tool.
40
+ */
41
+ export declare function isWriteFileToolRegistered(filesystemConfig: FilesystemToolsConfig | undefined): boolean;
@@ -0,0 +1,56 @@
1
+ /**
2
+ * @packageDocumentation
3
+ * The single interpretation of the `filesystem` config value: **which filesystem tools it
4
+ * registers**.
5
+ *
6
+ * `filesystem` is a union — `'all'`, `'read'`, `'none'`, or a `string[]` of tool names — so any
7
+ * two-value check ("is it `read` or `none`?") is wrong by construction. The toolkit filter in
8
+ * `@gaunt-sloth/agent` (`filterFilesystemTools`) and the system-prompt notes in this package both
9
+ * need the answer, and they must never derive it separately: a prompt that names a tool the filter
10
+ * did not register tells the model to call something that does not exist. {@link
11
+ * isFilesystemToolRegistered} is that one derivation; both call it.
12
+ */
13
+ import { BUILT_IN_TOOL_ACCESS } from '#src/config/tool-descriptions.js';
14
+ /**
15
+ * The filesystem tool that creates a file from supplied content.
16
+ *
17
+ * Exported as a constant because prompt text names it literally: the note telling the model how to
18
+ * write a commit message interpolates this, so the name the model is told and the name the
19
+ * registration check asks about cannot drift apart.
20
+ */
21
+ export const WRITE_FILE_TOOL_NAME = 'write_file';
22
+ /**
23
+ * Whether a filesystem tool is registered under the given `filesystem` config.
24
+ *
25
+ * `access` is the tool's own read/write class — the runtime `gthFileSystemType` the toolkit stamps
26
+ * on each tool, or {@link BUILT_IN_TOOL_ACCESS} for a caller that has only a name. A tool with no
27
+ * class is never covered by `'read'`; it can still be named explicitly in the array form.
28
+ *
29
+ * The array form is an allow-list of tool NAMES which may also carry the `'read'` and `'all'`
30
+ * keywords, so `['read', 'write_file']` means "every read tool, plus write_file". A value that is
31
+ * neither a known mode nor an array leaves the toolset unrestricted, matching the filter's own
32
+ * fallback, so an absent or malformed value never silently strips the model's tools.
33
+ */
34
+ export function isFilesystemToolRegistered(filesystemConfig, toolName, access) {
35
+ if (filesystemConfig === 'none')
36
+ return false;
37
+ if (filesystemConfig === 'all')
38
+ return true;
39
+ if (filesystemConfig === 'read')
40
+ return access === 'read';
41
+ if (!Array.isArray(filesystemConfig))
42
+ return true;
43
+ if (filesystemConfig.includes('all'))
44
+ return true;
45
+ if (filesystemConfig.includes('read') && access === 'read')
46
+ return true;
47
+ return filesystemConfig.some((name) => name !== 'read' && name !== 'all' && name === toolName && !!toolName);
48
+ }
49
+ /**
50
+ * Whether {@link WRITE_FILE_TOOL_NAME} is registered under the given `filesystem` config — the
51
+ * question the commit-message guidance asks before it names the tool.
52
+ */
53
+ export function isWriteFileToolRegistered(filesystemConfig) {
54
+ return isFilesystemToolRegistered(filesystemConfig, WRITE_FILE_TOOL_NAME, BUILT_IN_TOOL_ACCESS[WRITE_FILE_TOOL_NAME]);
55
+ }
56
+ //# sourceMappingURL=filesystem-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filesystem-tools.js","sourceRoot":"","sources":["../../src/config/filesystem-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,oBAAoB,EAA0B,MAAM,kCAAkC,CAAC;AAKhG;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAAC;AAEjD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,0BAA0B,CACxC,gBAAmD,EACnD,QAA4B,EAC5B,MAAqC;IAErC,IAAI,gBAAgB,KAAK,MAAM;QAAE,OAAO,KAAK,CAAC;IAC9C,IAAI,gBAAgB,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC;IAC5C,IAAI,gBAAgB,KAAK,MAAM;QAAE,OAAO,MAAM,KAAK,MAAM,CAAC;IAC1D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAAE,OAAO,IAAI,CAAC;IAClD,IAAI,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAClD,IAAI,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IACxE,OAAO,gBAAgB,CAAC,IAAI,CAC1B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAC/E,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CACvC,gBAAmD;IAEnD,OAAO,0BAA0B,CAC/B,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,CAAC,oBAAoB,CAAC,CAC3C,CAAC;AACJ,CAAC"}
@@ -127,6 +127,36 @@ export declare function hasProjectConfig(commandLineConfigOverrides: CommandLine
127
127
  * Reuses CFG-8's project + global detection so the two paths can never disagree.
128
128
  */
129
129
  export declare function hasAnyConfig(commandLineConfigOverrides: CommandLineConfigOverrides): Promise<boolean>;
130
+ /**
131
+ * CFG-37 — the layered value of the top-level `tui` config key, read BEFORE a session picks its
132
+ * surface. `chat`/`code` choose between the Ink TUI and the readline session in the app's
133
+ * `startSession` dispatcher, and each surface then loads its own config via {@link initConfig} — so
134
+ * at the moment of the choice there is no resolved {@link GthConfig} to consult, and this is the
135
+ * seam that supplies the one key the choice needs.
136
+ *
137
+ * Layering matches a run: the discovered PROJECT layer wins over the GLOBAL one, and a layer that
138
+ * does not set `tui` defers to the next rather than overriding it with `undefined`. A scalar needs
139
+ * no deep merge, so this reads the two layers and picks — it does not fork the merge engine.
140
+ *
141
+ * QUIET and fail-soft for the layers it reads ITSELF: it does not validate them and does not
142
+ * `exit` on a malformed one, because the caller runs moments before {@link initConfig}, which
143
+ * validates every layer and reports the very same problem — warning twice about one file is worse
144
+ * than not warning here. A failed read resolves to `undefined`, i.e. "nobody set it", and the
145
+ * surface auto-detects exactly as it does for a run with no config.
146
+ *
147
+ * ONE EXCEPTION, and it is deliberate: a `tui` may be INHERITED through a GS2-41 profile `extends`
148
+ * chain, so this walks that chain via the SHARED {@link resolveConfigExtends} rather than forking
149
+ * it — and that traversal owns its own reporting. It validates each base layer (so a base's own
150
+ * unknown-key warning can appear here as well as from `initConfig`) and hard-`exit`s on a cycle, a
151
+ * missing base or a malformed base. What the user sees is unchanged — `initConfig` exits on the
152
+ * same chain with the same message a moment later — but it now happens EARLIER, at surface
153
+ * selection rather than at config load. Forking the walk to silence it would mean a second
154
+ * inheritance engine; ignoring `extends` would mean silently dropping an inherited `tui`.
155
+ *
156
+ * Ordering: this is DETECTION, so per the GS2-11 invariant above it must run before any
157
+ * {@link initConfig} in the process — as it does, alongside {@link hasAnyConfig} in `startSession`.
158
+ */
159
+ export declare function loadConfiguredTui(commandLineConfigOverrides: CommandLineConfigOverrides): Promise<boolean | undefined>;
130
160
  /**
131
161
  * Initialize configuration by loading from available config files
132
162
  * @returns The loaded GthConfig
@@ -9,6 +9,7 @@ import { StatusLevel } from '#src/core/types.js';
9
9
  import { displayDebug, displayError, displayInfo, displayWarning, setConsoleLevel, } from '#src/utils/consoleUtils.js';
10
10
  import { findApprovalsGrammarIssues, findApprovalsRaterProfiles, findDeprecatedConfigIssues, findUnknownTopLevelKeys, formatConfigValidationError, formatDeprecatedConfigIssues, isRecordConfig, rawGthConfigSchema, unresolvedRaterProfileMessage, validateRawGthConfig, } from '#src/config/schema.js';
11
11
  import { parseJsonc } from '#src/config/jsonc.js';
12
+ import { isMissingProviderKeyError, MissingProviderKeyError } from '#src/config/providerKeys.js';
12
13
  import { getGslothConfigReadPath, importExternalFile } from '#src/utils/fileUtils.js';
13
14
  import { getGlobalGslothConfigReadPath } from '#src/utils/globalConfigUtils.js';
14
15
  import { env, error, exit, getCurrentWorkDir, isStdoutTTY, isTTY, setProjectDir, setUseColour, } from '#src/utils/systemUtils.js';
@@ -493,6 +494,76 @@ export async function hasAnyConfig(commandLineConfigOverrides) {
493
494
  }
494
495
  return (await loadGlobalRawConfig()) !== undefined;
495
496
  }
497
+ /**
498
+ * CFG-37 — the layered value of the top-level `tui` config key, read BEFORE a session picks its
499
+ * surface. `chat`/`code` choose between the Ink TUI and the readline session in the app's
500
+ * `startSession` dispatcher, and each surface then loads its own config via {@link initConfig} — so
501
+ * at the moment of the choice there is no resolved {@link GthConfig} to consult, and this is the
502
+ * seam that supplies the one key the choice needs.
503
+ *
504
+ * Layering matches a run: the discovered PROJECT layer wins over the GLOBAL one, and a layer that
505
+ * does not set `tui` defers to the next rather than overriding it with `undefined`. A scalar needs
506
+ * no deep merge, so this reads the two layers and picks — it does not fork the merge engine.
507
+ *
508
+ * QUIET and fail-soft for the layers it reads ITSELF: it does not validate them and does not
509
+ * `exit` on a malformed one, because the caller runs moments before {@link initConfig}, which
510
+ * validates every layer and reports the very same problem — warning twice about one file is worse
511
+ * than not warning here. A failed read resolves to `undefined`, i.e. "nobody set it", and the
512
+ * surface auto-detects exactly as it does for a run with no config.
513
+ *
514
+ * ONE EXCEPTION, and it is deliberate: a `tui` may be INHERITED through a GS2-41 profile `extends`
515
+ * chain, so this walks that chain via the SHARED {@link resolveConfigExtends} rather than forking
516
+ * it — and that traversal owns its own reporting. It validates each base layer (so a base's own
517
+ * unknown-key warning can appear here as well as from `initConfig`) and hard-`exit`s on a cycle, a
518
+ * missing base or a malformed base. What the user sees is unchanged — `initConfig` exits on the
519
+ * same chain with the same message a moment later — but it now happens EARLIER, at surface
520
+ * selection rather than at config load. Forking the walk to silence it would mean a second
521
+ * inheritance engine; ignoring `extends` would mean silently dropping an inherited `tui`.
522
+ *
523
+ * Ordering: this is DETECTION, so per the GS2-11 invariant above it must run before any
524
+ * {@link initConfig} in the process — as it does, alongside {@link hasAnyConfig} in `startSession`.
525
+ */
526
+ export async function loadConfiguredTui(commandLineConfigOverrides) {
527
+ const projectTui = await readProjectConfiguredTui(commandLineConfigOverrides);
528
+ if (projectTui !== undefined) {
529
+ return projectTui;
530
+ }
531
+ const globalRaw = await loadGlobalRawConfigUnvalidated();
532
+ const globalTui = globalRaw?.raw.tui;
533
+ return typeof globalTui === 'boolean' ? globalTui : undefined;
534
+ }
535
+ /** The PROJECT layer's `tui`, or undefined when there is no project config or it does not set it. */
536
+ async function readProjectConfiguredTui(commandLineConfigOverrides) {
537
+ const discovered = findProjectConfigPath(commandLineConfigOverrides);
538
+ if (!discovered) {
539
+ return undefined;
540
+ }
541
+ let raw;
542
+ try {
543
+ raw = await readRawConfigAtPath(discovered.path);
544
+ }
545
+ catch (e) {
546
+ // Quiet by design — see the note on loadConfiguredTui. initConfig reports this same file.
547
+ displayDebug(e instanceof Error ? e : String(e));
548
+ return undefined;
549
+ }
550
+ // GS2-41 — a named profile may inherit `tui` from the profile it extends, so compose the chain
551
+ // the way a run does, for EVERY config format. `initConfig` resolves `extends` on both of its
552
+ // branches (the JSON one below and {@link tryModuleConfig}), and `validateConfig` walks it with
553
+ // no format gate at all — so a format gate here would answer `undefined` for a `.js`/`.mjs`
554
+ // profile whose `tui` is inherited while the run composes it, which is precisely the
555
+ // reader-vs-run divergence this seam exists to prevent.
556
+ //
557
+ // Deliberately NOT inside the try above: on a cycle / missing base / malformed base,
558
+ // `resolveConfigExtends` reports the problem and calls `exit(1)`, which ends the process — a
559
+ // catch could not suppress that, and the sentinel throw past it is load-bearing under the specs'
560
+ // mocked `exit` (the convention used throughout this file), so swallowing it would let a test
561
+ // observe a silent fall-through production can never reach.
562
+ if (typeof raw.extends === 'string') {
563
+ raw = await resolveConfigExtends(raw, commandLineConfigOverrides.identityProfile);
564
+ }
565
+ return typeof raw.tui === 'boolean' ? raw.tui : undefined;
566
+ }
496
567
  /**
497
568
  * Initialize configuration by loading from available config files
498
569
  * @returns The loaded GthConfig
@@ -594,6 +665,14 @@ export async function initConfig(commandLineConfigOverrides) {
594
665
  }
595
666
  }
596
667
  catch (e) {
668
+ // CFG-35 — the format fall-through must not swallow a resolvable-config-but-no-API-key
669
+ // failure. This catch exists to move on to the next config FORMAT when the JSON layer could
670
+ // not be read; a config that read fine and named a provider we have no key for is not a
671
+ // read failure, and falling through would end in the terminal "No configuration file found"
672
+ // exit — the opposite of catchable, and a misleading message besides.
673
+ if (isMissingProviderKeyError(e)) {
674
+ throw e;
675
+ }
597
676
  displayDebug(e instanceof Error ? e : String(e));
598
677
  displayError(`Failed to read config from ${jsonConfigName}, will try other formats.`);
599
678
  // Continue to try other formats
@@ -724,11 +803,31 @@ export async function tryJsonConfig(jsonConfig, commandLineConfigOverrides) {
724
803
  catch (e) {
725
804
  if (e instanceof Error && e.message.includes('Cannot find module')) {
726
805
  displayError(`LLM type '${jsonConfig.llm.type}' not supported.`);
806
+ exit(1);
727
807
  }
728
808
  else {
729
- displayError(`Error processing LLM config: ${e instanceof Error ? e.message : String(e)}`);
809
+ const message = `Error processing LLM config: ${e instanceof Error ? e.message : String(e)}`;
810
+ // CFG-35 — a provider that could not be built because NO API key is resolvable for it is a
811
+ // CATCHABLE error, not a process exit. Several provider SDKs validate the key in their
812
+ // constructor (groq, anthropic, xai, deepseek, openrouter) and two of our factories check it
813
+ // themselves (openrouter, huggingface); every one of those throws landed here and killed the
814
+ // process, so a multi-identity `gth eval` run — the case that is DESIGNED for partial
815
+ // secrets — lost every other identity's result and wrote no artifacts at all.
816
+ //
817
+ // Whether this is a missing key is decided from the environment, never from the SDK's
818
+ // wording (see findMissingProviderKey). Imported dynamically because it is an error-path
819
+ // question and a static import of the provider layer would put a cycle through the config
820
+ // barrel. The message is exactly the string this branch has always printed, so a caller that
821
+ // reports `error.message` produces the same output; the provider and variable names ride as
822
+ // FIELDS, which is what a report consumer needs to tell a missing key from an outage.
823
+ const { findMissingProviderKey } = await import('#src/providers/modelDiscovery.js');
824
+ const missingKey = findMissingProviderKey(jsonConfig.llm?.type, jsonConfig.llm);
825
+ if (missingKey) {
826
+ throw new MissingProviderKeyError(message, missingKey, { cause: e });
827
+ }
828
+ displayError(message);
829
+ exit(1);
730
830
  }
731
- exit(1);
732
831
  }
733
832
  // This throw is unreachable due to exit(1) above, but satisfies TS type analysis and prevents tests from exiting
734
833
  throw new Error('Unexpected error occurred.');
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * @packageDocumentation
3
+ * The catchable error a config load raises when a provider cannot be constructed because **no API
4
+ * key is resolvable at all** — from the config's own `llm.apiKey`, from its
5
+ * `llm.apiKeyEnvironmentVariable`, or from any environment variable that provider accepts.
6
+ *
7
+ * Deliberately dependency-free (no imports beyond types) so the config barrel, the provider layer
8
+ * and downstream consumers can all reach it without an import cycle.
9
+ *
10
+ * **Why this is an error object and not a process exit.** Building a chat model is a *library*
11
+ * operation, and a library that terminates the process denies every caller the chance to classify
12
+ * the failure. A multi-identity `gth eval` run, in particular, is designed for partial secrets: one
13
+ * identity without a key must not stop the other identities being graded, and the run must still be
14
+ * able to say which identity failed and why. That classification needs the provider and the
15
+ * variable name as DATA, not as prose in a message, which is why {@link MissingProviderKeyError}
16
+ * carries {@link MissingProviderKeyError.provider} and
17
+ * {@link MissingProviderKeyError.envVars} as fields. Callers that legitimately want to terminate —
18
+ * the CLI entry points — catch it at their top level, where the exit code is chosen deliberately.
19
+ */
20
+ /**
21
+ * What a key-resolution check knows about a provider that has no usable key.
22
+ *
23
+ * `envVars` lists every variable name that WOULD have supplied the key, in the order the provider
24
+ * checks them, so a message can name the canonical one and still mention the accepted aliases. A
25
+ * config-declared `apiKeyEnvironmentVariable` comes first when there is one, because that is the
26
+ * name the user chose and the one they will look for.
27
+ */
28
+ export interface MissingProviderKeyDetails {
29
+ /** The `llm.type` of the provider that could not be constructed (e.g. `anthropic`, `groq`). */
30
+ provider: string;
31
+ /** The variable to set — the first of {@link envVars}, or undefined if the provider declares none. */
32
+ envVar: string | undefined;
33
+ /** Every environment variable this provider accepts for its key, highest precedence first. */
34
+ envVars: readonly string[];
35
+ }
36
+ /**
37
+ * A provider could not be built because no API key was resolvable for it.
38
+ *
39
+ * Thrown (never exited on) by the config loader, so `gth eval`, `gth batch`, the AG-UI/ACP servers
40
+ * and any embedding consumer can tell "this provider had no key" apart from "this provider broke".
41
+ */
42
+ export declare class MissingProviderKeyError extends Error implements MissingProviderKeyDetails {
43
+ /** Duck-typed marker so {@link isMissingProviderKeyError} works across duplicated module copies. */
44
+ readonly gthMissingProviderKey: true;
45
+ readonly provider: string;
46
+ readonly envVar: string | undefined;
47
+ readonly envVars: readonly string[];
48
+ constructor(message: string, details: MissingProviderKeyDetails, options?: {
49
+ cause?: unknown;
50
+ });
51
+ /**
52
+ * Serialize the machine-readable half. `JSON.stringify(error)` would otherwise drop `message`
53
+ * (an Error's `message` is a non-enumerable own property), which is exactly the field a report
54
+ * consumer shows a human next to the provider and the variable name.
55
+ */
56
+ toJSON(): {
57
+ name: string;
58
+ message: string;
59
+ } & MissingProviderKeyDetails;
60
+ }
61
+ /**
62
+ * True when `value` is a {@link MissingProviderKeyError}.
63
+ *
64
+ * Duck-typed on the marker property rather than `instanceof` on purpose: a consumer that ends up
65
+ * with two copies of `@gaunt-sloth/core` on disk (a `file:` dep, a hoisting split) would fail an
66
+ * `instanceof` check against a genuinely-correct error and misreport a missing key as a provider
67
+ * outage — the one distinction this error exists to make.
68
+ */
69
+ export declare function isMissingProviderKeyError(value: unknown): value is MissingProviderKeyError;
@@ -0,0 +1,69 @@
1
+ /**
2
+ * @packageDocumentation
3
+ * The catchable error a config load raises when a provider cannot be constructed because **no API
4
+ * key is resolvable at all** — from the config's own `llm.apiKey`, from its
5
+ * `llm.apiKeyEnvironmentVariable`, or from any environment variable that provider accepts.
6
+ *
7
+ * Deliberately dependency-free (no imports beyond types) so the config barrel, the provider layer
8
+ * and downstream consumers can all reach it without an import cycle.
9
+ *
10
+ * **Why this is an error object and not a process exit.** Building a chat model is a *library*
11
+ * operation, and a library that terminates the process denies every caller the chance to classify
12
+ * the failure. A multi-identity `gth eval` run, in particular, is designed for partial secrets: one
13
+ * identity without a key must not stop the other identities being graded, and the run must still be
14
+ * able to say which identity failed and why. That classification needs the provider and the
15
+ * variable name as DATA, not as prose in a message, which is why {@link MissingProviderKeyError}
16
+ * carries {@link MissingProviderKeyError.provider} and
17
+ * {@link MissingProviderKeyError.envVars} as fields. Callers that legitimately want to terminate —
18
+ * the CLI entry points — catch it at their top level, where the exit code is chosen deliberately.
19
+ */
20
+ /** Marker property carried by every {@link MissingProviderKeyError}; see {@link isMissingProviderKeyError}. */
21
+ const MISSING_PROVIDER_KEY_MARKER = 'gthMissingProviderKey';
22
+ /**
23
+ * A provider could not be built because no API key was resolvable for it.
24
+ *
25
+ * Thrown (never exited on) by the config loader, so `gth eval`, `gth batch`, the AG-UI/ACP servers
26
+ * and any embedding consumer can tell "this provider had no key" apart from "this provider broke".
27
+ */
28
+ export class MissingProviderKeyError extends Error {
29
+ /** Duck-typed marker so {@link isMissingProviderKeyError} works across duplicated module copies. */
30
+ gthMissingProviderKey = true;
31
+ provider;
32
+ envVar;
33
+ envVars;
34
+ constructor(message, details, options) {
35
+ super(message, options);
36
+ this.name = 'MissingProviderKeyError';
37
+ this.provider = details.provider;
38
+ this.envVar = details.envVar;
39
+ this.envVars = details.envVars;
40
+ }
41
+ /**
42
+ * Serialize the machine-readable half. `JSON.stringify(error)` would otherwise drop `message`
43
+ * (an Error's `message` is a non-enumerable own property), which is exactly the field a report
44
+ * consumer shows a human next to the provider and the variable name.
45
+ */
46
+ toJSON() {
47
+ return {
48
+ name: this.name,
49
+ message: this.message,
50
+ provider: this.provider,
51
+ envVar: this.envVar,
52
+ envVars: [...this.envVars],
53
+ };
54
+ }
55
+ }
56
+ /**
57
+ * True when `value` is a {@link MissingProviderKeyError}.
58
+ *
59
+ * Duck-typed on the marker property rather than `instanceof` on purpose: a consumer that ends up
60
+ * with two copies of `@gaunt-sloth/core` on disk (a `file:` dep, a hoisting split) would fail an
61
+ * `instanceof` check against a genuinely-correct error and misreport a missing key as a provider
62
+ * outage — the one distinction this error exists to make.
63
+ */
64
+ export function isMissingProviderKeyError(value) {
65
+ return (typeof value === 'object' &&
66
+ value !== null &&
67
+ value[MISSING_PROVIDER_KEY_MARKER] === true);
68
+ }
69
+ //# sourceMappingURL=providerKeys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerKeys.js","sourceRoot":"","sources":["../../src/config/providerKeys.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,+GAA+G;AAC/G,MAAM,2BAA2B,GAAG,uBAAuB,CAAC;AAmB5D;;;;;GAKG;AACH,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAChD,oGAAoG;IAC3F,qBAAqB,GAAG,IAAa,CAAC;IACtC,QAAQ,CAAS;IACjB,MAAM,CAAqB;IAC3B,OAAO,CAAoB;IAEpC,YAAY,OAAe,EAAE,OAAkC,EAAE,OAA6B;QAC5F,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;QACtC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,MAAM;QACJ,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;SAC3B,CAAC;IACJ,CAAC;CACF;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAAc;IACtD,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACb,KAAiC,CAAC,2BAA2B,CAAC,KAAK,IAAI,CACzE,CAAC;AACJ,CAAC"}
@@ -594,6 +594,7 @@ export declare const rawGthConfigSchema: z.ZodObject<{
594
594
  writeBinaryOutputsToFile: z.ZodOptional<z.ZodBoolean>;
595
595
  useColour: z.ZodOptional<z.ZodBoolean>;
596
596
  useMouse: z.ZodOptional<z.ZodBoolean>;
597
+ tui: z.ZodOptional<z.ZodBoolean>;
597
598
  streamSessionInferenceLog: z.ZodOptional<z.ZodBoolean>;
598
599
  canInterruptInferenceWithEsc: z.ZodOptional<z.ZodBoolean>;
599
600
  debugLog: z.ZodOptional<z.ZodBoolean>;
@@ -779,6 +779,15 @@ export const rawGthConfigSchema = z.looseObject({
779
779
  // reason as `useColour`: absence is what tells "the user chose true" from the `true` in
780
780
  // `defaults.ts`, and rung 2 collapses into rung 4 without it.
781
781
  useMouse: z.boolean().optional(),
782
+ // CFG-37 — persistent surface preference for the `chat`/`code` sessions: `true` asks for the Ink
783
+ // TUI, `false` for the plain readline session. MUST stay `.optional()` for the same reason as
784
+ // `useColour`/`useMouse`: absence is what distinguishes "the user chose readline" from "nobody
785
+ // said", and the auto-detect rung collapses without it. Ranked BELOW the `--tui`/`--no-tui` flags
786
+ // and the `GTH_NO_TUI` escape hatch, and below the capability gates (no TTY, `TERM=dumb`, `ink`
787
+ // unavailable) which are checks rather than preferences — so `true` degrades to readline instead
788
+ // of forcing a crash. The decision itself is `shouldUseTui` in the app package.
789
+ // User docs: docs/guides/interactive-sessions.md
790
+ tui: z.boolean().optional(),
782
791
  streamSessionInferenceLog: z.boolean().optional(),
783
792
  canInterruptInferenceWithEsc: z.boolean().optional(),
784
793
  debugLog: z.boolean().optional(),