robrain 2.3.2 → 2.3.4

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 (38) hide show
  1. package/dist/commands/init-project.d.ts +2 -0
  2. package/dist/commands/init-project.d.ts.map +1 -1
  3. package/dist/commands/init-project.js +16 -0
  4. package/dist/commands/init-project.js.map +1 -1
  5. package/dist/commands/install.js +2 -2
  6. package/dist/commands/status.d.ts +0 -1
  7. package/dist/commands/status.d.ts.map +1 -1
  8. package/dist/commands/status.js +0 -1
  9. package/dist/commands/status.js.map +1 -1
  10. package/dist/commands/up.test.js +2 -2
  11. package/dist/index.js +21 -4
  12. package/dist/index.js.map +1 -1
  13. package/dist/lib/claude-plugin.d.ts +17 -0
  14. package/dist/lib/claude-plugin.d.ts.map +1 -0
  15. package/dist/lib/claude-plugin.js +83 -0
  16. package/dist/lib/claude-plugin.js.map +1 -0
  17. package/dist/lib/claude-plugin.test.d.ts +2 -0
  18. package/dist/lib/claude-plugin.test.d.ts.map +1 -0
  19. package/dist/lib/claude-plugin.test.js +48 -0
  20. package/dist/lib/claude-plugin.test.js.map +1 -0
  21. package/dist/lib/hermes-plugin.d.ts +28 -0
  22. package/dist/lib/hermes-plugin.d.ts.map +1 -0
  23. package/dist/lib/hermes-plugin.js +90 -0
  24. package/dist/lib/hermes-plugin.js.map +1 -0
  25. package/dist/lib/hermes-plugin.test.d.ts +2 -0
  26. package/dist/lib/hermes-plugin.test.d.ts.map +1 -0
  27. package/dist/lib/hermes-plugin.test.js +54 -0
  28. package/dist/lib/hermes-plugin.test.js.map +1 -0
  29. package/dist/lib/mcp-bundle.test.js +2 -2
  30. package/package.json +3 -3
  31. package/scripts/vendor-hermes-plugin.mjs +26 -0
  32. package/scripts/verify-publish-tarball.mjs +22 -1
  33. package/vendor/hermes-plugin/robrain/README.md +103 -0
  34. package/vendor/hermes-plugin/robrain/__init__.py +428 -0
  35. package/vendor/hermes-plugin/robrain/client.py +168 -0
  36. package/vendor/hermes-plugin/robrain/plugin.yaml +3 -0
  37. package/vendor/sensing-mcp/dist/index.js +1 -1
  38. package/vendor/sensing-mcp/package.json +1 -1
@@ -2,6 +2,8 @@ interface InitProjectOptions {
2
2
  projectId?: string;
3
3
  /** When true, skip the confirm prompt (e.g. chained from `robrain install`). */
4
4
  nonInteractive?: boolean;
5
+ /** Do not recommend the Claude Code plugin in .claude/settings.json. */
6
+ skipClaudePlugin?: boolean;
5
7
  }
6
8
  export declare function initProjectCommand(opts: InitProjectOptions): Promise<void>;
7
9
  export {};
@@ -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,CAmIhF"}
1
+ {"version":3,"file":"init-project.d.ts","sourceRoot":"","sources":["../../src/commands/init-project.ts"],"names":[],"mappings":"AAyBA,UAAU,kBAAkB;IAC1B,SAAS,CAAC,EAAS,MAAM,CAAA;IACzB,gFAAgF;IAChF,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkJhF"}
@@ -17,6 +17,7 @@ import { cwd } from 'process';
17
17
  import { existsSync, readFileSync } from 'fs';
18
18
  import { dirname, join } from 'path';
19
19
  import { readConfig, isAuthenticated } from '../lib/config.js';
20
+ import { recommendClaudePlugin } from '../lib/claude-plugin.js';
20
21
  import { gatherProjectInfo, seedProjectMemory } from '../lib/project.js';
