@brainmcp/brainmcp 0.1.10 → 0.1.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -33,7 +33,9 @@ After setup:
33
33
  2. Restart every configured client you plan to use. Installation only writes the MCP endpoint and
34
34
  guidance; it does not log the client in.
35
35
  3. Log each client in to brain:
36
- - **Codex:** run `codex mcp login brain` and finish the browser flow.
36
+ - **Codex:** run `codex mcp login brain` and finish the browser flow. Generated TOML pins Brain's
37
+ stable public `codex` OAuth client and canonical resource so re-login recovers the same logical
38
+ connection rather than registering another DCR identity.
37
39
  - **Claude Code:** start a session, run `/mcp`, select **brain**, then choose **Authenticate**.
38
40
  - **Cursor:** open **Settings → Tools & MCP**, select **brain**, then connect/authorize it.
39
41
  - **VS Code (Copilot Chat):** start **brain** from **MCP: List Servers** or its `mcp.json` CodeLens, choose **Auth**, and complete browser sign-in.
@@ -20,7 +20,69 @@ export const BRAIN_MCP_INITIAL_SCOPES = [
20
20
  'workflows:read',
21
21
  ];
22
22
  /** Bump when always-on guidance text changes in a way clients should refresh. */
23
- export const GUIDANCE_VERSION = '2026.08.21';
23
+ export const GUIDANCE_VERSION = '2026.08.23';
24
+ export const BRAIN_HANDLE_CATALOG = [
25
+ { idParameter: 'nodeId', kind: 'node', scope: 'workspace', template: 'brain://workspace/{workspaceId}/ref/live/node/{nodeId}', resolver: 'brain_node_read or the live-node MCP resource' },
26
+ { idParameter: 'commentId', kind: 'comment', scope: 'workspace', template: 'brain://workspace/{workspaceId}/comment/{commentId}', resolver: 'brain_comment_list(commentId) or the comment MCP resource' },
27
+ { idParameter: 'ruleId', kind: 'rule', scope: 'workspace', template: 'brain://workspace/{workspaceId}/rule/{ruleId}', resolver: 'the workspace-rule MCP resource' },
28
+ { idParameter: 'ruleId', kind: 'rule', scope: 'global', template: 'brain://workspace/{workspaceId}/global-rule/{ruleId}', resolver: 'the global-rule MCP resource' },
29
+ { idParameter: 'nodeId', kind: 'skill', scope: 'workspace', template: 'brain://workspace/{workspaceId}/ref/live/node/{nodeId}', resolver: 'brain_node_read or the live-node MCP resource' },
30
+ { idParameter: 'skillId', kind: 'skill', scope: 'global', template: 'brain://workspace/{workspaceId}/global-skill/{skillId}', resolver: 'the global-skill MCP resource' },
31
+ { idParameter: 'nodeId', kind: 'workflow', scope: 'workspace', template: 'brain://workspace/{workspaceId}/ref/live/node/{nodeId}', resolver: 'brain_node_read or the live-node MCP resource' },
32
+ { idParameter: 'workflowId', kind: 'workflow', scope: 'global', template: 'brain://workspace/{workspaceId}/global-workflow/{workflowId}', resolver: 'the global-workflow MCP resource' },
33
+ ];
34
+ export function brainHandleUri(input) {
35
+ const scope = input.scope ?? 'workspace';
36
+ const entry = BRAIN_HANDLE_CATALOG.find((candidate) => candidate.kind === input.kind && candidate.scope === scope);
37
+ if (!entry)
38
+ throw new Error(`Unsupported Brain handle: ${scope}:${input.kind}`);
39
+ return entry.template
40
+ .replace('{workspaceId}', encodeURIComponent(input.workspaceId))
41
+ .replace(`{${entry.idParameter}}`, encodeURIComponent(input.id));
42
+ }
43
+ export function buildBrainHandleGuidance() {
44
+ return BRAIN_HANDLE_CATALOG
45
+ .map((entry) => `${entry.template} -> ${entry.resolver}`)
46
+ .join('; ');
47
+ }
48
+ export const BRAIN_ACTION_FLAG_GLOSSARY = [
49
+ {
50
+ flag: 'blocksAgentWork',
51
+ meaning: 'The agent cannot safely continue the requested Brain-dependent work until this action is handled.',
52
+ },
53
+ {
54
+ flag: 'mustSurfaceToUser',
55
+ meaning: 'The agent must explicitly tell the user about this action before ending its response.',
56
+ },
57
+ {
58
+ flag: 'requiresExplicitUserAuthorization',
59
+ meaning: 'A read/status request is not permission to perform this action; ask the user before the write or other side effect.',
60
+ },
61
+ ];
62
+ export function buildActionFlagGuidance() {
63
+ return BRAIN_ACTION_FLAG_GLOSSARY
64
+ .map(({ flag, meaning }) => `${flag}: ${meaning}`)
65
+ .join(' ');
66
+ }
67
+ export const BRAIN_REPORTING_GUIDE_MARKDOWN = [
68
+ '# brain reporting guide',
69
+ '',
70
+ 'Use `brain_comment_create` for human-facing results after finishing a user-given task, audit/eval, or workflow run. Use `format: "text"` for short notes and `format: "report"` for rich results with tables, charts, or sections.',
71
+ '',
72
+ 'Reports require `title`, `text`, and `html`. The `text` field is a 1-3 sentence summary shown in feeds and returned in comment lists; make it useful without opening the full report.',
73
+ '',
74
+ 'HTML reports are sanitized and rendered in a sandboxed frame. Use inline styles only. Scripts, event handlers, external resources, and links are removed. Data-URI images are allowed under the report size cap.',
75
+ '',
76
+ 'Supported report HTML includes common text/table tags, `figure`/`figcaption`, data-URI `img`, and inline SVG chart primitives: `svg`, `g`, `defs`, `circle`, `ellipse`, `rect`, `line`, `path`, `polyline`, `polygon`, `text`, and `tspan` with chart attributes such as `points`, `rx`, `ry`, `stroke-width`, opacity, transform, text anchor, and font sizing.',
77
+ '',
78
+ 'Theme-safe styling: prefer `currentColor` and brand tokens like `var(--brain-color-text-primary)`, `var(--brain-color-text-muted)`, `var(--brain-color-border)`, `var(--brain-color-card)`, `var(--brain-color-bg)`, `var(--brain-color-accent)`, and `var(--brain-color-accent-danger)`. These resolve inside the report frame in light and dark themes.',
79
+ '',
80
+ 'Limits: comment JSON is capped around 160KB, report HTML around 120KB, report title 240 characters, and text summary 40k characters.',
81
+ '',
82
+ 'Binding: use `targetNodeId` when the report belongs to a node. For workflow runs, post the report first with `targetNodeId` set to the workflow id and outcome set to `success`, `warning`, or `failure`, then call `brain_workflow_record_run` with `reportCommentId`.',
83
+ '',
84
+ 'References: use `references` for cited nodes that should deep-link from the report without changing where the report is bound.',
85
+ ].join('\n');
24
86
  export const EMPTY_WORKSPACE_RESPONSE_REQUIREMENT = 'Empty-workspace response requirement: when brain_workspace_overview reports no applied Cores or Neurons, do not finish the response until you either bootstrap after explicit user authorization or explicitly tell the user the workspace is empty and offer to bootstrap it with comprehensive, durable project context. A status/overview request does not authorize graph writes. If the resolved policy is auto_apply, warn that an authorized bootstrap will become live immediately. Always report the proposal id/status, and never call the workspace populated until the proposal is applied.';
