agentfootprint 2.0.1 → 2.2.0

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 (58) hide show
  1. package/AGENTS.md +61 -0
  2. package/CLAUDE.md +61 -0
  3. package/README.md +3 -2
  4. package/ai-instructions/claude-code/SKILL.md +61 -0
  5. package/ai-instructions/clinerules +41 -0
  6. package/ai-instructions/copilot-instructions.md +41 -0
  7. package/ai-instructions/cursor/agentfootprint.md +41 -0
  8. package/ai-instructions/kiro/agentfootprint.md +41 -0
  9. package/ai-instructions/windsurfrules +41 -0
  10. package/dist/core/Agent.js +31 -0
  11. package/dist/core/Agent.js.map +1 -1
  12. package/dist/esm/core/Agent.js +31 -0
  13. package/dist/esm/core/Agent.js.map +1 -1
  14. package/dist/esm/index.js +9 -0
  15. package/dist/esm/index.js.map +1 -1
  16. package/dist/esm/lib/mcp/index.js +8 -0
  17. package/dist/esm/lib/mcp/index.js.map +1 -0
  18. package/dist/esm/lib/mcp/mcpClient.js +171 -0
  19. package/dist/esm/lib/mcp/mcpClient.js.map +1 -0
  20. package/dist/esm/lib/mcp/types.js +24 -0
  21. package/dist/esm/lib/mcp/types.js.map +1 -0
  22. package/dist/esm/lib/rag/defineRAG.js +118 -0
  23. package/dist/esm/lib/rag/defineRAG.js.map +1 -0
  24. package/dist/esm/lib/rag/index.js +8 -0
  25. package/dist/esm/lib/rag/index.js.map +1 -0
  26. package/dist/esm/lib/rag/indexDocuments.js +73 -0
  27. package/dist/esm/lib/rag/indexDocuments.js.map +1 -0
  28. package/dist/index.js +13 -1
  29. package/dist/index.js.map +1 -1
  30. package/dist/lib/mcp/index.js +12 -0
  31. package/dist/lib/mcp/index.js.map +1 -0
  32. package/dist/lib/mcp/mcpClient.js +175 -0
  33. package/dist/lib/mcp/mcpClient.js.map +1 -0
  34. package/dist/lib/mcp/types.js +25 -0
  35. package/dist/lib/mcp/types.js.map +1 -0
  36. package/dist/lib/rag/defineRAG.js +122 -0
  37. package/dist/lib/rag/defineRAG.js.map +1 -0
  38. package/dist/lib/rag/index.js +13 -0
  39. package/dist/lib/rag/index.js.map +1 -0
  40. package/dist/lib/rag/indexDocuments.js +77 -0
  41. package/dist/lib/rag/indexDocuments.js.map +1 -0
  42. package/dist/types/core/Agent.d.ts +25 -0
  43. package/dist/types/core/Agent.d.ts.map +1 -1
  44. package/dist/types/index.d.ts +2 -0
  45. package/dist/types/index.d.ts.map +1 -1
  46. package/dist/types/lib/mcp/index.d.ts +9 -0
  47. package/dist/types/lib/mcp/index.d.ts.map +1 -0
  48. package/dist/types/lib/mcp/mcpClient.d.ts +64 -0
  49. package/dist/types/lib/mcp/mcpClient.d.ts.map +1 -0
  50. package/dist/types/lib/mcp/types.d.ts +132 -0
  51. package/dist/types/lib/mcp/types.d.ts.map +1 -0
  52. package/dist/types/lib/rag/defineRAG.d.ts +141 -0
  53. package/dist/types/lib/rag/defineRAG.d.ts.map +1 -0
  54. package/dist/types/lib/rag/index.d.ts +8 -0
  55. package/dist/types/lib/rag/index.d.ts.map +1 -0
  56. package/dist/types/lib/rag/indexDocuments.d.ts +77 -0
  57. package/dist/types/lib/rag/indexDocuments.d.ts.map +1 -0
  58. package/package.json +1 -1
package/AGENTS.md CHANGED
@@ -34,6 +34,65 @@ The flavors are how you *mark intent* — but they all reduce to one `Injection`
34
34
 
35
35
  ## Public API
36
36
 
