robrain 0.4.1 → 2.0.1

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.
@@ -2,6 +2,8 @@ interface ExportOptions {
2
2
  dryRun?: boolean;
3
3
  includeUnreviewed?: boolean;
4
4
  to?: string;
5
+ /** Also write a single git-committed ledger. `true` → <projectRoot>/decisions.md; string → that path. */
6
+ ledger?: string | boolean;
5
7
  /** Project root for memory paths + stack detection (default: cwd). */
6
8
  cwd?: string;
7
9
  /** Override Perception `project_id` when it differs from path-derived id. */
@@ -1 +1 @@
1
- {"version":3,"file":"export-memory.d.ts","sourceRoot":"","sources":["../../src/commands/export-memory.ts"],"names":[],"mappings":"AAiEA,UAAU,aAAa;IACrB,MAAM,CAAC,EAAa,OAAO,CAAA;IAC3B,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,EAAE,CAAC,EAAiB,MAAM,CAAA;IAC1B,sEAAsE;IACtE,GAAG,CAAC,EAAgB,MAAM,CAAA;IAC1B,6EAA6E;IAC7E,SAAS,CAAC,EAAS,MAAM,CAAA;CAC1B;AA6BD,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA0H5E"}
1
+ {"version":3,"file":"export-memory.d.ts","sourceRoot":"","sources":["../../src/commands/export-memory.ts"],"names":[],"mappings":"AAiEA,UAAU,aAAa;IACrB,MAAM,CAAC,EAAa,OAAO,CAAA;IAC3B,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,EAAE,CAAC,EAAiB,MAAM,CAAA;IAC1B,yGAAyG;IACzG,MAAM,CAAC,EAAa,MAAM,GAAG,OAAO,CAAA;IACpC,sEAAsE;IACtE,GAAG,CAAC,EAAgB,MAAM,CAAA;IAC1B,6EAA6E;IAC7E,SAAS,CAAC,EAAS,MAAM,CAAA;CAC1B;AA6BD,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA8J5E"}
@@ -1,6 +1,6 @@
1
1
  // packages/cli/src/commands/export-memory.ts
2
2
  // ─────────────────────────────────────────────────────────────
3
- // robrain export-memory [--dry-run] [--include-unreviewed] [--to DIR] [--cwd PATH] [--project-id ID]
3
+ // robrain export-memory [--dry-run] [--include-unreviewed] [--to DIR] [--ledger [path]] [--cwd PATH] [--project-id ID]
4
4
  //
5
5
  // Projects RoBrain's approved decision corpus into Claude Code's
6
6
  // auto-memory directory so decisions surface automatically in
@@ -22,7 +22,7 @@
22
22
  import chalk from 'chalk';
23
23
  import ora from 'ora';
24
24
  import { existsSync, mkdirSync, readFileSync, readdirSync, unlinkSync, writeFileSync, } from 'fs';
25
- import { join, resolve, sep } from 'path';
25
+ import { dirname, join, resolve, sep } from 'path';
26
26
  import { homedir } from 'os';
27
27
  import { cwd } from 'process';
28
28
  import { readConfig } from '../lib/config.js';
@@ -99,6 +99,36 @@ export async function exportMemoryCommand(opts) {
99
99
  const exportable = opts.includeUnreviewed
100
100
  ? active
101
101
  : active.filter(d => !!d.reviewed_at);
102
+ // ── 2b. Git-committed ledger (opt-in, additive) ─────────────
103
+ if (opts.ledger) {
104
+ const approved = active.filter(d => !!d.reviewed_at);
105
+ const pending = active.filter(d => !d.reviewed_at);
106
+ const superseded = decisions.filter(d => !!d.invalidated_at);
107
+ const ledgerPath = confineMemoryDir(typeof opts.ledger === 'string' ? opts.ledger : join(projectRoot, 'decisions.md'), projectRoot);
108
+ const content = renderLedger(info.name, approved, pending, superseded, !!opts.includeUnreviewed);
109
+ const changed = !existsSync(ledgerPath) ||
110
+ stripVolatile(readFileSync(ledgerPath, 'utf8')) !== stripVolatile(content);
111
+ if (opts.dryRun) {
112
+ console.log(chalk.bold(` Ledger — ${info.name}`));
113
+ console.log((changed ? chalk.yellow(' ↺ would write ') : chalk.dim(' · unchanged ')) +
114
+ ledgerPath.replace(projectRoot + sep, '') +
115
+ chalk.dim(` (${approved.length} approved, ${superseded.length} superseded${opts.includeUnreviewed ? `, ${pending.length} pending` : ''})`));
116
+ console.log();
117
+ }
118
+ else if (changed) {
119
+ const ledgerDir = dirname(ledgerPath);
120
+ if (!existsSync(ledgerDir)) {
121
+ mkdirSync(ledgerDir, { recursive: true });
122
+ }
123
+ writeFileSync(ledgerPath, content);
124
+ console.log(chalk.green(` ✓ Wrote ledger ${ledgerPath.replace(projectRoot + sep, '')}`) +
125
+ chalk.dim(` (${approved.length} approved, ${superseded.length} superseded${opts.includeUnreviewed ? `, ${pending.length} pending` : ''})`));
126
+ console.log();
127
+ }
128
+ else {
129
+ console.log(chalk.dim(` · Ledger ${ledgerPath.replace(projectRoot + sep, '')} unchanged\n`));
130
+ }
131
+ }
102
132
  if (exportable.length === 0) {
103
133
  console.log(chalk.bold(` Export memory — ${info.name}`));
104
134
  console.log();
@@ -387,6 +417,83 @@ function renderClusterFile(cluster) {
387
417
  }
388
418
  return fm + body.join('\n');
389
419
  }
420
+ function renderDecisionBlock(d, headingLevel = 3) {
421
+ const out = [];
422
+ out.push(`${'#'.repeat(headingLevel)} ${d.decision}`);
423
+ out.push('');
424
+ if (d.rationale) {
425
+ out.push(d.rationale);
426
+ out.push('');
427
+ }
428
+ const rej = d.rejected ?? [];
429
+ if (rej.length > 0) {
430
+ out.push('Ruled out:');
431
+ for (const r of rej)
432
+ out.push(` - **${r.option}** — ${r.reason}`);
433
+ out.push('');
434
+ }
435
+ const date = new Date(d.created_at).toLocaleDateString('en-US', { month: 'short', day: 'numeric', year: 'numeric' });
436
+ const conf = d.confidence >= 0.9 ? 'high' : d.confidence >= 0.6 ? 'medium' : 'low';
437
+ const meta = [`${date}`, `${conf} confidence`, `scope: ${d.scope}`];
438
+ out.push(`_${meta.join(' · ')}_`);
439
+ out.push('');
440
+ return out;
441
+ }
442
+ /**
443
+ * Single git-committed ledger. Read-only/generated: regenerated from the DB
444
+ * every run, so a stale hand-edit is overwritten. The DB stays the source of
445
+ * truth; this file exists so the team can diff/PR-review decision drift.
446
+ */
447
+ function renderLedger(projectName, approved, pending, superseded, includeUnreviewed) {
448
+ const L = [];
449
+ L.push('<!-- Generated by `robrain export-memory --ledger` — do not edit by hand. -->');
450
+ L.push('<!-- Source of truth is the RoBrain DB; this file is regenerated each run. -->');
451
+ L.push('');
452
+ L.push(`# Decisions — ${projectName}`);
453
+ L.push('');
454
+ L.push(`_Generated ${new Date().toISOString()}_`);
455
+ L.push('');
456
+ L.push('## Approved — in effect');
457
+ L.push('');
458
+ if (approved.length === 0) {
459
+ L.push('_None approved yet. Run `robrain review` to approve captured decisions._');
460
+ L.push('');
461
+ }
462
+ else {
463
+ const clusters = clusterByFileOverlap(approved);
464
+ for (const c of clusters) {
465
+ L.push(`### ${c.topic}`);
466
+ L.push('');
467
+ for (const d of c.decisions)
468
+ L.push(...renderDecisionBlock(d, 4));
469
+ if (c.files.size > 0) {
470
+ L.push('Files affected:');
471
+ for (const f of [...c.files].sort())
472
+ L.push(` - \`${f}\``);
473
+ L.push('');
474
+ }
475
+ }
476
+ }
477
+ if (includeUnreviewed && pending.length > 0) {
478
+ L.push('## Pending review — not yet approved');
479
+ L.push('');
480
+ L.push('_These are captured but unaffirmed. Not binding until approved._');
481
+ L.push('');
482
+ for (const d of pending.sort((a, b) => +new Date(b.created_at) - +new Date(a.created_at))) {
483
+ L.push(...renderDecisionBlock(d));
484
+ }
485
+ }
486
+ if (superseded.length > 0) {
487
+ L.push('## Superseded — no longer in effect');
488
+ L.push('');
489
+ L.push('_Kept for history: what the team decided before, and why it changed._');
490
+ L.push('');
491
+ for (const d of superseded.sort((a, b) => +new Date(b.created_at) - +new Date(a.created_at))) {
492
+ L.push(...renderDecisionBlock(d));
493
+ }
494
+ }
495
+ return L.join('\n').replace(/\n{3,}/g, '\n\n').trimEnd() + '\n';
496
+ }
390
497
  function formatDecisionLine(d) {
391
498
  const date = new Date(d.created_at).toLocaleDateString('en-US', { month: 'short', day: 'numeric', year: 'numeric' });
392
499
  const conf = d.confidence >= 0.9 ? 'high' : d.confidence >= 0.6 ? 'medium' : 'low';
@@ -421,7 +528,10 @@ function renderIndex(clusters, existing) {
421
528
  }
422
529
  /** Drop fields that change on every run so equality compares only substantive content. */
423
530
  function stripVolatile(content) {
424
- return content.replace(/^last_exported:.*$/m, '').trim();
531
+ return content
532
+ .replace(/^last_exported:.*$/m, '')
533
+ .replace(/^_Generated .*_$/m, '')
534
+ .trim();
425
535
  }
426
536
  function isRoBrainOwned(fileContent) {
427
537
  // Only treat the first frontmatter block as authoritative
@@ -1 +1 @@
1
- {"version":3,"file":"export-memory.js","sourceRoot":"","sources":["../../src/commands/export-memory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"export-memory.js","sourceRoot":"","sources":["../../src/commands/export-memory.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,gEAAgE;AAChE,uHAAuH;AACvH,EAAE;AACF,iEAAiE;AACjE,8DAA8D;AAC9D,0DAA0D;AAC1D,EAAE;AACF,qBAAqB;AACrB,0DAA0D;AAC1D,2DAA2D;AAC3D,qDAAqD;AACrD,sEAAsE;AACtE,2DAA2D;AAC3D,qDAAqD;AACrD,+DAA+D;AAC/D,8CAA8C;AAC9C,EAAE;AACF,kEAAkE;AAClE,gEAAgE;AAChE,gEAAgE;AAEhE,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,GAAG,MAAQ,KAAK,CAAA;AACvB,OAAO,EACL,UAAU,EACV,SAAS,EACT,YAAY,EACZ,WAAW,EACX,UAAU,EACV,aAAa,GACd,MAAM,IAAI,CAAA;AACX,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAClD,OAAO,EAAE,OAAO,EAAE,MAAsB,IAAI,CAAA;AAC5C,OAAO,EAAE,GAAG,EAAE,MAA0B,SAAS,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,MAAmB,kBAAkB,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAoB,MAAM,mBAAmB,CAAA;AACvE,OAAO,EACL,gBAAgB,EAChB,eAAe,GAChB,MAAM,wBAAwB,CAAA;AAE/B;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,EAAU,EAAE,WAAmB;IACvD,MAAM,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC,CAAA;IAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;IAC/B,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IACjC,MAAM,MAAM,GAAG,CAAC,MAAc,EAAE,KAAa,EAAE,EAAE,CAC/C,KAAK,KAAK,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,GAAG,CAAC,CAAA;IACpD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;QACvD,OAAO,CAAC,GAAG,EAAE,CAAA;QACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,0DAA0D,CAAC,CAAC,CAAA;QACjG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,iBAAiB,QAAQ,EAAE,CAAC,CAAC,CAAA;QACnD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,sBAAsB,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,CAAA;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAqCD,MAAM,aAAa,GAAG,uFAAuF,CAAA;AAC7G,MAAM,WAAW,GAAK,sBAAsB,CAAA;AAC5C,MAAM,kBAAkB,GAAG,iBAAiB,CAAA;AAE5C,iEAAiE;AAEjE,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAAmB;IAC3D,OAAO,CAAC,GAAG,EAAE,CAAA;IAEb,MAAM,MAAM,GAAO,UAAU,EAAE,CAAA;IAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,IAAI,GAAG,EAAE,CAAA;IACrC,MAAM,QAAQ,GAAK,iBAAiB,CAAC,WAAW,CAAC,CAAA;IACjD,MAAM,IAAI,GAAgB,IAAI,CAAC,SAAS;QACtC,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE;QACrC,CAAC,CAAC,QAAQ,CAAA;IACZ,MAAM,OAAO,GAAG,MAAM,CAAC,aAAa,IAAI,uBAAuB,CAAA;IAC/D,MAAM,OAAO,GAAG,MAAM,CAAC,aAAa,IAAI,EAAE,CAAA;IAE1C,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE;QACvB,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC;QACxC,CAAC,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAA;IACjC,MAAM,SAAS,GAAG,eAAe,CAAC,SAAS,CAAC,CAAA;IAE5C,+DAA+D;IAC/D,MAAM,OAAO,GAAG,GAAG,CAAC,EAAE,IAAI,EAAE,uCAAuC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;IAE9F,IAAI,SAAS,GAAe,EAAE,CAAA;IAC9B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;YACjC,UAAU,EAAE,IAAI,CAAC,EAAE;YACnB,OAAO,EAAK,MAAM,EAAM,sDAAsD;YAC9E,KAAK,EAAO,KAAK,EAAO,gDAAgD;SACzE,CAAC,CAAA;QACF,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,cAAc,MAAM,EAAE,EAAE;YACxD,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,UAAU,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE;SACjE,CAAC,CAAA;QACF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,OAAO,CAAC,IAAI,CAAC,8BAA8B,GAAG,CAAC,MAAM,2BAA2B,CAAC,CAAA;YACjF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,kBAAkB,OAAO,EAAE,CAAC,CAAC,CAAA;YACnD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC,CAAA;YACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAA+B,CAAA;QAC1D,SAAS,GAAI,IAAI,CAAC,SAAS,IAAI,EAAE,CAAA;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAA;QAC9C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC,CAAA;QACrD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC,CAAA;QACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,OAAO,CAAC,IAAI,EAAE,CAAA;IAEd,+DAA+D;IAC/D,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAA;IACrC,MAAM,MAAM,GAAS,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAA;IAC7D,MAAM,UAAU,GAAK,IAAI,CAAC,iBAAiB;QACzC,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAA;IAEvC,+DAA+D;IAC/D,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,MAAM,QAAQ,GAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAA;QACtD,MAAM,OAAO,GAAM,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAA;QACrD,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAA;QAC5D,MAAM,UAAU,GAAG,gBAAgB,CACjC,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,EACjF,WAAW,CACZ,CAAA;QACD,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;QAChG,MAAM,OAAO,GACX,CAAC,UAAU,CAAC,UAAU,CAAC;YACvB,aAAa,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,KAAK,aAAa,CAAC,OAAO,CAAC,CAAA;QAE5E,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;YAClD,OAAO,CAAC,GAAG,CACT,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;gBAC5E,UAAU,CAAC,OAAO,CAAC,WAAW,GAAG,GAAG,EAAE,EAAE,CAAC;gBACzC,KAAK,CAAC,GAAG,CAAC,MAAM,QAAQ,CAAC,MAAM,cAAc,UAAU,CAAC,MAAM,cAAc,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,MAAM,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAC5I,CAAA;YACD,OAAO,CAAC,GAAG,EAAE,CAAA;QACf,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YACnB,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;YACrC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC3B,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;YAC3C,CAAC;YACD,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;YAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,oBAAoB,UAAU,CAAC,OAAO,CAAC,WAAW,GAAG,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC;gBACtF,KAAK,CAAC,GAAG,CAAC,MAAM,QAAQ,CAAC,MAAM,cAAc,UAAU,CAAC,MAAM,cAAc,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,MAAM,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;YAC9I,OAAO,CAAC,GAAG,EAAE,CAAA;QACf,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,UAAU,CAAC,OAAO,CAAC,WAAW,GAAG,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAA;QAC/F,CAAC;IACH,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;QACzD,OAAO,CAAC,GAAG,EAAE,CAAA;QACb,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC,CAAA;YACvE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC,CAAA;QAC7E,CAAC;aAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,YAAY,mDAAmD,CAAC,CAAC,CAAA;QAClG,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,MAAM,mBAAmB,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,oCAAoC,CAAC,CAAC,CAAA;YAC/H,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,wBAAwB,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;YACjG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,6CAA6C,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC,CAAA;QACpI,CAAC;QACD,OAAM;IACR,CAAC;IAED,+DAA+D;IAC/D,MAAM,QAAQ,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAA;IAEjD,+DAA+D;IAC/D,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,CAAA;IAE7E,+DAA+D;IAC/D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IACzD,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,mBAAmB,CAAA;IAC7E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,UAAU,CAAC,MAAM,IAAI,WAAW,GAAG,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,QAAQ,CAAC,MAAM,SAAS,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;IAClK,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,SAAS,IAAI,CAAC,CAAC,CAAA;IAElD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,KAAK,OAAO,CAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC;YACxD,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC;gBACzD,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,CAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC;oBACtD,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC;wBACtD,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;QACrC,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,GAAG,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IACxH,CAAC;IAED,+DAA+D;IAC/D,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,EAAE,CAAA;QACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC,CAAA;QAClF,OAAM;IACR,CAAC;IAED,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3B,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC3C,CAAC;IAED,IAAI,MAAM,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,SAAS,GAAG,CAAC,EAAE,SAAS,GAAG,CAAC,CAAA;IACzD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QAClC,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACzD,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,OAAQ,CAAC,CAAA;YAC3C,MAAM,EAAE,CAAA;QACV,CAAC;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpC,IAAI,CAAC;gBAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAAC,OAAO,EAAE,CAAA;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC;QAC5E,CAAC;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACnC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,OAAQ,CAAC,CAAA;QAC7C,CAAC;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAClC,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW;gBAAE,SAAS,EAAE,CAAA;;gBACV,SAAS,EAAE,CAAA;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,EAAE,CAAA;IACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,MAAM,eAAe,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,4BAA4B,CAAC,CAAC,CAAA;IAC/G,IAAI,SAAS,GAAG,CAAC;QAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,SAAS,QAAQ,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAA;IAC1G,IAAI,OAAO,GAAG,CAAC;QAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,OAAO,4BAA4B,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAA;IACxH,IAAI,SAAS,GAAG,CAAC;QAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,SAAS,sBAAsB,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,gCAAgC,CAAC,CAAC,CAAA;IACnJ,OAAO,CAAC,GAAG,EAAE,CAAA;AACf,CAAC;AAED,iEAAiE;AACjE,yDAAyD;AACzD,2DAA2D;AAE3D,SAAS,oBAAoB,CAAC,SAAqB;IACjD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAA;IACxC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAE9C,MAAM,IAAI,GAAG,CAAC,CAAS,EAAU,EAAE;QACjC,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAE,CAAA;QACtB,OAAO,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC,CAAC,CAAE;YAAE,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAE,CAAA;QAC/C,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAChB,OAAO,CAAC,CAAA;IACV,CAAC,CAAA;IACD,MAAM,KAAK,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE;QACrC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QAChC,IAAI,EAAE,KAAK,EAAE;YAAE,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;IACnC,CAAC,CAAA;IAED,8EAA8E;IAC9E,MAAM,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC/C,MAAM,YAAY,GAAe,EAAE,CAAA;IAEnC,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACpB,SAAQ;QACV,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;YACjC,IAAI,IAAI;gBAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;;gBACjB,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;IAED,gBAAgB;IAChB,MAAM,MAAM,GAAG,IAAI,GAAG,EAAsB,CAAA;IAC5C,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC;YAAE,SAAQ;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QACvB,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;QAClC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACX,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IACvB,CAAC;IAED,MAAM,QAAQ,GAAc,EAAE,CAAA;IAC9B,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAA;QAC/B,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5D,MAAM,KAAK,GAAG,YAAY,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;QACrC,QAAQ,CAAC,IAAI,CAAC;YACZ,KAAK,EAAM,KAAK,CAAC,OAAO;YACxB,IAAI,EAAO,KAAK,CAAC,IAAI;YACrB,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC/E,KAAK;SACN,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,QAAQ,CAAC,IAAI,CAAC;YACZ,KAAK,EAAM,mBAAmB;YAC9B,IAAI,EAAO,SAAS;YACpB,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YACzF,KAAK,EAAM,IAAI,GAAG,EAAE;SACrB,CAAC,CAAA;IACJ,CAAC;IAED,qDAAqD;IACrD,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACrB,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAC1E,CAAA;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,YAAY,CACnB,SAAqB,EACrB,KAAsB;IAEtB,2DAA2D;IAC3D,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAA;IACxC,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACzC,qDAAqD;QACrD,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACrB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACvC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;QAC7C,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IACzC,CAAC;IACD,IAAI,IAAI,GAAG,EAAE,CAAA;IACb,IAAI,SAAS,GAAG,CAAC,CAAA;IACjB,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC;QAC5B,IAAI,CAAC,GAAG,SAAS,IAAI,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACjE,IAAI,GAAQ,CAAC,CAAA;YACb,SAAS,GAAG,CAAC,CAAA;QACf,CAAC;IACH,CAAC;IACD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,wCAAwC;QACxC,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,OAAO,CAAA;IAC7E,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAA;IACpB,MAAM,IAAI,GAAM,IAAI;SACjB,WAAW,EAAE;SACb,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;WACV,OAAO,CAAA;IACZ,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;AAC1B,CAAC;AAeD,SAAS,UAAU,CACjB,QAAoB,EACpB,SAAiB,EACjB,SAAiB,EACjB,OAAkB;IAElB,MAAM,OAAO,GAAiB,EAAE,CAAA;IAChC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAA;IAEtC,0BAA0B;IAC1B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,YAAY,OAAO,CAAC,IAAI,KAAK,CAAA;QAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QAC1C,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAE1B,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAA;QAE1C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,YAAY,OAAO,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;QACpJ,CAAC;aAAM,CAAC;YACN,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;YAC/C,IAAI,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7B,uEAAuE;gBACvE,0EAA0E;gBAC1E,IAAI,aAAa,CAAC,QAAQ,CAAC,KAAK,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;oBACvD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAA;gBACnE,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;gBAC7E,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,8BAA8B,EAAE,CAAC,CAAA;YACtF,CAAC;QACH,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1B,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,SAAQ;YACpE,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;YAClC,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,SAAQ;YACpC,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;gBAC3C,IAAI,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC7B,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC,CAAA;gBAC3E,CAAC;YACH,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,qBAAqB;IACrB,MAAM,YAAY,GAAG,WAAW,CAAC,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IACxG,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,gCAAgC,EAAE,CAAC,CAAA;IAE/G,OAAO,EAAE,OAAO,EAAE,CAAA;AACpB,CAAC;AAED,iEAAiE;AAEjE,SAAS,iBAAiB,CAAC,OAAgB;IACzC,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAE,CAAA;IAC7D,MAAM,GAAG,GAAI,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEjE,cAAc;IACd,MAAM,EAAE,GAAG;QACT,KAAK;QACL,iBAAiB;QACjB,eAAe;QACf,SAAS,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACnC,eAAe;QACf,GAAG;QACH,kBAAkB,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE;QAC5C,KAAK;QACL,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEZ,OAAO;IACP,MAAM,IAAI,GAAa,EAAE,CAAA;IACzB,IAAI,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;IAC/B,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAEb,+DAA+D;IAC/D,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;IAC9B,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACb,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAA;IACnC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAEb,yCAAyC;IACzC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAA;IACxC,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QAClC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;gBAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAA;QAC3D,CAAC;IACH,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAA;QACvC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACb,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,QAAQ,MAAM,EAAE,CAAC,CAAA;QACvC,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACf,CAAC;IAED,iBAAiB;IACjB,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;QAC9B,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACb,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE;YAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAClE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACf,CAAC;IAED,qCAAqC;IACrC,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QACvB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACb,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,IAAI,CAAC,IAAI,CAAC,KAAK,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QACzC,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACf,CAAC;IAED,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC7B,CAAC;AAED,SAAS,mBAAmB,CAAC,CAAW,EAAE,eAAsB,CAAC;IAC/D,MAAM,GAAG,GAAa,EAAE,CAAA;IACxB,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;IACrD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACZ,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;QAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAAC,CAAC;IACxD,MAAM,GAAG,GAAG,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAA;IAC5B,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnB,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QACtB,KAAK,MAAM,CAAC,IAAI,GAAG;YAAE,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC,CAAA;QAClE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACd,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,kBAAkB,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;IACpH,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAA;IAClF,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,EAAE,EAAE,GAAG,IAAI,aAAa,EAAE,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;IACnE,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACjC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACZ,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CACnB,WAAyB,EACzB,QAA6B,EAC7B,OAA6B,EAC7B,UAA6B,EAC7B,iBAA0B;IAE1B,MAAM,CAAC,GAAa,EAAE,CAAA;IACtB,CAAC,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAA;IACvF,CAAC,CAAC,IAAI,CAAC,gFAAgF,CAAC,CAAA;IACxF,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACV,CAAC,CAAC,IAAI,CAAC,iBAAiB,WAAW,EAAE,CAAC,CAAA;IACtC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACV,CAAC,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;IACjD,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAEV,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;IACjC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACV,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,CAAC,CAAC,IAAI,CAAC,0EAA0E,CAAC,CAAA;QAClF,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACZ,CAAC;SAAM,CAAC;QACN,MAAM,QAAQ,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAA;QAC/C,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;YACxB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACV,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS;gBAAE,CAAC,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YACjE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBACrB,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;gBACzB,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE;oBAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;gBAC3D,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACZ,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,iBAAiB,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,CAAC,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAA;QAC9C,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACV,CAAC,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAA;QAC1E,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACV,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;YAC1F,CAAC,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAA;QACnC,CAAC;IACH,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,CAAC,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAA;QAC7C,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACV,CAAC,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAA;QAC/E,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACV,KAAK,MAAM,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;YAC7F,CAAC,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAA;QACnC,CAAC;IACH,CAAC;IAED,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,CAAA;AACjE,CAAC;AAED,SAAS,kBAAkB,CAAC,CAAW;IACrC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,kBAAkB,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;IACpH,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAA;IAClF,MAAM,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IACxD,OAAO,SAAS,CAAC,CAAC,QAAQ,GAAG,SAAS,MAAM,IAAI,KAAK,IAAI,eAAe,CAAA;AAC1E,CAAC;AAED,SAAS,WAAW,CAAC,QAAmB,EAAE,QAAgB;IACxD,MAAM,OAAO,GAAG;QACd,aAAa;QACb,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YAClB,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,IAAI,KAAK,CAAA;YACxC,MAAM,OAAO,GAAI,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,CAAA;YACtF,OAAO,MAAM,CAAC,CAAC,KAAK,KAAK,QAAQ,OAAO,OAAO,EAAE,CAAA;QACnD,CAAC,CAAC;QACF,WAAW;KACZ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEZ,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,oCAAoC;QACpC,OAAO,uBAAuB,OAAO,IAAI,CAAA;IAC3C,CAAC;IAED,0EAA0E;IAC1E,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;IAChD,MAAM,MAAM,GAAK,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IAE9C,IAAI,QAAQ,KAAK,CAAC,CAAC,IAAI,MAAM,KAAK,CAAC,CAAC,IAAI,MAAM,GAAG,QAAQ,EAAE,CAAC;QAC1D,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;QAC1C,MAAM,KAAK,GAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;QAC1D,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,EAAE,CAAA;IACtC,CAAC;IAED,oEAAoE;IACpE,MAAM,GAAG,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;IAC/C,OAAO,GAAG,QAAQ,GAAG,GAAG,KAAK,OAAO,IAAI,CAAA;AAC1C,CAAC;AAED,0FAA0F;AAC1F,SAAS,aAAa,CAAC,OAAe;IACpC,OAAO,OAAO;SACX,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC;SAClC,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC;SAChC,IAAI,EAAE,CAAA;AACX,CAAC;AAED,SAAS,cAAc,CAAC,WAAmB;IACzC,0DAA0D;IAC1D,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAChD,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;IAC7C,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,KAAK,CAAA;IAC9B,MAAM,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IACtC,OAAO,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAA;AACxC,CAAC;AAED,SAAS,SAAS,CAAC,CAAS;IAC1B,+DAA+D;IAC/D,IAAI,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,CAAC,CAAA;IAC9C,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAA;AACtC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"init-project.d.ts","sourceRoot":"","sources":["../../src/commands/init-project.ts"],"names":[],"mappings":"AAwBA,UAAU,kBAAkB;IAC1B,SAAS,CAAC,EAAS,MAAM,CAAA;IACzB,gFAAgF;IAChF,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqIhF"}
1
+ {"version":3,"file":"init-project.d.ts","sourceRoot":"","sources":["../../src/commands/init-project.ts"],"names":[],"mappings":"AAwBA,UAAU,kBAAkB;IAC1B,SAAS,CAAC,EAAS,MAAM,CAAA;IACzB,gFAAgF;IAChF,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmIhF"}
@@ -3,8 +3,8 @@
3
3
  // robrain init-project [--project-id ID]
4
4
  //
5
5
  // Warm-starts the memory store from existing codebase context.
6
- // Reads: package.json, README, git log, CLAUDE.md
7
- // Writes: CLAUDE.md instructions, optional .cursor/rules/robrain.mdc,
6
+ // Reads: package.json, README, git log, CLAUDE.md, AGENTS.md
7
+ // Writes: CLAUDE.md + AGENTS.md instructions, optional .cursor/rules/robrain.mdc,
8
8
  // seeds 3-5 inferred decisions,
9
9
  // triggers always-on summary generation.
10
10
  //
@@ -18,7 +18,7 @@ import { existsSync, readFileSync } from 'fs';
18
18
  import { dirname, join } from 'path';
19
19
  import { readConfig, isAuthenticated } from '../lib/config.js';
20
20
  import { gatherProjectInfo, seedProjectMemory } from '../lib/project.js';
21
- import { detectEditors, writeClaudeMd, writeCursorRoBrainRule } from '../lib/editor.js';
21
+ import { detectEditors, writeClaudeMd, writeCursorRoBrainRule, writeAgentsMd } from '../lib/editor.js';
22
22
  export async function initProjectCommand(opts) {
23
23
  console.log();
24
24
  console.log(chalk.bold(' robrain init-project'));
@@ -75,22 +75,22 @@ export async function initProjectCommand(opts) {
75
75
  process.exit(0);
76
76
  }
77
77
  }
78
- // ── Write CLAUDE.md (+ Cursor rule if Cursor is installed) ─
79
- const hasCursor = detectEditors().some(e => e.editor === 'cursor');
78
+ // ── Write CLAUDE.md + AGENTS.md (+ Cursor rule when Cursor is installed) ─
79
+ const editors = detectEditors();
80
+ const hasCursor = editors.some(e => e.editor === 'cursor');
81
+ const hasCodex = editors.some(e => e.editor === 'codex');
82
+ const instructionExtras = hasCursor ? 'CLAUDE.md + AGENTS.md + Cursor' : 'CLAUDE.md + AGENTS.md';
80
83
  const mdSpinner = ora({
81
- text: hasCursor
82
- ? 'Writing editor instructions (CLAUDE.md + Cursor)...'
83
- : 'Writing CLAUDE.md instructions...',
84
+ text: `Writing editor instructions (${instructionExtras})...`,
84
85
  color: 'green',
85
86
  }).start();
86
87
  writeClaudeMd(projectRoot, resolvedProjectId, instructionMode);
88
+ writeAgentsMd(projectRoot, resolvedProjectId, instructionMode);
87
89
  let cursorRuleApplied = false;
88
90
  if (hasCursor) {
89
91
  cursorRuleApplied = writeCursorRoBrainRule(projectRoot, resolvedProjectId, instructionMode);
90
92
  }
91
- mdSpinner.succeed(hasCursor
92
- ? 'Editor instructions updated (CLAUDE.md + Cursor rule)'
93
- : 'CLAUDE.md updated with RoBrain instructions');
93
+ mdSpinner.succeed(`Editor instructions updated (${instructionExtras})`);
94
94
  // ── Seed memory ────────────────────────────────────────────
95
95
  const seedSpinner = ora({ text: 'Inferring architectural decisions from codebase...', color: 'green' }).start();
96
96
  const perceptionKey = config.perceptionKey ?? '';
@@ -108,7 +108,8 @@ export async function initProjectCommand(opts) {
108
108
  console.log();
109
109
  console.log(chalk.green(' ✓ Project initialized\n'));
110
110
  console.log(chalk.dim(' Project ID: ') + chalk.cyan(resolvedProjectId));
111
- console.log(chalk.dim(' CLAUDE.md: ') + chalk.dim('updated with RoBrain instructions'));
111
+ console.log(chalk.dim(' CLAUDE.md: ') + chalk.dim('updated with RoBrain instructions'));
112
+ console.log(chalk.dim(' AGENTS.md: ') + chalk.dim('updated (Codex CLI and other AGENTS.md clients)'));
112
113
  if (hasCursor) {
113
114
  console.log(chalk.dim(' Cursor: ') +
114
115
  chalk.dim(cursorRuleApplied
@@ -117,12 +118,12 @@ export async function initProjectCommand(opts) {
117
118
  }
118
119
  console.log();
119
120
  console.log(chalk.bold(' You\'re ready.'));
120
- if (hasCursor) {
121
- console.log(chalk.dim(' Open Claude Code or Cursor and start a session.'));
122
- }
123
- else {
124
- console.log(chalk.dim(' Open Claude Code and start a session.'));
125
- }
121
+ const editorNames = ['Claude Code'];
122
+ if (hasCursor)
123
+ editorNames.push('Cursor');
124
+ if (hasCodex)
125
+ editorNames.push('Codex');
126
+ console.log(chalk.dim(` Open ${editorNames.join(' / ')} and start a session.`));
126
127
  console.log(chalk.dim(' Session 2 will remember what happened in session 1.'));
127
128
  console.log();
128
129
  }
@@ -134,12 +135,16 @@ function findAncestorRoBrainProject(startDir) {
134
135
  for (;;) {
135
136
  const claudeMdPath = join(dir, 'CLAUDE.md');
136
137
  const cursorRulePath = join(dir, '.cursor', 'rules', 'robrain.mdc');
138
+ const agentsMdPath = join(dir, 'AGENTS.md');
137
139
  const claudeMdProjectId = readRoBrainProjectIdFromFile(claudeMdPath);
138
140
  if (claudeMdProjectId)
139
141
  return { projectId: claudeMdProjectId, source: 'CLAUDE.md', dir };
140
142
  const cursorProjectId = readRoBrainProjectIdFromFile(cursorRulePath);
141
143
  if (cursorProjectId)
142
144
  return { projectId: cursorProjectId, source: '.cursor/rules/robrain.mdc', dir };
145
+ const agentsProjectId = readRoBrainProjectIdFromFile(agentsMdPath);
146
+ if (agentsProjectId)
147
+ return { projectId: agentsProjectId, source: 'AGENTS.md', dir };
143
148
  const parent = dirname(dir);
144
149
  if (parent === dir)
145
150
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"init-project.js","sourceRoot":"","sources":["../../src/commands/init-project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init-project.js","sourceRoot":"","sources":["../../src/commands/init-project.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAoCA,UAAU,cAAc;IACtB,KAAK,CAAC,EAAU,MAAM,CAAA;IACtB,MAAM,CAAC,EAAS,MAAM,CAAA;IACtB,UAAU,CAAC,EAAK,OAAO,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,kGAAkG;IAClG,QAAQ,CAAC,EAAO,MAAM,CAAA;IACtB,kEAAkE;IAClE,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;AA+CD,wBAAsB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA8LxE"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAwCA,UAAU,cAAc;IACtB,KAAK,CAAC,EAAU,MAAM,CAAA;IACtB,MAAM,CAAC,EAAS,MAAM,CAAA;IACtB,UAAU,CAAC,EAAK,OAAO,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,kGAAkG;IAClG,QAAQ,CAAC,EAAO,MAAM,CAAA;IACtB,kEAAkE;IAClE,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;AA+CD,wBAAsB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA4KxE"}
@@ -1,6 +1,6 @@
1
1
  // src/commands/install.ts
2
2
  // ─────────────────────────────────────────────────────────────
3
- // robrain install [--token TOKEN] [--editor claude-code|cursor|copilot]
3
+ // robrain install [--token TOKEN] [--editor claude-code|cursor|copilot|codex]
4
4
  //
5
5
  // 1. Authenticate with Rory Plans
6
6
  // 2. Fetch provisioned API URLs + keys
@@ -14,7 +14,7 @@ import ora from 'ora';
14
14
  import prompts from 'prompts';
15
15
  import { readConfig, writeConfig, mergeConfig } from '../lib/config.js';
16
16
  import { validateToken, fetchProvisionedConfig } from '../lib/auth.js';
17
- import { detectEditors, writeMcpConfig } from '../lib/editor.js';
17
+ import { resolveEditorsForInstall, resolveLlmProviderFromEnv, writeMcpConfig, } from '../lib/editor.js';
18
18
  import { ensureSensingMcpBundle, controlBundleReady, sensingBundleReady, McpBundleError, } from '../lib/mcp-bundle.js';
19
19
  import { initProjectCommand } from './init-project.js';
20
20
  import { inferLocalRobrainMonorepoRoot, inferRobrainMonorepoRootFromCwd, loadCliEnv, readDotenvKey, } from '../lib/load-env.js';
@@ -142,47 +142,26 @@ export async function installCommand(opts) {
142
142
  }
143
143
  }
144
144
  // ── Step 5: Detect / select editors ───────────────────────
145
- const detected = detectEditors();
146
- let editorsToConfig = detected;
147
- if (opts.editor) {
148
- editorsToConfig = detected.filter(e => e.editor === opts.editor);
149
- if (editorsToConfig.length === 0) {
150
- // Force the specified editor even if not detected
151
- const configPaths = {
152
- 'claude-code': join(homedir(), '.claude.json'),
153
- 'cursor': join(homedir(), '.cursor', 'mcp.json'),
154
- };
155
- const configPath = configPaths[opts.editor];
156
- if (configPath) {
157
- editorsToConfig = [{
158
- editor: opts.editor,
159
- configPath,
160
- label: opts.editor,
161
- }];
162
- }
163
- }
164
- }
165
- else if (detected.length === 0) {
166
- console.log(chalk.yellow('\n No AI editors detected. Configuring Claude Code by default.'));
167
- editorsToConfig = [{
168
- editor: 'claude-code',
169
- configPath: join(homedir(), '.claude.json'),
170
- label: 'Claude Code',
171
- }];
145
+ let editorsToConfig = resolveEditorsForInstall(opts);
146
+ if (opts.editor && editorsToConfig.length === 0) {
147
+ console.log(chalk.red(`\n ✗ Unknown or unavailable editor: ${opts.editor}`));
148
+ console.log(chalk.dim(' Use: claude-code | cursor | copilot | codex\n'));
149
+ process.exit(1);
172
150
  }
173
- else if (detected.length > 1) {
151
+ if (!opts.editor && editorsToConfig.length > 1) {
174
152
  console.log();
175
153
  const { chosen } = await prompts({
176
154
  type: 'multiselect',
177
155
  name: 'chosen',
178
156
  message: 'Configure RoBrain for which editors?',
179
- choices: detected.map(e => ({ title: e.label, value: e.editor, selected: true })),
157
+ choices: editorsToConfig.map(e => ({ title: e.label, value: e.editor, selected: true })),
180
158
  });
181
- editorsToConfig = detected.filter(e => chosen.includes(e.editor));
159
+ editorsToConfig = editorsToConfig.filter(e => chosen.includes(e.editor));
182
160
  }
183
161
  // ── Step 6: Write MCP configs ──────────────────────────────
184
162
  spinner.start('Writing MCP configuration...');
185
163
  const includeControl = controlBundleReady(ROBRAIN_MCP_DIR);
164
+ const llmProvider = resolveLlmProviderFromEnv();
186
165
  const mcpOpts = {
187
166
  sensingMcpPath: join(ROBRAIN_MCP_DIR, 'sensing', 'dist', 'index.js'),
188
167
  controlMcpPath: join(ROBRAIN_MCP_DIR, 'control', 'dist', 'index.js'),
@@ -193,6 +172,8 @@ export async function installCommand(opts) {
193
172
  planningKey: provisioned.planningKey,
194
173
  embeddingProvider: embeddingProvider ?? 'openai',
195
174
  embeddingKey,
175
+ llmProvider,
176
+ openaiKey: process.env.OPENAI_API_KEY ?? '',
196
177
  includeControl,
197
178
  };
198
179
  for (const editor of editorsToConfig) {
@@ -213,7 +194,7 @@ export async function installCommand(opts) {
213
194
  planningKey: provisioned.planningKey,
214
195
  embeddingProvider: embeddingProvider ?? 'openai',
215
196
  installedAt: new Date().toISOString(),
216
- version: '0.4.1',
197
+ version: '2.0.1',
217
198
  });
218
199
  spinner.succeed('MCP servers configured');
219
200
  // ── Done ───────────────────────────────────────────────────
@@ -273,21 +254,52 @@ async function installSelfHosted(opts) {
273
254
  const answer = await prompts({ type: 'password', name: 'embKey', message: `${keyName}:` });
274
255
  embKey = answer.embKey;
275
256
  }
276
- let anthropicKey = process.env.ANTHROPIC_API_KEY ?? '';
277
- if (anthropicKey) {
278
- console.log(chalk.dim(' Using ANTHROPIC_API_KEY from environment'));
257
+ const llmProvider = resolveLlmProviderFromEnv();
258
+ if (llmProvider === 'openai') {
259
+ console.log(chalk.dim(' Using LLM_PROVIDER=openai from environment'));
260
+ }
261
+ let openaiKey = process.env.OPENAI_API_KEY ?? '';
262
+ if (llmProvider === 'openai') {
263
+ if (!openaiKey && provider === 'openai') {
264
+ openaiKey = embKey;
265
+ }
266
+ else if (openaiKey) {
267
+ console.log(chalk.dim(' Using OPENAI_API_KEY from environment (LLM)'));
268
+ }
269
+ else {
270
+ const answer = await prompts({
271
+ type: 'password',
272
+ name: 'openaiKey',
273
+ message: 'OPENAI_API_KEY (for Sensing decision extraction):',
274
+ });
275
+ openaiKey = answer.openaiKey;
276
+ }
277
+ }
278
+ let anthropicKey = '';
279
+ if (llmProvider === 'anthropic') {
280
+ anthropicKey = process.env.ANTHROPIC_API_KEY ?? '';
281
+ if (anthropicKey) {
282
+ console.log(chalk.dim(' Using ANTHROPIC_API_KEY from environment'));
283
+ }
284
+ else {
285
+ const answer = await prompts({
286
+ type: 'password',
287
+ name: 'anthropicKey',
288
+ message: 'ANTHROPIC_API_KEY (for Sensing classifiers):',
289
+ });
290
+ anthropicKey = answer.anthropicKey;
291
+ }
279
292
  }
280
293
  else {
281
- const answer = await prompts({ type: 'password', name: 'anthropicKey', message: 'ANTHROPIC_API_KEY (for Sensing classifiers):' });
282
- anthropicKey = answer.anthropicKey;
294
+ console.log(chalk.dim(' Skipping ANTHROPIC_API_KEY (LLM_PROVIDER=openai)'));
295
+ }
296
+ let editorsToConfig = resolveEditorsForInstall(opts);
297
+ if (opts.editor && editorsToConfig.length === 0) {
298
+ console.log(chalk.red(`\n ✗ Unknown or unavailable editor: ${opts.editor}`));
299
+ console.log(chalk.dim(' Use: claude-code | cursor | copilot | codex'));
300
+ console.log(chalk.dim(' For copilot, install VS Code first.\n'));
301
+ process.exit(1);
283
302
  }
284
- // Detect editors
285
- const detected = detectEditors();
286
- const editorsToConfig = detected.length > 0 ? detected : [{
287
- editor: 'claude-code',
288
- configPath: join(homedir(), '.claude.json'),
289
- label: 'Claude Code',
290
- }];
291
303
  const spinner = ora('Writing MCP configuration...').start();
292
304
  // Same Perception key the CLI uses (init-project, review, inject). Self-hosted
293
305
  // install must not write PERCEPTION_API_KEY: "" into editor MCP configs — that
@@ -312,6 +324,8 @@ async function installSelfHosted(opts) {
312
324
  planningKey: '',
313
325
  embeddingProvider: provider,
314
326
  embeddingKey: embKey,
327
+ llmProvider,
328
+ openaiKey: llmProvider === 'openai' ? openaiKey : undefined,
315
329
  includeControl: false,
316
330
  };
317
331
  for (const editor of editorsToConfig) {
@@ -330,12 +344,13 @@ async function installSelfHosted(opts) {
330
344
  ...(perceptionKey ? { perceptionKey } : {}),
331
345
  embeddingProvider: provider,
332
346
  installedAt: new Date().toISOString(),
333
- version: '0.4.1',
347
+ version: '2.0.1',
334
348
  selfHosted: true,
335
349
  });
336
350
  spinner.succeed('MCP servers configured for self-hosted mode');
337
351
  console.log();
338
352
  console.log(chalk.green(' ✓ RoBrain (self-hosted) installed\n'));
353
+ console.log(chalk.dim(' Configured for: ') + editorsToConfig.map(e => e.label).join(', '));
339
354
  console.log(chalk.dim(' Perception: ') + chalk.cyan(perceptionUrl));
340
355
  console.log(chalk.dim(' Planning + Control injection: ') + chalk.yellow('not available in self-hosted OSS'));
341
356
  console.log();