@neuranix/mcp-server 1.2.0 → 1.3.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.
package/README.md CHANGED
@@ -1,12 +1,24 @@
1
1
  # @neuranix/mcp-server
2
2
 
3
- Plug-in MCP de memória persistente para agentes de IA em IDEs.
3
+ Plug-in MCP de memória persistente **autônoma** para agentes de IA em qualquer IDE compatível com MCP.
4
4
 
5
- **Produção:** `https://neuranix.com.br/api/neuranix`
5
+ **Produção:** `https://neuranix.com.br/api/neuranix` · **Versão:** 1.3.0
6
6
 
7
- ## Instalação (Cursor / VS Code / Claude Code)
7
+ ## O que já vem incluído (sem configurar regras manualmente)
8
8
 
9
- Obtenha a configuração pronta em [neuranix.com.br/neuranix](https://neuranix.com.br/neuranix) ou use:
9
+ Ao importar o MCP, o agente recebe automaticamente:
10
+
11
+ - **Instruções do servidor** (`instructions`) — protocolo: context no início, recall antes de tarefas, store/checkpoint no fim
12
+ - **Tools** com `alwaysLoad: true` — `neuranix_context`, `neuranix_recall`, `neuranix_store`, `neuranix_checkpoint`
13
+ - **Resources** — `neuranix://agent-guide`, `neuranix://ide-setup`
14
+ - **Prompts** — `session_start`, `before_task`, `save_decision`, `session_end`, `after_compaction`
15
+
16
+ O usuário **não precisa pedir** para salvar ou recuperar memória.
17
+
18
+ ## Instalação (2 passos)
19
+
20
+ 1. Cole a configuração MCP do [Dashboard Neuranix](https://neuranix.com.br/neuranix)
21
+ 2. Reinicie o IDE
10
22
 
11
23
  ```json
12
24
  {
@@ -17,15 +29,24 @@ Obtenha a configuração pronta em [neuranix.com.br/neuranix](https://neuranix.c
17
29
  "env": {
18
30
  "NEURANIX_API_URL": "https://neuranix.com.br/api/neuranix",
19
31
  "NEURANIX_API_KEY": "ak_sua_chave_aqui"
20
- }
32
+ },
33
+ "alwaysLoad": true
21
34
  }
22
35
  }
23
36
  }
24
37
  ```
25
38
 
26
- ### Claude Code (recomendado)
39
+ ### Reforço opcional no repositório (todos os IDEs)
40
+
41
+ ```bash
42
+ npx -y @neuranix/mcp-server setup
43
+ ```
44
+
45
+ Grava `AGENTS.md`, `.cursor/rules/neuranix.mdc`, `CLAUDE.md`, `.github/copilot-instructions.md`, `.windsurfrules`.
27
46
 
28
- Use `alwaysLoad: true` para manter a tool sempre visível e adicione o bloco `CLAUDE.md` do dashboard:
47
+ Use `--force` para sobrescrever arquivos existentes.
48
+
49
+ ### Claude Code
29
50
 
30
51
  ```bash
31
52
  claude mcp add --scope project neuranix \
@@ -34,36 +55,24 @@ claude mcp add --scope project neuranix \
34
55
  -- npx -y @neuranix/mcp-server
35
56
  ```
36
57
 
37
- Comandos proativos no Claude Code:
38
-
39
- | Comando | Uso |
40
- |---------|-----|
41
- | `/mcp__neuranix__session_start` | Carregar contexto no início da sessão |
42
- | `/mcp__neuranix__before_task` | Recall antes de tarefa complexa |
43
- | `/mcp__neuranix__save_decision` | Gravar decisão importante |
44
-
45
- ## Segurança de domínio
46
-
47
- Por padrão, o MCP só aceita requisições para hosts autorizados:
58
+ Prompts MCP (agente pode invocar automaticamente):
48
59
 
49
- - `neuranix.com.br` / `www.neuranix.com.br` (HTTPS obrigatório)
50
- - `localhost` / `127.0.0.1` (desenvolvimento)
51
-
52
- Para túneis locais (ngrok, etc.) em desenvolvimento:
53
-
54
- ```bash
55
- NEURANIX_ALLOW_CUSTOM_HOST=true
56
- NEURANIX_API_URL=https://seu-tunel.ngrok-free.app/api/neuranix
57
- ```
60
+ | Prompt | Uso |
61
+ |--------|-----|
62
+ | `/mcp__neuranix__session_start` | Contexto no início |
63
+ | `/mcp__neuranix__before_task` | Recall antes de tarefa |
64
+ | `/mcp__neuranix__save_decision` | Gravar decisão |
65
+ | `/mcp__neuranix__session_end` | Checkpoint de fim de sessão |
66
+ | `/mcp__neuranix__after_compaction` | Recarregar após compactação |
58
67
 
59
68
  ## Variáveis de ambiente
60
69
 
61
70
  | Variável | Descrição |
62
71
  |----------|-----------|
63
- | `NEURANIX_API_URL` | URL base (padrão produção: `https://neuranix.com.br/api/neuranix`) |
72
+ | `NEURANIX_API_URL` | URL base da API |
64
73
  | `NEURANIX_API_KEY` | Chave API (`ak_...`) — **obrigatória** |
65
- | `NEURANIX_ENV` | `local` para usar `http://127.0.0.1:8000/api/neuranix` |
66
- | `NEURANIX_ALLOW_CUSTOM_HOST` | `true` para permitir hosts de dev (ngrok) |
74
+ | `NEURANIX_ENV` | `local` para `http://127.0.0.1:8000/api/neuranix` |
75
+ | `NEURANIX_ALLOW_CUSTOM_HOST` | `true` para hosts de dev (ngrok) |
67
76
 
68
77
  ## Desenvolvimento local
69
78
 
@@ -71,4 +80,5 @@ NEURANIX_API_URL=https://seu-tunel.ngrok-free.app/api/neuranix
71
80
  npm install
72
81
  npm run build
73
82
  NEURANIX_ENV=local NEURANIX_API_KEY=ak_... npm start
83
+ npm run setup
74
84
  ```
@@ -0,0 +1,17 @@
1
+ export interface IdeFile {
2
+ relativePath: string;
3
+ label: string;
4
+ content: string;
5
+ merge?: "append-marked" | "skip-if-exists";
6
+ }
7
+ export declare function allIdeFiles(): IdeFile[];
8
+ export interface SetupResult {
9
+ written: string[];
10
+ skipped: string[];
11
+ updated: string[];
12
+ }
13
+ export declare function writeIdeFiles(cwd: string, options?: {
14
+ force?: boolean;
15
+ }): SetupResult;
16
+ export declare function ideSetupMarkdown(): string;
17
+ //# sourceMappingURL=ide-files.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ide-files.d.ts","sourceRoot":"","sources":["../src/ide-files.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,OAAO;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,eAAe,GAAG,gBAAgB,CAAC;CAC5C;AAED,wBAAgB,WAAW,IAAI,OAAO,EAAE,CAsCvC;AAeD,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,WAAW,CAwCzF;AAED,wBAAgB,gBAAgB,IAAI,MAAM,CAsBzC"}
@@ -0,0 +1,106 @@
1
+ import { AGENTS_MD_FOOTER, CLAUDE_COMMANDS, COPILOT_FOOTER, CORE_PROTOCOL, } from "./rules.js";
2
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
3
+ import { dirname, join } from "path";
4
+ const NEURANIX_MARKER_START = "<!-- NEURANIX:START -->";
5
+ const NEURANIX_MARKER_END = "<!-- NEURANIX:END -->";
6
+ export function allIdeFiles() {
7
+ return [
8
+ {
9
+ relativePath: "AGENTS.md",
10
+ label: "AGENTS.md (universal)",
11
+ content: CORE_PROTOCOL + AGENTS_MD_FOOTER,
12
+ merge: "skip-if-exists",
13
+ },
14
+ {
15
+ relativePath: ".cursor/rules/neuranix.mdc",
16
+ label: "Cursor Rules",
17
+ content: "---\n" +
18
+ "description: Neuranix — memória persistente automática\n" +
19
+ "alwaysApply: true\n" +
20
+ "---\n\n" +
21
+ CORE_PROTOCOL,
22
+ merge: "skip-if-exists",
23
+ },
24
+ {
25
+ relativePath: ".github/copilot-instructions.md",
26
+ label: "GitHub Copilot",
27
+ content: CORE_PROTOCOL + COPILOT_FOOTER,
28
+ merge: "skip-if-exists",
29
+ },
30
+ {
31
+ relativePath: ".windsurfrules",
32
+ label: "Windsurf",
33
+ content: CORE_PROTOCOL,
34
+ merge: "append-marked",
35
+ },
36
+ {
37
+ relativePath: "CLAUDE.md",
38
+ label: "Claude Code",
39
+ content: CORE_PROTOCOL + "\n" + CLAUDE_COMMANDS,
40
+ merge: "append-marked",
41
+ },
42
+ ];
43
+ }
44
+ function mergeMarked(existing, block) {
45
+ const start = existing.indexOf(NEURANIX_MARKER_START);
46
+ const end = existing.indexOf(NEURANIX_MARKER_END);
47
+ const wrapped = `${NEURANIX_MARKER_START}\n${block}\n${NEURANIX_MARKER_END}`;
48
+ if (start !== -1 && end !== -1 && end > start) {
49
+ return existing.slice(0, start) + wrapped + existing.slice(end + NEURANIX_MARKER_END.length);
50
+ }
51
+ const separator = existing.trim() ? "\n\n" : "";
52
+ return existing.trimEnd() + separator + wrapped + "\n";
53
+ }
54
+ export function writeIdeFiles(cwd, options = {}) {
55
+ const result = { written: [], skipped: [], updated: [] };
56
+ const force = options.force ?? false;
57
+ for (const file of allIdeFiles()) {
58
+ const fullPath = join(cwd, file.relativePath);
59
+ const dir = dirname(fullPath);
60
+ if (!existsSync(dir)) {
61
+ mkdirSync(dir, { recursive: true });
62
+ }
63
+ if (existsSync(fullPath) && !force) {
64
+ if (file.merge === "append-marked") {
65
+ const existing = readFileSync(fullPath, "utf8");
66
+ const merged = mergeMarked(existing, file.content);
67
+ if (merged !== existing) {
68
+ writeFileSync(fullPath, merged, "utf8");
69
+ result.updated.push(file.relativePath);
70
+ }
71
+ else {
72
+ result.skipped.push(file.relativePath);
73
+ }
74
+ continue;
75
+ }
76
+ result.skipped.push(file.relativePath);
77
+ continue;
78
+ }
79
+ if (existsSync(fullPath) && force && file.merge === "append-marked") {
80
+ const existing = readFileSync(fullPath, "utf8");
81
+ writeFileSync(fullPath, mergeMarked(existing, file.content), "utf8");
82
+ result.updated.push(file.relativePath);
83
+ continue;
84
+ }
85
+ writeFileSync(fullPath, file.content, "utf8");
86
+ result.written.push(file.relativePath);
87
+ }
88
+ return result;
89
+ }
90
+ export function ideSetupMarkdown() {
91
+ const lines = [
92
+ "# Neuranix — arquivos opcionais por IDE",
93
+ "",
94
+ "O protocolo automático **já vem no MCP** (`instructions` + tools + resources).",
95
+ "Estes arquivos reforçam o comportamento no repositório:",
96
+ "",
97
+ "| IDE | Arquivo |",
98
+ "|-----|---------|",
99
+ ];
100
+ for (const f of allIdeFiles()) {
101
+ lines.push(`| ${f.label} | \`${f.relativePath}\` |`);
102
+ }
103
+ lines.push("", "Instale com: `npx -y @neuranix/mcp-server setup` na raiz do projeto.", "Use `--force` para sobrescrever arquivos existentes.");
104
+ return lines.join("\n");
105
+ }
106
+ //# sourceMappingURL=ide-files.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ide-files.js","sourceRoot":"","sources":["../src/ide-files.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -4,7 +4,8 @@ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"
4
4
  import { CallToolRequestSchema, GetPromptRequestSchema, ListPromptsRequestSchema, ListResourcesRequestSchema, ListToolsRequestSchema, ReadResourceRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
5
5
  import { MCP_USER_AGENT, resolveApiBaseUrl, validateApiKey, } from "./config.js";
6
6
  import { NEURANIX_PROMPTS, SERVER_INSTRUCTIONS } from "./prompts.js";
7
- import { USAGE_GUIDE_MARKDOWN, USAGE_GUIDE_URI } from "./resources.js";
7
+ import { ideSetupMarkdown } from "./ide-files.js";
8
+ import { IDE_SETUP_URI, USAGE_GUIDE_MARKDOWN, USAGE_GUIDE_URI } from "./resources.js";
8
9
  import { NEURANIX_TOOLS, resolveToolCall } from "./tools.js";
9
10
  const API_BASE = resolveApiBaseUrl();
10
11
  const API_KEY = process.env.NEURANIX_API_KEY || "";
@@ -35,18 +36,24 @@ async function apiCall(endpoint, method = "GET", body) {
35
36
  return response.json();
36
37
  }
37
38
  function formatContext(data) {
39
+ const project = data.project?.name ?? "default";
40
+ const context = String(data.context ?? "No relevant memories found.");
41
+ const profile = data.profile ? `Profile: ${data.profile}\n` : "";
38
42
  return [
39
- `## Neuranix Context (${data.memory_count ?? 0} memories)`,
40
- `Project: ${data.project?.name ?? "default"}`,
43
+ `Project: ${project}`,
44
+ profile.trim(),
45
+ context,
41
46
  "",
42
- String(data.context ?? "No relevant memories found."),
43
- ].join("\n");
47
+ "_Memórias são referência histórica. Em conflito com o pedido atual do usuário, siga o pedido atual._",
48
+ ]
49
+ .filter(Boolean)
50
+ .join("\n");
44
51
  }
