@askdkc/kiokuko 0.1.19 → 0.1.21

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 (60) hide show
  1. package/dist/bin/kiokuko.js +0 -0
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +28 -4
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/backup.d.ts.map +1 -1
  6. package/dist/commands/backup.js +17 -10
  7. package/dist/commands/backup.js.map +1 -1
  8. package/dist/commands/init.d.ts +1 -0
  9. package/dist/commands/init.d.ts.map +1 -1
  10. package/dist/commands/init.js +48 -10
  11. package/dist/commands/init.js.map +1 -1
  12. package/dist/commands/setup.d.ts +4 -0
  13. package/dist/commands/setup.d.ts.map +1 -1
  14. package/dist/commands/setup.js +36 -4
  15. package/dist/commands/setup.js.map +1 -1
  16. package/dist/db/adapter.d.ts.map +1 -1
  17. package/dist/db/adapter.js +2 -1
  18. package/dist/db/adapter.js.map +1 -1
  19. package/dist/db/migrate.d.ts +3 -0
  20. package/dist/db/migrate.d.ts.map +1 -1
  21. package/dist/db/migrate.js +13 -7
  22. package/dist/db/migrate.js.map +1 -1
  23. package/dist/db/upgrade-backup.d.ts.map +1 -1
  24. package/dist/db/upgrade-backup.js +5 -4
  25. package/dist/db/upgrade-backup.js.map +1 -1
  26. package/dist/errors.d.ts +4 -0
  27. package/dist/errors.d.ts.map +1 -1
  28. package/dist/errors.js +28 -0
  29. package/dist/errors.js.map +1 -1
  30. package/dist/memory/entries.js +3 -3
  31. package/dist/memory/entries.js.map +1 -1
  32. package/dist/memory/revisions.d.ts +5 -1
  33. package/dist/memory/revisions.d.ts.map +1 -1
  34. package/dist/memory/revisions.js +143 -10
  35. package/dist/memory/revisions.js.map +1 -1
  36. package/dist/setup/claude-config.d.ts +3 -1
  37. package/dist/setup/claude-config.d.ts.map +1 -1
  38. package/dist/setup/claude-config.js +12 -4
  39. package/dist/setup/claude-config.js.map +1 -1
  40. package/dist/setup/hermes-config.d.ts +3 -1
  41. package/dist/setup/hermes-config.d.ts.map +1 -1
  42. package/dist/setup/hermes-config.js +25 -12
  43. package/dist/setup/hermes-config.js.map +1 -1
  44. package/dist/setup/mcp-conflict.d.ts +4 -0
  45. package/dist/setup/mcp-conflict.d.ts.map +1 -0
  46. package/dist/setup/mcp-conflict.js +15 -0
  47. package/dist/setup/mcp-conflict.js.map +1 -0
  48. package/dist/setup/opencode-config.d.ts +3 -1
  49. package/dist/setup/opencode-config.d.ts.map +1 -1
  50. package/dist/setup/opencode-config.js +12 -4
  51. package/dist/setup/opencode-config.js.map +1 -1
  52. package/dist/setup/render.d.ts +3 -1
  53. package/dist/setup/render.d.ts.map +1 -1
  54. package/dist/setup/render.js +81 -5
  55. package/dist/setup/render.js.map +1 -1
  56. package/dist/setup/strict-toml.d.ts +11 -0
  57. package/dist/setup/strict-toml.d.ts.map +1 -1
  58. package/dist/setup/strict-toml.js +25 -4
  59. package/dist/setup/strict-toml.js.map +1 -1
  60. package/package.json +4 -2
@@ -1,6 +1,6 @@
1
1
  import { randomUUID } from 'node:crypto';
2
2
  import { withImmediateTransaction } from '../db/transaction.js';
3
- import { KiokukoError } from '../errors.js';
3
+ import { KiokukoError, storedMemoryIntegrityError } from '../errors.js';
4
4
  import { canonicalEntryRevisionContentHash, canonicalJson, validateRecordInput, requireWorkspace } from '../serialization/validate.js';
