@intutic/sync-daemon 2.0.0 → 2.1.0

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.
Files changed (107) hide show
  1. package/dist/agentReporter.d.ts +4 -12
  2. package/dist/agentReporter.d.ts.map +1 -1
  3. package/dist/agentReporter.js +25 -4
  4. package/dist/agentReporter.js.map +1 -1
  5. package/dist/configWriter.d.ts.map +1 -1
  6. package/dist/configWriter.js +20 -6
  7. package/dist/configWriter.js.map +1 -1
  8. package/dist/harness/aiderConfigMerger.d.ts +41 -5
  9. package/dist/harness/aiderConfigMerger.d.ts.map +1 -1
  10. package/dist/harness/aiderConfigMerger.js +110 -86
  11. package/dist/harness/aiderConfigMerger.js.map +1 -1
  12. package/dist/harness/antigravityHooks.d.ts +13 -8
  13. package/dist/harness/antigravityHooks.d.ts.map +1 -1
  14. package/dist/harness/antigravityHooks.js +51 -39
  15. package/dist/harness/antigravityHooks.js.map +1 -1
  16. package/dist/harness/claudeCodeHooks.d.ts.map +1 -1
  17. package/dist/harness/claudeCodeHooks.js +42 -28
  18. package/dist/harness/claudeCodeHooks.js.map +1 -1
  19. package/dist/harness/clineHooks.d.ts +39 -9
  20. package/dist/harness/clineHooks.d.ts.map +1 -1
  21. package/dist/harness/clineHooks.js +139 -60
  22. package/dist/harness/clineHooks.js.map +1 -1
  23. package/dist/harness/codexConfigMerger.d.ts +38 -0
  24. package/dist/harness/codexConfigMerger.d.ts.map +1 -0
  25. package/dist/harness/codexConfigMerger.js +101 -0
  26. package/dist/harness/codexConfigMerger.js.map +1 -0
  27. package/dist/harness/codexHooks.d.ts +4 -2
  28. package/dist/harness/codexHooks.d.ts.map +1 -1
  29. package/dist/harness/codexHooks.js +11 -11
  30. package/dist/harness/codexHooks.js.map +1 -1
  31. package/dist/harness/continueConfigMerger.d.ts +46 -0
  32. package/dist/harness/continueConfigMerger.d.ts.map +1 -0
  33. package/dist/harness/continueConfigMerger.js +90 -0
  34. package/dist/harness/continueConfigMerger.js.map +1 -0
  35. package/dist/harness/continueHooks.d.ts +15 -25
  36. package/dist/harness/continueHooks.d.ts.map +1 -1
  37. package/dist/harness/continueHooks.js +22 -119
  38. package/dist/harness/continueHooks.js.map +1 -1
  39. package/dist/harness/cursorHooks.d.ts +33 -16
  40. package/dist/harness/cursorHooks.d.ts.map +1 -1
  41. package/dist/harness/cursorHooks.js +66 -25
  42. package/dist/harness/cursorHooks.js.map +1 -1
  43. package/dist/harness/dshHooks.d.ts +59 -52
  44. package/dist/harness/dshHooks.d.ts.map +1 -1
  45. package/dist/harness/dshHooks.js +145 -147
  46. package/dist/harness/dshHooks.js.map +1 -1
  47. package/dist/harness/gateKind.d.ts.map +1 -1
  48. package/dist/harness/gateKind.js +1 -0
  49. package/dist/harness/gateKind.js.map +1 -1
  50. package/dist/harness/githubCopilotHooks.js +1 -1
  51. package/dist/harness/grokHooks.d.ts.map +1 -1
  52. package/dist/harness/grokHooks.js +7 -2
  53. package/dist/harness/grokHooks.js.map +1 -1
  54. package/dist/harness/hermesHooks.d.ts +9 -0
  55. package/dist/harness/hermesHooks.d.ts.map +1 -1
  56. package/dist/harness/hermesHooks.js +32 -31
  57. package/dist/harness/hermesHooks.js.map +1 -1
  58. package/dist/harness/jsonMergeTarget.d.ts +23 -0
  59. package/dist/harness/jsonMergeTarget.d.ts.map +1 -0
  60. package/dist/harness/jsonMergeTarget.js +50 -0
  61. package/dist/harness/jsonMergeTarget.js.map +1 -0
  62. package/dist/harness/mcpAutoWrite.d.ts +28 -6
  63. package/dist/harness/mcpAutoWrite.d.ts.map +1 -1
  64. package/dist/harness/mcpAutoWrite.js +258 -32
  65. package/dist/harness/mcpAutoWrite.js.map +1 -1
  66. package/dist/harness/n8nHooks.d.ts.map +1 -1
  67. package/dist/harness/n8nHooks.js +6 -7
  68. package/dist/harness/n8nHooks.js.map +1 -1
  69. package/dist/harness/openCodeHooks.d.ts +37 -6
  70. package/dist/harness/openCodeHooks.d.ts.map +1 -1
  71. package/dist/harness/openCodeHooks.js +101 -8
  72. package/dist/harness/openCodeHooks.js.map +1 -1
  73. package/dist/harness/openWebuiHooks.d.ts.map +1 -1
  74. package/dist/harness/openWebuiHooks.js +5 -4
  75. package/dist/harness/openWebuiHooks.js.map +1 -1
  76. package/dist/harness/openhandsHooks.d.ts +13 -0
  77. package/dist/harness/openhandsHooks.d.ts.map +1 -1
  78. package/dist/harness/openhandsHooks.js +70 -0
  79. package/dist/harness/openhandsHooks.js.map +1 -1
  80. package/dist/harness/piHooks.d.ts +17 -0
  81. package/dist/harness/piHooks.d.ts.map +1 -1
  82. package/dist/harness/piHooks.js +28 -29
  83. package/dist/harness/piHooks.js.map +1 -1
  84. package/dist/harness/protectedPaths.d.ts +64 -6
  85. package/dist/harness/protectedPaths.d.ts.map +1 -1
  86. package/dist/harness/protectedPaths.js +161 -11
  87. package/dist/harness/protectedPaths.js.map +1 -1
  88. package/dist/harness/windsurfHooks.d.ts +3 -1
  89. package/dist/harness/windsurfHooks.d.ts.map +1 -1
  90. package/dist/harness/windsurfHooks.js +64 -42
  91. package/dist/harness/windsurfHooks.js.map +1 -1
  92. package/dist/harness/windsurfJetBrainsProxy.d.ts +9 -6
  93. package/dist/harness/windsurfJetBrainsProxy.d.ts.map +1 -1
  94. package/dist/harness/windsurfJetBrainsProxy.js +17 -6
  95. package/dist/harness/windsurfJetBrainsProxy.js.map +1 -1
  96. package/dist/index.d.ts +3 -0
  97. package/dist/index.d.ts.map +1 -1
  98. package/dist/index.js +3 -0
  99. package/dist/index.js.map +1 -1
  100. package/dist/lib/policySnapshot.d.ts +19 -0
  101. package/dist/lib/policySnapshot.d.ts.map +1 -1
  102. package/dist/lib/policySnapshot.js +29 -2
  103. package/dist/lib/policySnapshot.js.map +1 -1
  104. package/dist/watcher/settingsGuard.d.ts.map +1 -1
  105. package/dist/watcher/settingsGuard.js +14 -15
  106. package/dist/watcher/settingsGuard.js.map +1 -1
  107. package/package.json +6 -6