25
87
  export const AUTHORIZED_BOOTSTRAP_DETAIL_REQUIREMENT = 'Authorized bootstrap detail requirement: study the repository comprehensively and maximize supported durable detail within one valid proposal and its operation limits. Model Cores as stable concepts. Parent a focused Neuron under exactly one Core when that broader concept genuinely owns it; allow a legitimate standalone Neuron to remain flat rather than inventing a misleading parent. Use standalone descriptions, detailed content with exact paths/commands/status/caveats/rationale, and useful described cross-Core links. Exclude secrets, personal data, raw transcripts, temporary output, speculation, and large file dumps.';
26
88
  /** Canonical copy-paste prompt used after connection/overview to populate an empty workspace. */
@@ -35,9 +97,12 @@ export function buildBrainBootstrapPrompt(options = {}) {
35
97
  ...starterCores.map((core) => ` • ${core}`),
36
98
  ].join('\n')
37
99
  : ' - Cores for the 3–10 major, long-lived areas of the project';
100
+ const overviewInstruction = options.workspaceId?.trim()
101
+ ? `Call brain_workspace_overview with workspaceId="${options.workspaceId.trim()}"`
102
+ : 'Call brain_workspace_overview';
38
103
  return `Use brain (alias brainmcp) to bootstrap shared context for this project.
39
104
  ${templateNote}
40
- 1. Call brain_workspace_overview and confirm the target workspace has no applied Cores or Neurons. If it is already populated or has a pending bootstrap proposal, stop and report that instead of creating a duplicate.
105
+ 1. ${overviewInstruction} and confirm the target workspace has no applied Cores or Neurons. If it is already populated or has a pending bootstrap proposal, stop and report that instead of creating a duplicate.
41
106
  2. Study the repository comprehensively before writing: applicable agent instructions, README and project documentation, implementation plans and task ledgers, package manifests, architecture and data boundaries, important source entry points, tests, deployment/runbooks, and recent commits.
42
107
  3. Propose the most detailed durable shared context that fits ONE coherent, valid brain_change_propose and its operation limits. Do not stop at a minimal map:
43
108
  ${coreLines}
@@ -55,9 +120,14 @@ export const BRAIN_BOOTSTRAP_PROMPT = buildBrainBootstrapPrompt();
55
120
  export const MCP_OAUTH_CLIENT_IDS = {
56
121
  antigravity: 'antigravity',
57
122
  claudeCode: 'claude-code',
123
+ codex: 'codex',
58
124
  cursor: 'cursor',
59
125
  generic: 'generic-mcp',
60
126
  };
127
+ /** Codex derives this stable callback id from the canonical MCP server URL by
128
+ * hashing its normalized URL with SHA-256 and base64url-encoding the first
129
+ * nine bytes. Keep this in sync if BRAIN_MCP_ENDPOINT ever changes. */
130
+ export const CODEX_MCP_OAUTH_CALLBACK_ID = '_jMnIjjFUiNN';
61
131
  export const MCP_CLIENT_PROFILES = {
62
132
  'claude-code': {
63
133
  id: 'claude-code',
@@ -80,6 +150,7 @@ export const MCP_CLIENT_PROFILES = {
80
150
  codex: {
81
151
  id: 'codex',
82
152
  label: 'Codex',
153
+ oauthClientId: MCP_OAUTH_CLIENT_IDS.codex,
83
154
  supportsProjectInstructions: true,
84
155
  supportsPlugins: false,
85
156
  supportsHooks: false,
@@ -131,7 +202,7 @@ export const CANONICAL_WORKFLOW_STEPS = [
131
202
  /** Overview payload canonicalWorkflow strings (stable, short). */
132
203
  export const OVERVIEW_CANONICAL_WORKFLOW = [
133
204
  'Start with brain_workspace_overview (workspaceId optional when a default is configured).',
134
- 'Before ending a response, complete or explicitly surface every recommended action marked mustSurfaceToUser or blocksAgentWork.',
205
+ `Interpret overview action flags consistently: ${buildActionFlagGuidance()}`,
135
206
  'If recommendations include human review, tell the user before relying on stale graph areas.',
136
207
  'Search relevant nodes with brain_node_search using the current task intent; its default working set includes bounded top-node content and one-hop context.',
137
208
  'Use brain_node_read for exact content before editing a truncated root; use brain_context_handoff or brain_graph_read only when the task needs broader context.',
@@ -143,6 +214,9 @@ export const OVERVIEW_CANONICAL_WORKFLOW = [
143
214
  AUTHORIZED_BOOTSTRAP_DETAIL_REQUIREMENT,
144
215
  'Use brain_session_digest only as a disclosed fallback when the user asks to capture unstructured session learnings — not as an automatic dump of every session.',
145
216
  ];
217
+ /** Populated workspaces do not need the two long bootstrap-only obligations in every overview. */
218
+ export const OVERVIEW_ACTIVE_WORKSPACE_WORKFLOW = OVERVIEW_CANONICAL_WORKFLOW.filter((step) => step !== EMPTY_WORKSPACE_RESPONSE_REQUIREMENT &&
219
+ step !== AUTHORIZED_BOOTSTRAP_DETAIL_REQUIREMENT);
146
220
  /** Short always-on project instruction block (CLAUDE.md / AGENTS.md / Cursor rules). */
147
221
  export function buildProjectInstructionBlock(options) {
148
222
  const workspaceId = options?.workspaceId?.trim();
@@ -159,7 +233,7 @@ export function buildProjectInstructionBlock(options) {
159
233
  if (workspaceId) {
160
234
  lines.push(`Workspace id: ${workspaceId}`);
161
235
  }
162
- lines.push('', '- Connection honesty: if brain_* tools are unavailable or authorization is required, say that no live brain context was loaded, help the user reconnect/login, and continue only with clearly labeled local context. Never pretend Brain was read.', '- Orient at session start: call brain_workspace_overview (workspaceId optional when this authorization has a default). Follow recommendedNextActions and treat returned Rules/Skills/Workflows as binding. Before ending a response, complete or explicitly surface every action marked mustSurfaceToUser or blocksAgentWork.', '- If the target workspace is unclear or the user asks to switch, call brain_workspaces_list and pass the chosen workspaceId to later tools. Keep later reads/writes explicit.', '- Before non-trivial work, call brain_node_search with the task intent. Its default working set includes bounded top-node content and one-hop context; use brain_node_read for exact truncated content and broader reads only when needed.', `- ${EMPTY_WORKSPACE_RESPONSE_REQUIREMENT}`, `- ${AUTHORIZED_BOOTSTRAP_DETAIL_REQUIREMENT}`, '- Before a related proposal, apply rejection guidance from learningSignals.recentDecisions. Exact duplicate creates can be blocked; update or reuse the matched item instead of retrying.', '- After meaningful work, propose only genuinely new durable project knowledge (decisions, architecture, conventions, fixes, and operational lessons). Never store secrets, credentials, personal data, raw transcripts, or temporary build/log output. If nothing reusable changed, do not propose.', '- brain_change_propose is the only precise graph write path. Review-required proposals do not change the graph until a human approves them; report the proposal id/status and re-orient after review if continuing.', '- Use brain_session_digest only as a disclosed fallback when the user explicitly asks to capture unstructured session learnings — never as an automatic dump of every session.', '', `Guidance version: ${GUIDANCE_VERSION}`);
236
+ lines.push('', '- Connection honesty: if brain_* tools are unavailable or authorization is required, say that no live brain context was loaded, help the user reconnect/login, and continue only with clearly labeled local context. Never pretend Brain was read.', `- Orient at session start: call brain_workspace_overview (workspaceId optional when this authorization has a default). Follow recommendedNextActions and treat returned Rules/Skills/Workflows as binding. Action flags: ${buildActionFlagGuidance()}`, '- If the target workspace is unclear or the user asks to switch, call brain_workspaces_list and pass the chosen workspaceId to later tools. Keep later reads/writes explicit.', '- Before non-trivial work, call brain_node_search with the task intent. Its default working set includes bounded top-node content and one-hop context; use brain_node_read for exact truncated content and broader reads only when needed.', `- ${EMPTY_WORKSPACE_RESPONSE_REQUIREMENT}`, `- ${AUTHORIZED_BOOTSTRAP_DETAIL_REQUIREMENT}`, '- Before a related proposal, apply rejection guidance from learningSignals.recentDecisions. Exact duplicate creates can be blocked; update or reuse the matched item instead of retrying.', '- After meaningful work, propose only genuinely new durable project knowledge (decisions, architecture, conventions, fixes, and operational lessons). Never store secrets, credentials, personal data, raw transcripts, or temporary build/log output. If nothing reusable changed, do not propose.', '- brain_change_propose is the only precise graph write path. Review-required proposals do not change the graph until a human approves them; report the proposal id/status and re-orient after review if continuing.', '- Use brain_session_digest only as a disclosed fallback when the user explicitly asks to capture unstructured session learnings — never as an automatic dump of every session.', '', `Guidance version: ${GUIDANCE_VERSION}`);
163
237
  return lines.join('\n');
164
238
  }
165
239
  /** Compact proactive reminder injected by SessionStart / post-compaction hooks. */
@@ -195,7 +269,7 @@ export function buildAgentSkillMarkdown(options) {
195
269
  '2. Call `brain_workspace_overview`' +
196
270
  (workspaceId ? ` with workspaceId \`${workspaceId}\`` : ' (omit workspaceId only when a default is configured)') +