21
22
  import { detectEditors, writeClaudeMd, writeCursorRoBrainRule, writeAgentsMd } from '../lib/editor.js';
22
23
  export async function initProjectCommand(opts) {
@@ -91,6 +92,21 @@ export async function initProjectCommand(opts) {
91
92
  cursorRuleApplied = writeCursorRoBrainRule(projectRoot, resolvedProjectId, instructionMode);
92
93
  }
93
94
  mdSpinner.succeed(`Editor instructions updated (${instructionExtras})`);
95
+ // ── Recommend the Claude Code plugin to the team ───────────
96
+ // Written to .claude/settings.json: teammates who trust this repo get an
97
+ // install prompt from Claude Code itself. Same footprint as CLAUDE.md —
98
+ // a repo-committed recommendation, not an install; each teammate still
99
+ // approves the install in their own editor.
100
+ let pluginRecommendation = 'skipped';
101
+ if (!opts.skipClaudePlugin) {
102
+ pluginRecommendation = recommendClaudePlugin(projectRoot);
103
+ if (pluginRecommendation === 'written') {
104
+ console.log(chalk.dim(' .claude/settings.json: recommends the RoBrain plugin to collaborators (skip with --skip-claude-plugin)'));
105
+ }
106
+ else if (pluginRecommendation === 'skipped-unreadable') {
107
+ console.log(chalk.yellow(' ⚠ .claude/settings.json is not valid JSON — left untouched. Add the RoBrain plugin recommendation manually if wanted.'));
108
+ }
109
+ }
94
110
  // ── Seed memory ────────────────────────────────────────────
95
111
  const seedSpinner = ora({ text: 'Inferring architectural decisions from codebase...', color: 'green' }).start();
96
112
  const perceptionKey = config.perceptionKey ?? '';
@@ -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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"}
@@ -202,7 +202,7 @@ export async function installCommand(opts) {
202
202
  planningKey: provisioned.planningKey,
203
203
  embeddingProvider: embeddingProvider ?? 'openai',
204
204
  installedAt: new Date().toISOString(),
205
- version: '2.3.2',
205
+ version: '2.3.4',
206
206
  });
207
207
  spinner.succeed('MCP servers configured');
208
208
  // ── Done ───────────────────────────────────────────────────
@@ -352,7 +352,7 @@ async function installSelfHosted(opts) {
352
352
  ...(perceptionKey ? { perceptionKey } : {}),
353
353
  embeddingProvider: provider,
354
354
  installedAt: new Date().toISOString(),
355
- version: '2.3.2',
355
+ version: '2.3.4',
356
356
  selfHosted: true,
357
357
  });
358
358
  spinner.succeed('MCP servers configured for self-hosted mode');
@@ -2,7 +2,6 @@ export declare function statusCommand(): Promise<void>;
2
2
  export declare function ruleCommand(opts: {
3
3
  add?: string;
4
4
  list?: boolean;
5
- remove?: string;
6
5
  type?: string;
7
6
  }): Promise<void>;
8
7
  export declare function logoutCommand(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAQA,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAsEnD;AAOD,wBAAsB,WAAW,CAAC,IAAI,EAAE;IACtC,GAAG,CAAC,EAAK,MAAM,CAAA;IACf,IAAI,CAAC,EAAI,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAI,MAAM,CAAA;CAChB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwFhB;AAKD,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAMnD"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAQA,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAsEnD;AAMD,wBAAsB,WAAW,CAAC,IAAI,EAAE;IACtC,GAAG,CAAC,EAAK,MAAM,CAAA;IACf,IAAI,CAAC,EAAI,OAAO,CAAA;IAChB,IAAI,CAAC,EAAI,MAAM,CAAA;CAChB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwFhB;AAKD,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAMnD"}