@@ -21,11 +21,11 @@
21
21
  * Muse Code/Grok Build in Wave 1. This writer was authored against a real
22
22
  * `npm pack` + read of those packages' shipped `.d.ts`/README files, not
23
23
  * solely the phase brief's prior research (see the TD entry this phase filed
24
- * for exactly what was checked and what is still genuinely unconfirmed —
25
- * dsh-permission, dsh-settings-local, and dsh-fs-policy 404'd as
26
- * `publishConfig.access: restricted`, so the exact settings.yaml schema
27
- * dsh-settings-local enforces was not directly inspected, only inferred from
28
- * `dsh-base`'s own `cordis.patch.yml` comments and `dsh-llm-pi-ai`'s README).
24
+ * for exactly what was checked). In 0.1 three packages (dsh-permission,
25
+ * dsh-settings-local, dsh-fs-policy) 404'd as restricted; 0.2.0-rc.2 no
26
+ * longer depends on them — their roles moved to the public `dsh-settings`,
27
+ * `dsh-config-editor`, `dsh-sandbox-policy`, `dsh-permission-presets` and
28
+ * `dsh-user-approval`, all read directly for the 0.2 re-verification.
29
29
  *
30
30
  * Confirmed facts this writer relies on:
31
31
  *
@@ -56,30 +56,31 @@
56
56
  * for out-of-tree plugins) — which means `@intutic/gate` must actually be
57
57
  * installed there; see {@link mergeProfileDependency} and the TD entry
58
58
  * for why this writer cannot run `pnpm install` on the user's behalf.