37
+ ### MCP — `mcpClient` (connect to MCP servers, register their tools)
38
+
39
+ ```typescript
40
+ import { Agent, mcpClient } from 'agentfootprint';
41
+
42
+ const slack = await mcpClient({
43
+ name: 'slack',
44
+ transport: { transport: 'stdio', command: 'npx', args: ['@example/slack-mcp'] },
45
+ });
46
+
47
+ const agent = Agent.create({ provider })
48
+ .tools(await slack.tools()) // pull ALL tools from the server in one call
49
+ .build();
50
+
51
+ await agent.run({ message: '...' });
52
+ await slack.close();
53
+ ```
54
+
55
+ Transports: `stdio` (local subprocess), `http` (Streamable HTTP). The
56
+ `@modelcontextprotocol/sdk` peer-dep is lazy-required — zero runtime
57
+ cost when MCP isn't used. Friendly install hint if missing.
58
+
59
+ `agent.tools(arr)` is the bulk-register companion to `agent.tool(t)`.
60
+ Pair with `await client.tools()` to register everything an MCP server
61
+ exposes in one builder call. Tool-name uniqueness is still validated
62
+ at `.build()` across MCP servers + manual `.tool()` calls.
63
+
64
+ ### RAG — `defineRAG` (one factory, one helper)
65
+
66
+ ```typescript
67
+ import {
68
+ defineRAG, indexDocuments,
69
+ InMemoryStore, mockEmbedder,
70
+ } from 'agentfootprint';
71
+
72
+ const embedder = mockEmbedder();
73
+ const store = new InMemoryStore();
74
+
75
+ // Seed the corpus once at startup
76
+ await indexDocuments(store, embedder, [
77
+ { id: 'doc1', content: 'Refunds are processed within 3 business days.' },
78
+ { id: 'doc2', content: 'Pro plan costs $20/month.' },
79
+ ]);
80
+
81
+ // Define the retriever
82
+ const docs = defineRAG({
83
+ id: 'product-docs',
84
+ store, embedder,
85
+ topK: 3,
86
+ threshold: 0.7, // STRICT — no fallback when nothing matches
87
+ asRole: 'user', // chunks land as user-role context (RAG default)
88
+ });
89
+
90
+ // Wire to agent — `.rag()` is an alias for `.memory()`, same plumbing
91
+ agent.rag(docs);
92
+ ```
93
+
94
+ `defineRAG` is sugar over `defineMemory({ type: SEMANTIC, strategy: TOP_K })`. Same plumbing, different intent: RAG = document corpus retrieval; `defineMemory` = conversation/run-state memory.
95
+
37
96
  ### Agent (ReAct primitive)
38
97
 
