@framers/agentos 0.1.59 → 0.1.61
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 +152 -212
- package/dist/memory/config.d.ts.map +1 -1
- package/dist/memory/config.js +2 -1
- package/dist/memory/config.js.map +1 -1
- package/dist/memory/index.d.ts +4 -0
- package/dist/memory/index.d.ts.map +1 -1
- package/dist/memory/index.js +4 -0
- package/dist/memory/index.js.map +1 -1
- package/dist/memory/prompt/MemoryPromptAssembler.d.ts +2 -0
- package/dist/memory/prompt/MemoryPromptAssembler.d.ts.map +1 -1
- package/dist/memory/prompt/MemoryPromptAssembler.js +11 -0
- package/dist/memory/prompt/MemoryPromptAssembler.js.map +1 -1
- package/dist/memory/types.d.ts +1 -0
- package/dist/memory/types.d.ts.map +1 -1
- package/dist/memory/working/MarkdownWorkingMemory.d.ts +29 -0
- package/dist/memory/working/MarkdownWorkingMemory.d.ts.map +1 -0
- package/dist/memory/working/MarkdownWorkingMemory.js +80 -0
- package/dist/memory/working/MarkdownWorkingMemory.js.map +1 -0
- package/dist/memory/working/ReadWorkingMemoryTool.d.ts +26 -0
- package/dist/memory/working/ReadWorkingMemoryTool.d.ts.map +1 -0
- package/dist/memory/working/ReadWorkingMemoryTool.js +31 -0
- package/dist/memory/working/ReadWorkingMemoryTool.js.map +1 -0
- package/dist/memory/working/UpdateWorkingMemoryTool.d.ts +28 -0
- package/dist/memory/working/UpdateWorkingMemoryTool.d.ts.map +1 -0
- package/dist/memory/working/UpdateWorkingMemoryTool.js +40 -0
- package/dist/memory/working/UpdateWorkingMemoryTool.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -170,112 +170,84 @@ for await (const chunk of agent.processRequest({
|
|
|
170
170
|
|
|
171
171
|
### Architecture Diagram
|
|
172
172
|
|
|
173
|
-
```
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
| | | | | |
|
|
213
|
-
| | | v v |
|
|
214
|
-
| | | +-----------+ +-----------+ |
|
|
215
|
-
| | | | Embedding | | ReAct | |
|
|
216
|
-
| | | | Manager | | Reasoner | |
|
|
217
|
-
| | | +-----------+ +-----------+ |
|
|
218
|
-
| | | | |
|
|
219
|
-
| v v v |
|
|
220
|
-
| +=========================================================+ |
|
|
221
|
-
| | LLM Provider Manager | |
|
|
222
|
-
| | | |
|
|
223
|
-
| | +--------+ +----------+ +-------+ +--------+ +------+ | |
|
|
224
|
-
| | | OpenAI | |Anthropic | | Azure | | Ollama | |OpenR.| | |
|
|
225
|
-
| | +--------+ +----------+ +-------+ +--------+ +------+ | |
|
|
226
|
-
| +=========================================================+ |
|
|
227
|
-
| |
|
|
228
|
-
| +---------+ +----------+ +----------+ +-----------+ |
|
|
229
|
-
| |Guardrail| | Circuit | | Cost | | Stuck | |
|
|
230
|
-
| | Service | | Breaker | | Guard | | Detector | |
|
|
231
|
-
| +---------+ +----------+ +----------+ +-----------+ |
|
|
232
|
-
| |
|
|
233
|
-
| +-------------------+ +-------------------+ +----------------+ |
|
|
234
|
-
| | Extension Manager | | Channel Router | | Call Manager | |
|
|
235
|
-
| | (12+ kinds) | | (40 platforms) | | (Voice/Tel.) | |
|
|
236
|
-
| +-------------------+ +-------------------+ +----------------+ |
|
|
237
|
-
| |
|
|
238
|
-
| +-------------------+ +-------------------+ +----------------+ |
|
|
239
|
-
| | Observability | | HITL Manager | | Skill Registry | |
|
|
240
|
-
| | (OpenTelemetry) | | (Approval/Escal.) | | (SKILL.md) | |
|
|
241
|
-
| +-------------------+ +-------------------+ +----------------+ |
|
|
242
|
-
| |
|
|
243
|
-
+====================================================================+
|
|
173
|
+
```mermaid
|
|
174
|
+
graph TB
|
|
175
|
+
subgraph Runtime["AgentOS Runtime"]
|
|
176
|
+
API["AgentOS API<br/><i>Service Facade</i>"] --> Orch["AgentOSOrchestrator<br/><i>Delegation Hub</i>"]
|
|
177
|
+
API --> Stream["StreamingManager<br/><i>Async Gen Mgmt</i>"]
|
|
178
|
+
Orch --> Prompt["PromptEngine<br/><i>Dynamic Prompts</i>"]
|
|
179
|
+
|
|
180
|
+
subgraph GMI["GMI Manager — Generalized Modular Intelligence"]
|
|
181
|
+
WM["Working<br/>Memory"] ~~~ CM["Context<br/>Manager"] ~~~ PO["Persona<br/>Overlay"] ~~~ LM["Learning<br/>Module"]
|
|
182
|
+
EM["Episodic<br/>Memory"] ~~~ SM["Semantic<br/>Memory"] ~~~ PM["Procedural<br/>Memory"]
|
|
183
|
+
end
|
|
184
|
+
|
|
185
|
+
Stream --> GMI
|
|
186
|
+
Prompt --> GMI
|
|
187
|
+
|
|
188
|
+
GMI --> Tools["Tool<br/>Orchestrator"]
|
|
189
|
+
GMI --> RAG["RAG<br/>Memory"]
|
|
190
|
+
GMI --> Plan["Planning<br/>Engine"]
|
|
191
|
+
GMI --> WF["Workflow<br/>Engine"]
|
|
192
|
+
|
|
193
|
+
RAG --> Embed["Embedding<br/>Manager"]
|
|
194
|
+
Plan --> ReAct["ReAct<br/>Reasoner"]
|
|
195
|
+
|
|
196
|
+
subgraph LLM["LLM Provider Manager"]
|
|
197
|
+
OAI["OpenAI"] ~~~ Anth["Anthropic"] ~~~ Az["Azure"] ~~~ Oll["Ollama"] ~~~ OR["OpenRouter"]
|
|
198
|
+
end
|
|
199
|
+
|
|
200
|
+
Tools --> LLM
|
|
201
|
+
Embed --> LLM
|
|
202
|
+
ReAct --> LLM
|
|
203
|
+
|
|
204
|
+
Guard["Guardrail<br/>Service"] ~~~ CB["Circuit<br/>Breaker"] ~~~ CG["Cost<br/>Guard"] ~~~ SD["Stuck<br/>Detector"]
|
|
205
|
+
Ext["Extension Manager<br/><i>12+ kinds</i>"] ~~~ Chan["Channel Router<br/><i>37 platforms</i>"] ~~~ Call["Call Manager<br/><i>Voice/Tel.</i>"]
|
|
206
|
+
Obs["Observability<br/><i>OpenTelemetry</i>"] ~~~ HITL["HITL Manager<br/><i>Approval/Escal.</i>"] ~~~ Skill["Skill Registry<br/><i>SKILL.md</i>"]
|
|
207
|
+
end
|
|
208
|
+
|
|
209
|
+
style Runtime fill:#0e0e18,stroke:#c9a227,stroke-width:2px,color:#f2f2fa
|
|
210
|
+
style GMI fill:#151520,stroke:#00f5ff,stroke-width:1px,color:#f2f2fa
|
|
211
|
+
style LLM fill:#151520,stroke:#8b5cf6,stroke-width:1px,color:#f2f2fa
|
|
244
212
|
```
|
|
245
213
|
|
|
246
214
|
### Request Lifecycle
|
|
247
215
|
|
|
248
216
|
A single `processRequest()` call flows through these stages:
|
|
249
217
|
|
|
250
|
-
```
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
[1
|
|
255
|
-
|
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
[
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
|
268
|
-
|
|
269
|
-
[
|
|
270
|
-
|
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
218
|
+
```mermaid
|
|
219
|
+
flowchart TD
|
|
220
|
+
Input["User Input<br/><code>AgentOSInput</code>"] --> G1
|
|
221
|
+
|
|
222
|
+
G1["1 · Input Guardrails<br/><i>evaluateInput()</i>"]
|
|
223
|
+
G1 -->|ALLOW| Ctx
|
|
224
|
+
G1 -.->|BLOCK / SANITIZE| Reject1["⛔ Rejected"]
|
|
225
|
+
|
|
226
|
+
Ctx["2 · Context Assembly<br/><i>ConversationManager + RAG</i>"] --> Prompt
|
|
227
|
+
Prompt["3 · Prompt Construction<br/><i>PromptEngine</i>"] --> GMI
|
|
228
|
+
GMI["4 · GMI Processing<br/><i>Working memory · Persona · Adaptation</i>"] --> LLM
|
|
229
|
+
|
|
230
|
+
LLM["5 · LLM Call<br/><i>Provider Manager + Circuit Breaker</i>"] --> ToolCheck
|
|
231
|
+
|
|
232
|
+
ToolCheck{"Tool call?"}
|
|
233
|
+
ToolCheck -->|Yes| ToolExec["6 · Tool Execution<br/><i>ToolOrchestrator + Permission Guard</i>"]
|
|
234
|
+
ToolExec -->|Loop| LLM
|
|
235
|
+
ToolCheck -->|No| G2
|
|
236
|
+
|
|
237
|
+
G2["7 · Output Guardrails<br/><i>evaluateOutput()</i>"]
|
|
238
|
+
G2 -->|ALLOW| Stream
|
|
239
|
+
G2 -.->|BLOCK / SANITIZE| Reject2["⛔ Rejected"]
|
|
240
|
+
|
|
241
|
+
Stream["8 · Streaming Response<br/><i>AsyncGenerator yields chunks</i>"] --> Post
|
|
242
|
+
Post["9 · Post-Processing<br/><i>Memory · Cost · Telemetry</i>"]
|
|
243
|
+
|
|
244
|
+
style Input fill:#1c1c28,stroke:#c9a227,color:#f2f2fa
|
|
245
|
+
style G1 fill:#1c1c28,stroke:#ef4444,color:#f2f2fa
|
|
246
|
+
style G2 fill:#1c1c28,stroke:#ef4444,color:#f2f2fa
|
|
247
|
+
style LLM fill:#1c1c28,stroke:#8b5cf6,color:#f2f2fa
|
|
248
|
+
style ToolCheck fill:#1c1c28,stroke:#00f5ff,color:#f2f2fa
|
|
249
|
+
style ToolExec fill:#1c1c28,stroke:#00f5ff,color:#f2f2fa
|
|
250
|
+
style Post fill:#1c1c28,stroke:#10b981,color:#f2f2fa
|
|
279
251
|
```
|
|
280
252
|
|
|
281
253
|
### Layer Breakdown
|
|
@@ -335,31 +307,19 @@ enum AgentOSResponseChunkType {
|
|
|
335
307
|
|
|
336
308
|
The Generalized Modular Intelligence (GMI) is the core agent instance -- the "brain" of each agent. A single AgentOS runtime can manage multiple GMI instances via `GMIManager`.
|
|
337
309
|
|
|
338
|
-
```
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
| | (Current session | | (Learning rate, style | |
|
|
352
|
-
| | state, tool ctx) | | drift, tone adaptation) | |
|
|
353
|
-
| +-------------------+ +----------------------------+ |
|
|
354
|
-
| |
|
|
355
|
-
| +-----------------------------------------------------------+ |
|
|
356
|
-
| | Multi-Layer Memory | |
|
|
357
|
-
| | +----------+ +----------+ +-----------+ +-----------+ | |
|
|
358
|
-
| | | Episodic | | Semantic | | Procedural| | Long-Term | | |
|
|
359
|
-
| | | (Events) | | (Facts) | | (Skills) | | (Archive) | | |
|
|
360
|
-
| | +----------+ +----------+ +-----------+ +-----------+ | |
|
|
361
|
-
| +-----------------------------------------------------------+ |
|
|
362
|
-
+================================================================+
|
|
310
|
+
```mermaid
|
|
311
|
+
graph TB
|
|
312
|
+
subgraph GMI["GMI Instance"]
|
|
313
|
+
PO["PersonaOverlay Manager<br/><i>Personality switching</i>"] ~~~ CTX["Context Manager<br/><i>Dynamic prompts · User context · Session</i>"]
|
|
314
|
+
WM["Working Memory<br/><i>Current session state · Tool context</i>"] ~~~ AM["Adaptation Manager<br/><i>Learning rate · Style drift · Tone</i>"]
|
|
315
|
+
subgraph Mem["Multi-Layer Memory"]
|
|
316
|
+
Ep["Episodic<br/><i>Events</i>"] ~~~ Sem["Semantic<br/><i>Facts</i>"] ~~~ Proc["Procedural<br/><i>Skills</i>"] ~~~ LT["Long-Term<br/><i>Archive</i>"]
|
|
317
|
+
end
|
|
318
|
+
PO --> Mem
|
|
319
|
+
WM --> Mem
|
|
320
|
+
end
|
|
321
|
+
style GMI fill:#0e0e18,stroke:#c9a227,stroke-width:2px,color:#f2f2fa
|
|
322
|
+
style Mem fill:#151520,stroke:#00f5ff,stroke-width:1px,color:#f2f2fa
|
|
363
323
|
```
|
|
364
324
|
|
|
365
325
|
**Key components:**
|
|
@@ -386,22 +346,14 @@ The Generalized Modular Intelligence (GMI) is the core agent instance -- the "br
|
|
|
386
346
|
|
|
387
347
|
The LLM layer abstracts multiple AI model providers behind a unified interface.
|
|
388
348
|
|
|
389
|
-
```
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
| OpenAI | | Ollama | | OpenRouter| | (Custom) |
|
|
398
|
-
| Provider | | Provider | | Provider | | Provider |
|
|
399
|
-
+----------+ +----------+ +----------+ +----------+
|
|
400
|
-
| | |
|
|
401
|
-
v v v
|
|
402
|
-
gpt-4o llama3.2 claude-3.5
|
|
403
|
-
gpt-4o-mini mistral gemini-pro
|
|
404
|
-
o1-preview codellama command-r+
|
|
349
|
+
```mermaid
|
|
350
|
+
graph TD
|
|
351
|
+
PM["AIModelProviderManager<br/><i>Provider registry · Routing · Fallback · Model switching</i>"]
|
|
352
|
+
PM --> OAI["OpenAI Provider<br/><code>gpt-4o · gpt-4o-mini · o1</code>"]
|
|
353
|
+
PM --> Oll["Ollama Provider<br/><code>llama3.2 · mistral · codellama</code>"]
|
|
354
|
+
PM --> OR["OpenRouter Provider<br/><code>claude-3.5 · gemini-pro · command-r+</code>"]
|
|
355
|
+
PM --> Custom["Custom Provider<br/><i>IProvider interface</i>"]
|
|
356
|
+
style PM fill:#1c1c28,stroke:#8b5cf6,color:#f2f2fa
|
|
405
357
|
```
|
|
406
358
|
|
|
407
359
|
**Provider implementations:**
|
|
@@ -442,19 +394,13 @@ for await (const chunk of agent.processRequest({
|
|
|
442
394
|
|
|
443
395
|
Tools are the primary mechanism for agents to interact with the outside world. Every tool implements the `ITool` interface.
|
|
444
396
|
|
|
445
|
-
```
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
+---------------+ +---------------+ +-------------------+
|
|
453
|
-
| ToolExecutor | | ToolPermission| | ToolExecution |
|
|
454
|
-
| (Validation, | | Manager | | Guard |
|
|
455
|
-
| invocation, | | (RBAC, per- | | (Timeout 30s, |
|
|
456
|
-
| result wrap) | | user access) | | circuit breaker) |
|
|
457
|
-
+---------------+ +---------------+ +-------------------+
|
|
397
|
+
```mermaid
|
|
398
|
+
graph TD
|
|
399
|
+
TO["ToolOrchestrator<br/><i>Discovery · Selection · Validation · Execution</i>"]
|
|
400
|
+
TO --> TE["ToolExecutor<br/><i>Validation · Invocation · Result wrap</i>"]
|
|
401
|
+
TO --> TP["ToolPermission Manager<br/><i>RBAC · Per-user access</i>"]
|
|
402
|
+
TO --> TG["ToolExecution Guard<br/><i>Timeout 30s · Circuit breaker</i>"]
|
|
403
|
+
style TO fill:#1c1c28,stroke:#00f5ff,color:#f2f2fa
|
|
458
404
|
```
|
|
459
405
|
|
|
460
406
|
**ITool interface (abbreviated):**
|
|
@@ -595,20 +541,15 @@ type ExtensionPackResolver =
|
|
|
595
541
|
|
|
596
542
|
The planning engine enables multi-step task decomposition and execution using ReAct (Reasoning + Acting) patterns.
|
|
597
543
|
|
|
598
|
-
```
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
| |
|
|
608
|
-
| createPlan(goal, context) -> Plan |
|
|
609
|
-
| executePlan(plan) -> AsyncGenerator<PlanStepResult> |
|
|
610
|
-
| revisePlan(plan, feedback) -> Plan |
|
|
611
|
-
+-----------------------------------------------------------+
|
|
544
|
+
```mermaid
|
|
545
|
+
graph TD
|
|
546
|
+
PE["PlanningEngine<br/><i>Task decomposition · Step sequencing · Execution loop</i>"]
|
|
547
|
+
PE --> IF["IPlanningEngine Interface"]
|
|
548
|
+
IF --- M1["createPlan(goal, context) → Plan"]
|
|
549
|
+
IF --- M2["executePlan(plan) → AsyncGenerator‹PlanStepResult›"]
|
|
550
|
+
IF --- M3["revisePlan(plan, feedback) → Plan"]
|
|
551
|
+
style PE fill:#1c1c28,stroke:#10b981,color:#f2f2fa
|
|
552
|
+
style IF fill:#151520,stroke:#c9a227,color:#f2f2fa
|
|
612
553
|
```
|
|
613
554
|
|
|
614
555
|
Plans are composed of typed steps that the agent executes sequentially, with the ability to revise the plan based on intermediate results. The planning engine integrates with:
|
|
@@ -641,30 +582,18 @@ Manages session state, message history, and long-term memory persistence.
|
|
|
641
582
|
|
|
642
583
|
A complete RAG pipeline with pluggable vector stores, embedding management, and document ingestion.
|
|
643
584
|
|
|
644
|
-
```
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
| |
|
|
657
|
-
v v
|
|
658
|
-
+-------------------+ +---------------------+
|
|
659
|
-
| LLM Provider | | IVectorStore impls |
|
|
660
|
-
| (embedding models)| +---------------------+
|
|
661
|
-
+-------------------+ | | | |
|
|
662
|
-
+----------+ | | +-----------+
|
|
663
|
-
v v v v
|
|
664
|
-
+-----------+ +--------+ +--------+ +---------+
|
|
665
|
-
| InMemory | | SQL | | HNSW | | Qdrant |
|
|
666
|
-
| (dev) | | (prod) | | (local)| | (cloud) |
|
|
667
|
-
+-----------+ +--------+ +--------+ +---------+
|
|
585
|
+
```mermaid
|
|
586
|
+
graph TD
|
|
587
|
+
RA["RetrievalAugmentor<br/><i>Ingestion · Retrieval · Document management</i>"]
|
|
588
|
+
RA --> EM["EmbeddingManager<br/><i>Model selection · Caching · Batch</i>"]
|
|
589
|
+
RA --> VSM["VectorStoreManager<br/><i>Multi-provider vector storage</i>"]
|
|
590
|
+
EM --> LLM["LLM Provider<br/><i>Embedding models</i>"]
|
|
591
|
+
VSM --> Mem["InMemory<br/><i>dev</i>"]
|
|
592
|
+
VSM --> SQL["SQL<br/><i>prod</i>"]
|
|
593
|
+
VSM --> HNSW["HNSW<br/><i>local ANN</i>"]
|
|
594
|
+
VSM --> Qd["Qdrant<br/><i>cloud</i>"]
|
|
595
|
+
style RA fill:#1c1c28,stroke:#c9a227,color:#f2f2fa
|
|
596
|
+
style VSM fill:#1c1c28,stroke:#8b5cf6,color:#f2f2fa
|
|
668
597
|
```
|
|
669
598
|
|
|
670
599
|
**Vector store implementations:**
|
|
@@ -677,6 +606,25 @@ A complete RAG pipeline with pluggable vector stores, embedding management, and
|
|
|
677
606
|
| `QdrantVectorStore` | `@framers/agentos/rag` | Cloud-hosted vector database |
|
|
678
607
|
| `Neo4jVectorStore` | `@framers/agentos/rag` | Neo4j 5.x native vector indexes with shared connection pooling |
|
|
679
608
|
|
|
609
|
+
> **Database Persistence: [`@framers/sql-storage-adapter`](https://github.com/framersai/sql-storage-adapter)**
|
|
610
|
+
>
|
|
611
|
+
> All SQL-backed storage in AgentOS — including `SqlVectorStore`, conversation persistence, and memory archival — is powered by the `@framers/sql-storage-adapter` package. It provides a unified interface across 7 database backends with automatic runtime detection:
|
|
612
|
+
>
|
|
613
|
+
> | Adapter | Runtime | Use Case |
|
|
614
|
+
> |---------|---------|----------|
|
|
615
|
+
> | `better-sqlite3` | Node.js | Production (default) |
|
|
616
|
+
> | `pg` | Node.js | PostgreSQL for cloud deployments |
|
|
617
|
+
> | `sql.js` | Browser/WASM | Client-side storage |
|
|
618
|
+
> | `capacitor` | Mobile | iOS/Android via Capacitor |
|
|
619
|
+
> | `electron` | Desktop | Electron apps with IPC bridge |
|
|
620
|
+
> | `indexeddb` | Browser | Fallback browser storage |
|
|
621
|
+
> | `memory` | Any | Testing and development |
|
|
622
|
+
>
|
|
623
|
+
> ```typescript
|
|
624
|
+
> import { createDatabase } from '@framers/sql-storage-adapter';
|
|
625
|
+
> const db = await createDatabase(); // auto-detects best adapter
|
|
626
|
+
> ```
|
|
627
|
+
|
|
680
628
|
**GraphRAG:**
|
|
681
629
|
|
|
682
630
|
AgentOS supports both in-memory `GraphRAGEngine` and persistent `Neo4jGraphRAGEngine` (at `src/rag/graphrag/`) for knowledge-graph-enhanced retrieval:
|
|
@@ -925,26 +873,18 @@ Enables teams of agents to collaborate on shared goals.
|
|
|
925
873
|
- **AgentCommunicationBus** -- Inter-agent message passing with typed events and handoffs
|
|
926
874
|
- **AgencyMemoryManager** -- Shared memory space with vector search for agency-wide knowledge
|
|
927
875
|
|
|
928
|
-
```
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
+-------+-------+-------+-------+-------+-------+
|
|
941
|
-
| |
|
|
942
|
-
v v
|
|
943
|
-
+------------------+ +--------------------+
|
|
944
|
-
| Communication | | Agency Memory |
|
|
945
|
-
| Bus (events, | | Manager (shared |
|
|
946
|
-
| handoffs, sync) | | vector memory) |
|
|
947
|
-
+------------------+ +--------------------+
|
|
876
|
+
```mermaid
|
|
877
|
+
graph TD
|
|
878
|
+
AR["AgencyRegistry"]
|
|
879
|
+
AR --> A1["Agent (GMI)<br/><b>Researcher</b>"]
|
|
880
|
+
AR --> A2["Agent (GMI)<br/><b>Writer</b>"]
|
|
881
|
+
AR --> A3["Agent (GMI)<br/><b>Reviewer</b>"]
|
|
882
|
+
AR --> A4["Agent (GMI)<br/><b>Deployer</b>"]
|
|
883
|
+
A1 & A2 & A3 & A4 --> Bus["Communication Bus<br/><i>Events · Handoffs · Sync</i>"]
|
|
884
|
+
A1 & A2 & A3 & A4 --> Mem["Agency Memory Manager<br/><i>Shared vector memory</i>"]
|
|
885
|
+
style AR fill:#1c1c28,stroke:#c9a227,color:#f2f2fa
|
|
886
|
+
style Bus fill:#151520,stroke:#00f5ff,color:#f2f2fa
|
|
887
|
+
style Mem fill:#151520,stroke:#8b5cf6,color:#f2f2fa
|
|
948
888
|
```
|
|
949
889
|
|
|
950
890
|
See [`docs/AGENT_COMMUNICATION.md`](docs/AGENT_COMMUNICATION.md) for the full multi-agent specification.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/memory/config.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/memory/config.ts"],"names":[],"mappings":"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"}
|
package/dist/memory/config.js
CHANGED
|
@@ -19,10 +19,11 @@ export const DEFAULT_DECAY_CONFIG = {
|
|
|
19
19
|
};
|
|
20
20
|
export const DEFAULT_BUDGET_ALLOCATION = {
|
|
21
21
|
workingMemory: 0.15,
|
|
22
|
-
semanticRecall: 0.
|
|
22
|
+
semanticRecall: 0.40,
|
|
23
23
|
recentEpisodic: 0.25,
|
|
24
24
|
prospectiveAlerts: 0.05,
|
|
25
25
|
graphAssociations: 0.05,
|
|
26
26
|
observationNotes: 0.05,
|
|
27
|
+
persistentMemory: 0.05,
|
|
27
28
|
};
|
|
28
29
|
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/memory/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA6KH,8EAA8E;AAC9E,WAAW;AACX,8EAA8E;AAE9E,MAAM,CAAC,MAAM,uBAAuB,GAAmB;IACrD,YAAY,EAAE,GAAG;IACjB,kBAAkB,EAAE,GAAG;IACvB,2BAA2B,EAAE,GAAG;IAChC,4BAA4B,EAAE,GAAG;IACjC,eAAe,EAAE,OAAS;CAC3B,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAgB;IAC/C,gBAAgB,EAAE,IAAI;IACtB,iBAAiB,EAAE,QAAU;IAC7B,qBAAqB,EAAE,GAAG;CAC3B,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAA2B;IAC/D,aAAa,EAAE,IAAI;IACnB,cAAc,EAAE,IAAI;IACpB,cAAc,EAAE,IAAI;IACpB,iBAAiB,EAAE,IAAI;IACvB,iBAAiB,EAAE,IAAI;IACvB,gBAAgB,EAAE,IAAI;CACvB,CAAC"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/memory/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA6KH,8EAA8E;AAC9E,WAAW;AACX,8EAA8E;AAE9E,MAAM,CAAC,MAAM,uBAAuB,GAAmB;IACrD,YAAY,EAAE,GAAG;IACjB,kBAAkB,EAAE,GAAG;IACvB,2BAA2B,EAAE,GAAG;IAChC,4BAA4B,EAAE,GAAG;IACjC,eAAe,EAAE,OAAS;CAC3B,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAgB;IAC/C,gBAAgB,EAAE,IAAI;IACtB,iBAAiB,EAAE,QAAU;IAC7B,qBAAqB,EAAE,GAAG;CAC3B,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAA2B;IAC/D,aAAa,EAAE,IAAI;IACnB,cAAc,EAAE,IAAI;IACpB,cAAc,EAAE,IAAI;IACpB,iBAAiB,EAAE,IAAI;IACvB,iBAAiB,EAAE,IAAI;IACvB,gBAAgB,EAAE,IAAI;IACtB,gBAAgB,EAAE,IAAI;CACvB,CAAC"}
|
package/dist/memory/index.d.ts
CHANGED
|
@@ -52,4 +52,8 @@ export { HierarchicalStrategy } from './context/strategies/HierarchicalStrategy.
|
|
|
52
52
|
export { HybridStrategy } from './context/strategies/HybridStrategy.js';
|
|
53
53
|
export type { InfiniteContextConfig, CompactionStrategy, TransparencyLevel, ContextMessage, CompactionEntry, SummaryChainNode, CompactionInput, CompactionResult, ICompactionStrategy, } from './context/types.js';
|
|
54
54
|
export { DEFAULT_INFINITE_CONTEXT_CONFIG } from './context/types.js';
|
|
55
|
+
export { MarkdownWorkingMemory } from './working/MarkdownWorkingMemory.js';
|
|
56
|
+
export type { WriteResult } from './working/MarkdownWorkingMemory.js';
|
|
57
|
+
export { UpdateWorkingMemoryTool } from './working/UpdateWorkingMemoryTool.js';
|
|
58
|
+
export { ReadWorkingMemoryTool } from './working/ReadWorkingMemoryTool.js';
|
|
55
59
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":"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"}
|
package/dist/memory/index.js
CHANGED
|
@@ -43,4 +43,8 @@ export { SlidingSummaryStrategy } from './context/strategies/SlidingSummaryStrat
|
|
|
43
43
|
export { HierarchicalStrategy } from './context/strategies/HierarchicalStrategy.js';
|
|
44
44
|
export { HybridStrategy } from './context/strategies/HybridStrategy.js';
|
|
45
45
|
export { DEFAULT_INFINITE_CONTEXT_CONFIG } from './context/types.js';
|
|
46
|
+
// --- Persistent Markdown Working Memory ---
|
|
47
|
+
export { MarkdownWorkingMemory } from './working/MarkdownWorkingMemory.js';
|
|
48
|
+
export { UpdateWorkingMemoryTool } from './working/UpdateWorkingMemoryTool.js';
|
|
49
|
+
export { ReadWorkingMemoryTool } from './working/ReadWorkingMemoryTool.js';
|
|
46
50
|
//# sourceMappingURL=index.js.map
|
package/dist/memory/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAoCH,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AAErB,mBAAmB;AACnB,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,EAC1B,WAAW,EACX,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,sCAAsC,CAAC;AAG9C,gBAAgB;AAChB,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,mBAAmB,EACnB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,oCAAoC,CAAC;AAG5C,yBAAyB;AACzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAG7E,gBAAgB;AAChB,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAGrD,0BAA0B;AAC1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAE1E,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAGrF,4BAA4B;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,kCAAkC;AAClC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAGrE,oBAAoB;AACpB,OAAO,EAAE,+BAA+B,EAAE,MAAM,yCAAyC,CAAC;AAY1F,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAGlE,uCAAuC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAEvE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAGnE,uCAAuC;AACvC,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAGrF,2CAA2C;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAGjF,4CAA4C;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAEzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAYxE,OAAO,EAAE,+BAA+B,EAAE,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAoCH,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AAErB,mBAAmB;AACnB,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,EAC1B,WAAW,EACX,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,sCAAsC,CAAC;AAG9C,gBAAgB;AAChB,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,mBAAmB,EACnB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,oCAAoC,CAAC;AAG5C,yBAAyB;AACzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAG7E,gBAAgB;AAChB,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAGrD,0BAA0B;AAC1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAE1E,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAGrF,4BAA4B;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,kCAAkC;AAClC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAGrE,oBAAoB;AACpB,OAAO,EAAE,+BAA+B,EAAE,MAAM,yCAAyC,CAAC;AAY1F,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAGlE,uCAAuC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAEvE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAGnE,uCAAuC;AACvC,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAGrF,2CAA2C;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAGjF,4CAA4C;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAEzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAYxE,OAAO,EAAE,+BAA+B,EAAE,MAAM,oBAAoB,CAAC;AAErE,6CAA6C;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAE3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC"}
|
|
@@ -31,6 +31,8 @@ export interface MemoryAssemblerInput {
|
|
|
31
31
|
graphContext?: string[];
|
|
32
32
|
/** Observation notes (Batch 2). */
|
|
33
33
|
observationNotes?: string[];
|
|
34
|
+
/** Persistent markdown memory (MEMORY.md contents). */
|
|
35
|
+
persistentMemoryText?: string;
|
|
34
36
|
}
|
|
35
37
|
/**
|
|
36
38
|
* Assemble memory context into a single formatted string within
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryPromptAssembler.d.ts","sourceRoot":"","sources":["../../../src/memory/prompt/MemoryPromptAssembler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EACV,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,EAClB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAmCjD,MAAM,WAAW,oBAAoB;IACnC,2CAA2C;IAC3C,gBAAgB,EAAE,MAAM,CAAC;IACzB,qCAAqC;IACrC,UAAU,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC7C,oDAAoD;IACpD,MAAM,EAAE,YAAY,CAAC;IAGrB,uCAAuC;IACvC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,sDAAsD;IACtD,eAAe,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACtC,2CAA2C;IAC3C,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,mCAAmC;IACnC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"MemoryPromptAssembler.d.ts","sourceRoot":"","sources":["../../../src/memory/prompt/MemoryPromptAssembler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EACV,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,EAClB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAmCjD,MAAM,WAAW,oBAAoB;IACnC,2CAA2C;IAC3C,gBAAgB,EAAE,MAAM,CAAC;IACzB,qCAAqC;IACrC,UAAU,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC7C,oDAAoD;IACpD,MAAM,EAAE,YAAY,CAAC;IAGrB,uCAAuC;IACvC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,sDAAsD;IACtD,eAAe,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACtC,2CAA2C;IAC3C,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,mCAAmC;IACnC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,uDAAuD;IACvD,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,oBAAoB,GAAG,sBAAsB,CAuJzF"}
|
|
@@ -48,6 +48,7 @@ export function assembleMemoryContext(input) {
|
|
|
48
48
|
const budget = input.totalTokenBudget;
|
|
49
49
|
const style = selectFormattingStyle(input.traits);
|
|
50
50
|
// Compute per-section budgets
|
|
51
|
+
const pmBudget = Math.floor(budget * alloc.persistentMemory);
|
|
51
52
|
const wmBudget = Math.floor(budget * alloc.workingMemory);
|
|
52
53
|
let semanticBudget = Math.floor(budget * alloc.semanticRecall);
|
|
53
54
|
const episodicBudget = Math.floor(budget * alloc.recentEpisodic);
|
|
@@ -57,6 +58,16 @@ export function assembleMemoryContext(input) {
|
|
|
57
58
|
const sections = [];
|
|
58
59
|
const includedIds = [];
|
|
59
60
|
let totalTokens = 0;
|
|
61
|
+
// --- Persistent Memory (MEMORY.md) ---
|
|
62
|
+
if (input.persistentMemoryText && pmBudget > 0) {
|
|
63
|
+
let pmText = input.persistentMemoryText;
|
|
64
|
+
const maxChars = pmBudget * 4;
|
|
65
|
+
if (pmText.length > maxChars) {
|
|
66
|
+
pmText = pmText.slice(0, maxChars) + '\n<!-- truncated -->';
|
|
67
|
+
}
|
|
68
|
+
sections.push(`## Persistent Memory\n\n${pmText}`);
|
|
69
|
+
totalTokens += Math.min(estimateTokens(input.persistentMemoryText), pmBudget);
|
|
70
|
+
}
|
|
60
71
|
// --- Working Memory ---
|
|
61
72
|
const wmText = input.workingMemoryText ?? '';
|
|
62
73
|
const wmTokens = estimateTokens(wmText);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryPromptAssembler.js","sourceRoot":"","sources":["../../../src/memory/prompt/MemoryPromptAssembler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAQH,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAwB,MAAM,uBAAuB,CAAC;AAEhF,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E,iEAAiE;AACjE,SAAS,cAAc,CAAC,IAAY;IAClC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACpC,CAAC;AAED,8EAA8E;AAC9E,iCAAiC;AACjC,8EAA8E;AAE9E,MAAM,OAAO,GAAG,CAAC,CAAqB,EAAU,EAAE,CAChD,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAEhD,SAAS,qBAAqB,CAAC,MAAoB;IACjD,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAC5C,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAEvC,qBAAqB;IACrB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,YAAY,CAAC;IAC1C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,WAAW,CAAC;IACzC,OAAO,WAAW,CAAC;AACrB,CAAC;
|
|
1
|
+
{"version":3,"file":"MemoryPromptAssembler.js","sourceRoot":"","sources":["../../../src/memory/prompt/MemoryPromptAssembler.ts"],"names":[],"mappings":"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"}
|
package/dist/memory/types.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/memory/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH,mEAAmE;AACnE,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,YAAY,GAAG,aAAa,CAAC;AAEhF,uDAAuD;AACvD,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,cAAc,CAAC;AAEzE,8DAA8D;AAC9D,MAAM,MAAM,gBAAgB,GACxB,gBAAgB,GAChB,iBAAiB,GACjB,aAAa,GACb,aAAa,GACb,YAAY,GACZ,UAAU,CAAC;AAMf,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,gBAAgB,CAAC;IAC7B,kEAAkE;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oDAAoD;IACpD,eAAe,EAAE,MAAM,CAAC;IACxB,wDAAwD;IACxD,UAAU,EAAE,MAAM,CAAC;IACnB,gEAAgE;IAChE,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oDAAoD;IACpD,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B;AAMD,MAAM,WAAW,gBAAgB;IAC/B,mEAAmE;IACnE,OAAO,EAAE,MAAM,CAAC;IAChB,kDAAkD;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,SAAS,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,SAAS,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAC;CACjB;AAMD,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,mDAAmD;IACnD,cAAc,EAAE,MAAM,CAAC;CACxB;AAMD,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,WAAW,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAGhB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,EAAE,MAAM,EAAE,CAAC;IAGf,UAAU,EAAE,gBAAgB,CAAC;IAG7B,gBAAgB,EAAE,gBAAgB,CAAC;IAGnC,uDAAuD;IACvD,gBAAgB,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAC;IAClB,kEAAkE;IAClE,cAAc,EAAE,MAAM,CAAC;IACvB,iCAAiC;IACjC,cAAc,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,WAAW,EAAE,MAAM,CAAC;IAGpB,gEAAgE;IAChE,qBAAqB,EAAE,MAAM,CAAC;IAC9B,6DAA6D;IAC7D,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAG7B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAG7B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAMD,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,oEAAoE;IACpE,OAAO,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,eAAe,EAAE,MAAM,CAAC;IACxB,wDAAwD;IACxD,SAAS,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,0DAA0D;IAC1D,eAAe,EAAE,MAAM,CAAC;CACzB;AAMD,MAAM,WAAW,eAAe;IAC9B,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAMD,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;CACtB;AAMD,MAAM,WAAW,yBAAyB;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;IACrB,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,WAAW,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACxD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,4EAA4E;IAC5E,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD,uCAAuC;IACvC,cAAc,EAAE,MAAM,CAAC;IACvB,iDAAiD;IACjD,cAAc,EAAE;QACd,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,wBAAwB,EAAE,MAAM,CAAC;QACjC,oBAAoB,EAAE,MAAM,CAAC;QAC7B,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;CACH;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,iBAAiB,EAAE,CAAC;IAC/B,kBAAkB,EAAE,uBAAuB,EAAE,CAAC;IAC9C,WAAW,EAAE;QACX,iBAAiB,EAAE,MAAM,CAAC;QAC1B,kBAAkB,EAAE,MAAM,CAAC;QAC3B,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AAMD,MAAM,WAAW,sBAAsB;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,sBAAsB,CAAC;IACnC,iBAAiB,EAAE,MAAM,EAAE,CAAC;CAC7B;AAMD,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,wBAAwB,EAAE,MAAM,CAAC;IACjC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC1C,cAAc,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;CAC7C"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/memory/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export interface WriteResult {
|
|
2
|
+
success: boolean;
|
|
3
|
+
truncated: boolean;
|
|
4
|
+
tokensUsed: number;
|
|
5
|
+
error?: string;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Persistent markdown working memory backed by a .md file on disk.
|
|
9
|
+
* The agent reads and fully replaces this file via tools.
|
|
10
|
+
* File contents are injected into the system prompt every turn.
|
|
11
|
+
*/
|
|
12
|
+
export declare class MarkdownWorkingMemory {
|
|
13
|
+
private readonly filePath;
|
|
14
|
+
private readonly template;
|
|
15
|
+
private readonly maxTokens;
|
|
16
|
+
constructor(filePath: string, template?: string, maxTokens?: number);
|
|
17
|
+
/** Creates the file with the template if it doesn't exist. */
|
|
18
|
+
ensureFile(): void;
|
|
19
|
+
/** Reads current file contents. Returns empty string if file missing. */
|
|
20
|
+
read(): string;
|
|
21
|
+
/** Replaces file contents entirely. Truncates if over maxTokens. */
|
|
22
|
+
write(content: string): WriteResult;
|
|
23
|
+
/** Estimates token count (~4 chars per token). */
|
|
24
|
+
estimateTokens(): number;
|
|
25
|
+
private estimateTokenCount;
|
|
26
|
+
/** Returns the file path for reference. */
|
|
27
|
+
getFilePath(): string;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=MarkdownWorkingMemory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MarkdownWorkingMemory.d.ts","sourceRoot":"","sources":["../../../src/memory/working/MarkdownWorkingMemory.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,qBAAa,qBAAqB;IAE9B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAFT,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAyB,EACnC,SAAS,GAAE,MAAa;IAG3C,8DAA8D;IAC9D,UAAU,IAAI,IAAI;IAOlB,yEAAyE;IACzE,IAAI,IAAI,MAAM;IASd,oEAAoE;IACpE,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW;IAoBnC,kDAAkD;IAClD,cAAc,IAAI,MAAM;IAIxB,OAAO,CAAC,kBAAkB;IAK1B,2CAA2C;IAC3C,WAAW,IAAI,MAAM;CAGtB"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { readFileSync, writeFileSync, existsSync, mkdirSync } from 'node:fs';
|
|
2
|
+
import { dirname } from 'node:path';
|
|
3
|
+
const DEFAULT_TEMPLATE = `# Working Memory
|
|
4
|
+
|
|
5
|
+
## User Profile
|
|
6
|
+
- **Name**:
|
|
7
|
+
- **Preferences**:
|
|
8
|
+
|
|
9
|
+
## Current Context
|
|
10
|
+
- **Active Topics**:
|
|
11
|
+
- **Recent Requests**:
|
|
12
|
+
|
|
13
|
+
## Notes
|
|
14
|
+
`;
|
|
15
|
+
/**
|
|
16
|
+
* Persistent markdown working memory backed by a .md file on disk.
|
|
17
|
+
* The agent reads and fully replaces this file via tools.
|
|
18
|
+
* File contents are injected into the system prompt every turn.
|
|
19
|
+
*/
|
|
20
|
+
export class MarkdownWorkingMemory {
|
|
21
|
+
constructor(filePath, template = DEFAULT_TEMPLATE, maxTokens = 2000) {
|
|
22
|
+
this.filePath = filePath;
|
|
23
|
+
this.template = template;
|
|
24
|
+
this.maxTokens = maxTokens;
|
|
25
|
+
}
|
|
26
|
+
/** Creates the file with the template if it doesn't exist. */
|
|
27
|
+
ensureFile() {
|
|
28
|
+
if (existsSync(this.filePath))
|
|
29
|
+
return;
|
|
30
|
+
const dir = dirname(this.filePath);
|
|
31
|
+
if (!existsSync(dir))
|
|
32
|
+
mkdirSync(dir, { recursive: true });
|
|
33
|
+
writeFileSync(this.filePath, this.template, 'utf8');
|
|
34
|
+
}
|
|
35
|
+
/** Reads current file contents. Returns empty string if file missing. */
|
|
36
|
+
read() {
|
|
37
|
+
if (!existsSync(this.filePath))
|
|
38
|
+
return '';
|
|
39
|
+
try {
|
|
40
|
+
return readFileSync(this.filePath, 'utf8');
|
|
41
|
+
}
|
|
42
|
+
catch {
|
|
43
|
+
return '';
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
/** Replaces file contents entirely. Truncates if over maxTokens. */
|
|
47
|
+
write(content) {
|
|
48
|
+
const tokens = this.estimateTokenCount(content);
|
|
49
|
+
let truncated = false;
|
|
50
|
+
if (tokens > this.maxTokens) {
|
|
51
|
+
const maxChars = this.maxTokens * 4;
|
|
52
|
+
content = content.slice(0, maxChars) + '\n\n<!-- truncated: exceeded token limit -->';
|
|
53
|
+
truncated = true;
|
|
54
|
+
}
|
|
55
|
+
try {
|
|
56
|
+
const dir = dirname(this.filePath);
|
|
57
|
+
if (!existsSync(dir))
|
|
58
|
+
mkdirSync(dir, { recursive: true });
|
|
59
|
+
writeFileSync(this.filePath, content, 'utf8');
|
|
60
|
+
return { success: true, truncated, tokensUsed: this.estimateTokenCount(content) };
|
|
61
|
+
}
|
|
62
|
+
catch (err) {
|
|
63
|
+
return { success: false, truncated: false, tokensUsed: 0, error: err?.message };
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
/** Estimates token count (~4 chars per token). */
|
|
67
|
+
estimateTokens() {
|
|
68
|
+
return this.estimateTokenCount(this.read());
|
|
69
|
+
}
|
|
70
|
+
estimateTokenCount(text) {
|
|
71
|
+
if (!text)
|
|
72
|
+
return 0;
|
|
73
|
+
return Math.ceil(text.length / 4);
|
|
74
|
+
}
|
|
75
|
+
/** Returns the file path for reference. */
|
|
76
|
+
getFilePath() {
|
|
77
|
+
return this.filePath;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=MarkdownWorkingMemory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MarkdownWorkingMemory.js","sourceRoot":"","sources":["../../../src/memory/working/MarkdownWorkingMemory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,gBAAgB,GAAG;;;;;;;;;;;CAWxB,CAAC;AASF;;;;GAIG;AACH,MAAM,OAAO,qBAAqB;IAChC,YACmB,QAAgB,EAChB,WAAmB,gBAAgB,EACnC,YAAoB,IAAI;QAFxB,aAAQ,GAAR,QAAQ,CAAQ;QAChB,aAAQ,GAAR,QAAQ,CAA2B;QACnC,cAAS,GAAT,SAAS,CAAe;IACxC,CAAC;IAEJ,8DAA8D;IAC9D,UAAU;QACR,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC;YAAE,OAAO;QACtC,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACnC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC;IAED,yEAAyE;IACzE,IAAI;QACF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC;YAAE,OAAO,EAAE,CAAC;QAC1C,IAAI,CAAC;YACH,OAAO,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC7C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,oEAAoE;IACpE,KAAK,CAAC,OAAe;QACnB,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAChD,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,IAAI,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;YACpC,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,8CAA8C,CAAC;YACtF,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;QAED,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACnC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1D,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAC9C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC;QACpF,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;QAClF,CAAC;IACH,CAAC;IAED,kDAAkD;IAClD,cAAc;QACZ,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IAEO,kBAAkB,CAAC,IAAY;QACrC,IAAI,CAAC,IAAI;YAAE,OAAO,CAAC,CAAC;QACpB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACpC,CAAC;IAED,2CAA2C;IAC3C,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;CACF"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { ITool, ToolExecutionResult, ToolExecutionContext, JSONSchemaObject } from '../../core/tools/ITool.js';
|
|
2
|
+
import type { MarkdownWorkingMemory } from './MarkdownWorkingMemory.js';
|
|
3
|
+
interface ReadOutput {
|
|
4
|
+
content: string;
|
|
5
|
+
tokensUsed: number;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Tool that lets the agent explicitly read its persistent working memory.
|
|
9
|
+
* The memory is also injected into the system prompt automatically,
|
|
10
|
+
* but this tool is useful when the agent wants to reason about its
|
|
11
|
+
* memory before deciding what to update.
|
|
12
|
+
*/
|
|
13
|
+
export declare class ReadWorkingMemoryTool implements ITool<Record<string, never>, ReadOutput> {
|
|
14
|
+
private readonly memory;
|
|
15
|
+
readonly id = "read-working-memory-v1";
|
|
16
|
+
readonly name = "read_working_memory";
|
|
17
|
+
readonly displayName = "Read Working Memory";
|
|
18
|
+
readonly description: string;
|
|
19
|
+
readonly category = "memory";
|
|
20
|
+
readonly hasSideEffects = false;
|
|
21
|
+
readonly inputSchema: JSONSchemaObject;
|
|
22
|
+
constructor(memory: MarkdownWorkingMemory);
|
|
23
|
+
execute(_args: Record<string, never>, _context: ToolExecutionContext): Promise<ToolExecutionResult<ReadOutput>>;
|
|
24
|
+
}
|
|
25
|
+
export {};
|
|
26
|
+
//# sourceMappingURL=ReadWorkingMemoryTool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReadWorkingMemoryTool.d.ts","sourceRoot":"","sources":["../../../src/memory/working/ReadWorkingMemoryTool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AACpH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAExE,UAAU,UAAU;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,qBAAa,qBAAsB,YAAW,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,UAAU,CAAC;IAexE,OAAO,CAAC,QAAQ,CAAC,MAAM;IAdnC,QAAQ,CAAC,EAAE,4BAA4B;IACvC,QAAQ,CAAC,IAAI,yBAAyB;IACtC,QAAQ,CAAC,WAAW,yBAAyB;IAC7C,QAAQ,CAAC,WAAW,SAGyC;IAC7D,QAAQ,CAAC,QAAQ,YAAY;IAC7B,QAAQ,CAAC,cAAc,SAAS;IAChC,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAGpC;gBAE2B,MAAM,EAAE,qBAAqB;IAEpD,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;CAOtH"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tool that lets the agent explicitly read its persistent working memory.
|
|
3
|
+
* The memory is also injected into the system prompt automatically,
|
|
4
|
+
* but this tool is useful when the agent wants to reason about its
|
|
5
|
+
* memory before deciding what to update.
|
|
6
|
+
*/
|
|
7
|
+
export class ReadWorkingMemoryTool {
|
|
8
|
+
constructor(memory) {
|
|
9
|
+
this.memory = memory;
|
|
10
|
+
this.id = 'read-working-memory-v1';
|
|
11
|
+
this.name = 'read_working_memory';
|
|
12
|
+
this.displayName = 'Read Working Memory';
|
|
13
|
+
this.description = 'Read your current persistent working memory contents. ' +
|
|
14
|
+
'This is also available in your system prompt, but use this tool ' +
|
|
15
|
+
'when you need to inspect your memory before updating it.';
|
|
16
|
+
this.category = 'memory';
|
|
17
|
+
this.hasSideEffects = false;
|
|
18
|
+
this.inputSchema = {
|
|
19
|
+
type: 'object',
|
|
20
|
+
properties: {},
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
async execute(_args, _context) {
|
|
24
|
+
const content = this.memory.read();
|
|
25
|
+
return {
|
|
26
|
+
success: true,
|
|
27
|
+
output: { content, tokensUsed: this.memory.estimateTokens() },
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=ReadWorkingMemoryTool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReadWorkingMemoryTool.js","sourceRoot":"","sources":["../../../src/memory/working/ReadWorkingMemoryTool.ts"],"names":[],"mappings":"AAQA;;;;;GAKG;AACH,MAAM,OAAO,qBAAqB;IAehC,YAA6B,MAA6B;QAA7B,WAAM,GAAN,MAAM,CAAuB;QAdjD,OAAE,GAAG,wBAAwB,CAAC;QAC9B,SAAI,GAAG,qBAAqB,CAAC;QAC7B,gBAAW,GAAG,qBAAqB,CAAC;QACpC,gBAAW,GAClB,wDAAwD;YACxD,kEAAkE;YAClE,0DAA0D,CAAC;QACpD,aAAQ,GAAG,QAAQ,CAAC;QACpB,mBAAc,GAAG,KAAK,CAAC;QACvB,gBAAW,GAAqB;YACvC,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;SACf,CAAC;IAE2D,CAAC;IAE9D,KAAK,CAAC,OAAO,CAAC,KAA4B,EAAE,QAA8B;QACxE,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACnC,OAAO;YACL,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE;SAC9D,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { ITool, ToolExecutionResult, ToolExecutionContext, JSONSchemaObject } from '../../core/tools/ITool.js';
|
|
2
|
+
import type { MarkdownWorkingMemory } from './MarkdownWorkingMemory.js';
|
|
3
|
+
interface UpdateInput {
|
|
4
|
+
content: string;
|
|
5
|
+
}
|
|
6
|
+
interface UpdateOutput {
|
|
7
|
+
tokensUsed: number;
|
|
8
|
+
truncated: boolean;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Tool that lets the agent fully replace its persistent markdown working memory.
|
|
12
|
+
* The agent should call this whenever it learns new persistent context about the
|
|
13
|
+
* user, session, or ongoing tasks that should survive across conversations.
|
|
14
|
+
*/
|
|
15
|
+
export declare class UpdateWorkingMemoryTool implements ITool<UpdateInput, UpdateOutput> {
|
|
16
|
+
private readonly memory;
|
|
17
|
+
readonly id = "update-working-memory-v1";
|
|
18
|
+
readonly name = "update_working_memory";
|
|
19
|
+
readonly displayName = "Update Working Memory";
|
|
20
|
+
readonly description: string;
|
|
21
|
+
readonly category = "memory";
|
|
22
|
+
readonly hasSideEffects = true;
|
|
23
|
+
readonly inputSchema: JSONSchemaObject;
|
|
24
|
+
constructor(memory: MarkdownWorkingMemory);
|
|
25
|
+
execute(args: UpdateInput, _context: ToolExecutionContext): Promise<ToolExecutionResult<UpdateOutput>>;
|
|
26
|
+
}
|
|
27
|
+
export {};
|
|
28
|
+
//# sourceMappingURL=UpdateWorkingMemoryTool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UpdateWorkingMemoryTool.d.ts","sourceRoot":"","sources":["../../../src/memory/working/UpdateWorkingMemoryTool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AACpH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAExE,UAAU,WAAW;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,YAAY;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;;GAIG;AACH,qBAAa,uBAAwB,YAAW,KAAK,CAAC,WAAW,EAAE,YAAY,CAAC;IAsBlE,OAAO,CAAC,QAAQ,CAAC,MAAM;IArBnC,QAAQ,CAAC,EAAE,8BAA8B;IACzC,QAAQ,CAAC,IAAI,2BAA2B;IACxC,QAAQ,CAAC,WAAW,2BAA2B;IAC/C,QAAQ,CAAC,WAAW,SAI+D;IACnF,QAAQ,CAAC,QAAQ,YAAY;IAC7B,QAAQ,CAAC,cAAc,QAAQ;IAC/B,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CASpC;gBAE2B,MAAM,EAAE,qBAAqB;IAEpD,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;CAU7G"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tool that lets the agent fully replace its persistent markdown working memory.
|
|
3
|
+
* The agent should call this whenever it learns new persistent context about the
|
|
4
|
+
* user, session, or ongoing tasks that should survive across conversations.
|
|
5
|
+
*/
|
|
6
|
+
export class UpdateWorkingMemoryTool {
|
|
7
|
+
constructor(memory) {
|
|
8
|
+
this.memory = memory;
|
|
9
|
+
this.id = 'update-working-memory-v1';
|
|
10
|
+
this.name = 'update_working_memory';
|
|
11
|
+
this.displayName = 'Update Working Memory';
|
|
12
|
+
this.description = 'Replace your persistent working memory with updated content. ' +
|
|
13
|
+
'Use this to store user preferences, ongoing context, project notes, ' +
|
|
14
|
+
'and anything that should persist across conversations. ' +
|
|
15
|
+
'You must provide the COMPLETE updated content (full replacement, not a patch).';
|
|
16
|
+
this.category = 'memory';
|
|
17
|
+
this.hasSideEffects = true;
|
|
18
|
+
this.inputSchema = {
|
|
19
|
+
type: 'object',
|
|
20
|
+
properties: {
|
|
21
|
+
content: {
|
|
22
|
+
type: 'string',
|
|
23
|
+
description: 'The full markdown content to replace working memory with.',
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
required: ['content'],
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
async execute(args, _context) {
|
|
30
|
+
const result = this.memory.write(args.content);
|
|
31
|
+
if (!result.success) {
|
|
32
|
+
return { success: false, error: result.error ?? 'Failed to write working memory' };
|
|
33
|
+
}
|
|
34
|
+
return {
|
|
35
|
+
success: true,
|
|
36
|
+
output: { tokensUsed: result.tokensUsed, truncated: result.truncated },
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=UpdateWorkingMemoryTool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UpdateWorkingMemoryTool.js","sourceRoot":"","sources":["../../../src/memory/working/UpdateWorkingMemoryTool.ts"],"names":[],"mappings":"AAYA;;;;GAIG;AACH,MAAM,OAAO,uBAAuB;IAsBlC,YAA6B,MAA6B;QAA7B,WAAM,GAAN,MAAM,CAAuB;QArBjD,OAAE,GAAG,0BAA0B,CAAC;QAChC,SAAI,GAAG,uBAAuB,CAAC;QAC/B,gBAAW,GAAG,uBAAuB,CAAC;QACtC,gBAAW,GAClB,+DAA+D;YAC/D,sEAAsE;YACtE,yDAAyD;YACzD,gFAAgF,CAAC;QAC1E,aAAQ,GAAG,QAAQ,CAAC;QACpB,mBAAc,GAAG,IAAI,CAAC;QACtB,gBAAW,GAAqB;YACvC,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,2DAA2D;iBACzE;aACF;YACD,QAAQ,EAAE,CAAC,SAAS,CAAC;SACtB,CAAC;IAE2D,CAAC;IAE9D,KAAK,CAAC,OAAO,CAAC,IAAiB,EAAE,QAA8B;QAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,gCAAgC,EAAE,CAAC;QACrF,CAAC;QACD,OAAO;YACL,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE;SACvE,CAAC;IACJ,CAAC;CACF"}
|