@telora/daemon 0.17.21 → 0.17.25

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/build-info.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
- "commitSha": "f25027aa",
3
- "builtAt": "2026-06-06T16:21:41.439Z",
2
+ "commitSha": "34aff33d",
3
+ "builtAt": "2026-06-08T14:49:02.998Z",
4
4
  "expectedMigrations": [
5
5
  "20250829113330_create_org_nodes_table.sql",
6
6
  "20250829113402_fix_function_security_search_path.sql",
@@ -607,6 +607,8 @@
607
607
  "20260531190930_seed_prd_workflow.sql",
608
608
  "20260601094904_prd_default_status_active.sql",
609
609
  "20260603134011_add_delivery_transitions.sql",
610
- "20260603225314_add_stopped_agent_session_status.sql"
610
+ "20260603225314_add_stopped_agent_session_status.sql",
611
+ "20260607150700_product_local_endpoint.sql",
612
+ "20260607150730_redeem_returns_local_model.sql"
611
613
  ]
612
614
  }
@@ -7,10 +7,11 @@
7
7
  * principle). Mirrors the centralization of `shouldRunLoop()` in
8
8
  * focus-engine.ts: one exported pure function, no side effects, easy to test.
9
9
  *
10
- * Resolution order for a pass (coding | review):
10
+ * Resolution order for a pass (coding | review), most-specific wins:
11
11
  * 1. per-focus override for that pass (focusOverride[pass], if a truthy id)
12
- * 2. org-level default (orgDefault, if a truthy id)
13
- * 3. the global default (DEFAULT_BACKEND_ID = 'claude')
12
+ * 2. per-product default (productDefault, if a truthy id)
13
+ * 3. org-level default (orgDefault, if a truthy id)
14
+ * 4. the global default (DEFAULT_BACKEND_ID = 'claude')
14
15
  *
15
16
  * Guard: a resolved id that is not a registered backend (typo, or an engine the
16
17
  * host lacks) falls back to the default rather than spawning on a bogus engine.
@@ -24,7 +25,7 @@ export interface EngineOverride {
24
25
  review?: string | null;
25
26
  }
26
27
  /** Where the resolved engine came from (always logged). */