59
- * - `settings.yaml`'s `llm-pi-ai.providers.<id>.baseURL` path — CONFIRMED,
60
- * not merely the plan's assumption: `dsh-llm-pi-ai`'s shipped README shows
61
- * exactly this shape overriding an EXISTING catalog route's endpoint
62
- * (`providers.openai.baseURL: https://proxy.example.com:8443`), the same
63
- * "override base_url on what already resolves, don't invent a model
64
- * picker entry" shape `grokHooks.ts`'s `[model.*]` merge uses. `llm-pi-ai`
65
- * is NOT dsh's default LLM route (`llm-deepseek`, the native DeepSeek
66
- * adapter, is — see `dsh-base`'s own `agent-default-model` row) and
67
- * mounts **dormant** until a `llm-pi-ai:` settings section exists at all,
68
- * so this override alone never redirected a fresh profile's DEFAULT
69
- * egress — it only added a selectable route.
70
- * - **TD-370 follow-up, closed this phase:** `@deepseek-ai/dsh-llm-deepseek`
71
- * (registry-public, `npm pack`ed and read directly — 0.1.0-rc.8, the
72
- * current prerelease at the time) IS the adapter `dsh-base`'s
73
- * `agent-default-model` routes through by default, and its own shipped
74
- * README CONFIRMS the same live-reload settings seam `llm-pi-ai` has:
75
- * "the plugin registers the `llm-deepseek` namespace with this same
76
- * `Config` schema ... so a `llm-deepseek:` section in the user settings
77
- * document overrides any field without a restart." {@link mergeSettingsYaml}
78
- * now also merges `llm-deepseek.baseURL`, touching only that one field
79
- * (same "override base_url on what already resolves" discipline as the
80
- * `llm-pi-ai` merge and `grokHooks.ts`'s `[model.*]` merge) — this is the
81
- * one that actually redirects DEFAULT egress. The `llm-pi-ai` merge is
82
- * kept alongside it (a selectable route remains useful), not replaced.
59
+ * - **LLM egress, re-verified against dsh 0.2.0-rc.2 (TD-370, 2026-10-03).**
60
+ * 0.2 removed the harness-home `settings.yaml` document this writer used
61
+ * to merge into: `@deepseek-ai/dsh-settings` now imports a leftover
62
+ * `$DSH_HOME/settings.yaml` ONCE into whichever profile boots first
63
+ * (renaming it to `settings.yaml.imported`), and live configuration
64
+ * lives in each profile's `cordis.patch.yml` as an id-targeted override
65
+ * row (`dsh-config-editor` persists Models-page edits the same way). The
66
+ * default route is still the entry id `llm-deepseek` — in 0.2 that id
67
+ * mounts `@deepseek-ai/dsh-llm-deepseek-api-key`, which registers the
68
+ * `deepseek-official` provider `dsh-base`'s `agent-default-model` row
69
+ * selects (`provider: deepseek-official, model: deepseek-flash`) — and
70
+ * `dsh-llm-deepseek`'s README confirms its endpoint resolves "explicit
71
+ * value, then `$DEEPSEEK_BASE_URL`, then the official root"
72
+ * (`https://api.deepseek.com/anthropic`, Messages wire format; requests
73
+ * go to `<baseURL>/v1/messages`). {@link mergeProfileLlmRoute} therefore
74
+ * sets `config.baseURL` on that entry's override row in every profile
75
+ * patch. Observed live (uat/evidence/live-verify/dsh-0.2.md): a headless
76
+ * 0.2.0-rc.2 session sent every model request to the configured base URL.
77
+ * Two routes are deliberately NOT redirected: `llm-pi-ai` (0.2 refuses a
78
+ * hand-declared route without a non-empty `models` list, so the old
79
+ * `providers.intutic` route is now invalid config — dropped), and
80
+ * `llm-deepseek-account` (`deepseek-account` provider; its token is only
81
+ * released to `inferenceOrigin`, which accepts an alternate origin only
82
+ * with a grant from DeepSeek's platform — an opt-in, signed-in route this
83
+ * writer cannot point at a proxy). See the TD entry.
83
84
  * - The `@intutic/gate/dsh` veto contract itself (`tools/pre-execute`,
84
85
  * `PreToolDecision`'s real `'deny'`/`'allow'`/`'ask'` shape, Cordis's
85
86
  * `waterfall` `next()` semantics) is confirmed from `dsh-tools`'s shipped
@@ -95,8 +96,9 @@ import { existsSync } from 'node:fs';
95
96
  import * as path from 'node:path';
96
97
  import * as os from 'node:os';
97
98
  import { isDeepStrictEqual } from 'node:util';
98
- import { isMap, isSeq, parseDocument } from 'yaml';
99
+ import { isSeq, parseDocument } from 'yaml';
99
100
  import { createLogger } from '@intutic/logger';
101
+ import { anthropicBaseUrl } from '@intutic/shared-types';
100
102
  const log = createLogger('sync-dsh-hooks');
101
103
  /** Mirrors `dsh-home-paths`' `DSH_HOME_ENV`/`DSH_HOME_DIR_NAME` constants. */
102
104
  const DSH_HOME_ENV = 'DSH_HOME';
@@ -104,19 +106,19 @@ const DSH_HOME_DIR_NAME = '.dsh';
104
106
  /** Mirrors `dsh-app-boot`'s `PROFILES_DIR`/`PROFILE_PATCH_FILENAME`. */
105
107
  const PROFILES_DIR = 'profiles';
106
108
  const PROFILE_PATCH_FILENAME = 'cordis.patch.yml';
107
- const SETTINGS_FILENAME = 'settings.yaml';
108
109
  /** Stable row id — recognized on every later sync regardless of which of the
109
110
  * patch-op shapes (see module doc) a prior write or a human left. */
110
111
  const PLUGIN_ROW_ID = 'intutic-governance';
111
112
  /** Resolved via a bare `import()` from the profile's own `node_modules` — see
112
113
  * {@link mergeProfileDependency}. */
113
114
  const PLUGIN_MODULE_NAME = '@intutic/gate/dsh';
114
- /** The pinned `@intutic/gate` version range written into a profile's
115
- * `package.json` dependency — dsh's own preview-software stance (stated
116
- * breaking-changes policy) is matched here the same way Muse Code/Grok Build
117
- * pin themselves against a *tested* version rather than `latest`. Bump this
118
- * alongside `packages/gate-js/package.json`'s own `version` field. */
119
- const INTUTIC_GATE_VERSION_RANGE = '^0.1.0';
115
+ /** The `@intutic/gate` range declared in a profile's `package.json` when the
116
+ * profile declares none yet. Must name a version that exists on npm with a
117
+ * `./dsh` export — this was `^0.1.0` until 2026-10-03, which no published
118
+ * `@intutic/gate` satisfies (npm has 1.10.1 and 2.0.0), so a `pnpm install`
119
+ * in the profile could never resolve it. Bump with
120
+ * `packages/gate-js/package.json`'s major version. */
121
+ const INTUTIC_GATE_VERSION_RANGE = '^2.0.0';
120
122
  /** `$DSH_HOME` resolution: an explicit env override, else `~/.dsh` — mirrors
121
123
  * `dsh-home-paths`' `resolveDshHome()` (this writer has no "explicit
122
124
  * configured path" input the way a booted dsh process might). An
@@ -328,10 +330,19 @@ export async function mergeProfilePatch(profileDir, workspaceRoot, workspaceId)
328
330
  * writer in this codebase only ever writes config, never invokes a package
329
331
  * manager on the user's behalf. Until the user (or their own tooling) runs
330
332
  * one, the `cordis.patch.yml` row this module also writes resolves to a
331
- * MISSING module and dsh's own loader reports that row's activation failed
332
- * (`assertEntriesActivated`, confirmed from `dsh-app-boot`'s exports) rather
333
- * than silently no-op — a fail-LOUD gap, not a fail-open one, but a real
334
- * manual step nonetheless. See the TD entry and `apps/docs/integrations/dsh.md`.
333
+ * MISSING module. Observed live against dsh 0.2.0-rc.2: the loader prints
334
+ * `dsh: warning: 1 entry did not activate` / `intutic-governance
335
+ * (@intutic/gate/dsh): failed to import` on stderr and the session then runs
336
+ * UNGOVERNED — loud, but fail-OPEN (dsh's hard-fail list is global to the
337
+ * launcher; a profile row cannot mark itself required). See the TD entry and
338
+ * `apps/docs/integrations/dsh.md`.
339
+ *
340
+ * Adds the declaration only when the profile has none: an existing one was
341
+ * written by `dsh plugin --profile <name> add @intutic/gate` (pnpm records
342
+ * the installed range, e.g. `^2.0.0`) or by the user, and rewriting it to this
343
+ * writer's range on every sync would drift the manifest away from what is
344
+ * actually installed — observed live against dsh 0.2.0-rc.2, where the old
345
+ * `^0.1.0` overwrote pnpm's `^2.0.0`.
335
346
  */
336
347
  export async function mergeProfileDependency(profileDir) {
337
348
  const manifestPath = path.join(profileDir, 'package.json');
@@ -347,7 +358,7 @@ export async function mergeProfileDependency(profileDir) {
347
358
  const deps = (manifest.dependencies && typeof manifest.dependencies === 'object'
348
359
  ? manifest.dependencies
349
360
  : {});
350
- if (deps['@intutic/gate'] === INTUTIC_GATE_VERSION_RANGE)
361
+ if (typeof deps['@intutic/gate'] === 'string' && deps['@intutic/gate'].trim())
351
362
  return;
352
363
  manifest.dependencies = { ...deps, '@intutic/gate': INTUTIC_GATE_VERSION_RANGE };
353
364
  const tmp = manifestPath + '.intutic-tmp';
@@ -355,120 +366,104 @@ export async function mergeProfileDependency(profileDir) {
355
366
  await fs.rename(tmp, manifestPath);
356
367
  log.info({ action: 'dsh_dependency_written', path: manifestPath }, 'dsh profile package.json dependency updated');
357
368
  }
358
- // ─── settings.yaml: llm-deepseek (default route) + llm-pi-ai (selectable) ──
359
- /** dsh's ACTUAL DEFAULT LLM route — `@deepseek-ai/dsh-llm-deepseek`, per
360
- * `dsh-base`'s own `agent-default-model` row. See module doc for the
361
- * README confirmation that a `llm-deepseek:` settings section overrides
362
- * this adapter's config live, no restart. */
363
- const DEFAULT_LLM_SECTION = 'llm-deepseek';
364
- /** A SELECTABLE route, mounts dormant until this section exists at all —
365
- * see module doc. Kept alongside the default-route merge, not replaced. */
366
- const SELECTABLE_LLM_SECTION = 'llm-pi-ai';
367
- async function mergeSettingsYamlAppendOnly(settingsPath, existingYaml, proxyUrl) {
368
- const blocks = [];
369
- if (!existingYaml.includes(`${DEFAULT_LLM_SECTION}:`)) {
370
- blocks.push('', '# Intutic proxy route — auto-appended (fallback: this file did not parse as YAML).', "# Redirects dsh's DEFAULT LLM route (llm-deepseek, the native DeepSeek", "# adapter — see dsh-base's agent-default-model row) through the proxy.", `${DEFAULT_LLM_SECTION}:`, ` baseURL: ${JSON.stringify(proxyUrl)}`);
371
- }
372
- if (!existingYaml.includes(`${SELECTABLE_LLM_SECTION}:`)) {
373
- blocks.push('', '# Intutic proxy route — auto-appended (fallback: this file did not parse as YAML).', `${SELECTABLE_LLM_SECTION}:`, ' providers:', ' intutic:', ' displayName: Intutic Governance Proxy', ' api: openai-completions', ` baseURL: ${JSON.stringify(proxyUrl)}`);
369
+ // ─── cordis.patch.yml: llm-deepseek egress override (dsh's default route) ──
370
+ /** The profile entry id of dsh's DEFAULT LLM route. In 0.2 it mounts
371
+ * `@deepseek-ai/dsh-llm-deepseek-api-key` (provider `deepseek-official`, the
372
+ * one `dsh-base`'s `agent-default-model` row selects). No module-name
373
+ * assertion is written alongside it: an id-targeted row without `name`
374
+ * survives DeepSeek renaming the module again (0.1 named it
375
+ * `dsh-llm-deepseek`), where a stale assertion would fail profile boot. */
376
+ const DEFAULT_LLM_ENTRY_ID = 'llm-deepseek';
377
+ /** Index of the LAST bare (not `insert:`-wrapped) row targeting
378
+ * {@link DEFAULT_LLM_ENTRY_ID} — the loader applies patch rows in order, so
379
+ * the last one is the override that takes effect, and it is also the one
380
+ * `dsh-config-editor` edits when the user saves the Models page. */
381
+ function findLastLlmOverride(patchList) {
382
+ for (let i = patchList.length - 1; i >= 0; i--) {
383
+ const item = patchList[i];
384
+ if (!item || typeof item !== 'object' || Array.isArray(item))
385
+ continue;
386
+ const obj = item;
387
+ if (obj.id === DEFAULT_LLM_ENTRY_ID && !('insert' in obj))
388
+ return i;
374
389
  }
375
- if (blocks.length === 0)
376
- return;
377
- const text = existingYaml.trimEnd() + '\n' + blocks.join('\n') + '\n';
378
- await fs.mkdir(path.dirname(settingsPath), { recursive: true });
379
- const tmp = settingsPath + '.intutic-tmp';
380
- await fs.writeFile(tmp, text, 'utf-8');
381
- await fs.rename(tmp, settingsPath);
382
- log.info({ action: 'dsh_settings_written', path: settingsPath, mode: 'append_only_fallback' }, 'dsh settings.yaml updated (append-only fallback)');
390
+ return -1;
383
391
  }
384
392
  /**
385
- * Structurally merges the Intutic proxy into TWO `settings.yaml` sections:
393
+ * Points dsh's DEFAULT LLM route at the Intutic proxy by setting
394
+ * `config.baseURL` on the profile's `llm-deepseek` override row.
386
395
  *
387
- * - `llm-deepseek.baseURL` — dsh's ACTUAL DEFAULT LLM route (CONFIRMED
388
- * against `@deepseek-ai/dsh-llm-deepseek`'s own shipped README this
389
- * phase — see module doc). Only `baseURL` is touched; `apiKeyEnv`,
390
- * `thinking`, `models`, etc. round-trip untouched, the same
391
- * "override base_url on what already resolves, never invent the rest of
392
- * the section" discipline `grokHooks.ts`'s `[model.*]` merge uses. This
393
- * is the merge that actually redirects DEFAULT egress — see the TD entry
394
- * for why the `llm-pi-ai` merge alone (below) never did.
395
- * - `llm-pi-ai.providers.intutic` — a SELECTABLE route (mounts dormant
396
- * until this section exists at all — see module doc). Kept alongside the
397
- * new default-route merge: a user, or a future sync, can still point a
398
- * model at it explicitly.
396
+ * A Cordis id-targeted patch REPLACES the entry's whole `config`
397
+ * (`dsh-app-boot`'s README: "an id-targeted patch does not deep-merge"), so
398
+ * when the profile already overrides this entry (a Models-page save, a hand
399
+ * edit, or dsh 0.2's one-time import of a legacy `settings.yaml`), only
400
+ * `baseURL` is set on THAT row and every other field it restates
401
+ * (`apiKeyEnv`, `reasoningEffort`, `models`, ...) round-trips untouched.
402
+ * Otherwise a fresh `{ id, config: { baseURL } }` row is appended — the
403
+ * base bundle's row carries no config, so nothing is lost by replacing it.
399
404
  *
400
- * Both overrides preserve every other provider and every other top-level
401
- * section untouched.
405
+ * Same parse-structurally / write-if-changed / append-only-on-unparseable
406
+ * discipline as {@link mergeProfilePatch}, on the same file.
402
407
  */
403
- export async function mergeSettingsYaml(dshHome, proxyUrl) {
404
- const settingsPath = path.join(dshHome, SETTINGS_FILENAME);
408
+ export async function mergeProfileLlmRoute(profileDir, proxyUrl) {
409
+ const patchPath = path.join(profileDir, PROFILE_PATCH_FILENAME);
405
410
  let existingYaml = '';
406
411
  try {
407
- existingYaml = await fs.readFile(settingsPath, 'utf-8');
412
+ existingYaml = await fs.readFile(patchPath, 'utf-8');
408
413
  }
409
414
  catch {
410
- // No settings.yaml yet — falls through with '' so a fresh file is
411
- // written below.
415
+ // No cordis.patch.yml yet — written fresh below.
412
416
  }
413
417
  let doc;
414
418
  try {
415
- doc = parseDocument(existingYaml.trim() ? existingYaml : '{}');
419
+ doc = parseDocument(existingYaml.trim() ? existingYaml : '[]');
416
420
  if (doc.errors.length > 0)
417
421
  throw doc.errors[0];
418
422
  }
419
- catch (err) {
420
- log.warn({ action: 'dsh_settings_unparseable', path: settingsPath, err: err.message }, 'dsh settings.yaml did not parse as YAML — falling back to append-only text injection');
421
- await mergeSettingsYamlAppendOnly(settingsPath, existingYaml, proxyUrl);
423
+ catch {
424
+ // mergeProfilePatch already logged this file as unparseable this cycle.
425
+ // Append only when no row for this id exists at all: a row we cannot
426
+ // parse is a row we cannot safely edit, and a second, later row would
427
+ // silently replace whatever config the user gave it.
428
+ if (existingYaml.includes(`id: ${DEFAULT_LLM_ENTRY_ID}`))
429
+ return;
430
+ const block = [
431
+ '',
432
+ '# Intutic proxy route — auto-appended (fallback: this file did not parse as YAML).',
433
+ `- id: ${DEFAULT_LLM_ENTRY_ID}`,
434
+ ' config:',
435
+ ` baseURL: ${JSON.stringify(proxyUrl)}`,
436
+ ].join('\n');
437
+ const tmp = patchPath + '.intutic-tmp';
438
+ await fs.writeFile(tmp, (existingYaml || '[]').trimEnd() + '\n' + block + '\n', 'utf-8');
439
+ await fs.rename(tmp, patchPath);
440
+ log.info({ action: 'dsh_llm_route_written', path: patchPath, mode: 'append_only_fallback' }, 'dsh llm-deepseek route updated (append-only fallback)');
422
441
  return;
423
442
  }
424
- if (doc.contents == null || !isMap(doc.contents)) {
425
- doc.contents = doc.createNode({});
443
+ if (doc.contents == null || !isSeq(doc.contents))
444
+ doc.contents = doc.createNode([]);
445
+ const patchList = doc.toJS();
446
+ const index = findLastLlmOverride(patchList);
447
+ if (index === -1) {
448
+ doc.addIn([], doc.createNode({ id: DEFAULT_LLM_ENTRY_ID, config: { baseURL: proxyUrl } }));
426
449
  }
427
- // Defensive per-level checks: `setIn` auto-vivifies a MISSING intermediate
428
- // key as a map, but throws on an EXISTING non-collection value at that key
429
- // (confirmed empirically against the `yaml` package) — same failure mode
430
- // `injectGoose` guards for `mcp: null`. Reset only the offending level,
431
- // never the whole document.
432
- for (const keyPath of [
433
- [DEFAULT_LLM_SECTION],
434
- [SELECTABLE_LLM_SECTION],
435
- [SELECTABLE_LLM_SECTION, 'providers'],
436
- ]) {
437
- const node = doc.getIn(keyPath);
438
- if (node !== undefined && !isMap(node)) {
439
- doc.setIn(keyPath, {});
450
+ else {
451
+ const config = patchList[index].config;
452
+ if (config && typeof config === 'object' && !Array.isArray(config)) {
453
+ if (config.baseURL === proxyUrl)
454
+ return;
455
+ doc.setIn([index, 'config', 'baseURL'], proxyUrl);
456
+ }
457
+ else {
458
+ // `config` absent, null, or a scalar — setIn cannot descend into it.
459
+ doc.setIn([index, 'config'], doc.createNode({ baseURL: proxyUrl }));
440
460
  }
441
461
  }
442
- const settingsJs = doc.toJS();
443
- let changed = false;
444
- // ── llm-deepseek: DEFAULT route ──────────────────────────────────────
445
- const deepseekSection = settingsJs[DEFAULT_LLM_SECTION] ?? {};
446
- const desiredDeepseekSection = { ...deepseekSection, baseURL: proxyUrl };
447
- if (!isDeepStrictEqual(deepseekSection, desiredDeepseekSection)) {
448
- doc.setIn([DEFAULT_LLM_SECTION], desiredDeepseekSection);
449
- changed = true;
450
- }
451
- // ── llm-pi-ai: SELECTABLE route ──────────────────────────────────────
452
- const llmPiAi = settingsJs[SELECTABLE_LLM_SECTION] ?? {};
453
- const providers = llmPiAi.providers ?? {};
454
- const existingRoute = providers.intutic ?? {};
455
- const desiredRoute = {
456
- ...existingRoute,
457
- displayName: 'Intutic Governance Proxy',
458
- api: 'openai-completions',
459
- baseURL: proxyUrl,
460
- };
461
- if (!isDeepStrictEqual(existingRoute, desiredRoute)) {
462
- doc.setIn([SELECTABLE_LLM_SECTION, 'providers', 'intutic'], desiredRoute);
463
- changed = true;
464
- }
465
- if (!changed)
466
- return;
467
- await fs.mkdir(dshHome, { recursive: true });
468
- const tmp = settingsPath + '.intutic-tmp';
462
+ await fs.mkdir(profileDir, { recursive: true });
463
+ const tmp = patchPath + '.intutic-tmp';
469
464
  await fs.writeFile(tmp, doc.toString(), 'utf-8');
470
- await fs.rename(tmp, settingsPath);
471
- log.info({ action: 'dsh_settings_written', path: settingsPath, mode: 'yaml' }, 'dsh settings.yaml updated (structural YAML edit)');
465
+ await fs.rename(tmp, patchPath);
466
+ log.info({ action: 'dsh_llm_route_written', path: patchPath, mode: 'yaml' }, 'dsh llm-deepseek route updated (structural YAML edit)');
472
467
  }
473
468
  // ─── INSTALL.md: the manual pnpm-install / `dsh plugin add` step ──────────
474
469
  /**
@@ -494,23 +489,24 @@ Every sync writes the \`intutic-governance\` row into each profile's
494
489
  \`@intutic/gate\` in that profile's \`package.json\` \`dependencies\` — but this
495
490
  daemon has no general capability to run a package manager in a directory it
496
491
  does not own, so the dependency itself is never installed by this writer.
497
- Until it is, dsh's own Cordis loader reports that row's activation as
498
- FAILED (fail-loud, not silent — \`dsh-app-boot\`'s \`assertEntriesActivated\`)
499
- rather than silently skipping it, but it also means nothing is governed yet.
492
+ Until it is, dsh's loader cannot import the row's module and prints a
493
+ labelled plugin-activation warning on every start (dsh 0.2 keeps booting
494
+ without it — the row is not a required entry), so nothing is governed yet.
500
495
 
501
496
  Finish activation with dsh's own forwarding command, once per profile:
502
497
 
503
498
  ${profileLines}
504
499
 
505
- That is equivalent to \`cd $DSH_HOME/profiles/<name> && pnpm install\` —
506
- either works; the forwarding command is dsh's own documented shortcut for
507
- exactly this case.
500
+ dsh 0.2 installs it as a plain profile dependency (it warns that the package
501
+ declares no \`dsh.bundle\` — expected: the row above is what loads it).
502
+ \`cd $DSH_HOME/profiles/<name> && pnpm add @intutic/gate\` is equivalent.
508
503
 
509
504
  ## Default LLM egress needs no manual step
510
505
 
511
- The Intutic proxy is merged into \`settings.yaml\`'s \`llm-deepseek\` (dsh's
512
- default LLM route) and \`llm-pi-ai\` (a selectable route) sections on every
513
- sync — both take effect on dsh's next request without a restart.
506
+ Every sync also sets \`config.baseURL\` on the \`llm-deepseek\` row of each
507
+ profile's \`cordis.patch.yml\` (dsh's default \`deepseek-official\` route) to
508
+ the Intutic proxy. A signed-in DeepSeek *account* route (\`deepseek-account\`)
509
+ is not redirected: dsh only releases its token to DeepSeek's own origin.
514
510
  `;
515
511
  }
516
512
  /** Write-if-changed, atomic rename — same discipline every other writer in
@@ -537,8 +533,8 @@ async function writeDshInstallMd(dshHome, profileNames) {
537
533
  // ─── Public API ────────────────────────────────────────────────────────────
538
534
  /**
539
535
  * Register the Intutic governance plugin against every existing dsh profile
540
- * on this machine, and merge the Intutic proxy into `settings.yaml`'s
541
- * `llm-deepseek` (default) and `llm-pi-ai` (selectable) routes.
536
+ * on this machine, and point each profile's `llm-deepseek` (default) LLM
537
+ * route at the Intutic proxy.
542
538
  *
543
539
  * A no-op (logged, not an error) when `$DSH_HOME/profiles` does not exist
544
540
  * yet — dsh has not been run with any `--profile <name>` on this machine, so
@@ -548,7 +544,7 @@ async function writeDshInstallMd(dshHome, profileNames) {
548
544
  *
549
545
  * @param workspaceRoot - Absolute workspace root (stored in the plugin row's
550
546
  * `config.repoRoot`).
551
- * @param proxyUrl - Intutic proxy URL, merged into settings.yaml.
547
+ * @param proxyUrl - Intutic proxy URL, set as the `llm-deepseek` row's `baseURL`.
552
548
  * @param workspaceId - Workspace ID, stored in the plugin row's config.
553
549
  */
554
550
  export async function writeDshHooks(workspaceRoot, proxyUrl, workspaceId = '') {
@@ -560,10 +556,12 @@ export async function writeDshHooks(workspaceRoot, proxyUrl, workspaceId = '') {
560
556
  }
561
557
  for (const profileDir of profileDirs) {
562
558
  await mergeProfilePatch(profileDir, workspaceRoot, workspaceId);
559
+ // dsh's llm-deepseek route speaks the Anthropic Messages wire and
560
+ // appends /v1/messages to its baseURL, so it gets the bare proxy host.
561
+ await mergeProfileLlmRoute(profileDir, anthropicBaseUrl(proxyUrl));
563
562
  await mergeProfileDependency(profileDir);
564
563
  log.info({ action: 'dsh_profile_written', profile: path.basename(profileDir) }, 'dsh profile governance plugin registered');
565
564
  }
566
- await mergeSettingsYaml(dshHome, proxyUrl);
567
565
  await writeDshInstallMd(dshHome, profileDirs.map((d) => path.basename(d)));
568
566
  }
569
567
  //# sourceMappingURL=dshHooks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dshHooks.js","sourceRoot":"","sources":["../../src/harness/dshHooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dshHooks.js","sourceRoot":"","sources":["../../src/harness/dshHooks.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"gateKind.d.ts","sourceRoot":"","sources":["../../src/harness/gateKind.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,OAAO,EAAe,KAAK,WAAW,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAErF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAA;AAEvE;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,YAAY,CAiBxD,CAAA;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,WAAW,CAAC,YAAY,CAAgC,CAAA;AAExF;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB,EAAE,WAAW,CAAC,YAAY,CAO7D,CAAA;AAEF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,sBAAsB,EAAE,WAAW,CAAC,YAAY,CAA2C,CAAA;AAExG,qEAAqE;AACrE,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,GAAG,QAAQ,CAM/D"}
1
+ {"version":3,"file":"gateKind.d.ts","sourceRoot":"","sources":["../../src/harness/gateKind.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,OAAO,EAAe,KAAK,WAAW,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAErF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAA;AAEvE;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,YAAY,CAkBxD,CAAA;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,WAAW,CAAC,YAAY,CAAgC,CAAA;AAExF;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB,EAAE,WAAW,CAAC,YAAY,CAO7D,CAAA;AAEF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,sBAAsB,EAAE,WAAW,CAAC,YAAY,CAA2C,CAAA;AAExG,qEAAqE;AACrE,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,GAAG,QAAQ,CAM/D"}
@@ -82,6 +82,7 @@ export const SDK_GATED_HARNESSES = new Set([
82
82
  HarnessType.PYDANTIC_AI,
83
83
  HarnessType.SMOLAGENTS,
84
84
  HarnessType.STRANDS,
85
+ HarnessType.AGENT_FRAMEWORK,
85
86
  HarnessType.MASTRA,
86
87
  HarnessType.VERCEL_AI_SDK,
87
88
  HarnessType.EVE,
@@ -1 +1 @@
1
- {"version":3,"file":"gateKind.js","sourceRoot":"","sources":["../../src/harness/gateKind.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,OAAO,EAAE,WAAW,EAAoC,MAAM,uBAAuB,CAAA;AA0DrF;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAA8B,IAAI,GAAG,CAAC;IACpE,WAAW,CAAC,SAAS;IACrB,WAAW,CAAC,SAAS;IACrB,WAAW,CAAC,MAAM;IAClB,WAAW,CAAC,OAAO;IACnB,WAAW,CAAC,GAAG;IACf,WAAW,CAAC,UAAU;IACtB,WAAW,CAAC,aAAa;IACzB,WAAW,CAAC,WAAW;IACvB,WAAW,CAAC,UAAU;IACtB,WAAW,CAAC,OAAO;IACnB,WAAW,CAAC,MAAM;IAClB,WAAW,CAAC,aAAa;IACzB,WAAW,CAAC,GAAG;IACf,WAAW,CAAC,SAAS;IACrB,WAAW,CAAC,cAAc;IAC1B,WAAW,CAAC,eAAe;CAC5B,CAAC,CAAA;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAA8B,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAA;AAExF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAA8B,IAAI,GAAG,CAAC;IACzE,WAAW,CAAC,IAAI;IAChB,WAAW,CAAC,oBAAoB;IAChC,uEAAuE;IACvE,oEAAoE;IACpE,kEAAkE;IAClE,WAAW,CAAC,iBAAiB;CAC9B,CAAC,CAAA;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAA8B,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAA;AAExG,qEAAqE;AACrE,MAAM,UAAU,kBAAkB,CAAC,IAAkB;IACnD,IAAI,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAA;IAC/C,IAAI,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,MAAM,CAAA;IAC9C,IAAI,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,WAAW,CAAA;IAC1D,IAAI,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAA;IACrD,OAAO,MAAM,CAAA;AACf,CAAC"}
1
+ {"version":3,"file":"gateKind.js","sourceRoot":"","sources":["../../src/harness/gateKind.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,OAAO,EAAE,WAAW,EAAoC,MAAM,uBAAuB,CAAA;AA0DrF;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAA8B,IAAI,GAAG,CAAC;IACpE,WAAW,CAAC,SAAS;IACrB,WAAW,CAAC,SAAS;IACrB,WAAW,CAAC,MAAM;IAClB,WAAW,CAAC,OAAO;IACnB,WAAW,CAAC,GAAG;IACf,WAAW,CAAC,UAAU;IACtB,WAAW,CAAC,aAAa;IACzB,WAAW,CAAC,WAAW;IACvB,WAAW,CAAC,UAAU;IACtB,WAAW,CAAC,OAAO;IACnB,WAAW,CAAC,eAAe;IAC3B,WAAW,CAAC,MAAM;IAClB,WAAW,CAAC,aAAa;IACzB,WAAW,CAAC,GAAG;IACf,WAAW,CAAC,SAAS;IACrB,WAAW,CAAC,cAAc;IAC1B,WAAW,CAAC,eAAe;CAC5B,CAAC,CAAA;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAA8B,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAA;AAExF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAA8B,IAAI,GAAG,CAAC;IACzE,WAAW,CAAC,IAAI;IAChB,WAAW,CAAC,oBAAoB;IAChC,uEAAuE;IACvE,oEAAoE;IACpE,kEAAkE;IAClE,WAAW,CAAC,iBAAiB;CAC9B,CAAC,CAAA;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAA8B,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAA;AAExG,qEAAqE;AACrE,MAAM,UAAU,kBAAkB,CAAC,IAAkB;IACnD,IAAI,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAA;IAC/C,IAAI,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,MAAM,CAAA;IAC9C,IAAI,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,WAAW,CAAA;IAC1D,IAAI,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAA;IACrD,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -129,7 +129,7 @@ process.stdin.on('end', () => {
129
129
  // hole. The hand-rolled check that lived here became the shared
130
130
  // intuticGuardEnvelope in gateBody.ts (v5), so every JS writer refuses the
131
131
  // same envelopes with the same event; if Copilot renames the fields,
132
- // re-run intutic sync after upgrading.
132
+ // restart intutic connect after upgrading so it rewrites this gate.
133
133
  intuticGuardEnvelope(ctx, ['tool_name', 'toolName', 'tool_input', 'toolInput'], logEvent);
134
134
 
135
135
  const input = ctx.tool_input || ctx.toolInput || {};
@@ -1 +1 @@
1
- {"version":3,"file":"grokHooks.d.ts","sourceRoot":"","sources":["../../src/harness/grokHooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkEG;AA+RH;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,WAAW,SAAK,GACf,OAAO,CAAC,IAAI,CAAC,CA0Bf"}
1
+ {"version":3,"file":"grokHooks.d.ts","sourceRoot":"","sources":["../../src/harness/grokHooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkEG;AAgSH;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,WAAW,SAAK,GACf,OAAO,CAAC,IAAI,CAAC,CA8Bf"}
@@ -70,6 +70,7 @@ import * as path from 'node:path';
70
70
  import * as os from 'node:os';
71
71
  import { parse as parseToml, stringify as stringifyToml } from 'smol-toml';
72
72
  import { createLogger } from '@intutic/logger';
73
+ import { openaiBaseUrl } from '@intutic/shared-types';
73
74
  import { newIso } from '@intutic/id';
74
75
  import { emitJsGate, emitJsFailClosedPrelude } from './gateBody.js';
75
76
  const log = createLogger('sync-grok-hooks');
@@ -344,7 +345,11 @@ export async function writeGrokHooks(workspaceRoot, proxyUrl, workspaceId = '')
344
345
  await atomicWriteJson(path.join(userHooksDir, HOOK_FILENAME), registration);
345
346
  log.info({ action: 'grok_hooks_written', level: 'user', path: userHooksDir }, 'Grok user-level hooks written');
346
347
  // 3. config.toml model base_url — project and user level.
347
- await mergeGrokConfigToml(path.join(workspaceRoot, '.grok', 'config.toml'), proxyUrl);
348
- await mergeGrokConfigToml(path.join(GROK_USER_DIR, 'config.toml'), proxyUrl);
348
+ // Grok Build talks to xAI's OpenAI-compatible API (its own default base_url
349
+ // is https://api.x.ai/v1) and appends /chat/completions, so the proxy URL it
350
+ // needs is the OpenAI-style one, ending in /v1.
351
+ const modelBaseUrl = openaiBaseUrl(proxyUrl);
352
+ await mergeGrokConfigToml(path.join(workspaceRoot, '.grok', 'config.toml'), modelBaseUrl);
353
+ await mergeGrokConfigToml(path.join(GROK_USER_DIR, 'config.toml'), modelBaseUrl);
349
354
  }
350
355
  //# sourceMappingURL=grokHooks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"grokHooks.js","sourceRoot":"","sources":["../../src/harness/grokHooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grokHooks.js","sourceRoot":"","sources":["../../src/harness/grokHooks.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,15 @@
16
16
  *
17
17
  * @module
18
18
  */
19
+ /**
20
+ * Merge the hook registration into the Hermes config: `hooks.preToolUse.command`
21
+ * is set to the gate, and everything else in the file — other hooks, MCP
22
+ * servers, comments — is kept. Edited through the `yaml` document model; an
23
+ * earlier line-based version replaced the first `command:` line anywhere in
24
+ * the file, whichever key it belonged to. A file that does not parse, or is
25
+ * not a mapping, is left untouched and reported.
26
+ */
27
+ export declare function mergeHermesYaml(existing: string, hookScriptPath: string): string | null;
19
28
  /**
20
29
  * Write the Hermes governance hook script, merge config, and write the
21
30
  * governance skill for the Hermes AI agent.
@@ -1 +1 @@
1
- {"version":3,"file":"hermesHooks.d.ts","sourceRoot":"","sources":["../../src/harness/hermesHooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAmKH;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CACpC,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,WAAW,SAAK,GACf,OAAO,CAAC,IAAI,CAAC,CAiEf"}
1
+ {"version":3,"file":"hermesHooks.d.ts","sourceRoot":"","sources":["../../src/harness/hermesHooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AA6FH;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAYvF;AA6CD;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CACpC,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,WAAW,SAAK,GACf,OAAO,CAAC,IAAI,CAAC,CAiEf"}