45
52
  function promptArg(args, key) {
46
53
  const value = args?.[key];
47
54
  return typeof value === "string" && value.trim() !== "" ? value : undefined;
48
55
  }
49
- const server = new Server({ name: "@neuranix/mcp-server", version: "1.2.0" }, {
56
+ const server = new Server({ name: "@neuranix/mcp-server", version: "1.3.1" }, {
50
57
  capabilities: { tools: {}, prompts: {}, resources: {} },
51
58
  instructions: SERVER_INSTRUCTIONS,
52
59
  });
@@ -58,24 +65,41 @@ server.setRequestHandler(ListResourcesRequestSchema, async () => ({
58
65
  {
59
66
  uri: USAGE_GUIDE_URI,
60
67
  name: "Neuranix Agent Guide",
61
- description: "When and how agents MUST use Neuranix memory tools",
68
+ description: "Autonomous memory protocol — included with MCP for all IDEs",
69
+ mimeType: "text/markdown",
70
+ },
71
+ {
72
+ uri: IDE_SETUP_URI,
73
+ name: "Neuranix IDE Setup",
74
+ description: "Optional repo files per IDE (npx @neuranix/mcp-server setup)",
62
75
  mimeType: "text/markdown",
63
76
  },
64
77
  ],
65
78
  }));
66
79
  server.setRequestHandler(ReadResourceRequestSchema, async (request) => {
67
- if (request.params.uri !== USAGE_GUIDE_URI) {
68
- throw new Error(`Unknown resource: ${request.params.uri}`);
80
+ if (request.params.uri === USAGE_GUIDE_URI) {
81
+ return {
82
+ contents: [
83
+ {
84
+ uri: USAGE_GUIDE_URI,
85
+ mimeType: "text/markdown",
86
+ text: USAGE_GUIDE_MARKDOWN,
87
+ },
88
+ ],
89
+ };
69
90
  }
70
- return {
71
- contents: [
72
- {
73
- uri: USAGE_GUIDE_URI,
74
- mimeType: "text/markdown",
75
- text: USAGE_GUIDE_MARKDOWN,
76
- },
77
- ],
78
- };
91
+ if (request.params.uri === IDE_SETUP_URI) {
92
+ return {
93
+ contents: [
94
+ {
95
+ uri: IDE_SETUP_URI,
96
+ mimeType: "text/markdown",
97
+ text: ideSetupMarkdown(),
98
+ },
99
+ ],
100
+ };
101
+ }
102
+ throw new Error(`Unknown resource: ${request.params.uri}`);
79
103
  });
80
104
  server.setRequestHandler(ListPromptsRequestSchema, async () => ({
81
105
  prompts: NEURANIX_PROMPTS,
@@ -145,6 +169,50 @@ server.setRequestHandler(GetPromptRequestSchema, async (request) => {
145
169
  ],
146
170
  };
147
171
  }
172
+ if (name === "session_end") {
173
+ const summary = promptArg(args, "summary");
174
+ if (!summary) {
175
+ throw new Error("Argument 'summary' is required for session_end");
176
+ }
177
+ const result = await apiCall("/memory", "POST", {
178
+ content: summary,
179
+ workspace_path: promptArg(args, "workspace_path"),
180
+ action: "store",
181
+ tags: ["session_checkpoint", "auto_capture"],
182
+ metadata: { source: "session_end", auto: true },
183
+ });
184
+ const memory = (result.data?.memory ?? {});
185
+ return {
186
+ description: "Session checkpoint saved to Neuranix",
187
+ messages: [
188
+ {
189
+ role: "user",
190
+ content: {
191
+ type: "text",
192
+ text: `Session checkpoint saved: ${memory.summary ?? memory.id ?? "ok"}`,
193
+ },
194
+ },
195
+ ],
196
+ };
197
+ }
198
+ if (name === "after_compaction") {
199
+ const result = await apiCall("/memory", "POST", {
200
+ query: promptArg(args, "task") ??
201
+ "reload project context after compaction — recent decisions and patterns",
202
+ workspace_path: promptArg(args, "workspace_path"),
203
+ action: "context",
204
+ mode: "conversation",
205
+ });
206
+ return {
207
+ description: "Neuranix context reloaded after compaction",
208
+ messages: [
209
+ {
210
+ role: "user",
211
+ content: { type: "text", text: formatContext(result.data ?? {}) },
212
+ },
213
+ ],
214
+ };
215
+ }
148
216
  throw new Error(`Unknown prompt: ${name}`);
149
217
  }
150
218
  catch (error) {
@@ -171,21 +239,28 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
171
239
  return { content: [{ type: "text", text: formatContext(data) }] };
172
240
  }
173
241
  if (data.action === "store") {
242
+ const label = toolName === "neuranix_checkpoint" ? "Checkpoint saved" : "Memory saved";
174
243
  return {
175
244
  content: [
176
245
  {
177
246
  type: "text",
178
- text: `Memory saved: ${data.memory?.summary ?? data.memory?.id}`,
247
+ text: `${label}: ${data.memory?.summary ?? data.memory?.id}`,
179
248
  },
180
249
  ],
181
250
  };
182
251
  }
183
252
  if (data.action === "recall") {
253
+ const framed = typeof data.framed === "string" ? data.framed : null;
254
+ if (framed) {
255
+ return { content: [{ type: "text", text: framed }] };
256
+ }
184
257
  const memories = (data.memories ?? data.results ?? []);
185
258
  const lines = [
186
259
  `## Neuranix Recall (${data.total ?? memories.length} matches)`,
187
260
  `Query: ${data.query ?? "—"}`,
188
261
  "",
262
+ "Use apenas entradas alinhadas à tarefa atual.",
263
+ "",
189
264
  ];
190
265
  for (const m of memories.slice(0, 15)) {
191
266
  lines.push(`- [${m.type ?? "memory"}] ${m.summary ?? m.content ?? ""}`);
@@ -205,9 +280,14 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
205
280
  }
206
281
  });
207
282
  async function main() {
283
+ const sub = process.argv[2];
284
+ if (sub === "setup") {
285
+ const { runSetup } = await import("./setup.js");
286
+ process.exit(runSetup(process.argv.slice(3)));
287
+ }
208
288
  const transport = new StdioServerTransport();
209
289
  await server.connect(transport);
210
- console.error(`Neuranix MCP v1.2 — ${API_BASE}`);
290
+ console.error(`Neuranix MCP v1.3.1 — ${API_BASE}`);
211
291
  }
212
292
  main().catch((error) => {
213
293
  console.error("Server error:", error);
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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"}
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAEjE,eAAO,MAAM,gBAAgB,EAAE,MAAM,EAwDpC,CAAC;AAEF,eAAO,MAAM,mBAAmB,QAQrB,CAAC"}
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAGjE,eAAO,MAAM,gBAAgB,EAAE,MAAM,EA0FpC,CAAC;AAEF,eAAO,MAAM,mBAAmB,QAWrB,CAAC"}
package/dist/prompts.js CHANGED
@@ -1,7 +1,8 @@
1
+ import { PROTOCOL_VERSION } from "./rules.js";
1
2
  export const NEURANIX_PROMPTS = [
2
3
  {
3
4
  name: "session_start",
4
- description: "Load Neuranix project context at session start. Run at the beginning of each coding session or after context compaction.",
5
+ description: "AUTOMATIC: load Neuranix context at session start. Agent should invoke without user asking.",
5
6
  arguments: [
6
7
  {
7
8
  name: "task",
@@ -17,7 +18,7 @@ export const NEURANIX_PROMPTS = [
17
18
  },
18
19
  {
19
20
  name: "before_task",
20
- description: "Recall relevant memories before a complex task (refactor, debug, architecture, code review).",
21
+ description: "AUTOMATIC: recall memories before a complex task (refactor, debug, architecture, code review).",
21
22
  arguments: [
22
23
  {
23
24
  name: "query",
@@ -38,7 +39,7 @@ export const NEURANIX_PROMPTS = [
38
39
  },
39
40
  {
40
41
  name: "save_decision",
41
- description: "Persist an important technical decision, fix, or pattern to Neuranix memory.",
42
+ description: "AUTOMATIC: persist a technical decision, fix, or pattern — no user confirmation needed.",
42
43
  arguments: [
43
44
  {
44
45
  name: "content",
@@ -52,14 +53,49 @@ export const NEURANIX_PROMPTS = [
52
53
  },
53
54
  ],
54
55
  },
56
+ {
57
+ name: "session_end",
58
+ description: "AUTOMATIC: checkpoint session summary before ending. Captures decisions, changes, and pending work.",
59
+ arguments: [
60
+ {
61
+ name: "summary",
62
+ description: "Concise session summary",
63
+ required: true,
64
+ },
65
+ {
66
+ name: "workspace_path",
67
+ description: "Absolute path to the project workspace",
68
+ required: false,
69
+ },
70
+ ],
71
+ },
72
+ {
73
+ name: "after_compaction",
74
+ description: "AUTOMATIC: reload Neuranix context after IDE context compaction so memory is not lost.",
75
+ arguments: [
76
+ {
77
+ name: "workspace_path",
78
+ description: "Absolute path to the project workspace",
79
+ required: false,
80
+ },
81
+ {
82
+ name: "task",
83
+ description: "Current task focus after compaction",
84
+ required: false,
85
+ },
86
+ ],
87
+ },
55
88
  ];
56
89
  export const SERVER_INSTRUCTIONS = [
57
- "Neuranix persistent memory for all IDE agents (Cursor, VS Code, Claude Code, Windsurf).",
58
- "SESSION START: call neuranix_context with workspace_path.",
90
+ `Neuranix v${PROTOCOL_VERSION} — persistent cognitive memory for ALL IDE agents (Cursor, VS Code, Claude Code, Windsurf, Antigravity).`,
91
+ "AUTONOMOUS PROTOCOL — the user must NEVER be told to manually save or recall memory. You do it.",
92
+ "Always pass task_context (current conversation focus) on context/recall/store/checkpoint.",
93
+ "SESSION START (mandatory): call neuranix_context with workspace_path + task_context.",
94
+ "AFTER context compaction: call neuranix_context again (or prompt after_compaction).",
59
95
  "BEFORE complex tasks: call neuranix_recall with query + workspace_path.",
60
- "AFTER decisions/fixes: call neuranix_store with content + workspace_path.",
61
- "Resource neuranix://agent-guide has full usage rules — read when unsure.",
62
- "Never skip memory on multi-file changes. Use mode=debug|code_review|architecture as needed.",
63
- "Claude Code: /mcp__neuranix__session_start, /mcp__neuranix__before_task, /mcp__neuranix__save_decision.",
96
+ "AFTER decisions/fixes/patterns: call neuranix_store with content + workspace_path.",
97
+ "SESSION END or major task done: call neuranix_checkpoint with summary + workspace_path.",
98
+ "Read resource neuranix://agent-guide when unsure. Optional repo files: npx -y @neuranix/mcp-server setup",
99
+ "Claude Code prompts: session_start, before_task, save_decision, session_end, after_compaction.",
64
100
  ].join(" ");
65
101
  //# sourceMappingURL=prompts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,gBAAgB,GAAa;IACxC;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,0HAA0H;QAC5H,SAAS,EAAE;YACT;gBACE,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,wDAAwD;gBACrE,QAAQ,EAAE,KAAK;aAChB;YACD;gBACE,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EAAE,wCAAwC;gBACrD,QAAQ,EAAE,KAAK;aAChB;SACF;KACF;IACD;QACE,IAAI,EAAE,aAAa;QACnB,WAAW,EACT,8FAA8F;QAChG,SAAS,EAAE;YACT;gBACE,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,8BAA8B;gBAC3C,QAAQ,EAAE,IAAI;aACf;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,0EAA0E;gBACvF,QAAQ,EAAE,KAAK;aAChB;YACD;gBACE,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EAAE,wCAAwC;gBACrD,QAAQ,EAAE,KAAK;aAChB;SACF;KACF;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,8EAA8E;QAC3F,SAAS,EAAE;YACT;gBACE,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,kCAAkC;gBAC/C,QAAQ,EAAE,IAAI;aACf;YACD;gBACE,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EAAE,wCAAwC;gBACrD,QAAQ,EAAE,KAAK;aAChB;SACF;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,yFAAyF;IACzF,2DAA2D;IAC3D,yEAAyE;IACzE,2EAA2E;IAC3E,0EAA0E;IAC1E,6FAA6F;IAC7F,yGAAyG;CAC1G,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,CAAC,MAAM,gBAAgB,GAAa;IACxC;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,6FAA6F;QAC/F,SAAS,EAAE;YACT;gBACE,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,wDAAwD;gBACrE,QAAQ,EAAE,KAAK;aAChB;YACD;gBACE,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EAAE,wCAAwC;gBACrD,QAAQ,EAAE,KAAK;aAChB;SACF;KACF;IACD;QACE,IAAI,EAAE,aAAa;QACnB,WAAW,EACT,gGAAgG;QAClG,SAAS,EAAE;YACT;gBACE,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,8BAA8B;gBAC3C,QAAQ,EAAE,IAAI;aACf;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,0EAA0E;gBACvF,QAAQ,EAAE,KAAK;aAChB;YACD;gBACE,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EAAE,wCAAwC;gBACrD,QAAQ,EAAE,KAAK;aAChB;SACF;KACF;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,yFAAyF;QACtG,SAAS,EAAE;YACT;gBACE,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,kCAAkC;gBAC/C,QAAQ,EAAE,IAAI;aACf;YACD;gBACE,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EAAE,wCAAwC;gBACrD,QAAQ,EAAE,KAAK;aAChB;SACF;KACF;IACD;QACE,IAAI,EAAE,aAAa;QACnB,WAAW,EACT,qGAAqG;QACvG,SAAS,EAAE;YACT;gBACE,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,yBAAyB;gBACtC,QAAQ,EAAE,IAAI;aACf;YACD;gBACE,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EAAE,wCAAwC;gBACrD,QAAQ,EAAE,KAAK;aAChB;SACF;KACF;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EACT,wFAAwF;QAC1F,SAAS,EAAE;YACT;gBACE,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EAAE,wCAAwC;gBACrD,QAAQ,EAAE,KAAK;aAChB;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,qCAAqC;gBAClD,QAAQ,EAAE,KAAK;aAChB;SACF;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,aAAa,gBAAgB,0GAA0G;IACvI,iGAAiG;IACjG,2FAA2F;IAC3F,sFAAsF;IACtF,qFAAqF;IACrF,yEAAyE;IACzE,oFAAoF;IACpF,yFAAyF;IACzF,0GAA0G;IAC1G,gGAAgG;CACjG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export declare const USAGE_GUIDE_URI = "neuranix://agent-guide";
2
- export declare const USAGE_GUIDE_MARKDOWN = "# Neuranix \u2014 Guia do agente\n\n## Quando chamar (obrigat\u00F3rio)\n\n| Momento | Tool MCP |\n|---------|----------|\n| In\u00EDcio da sess\u00E3o / ap\u00F3s compacta\u00E7\u00E3o | `neuranix_context` |\n| Antes de refactor, debug, review, arquitetura | `neuranix_recall` |\n| Ap\u00F3s decis\u00E3o t\u00E9cnica, fix ou padr\u00E3o descoberto | `neuranix_store` |\n\nSempre passe `workspace_path` com o caminho absoluto do reposit\u00F3rio.\n\n## Perfis (mode)\n- `debug` \u2014 erros e troubleshooting\n- `code_review` \u2014 revis\u00E3o de c\u00F3digo\n- `architecture` \u2014 decis\u00F5es de design\n- `code_generation` \u2014 implementa\u00E7\u00E3o\n- `conversation` \u2014 contexto geral\n\n## Prompts (Claude Code)\n- `/mcp__neuranix__session_start`\n- `/mcp__neuranix__before_task`\n- `/mcp__neuranix__save_decision`\n\n## Regra de ouro\nN\u00E3o espere o usu\u00E1rio pedir mem\u00F3ria. Use proativamente em toda tarefa n\u00E3o trivial.\n";
2
+ export declare const IDE_SETUP_URI = "neuranix://ide-setup";
3
+ export declare const USAGE_GUIDE_MARKDOWN = "# Neuranix \u2014 Guia do agente (v1.3.1)\n\nMem\u00F3ria autom\u00E1tica: ao conectar o MCP, o agente j\u00E1 recebe instru\u00E7\u00F5es para recuperar contexto no in\u00EDcio e salvar no fim \u2014 voc\u00EA n\u00E3o precisa pedir.\n\n## Ciclo autom\u00E1tico (obrigat\u00F3rio \u2014 sem pedido do usu\u00E1rio)\n\n| Momento | Tool MCP |\n|---------|----------|\n| In\u00EDcio da sess\u00E3o / ap\u00F3s compacta\u00E7\u00E3o | `neuranix_context` |\n| Antes de refactor, debug, review, arquitetura | `neuranix_recall` |\n| Ap\u00F3s decis\u00E3o t\u00E9cnica, fix ou padr\u00E3o | `neuranix_store` |\n| Fim de sess\u00E3o ou tarefa grande conclu\u00EDda | `neuranix_checkpoint` |\n\nSempre passe `workspace_path` absoluto do reposit\u00F3rio.\n\n## Perfis (mode)\n- `debug` \u2014 erros e troubleshooting\n- `code_review` \u2014 revis\u00E3o de c\u00F3digo\n- `architecture` \u2014 decis\u00F5es de design\n- `code_generation` \u2014 implementa\u00E7\u00E3o\n- `conversation` \u2014 contexto geral\n\n## Prompts MCP (Claude Code e compat\u00EDveis)\n- `/mcp__neuranix__session_start`\n- `/mcp__neuranix__before_task`\n- `/mcp__neuranix__save_decision`\n- `/mcp__neuranix__session_end`\n- `/mcp__neuranix__after_compaction`\n\n## Regra de ouro\nN\u00E3o espere o usu\u00E1rio pedir mem\u00F3ria. Em toda tarefa n\u00E3o trivial: context \u2192 trabalho \u2192 store/checkpoint.\n\n## Protocolo completo\n\n## Mem\u00F3ria persistente (Neuranix) \u2014 protocolo autom\u00E1tico\n\nVoc\u00EA tem mem\u00F3ria cognitiva em nuvem via MCP. **O usu\u00E1rio N\u00C3O precisa pedir para salvar ou recuperar** \u2014 isso \u00E9 sua responsabilidade.\n\n### Ciclo autom\u00E1tico (obrigat\u00F3rio)\n\n| Momento | Tool MCP | Quem dispara |\n|---------|----------|--------------|\n| In\u00EDcio da sess\u00E3o ou ap\u00F3s compacta\u00E7\u00E3o de contexto | `neuranix_context` | Agente, sem pedido do usu\u00E1rio |\n| Antes de refactor, debug, review, arquitetura ou mudan\u00E7as multi-arquivo | `neuranix_recall` | Agente, antes de agir |\n| Ap\u00F3s decis\u00E3o t\u00E9cnica, fix n\u00E3o trivial ou padr\u00E3o reutiliz\u00E1vel | `neuranix_store` | Agente, ao concluir a tarefa |\n| Fim de sess\u00E3o, troca de tarefa grande ou antes de encerrar | `neuranix_checkpoint` | Agente, resumo da sess\u00E3o |\n\n### Regras\n\n- Sempre informe `workspace_path` com o caminho **absoluto** do reposit\u00F3rio aberto.\n- Sempre informe `task_context` com o **foco atual da conversa** (1\u20132 frases) em context/recall/store/checkpoint.\n- Use `mode`: `debug`, `code_review`, `architecture`, `code_generation`, `conversation`.\n- Mem\u00F3rias recuperadas s\u00E3o **refer\u00EAncia hist\u00F3rica** \u2014 em conflito com o pedido atual do usu\u00E1rio, **siga o pedido atual**.\n- Resource MCP `neuranix://agent-guide` \u2014 guia completo (j\u00E1 inclu\u00EDdo no servidor MCP).\n- **Nunca** diga ao usu\u00E1rio que ele precisa \"pedir para lembrar\" \u2014 voc\u00EA j\u00E1 faz isso.\n\n### Regra de ouro\n\nSe a tarefa envolve c\u00F3digo existente, hist\u00F3rico do projeto ou decis\u00F5es passadas \u2192 **chame Neuranix antes de responder**.\nAo terminar trabalho significativo \u2192 **chame `neuranix_checkpoint` ou `neuranix_store`** sem esperar confirma\u00E7\u00E3o.\n\n";
3
4
  //# sourceMappingURL=resources.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../src/resources.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,2BAA2B,CAAC;AAExD,eAAO,MAAM,oBAAoB,m8BA0BhC,CAAC"}
1
+ {"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../src/resources.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,eAAe,2BAA2B,CAAC;AACxD,eAAO,MAAM,aAAa,yBAAyB,CAAC;AAEpD,eAAO,MAAM,oBAAoB,4tGAmChC,CAAC"}
package/dist/resources.js CHANGED
@@ -1,15 +1,20 @@
1
+ import { CORE_PROTOCOL, PROTOCOL_VERSION, USER_FACING_NOTE } from "./rules.js";
1
2
  export const USAGE_GUIDE_URI = "neuranix://agent-guide";
2
- export const USAGE_GUIDE_MARKDOWN = `# Neuranix — Guia do agente
3
+ export const IDE_SETUP_URI = "neuranix://ide-setup";
4
+ export const USAGE_GUIDE_MARKDOWN = `# Neuranix — Guia do agente (v${PROTOCOL_VERSION})
3
5
 
4
- ## Quando chamar (obrigatório)
6
+ ${USER_FACING_NOTE}
7
+
8
+ ## Ciclo automático (obrigatório — sem pedido do usuário)
5
9
 
6
10
  | Momento | Tool MCP |
7
11
  |---------|----------|
8
12
  | Início da sessão / após compactação | \`neuranix_context\` |
9
13
  | Antes de refactor, debug, review, arquitetura | \`neuranix_recall\` |
10
- | Após decisão técnica, fix ou padrão descoberto | \`neuranix_store\` |
14
+ | Após decisão técnica, fix ou padrão | \`neuranix_store\` |
15
+ | Fim de sessão ou tarefa grande concluída | \`neuranix_checkpoint\` |
11
16
 
12
- Sempre passe \`workspace_path\` com o caminho absoluto do repositório.
17
+ Sempre passe \`workspace_path\` absoluto do repositório.
13
18
 
14
19
  ## Perfis (mode)
15
20
  - \`debug\` — erros e troubleshooting
@@ -18,12 +23,18 @@ Sempre passe \`workspace_path\` com o caminho absoluto do repositório.
18
23
  - \`code_generation\` — implementação
19
24
  - \`conversation\` — contexto geral
20
25
 
21
- ## Prompts (Claude Code)
26
+ ## Prompts MCP (Claude Code e compatíveis)
22
27
  - \`/mcp__neuranix__session_start\`
23
28
  - \`/mcp__neuranix__before_task\`
24
29
  - \`/mcp__neuranix__save_decision\`
30
+ - \`/mcp__neuranix__session_end\`
31
+ - \`/mcp__neuranix__after_compaction\`
25
32
 
26
33
  ## Regra de ouro
27
- Não espere o usuário pedir memória. Use proativamente em toda tarefa não trivial.
34
+ Não espere o usuário pedir memória. Em toda tarefa não trivial: context → trabalho → store/checkpoint.
35
+
36
+ ## Protocolo completo
37
+
38
+ ${CORE_PROTOCOL}
28
39
  `;
29
40
  //# sourceMappingURL=resources.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resources.js","sourceRoot":"","sources":["../src/resources.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,wBAAwB,CAAC;AAExD,MAAM,CAAC,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BnC,CAAC"}
1
+ {"version":3,"file":"resources.js","sourceRoot":"","sources":["../src/resources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAG/E,MAAM,CAAC,MAAM,eAAe,GAAG,wBAAwB,CAAC;AACxD,MAAM,CAAC,MAAM,aAAa,GAAG,sBAAsB,CAAC;AAEpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,iCAAiC,gBAAgB;;EAEnF,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgChB,aAAa;CACd,CAAC"}
@@ -0,0 +1,8 @@
1
+ /** Single source of truth for Neuranix agent protocol (all IDEs). */
2
+ export declare const PROTOCOL_VERSION = "1.3.1";
3
+ export declare const CORE_PROTOCOL = "## Mem\u00F3ria persistente (Neuranix) \u2014 protocolo autom\u00E1tico\n\nVoc\u00EA tem mem\u00F3ria cognitiva em nuvem via MCP. **O usu\u00E1rio N\u00C3O precisa pedir para salvar ou recuperar** \u2014 isso \u00E9 sua responsabilidade.\n\n### Ciclo autom\u00E1tico (obrigat\u00F3rio)\n\n| Momento | Tool MCP | Quem dispara |\n|---------|----------|--------------|\n| In\u00EDcio da sess\u00E3o ou ap\u00F3s compacta\u00E7\u00E3o de contexto | `neuranix_context` | Agente, sem pedido do usu\u00E1rio |\n| Antes de refactor, debug, review, arquitetura ou mudan\u00E7as multi-arquivo | `neuranix_recall` | Agente, antes de agir |\n| Ap\u00F3s decis\u00E3o t\u00E9cnica, fix n\u00E3o trivial ou padr\u00E3o reutiliz\u00E1vel | `neuranix_store` | Agente, ao concluir a tarefa |\n| Fim de sess\u00E3o, troca de tarefa grande ou antes de encerrar | `neuranix_checkpoint` | Agente, resumo da sess\u00E3o |\n\n### Regras\n\n- Sempre informe `workspace_path` com o caminho **absoluto** do reposit\u00F3rio aberto.\n- Sempre informe `task_context` com o **foco atual da conversa** (1\u20132 frases) em context/recall/store/checkpoint.\n- Use `mode`: `debug`, `code_review`, `architecture`, `code_generation`, `conversation`.\n- Mem\u00F3rias recuperadas s\u00E3o **refer\u00EAncia hist\u00F3rica** \u2014 em conflito com o pedido atual do usu\u00E1rio, **siga o pedido atual**.\n- Resource MCP `neuranix://agent-guide` \u2014 guia completo (j\u00E1 inclu\u00EDdo no servidor MCP).\n- **Nunca** diga ao usu\u00E1rio que ele precisa \"pedir para lembrar\" \u2014 voc\u00EA j\u00E1 faz isso.\n\n### Regra de ouro\n\nSe a tarefa envolve c\u00F3digo existente, hist\u00F3rico do projeto ou decis\u00F5es passadas \u2192 **chame Neuranix antes de responder**.\nAo terminar trabalho significativo \u2192 **chame `neuranix_checkpoint` ou `neuranix_store`** sem esperar confirma\u00E7\u00E3o.\n";
4
+ export declare const AGENTS_MD_FOOTER: string;
5
+ export declare const CLAUDE_COMMANDS = "### Comandos MCP (Claude Code)\n\n| Comando | Quando (autom\u00E1tico pelo agente) |\n|---------|--------------------------------|\n| `/mcp__neuranix__session_start` | In\u00EDcio da sess\u00E3o |\n| `/mcp__neuranix__before_task` | Antes de tarefa complexa |\n| `/mcp__neuranix__save_decision` | Ap\u00F3s decis\u00E3o ou fix |\n| `/mcp__neuranix__session_end` | Fim da sess\u00E3o \u2014 checkpoint |\n| `/mcp__neuranix__after_compaction` | Ap\u00F3s compacta\u00E7\u00E3o de contexto |\n";
6
+ export declare const COPILOT_FOOTER = "\nTools MCP: `neuranix_context`, `neuranix_recall`, `neuranix_store`, `neuranix_checkpoint`, `neuranix_memory`.\n";
7
+ export declare const USER_FACING_NOTE = "Mem\u00F3ria autom\u00E1tica: ao conectar o MCP, o agente j\u00E1 recebe instru\u00E7\u00F5es para recuperar contexto no in\u00EDcio e salvar no fim \u2014 voc\u00EA n\u00E3o precisa pedir.";
8
+ //# sourceMappingURL=rules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../src/rules.ts"],"names":[],"mappings":"AAAA,qEAAqE;AAErE,eAAO,MAAM,gBAAgB,UAAU,CAAC;AAExC,eAAO,MAAM,aAAa,y1DA0BzB,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAGmF,CAAC;AAEjH,eAAO,MAAM,eAAe,8eAS3B,CAAC;AAEF,eAAO,MAAM,cAAc,sHAC0F,CAAC;AAEtH,eAAO,MAAM,gBAAgB,kMAAqJ,CAAC"}
package/dist/rules.js ADDED
@@ -0,0 +1,45 @@
1
+ /** Single source of truth for Neuranix agent protocol (all IDEs). */
2
+ export const PROTOCOL_VERSION = "1.3.1";
3
+ export const CORE_PROTOCOL = `## Memória persistente (Neuranix) — protocolo automático
4
+
5
+ Você tem memória cognitiva em nuvem via MCP. **O usuário NÃO precisa pedir para salvar ou recuperar** — isso é sua responsabilidade.
6
+
7
+ ### Ciclo automático (obrigatório)
8
+
9
+ | Momento | Tool MCP | Quem dispara |
10
+ |---------|----------|--------------|
11
+ | Início da sessão ou após compactação de contexto | \`neuranix_context\` | Agente, sem pedido do usuário |
12
+ | Antes de refactor, debug, review, arquitetura ou mudanças multi-arquivo | \`neuranix_recall\` | Agente, antes de agir |
13
+ | Após decisão técnica, fix não trivial ou padrão reutilizável | \`neuranix_store\` | Agente, ao concluir a tarefa |
14
+ | Fim de sessão, troca de tarefa grande ou antes de encerrar | \`neuranix_checkpoint\` | Agente, resumo da sessão |
15
+
16
+ ### Regras
17
+
18
+ - Sempre informe \`workspace_path\` com o caminho **absoluto** do repositório aberto.
19
+ - Sempre informe \`task_context\` com o **foco atual da conversa** (1–2 frases) em context/recall/store/checkpoint.
20
+ - Use \`mode\`: \`debug\`, \`code_review\`, \`architecture\`, \`code_generation\`, \`conversation\`.
21
+ - Memórias recuperadas são **referência histórica** — em conflito com o pedido atual do usuário, **siga o pedido atual**.
22
+ - Resource MCP \`neuranix://agent-guide\` — guia completo (já incluído no servidor MCP).
23
+ - **Nunca** diga ao usuário que ele precisa "pedir para lembrar" — você já faz isso.
24
+
25
+ ### Regra de ouro
26
+
27
+ Se a tarefa envolve código existente, histórico do projeto ou decisões passadas → **chame Neuranix antes de responder**.
28
+ Ao terminar trabalho significativo → **chame \`neuranix_checkpoint\` ou \`neuranix_store\`** sem esperar confirmação.
29
+ `;
30
+ export const AGENTS_MD_FOOTER = "\n> Protocolo Neuranix v" +
31
+ PROTOCOL_VERSION +
32
+ " — incluído no MCP `@neuranix/mcp-server`. Compatível com Cursor, VS Code, Claude Code, Windsurf e outros.\n";
33
+ export const CLAUDE_COMMANDS = `### Comandos MCP (Claude Code)
34
+
35
+ | Comando | Quando (automático pelo agente) |
36
+ |---------|--------------------------------|
37
+ | \`/mcp__neuranix__session_start\` | Início da sessão |
38
+ | \`/mcp__neuranix__before_task\` | Antes de tarefa complexa |
39
+ | \`/mcp__neuranix__save_decision\` | Após decisão ou fix |
40
+ | \`/mcp__neuranix__session_end\` | Fim da sessão — checkpoint |
41
+ | \`/mcp__neuranix__after_compaction\` | Após compactação de contexto |
42
+ `;
43
+ export const COPILOT_FOOTER = "\nTools MCP: `neuranix_context`, `neuranix_recall`, `neuranix_store`, `neuranix_checkpoint`, `neuranix_memory`.\n";
44
+ export const USER_FACING_NOTE = `Memória automática: ao conectar o MCP, o agente já recebe instruções para recuperar contexto no início e salvar no fim — você não precisa pedir.`;
45
+ //# sourceMappingURL=rules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rules.js","sourceRoot":"","sources":["../src/rules.ts"],"names":[],"mappings":"AAAA,qEAAqE;AAErE,MAAM,CAAC,MAAM,gBAAgB,GAAG,OAAO,CAAC;AAExC,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;CA0B5B,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAC3B,0BAA0B;IAC1B,gBAAgB;IAChB,8GAA8G,CAAC;AAEjH,MAAM,CAAC,MAAM,eAAe,GAAG;;;;;;;;;CAS9B,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GACzB,mHAAmH,CAAC;AAEtH,MAAM,CAAC,MAAM,gBAAgB,GAAG,kJAAkJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export declare function runSetup(args: string[]): number;
3
+ //# sourceMappingURL=setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":";AAKA,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAiC/C"}
package/dist/setup.js ADDED
@@ -0,0 +1,38 @@
1
+ #!/usr/bin/env node
2
+ import { writeIdeFiles } from "./ide-files.js";
3
+ import { USER_FACING_NOTE } from "./rules.js";
4
+ export function runSetup(args) {
5
+ if (args.includes("--help") || args.includes("-h")) {
6
+ console.log(`Neuranix MCP setup — grava regras do agente no repositório (todos os IDEs)
7
+
8
+ Uso:
9
+ npx -y @neuranix/mcp-server setup [--force]
10
+
11
+ --force Sobrescreve arquivos que já existem (padrão: pula ou mescla CLAUDE.md/.windsurfrules)
12
+
13
+ ${USER_FACING_NOTE}
14
+ `);
15
+ return 0;
16
+ }
17
+ const force = args.includes("--force");
18
+ const result = writeIdeFiles(process.cwd(), { force });
19
+ for (const p of result.written) {
20
+ console.log(`[neuranix] criado: ${p}`);
21
+ }
22
+ for (const p of result.updated) {
23
+ console.log(`[neuranix] atualizado: ${p}`);
24
+ }
25
+ for (const p of result.skipped) {
26
+ console.log(`[neuranix] ignorado (já existe): ${p}`);
27
+ }
28
+ if (result.written.length === 0 && result.updated.length === 0) {
29
+ console.log("[neuranix] Nada alterado. Use --force para sobrescrever.");
30
+ }
31
+ console.log(`\n${USER_FACING_NOTE}`);
32
+ return 0;
33
+ }
34
+ const invokedDirectly = process.argv[1]?.replace(/\\/g, "/").includes("/setup.js");
35
+ if (invokedDirectly) {
36
+ process.exit(runSetup(process.argv.slice(2)));
37
+ }
38
+ //# sourceMappingURL=setup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,UAAU,QAAQ,CAAC,IAAc;IACrC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC;;;;;;;EAOd,gBAAgB;CACjB,CAAC,CAAC;QACC,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAEvD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;IAC7C,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,gBAAgB,EAAE,CAAC,CAAC;IACrC,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AACnF,IAAI,eAAe,EAAE,CAAC;IACpB,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAe/D,eAAO,MAAM,cAAc,EAAE,IAAI,EA6EhC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE1D,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACxC;IAAE,MAAM,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAoDzD"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAqB/D,eAAO,MAAM,cAAc,EAAE,IAAI,EAyGhC,CAAC;AASF,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE1D,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACxC;IAAE,MAAM,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAsEzD"}
package/dist/tools.js CHANGED
@@ -8,11 +8,34 @@ const modeEnum = {
8
8
  enum: ["conversation", "code_generation", "code_review", "debug", "architecture"],
9
9
  description: "Context profile — auto-detected if omitted",
10
10
  };
11
+ const taskContext = {
12
+ type: "string",
13
+ description: "Current conversation focus (1-2 sentences). REQUIRED for accurate recall/context — prevents misinterpretation.",
14
+ };
11
15
  export const NEURANIX_TOOLS = [
16
+ {
17
+ name: "neuranix_context",
18
+ description: "AUTOMATIC at session start and after context compaction — do NOT wait for user request. " +
19
+ "Loads project memories into working context.",
20
+ inputSchema: {
21
+ type: "object",
22
+ properties: {
23
+ query: {
24
+ type: "string",
25
+ description: "Optional session focus (defaults to project overview)",
26
+ },
27
+ workspace_path: workspacePath,
28
+ mode: modeEnum,
29
+ task_context: taskContext,
30
+ },
31
+ required: ["workspace_path"],
32
+ },
33
+ _meta: ALWAYS_LOAD,
34
+ },
12
35
  {
13
36
  name: "neuranix_recall",
14
- description: "REQUIRED before refactor, debug, code review, architecture work, or multi-file changes. " +
15
- "Recalls relevant memories from past sessions for the current project.",
37
+ description: "AUTOMATIC before refactor, debug, code review, architecture, or multi-file changes. " +
38
+ "Recalls relevant memories from past sessions.",
16
39
  inputSchema: {
17
40
  type: "object",
18
41
  properties: {
@@ -22,6 +45,7 @@ export const NEURANIX_TOOLS = [
22
45
  },
23
46
  workspace_path: workspacePath,
24
47
  mode: modeEnum,
48
+ task_context: taskContext,
25
49
  },
26
50
  required: ["query", "workspace_path"],
27
51
  },
@@ -29,8 +53,8 @@ export const NEURANIX_TOOLS = [
29
53
  },
30
54
  {
31
55
  name: "neuranix_store",
32
- description: "REQUIRED after technical decisions, non-trivial bug fixes, architecture choices, or reusable patterns. " +
33
- "Persists learning to Neuranix cloud memory.",
56
+ description: "AUTOMATIC after technical decisions, non-trivial bug fixes, architecture choices, or reusable patterns. " +
57
+ "User must NOT be asked to save — persist proactively.",
34
58
  inputSchema: {
35
59
  type: "object",
36
60
  properties: {
@@ -43,31 +67,37 @@ export const NEURANIX_TOOLS = [
43
67
  type: "string",
44
68
  description: "Optional project name override",
45
69
  },
70
+ task_context: taskContext,
46
71
  },
47
72
  required: ["content", "workspace_path"],
48
73
  },
49
74
  _meta: ALWAYS_LOAD,
50
75
  },
51
76
  {
52
- name: "neuranix_context",
53
- description: "REQUIRED at session start and after context compaction. Builds enriched project context from memories.",
77
+ name: "neuranix_checkpoint",
78
+ description: "AUTOMATIC at end of session, major task completion, or before conversation ends. " +
79
+ "Stores a concise session summary (decisions, fixes, pending items). Never ask the user to request this.",
54
80
  inputSchema: {
55
81
  type: "object",
56
82
  properties: {
57
- query: {
83
+ summary: {
58
84
  type: "string",
59
- description: "Optional session focus (defaults to project overview)",
85
+ description: "Concise session summary: decisions, changes, bugs fixed, pending work",
60
86
  },
61
87
  workspace_path: workspacePath,
62
- mode: modeEnum,
88
+ project_name: {
89
+ type: "string",
90
+ description: "Optional project name override",
91
+ },
92
+ task_context: taskContext,
63
93
  },
64
- required: ["workspace_path"],
94
+ required: ["summary", "workspace_path"],
65
95
  },
66
96
  _meta: ALWAYS_LOAD,
67
97
  },
68
98
  {
69
99
  name: "neuranix_memory",
70
- description: "Unified Neuranix memory (legacy). Prefer neuranix_recall, neuranix_store, neuranix_context when possible.",
100
+ description: "Unified Neuranix memory (legacy). Prefer neuranix_context, neuranix_recall, neuranix_store, neuranix_checkpoint.",
71
101
  inputSchema: {
72
102
  type: "object",
73
103
  properties: {
@@ -77,11 +107,18 @@ export const NEURANIX_TOOLS = [
77
107
  project_name: { type: "string", description: "Optional project name override" },
78
108
  action: { type: "string", enum: ["context", "store", "recall"] },
79
109
  mode: modeEnum,
110
+ task_context: taskContext,
80
111
  },
81
112
  },
82
113
  _meta: ALWAYS_LOAD,
83
114
  },
84
115
  ];
116
+ function withTaskContext(body, args) {
117
+ if (typeof args?.task_context === "string" && args.task_context.trim()) {
118
+ body.task_context = args.task_context.trim();
119
+ }
120
+ return body;
121
+ }
85
122
  export function resolveToolCall(toolName, args) {
86
123
  const workspace_path = args?.workspace_path;
87
124
  const project_name = args?.project_name;
@@ -89,47 +126,65 @@ export function resolveToolCall(toolName, args) {
89
126
  case "neuranix_recall":
90
127
  return {
91
128
  action: "recall",
92
- body: {
129
+ body: withTaskContext({
93
130
  query: args?.query,
94
131
  workspace_path,
95
132
  project_name,
96
133
  action: "recall",
97
134
  mode: args?.mode,
98
- },
135
+ }, args),
99
136
  };
100
137
  case "neuranix_store":
101
138
  return {
102
139
  action: "store",
103
- body: {
140
+ body: withTaskContext({
104
141
  content: args?.content,
105
142
  workspace_path,
106
143
  project_name,
107
144
  action: "store",
108
- },
145
+ }, args),
146
+ };
147
+ case "neuranix_checkpoint":
148
+ return {
149
+ action: "store",
150
+ body: withTaskContext({
151
+ content: args?.summary ?? args?.content,
152
+ workspace_path,
153
+ project_name,
154
+ action: "store",
155
+ tags: ["session_checkpoint", "auto_capture"],
156
+ metadata: {
157
+ source: "checkpoint",
158
+ auto: true,
159
+ task_context: typeof args?.task_context === "string" ? args.task_context : undefined,
160
+ },
161
+ }, args),
109
162
  };
110
163
  case "neuranix_context":
111
164
  return {
112
165
  action: "context",
113
- body: {
166
+ body: withTaskContext({
114
167
  query: args?.query ??
115
168
  "project context, recent decisions, and important patterns",
116
169
  workspace_path,
117
170
  project_name,
118
171
  action: "context",
119
172
  mode: args?.mode ?? "conversation",
120
- },
173
+ }, args),
121
174
  };
122
175
  default:
123
176
  return {
124
177
  action: args?.action ?? "context",
125
- body: {
178
+ body: withTaskContext({
126
179
  query: args?.query,
127
180
  content: args?.content,
128
181
  workspace_path,
129
182
  project_name,
130
183
  action: args?.action,
131
184
  mode: args?.mode,
132
- },
185
+ tags: args?.tags,
186
+ metadata: args?.metadata,
187
+ }, args),
133
188
  };
134
189
  }
135
190
  }
package/dist/tools.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,GAAG,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC;AAErD,MAAM,aAAa,GAAG;IACpB,IAAI,EAAE,QAAiB;IACvB,WAAW,EAAE,mDAAmD;CACjE,CAAC;AAEF,MAAM,QAAQ,GAAG;IACf,IAAI,EAAE,QAAiB;IACvB,IAAI,EAAE,CAAC,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,OAAO,EAAE,cAAc,CAAC;IACjF,WAAW,EAAE,4CAA4C;CAC1D,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAW;IACpC;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACT,0FAA0F;YAC1F,uEAAuE;QACzE,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,0BAA0B;iBACxC;gBACD,cAAc,EAAE,aAAa;gBAC7B,IAAI,EAAE,QAAQ;aACf;YACD,QAAQ,EAAE,CAAC,OAAO,EAAE,gBAAgB,CAAC;SACtC;QACD,KAAK,EAAE,WAAW;KACnB;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,yGAAyG;YACzG,6CAA6C;QAC/C,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,mDAAmD;iBACjE;gBACD,cAAc,EAAE,aAAa;gBAC7B,YAAY,EAAE;oBACZ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,gCAAgC;iBAC9C;aACF;YACD,QAAQ,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC;SACxC;QACD,KAAK,EAAE,WAAW;KACnB;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EACT,wGAAwG;QAC1G,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,uDAAuD;iBACrE;gBACD,cAAc,EAAE,aAAa;gBAC7B,IAAI,EAAE,QAAQ;aACf;YACD,QAAQ,EAAE,CAAC,gBAAgB,CAAC;SAC7B;QACD,KAAK,EAAE,WAAW;KACnB;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACT,2GAA2G;QAC7G,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,yCAAyC,EAAE;gBACjF,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2CAA2C,EAAE;gBACrF,cAAc,EAAE,aAAa;gBAC7B,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gCAAgC,EAAE;gBAC/E,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE;gBAChE,IAAI,EAAE,QAAQ;aACf;SACF;QACD,KAAK,EAAE,WAAW;KACnB;CACF,CAAC;AAIF,MAAM,UAAU,eAAe,CAC7B,QAAgB,EAChB,IAAyC;IAEzC,MAAM,cAAc,GAAG,IAAI,EAAE,cAAc,CAAC;IAC5C,MAAM,YAAY,GAAG,IAAI,EAAE,YAAY,CAAC;IAExC,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,iBAAiB;YACpB,OAAO;gBACL,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE;oBACJ,KAAK,EAAE,IAAI,EAAE,KAAK;oBAClB,cAAc;oBACd,YAAY;oBACZ,MAAM,EAAE,QAAQ;oBAChB,IAAI,EAAE,IAAI,EAAE,IAAI;iBACjB;aACF,CAAC;QACJ,KAAK,gBAAgB;YACnB,OAAO;gBACL,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE;oBACJ,OAAO,EAAE,IAAI,EAAE,OAAO;oBACtB,cAAc;oBACd,YAAY;oBACZ,MAAM,EAAE,OAAO;iBAChB;aACF,CAAC;QACJ,KAAK,kBAAkB;YACrB,OAAO;gBACL,MAAM,EAAE,SAAS;gBACjB,IAAI,EAAE;oBACJ,KAAK,EACH,IAAI,EAAE,KAAK;wBACX,2DAA2D;oBAC7D,cAAc;oBACd,YAAY;oBACZ,MAAM,EAAE,SAAS;oBACjB,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,cAAc;iBACnC;aACF,CAAC;QACJ;YACE,OAAO;gBACL,MAAM,EAAG,IAAI,EAAE,MAAuB,IAAI,SAAS;gBACnD,IAAI,EAAE;oBACJ,KAAK,EAAE,IAAI,EAAE,KAAK;oBAClB,OAAO,EAAE,IAAI,EAAE,OAAO;oBACtB,cAAc;oBACd,YAAY;oBACZ,MAAM,EAAE,IAAI,EAAE,MAAM;oBACpB,IAAI,EAAE,IAAI,EAAE,IAAI;iBACjB;aACF,CAAC;IACN,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,20 +1,21 @@
1
1
  {
2
2
  "name": "@neuranix/mcp-server",
3
- "version": "1.2.0",
4
- "description": "Neuranix MCP Server — persistent cognitive memory for IDE AI agents (Cursor, VS Code, Claude Code, Windsurf)",
3
+ "version": "1.3.1",
4
+ "description": "Neuranix MCP Server — autonomous persistent memory for IDE AI agents (Cursor, VS Code, Claude Code, Windsurf)",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "bin": {
8
- "neuranix-mcp": "./dist/index.js"
8
+ "neuranix-mcp": "dist/index.js"
9
9
  },
10
10
  "files": [
11
11
  "dist",
12
12
  "README.md"
13
13
  ],
14
14
  "scripts": {
15
- "build": "tsc && node -e \"const fs=require('fs');const p='dist/index.js';let c=fs.readFileSync(p,'utf8');if(!c.startsWith('#!'))fs.writeFileSync(p,'#!/usr/bin/env node\\n'+c)\"",
15
+ "build": "tsc && node -e \"const fs=require('fs');['dist/index.js','dist/setup.js'].forEach(p=>{let c=fs.readFileSync(p,'utf8');if(!c.startsWith('#!'))fs.writeFileSync(p,'#!/usr/bin/env node\\n'+c)})\"",
16
16
  "prepublishOnly": "npm run build",
17
17
  "start": "node dist/index.js",
18
+ "setup": "node dist/setup.js",
18
19
  "dev": "tsx watch src/index.ts"
19
20
  },
20
21
  "dependencies": {
@@ -44,9 +45,10 @@
44
45
  "homepage": "https://neuranix.com.br",
45
46
  "repository": {
46
47
  "type": "git",
47
- "url": "https://github.com/neuranix/neuranix"
48
+ "url": "git+https://github.com/neuranix/neuranix.git"
48
49
  },
49
50
  "publishConfig": {
50
- "access": "public"
51
+ "access": "public",
52
+ "registry": "https://registry.npmjs.org/"
51
53
  }
52
54
  }