@@ -74,7 +74,6 @@ export async function statusCommand() {
74
74
  // ─────────────────────────────────────────────────────────────
75
75
  // robrain rule --add TEXT [--type always_include|always_exclude|preference]
76
76
  // --list
77
- // --remove ID
78
77
  export async function ruleCommand(opts) {
79
78
  console.log();
80
79
  if (!isAuthenticated()) {
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,9 @@ import { describe, it } from 'node:test';
2
2
  import assert from 'node:assert/strict';
3
3
  import { ensureStackEnvContent, readEnvValue, renderStackCompose, DEFAULT_IMAGE_REPO } from './up.js';
4
4
  describe('renderStackCompose', () => {
5
- const compose = renderStackCompose(`${DEFAULT_IMAGE_REPO}:2.3.2`);
5
+ const compose = renderStackCompose(`${DEFAULT_IMAGE_REPO}:2.3.4`);
6
6
  it('runs Perception from the published image with an env override hook', () => {
7
- assert.match(compose, /image: \$\{PERCEPTION_IMAGE:-ghcr\.io\/adelinamart\/robrain-perception:2\.3\.1\}/);
7
+ assert.match(compose, /image: \$\{PERCEPTION_IMAGE:-ghcr\.io\/adelinamart\/robrain-perception:2\.3\.4\}/);
8
8
  assert.doesNotMatch(compose, /build:/);
9
9
  });
10
10
  it('mounts the stack-local schema and env file', () => {
package/dist/index.js CHANGED
@@ -9,7 +9,7 @@
9
9
  // init-project Warm-start memory from existing codebase
10
10
  // status Show auth status + service health
11
11
  // doctor Diagnose install, editor wiring, keys, and service health
12
- // rule Add / list / remove explicit Planning rules
12
+ // rule Add / list explicit Planning rules
13
13
  // logout Clear local credentials
14
14
  // ─────────────────────────────────────────────────────────────
15
15
  import { program } from 'commander';
@@ -27,7 +27,8 @@ import { outcomesScanCommand, outcomesRecordCommand } from './commands/outcomes.
27
27
  import { explainCommand } from './commands/explain.js';
28
28
  import { projectsListCommand, projectsMergeCommand } from './commands/projects.js';
29
29
  import { upCommand, downCommand, DEFAULT_IMAGE_REPO } from './commands/up.js';
30
- const VERSION = '2.3.2';
30
+ import { installHermesPlugin, resolveHermesHome } from './lib/hermes-plugin.js';
31
+ const VERSION = '2.3.4';
31
32
  program
32
33
  .name('robrain')
33
34
  .description('Institutional memory for AI coding agents — by Rory Plans')
@@ -150,10 +151,26 @@ program
150
151
  .option('-t, --token <token>', 'Rory Plans API token (or set RORY_TOKEN env var)')
151
152
  .option('-e, --editor <editor>', 'Target editor: claude-code | cursor | copilot | codex')
152
153
  .option('--self-hosted', 'Self-hosted mode — skip Rory Plans auth')
154
+ .option('--hermes', 'Install the Hermes memory-provider plugin into $HERMES_HOME/plugins')
153
155
  .option('--perception-url <url>', 'Perception URL for self-hosted mode (default: http://localhost:3001)')
154
156
  .option('--repo-root <path>', 'Path to your robrain git clone (links built sensing-mcp into ~/.robrain/mcp). Or set ROBRAIN_REPO.')
155
157
  .option('--skip-init-project', 'Do not run init-project in the current directory after install')
156
158
  .action(async (opts) => {
159
+ if (opts.hermes) {
160
+ const { dest } = installHermesPlugin();
161
+ console.log(`✔ Hermes memory-provider plugin installed → ${dest}`);
162
+ console.log('\nNext steps:');
163
+ console.log(' 1. hermes memory setup # select "robrain"');
164
+ console.log(' 2. PERCEPTION_API_KEY lives in ~/.robrain/stack/.env (after `robrain up`)');
165
+ console.log(' or your repo .env (clone path)');
166
+ console.log(`\nHermes home: ${resolveHermesHome()} (override with HERMES_HOME)`);
167
+ // --hermes alone is a complete install; editor wiring only runs when
168
+ // another install intent is present.
169
+ if (!opts.token && !opts.selfHosted && !opts.editor && !opts.repoRoot && !process.env.RORY_TOKEN) {
170
+ return;
171
+ }
172
+ console.log('');
173
+ }
157
174
  await installCommand({
158
175
  token: opts.token ?? process.env.RORY_TOKEN,
159
176
  editor: opts.editor,
@@ -169,8 +186,9 @@ program
169
186
  .alias('init')
170
187
  .description('Warm-start project memory from your codebase (run once per project)')
171
188
  .option('--project-id <id>', 'Override the auto-derived project ID')
189
+ .option('--skip-claude-plugin', 'Do not recommend the RoBrain Claude Code plugin in .claude/settings.json')
172
190
  .action(async (opts) => {
173
- await initProjectCommand({ projectId: opts.projectId });
191
+ await initProjectCommand({ projectId: opts.projectId, skipClaudePlugin: opts.skipClaudePlugin });
174
192
  });
175
193
  // ── projects — list / merge Perception project ids ────────────
176
194
  const projectsCmd = program
@@ -208,7 +226,6 @@ program
208
226
  .description('Manage explicit Planning rules (Rory Plans cloud Planning API — not OSS Perception)')
209
227
  .option('--add <text>', 'Add a new rule in plain language')
210
228
  .option('--list', 'List active rules for this project')
211
- .option('--remove <id>', 'Remove a rule by ID')
212
229
  .option('--type <type>', 'Rule type: always_include | always_exclude | preference (default: preference)')
213
230
  .action(async (opts) => {
214
231
  await ruleCommand(opts);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ export interface PluginRecommendationResult {
2
+ content: string;
3
+ changed: boolean;
4
+ }
5
+ /**
6
+ * Merge the RoBrain marketplace + plugin recommendation into existing
7
+ * .claude/settings.json content. Preserves every other key; idempotent.
8
+ * A user's own marketplace entry under the same name (e.g. a local-path
9
+ * source from development) is left untouched.
10
+ */
11
+ export declare function mergePluginRecommendation(existing: string | null): PluginRecommendationResult;
12
+ /**
13
+ * Apply the recommendation to <projectRoot>/.claude/settings.json.
14
+ * Returns 'written' | 'already-present' | 'skipped-unreadable'.
15
+ */
16
+ export declare function recommendClaudePlugin(projectRoot: string): 'written' | 'already-present' | 'skipped-unreadable';
17
+ //# sourceMappingURL=claude-plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-plugin.d.ts","sourceRoot":"","sources":["../../src/lib/claude-plugin.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,OAAO,CAAA;CACjB;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,0BAA0B,CAqC7F;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,iBAAiB,GAAG,oBAAoB,CAY/G"}
@@ -0,0 +1,83 @@
1
+ // src/lib/claude-plugin.ts
2
+ // ─────────────────────────────────────────────────────────────
3
+ // Recommend the RoBrain Claude Code plugin to the whole team via the
4
+ // project's .claude/settings.json. When a teammate trusts the repo,
5
+ // Claude Code itself prompts them to install the plugin — one developer
6
+ // running init-project makes the plugin discoverable to everyone else.
7
+ // ─────────────────────────────────────────────────────────────
8
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'fs';
9
+ import { dirname, join } from 'path';
10
+ const MARKETPLACE_KEY = 'robrain';
11
+ const PLUGIN_ID = 'robrain@robrain';
12
+ const GITHUB_SOURCE = { source: 'github', repo: 'adelinamart/robrain' };
13
+ /**
14
+ * Merge the RoBrain marketplace + plugin recommendation into existing
15
+ * .claude/settings.json content. Preserves every other key; idempotent.
16
+ * A user's own marketplace entry under the same name (e.g. a local-path
17
+ * source from development) is left untouched.
18
+ */
19
+ export function mergePluginRecommendation(existing) {
20
+ let settings = {};
21
+ if (existing !== null && existing.trim()) {
22
+ try {
23
+ const parsed = JSON.parse(existing);
24
+ if (parsed === null || typeof parsed !== 'object' || Array.isArray(parsed)) {
25
+ // settings.json is not an object — do not guess, leave the file alone
26
+ return { content: existing, changed: false };
27
+ }
28
+ settings = parsed;
29
+ }
30
+ catch {
31
+ // Unparseable settings.json — never clobber a file we cannot read
32
+ return { content: existing, changed: false };
33
+ }
34
+ }
35
+ const marketplaces = isRecord(settings.extraKnownMarketplaces)
36
+ ? settings.extraKnownMarketplaces
37
+ : {};
38
+ const plugins = isRecord(settings.enabledPlugins)
39
+ ? settings.enabledPlugins
40
+ : {};
41
+ let changed = false;
42
+ if (!(MARKETPLACE_KEY in marketplaces)) {
43
+ marketplaces[MARKETPLACE_KEY] = { source: GITHUB_SOURCE };
44
+ changed = true;
45
+ }
46
+ if (plugins[PLUGIN_ID] !== true) {
47
+ plugins[PLUGIN_ID] = true;
48
+ changed = true;
49
+ }
50
+ if (!changed)
51
+ return { content: existing ?? '', changed: false };
52
+ settings.extraKnownMarketplaces = marketplaces;
53
+ settings.enabledPlugins = plugins;
54
+ return { content: JSON.stringify(settings, null, 2) + '\n', changed: true };
55
+ }
56
+ /**
57
+ * Apply the recommendation to <projectRoot>/.claude/settings.json.
58
+ * Returns 'written' | 'already-present' | 'skipped-unreadable'.
59
+ */
60
+ export function recommendClaudePlugin(projectRoot) {
61
+ const settingsPath = join(projectRoot, '.claude', 'settings.json');
62
+ const existing = existsSync(settingsPath) ? readFileSync(settingsPath, 'utf8') : null;
63
+ const { content, changed } = mergePluginRecommendation(existing);
64
+ if (!changed) {
65
+ return existing !== null && !isMerged(existing) ? 'skipped-unreadable' : 'already-present';
66
+ }
67
+ mkdirSync(dirname(settingsPath), { recursive: true });
68
+ writeFileSync(settingsPath, content);
69
+ return 'written';
70
+ }
71
+ function isMerged(content) {
72
+ try {
73
+ const s = JSON.parse(content);
74
+ return isRecord(s?.extraKnownMarketplaces) && MARKETPLACE_KEY in s.extraKnownMarketplaces;
75
+ }
76
+ catch {
77
+ return false;
78
+ }
79
+ }
80
+ function isRecord(v) {
81
+ return v !== null && typeof v === 'object' && !Array.isArray(v);
82
+ }
83
+ //# sourceMappingURL=claude-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-plugin.js","sourceRoot":"","sources":["../../src/lib/claude-plugin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=claude-plugin.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-plugin.test.d.ts","sourceRoot":"","sources":["../../src/lib/claude-plugin.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,48 @@
1
+ import { describe, it } from 'node:test';
2
+ import assert from 'node:assert/strict';
3
+ import { mergePluginRecommendation } from './claude-plugin.js';
4
+ describe('mergePluginRecommendation', () => {
5
+ it('creates settings from scratch when no file exists', () => {
6
+ const { content, changed } = mergePluginRecommendation(null);
7
+ assert.equal(changed, true);
8
+ const s = JSON.parse(content);
9
+ assert.deepEqual(s.extraKnownMarketplaces.robrain.source, { source: 'github', repo: 'adelinamart/robrain' });
10
+ assert.equal(s.enabledPlugins['robrain@robrain'], true);
11
+ });
12
+ it('preserves unrelated keys and existing plugins', () => {
13
+ const existing = JSON.stringify({
14
+ permissions: { allow: ['Bash(pnpm test)'] },
15
+ enabledPlugins: { 'other@somewhere': true },
16
+ });
17
+ const { content, changed } = mergePluginRecommendation(existing);
18
+ assert.equal(changed, true);
19
+ const s = JSON.parse(content);
20
+ assert.deepEqual(s.permissions, { allow: ['Bash(pnpm test)'] });
21
+ assert.equal(s.enabledPlugins['other@somewhere'], true);
22
+ assert.equal(s.enabledPlugins['robrain@robrain'], true);
23
+ });
24
+ it('is idempotent when the recommendation is already present', () => {
25
+ const first = mergePluginRecommendation(null);
26
+ const second = mergePluginRecommendation(first.content);
27
+ assert.equal(second.changed, false);
28
+ });
29
+ it('does not overwrite a user-defined robrain marketplace source', () => {
30
+ const existing = JSON.stringify({
31
+ extraKnownMarketplaces: { robrain: { source: { source: 'directory', path: '/dev/checkout' } } },
32
+ enabledPlugins: { 'robrain@robrain': true },
33
+ });
34
+ const { changed } = mergePluginRecommendation(existing);
35
+ assert.equal(changed, false);
36
+ });
37
+ it('leaves unparseable settings.json untouched', () => {
38
+ const broken = '{ "permissions": ';
39
+ const { content, changed } = mergePluginRecommendation(broken);
40
+ assert.equal(changed, false);
41
+ assert.equal(content, broken);
42
+ });
43
+ it('leaves non-object settings.json untouched', () => {
44
+ const { changed } = mergePluginRecommendation('[1,2,3]');
45
+ assert.equal(changed, false);
46
+ });
47
+ });
48
+ //# sourceMappingURL=claude-plugin.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-plugin.test.js","sourceRoot":"","sources":["../../src/lib/claude-plugin.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ export declare class HermesPluginError extends Error {
2
+ name: string;
3
+ }
4
+ /**
5
+ * Hermes home resolution — mirrors hermes_constants.get_hermes_home():
6
+ * HERMES_HOME env var, else the platform-native default (~/.hermes on
7
+ * macOS/Linux, %LOCALAPPDATA%\hermes on Windows).
8
+ */
9
+ export declare function resolveHermesHome(env?: NodeJS.ProcessEnv): string;
10
+ export declare function hermesPluginComplete(dir: string): boolean;
11
+ /**
12
+ * Locate the plugin source shipped with this CLI.
13
+ * Published tarballs carry it under vendor/hermes-plugin/robrain;
14
+ * monorepo dev resolves integrations/hermes/robrain from the repo root.
15
+ */
16
+ export declare function resolveHermesPluginSourceDir(): string | undefined;
17
+ export interface HermesInstallResult {
18
+ dest: string;
19
+ hermesHome: string;
20
+ }
21
+ /**
22
+ * Copy the plugin into `<hermesHome>/plugins/robrain`, replacing whatever is
23
+ * there (including dangling symlinks and half-finished copies). Throws
24
+ * HermesPluginError when no complete source ships with this CLI build.
25
+ * Exposed with an explicit `sourceDir` for tests.
26
+ */
27
+ export declare function installHermesPlugin(hermesHome?: string, sourceDir?: string | undefined): HermesInstallResult;
28
+ //# sourceMappingURL=hermes-plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hermes-plugin.d.ts","sourceRoot":"","sources":["../../src/lib/hermes-plugin.ts"],"names":[],"mappings":"AAgBA,qBAAa,iBAAkB,SAAQ,KAAK;IACjC,IAAI,SAAsB;CACpC;AAiBD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAQ9E;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,IAAI,MAAM,GAAG,SAAS,CASjE;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,GAAE,MAA4B,EACxC,SAAS,GAAE,MAAM,GAAG,SAA0C,GAC7D,mBAAmB,CAoBrB"}
@@ -0,0 +1,90 @@
1
+ // packages/cli/src/lib/hermes-plugin.ts
2
+ // Materialize the Hermes memory-provider plugin into $HERMES_HOME/plugins.
3
+ //
4
+ // hermes-agent's contribution policy keeps memory providers out of their
5
+ // tree — providers install as standalone plugins under ~/.hermes/plugins/,
6
+ // where Hermes' discovery loads them with the same lifecycle hooks as
7
+ // bundled ones. `robrain install --hermes` performs that copy so no repo
8
+ // clone is needed: published tarballs carry the plugin under
9
+ // vendor/hermes-plugin (same self-containment pattern as the vendored
10
+ // sensing-mcp bundle); monorepo dev resolves integrations/hermes.
11
+ import { cpSync, existsSync, lstatSync, mkdirSync, rmSync, unlinkSync } from 'fs';
12
+ import { homedir, platform } from 'os';
13
+ import { basename, dirname, join } from 'path';
14
+ import { fileURLToPath } from 'url';
15
+ export class HermesPluginError extends Error {
16
+ name = 'HermesPluginError';
17
+ }
18
+ /** Files that must exist for a plugin source dir to be considered complete. */
19
+ const REQUIRED_FILES = ['__init__.py', 'client.py', 'plugin.yaml'];
20
+ /** Remove whatever sits at `dest`, including a dangling symlink (see mcp-bundle.ts). */
21
+ function removeDest(dest) {
22
+ let stats;
23
+ try {
24
+ stats = lstatSync(dest);
25
+ }
26
+ catch {
27
+ return;
28
+ }
29
+ if (stats.isSymbolicLink())
30
+ unlinkSync(dest);
31
+ else
32
+ rmSync(dest, { recursive: true, force: true });
33
+ }
34
+ /**
35
+ * Hermes home resolution — mirrors hermes_constants.get_hermes_home():
36
+ * HERMES_HOME env var, else the platform-native default (~/.hermes on
37
+ * macOS/Linux, %LOCALAPPDATA%\hermes on Windows).
38
+ */
39
+ export function resolveHermesHome(env = process.env) {
40
+ const fromEnv = env.HERMES_HOME?.trim();
41
+ if (fromEnv)
42
+ return fromEnv;
43
+ if (platform() === 'win32') {
44
+ const localAppData = env.LOCALAPPDATA?.trim();
45
+ return join(localAppData || join(homedir(), 'AppData', 'Local'), 'hermes');
46
+ }
47
+ return join(homedir(), '.hermes');
48
+ }
49
+ export function hermesPluginComplete(dir) {
50
+ return REQUIRED_FILES.every(f => existsSync(join(dir, f)));
51
+ }
52
+ /**
53
+ * Locate the plugin source shipped with this CLI.
54
+ * Published tarballs carry it under vendor/hermes-plugin/robrain;
55
+ * monorepo dev resolves integrations/hermes/robrain from the repo root.
56
+ */
57
+ export function resolveHermesPluginSourceDir() {
58
+ // Compiled location: <cli-root>/dist/lib/hermes-plugin.js — cli root is two up.
59
+ const here = dirname(fileURLToPath(import.meta.url));
60
+ const cliRoot = join(here, '..', '..');
61
+ const candidates = [
62
+ join(cliRoot, 'vendor', 'hermes-plugin', 'robrain'), // published tarball
63
+ join(cliRoot, '..', '..', 'integrations', 'hermes', 'robrain'), // monorepo dev
64
+ ];
65
+ return candidates.find(hermesPluginComplete);
66
+ }
67
+ /**
68
+ * Copy the plugin into `<hermesHome>/plugins/robrain`, replacing whatever is
69
+ * there (including dangling symlinks and half-finished copies). Throws
70
+ * HermesPluginError when no complete source ships with this CLI build.
71
+ * Exposed with an explicit `sourceDir` for tests.
72
+ */
73
+ export function installHermesPlugin(hermesHome = resolveHermesHome(), sourceDir = resolveHermesPluginSourceDir()) {
74
+ if (!sourceDir || !hermesPluginComplete(sourceDir)) {
75
+ throw new HermesPluginError('Hermes plugin source not found in this CLI build — expected vendor/hermes-plugin (published) or integrations/hermes (repo clone).');
76
+ }
77
+ const pluginsDir = join(hermesHome, 'plugins');
78
+ const dest = join(pluginsDir, 'robrain');
79
+ mkdirSync(pluginsDir, { recursive: true });
80
+ removeDest(dest);
81
+ cpSync(sourceDir, dest, {
82
+ recursive: true,
83
+ filter: src => basename(src) !== '__pycache__' && !src.endsWith('.pyc'),
84
+ });
85
+ if (!hermesPluginComplete(dest)) {
86
+ throw new HermesPluginError(`Hermes plugin copy to ${dest} is incomplete — re-run the install.`);
87
+ }
88
+ return { dest, hermesHome };
89
+ }
90
+ //# sourceMappingURL=hermes-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hermes-plugin.js","sourceRoot":"","sources":["../../src/lib/hermes-plugin.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,2EAA2E;AAC3E,EAAE;AACF,yEAAyE;AACzE,2EAA2E;AAC3E,sEAAsE;AACtE,yEAAyE;AACzE,6DAA6D;AAC7D,sEAAsE;AACtE,kEAAkE;AAElE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,IAAI,CAAA;AACjF,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAA;AACtC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAA;AAEnC,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IACjC,IAAI,GAAG,mBAAmB,CAAA;CACpC;AAED,+EAA+E;AAC/E,MAAM,cAAc,GAAG,CAAC,aAAa,EAAE,WAAW,EAAE,aAAa,CAAC,CAAA;AAElE,wFAAwF;AACxF,SAAS,UAAU,CAAC,IAAY;IAC9B,IAAI,KAAK,CAAA;IACT,IAAI,CAAC;QACH,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAM;IACR,CAAC;IACD,IAAI,KAAK,CAAC,cAAc,EAAE;QAAE,UAAU,CAAC,IAAI,CAAC,CAAA;;QACvC,MAAM,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;AACrD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAyB,OAAO,CAAC,GAAG;IACpE,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,CAAA;IACvC,IAAI,OAAO;QAAE,OAAO,OAAO,CAAA;IAC3B,IAAI,QAAQ,EAAE,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,CAAA;QAC7C,OAAO,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAA;IAC5E,CAAC;IACD,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAA;AACnC,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;AAC5D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,4BAA4B;IAC1C,gFAAgF;IAChF,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IACpD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;IACtC,MAAM,UAAU,GAAG;QACjB,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,SAAS,CAAC,EAAW,oBAAoB;QAClF,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,eAAe;KAChF,CAAA;IACD,OAAO,UAAU,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAA;AAC9C,CAAC;AAOD;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CACjC,aAAqB,iBAAiB,EAAE,EACxC,YAAgC,4BAA4B,EAAE;IAE9D,IAAI,CAAC,SAAS,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,iBAAiB,CACzB,mIAAmI,CACpI,CAAA;IACH,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;IAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;IACxC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC1C,UAAU,CAAC,IAAI,CAAC,CAAA;IAChB,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE;QACtB,SAAS,EAAE,IAAI;QACf,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,aAAa,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;KACxE,CAAC,CAAA;IAEF,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,iBAAiB,CAAC,yBAAyB,IAAI,sCAAsC,CAAC,CAAA;IAClG,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAA;AAC7B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=hermes-plugin.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hermes-plugin.test.d.ts","sourceRoot":"","sources":["../../src/lib/hermes-plugin.test.ts"],"names":[],"mappings":""}