27
- export type EngineSource = 'focus-override' | 'org-default' | 'default' | 'fallback';
28
+ export type EngineSource = 'focus-override' | 'product-default' | 'org-default' | 'default' | 'fallback';
28
29
  export interface ResolvedEngine {
29
30
  engineId: string;
30
31
  source: EngineSource;
@@ -34,6 +35,8 @@ export interface ResolveBackendArgs {
34
35
  focusOverride?: EngineOverride | null;
35
36
  /** The pass being spawned. */
36
37
  pass: EnginePass;
38
+ /** Per-product default engine id (null/absent = inherit the org default). */
39
+ productDefault?: string | null;
37
40
  /** Org-level default engine id (null/absent = the global default). */
38
41
  orgDefault?: string | null;
39
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/backends/resolve.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH,sDAAsD;AACtD,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE7C,+EAA+E;AAC/E,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,2DAA2D;AAC3D,MAAM,MAAM,YAAY,GAAG,gBAAgB,GAAG,aAAa,GAAG,SAAS,GAAG,UAAU,CAAC;AAErF,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,YAAY,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,sEAAsE;IACtE,aAAa,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;IACtC,8BAA8B;IAC9B,IAAI,EAAE,UAAU,CAAC;IACjB,sEAAsE;IACtE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AASD;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,kBAAkB,GAAG,cAAc,CA4BvE"}
1
+ {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/backends/resolve.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,sDAAsD;AACtD,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE7C,+EAA+E;AAC/E,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,2DAA2D;AAC3D,MAAM,MAAM,YAAY,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,aAAa,GAAG,SAAS,GAAG,UAAU,CAAC;AAEzG,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,YAAY,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,sEAAsE;IACtE,aAAa,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;IACtC,8BAA8B;IAC9B,IAAI,EAAE,UAAU,CAAC;IACjB,6EAA6E;IAC7E,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,sEAAsE;IACtE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AASD;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,kBAAkB,GAAG,cAAc,CAgCvE"}
@@ -7,10 +7,11 @@
7
7
  * principle). Mirrors the centralization of `shouldRunLoop()` in
8
8
  * focus-engine.ts: one exported pure function, no side effects, easy to test.
9
9
  *
10
- * Resolution order for a pass (coding | review):
10
+ * Resolution order for a pass (coding | review), most-specific wins:
11
11
  * 1. per-focus override for that pass (focusOverride[pass], if a truthy id)
12
- * 2. org-level default (orgDefault, if a truthy id)
13
- * 3. the global default (DEFAULT_BACKEND_ID = 'claude')
12
+ * 2. per-product default (productDefault, if a truthy id)
13
+ * 3. org-level default (orgDefault, if a truthy id)
14
+ * 4. the global default (DEFAULT_BACKEND_ID = 'claude')
14
15
  *
15
16
  * Guard: a resolved id that is not a registered backend (typo, or an engine the
16
17
  * host lacks) falls back to the default rather than spawning on a bogus engine.
@@ -29,6 +30,7 @@ function clean(id) {
29
30
  */
30
31
  export function resolveBackend(args) {
31
32
  const overrideId = clean(args.focusOverride?.[args.pass]);
33
+ const productId = clean(args.productDefault);
32
34
  const orgId = clean(args.orgDefault);
33
35
  let candidate;
34
36
  let source;
@@ -36,6 +38,10 @@ export function resolveBackend(args) {
36
38
  candidate = overrideId;
37
39
  source = 'focus-override';
38
40
  }
41
+ else if (productId) {
42
+ candidate = productId;
43
+ source = 'product-default';
44
+ }
39
45
  else if (orgId) {
40
46
  candidate = orgId;
41
47
  source = 'org-default';
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/backends/resolve.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AA4B/D,uEAAuE;AACvE,SAAS,KAAK,CAAC,EAA6B;IAC1C,IAAI,OAAO,EAAE,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACxC,MAAM,OAAO,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;IAC1B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,IAAwB;IACrD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1D,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAErC,IAAI,SAAiB,CAAC;IACtB,IAAI,MAAoB,CAAC;IACzB,IAAI,UAAU,EAAE,CAAC;QACf,SAAS,GAAG,UAAU,CAAC;QACvB,MAAM,GAAG,gBAAgB,CAAC;IAC5B,CAAC;SAAM,IAAI,KAAK,EAAE,CAAC;QACjB,SAAS,GAAG,KAAK,CAAC;QAClB,MAAM,GAAG,aAAa,CAAC;IACzB,CAAC;SAAM,CAAC;QACN,SAAS,GAAG,kBAAkB,CAAC;QAC/B,MAAM,GAAG,SAAS,CAAC;IACrB,CAAC;IAED,4EAA4E;IAC5E,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3B,IAAI,SAAS,KAAK,kBAAkB,EAAE,CAAC;YACrC,OAAO,CAAC,IAAI,CACV,6BAA6B,SAAS,cAAc,MAAM,iCAAiC;gBAC3F,oBAAoB,kBAAkB,IAAI,CAC3C,CAAC;YACF,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QAC9D,CAAC;IACH,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/backends/resolve.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AA8B/D,uEAAuE;AACvE,SAAS,KAAK,CAAC,EAA6B;IAC1C,IAAI,OAAO,EAAE,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACxC,MAAM,OAAO,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;IAC1B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,IAAwB;IACrD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1D,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAErC,IAAI,SAAiB,CAAC;IACtB,IAAI,MAAoB,CAAC;IACzB,IAAI,UAAU,EAAE,CAAC;QACf,SAAS,GAAG,UAAU,CAAC;QACvB,MAAM,GAAG,gBAAgB,CAAC;IAC5B,CAAC;SAAM,IAAI,SAAS,EAAE,CAAC;QACrB,SAAS,GAAG,SAAS,CAAC;QACtB,MAAM,GAAG,iBAAiB,CAAC;IAC7B,CAAC;SAAM,IAAI,KAAK,EAAE,CAAC;QACjB,SAAS,GAAG,KAAK,CAAC;QAClB,MAAM,GAAG,aAAa,CAAC;IACzB,CAAC;SAAM,CAAC;QACN,SAAS,GAAG,kBAAkB,CAAC;QAC/B,MAAM,GAAG,SAAS,CAAC;IACrB,CAAC;IAED,4EAA4E;IAC5E,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3B,IAAI,SAAS,KAAK,kBAAkB,EAAE,CAAC;YACrC,OAAO,CAAC,IAAI,CACV,6BAA6B,SAAS,cAAc,MAAM,iCAAiC;gBAC3F,oBAAoB,kBAAkB,IAAI,CAC3C,CAAC;YACF,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QAC9D,CAAC;IACH,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;AACzC,CAAC"}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Codex local-model provisioning (writer half).
3
+ *
4
+ * Renders a per-product Codex `config.toml` that points Codex at a local
5
+ * model server via a `telora_local` provider profile, and writes it into an
6
+ * ISOLATED per-product CODEX_HOME under the daemon's global state dir
7
+ * (`~/.telora/codex/<productId>/`, honoring $TELORA_STATE_DIR).
8
+ *
9
+ * Two security invariants drive this module:
10
+ * 1. The local-model API KEY is NEVER written to disk -- the profile only
11
+ * references the env var NAME (`env_key = "TELORA_LOCAL_API_KEY"`). Codex
12
+ * reads the actual secret from the environment at run time.
13
+ * 2. `wire_api` is ALWAYS `"responses"`. Codex 0.133 dropped chat-completions;
14
+ * `responses` is the only wire protocol that works, so we hard-code it and
15
+ * ignore any caller-supplied override.
16
+ *
17
+ * The functions here are pure / deterministic except `writeProductCodexHome`,
18
+ * which performs the (idempotent) filesystem write. `renderManualCodexProfile`
19
+ * performs NO filesystem writes -- it returns a human-facing block to print.
20
+ */
21
+ /**
22
+ * The env var NAME that carries the local-model API key. The key value itself
23
+ * is never persisted -- only this name is written into config.toml so Codex
24
+ * resolves the secret from the environment.
25
+ */
26
+ export declare const TELORA_LOCAL_API_KEY_ENV = "TELORA_LOCAL_API_KEY";
27
+ /** The provider profile id used inside the generated config.toml. */
28
+ export declare const TELORA_LOCAL_PROVIDER_ID = "telora_local";
29
+ /**
30
+ * Coordinates for the local model server the generated profile points at.
31
+ */
32
+ export interface CodexLocalCoords {
33
+ /** Base URL of the local OpenAI-compatible server (e.g. http://10.1.1.146:8888/v1). */
34
+ baseUrl: string;
35
+ /** Model id the server exposes (passed to Codex as `-m`). */
36
+ model: string;
37
+ /**
38
+ * Wire protocol hint. IGNORED if anything other than "responses" -- Codex
39
+ * 0.133 dropped chat-completions, so we always emit "responses".
40
+ */
41
+ wireApi?: string;
42
+ }
43
+ export interface CodexProvisionIO {
44
+ out?: (msg: string) => void;
45
+ err?: (msg: string) => void;
46
+ }
47
+ export interface WriteProductCodexHomeResult {
48
+ /** Absolute path of the per-product CODEX_HOME directory. */
49
+ codexHome: string;
50
+ /** Absolute path of the written config.toml inside CODEX_HOME. */
51
+ configPath: string;
52
+ }
53
+ /**
54
+ * Resolve the ISOLATED per-product CODEX_HOME directory under the daemon's
55
+ * global state dir. CWD-independent; honors $TELORA_STATE_DIR via
56
+ * resolveGlobalStateDir(). Does NOT create the directory.
57
+ */
58
+ export declare function resolveProductCodexHome(productId: string): string;
59
+ /**
60
+ * Render the deterministic ASCII config.toml for the local provider profile.
61
+ *
62
+ * The API key is NEVER emitted -- only `env_key` (the env var NAME). `wire_api`
63
+ * is ALWAYS "responses" regardless of coords.wireApi.
64
+ *
65
+ * Throws if baseUrl or model contains a double-quote, backslash, or newline.
66
+ */
67
+ export declare function renderCodexConfigToml(coords: CodexLocalCoords): string;
68
+ /**
69
+ * Write the rendered config.toml into the per-product CODEX_HOME.
70
+ *
71
+ * Creates CODEX_HOME with mode 0700 (recursive) and writes config.toml with
72
+ * mode 0600. Idempotent: a re-run overwrites the file with identical content.
73
+ */
74
+ export declare function writeProductCodexHome(productId: string, coords: CodexLocalCoords, io?: CodexProvisionIO): WriteProductCodexHomeResult;
75
+ /**
76
+ * Render a human-facing block the operator can paste into their PERSONAL
77
+ * ~/.codex/config.toml. Returns a string ONLY -- performs no filesystem writes.
78
+ *
79
+ * Includes the same provider profile TOML, the export line for the API key
80
+ * (the operator substitutes their own value), and a note about the minimum
81
+ * context window the local server must load the model with.
82
+ */
83
+ export declare function renderManualCodexProfile(coords: CodexLocalCoords): string;
84
+ //# sourceMappingURL=codex-provision.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-provision.d.ts","sourceRoot":"","sources":["../../src/cli/codex-provision.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAMH;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,yBAAyB,CAAC;AAE/D,qEAAqE;AACrE,eAAO,MAAM,wBAAwB,iBAAiB,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,uFAAuF;IACvF,OAAO,EAAE,MAAM,CAAC;IAChB,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5B,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,2BAA2B;IAC1C,6DAA6D;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB,kEAAkE;IAClE,UAAU,EAAE,MAAM,CAAC;CACpB;AAeD;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEjE;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CActE;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,gBAAgB,EACxB,EAAE,CAAC,EAAE,gBAAgB,GACpB,2BAA2B,CAU7B;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAczE"}
@@ -0,0 +1,105 @@
1
+ /**
2
+ * Codex local-model provisioning (writer half).
3
+ *
4
+ * Renders a per-product Codex `config.toml` that points Codex at a local
5
+ * model server via a `telora_local` provider profile, and writes it into an
6
+ * ISOLATED per-product CODEX_HOME under the daemon's global state dir
7
+ * (`~/.telora/codex/<productId>/`, honoring $TELORA_STATE_DIR).
8
+ *
9
+ * Two security invariants drive this module:
10
+ * 1. The local-model API KEY is NEVER written to disk -- the profile only
11
+ * references the env var NAME (`env_key = "TELORA_LOCAL_API_KEY"`). Codex
12
+ * reads the actual secret from the environment at run time.
13
+ * 2. `wire_api` is ALWAYS `"responses"`. Codex 0.133 dropped chat-completions;
14
+ * `responses` is the only wire protocol that works, so we hard-code it and
15
+ * ignore any caller-supplied override.
16
+ *
17
+ * The functions here are pure / deterministic except `writeProductCodexHome`,
18
+ * which performs the (idempotent) filesystem write. `renderManualCodexProfile`
19
+ * performs NO filesystem writes -- it returns a human-facing block to print.
20
+ */
21
+ import { mkdirSync, writeFileSync } from 'node:fs';
22
+ import { resolve } from 'node:path';
23
+ import { resolveGlobalStateDir } from '../daemon-process.js';
24
+ /**
25
+ * The env var NAME that carries the local-model API key. The key value itself
26
+ * is never persisted -- only this name is written into config.toml so Codex
27
+ * resolves the secret from the environment.
28
+ */
29
+ export const TELORA_LOCAL_API_KEY_ENV = 'TELORA_LOCAL_API_KEY';
30
+ /** The provider profile id used inside the generated config.toml. */
31
+ export const TELORA_LOCAL_PROVIDER_ID = 'telora_local';
32
+ /**
33
+ * Reject values that would break out of a TOML double-quoted string. A
34
+ * double-quote, backslash, or newline in baseUrl/model could inject arbitrary
35
+ * TOML, so we fail closed rather than attempt escaping.
36
+ */
37
+ function assertTomlSafe(label, value) {
38
+ if (value.includes('"') || value.includes('\\') || value.includes('\n') || value.includes('\r')) {
39
+ throw new Error(`Invalid ${label}: must not contain a double-quote, backslash, or newline.`);
40
+ }
41
+ }
42
+ /**
43
+ * Resolve the ISOLATED per-product CODEX_HOME directory under the daemon's
44
+ * global state dir. CWD-independent; honors $TELORA_STATE_DIR via
45
+ * resolveGlobalStateDir(). Does NOT create the directory.
46
+ */
47
+ export function resolveProductCodexHome(productId) {
48
+ return resolve(resolveGlobalStateDir(), 'codex', productId);
49
+ }
50
+ /**
51
+ * Render the deterministic ASCII config.toml for the local provider profile.
52
+ *
53
+ * The API key is NEVER emitted -- only `env_key` (the env var NAME). `wire_api`
54
+ * is ALWAYS "responses" regardless of coords.wireApi.
55
+ *
56
+ * Throws if baseUrl or model contains a double-quote, backslash, or newline.
57
+ */
58
+ export function renderCodexConfigToml(coords) {
59
+ assertTomlSafe('baseUrl', coords.baseUrl);
60
+ assertTomlSafe('model', coords.model);
61
+ return (`model = "${coords.model}"\n` +
62
+ `model_provider = "${TELORA_LOCAL_PROVIDER_ID}"\n` +
63
+ `\n` +
64
+ `[model_providers.${TELORA_LOCAL_PROVIDER_ID}]\n` +
65
+ `name = "Telora Local"\n` +
66
+ `base_url = "${coords.baseUrl}"\n` +
67
+ `wire_api = "responses"\n` +
68
+ `env_key = "${TELORA_LOCAL_API_KEY_ENV}"\n`);
69
+ }
70
+ /**
71
+ * Write the rendered config.toml into the per-product CODEX_HOME.
72
+ *
73
+ * Creates CODEX_HOME with mode 0700 (recursive) and writes config.toml with
74
+ * mode 0600. Idempotent: a re-run overwrites the file with identical content.
75
+ */
76
+ export function writeProductCodexHome(productId, coords, io) {
77
+ const codexHome = resolveProductCodexHome(productId);
78
+ mkdirSync(codexHome, { recursive: true, mode: 0o700 });
79
+ const configPath = resolve(codexHome, 'config.toml');
80
+ writeFileSync(configPath, renderCodexConfigToml(coords), { mode: 0o600 });
81
+ io?.out?.(`Wrote Codex profile to ${configPath} (CODEX_HOME=${codexHome}).\n`);
82
+ return { codexHome, configPath };
83
+ }
84
+ /**
85
+ * Render a human-facing block the operator can paste into their PERSONAL
86
+ * ~/.codex/config.toml. Returns a string ONLY -- performs no filesystem writes.
87
+ *
88
+ * Includes the same provider profile TOML, the export line for the API key
89
+ * (the operator substitutes their own value), and a note about the minimum
90
+ * context window the local server must load the model with.
91
+ */
92
+ export function renderManualCodexProfile(coords) {
93
+ const profile = renderCodexConfigToml(coords);
94
+ return (`# Paste this into your personal ~/.codex/config.toml:\n` +
95
+ `\n` +
96
+ `${profile}` +
97
+ `\n` +
98
+ `# Then export the local-model API key in your shell (NOT written to any file):\n` +
99
+ `export ${TELORA_LOCAL_API_KEY_ENV}=<your-local-model-api-key>\n` +
100
+ `\n` +
101
+ `# NOTE: load the model on your local server with a context window >= ~16k tokens. ` +
102
+ `Codex's first-turn payload overflows a small context and the server returns an ` +
103
+ `instant response.failed.\n`);
104
+ }
105
+ //# sourceMappingURL=codex-provision.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-provision.js","sourceRoot":"","sources":["../../src/cli/codex-provision.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,sBAAsB,CAAC;AAE/D,qEAAqE;AACrE,MAAM,CAAC,MAAM,wBAAwB,GAAG,cAAc,CAAC;AA6BvD;;;;GAIG;AACH,SAAS,cAAc,CAAC,KAAa,EAAE,KAAa;IAClD,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAChG,MAAM,IAAI,KAAK,CACb,WAAW,KAAK,2DAA2D,CAC5E,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,SAAiB;IACvD,OAAO,OAAO,CAAC,qBAAqB,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;AAC9D,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAwB;IAC5D,cAAc,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAC1C,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAEtC,OAAO,CACL,YAAY,MAAM,CAAC,KAAK,KAAK;QAC7B,qBAAqB,wBAAwB,KAAK;QAClD,IAAI;QACJ,oBAAoB,wBAAwB,KAAK;QACjD,yBAAyB;QACzB,eAAe,MAAM,CAAC,OAAO,KAAK;QAClC,0BAA0B;QAC1B,cAAc,wBAAwB,KAAK,CAC5C,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACnC,SAAiB,EACjB,MAAwB,EACxB,EAAqB;IAErB,MAAM,SAAS,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC;IACrD,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAEvD,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IACrD,aAAa,CAAC,UAAU,EAAE,qBAAqB,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAE1E,EAAE,EAAE,GAAG,EAAE,CAAC,0BAA0B,UAAU,gBAAgB,SAAS,MAAM,CAAC,CAAC;IAE/E,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;AACnC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAAwB;IAC/D,MAAM,OAAO,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAC9C,OAAO,CACL,yDAAyD;QACzD,IAAI;QACJ,GAAG,OAAO,EAAE;QACZ,IAAI;QACJ,kFAAkF;QAClF,UAAU,wBAAwB,+BAA+B;QACjE,IAAI;QACJ,oFAAoF;QACpF,iFAAiF;QACjF,4BAA4B,CAC7B,CAAC;AACJ,CAAC"}
@@ -9,6 +9,7 @@
9
9
  * footprint (no package.json, no node_modules, no dev dependency) in the
10
10
  * user's repo. Rust/Python/Go/empty repos stay untouched.
11
11
  */
12
+ import { type CodexLocalCoords } from './codex-provision.js';
12
13
  /**
13
14
  * Production Telora API URL embedded in the published @telora/daemon package.
14
15
  * Override with TELORA_URL for local dev.
@@ -22,9 +23,31 @@ export interface RedeemResponse {
22
23
  telora_url?: string;
23
24
  /** True when redeem created the product on the fly (unbound flow). */
24
25
  product_was_created?: boolean;
26
+ /**
27
+ * Local-model coordinates when the redeemed token resolves to a product
28
+ * bound to a local-model compute target. Absent/null for cloud products.
29
+ * The API key NEVER appears here -- it does not round-trip through Telora.
30
+ */
31
+ local_model_coordinates?: {
32
+ base_url?: string;
33
+ model?: string;
34
+ wire_api?: string;
35
+ } | null;
36
+ /** Default coding engine for the product (e.g. 'codex'). */
37
+ default_coding_engine?: string | null;
25
38
  error?: string;
26
39
  code?: string;
27
40
  }
41
+ /**
42
+ * Extract local-model coordinates from a redeem response, mapping the
43
+ * snake_case wire shape to the camelCase `CodexLocalCoords` the provisioner
44
+ * expects. Returns null unless `local_model_coordinates.base_url` is a
45
+ * non-empty string -- a cloud product (no local coordinates) yields null and
46
+ * the connect flow stays byte-identical to today.
47
+ *
48
+ * The API key is never present in this shape and is never fetched here.
49
+ */
50
+ export declare function coordsFromRedeem(body: RedeemResponse): CodexLocalCoords | null;
28
51
  export interface ConnectIO {
29
52
  /** stdout writer (defaults to process.stdout.write). */
30
53
  out: (msg: string) => void;
@@ -95,6 +118,12 @@ export declare function writeConnectDaemonConfig(params: {
95
118
  productId: string;
96
119
  repoPath: string;
97
120
  io: ConnectIO;
121
+ /** Absolute path of the per-product isolated CODEX_HOME (local-model flow). */
122
+ codexHome?: string;
123
+ /** Default coding engine for the product (local-model flow). */
124
+ defaultCodingEngine?: string;
125
+ /** Model id the local-model server exposes (local-model flow). */
126
+ codexModel?: string;
98
127
  }): string;
99
128
  /**
100
129
  * Write the AHA starter prompt + first-session marker into the repo's
@@ -1 +1 @@
1
- {"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../src/cli/connect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA8BH;;;GAGG;AACH,eAAO,MAAM,kBAAkB,8BAA8B,CAAC;AAE9D,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sEAAsE;IACtE,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,SAAS;IACxB,wDAAwD;IACxD,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3B,wDAAwD;IACxD,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3B,2DAA2D;IAC3D,KAAK,EAAE,OAAO,KAAK,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gDAAgD;IAChD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mCAAmC;IACnC,EAAE,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;CACzB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,yEAAyE;IACzE,iBAAiB,EAAE,OAAO,CAAC;IAC3B;kEAC8D;IAC9D,qBAAqB,EAAE,OAAO,CAAC;CAChC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAuB/D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAExD;AAUD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,SAAS,CAAC;CACf,GAAG,MAAM,CAuCT;AAED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,SAAS,GACZ,MAAM,GAAG,IAAI,CAsBf;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,IAAI,CAiB5E;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAoB1D;AAiCD;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAiB1E;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,GAAG,IAAI,EAC1B,EAAE,EAAE,SAAS,GACZ,IAAI,CAiDN;AAED;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,IAAI,CA0BhF;AAID;;;;;GAKG;AACH,wBAAgB,cAAc,IAAI,MAAM,GAAG,IAAI,CAQ9C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE;IACjD,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,EAAE,EAAE,SAAS,CAAC;CACf,GAAG,OAAO,CA0BV;AAED;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAC1C,EAAE,EAAE,SAAS,EACb,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAwET;AAWD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,IAAI,CAY1E;AAED;;;;;;GAMG;AACH,wBAAsB,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,CA8K7E"}
1
+ {"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../src/cli/connect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA6BH,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,sBAAsB,CAAC;AAE9B;;;GAGG;AACH,eAAO,MAAM,kBAAkB,8BAA8B,CAAC;AAE9D,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sEAAsE;IACtE,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;OAIG;IACH,uBAAuB,CAAC,EAAE;QACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,IAAI,CAAC;IACT,4DAA4D;IAC5D,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB,GAAG,IAAI,CAS9E;AAED,MAAM,WAAW,SAAS;IACxB,wDAAwD;IACxD,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3B,wDAAwD;IACxD,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3B,2DAA2D;IAC3D,KAAK,EAAE,OAAO,KAAK,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gDAAgD;IAChD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mCAAmC;IACnC,EAAE,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;CACzB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,yEAAyE;IACzE,iBAAiB,EAAE,OAAO,CAAC;IAC3B;kEAC8D;IAC9D,qBAAqB,EAAE,OAAO,CAAC;CAChC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAuB/D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAExD;AAUD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,SAAS,CAAC;IACd,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gEAAgE;IAChE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kEAAkE;IAClE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,MAAM,CA4CT;AAED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,SAAS,GACZ,MAAM,GAAG,IAAI,CAsBf;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,IAAI,CAiB5E;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAoB1D;AAiCD;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAiB1E;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,GAAG,IAAI,EAC1B,EAAE,EAAE,SAAS,GACZ,IAAI,CAiDN;AAED;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,IAAI,CA0BhF;AAID;;;;;GAKG;AACH,wBAAgB,cAAc,IAAI,MAAM,GAAG,IAAI,CAQ9C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE;IACjD,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,EAAE,EAAE,SAAS,CAAC;CACf,GAAG,OAAO,CA0BV;AAED;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAC1C,EAAE,EAAE,SAAS,EACb,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAwET;AAWD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,IAAI,CAY1E;AAED;;;;;;GAMG;AACH,wBAAsB,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,CAmM7E"}
@@ -18,11 +18,32 @@ import { ensureGlobalStateDir, resolveDaemonLogPath } from '../daemon-process.js
18
18
  import { STARTER_PROMPT } from '../prompts/starter-prompt.js';
19
19
  import { TELORA_CLAUDE_MD_BEGIN, TELORA_CLAUDE_MD_END, renderClaudeMd, } from '../templates/claude-md.js';
20
20
  import { buildClaudeSettings, mergeClaudeSettings, } from '../templates/claude-settings.js';
21
+ import { writeProductCodexHome, renderManualCodexProfile, } from './codex-provision.js';
21
22
  /**
22
23
  * Production Telora API URL embedded in the published @telora/daemon package.
23
24
  * Override with TELORA_URL for local dev.
24
25
  */
25
26
  export const DEFAULT_TELORA_URL = 'https://api.syntelyos.com';
27
+ /**
28
+ * Extract local-model coordinates from a redeem response, mapping the
29
+ * snake_case wire shape to the camelCase `CodexLocalCoords` the provisioner
30
+ * expects. Returns null unless `local_model_coordinates.base_url` is a
31
+ * non-empty string -- a cloud product (no local coordinates) yields null and
32
+ * the connect flow stays byte-identical to today.
33
+ *
34
+ * The API key is never present in this shape and is never fetched here.
35
+ */
36
+ export function coordsFromRedeem(body) {
37
+ const coords = body.local_model_coordinates;
38
+ const baseUrl = coords?.base_url;
39
+ if (typeof baseUrl !== 'string' || baseUrl.length === 0)
40
+ return null;
41
+ return {
42
+ baseUrl,
43
+ model: typeof coords?.model === 'string' ? coords.model : '',
44
+ ...(typeof coords?.wire_api === 'string' ? { wireApi: coords.wire_api } : {}),
45
+ };
46
+ }
26
47
  /**
27
48
  * Map a redeem error code to a one-line remediation hint.
28
49
  */
@@ -91,6 +112,11 @@ export function writeConnectDaemonConfig(params) {
91
112
  {
92
113
  id: params.productId,
93
114
  repoPath: resolve(params.repoPath),
115
+ ...(params.codexHome ? { codexHome: params.codexHome } : {}),
116
+ ...(params.defaultCodingEngine
117
+ ? { defaultCodingEngine: params.defaultCodingEngine }
118
+ : {}),
119
+ ...(params.codexModel ? { codexModel: params.codexModel } : {}),
94
120
  },
95
121
  ],
96
122
  engines: {
@@ -529,6 +555,23 @@ export async function runConnect(opts) {
529
555
  // (e.g. http://supabase-kong:8000) -- unreachable from the user's
530
556
  // machine and silently poisoning daemon.json and .mcp.json.
531
557
  const resolvedTeloraUrl = teloraUrl;
558
+ // -- Local-model provisioning (optional) ---------------------------------
559
+ // When the redeemed token resolves to local-model coordinates, provision
560
+ // the product's ISOLATED CODEX_HOME (writes config.toml referencing the API
561
+ // key ENV VAR name only) and PRINT the manual provider profile for the
562
+ // operator's personal ~/.codex. The API key is NEVER fetched or sent.
563
+ const coords = coordsFromRedeem(body);
564
+ let codexHome;
565
+ let codexModel;
566
+ let productEngine;
567
+ if (coords) {
568
+ const { codexHome: ch } = writeProductCodexHome(productId, coords, io);
569
+ codexHome = ch;
570
+ codexModel = coords.model;
571
+ productEngine = body.default_coding_engine || 'codex';
572
+ io.out(renderManualCodexProfile(coords));
573
+ io.out('\n');
574
+ }
532
575
  // -- Write daemon config --------------------------------------------------
533
576
  const configPath = writeConnectDaemonConfig({
534
577
  teloraUrl: resolvedTeloraUrl,
@@ -537,6 +580,9 @@ export async function runConnect(opts) {
537
580
  productId,
538
581
  repoPath,
539
582
  io,
583
+ codexHome,
584
+ defaultCodingEngine: productEngine,
585
+ codexModel,
540
586
  });
541
587
  io.out(`Wrote ${configPath}.\n`);
542
588
  // -- Write .mcp.json (node + abs-path shape; per-user-machine) -----------
@@ -1 +1 @@
1
- {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../src/cli/connect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../src/cli/connect.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,21 @@
19
19
  * errors and git errors degrade gracefully -- they print to stderr and the
20
20
  * command still exits 0 so the hook never blocks Claude Code.
21
21
  */
22
+ interface DaemonJsonProduct {
23
+ id?: string;
24
+ repoPath?: string;
25
+ }
26
+ interface DaemonJson {
27
+ teloraUrl?: string;
28
+ trackerId?: string;
29
+ productId?: string;
30
+ products?: DaemonJsonProduct[];
31
+ engines?: {
32
+ strategy?: {
33
+ integrationBranch?: string;
34
+ };
35
+ };
36
+ }
22
37
  interface SessionStateResponse {
23
38
  success?: boolean;
24
39
  connectedUrl?: string;
@@ -43,12 +58,73 @@ export interface SessionStateOptions {
43
58
  config?: string;
44
59
  }
45
60
  /**
46
- * Two-line invariant summary. Dynamic state (active focus, branches,
47
- * deliveries) is intentionally omitted -- it should be resolved on demand
48
- * via MCP at the point of use, not baked into the bootstrap where it goes
49
- * stale during the session. Exported for unit testing.
61
+ * Three-line invariant summary. Line 1 is the connection; line 2 reminds
62
+ * the agent to resolve dynamic state on demand; line 3 is the load-bearing
63
+ * default-and-exception rule (declare intent before code). Dynamic state
64
+ * (active focus, branches, deliveries) is intentionally omitted -- it
65
+ * should be resolved on demand via MCP at the point of use, not baked into
66
+ * the bootstrap where it goes stale during the session. This output is
67
+ * injected by the SessionStart hook and is NOT wrapped in the harness's
68
+ * "may or may not be relevant" caveat, so it is the most reliable channel
69
+ * for the one invariant the agent must not reason its way around.
70
+ * Exported for unit testing.
50
71
  */
51
72
  export declare function formatPlain(state: SessionStateResponse): string;
73
+ /**
74
+ * Resolve the default daemon.json path using global-first search order:
75
+ * 1. ~/.telora/daemon.json (global; written by `connect` for all current installs)
76
+ * 2. .telora/daemon.json in cwd (repo-local; legacy / hand-crafted)
77
+ *
78
+ * Returns the first path that exists, or null when neither does (not connected).
79
+ * Exported for unit testing.
80
+ */
81
+ export declare function resolveDefaultConfigPath(): string | null;
82
+ /**
83
+ * Return the productId and repoPath for the product that owns the current cwd.
84
+ *
85
+ * In a multi-product config (e.g. Hue + Telora), the hook fetches session state
86
+ * for the product the session is INSIDE, not blindly for products[0]. This fixes
87
+ * the silent divergence where the bootstrap line reported one product while the
88
+ * daemon serviced another.
89
+ *
90
+ * Falls back to products[0] when no product's repoPath contains cwd (safe
91
+ * degradation for configs with no repoPath entries, or manual configs without a
92
+ * matching entry).
93
+ */
94
+ export declare function resolveProductIdAndRepoPath(cfg: DaemonJson): {
95
+ productId: string | null;
96
+ repoPath: string;
97
+ };
98
+ /**
99
+ * Pick the configured product whose repo the session is running inside.
100
+ *
101
+ * The hook calls `session-state` from the session cwd, so the cwd-matching
102
+ * product -- NOT blindly `products[0]` -- is the one whose CLAUDE.md should be
103
+ * self-healed. A repo matches when its `repoPath` equals the cwd or contains it
104
+ * (cwd is the repo root or a subdirectory). Returns the resolved repo path, or
105
+ * null when the cwd is outside every configured repo (clean no-op).
106
+ */
107
+ export declare function resolveCwdRepoPath(cfg: DaemonJson): string | null;
108
+ /**
109
+ * Self-heal the CLAUDE.md Telora seed block for the cwd-matching product on
110
+ * every session open. This is the session-open analog of the daemon's
111
+ * boot-time `refreshClaudeMdForProducts`: a connected repo whose daemon process
112
+ * is not running otherwise keeps a seed frozen at connect-time, so newly
113
+ * shipped Telora directives never reach that workstation. The SessionStart hook
114
+ * runs `session-state` regardless of whether the daemon process is up, so doing
115
+ * the refresh here closes that gap.
116
+ *
117
+ * Reuses `writeOrMergeClaudeMd` (the same function the boot refresh uses) with
118
+ * productName=null -- it replaces only the delimited block, preserves all user
119
+ * content, and is a no-op write when the block is already current.
120
+ *
121
+ * Side-effect only: its `io.out` messages are routed to stderr so the
122
+ * `formatPlain` / `--json` stdout contract is byte-identical with or without a
123
+ * refresh. Every failure (missing file, IO/parse error, cwd outside all repos)
124
+ * is swallowed with a stderr note so the hook always exits 0 and session start
125
+ * is never blocked.
126
+ */
127
+ export declare function selfHealClaudeMdSeed(cfg: DaemonJson): void;
52
128
  export declare function runSessionState(opts: SessionStateOptions): Promise<void>;
53
129
  export {};
54
130
  //# sourceMappingURL=session-state.d.ts.map