5
5
  import { recordAuditEvent } from './audit.js';
6
6
  import { findSecret } from './secrets.js';
@@ -8,7 +8,7 @@ import { syncEntrySearchProjection } from './structured-memory.js';
8
8
  import { decodeStoredMemoryRow, insertEntryRevisionInTransaction, normalizeStructuredScopeInput } from './revisions.js';
9
9
  function rowToEntry(database, row, options = {}) {
10
10
  if (typeof row.revision_entry_id !== 'string' || !Number.isSafeInteger(row.current_revision)) {
11
- throw new KiokukoError('INTEGRITY_ERROR', 'Stored entry or revision is invalid');
11
+ throw storedMemoryIntegrityError();
12
12
  }
13
13
  const tags = database
14
14
  .prepare('SELECT tag FROM entry_revision_tags WHERE entry_id = ? AND revision = ? ORDER BY tag ASC')
@@ -51,7 +51,7 @@ function rowToEntry(database, row, options = {}) {
51
51
  });
52
52
  const entry = decoded.entry;
53
53
  if (entry === undefined)
54
- throw new KiokukoError('INTEGRITY_ERROR', 'Stored entry or revision is invalid');
54
+ throw storedMemoryIntegrityError();
55
55
  const revision = decoded.revision;
56
56
  return {
57
57
  id: entry.id,
@@ -1 +1 @@
1
- {"version":3,"file":"entries.js","sourceRoot":"","sources":["../../src/memory/entries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entries.js","sourceRoot":"","sources":["../../src/memory/entries.ts"],"names":[],"mappings":"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"}
@@ -95,15 +95,19 @@ export declare function decodeStoredMemoryRow(input: {
95
95
  revision: EntryRevisionRecord;
96
96
  entry?: DecodedStoredEntryValues;
97
97
  };
98
+ export interface RevisionHashMigrationOptions {
99
+ readonly recoverInvalidStoredMemory?: boolean;
100
+ }
98
101
  /**
99
102
  * One-time migration operation for migration 009. This is the only place that
100
103
  * recognizes the released locale-dependent hash preimage. The caller must own
101
104
  * the migration transaction; any invalid preimage or canonical collision
102
105
  * aborts the whole schema upgrade.
103
106
  */
104
- export declare function canonicalizeEntryRevisionHashesInMigration(database: SqliteDatabase): {
107
+ export declare function canonicalizeEntryRevisionHashesInMigration(database: SqliteDatabase, options?: RevisionHashMigrationOptions): {
105
108
  inspected: number;
106
109
  rewritten: number;
110
+ recoveredEntries: number;
107
111
  };
108
112
  export declare function readEntryRevision(database: SqliteDatabase, input: {
109
113
  entryId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"revisions.d.ts","sourceRoot":"","sources":["../../src/memory/revisions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"revisions.d.ts","sourceRoot":"","sources":["../../src/memory/revisions.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { KiokukoError } from '../errors.js';
1
+ import { KiokukoError, storedMemoryIntegrityError } from '../errors.js';
2
2
  import { canonicalContentHash, canonicalEntryRevisionContentHash, canonicalJson, ENTRY_STATUSES, requireWorkspace, TRUST_LEVELS, validateRecordInput, } from '../serialization/validate.js';
3
3
  import { buildStructuredScope, } from './structured-memory.js';
4
4
  const SQLITE_CONSTRAINT_PRIMARY_KEY = 1_555;
@@ -16,7 +16,7 @@ function isExpectedRevisionConflict(error) {
16
16
  && REVISION_UNIQUENESS_FAILURES.has(failure.message);
17
17
  }
18
18
  function storedIntegrity() {
19
- throw new KiokukoError('INTEGRITY_ERROR', 'Stored entry or revision is invalid');
19
+ throw storedMemoryIntegrityError();
20
20
  }
21
21
  function isPlainObject(value) {
22
22
  if (typeof value !== 'object' || value === null || Array.isArray(value))
@@ -308,6 +308,118 @@ BEFORE UPDATE ON entry_revisions
308
308
  BEGIN
309
309
  SELECT RAISE(ABORT, 'entry_revisions are immutable');
310
310
  END`;
311
+ function quoteSqlIdentifier(value) {
312
+ return `"${value.replaceAll('"', '""')}"`;
313
+ }
314
+ function tableNames(database) {
315
+ return database
316
+ .prepare(`
317
+ SELECT name
318
+ FROM sqlite_schema
319
+ WHERE type = 'table'
320
+ AND name NOT LIKE 'sqlite_%'
321
+ `)
322
+ .all()
323
+ .flatMap((row) => typeof row.name === 'string' ? [row.name] : []);
324
+ }
325
+ function foreignKeys(database, table) {
326
+ return database
327
+ .prepare(`PRAGMA foreign_key_list(${quoteSqlIdentifier(table)})`)
328
+ .all();
329
+ }
330
+ function recoveryEntryId(row) {
331
+ if (typeof row.id !== 'string' || row.id.length === 0 || typeof row.workspace !== 'string') {
332
+ storedIntegrity();
333
+ }
334
+ return row.id;
335
+ }
336
+ function invalidRecoveryRevisionRows(database, entryId) {
337
+ return database
338
+ .prepare(`
339
+ SELECT entry_id AS entryId, revision
340
+ FROM entry_revisions
341
+ WHERE entry_id = ?
342
+ ORDER BY revision
343
+ `)
344
+ .all(entryId);
345
+ }
346
+ function deleteForeignKeyReferences(database, invalidEntries) {
347
+ const entryIds = invalidEntries.map(recoveryEntryId);
348
+ const revisions = invalidEntries.flatMap((entry) => invalidRecoveryRevisionRows(database, recoveryEntryId(entry)));
349
+ for (const table of tableNames(database)) {
350
+ for (const foreignKey of foreignKeys(database, table)) {
351
+ if (typeof foreignKey.table !== 'string' || typeof foreignKey.from !== 'string'
352
+ || typeof foreignKey.to !== 'string')
353
+ continue;
354
+ const childTable = quoteSqlIdentifier(table);
355
+ const childColumn = quoteSqlIdentifier(foreignKey.from);
356
+ if (foreignKey.table === 'entries' && foreignKey.to === 'id') {
357
+ for (const entryId of entryIds) {
358
+ if (table === 'entries' && foreignKey.from === 'superseded_by') {
359
+ database.prepare(`
360
+ UPDATE entries
361
+ SET superseded_by = NULL,
362
+ status = CASE WHEN status = 'superseded' THEN 'candidate' ELSE status END,
363
+ verified_at = CASE WHEN status = 'superseded' THEN NULL ELSE verified_at END
364
+ WHERE ${childColumn} = ?
365
+ `).run(entryId);
366
+ }
367
+ else if (table !== 'entries' && table !== 'entry_revisions') {
368
+ database.prepare(`DELETE FROM ${childTable} WHERE ${childColumn} = ?`).run(entryId);
369
+ }
370
+ }
371
+ }
372
+ else if (foreignKey.table === 'entry_revisions'
373
+ && (foreignKey.to === 'entry_id' || foreignKey.to === 'revision')) {
374
+ // Composite foreign keys are removed as one group below. Processing
375
+ // only their first column here would leave unrelated revision rows
376
+ // vulnerable to an over-broad delete.
377
+ continue;
378
+ }
379
+ }
380
+ const groups = new Map();
381
+ for (const foreignKey of foreignKeys(database, table)) {
382
+ if (typeof foreignKey.id !== 'number' || typeof foreignKey.table !== 'string')
383
+ continue;
384
+ const key = `${foreignKey.id}\u0000${foreignKey.table}`;
385
+ const group = groups.get(key) ?? [];
386
+ group.push(foreignKey);
387
+ groups.set(key, group);
388
+ }
389
+ for (const group of groups.values()) {
390
+ if (group[0]?.table !== 'entry_revisions' || table === 'entry_revisions')
391
+ continue;
392
+ const columns = group
393
+ .map((foreignKey) => ({
394
+ from: foreignKey.from,
395
+ to: foreignKey.to,
396
+ }))
397
+ .filter((value) => typeof value.from === 'string' && (value.to === 'entry_id' || value.to === 'revision'));
398
+ if (columns.length !== group.length)
399
+ continue;
400
+ for (const revision of revisions) {
401
+ if (typeof revision.entryId !== 'string' || typeof revision.revision !== 'number')
402
+ continue;
403
+ const parameters = columns.map(({ to }) => to === 'entry_id' ? revision.entryId : revision.revision);
404
+ const predicate = columns.map(({ from }) => `${quoteSqlIdentifier(from)} = ?`).join(' AND ');
405
+ database.prepare(`DELETE FROM ${quoteSqlIdentifier(table)} WHERE ${predicate}`).run(...parameters);
406
+ }
407
+ }
408
+ }
409
+ }
410
+ function removeInvalidStoredMemoryForMigration(database, invalidEntries) {
411
+ if (invalidEntries.length === 0)
412
+ return 0;
413
+ deleteForeignKeyReferences(database, invalidEntries);
414
+ const deleteEntry = database.prepare('DELETE FROM entries WHERE id = ? AND workspace = ?');
415
+ for (const entry of invalidEntries) {
416
+ const id = recoveryEntryId(entry);
417
+ if (typeof entry.workspace !== 'string')
418
+ storedIntegrity();
419
+ deleteEntry.run(id, entry.workspace);
420
+ }
421
+ return invalidEntries.length;
422
+ }
311
423
  function migratableRevision(database, row) {
312
424
  const entryId = storedNonEmptyString(row.entry_id);
313
425
  const createdBy = storedNonEmptyString(row.created_by);
@@ -402,7 +514,7 @@ function migratableRevision(database, row) {
402
514
  * the migration transaction; any invalid preimage or canonical collision
403
515
  * aborts the whole schema upgrade.
404
516
  */
405
- export function canonicalizeEntryRevisionHashesInMigration(database) {
517
+ export function canonicalizeEntryRevisionHashesInMigration(database, options = {}) {
406
518
  const formatTable = database.prepare(`
407
519
  SELECT type
408
520
  FROM sqlite_schema
@@ -428,14 +540,35 @@ export function canonicalizeEntryRevisionHashesInMigration(database) {
428
540
  `).all();
429
541
  const entries = database.prepare('SELECT id, workspace FROM entries ORDER BY id')
430
542
  .all();
543
+ const invalidEntries = [];
431
544
  for (const entry of entries) {
432
- const entryId = storedNonEmptyString(entry.id);
433
- const workspace = storedNonEmptyString(entry.workspace);
434
- const owner = ownerRevisionChain(database, entryId);
435
- if (owner === undefined || owner.workspace !== workspace || !completeRevisionChain(owner))
436
- storedIntegrity();
545
+ try {
546
+ const entryId = storedNonEmptyString(entry.id);
547
+ const workspace = storedNonEmptyString(entry.workspace);
548
+ const owner = ownerRevisionChain(database, entryId);
549
+ if (owner === undefined || owner.workspace !== workspace || !completeRevisionChain(owner))
550
+ storedIntegrity();
551
+ for (const row of rows.filter((candidate) => candidate.entry_id === entryId))
552
+ migratableRevision(database, row);
553
+ }
554
+ catch (error) {
555
+ if (options.recoverInvalidStoredMemory
556
+ && error instanceof KiokukoError
557
+ && error.code === 'INTEGRITY_ERROR'
558
+ && error.message.startsWith('Stored entry or revision is invalid.')) {
559
+ invalidEntries.push(entry);
560
+ continue;
561
+ }
562
+ throw error;
563
+ }
437
564
  }
438
- const updates = rows.map((row) => migratableRevision(database, row));
565
+ const recoveredEntries = removeInvalidStoredMemoryForMigration(database, invalidEntries);
566
+ const updates = database.prepare(`
567
+ SELECT entry_id, workspace, revision, kind, title, body, summary,
568
+ scope_json, provenance_json, content_hash, created_by, created_at
569
+ FROM entry_revisions
570
+ ORDER BY entry_id, revision
571
+ `).all().map((row) => migratableRevision(database, row));
439
572
  const canonicalIdentities = new Set();
440
573
  for (const update of updates) {
441
574
  const identity = `${update.workspace}\u0000${update.canonicalHash}`;
@@ -473,7 +606,7 @@ export function canonicalizeEntryRevisionHashesInMigration(database) {
473
606
  }
474
607
  database.prepare('INSERT INTO entry_revision_hash_format (singleton, algorithm) VALUES (1, ?)')
475
608
  .run(REVISION_HASH_ALGORITHM);
476
- return { inspected: updates.length, rewritten: changed.length };
609
+ return { inspected: updates.length, rewritten: changed.length, recoveredEntries };
477
610
  }
478
611
  function tagsFor(database, entryId, revision) {
479
612
  return database
@@ -1 +1 @@
1
- {"version":3,"file":"revisions.js","sourceRoot":"","sources":["../../src/memory/revisions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"revisions.js","sourceRoot":"","sources":["../../src/memory/revisions.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  import type { SkillDiscoveryMode } from '../skills/types.js';
2
2
  import type { DelimitedBlockResult } from './managed-text.js';
3
- export declare function renderClaudeConfig(existing: string | undefined, command?: string, skillDiscoveryMode?: SkillDiscoveryMode): DelimitedBlockResult;
3
+ export declare function renderClaudeConfig(existing: string | undefined, command?: string, skillDiscoveryMode?: SkillDiscoveryMode, options?: {
4
+ replaceConflictingIdentity?: boolean;
5
+ }): DelimitedBlockResult;
4
6
  //# sourceMappingURL=claude-config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"claude-config.d.ts","sourceRoot":"","sources":["../../src/setup/claude-config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAqC9D,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,SAAY,EAAE,kBAAkB,CAAC,EAAE,kBAAkB,GAAG,oBAAoB,CAuCnJ"}
1
+ {"version":3,"file":"claude-config.d.ts","sourceRoot":"","sources":["../../src/setup/claude-config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAsC9D,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,SAAY,EACnB,kBAAkB,CAAC,EAAE,kBAAkB,EACvC,OAAO,GAAE;IAAE,0BAA0B,CAAC,EAAE,OAAO,CAAA;CAAO,GACrD,oBAAoB,CA8CtB"}
@@ -1,6 +1,7 @@
1
1
  import { applyEdits, modify, parse } from 'jsonc-parser';
2
2
  import { KiokukoError } from '../errors.js';
3
3
  import { isSkillDiscoveryMode, SKILL_DISCOVERY_ENV } from '../skills/config.js';
4
+ import { setupMcpIdentityConflict } from './mcp-conflict.js';
4
5
  import { assertStrictJsonSyntax } from './strict-json.js';
5
6
  function object(value) {
6
7
  return typeof value === 'object' && value !== null && !Array.isArray(value)
@@ -31,14 +32,18 @@ function validation(message) {
31
32
  throw new KiokukoError('VALIDATION_ERROR', message);
32
33
  }
33
34
  function conflict() {
34
- throw new KiokukoError('CONFLICT', 'Claude user config already contains a conflicting kiokuko MCP server');
35
+ setupMcpIdentityConflict('claude', 'Claude user config already contains a conflicting kiokuko MCP server');
35
36
  }
36
- export function renderClaudeConfig(existing, command = 'kiokuko', skillDiscoveryMode) {
37
+ export function renderClaudeConfig(existing, command = 'kiokuko', skillDiscoveryMode, options = {}) {
37
38
  if (!isNonEmptyCommand(command))
38
39
  validation('Claude MCP command must be a non-empty executable path or name');
39
40
  if (skillDiscoveryMode !== undefined && !isSkillDiscoveryMode(skillDiscoveryMode)) {
40
41
  validation('Claude Skill discovery mode is invalid');
41
42
  }
43
+ if (options.replaceConflictingIdentity !== undefined
44
+ && typeof options.replaceConflictingIdentity !== 'boolean') {
45
+ validation('Claude MCP replacement authorization is invalid');
46
+ }
42
47
  const source = existing ?? '{}\n';
43
48
  assertStrictJsonSyntax(source, { allowTrailingComma: false, disallowComments: true }, 'Claude user config is not a valid JSON object with unique keys');
44
49
  const errors = [];
@@ -51,9 +56,12 @@ export function renderClaudeConfig(existing, command = 'kiokuko', skillDiscovery
51
56
  if (root.mcpServers !== undefined && mcpServers === undefined)
52
57
  validation('Claude user config has an invalid mcpServers object');
53
58
  const currentServer = mcpServers?.kiokuko;
54
- if (currentServer !== undefined && !isCanonicalManagedServer(currentServer))
59
+ const canonicalServer = currentServer !== undefined && isCanonicalManagedServer(currentServer)
60
+ ? currentServer
61
+ : undefined;
62
+ if (currentServer !== undefined && canonicalServer === undefined && !options.replaceConflictingIdentity)
55
63
  conflict();
56
- const currentEnvironment = currentServer === undefined ? undefined : object(currentServer.env);
64
+ const currentEnvironment = canonicalServer === undefined ? undefined : object(canonicalServer.env);
57
65
  const effectiveSkillDiscoveryMode = skillDiscoveryMode
58
66
  ?? currentEnvironment?.[SKILL_DISCOVERY_ENV]
59
67
  ?? 'official';
@@ -1 +1 @@
1
- {"version":3,"file":"claude-config.js","sourceRoot":"","sources":["../../src/setup/claude-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-config.js","sourceRoot":"","sources":["../../src/setup/claude-config.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  import type { SkillDiscoveryMode } from '../skills/types.js';
2
2
  import type { DelimitedBlockResult } from './managed-text.js';
3
3
  export declare const HERMES_MANAGED_MARKER = "Managed by `kiokuko setup`.";
4
- export declare function renderHermesConfig(existing: string | undefined, command?: string, skillDiscoveryMode?: SkillDiscoveryMode): DelimitedBlockResult;
4
+ export declare function renderHermesConfig(existing: string | undefined, command?: string, skillDiscoveryMode?: SkillDiscoveryMode, options?: {
5
+ replaceConflictingIdentity?: boolean;
6
+ }): DelimitedBlockResult;
5
7
  //# sourceMappingURL=hermes-config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hermes-config.d.ts","sourceRoot":"","sources":["../../src/setup/hermes-config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,eAAO,MAAM,qBAAqB,gCAAgC,CAAC;AAkFnE,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,SAAY,EAAE,kBAAkB,CAAC,EAAE,kBAAkB,GAAG,oBAAoB,CAmDnJ"}
1
+ {"version":3,"file":"hermes-config.d.ts","sourceRoot":"","sources":["../../src/setup/hermes-config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAG9D,eAAO,MAAM,qBAAqB,gCAAgC,CAAC;AAiGnE,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,SAAY,EACnB,kBAAkB,CAAC,EAAE,kBAAkB,EACvC,OAAO,GAAE;IAAE,0BAA0B,CAAC,EAAE,OAAO,CAAA;CAAO,GACrD,oBAAoB,CA4DtB"}
@@ -1,6 +1,7 @@
1
1
  import { parseDocument, isMap, isNode, isPair, isScalar, isSeq } from 'yaml';
2
2
  import { KiokukoError } from '../errors.js';
3
3
  import { isSkillDiscoveryMode, SKILL_DISCOVERY_ENV } from '../skills/config.js';
4
+ import { setupMcpIdentityConflict } from './mcp-conflict.js';
4
5
  export const HERMES_MANAGED_MARKER = 'Managed by `kiokuko setup`.';
5
6
  function scalarValue(value) {
6
7
  return isScalar(value) ? value.value : undefined;
@@ -62,7 +63,18 @@ function validation() {
62
63
  throw new KiokukoError('VALIDATION_ERROR', 'Hermes config is not a valid YAML mapping');
63
64
  }
64
65
  function conflict() {
65
- throw new KiokukoError('CONFLICT', 'Hermes config already contains a conflicting kiokuko MCP server');
66
+ setupMcpIdentityConflict('hermes', 'Hermes config already contains a conflicting kiokuko MCP server');
67
+ }
68
+ function managedHermesServerValue(document, command, skillDiscoveryMode) {
69
+ const value = document.createNode({
70
+ command,
71
+ args: ['mcp'],
72
+ env: { [SKILL_DISCOVERY_ENV]: skillDiscoveryMode },
73
+ });
74
+ if (!isNode(value))
75
+ validation();
76
+ value.commentBefore = ` ${HERMES_MANAGED_MARKER}`;
77
+ return value;
66
78
  }
67
79
  function serializeHermesDocument(document, source, existing) {
68
80
  const eol = source.includes('\r\n') ? '\r\n' : '\n';
@@ -73,13 +85,17 @@ function serializeHermesDocument(document, source, existing) {
73
85
  action: existing === undefined ? 'created' : content === existing ? 'unchanged' : 'updated',
74
86
  };
75
87
  }
76
- export function renderHermesConfig(existing, command = 'kiokuko', skillDiscoveryMode) {
88
+ export function renderHermesConfig(existing, command = 'kiokuko', skillDiscoveryMode, options = {}) {
77
89
  if (typeof command !== 'string' || command.trim().length === 0 || command.includes('\0')) {
78
90
  throw new KiokukoError('VALIDATION_ERROR', 'Hermes MCP command must be a non-empty executable path or name');
79
91
  }
80
92
  if (skillDiscoveryMode !== undefined && !isSkillDiscoveryMode(skillDiscoveryMode)) {
81
93
  throw new KiokukoError('VALIDATION_ERROR', 'Hermes Skill discovery mode is invalid');
82
94
  }
95
+ if (options.replaceConflictingIdentity !== undefined
96
+ && typeof options.replaceConflictingIdentity !== 'boolean') {
97
+ throw new KiokukoError('VALIDATION_ERROR', 'Hermes MCP replacement authorization is invalid');
98
+ }
83
99
  const source = existing ?? '';
84
100
  const document = parseDocument(source);
85
101
  if (document.errors.length > 0)
@@ -103,8 +119,12 @@ export function renderHermesConfig(existing, command = 'kiokuko', skillDiscovery
103
119
  const serverMap = mcpServers;
104
120
  const existingPair = findKeyPair(serverMap, 'kiokuko');
105
121
  if (existingPair !== undefined) {
106
- if (!hasManagedMarker(existingPair) || !hasCanonicalManagedShape(existingPair))
107
- conflict();
122
+ if (!hasManagedMarker(existingPair) || !hasCanonicalManagedShape(existingPair)) {
123
+ if (!options.replaceConflictingIdentity)
124
+ conflict();
125
+ existingPair.value = managedHermesServerValue(document, command, skillDiscoveryMode ?? 'official');
126
+ return serializeHermesDocument(document, source, existing);
127
+ }
108
128
  const currentSkillDiscoveryMode = currentManagedSkillDiscoveryMode(existingPair);
109
129
  if (currentSkillDiscoveryMode === undefined)
110
130
  conflict();
@@ -118,14 +138,7 @@ export function renderHermesConfig(existing, command = 'kiokuko', skillDiscovery
118
138
  return serializeHermesDocument(document, source, existing);
119
139
  }
120
140
  const effectiveSkillDiscoveryMode = skillDiscoveryMode ?? 'official';
121
- const pair = document.createPair('kiokuko', {
122
- command,
123
- args: ['mcp'],
124
- env: { [SKILL_DISCOVERY_ENV]: effectiveSkillDiscoveryMode },
125
- });
126
- if (!isNode(pair.value))
127
- validation();
128
- pair.value.commentBefore = ` ${HERMES_MANAGED_MARKER}`;
141
+ const pair = document.createPair('kiokuko', managedHermesServerValue(document, command, effectiveSkillDiscoveryMode));
129
142
  serverMap.add(pair);
130
143
  return serializeHermesDocument(document, source, existing);
131
144
  }