197
271
  '.',
198
- '3. Follow `recommendedNextActions`, Rules, Skills, and due Workflows. Before ending a response, complete or explicitly surface every action marked `mustSurfaceToUser` or `blocksAgentWork`.',
272
+ `3. Follow \`recommendedNextActions\`, Rules, Skills, and due Workflows. Action flags: ${buildActionFlagGuidance()}`,
199
273
  '4. Before non-trivial work: use the default `brain_node_search` working set; call `brain_node_read` for exact truncated content and broader read/handoff tools only when needed.',
200
274
  `5. ${EMPTY_WORKSPACE_RESPONSE_REQUIREMENT}`,
201
275
  `6. ${AUTHORIZED_BOOTSTRAP_DETAIL_REQUIREMENT}`,
@@ -334,7 +408,15 @@ export function buildGenericMcpJson() {
334
408
  }
335
409
  /** Codex `.codex/config.toml` brain server block (display / manual paste). */
336
410
  export function buildCodexConfigToml() {
337
- return [`[mcp_servers.${BRAIN_MCP_SERVER_NAME}]`, `url = "${BRAIN_MCP_ENDPOINT}"`, ''].join('\n');
411
+ return [
412
+ `[mcp_servers.${BRAIN_MCP_SERVER_NAME}]`,
413
+ `url = "${BRAIN_MCP_ENDPOINT}"`,
414
+ `oauth_resource = "${BRAIN_MCP_ENDPOINT}"`,
415
+ '',
416
+ `[mcp_servers.${BRAIN_MCP_SERVER_NAME}.oauth]`,
417
+ `client_id = "${MCP_OAUTH_CLIENT_IDS.codex}"`,
418
+ '',
419
+ ].join('\n');
338
420
  }