39
98
  ```typescript
@@ -354,6 +413,8 @@ Recorders (auto-attached when relevant builder method is called):
354
413
  | Semantic recall via embeddings | `defineMemory({ type: SEMANTIC, strategy: TOP_K })` |
355
414
  | Cross-run "why?" replay | `defineMemory({ type: CAUSAL, strategy: TOP_K })` ⭐ |
356
415
  | Long conversation overflows context | `defineMemory({ type: EPISODIC, strategy: SUMMARIZE })` |
416
+ | Retrieve from a document corpus | `defineRAG({ store, embedder, topK, threshold })` |
417
+ | Use tools from an external MCP server | `mcpClient({ transport, ... })` + `agent.tools(await c.tools())` |
357
418
 
358
419
  ## Build & Test
359
420
 
package/CLAUDE.md CHANGED
@@ -34,6 +34,65 @@ The flavors are how you *mark intent* — but they all reduce to one `Injection`
34
34
 
35
35
  ## Public API
36
36
 
37
+ ### MCP — `mcpClient` (connect to MCP servers, register their tools)
38
+
39
+ ```typescript
40
+ import { Agent, mcpClient } from 'agentfootprint';
41
+
42
+ const slack = await mcpClient({
43
+ name: 'slack',
44
+ transport: { transport: 'stdio', command: 'npx', args: ['@example/slack-mcp'] },
45
+ });
46
+
47
+ const agent = Agent.create({ provider })
48
+ .tools(await slack.tools()) // pull ALL tools from the server in one call
49
+ .build();
50
+
51
+ await agent.run({ message: '...' });
52
+ await slack.close();
53
+ ```
54
+
55
+ Transports: `stdio` (local subprocess), `http` (Streamable HTTP). The
56
+ `@modelcontextprotocol/sdk` peer-dep is lazy-required — zero runtime
57
+ cost when MCP isn't used. Friendly install hint if missing.
58
+
59
+ `agent.tools(arr)` is the bulk-register companion to `agent.tool(t)`.
60
+ Pair with `await client.tools()` to register everything an MCP server
61
+ exposes in one builder call. Tool-name uniqueness is still validated
62
+ at `.build()` across MCP servers + manual `.tool()` calls.
63
+
64
+ ### RAG — `defineRAG` (one factory, one helper)
65
+
66
+ ```typescript
67
+ import {
68
+ defineRAG, indexDocuments,
69
+ InMemoryStore, mockEmbedder,
70
+ } from 'agentfootprint';
71
+
72
+ const embedder = mockEmbedder();
73
+ const store = new InMemoryStore();
74
+
75
+ // Seed the corpus once at startup
76
+ await indexDocuments(store, embedder, [
77
+ { id: 'doc1', content: 'Refunds are processed within 3 business days.' },
78
+ { id: 'doc2', content: 'Pro plan costs $20/month.' },
79
+ ]);
80
+
81
+ // Define the retriever
82
+ const docs = defineRAG({
83
+ id: 'product-docs',
84
+ store, embedder,
85
+ topK: 3,
86
+ threshold: 0.7, // STRICT — no fallback when nothing matches
87
+ asRole: 'user', // chunks land as user-role context (RAG default)
88
+ });
89
+
90
+ // Wire to agent — `.rag()` is an alias for `.memory()`, same plumbing
91
+ agent.rag(docs);
92
+ ```
93
+
94
+ `defineRAG` is sugar over `defineMemory({ type: SEMANTIC, strategy: TOP_K })`. Same plumbing, different intent: RAG = document corpus retrieval; `defineMemory` = conversation/run-state memory.
95
+
37
96
  ### Agent (ReAct primitive)
38
97
 
39
98
  ```typescript
@@ -354,6 +413,8 @@ Recorders (auto-attached when relevant builder method is called):
354
413
  | Semantic recall via embeddings | `defineMemory({ type: SEMANTIC, strategy: TOP_K })` |
355
414
  | Cross-run "why?" replay | `defineMemory({ type: CAUSAL, strategy: TOP_K })` ⭐ |
356
415
  | Long conversation overflows context | `defineMemory({ type: EPISODIC, strategy: SUMMARIZE })` |
416
+ | Retrieve from a document corpus | `defineRAG({ store, embedder, topK, threshold })` |
417
+ | Use tools from an external MCP server | `mcpClient({ transport, ... })` + `agent.tools(await c.tools())` |
357
418
 
358
419
  ## Build & Test
359
420
 