339
421
  /**
340
422
  * Canonical Claude Code registration. URL-only on purpose: Claude Code's OAuth
@@ -438,8 +520,8 @@ export function buildServerInstructions() {
438
520
  'SESSION LOOP:',
439
521
  '1. Verify the connection — if brain_* tools are unavailable or authorization is required, explicitly say that no live Brain context was loaded and help the user reconnect/login. Never substitute remembered or local context while claiming it came from Brain.',
440
522
  '2. Pick the target workspace — MCP OAuth is account-scoped, so one authorization can access consented workspaces only. If you do not know the target workspaceId, or the user says to switch/change/use another workspace, call brain_workspaces_list and choose by name, slug, or id. brain_workspace_overview may omit workspaceId when this authorization has a default workspace; keep later reads/writes explicit.',
441
- '3. Orient — call brain_workspace_overview for the chosen workspace. It returns identity, review policy, graph health, pending review, due work, writeBackReminder, and ordered recommendedNextActions; follow them. Before ending a response, complete or explicitly surface every action marked mustSurfaceToUser or blocksAgentWork.',
442
- '4. Pull — brain_node_search returns a bounded working set by default: ranked roots with content plus one-hop summaries around the top hit. Use responseMode=snippets for discovery, brain_node_read for exact truncated content, and graph_read/context_handoff only when broader context is genuinely needed. Resolve Skills (brain_skill_resolve) and due Workflows (brain_workflow_due) when recommended.',
523
+ `3. Orient — call brain_workspace_overview for the chosen workspace. It returns identity, review policy, graph health, pending review, due work, writeBackReminder, and ordered recommendedNextActions; follow them. Action flags: ${buildActionFlagGuidance()}`,
524
+ '4. Pull — brain_node_search returns a bounded working set by default: ranked roots with content plus one-hop summaries around the selected root. Pass aroundRootId to choose that root explicitly, and inspect retrievalMode to distinguish hybrid, FTS-only, and graph-expansion results. Use responseMode=snippets for discovery, brain_node_read for exact truncated content, and graph_read/context_handoff only when broader context is genuinely needed. Resolve Skills (brain_skill_resolve) and due Workflows (brain_workflow_due) when recommended.',
443
525
  '5. Do the work outside brain.',
444
526
  '6. Write back — first apply learningSignals.recentDecisions. Use brain_change_propose only for new durable project-specific graph learnings (reviewable proposals), and abstain when nothing reusable changed. Never store secrets, credentials, personal data, raw transcripts, or temporary build/log output. Exact duplicate creates can be blocked; update/reuse the matched item or wait for the existing pending proposal instead of retrying. Report the proposal id/status. brain_session_digest remains an explicitly user-requested disclosed fallback, not an automatic dump; brain_tags_set organizes via proposals; brain_comment_create leaves an immediate human note/report; brain_workflow_record_run records a due Workflow. To create and link new nodes in one proposal, pre-assign UUID targetIds and reference them from later operations.',
445
527
  '',
@@ -450,7 +532,7 @@ export function buildServerInstructions() {
450
532
  `BE PROACTIVE: orient at session start without being asked, pull relevant context before non-trivial work, and write back genuinely new durable decisions, conventions, and fixes after meaningful work. Do not create a proposal merely to show activity. ${EMPTY_WORKSPACE_RESPONSE_REQUIREMENT} ${AUTHORIZED_BOOTSTRAP_DETAIL_REQUIREMENT} If work is due, feedback awaits, or proposals await review, surface it to the user. MCP server instructions are a protocol hint — still call overview even if you already saw this text.`,
451
533
  '',
452
534
  'MODELING: use the brain://guide/modeling resource and the overview\'s modelingGuidelines when creating or reshaping graph structure.',
453
- 'HANDLES: dashboard copy buttons produce brain://node/<id> and brain://comment/<id>; resolve node handles with brain_node_read and comment handles with brain_comment_list using commentId.',
535
+ `HANDLES: dashboard copy buttons emit only workspace-qualified handles: ${buildBrainHandleGuidance()}. A handle identifies content but does not grant access.`,
454
536
  'REPORTING: use brain://guide/reporting before authoring rich HTML reports; post failure reports with outcome=\'failure\'.',
455
537
  '',
456
538
  `Guidance version: ${GUIDANCE_VERSION}`,
@@ -478,7 +560,7 @@ export function buildCanonicalWorkflowMarkdown(options) {
478
560
  '## Session loop',
479
561
  '1. **Verify connection** — if `brain_*` tools are unavailable or authorization is required, say that no live Brain context was loaded and help the user reconnect/login. Never claim remembered or local context came from Brain.',
480
562
  '2. **Pick workspace** — OAuth is account-scoped and limited to consented workspaces. If `workspaceId` is unknown or the user wants to switch, call `brain_workspaces_list`. `brain_workspace_overview` may omit `workspaceId` when a default is configured; keep later reads/writes explicit.',
481
- '3. **Orient** — `brain_workspace_overview` returns identity, review policy, graph health, pending review, due work, `writeBackReminder`, and `recommendedNextActions`. Follow them. Before ending a response, complete or explicitly surface every action marked `mustSurfaceToUser` or `blocksAgentWork`.',
563
+ `3. **Orient** — \`brain_workspace_overview\` returns identity, review policy, graph health, pending review, due work, \`writeBackReminder\`, and \`recommendedNextActions\`. Follow them. Action flags: ${buildActionFlagGuidance()}`,
482
564
  '4. **Pull** — `brain_node_search` returns bounded roots plus one-hop context by default. Use `responseMode="snippets"` for discovery, `brain_node_read` for exact truncated content, and `brain_graph_read` / `brain_context_handoff` only when broader scope is needed. Use `brain_skill_resolve` and `brain_workflow_due` when recommended.',
483
565
  '5. **Work** — do the task outside brain.',
484
566
  '6. **Write back** — apply `learningSignals.recentDecisions`, then use `brain_change_propose` only for new durable project-specific learnings. Never store secrets, personal data, raw transcripts, or temporary output. Report the proposal id/status and abstain when nothing reusable changed. Exact duplicate creates can be blocked; update/reuse the matched item or wait for its pending proposal. `brain_session_digest` remains an explicitly user-requested disclosed fallback; use tags/comments/workflow-run tools for their specific jobs.',
@@ -503,7 +585,7 @@ export function buildCanonicalWorkflowMarkdown(options) {
503
585
  '`brain_workspaces_list` (if needed) → `brain_workspace_overview` → search / read / handoff → work → propose / tags / comments / workflow run',
504
586
  '',
505
587
  '## Handles and reports',
506
- '- Resolve `brain://node/<id>` with `brain_node_read` and `brain://comment/<id>` with `brain_comment_list` using `commentId`.',
588
+ `- Dashboard handles are workspace-qualified and resolve as follows: ${buildBrainHandleGuidance()}.`,
507
589
  '- Use `brain://guide/reporting` before writing rich HTML reports. Scheduled workflow reports should be posted first with `targetNodeId=<workflowId>`, then linked from `brain_workflow_record_run` with `reportCommentId`.',
508
590
  '',
509
591
  '## Empty workspace',
@@ -120,7 +120,14 @@ export async function doctor(options) {
120
120
  checks.push(['configuration syntax and endpoint', result.ok, result.detail]);
121
121
  }
122
122
  else {
123
- checks.push(['configuration syntax and endpoint', /\[mcp_servers\.brain\][\s\S]*url\s*=\s*"https:\/\/mcp\.brainmcp\.ai\/mcp"/.test(config), 'brain TOML block']);
123
+ const hasStableCodexOAuth = /\[mcp_servers\.brain\][\s\S]*url\s*=\s*"https:\/\/mcp\.brainmcp\.ai\/mcp"/.test(config) &&
124
+ /oauth_resource\s*=\s*"https:\/\/mcp\.brainmcp\.ai\/mcp"/.test(config) &&
125
+ /\[mcp_servers\.brain\.oauth\][\s\S]*client_id\s*=\s*"codex"/.test(config);
126
+ checks.push([
127
+ 'configuration syntax and endpoint',
128
+ hasStableCodexOAuth,
129
+ hasStableCodexOAuth ? 'brain TOML block with stable Codex OAuth client' : 'missing canonical Codex OAuth client/resource',
130
+ ]);
124
131
  }
125
132
  }
126
133
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"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"}
@@ -12,9 +12,9 @@ export type ClientTarget = {
12
12
  /** Top-level server map key: VS Code uses `servers`, everything else `mcpServers`. */
13
13
  configRootKey: 'mcpServers' | 'servers';
14
14
  };
15
- export declare const MARKER_START = "<!-- brainmcp:managed:start version=2026.08.21 -->";
15
+ export declare const MARKER_START = "<!-- brainmcp:managed:start version=2026.08.23 -->";
16
16
  export declare const MARKER_END = "<!-- brainmcp:managed:end -->";
17
- export declare const TOML_MARKER_START = "# brainmcp:managed:start version=2026.08.21";
17
+ export declare const TOML_MARKER_START = "# brainmcp:managed:start version=2026.08.23";
18
18
  export declare const TOML_MARKER_END = "# brainmcp:managed:end";
19
19
  export declare function targetFor(client: ClientId, scope: Scope): ClientTarget;
20
20
  export declare function clientLabel(client: ClientId): string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brainmcp/brainmcp",
3
- "version": "0.1.10",
3
+ "version": "0.1.12",
4
4
  "description": "Safely configure BrainMCP guidance and MCP connections across agent projects",
5
5
  "type": "module",
6
6
  "bin": {
@@ -15,20 +15,19 @@
15
15
  "publishConfig": {
16
16
  "access": "public"
17
17
  },
18
- "scripts": {
19
- "build": "node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\" && tsc -p tsconfig.build.json && node scripts/bundle-agent-config.mjs && chmod +x dist/index.js",
20
- "typecheck": "tsc --noEmit -p tsconfig.json",
21
- "test": "node --import tsx --test 'src/**/*.test.ts'",
22
- "prepublishOnly": "pnpm run build"
23
- },
24
18
  "devDependencies": {
25
- "@braincp/agent-config": "workspace:*",
26
19
  "@types/node": "^26.1.0",
27
20
  "tsx": "^4.23.0",
28
- "typescript": "6.0.3"
21
+ "typescript": "6.0.3",
22
+ "@braincp/agent-config": "0.0.1"
29
23
  },
30
24
  "engines": {
31
25
  "node": ">=22"
32
26
  },
33
- "license": "MIT"
34
- }
27
+ "license": "MIT",
28
+ "scripts": {
29
+ "build": "node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\" && tsc -p tsconfig.build.json && node scripts/bundle-agent-config.mjs && chmod +x dist/index.js",
30
+ "typecheck": "tsc --noEmit -p tsconfig.json",
31
+ "test": "node --import tsx --test 'src/**/*.test.ts'"
32
+ }
33
+ }