package/README.md CHANGED
@@ -150,7 +150,7 @@ Skill = Injection { trigger: 'llm-activated', slots: [system-prompt, too
150
150
  Steering = Injection { trigger: 'always-on', slots: [system-prompt] }
151
151
  Instruction = Injection { trigger: 'rule', slots: [system-prompt | messages] }
152
152
  Fact = Injection { trigger: 'always-on', slots: [system-prompt | messages] }
153
- RAG = Injection { trigger: 'rule + score', slots: [messages] } (v2.1)
153
+ RAG = Injection { trigger: 'rule + score', slots: [messages] } (v2.1)
154
154
  Guardrail = Injection { trigger: 'on-tool-return',slots: [system-prompt] } (v2.x)
155
155
  ??? = Injection { trigger: ?, slots: ? } (your idea)
156
156
  ```
@@ -291,7 +291,8 @@ The same snapshot data shape becomes RL/SFT/DPO training data in v2.1+.
291
291
 
292
292
  | Release | Focus |
293
293
  |---|---|
294
- | v2.1 | RAG flavor (`defineRAG`) · Redis memory store adapter · MCP integration · CircuitBreaker as a first-class primitive · 3-tier structured-output fallback |
294
+ | ~~v2.1~~ | RAG flavor (`defineRAG`) shipped in 2.1.0 |
295
+ | v2.2 | MCP integration (`mcpClient`) ✓ · Redis memory store adapter · CircuitBreaker primitive · 3-tier structured-output fallback |
295
296
  | v2.2 | Governance subsystem (`Policy`, `BudgetTracker`, role-based access) · DynamoDB / Postgres / Pinecone store adapters |
296
297
  | v2.3 | Causal training-data exports — `causalMemory.exportForTraining({ format: 'sft' \| 'dpo' \| 'process' })` for HuggingFace / OpenAI / Anthropic batch fine-tune |
297
298
  | v2.4+ | Deep Agents (planning-before-execution) · A2A protocol · Lens UI deep-link |
@@ -210,6 +210,67 @@ The 7 **strategies**:
210
210
  - `TOP_K` (score-threshold) · `EXTRACT` (LLM distills on write)
211
211
  - `DECAY` (recency-weighted, planned) · `HYBRID` (compose multiple)
212
212
 
213
+ ## MCP — `mcpClient` (connect to external MCP servers)
214
+
215
+ ```typescript
216
+ import { Agent, mcpClient } from 'agentfootprint';
217
+
218
+ const slack = await mcpClient({
219
+ name: 'slack',
220
+ transport: { transport: 'stdio', command: 'npx', args: ['@example/slack-mcp'] },
221
+ });
222
+
223
+ const agent = Agent.create({ provider })
224
+ .tools(await slack.tools()) // pull ALL tools from server in one call
225
+ .build();
226
+
227
+ await agent.run({ message: '...' });
228
+ await slack.close();
229
+ ```
230
+
231
+ Transports:
232
+ - `{ transport: 'stdio', command, args, env?, cwd? }` — local subprocess
233
+ - `{ transport: 'http', url, headers? }` — remote Streamable HTTP
234
+
235
+ The `@modelcontextprotocol/sdk` peer-dep is **lazy-required** — zero
236
+ runtime cost when MCP isn't used. Friendly install hint if missing.
237
+
238
+ `agent.tools(arr)` is the bulk-register companion to `agent.tool(t)`.
239
+ Tool-name uniqueness is validated at `.build()` across MCP servers +
240
+ manual `.tool()` calls — duplicates throw early.
241
+
242
+ Server-side support (exposing your agent as an MCP tool to other LLMs)
243
+ is a separate concern, not yet shipped.
244
+
245
+ ## RAG — `defineRAG` + `indexDocuments`
246
+
247
+ ```typescript
248
+ import { defineRAG, indexDocuments, InMemoryStore, mockEmbedder } from 'agentfootprint';
249
+
250
+ const store = new InMemoryStore();
251
+ const embedder = mockEmbedder();
252
+
253
+ // Seed corpus once at startup
254
+ await indexDocuments(store, embedder, [
255
+ { id: 'doc1', content: 'Refunds processed in 3 business days.' },
256
+ { id: 'doc2', content: 'Pro plan: $20/month.' },
257
+ ]);
258
+
259
+ // Define retriever
260
+ const docs = defineRAG({
261
+ id: 'product-docs',
262
+ store, embedder,
263
+ topK: 3,
264
+ threshold: 0.7, // STRICT — no fallback when nothing matches
265
+ asRole: 'user', // chunks land as user-role context
266
+ });
267
+
268
+ // Wire — `.rag()` is alias for `.memory()`, same plumbing
269
+ agent.rag(docs);
270
+ ```
271
+
272
+ `defineRAG` is sugar over `defineMemory({ type: SEMANTIC, strategy: TOP_K })` with RAG-friendly defaults. Distinction is intent: RAG = document corpus retrieval; `defineMemory` = conversation/run-state memory.
273
+
213
274
  ## Multi-agent via control flow
214
275
 
215
276
  There is **no** `MultiAgentSystem` class. Multi-agent = compositions of single Agents through the same control flow that connects any flowchart stages:
@@ -115,6 +115,47 @@ await agent.run({
115
115
  Types: `EPISODIC` · `SEMANTIC` · `NARRATIVE` · `CAUSAL` (snapshot replay ⭐).
116
116
  Strategies: `WINDOW` · `BUDGET` · `SUMMARIZE` · `TOP_K` · `EXTRACT` · `DECAY` · `HYBRID`.
117
117
 
118
+ ### MCP (Model Context Protocol — connect to external MCP servers)
119
+
120
+ ```typescript
121
+ import { Agent, mcpClient } from 'agentfootprint';
122
+
123
+ const slack = await mcpClient({
124
+ name: 'slack',
125
+ transport: { transport: 'stdio', command: 'npx', args: ['@example/slack-mcp'] },
126
+ });
127
+
128
+ const agent = Agent.create({ provider })
129
+ .tools(await slack.tools()) // bulk-register all server tools
130
+ .build();
131
+
132
+ await slack.close();
133
+ ```
134
+
135
+ Transports: `stdio` (local subprocess), `http` (Streamable HTTP). The
136
+ `@modelcontextprotocol/sdk` peer-dep is lazy-required — install it
137
+ when you actually use MCP, not before. `agent.tools(arr)` is the
138
+ bulk-register companion to `agent.tool(t)`.
139
+
140
+ ### RAG (retrieval-augmented generation)
141
+
142
+ ```typescript
143
+ import { defineRAG, indexDocuments } from 'agentfootprint';
144
+
145
+ const store = new InMemoryStore();
146
+ const embedder = mockEmbedder();
147
+
148
+ await indexDocuments(store, embedder, [
149
+ { id: 'doc1', content: 'Refunds processed in 3 business days.' },
150
+ { id: 'doc2', content: 'Pro plan: $20/month.' },
151
+ ]);
152
+
153
+ const docs = defineRAG({ id: 'docs', store, embedder, topK: 3, threshold: 0.7 });
154
+ agent.rag(docs); // alias for .memory(), same plumbing
155
+ ```
156
+
157
+ `defineRAG` is sugar over `defineMemory({ type: SEMANTIC, strategy: TOP_K })` with RAG-friendly defaults (asRole='user', topK=3, threshold=0.7). Same engine, clearer intent.
158
+
118
159
  ### Multi-agent via control flow (no `MultiAgentSystem` class)
119
160
 
120
161
  ```typescript
@@ -115,6 +115,47 @@ await agent.run({
115
115
  Types: `EPISODIC` · `SEMANTIC` · `NARRATIVE` · `CAUSAL` (snapshot replay ⭐).
116
116
  Strategies: `WINDOW` · `BUDGET` · `SUMMARIZE` · `TOP_K` · `EXTRACT` · `DECAY` · `HYBRID`.
117
117
 
118
+ ### MCP (Model Context Protocol — connect to external MCP servers)
119
+
120
+ ```typescript
121
+ import { Agent, mcpClient } from 'agentfootprint';
122
+
123
+ const slack = await mcpClient({
124
+ name: 'slack',
125
+ transport: { transport: 'stdio', command: 'npx', args: ['@example/slack-mcp'] },
126
+ });
127
+
128
+ const agent = Agent.create({ provider })
129
+ .tools(await slack.tools()) // bulk-register all server tools
130
+ .build();
131
+
132
+ await slack.close();
133
+ ```
134
+
135
+ Transports: `stdio` (local subprocess), `http` (Streamable HTTP). The
136
+ `@modelcontextprotocol/sdk` peer-dep is lazy-required — install it
137
+ when you actually use MCP, not before. `agent.tools(arr)` is the
138
+ bulk-register companion to `agent.tool(t)`.
139
+
140
+ ### RAG (retrieval-augmented generation)
141
+
142
+ ```typescript
143
+ import { defineRAG, indexDocuments } from 'agentfootprint';
144
+
145
+ const store = new InMemoryStore();
146
+ const embedder = mockEmbedder();
147
+
148
+ await indexDocuments(store, embedder, [
149
+ { id: 'doc1', content: 'Refunds processed in 3 business days.' },
150
+ { id: 'doc2', content: 'Pro plan: $20/month.' },
151
+ ]);
152
+
153
+ const docs = defineRAG({ id: 'docs', store, embedder, topK: 3, threshold: 0.7 });
154
+ agent.rag(docs); // alias for .memory(), same plumbing
155
+ ```
156
+
157
+ `defineRAG` is sugar over `defineMemory({ type: SEMANTIC, strategy: TOP_K })` with RAG-friendly defaults (asRole='user', topK=3, threshold=0.7). Same engine, clearer intent.
158
+
118
159
  ### Multi-agent via control flow (no `MultiAgentSystem` class)
119
160
 
120
161
  ```typescript
@@ -115,6 +115,47 @@ await agent.run({
115
115
  Types: `EPISODIC` · `SEMANTIC` · `NARRATIVE` · `CAUSAL` (snapshot replay ⭐).
116
116
  Strategies: `WINDOW` · `BUDGET` · `SUMMARIZE` · `TOP_K` · `EXTRACT` · `DECAY` · `HYBRID`.
117
117
 
118
+ ### MCP (Model Context Protocol — connect to external MCP servers)
119
+
120
+ ```typescript
121
+ import { Agent, mcpClient } from 'agentfootprint';
122
+
123
+ const slack = await mcpClient({
124
+ name: 'slack',
125
+ transport: { transport: 'stdio', command: 'npx', args: ['@example/slack-mcp'] },
126
+ });
127
+
128
+ const agent = Agent.create({ provider })
129
+ .tools(await slack.tools()) // bulk-register all server tools
130
+ .build();
131
+
132
+ await slack.close();
133
+ ```
134
+
135
+ Transports: `stdio` (local subprocess), `http` (Streamable HTTP). The
136
+ `@modelcontextprotocol/sdk` peer-dep is lazy-required — install it
137
+ when you actually use MCP, not before. `agent.tools(arr)` is the
138
+ bulk-register companion to `agent.tool(t)`.
139
+
140
+ ### RAG (retrieval-augmented generation)
141
+
142
+ ```typescript
143
+ import { defineRAG, indexDocuments } from 'agentfootprint';
144
+
145
+ const store = new InMemoryStore();
146
+ const embedder = mockEmbedder();
147
+
148
+ await indexDocuments(store, embedder, [
149
+ { id: 'doc1', content: 'Refunds processed in 3 business days.' },
150
+ { id: 'doc2', content: 'Pro plan: $20/month.' },
151
+ ]);
152
+
153
+ const docs = defineRAG({ id: 'docs', store, embedder, topK: 3, threshold: 0.7 });
154
+ agent.rag(docs); // alias for .memory(), same plumbing
155
+ ```
156
+
157
+ `defineRAG` is sugar over `defineMemory({ type: SEMANTIC, strategy: TOP_K })` with RAG-friendly defaults (asRole='user', topK=3, threshold=0.7). Same engine, clearer intent.
158
+
118
159
  ### Multi-agent via control flow (no `MultiAgentSystem` class)
119
160
 
120
161
  ```typescript
@@ -115,6 +115,47 @@ await agent.run({
115
115
  Types: `EPISODIC` · `SEMANTIC` · `NARRATIVE` · `CAUSAL` (snapshot replay ⭐).
116
116
  Strategies: `WINDOW` · `BUDGET` · `SUMMARIZE` · `TOP_K` · `EXTRACT` · `DECAY` · `HYBRID`.
117
117
 
118
+ ### MCP (Model Context Protocol — connect to external MCP servers)
119
+
120
+ ```typescript
121
+ import { Agent, mcpClient } from 'agentfootprint';
122
+
123
+ const slack = await mcpClient({
124
+ name: 'slack',
125
+ transport: { transport: 'stdio', command: 'npx', args: ['@example/slack-mcp'] },
126
+ });
127
+
128
+ const agent = Agent.create({ provider })
129
+ .tools(await slack.tools()) // bulk-register all server tools
130
+ .build();
131
+
132
+ await slack.close();
133
+ ```
134
+
135
+ Transports: `stdio` (local subprocess), `http` (Streamable HTTP). The
136
+ `@modelcontextprotocol/sdk` peer-dep is lazy-required — install it
137
+ when you actually use MCP, not before. `agent.tools(arr)` is the
138
+ bulk-register companion to `agent.tool(t)`.
139
+
140
+ ### RAG (retrieval-augmented generation)
141
+
142
+ ```typescript
143
+ import { defineRAG, indexDocuments } from 'agentfootprint';
144
+
145
+ const store = new InMemoryStore();
146
+ const embedder = mockEmbedder();
147
+
148
+ await indexDocuments(store, embedder, [
149
+ { id: 'doc1', content: 'Refunds processed in 3 business days.' },
150
+ { id: 'doc2', content: 'Pro plan: $20/month.' },
151
+ ]);
152
+
153
+ const docs = defineRAG({ id: 'docs', store, embedder, topK: 3, threshold: 0.7 });
154
+ agent.rag(docs); // alias for .memory(), same plumbing
155
+ ```
156
+
157
+ `defineRAG` is sugar over `defineMemory({ type: SEMANTIC, strategy: TOP_K })` with RAG-friendly defaults (asRole='user', topK=3, threshold=0.7). Same engine, clearer intent.
158
+
118
159
  ### Multi-agent via control flow (no `MultiAgentSystem` class)
119
160
 
120
161
  ```typescript
@@ -115,6 +115,47 @@ await agent.run({
115
115
  Types: `EPISODIC` · `SEMANTIC` · `NARRATIVE` · `CAUSAL` (snapshot replay ⭐).
116
116
  Strategies: `WINDOW` · `BUDGET` · `SUMMARIZE` · `TOP_K` · `EXTRACT` · `DECAY` · `HYBRID`.
117
117
 
118
+ ### MCP (Model Context Protocol — connect to external MCP servers)
119
+
120
+ ```typescript
121
+ import { Agent, mcpClient } from 'agentfootprint';
122
+
123
+ const slack = await mcpClient({
124
+ name: 'slack',
125
+ transport: { transport: 'stdio', command: 'npx', args: ['@example/slack-mcp'] },
126
+ });
127
+
128
+ const agent = Agent.create({ provider })
129
+ .tools(await slack.tools()) // bulk-register all server tools
130
+ .build();
131
+
132
+ await slack.close();
133
+ ```
134
+
135
+ Transports: `stdio` (local subprocess), `http` (Streamable HTTP). The
136
+ `@modelcontextprotocol/sdk` peer-dep is lazy-required — install it
137
+ when you actually use MCP, not before. `agent.tools(arr)` is the
138
+ bulk-register companion to `agent.tool(t)`.
139
+
140
+ ### RAG (retrieval-augmented generation)
141
+
142
+ ```typescript
143
+ import { defineRAG, indexDocuments } from 'agentfootprint';
144
+
145
+ const store = new InMemoryStore();
146
+ const embedder = mockEmbedder();
147
+
148
+ await indexDocuments(store, embedder, [
149
+ { id: 'doc1', content: 'Refunds processed in 3 business days.' },
150
+ { id: 'doc2', content: 'Pro plan: $20/month.' },
151
+ ]);
152
+
153
+ const docs = defineRAG({ id: 'docs', store, embedder, topK: 3, threshold: 0.7 });
154
+ agent.rag(docs); // alias for .memory(), same plumbing
155
+ ```
156
+
157
+ `defineRAG` is sugar over `defineMemory({ type: SEMANTIC, strategy: TOP_K })` with RAG-friendly defaults (asRole='user', topK=3, threshold=0.7). Same engine, clearer intent.
158
+
118
159
  ### Multi-agent via control flow (no `MultiAgentSystem` class)
119
160
 
120
161
  ```typescript
@@ -774,6 +774,17 @@ class AgentBuilder {
774
774
  this.registry.push({ name, tool: tool });
775
775
  return this;
776
776
  }
777
+ /**
778
+ * Register many tools at once. Convenience for tool sources that
779
+ * return a list (e.g., `await mcpClient(...).tools()`). Each tool
780
+ * is registered via `.tool()` so duplicate-name validation still
781
+ * fires per-entry.
782
+ */
783
+ tools(tools) {
784
+ for (const t of tools)
785
+ this.tool(t);
786
+ return this;
787
+ }
777
788
  /**
778
789
  * Set the agent's display name — substituted as `{{appName}}` in
779
790
  * commentary + thinking templates. Same place to brand a tenant
@@ -889,6 +900,26 @@ class AgentBuilder {
889
900
  this.memoryList.push(definition);
890
901
  return this;
891
902
  }
903
+ /**
904
+ * Register a RAG retriever — semantic search over a vector-indexed
905
+ * corpus. Identical plumbing to `.memory()` (RAG resolves to a
906
+ * `MemoryDefinition` produced by `defineRAG()`); this alias exists
907
+ * so the consumer's intent reads clearly:
908
+ *
909
+ * ```ts
910
+ * agent
911
+ * .memory(shortTermConversation) // remembers what the USER said
912
+ * .rag(productDocs) // retrieves what the CORPUS says
913
+ * .build();
914
+ * ```
915
+ *
916
+ * Both end up as memory subflows, but the alias separates "user
917
+ * conversation memory" from "document corpus retrieval" in code
918
+ * intent, ids, and Lens chips.
919
+ */
920
+ rag(definition) {
921
+ return this.memory(definition);
922
+ }
892
923
  build() {
893
924
  // Resolve the voice config: bundled defaults + consumer overrides.
894
925
  // Templates flow through the same barrel exports the rest of the
@@ -1 +1 @@
1
- {"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/core/Agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/core/Agent.ts"],"names":[],"mappings":"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"}