lettactl 0.9.14 → 0.9.16
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 +84 -6
- package/dist/commands/apply/apply.d.ts.map +1 -1
- package/dist/commands/apply/apply.js +128 -26
- package/dist/commands/apply/apply.js.map +1 -1
- package/dist/commands/apply/template.d.ts +1 -0
- package/dist/commands/apply/template.d.ts.map +1 -1
- package/dist/commands/apply/template.js +15 -2
- package/dist/commands/apply/template.js.map +1 -1
- package/dist/commands/apply/types.d.ts +1 -0
- package/dist/commands/apply/types.d.ts.map +1 -1
- package/dist/commands/cleanup/archives.d.ts +4 -0
- package/dist/commands/cleanup/archives.d.ts.map +1 -0
- package/dist/commands/cleanup/archives.js +51 -0
- package/dist/commands/cleanup/archives.js.map +1 -0
- package/dist/commands/cleanup/cleanup.d.ts.map +1 -1
- package/dist/commands/cleanup/cleanup.js +5 -0
- package/dist/commands/cleanup/cleanup.js.map +1 -1
- package/dist/commands/cleanup/types.d.ts.map +1 -1
- package/dist/commands/cleanup/types.js +1 -1
- package/dist/commands/cleanup/types.js.map +1 -1
- package/dist/commands/completion/completion.d.ts.map +1 -1
- package/dist/commands/completion/completion.js +7 -5
- package/dist/commands/completion/completion.js.map +1 -1
- package/dist/commands/create/create.d.ts.map +1 -1
- package/dist/commands/create/create.js +3 -2
- package/dist/commands/create/create.js.map +1 -1
- package/dist/commands/describe/agent.d.ts.map +1 -1
- package/dist/commands/describe/agent.js +8 -0
- package/dist/commands/describe/agent.js.map +1 -1
- package/dist/commands/describe/archive.d.ts +5 -0
- package/dist/commands/describe/archive.d.ts.map +1 -0
- package/dist/commands/describe/archive.js +42 -0
- package/dist/commands/describe/archive.js.map +1 -0
- package/dist/commands/describe/index.d.ts.map +1 -1
- package/dist/commands/describe/index.js +4 -0
- package/dist/commands/describe/index.js.map +1 -1
- package/dist/commands/describe/types.d.ts.map +1 -1
- package/dist/commands/describe/types.js +1 -1
- package/dist/commands/describe/types.js.map +1 -1
- package/dist/commands/get/archives.d.ts +5 -0
- package/dist/commands/get/archives.d.ts.map +1 -0
- package/dist/commands/get/archives.js +58 -0
- package/dist/commands/get/archives.js.map +1 -0
- package/dist/commands/get/index.d.ts.map +1 -1
- package/dist/commands/get/index.js +4 -0
- package/dist/commands/get/index.js.map +1 -1
- package/dist/commands/get/types.d.ts.map +1 -1
- package/dist/commands/get/types.js +1 -1
- package/dist/commands/get/types.js.map +1 -1
- package/dist/index.js +6 -5
- package/dist/index.js.map +1 -1
- package/dist/lib/agent-manager.d.ts +18 -0
- package/dist/lib/agent-manager.d.ts.map +1 -1
- package/dist/lib/agent-manager.js +21 -5
- package/dist/lib/agent-manager.js.map +1 -1
- package/dist/lib/agent-manifest.d.ts +55 -0
- package/dist/lib/agent-manifest.d.ts.map +1 -0
- package/dist/lib/agent-manifest.js +210 -0
- package/dist/lib/agent-manifest.js.map +1 -0
- package/dist/lib/agent-resolver.d.ts.map +1 -1
- package/dist/lib/agent-resolver.js +9 -0
- package/dist/lib/agent-resolver.js.map +1 -1
- package/dist/lib/apply-helpers.d.ts +7 -1
- package/dist/lib/apply-helpers.d.ts.map +1 -1
- package/dist/lib/apply-helpers.js +51 -7
- package/dist/lib/apply-helpers.js.map +1 -1
- package/dist/lib/archive-manager.d.ts +23 -0
- package/dist/lib/archive-manager.d.ts.map +1 -0
- package/dist/lib/archive-manager.js +58 -0
- package/dist/lib/archive-manager.js.map +1 -0
- package/dist/lib/block-manager.d.ts.map +1 -1
- package/dist/lib/block-manager.js +6 -1
- package/dist/lib/block-manager.js.map +1 -1
- package/dist/lib/config-validators.d.ts +14 -0
- package/dist/lib/config-validators.d.ts.map +1 -1
- package/dist/lib/config-validators.js +96 -3
- package/dist/lib/config-validators.js.map +1 -1
- package/dist/lib/constants.d.ts +5 -0
- package/dist/lib/constants.d.ts.map +1 -0
- package/dist/lib/constants.js +9 -0
- package/dist/lib/constants.js.map +1 -0
- package/dist/lib/diff-analyzers.d.ts +8 -1
- package/dist/lib/diff-analyzers.d.ts.map +1 -1
- package/dist/lib/diff-analyzers.js +62 -0
- package/dist/lib/diff-analyzers.js.map +1 -1
- package/dist/lib/diff-applier.d.ts.map +1 -1
- package/dist/lib/diff-applier.js +26 -0
- package/dist/lib/diff-applier.js.map +1 -1
- package/dist/lib/diff-engine.d.ts +12 -2
- package/dist/lib/diff-engine.d.ts.map +1 -1
- package/dist/lib/diff-engine.js +39 -4
- package/dist/lib/diff-engine.js.map +1 -1
- package/dist/lib/dry-run.d.ts +2 -0
- package/dist/lib/dry-run.d.ts.map +1 -1
- package/dist/lib/dry-run.js +33 -0
- package/dist/lib/dry-run.js.map +1 -1
- package/dist/lib/file-content-tracker.d.ts.map +1 -1
- package/dist/lib/file-content-tracker.js +5 -0
- package/dist/lib/file-content-tracker.js.map +1 -1
- package/dist/lib/fleet-parser.d.ts +1 -0
- package/dist/lib/fleet-parser.d.ts.map +1 -1
- package/dist/lib/fleet-parser.js +42 -6
- package/dist/lib/fleet-parser.js.map +1 -1
- package/dist/lib/letta-client.d.ts +12 -0
- package/dist/lib/letta-client.d.ts.map +1 -1
- package/dist/lib/letta-client.js +35 -0
- package/dist/lib/letta-client.js.map +1 -1
- package/dist/lib/mcp-tools.d.ts +4 -0
- package/dist/lib/mcp-tools.d.ts.map +1 -0
- package/dist/lib/mcp-tools.js +84 -0
- package/dist/lib/mcp-tools.js.map +1 -0
- package/dist/lib/resource-classifier.d.ts +4 -0
- package/dist/lib/resource-classifier.d.ts.map +1 -1
- package/dist/lib/resource-classifier.js +18 -0
- package/dist/lib/resource-classifier.js.map +1 -1
- package/dist/lib/resource-usage.d.ts +2 -2
- package/dist/lib/resource-usage.d.ts.map +1 -1
- package/dist/lib/resource-usage.js +3 -0
- package/dist/lib/resource-usage.js.map +1 -1
- package/dist/lib/ux/display/details.d.ts +19 -0
- package/dist/lib/ux/display/details.d.ts.map +1 -1
- package/dist/lib/ux/display/details.js +69 -0
- package/dist/lib/ux/display/details.js.map +1 -1
- package/dist/lib/ux/display/index.d.ts +2 -2
- package/dist/lib/ux/display/index.d.ts.map +1 -1
- package/dist/lib/ux/display/index.js +3 -1
- package/dist/lib/ux/display/index.js.map +1 -1
- package/dist/lib/ux/display/resources.d.ts +7 -0
- package/dist/lib/ux/display/resources.d.ts.map +1 -1
- package/dist/lib/ux/display/resources.js +48 -0
- package/dist/lib/ux/display/resources.js.map +1 -1
- package/dist/lib/ux/output-formatter.d.ts +5 -0
- package/dist/lib/ux/output-formatter.d.ts.map +1 -1
- package/dist/lib/ux/output-formatter.js +29 -0
- package/dist/lib/ux/output-formatter.js.map +1 -1
- package/dist/types/agent.d.ts +1 -0
- package/dist/types/agent.d.ts.map +1 -1
- package/dist/types/diff.d.ts +22 -0
- package/dist/types/diff.d.ts.map +1 -1
- package/dist/types/fleet-config.d.ts +15 -0
- package/dist/types/fleet-config.d.ts.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -95,7 +95,7 @@ agents:
|
|
|
95
95
|
- name: documents
|
|
96
96
|
files:
|
|
97
97
|
- "files/*" # Auto-discover all files in files/
|
|
98
|
-
embedding: "
|
|
98
|
+
embedding: "openai/text-embedding-3-small"
|
|
99
99
|
|
|
100
100
|
# 2. Cloud-powered agent using Supabase storage
|
|
101
101
|
- name: cloud-assistant
|
|
@@ -118,7 +118,7 @@ agents:
|
|
|
118
118
|
provider: supabase
|
|
119
119
|
bucket: test-bucket
|
|
120
120
|
path: knowledge/example.md
|
|
121
|
-
embedding: "
|
|
121
|
+
embedding: "openai/text-embedding-3-small"
|
|
122
122
|
```
|
|
123
123
|
|
|
124
124
|
Deploy the entire fleet:
|
|
@@ -139,6 +139,8 @@ lettactl apply -f agents.yml --dry-run # See what would change
|
|
|
139
139
|
lettactl apply -f agents.yml --root . # Specify root directory for file resolution
|
|
140
140
|
lettactl apply -f agents.yml -v # Verbose output
|
|
141
141
|
lettactl apply -f agents.yml -q # Quiet mode (for CI pipelines)
|
|
142
|
+
lettactl apply -f agents.yml --manifest # Generate manifest with all resource IDs
|
|
143
|
+
lettactl apply -f agents.yml --manifest output.json # Custom manifest path
|
|
142
144
|
|
|
143
145
|
# Template mode: apply config to existing agents matching a glob pattern
|
|
144
146
|
lettactl apply -f template.yaml --match "*-assistant" # All agents ending in -assistant
|
|
@@ -149,6 +151,13 @@ lettactl apply -f template.yaml --match "*" --dry-run # Preview changes to all
|
|
|
149
151
|
**Template Mode (`--match`):**
|
|
150
152
|
Apply a template configuration to multiple existing agents at once. Uses merge semantics - adds/updates tools, blocks, and prompts without removing existing resources. Perfect for propagating tool updates or shared config changes across agent fleets.
|
|
151
153
|
|
|
154
|
+
**Agent Manifests (`--manifest`):**
|
|
155
|
+
Generate a JSON manifest with all resolved resource IDs after deployment. Useful for CI/CD pipelines that need to track what was deployed:
|
|
156
|
+
```bash
|
|
157
|
+
lettactl apply -f agents.yml --manifest
|
|
158
|
+
# Generates agents.manifest.json with agent IDs, tool IDs, block IDs, etc.
|
|
159
|
+
```
|
|
160
|
+
|
|
152
161
|
### Create Agents
|
|
153
162
|
```bash
|
|
154
163
|
# Create basic agent
|
|
@@ -160,7 +169,7 @@ lettactl create agent advanced-agent \
|
|
|
160
169
|
--model "google_ai/gemini-2.5-pro" \
|
|
161
170
|
--system "You are an expert assistant." \
|
|
162
171
|
--context-window 32000 \
|
|
163
|
-
--embedding "
|
|
172
|
+
--embedding "openai/text-embedding-3-small" \
|
|
164
173
|
--tags "production,assistant"
|
|
165
174
|
```
|
|
166
175
|
|
|
@@ -246,6 +255,7 @@ lettactl delete-all agents --pattern "PROD.*" --force # Matches "prod-agent-1"
|
|
|
246
255
|
|
|
247
256
|
**What gets deleted:**
|
|
248
257
|
- Agent-specific memory blocks
|
|
258
|
+
- Agent archival memory archives
|
|
249
259
|
- Agent-specific folders (if not shared)
|
|
250
260
|
- Associated conversation history
|
|
251
261
|
|
|
@@ -264,17 +274,20 @@ lettactl delete-all agents --pattern "PROD.*" --force # Matches "prod-agent-1"
|
|
|
264
274
|
# Preview orphaned resources (dry-run by default)
|
|
265
275
|
lettactl cleanup blocks # Find orphaned blocks
|
|
266
276
|
lettactl cleanup folders # Find orphaned folders (and their files)
|
|
277
|
+
lettactl cleanup archives # Find orphaned archives
|
|
267
278
|
lettactl cleanup all # Find all orphaned resources
|
|
268
279
|
|
|
269
280
|
# Actually delete orphaned resources
|
|
270
281
|
lettactl cleanup blocks --force # Delete orphaned blocks
|
|
271
282
|
lettactl cleanup folders --force # Delete orphaned folders (cascades to files)
|
|
283
|
+
lettactl cleanup archives --force # Delete orphaned archives (and their passages)
|
|
272
284
|
lettactl cleanup all --force # Delete all orphaned resources
|
|
273
285
|
```
|
|
274
286
|
|
|
275
287
|
**What gets cleaned up:**
|
|
276
288
|
- **Orphaned blocks**: Memory blocks attached to 0 agents
|
|
277
289
|
- **Orphaned folders**: Folders attached to 0 agents (files inside are also deleted)
|
|
290
|
+
- **Orphaned archives**: Archives attached to 0 agents
|
|
278
291
|
|
|
279
292
|
**Safety Features:**
|
|
280
293
|
- Dry-run by default - shows what would be deleted
|
|
@@ -282,11 +295,33 @@ lettactl cleanup all --force # Delete all orphaned resources
|
|
|
282
295
|
- Shows file counts for orphaned folders
|
|
283
296
|
- Uses API's native orphan detection for efficiency
|
|
284
297
|
|
|
298
|
+
### Archival Memory (Archives)
|
|
299
|
+
Archives are the archival memory stores attached to agents.
|
|
300
|
+
|
|
301
|
+
**Key points:**
|
|
302
|
+
- Archives are **per-agent** and **one per agent** (validated).
|
|
303
|
+
- `apply` will create and attach the archive if it does not exist.
|
|
304
|
+
- Removing an archive from config only detaches it when `--force` is used.
|
|
305
|
+
- Passages are managed by the agent/tools (`archival_memory_insert/search`), not by lettactl.
|
|
306
|
+
- Export/import includes archives and passages via Letta server export/import.
|
|
307
|
+
|
|
308
|
+
**Example:**
|
|
309
|
+
```yaml
|
|
310
|
+
agents:
|
|
311
|
+
- name: my-agent
|
|
312
|
+
archives:
|
|
313
|
+
- name: my-archive
|
|
314
|
+
description: "Long-term knowledge base"
|
|
315
|
+
embedding: "openai/text-embedding-3-small"
|
|
316
|
+
# embedding_config: {} # Optional provider-specific config
|
|
317
|
+
```
|
|
318
|
+
|
|
285
319
|
### View Resources
|
|
286
320
|
```bash
|
|
287
321
|
# List resources
|
|
288
322
|
lettactl get agents # List all agents
|
|
289
323
|
lettactl get blocks # List all memory blocks
|
|
324
|
+
lettactl get archives # List all archives (archival memory stores)
|
|
290
325
|
lettactl get tools # List all tools
|
|
291
326
|
lettactl get folders # List all folders (with file counts)
|
|
292
327
|
lettactl get files # List all files (deduplicated by name)
|
|
@@ -303,6 +338,7 @@ lettactl get files -o wide # Shows every file instance per folder
|
|
|
303
338
|
|
|
304
339
|
# Scoped to specific agent
|
|
305
340
|
lettactl get blocks -a my-agent # Blocks attached to my-agent
|
|
341
|
+
lettactl get archives -a my-agent # Archives attached to my-agent
|
|
306
342
|
lettactl get tools -a my-agent # Tools attached to my-agent
|
|
307
343
|
lettactl get folders -a my-agent # Folders attached to my-agent
|
|
308
344
|
lettactl get files -a my-agent # Files accessible to my-agent
|
|
@@ -310,6 +346,7 @@ lettactl get files -a my-agent # Files accessible to my-agent
|
|
|
310
346
|
# Fleet analysis
|
|
311
347
|
lettactl get tools --shared # Tools used by 2+ agents
|
|
312
348
|
lettactl get blocks --orphaned # Blocks not attached to any agent
|
|
349
|
+
lettactl get archives --orphaned # Archives not attached to any agent
|
|
313
350
|
lettactl get folders --shared # Shared folders with agent counts
|
|
314
351
|
lettactl get files --shared # Files in folders used by 2+ agents
|
|
315
352
|
lettactl get files --orphaned # Files in folders not used by any agent
|
|
@@ -317,6 +354,7 @@ lettactl get files --orphaned # Files in folders not used by any agent
|
|
|
317
354
|
# Detailed resource info
|
|
318
355
|
lettactl describe agent my-agent # Agent details + blocks/tools/folders/messages/archival
|
|
319
356
|
lettactl describe block persona # Block details + attached agents + value preview
|
|
357
|
+
lettactl describe archive kb-store # Archive details + attached agents
|
|
320
358
|
lettactl describe tool my-tool # Tool details + attached agents + source code
|
|
321
359
|
lettactl describe folder docs # Folder details + files + attached agents
|
|
322
360
|
lettactl describe file report.pdf # File details + which folders contain it
|
|
@@ -373,6 +411,29 @@ lettactl delete mcp-servers my-server --force
|
|
|
373
411
|
|
|
374
412
|
MCP servers are created/updated automatically during `lettactl apply` when defined in your configuration.
|
|
375
413
|
|
|
414
|
+
**Using MCP Tools in Agents:**
|
|
415
|
+
|
|
416
|
+
Once MCP servers are defined, reference their tools in agent configs using `mcp_tools`:
|
|
417
|
+
|
|
418
|
+
```yaml
|
|
419
|
+
mcp_servers:
|
|
420
|
+
- name: filesystem
|
|
421
|
+
type: stdio
|
|
422
|
+
command: npx
|
|
423
|
+
args: ["-y", "@anthropic/mcp-filesystem"]
|
|
424
|
+
|
|
425
|
+
agents:
|
|
426
|
+
- name: file-agent
|
|
427
|
+
mcp_tools:
|
|
428
|
+
- server: filesystem
|
|
429
|
+
tools: all # Include all tools from the server
|
|
430
|
+
# Or pick specific tools:
|
|
431
|
+
# - server: filesystem
|
|
432
|
+
# tools: [read_file, write_file]
|
|
433
|
+
```
|
|
434
|
+
|
|
435
|
+
The tools are expanded and attached to the agent during apply.
|
|
436
|
+
|
|
376
437
|
---
|
|
377
438
|
|
|
378
439
|
# SDK Usage
|
|
@@ -438,7 +499,7 @@ agents:
|
|
|
438
499
|
value: "You are an assistant for user ${userId}."
|
|
439
500
|
shared_blocks: # Use shared memory blocks
|
|
440
501
|
- shared-guidelines
|
|
441
|
-
embedding: "
|
|
502
|
+
embedding: "openai/text-embedding-3-small"
|
|
442
503
|
`;
|
|
443
504
|
|
|
444
505
|
// Deploy directly from YAML string (no file I/O needed)
|
|
@@ -745,7 +806,8 @@ lettactl apply -f agents.yml
|
|
|
745
806
|
agents:
|
|
746
807
|
- name: agent-name # Required: unique identifier
|
|
747
808
|
description: "What this agent does" # Required: human description
|
|
748
|
-
|
|
809
|
+
reasoning: true # Optional: enable reasoning (default: true)
|
|
810
|
+
|
|
749
811
|
# LLM configuration (required, should be first)
|
|
750
812
|
llm_config:
|
|
751
813
|
model: "google_ai/gemini-2.5-pro" # Required
|
|
@@ -763,6 +825,15 @@ agents:
|
|
|
763
825
|
- archival_memory_search
|
|
764
826
|
- tools/* # Auto-discover from tools/ folder
|
|
765
827
|
- custom_tool_name # Specific custom tools
|
|
828
|
+
|
|
829
|
+
# MCP tools (optional) - reference tools from MCP servers
|
|
830
|
+
mcp_tools:
|
|
831
|
+
- server: my-mcp-server # MCP server name (defined in mcp_servers)
|
|
832
|
+
tools: all # Include all tools from server
|
|
833
|
+
- server: another-server
|
|
834
|
+
tools: # Or specify individual tools
|
|
835
|
+
- specific_tool_1
|
|
836
|
+
- specific_tool_2
|
|
766
837
|
|
|
767
838
|
# Shared blocks (optional)
|
|
768
839
|
shared_blocks:
|
|
@@ -777,6 +848,13 @@ agents:
|
|
|
777
848
|
mutable: true # Optional: if false, value syncs from YAML on every apply
|
|
778
849
|
value: "Direct content" # Option 1: inline
|
|
779
850
|
from_file: "blocks/file.md" # Option 2: from file
|
|
851
|
+
|
|
852
|
+
# Archives (archival memory store) (optional)
|
|
853
|
+
archives:
|
|
854
|
+
# Note: only one archive is supported per agent
|
|
855
|
+
- name: knowledge-archive
|
|
856
|
+
description: "Long-term knowledge base"
|
|
857
|
+
embedding: "letta/letta-free"
|
|
780
858
|
|
|
781
859
|
# File attachments (optional)
|
|
782
860
|
folders:
|
|
@@ -785,7 +863,7 @@ agents:
|
|
|
785
863
|
- "files/*" # Auto-discover files
|
|
786
864
|
- "files/specific-file.pdf" # Specific files
|
|
787
865
|
|
|
788
|
-
embedding: "
|
|
866
|
+
embedding: "openai/text-embedding-3-small" # Optional: embedding model
|
|
789
867
|
```
|
|
790
868
|
|
|
791
869
|
### Shared Blocks Schema
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apply.d.ts","sourceRoot":"","sources":["../../../src/commands/apply/apply.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"apply.d.ts","sourceRoot":"","sources":["../../../src/commands/apply/apply.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAGvC,wBAAsB,YAAY,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,iBA6VrE"}
|
|
@@ -1,9 +1,43 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
36
|
exports.applyCommand = applyCommand;
|
|
4
37
|
const fleet_parser_1 = require("../../lib/fleet-parser");
|
|
5
38
|
const letta_client_1 = require("../../lib/letta-client");
|
|
6
39
|
const block_manager_1 = require("../../lib/block-manager");
|
|
40
|
+
const archive_manager_1 = require("../../lib/archive-manager");
|
|
7
41
|
const agent_manager_1 = require("../../lib/agent-manager");
|
|
8
42
|
const diff_engine_1 = require("../../lib/diff-engine");
|
|
9
43
|
const file_content_tracker_1 = require("../../lib/file-content-tracker");
|
|
@@ -16,6 +50,9 @@ const dry_run_1 = require("../../lib/dry-run");
|
|
|
16
50
|
const logger_1 = require("../../lib/logger");
|
|
17
51
|
const builtin_tools_1 = require("../../lib/builtin-tools");
|
|
18
52
|
const display_1 = require("../../lib/ux/display");
|
|
53
|
+
const mcp_tools_1 = require("../../lib/mcp-tools");
|
|
54
|
+
const agent_manifest_1 = require("../../lib/agent-manifest");
|
|
55
|
+
const path = __importStar(require("path"));
|
|
19
56
|
async function applyCommand(options, command) {
|
|
20
57
|
// Quiet mode overrides verbose
|
|
21
58
|
const verbose = (0, logger_1.isQuietMode)() ? false : (command.parent?.opts().verbose || false);
|
|
@@ -49,13 +86,16 @@ async function applyCommand(options, command) {
|
|
|
49
86
|
// Validate embedding configuration for self-hosted environments
|
|
50
87
|
const isSelfHosted = !process.env.LETTA_BASE_URL?.includes('letta.com');
|
|
51
88
|
if (isSelfHosted) {
|
|
52
|
-
const agentsWithoutEmbedding = config.agents.filter((agent) => !agent.embedding);
|
|
89
|
+
const agentsWithoutEmbedding = config.agents.filter((agent) => !agent.embedding && !agent.embedding_config);
|
|
53
90
|
if (agentsWithoutEmbedding.length > 0) {
|
|
54
91
|
const names = agentsWithoutEmbedding.map((a) => a.name).join(', ');
|
|
55
92
|
throw new Error(`Self-hosted Letta requires explicit embedding configuration.\n` +
|
|
56
93
|
`Agents missing embedding: ${names}\n\n` +
|
|
57
|
-
`Add an embedding field to each agent:\n` +
|
|
58
|
-
` embedding: "openai/text-embedding-3-small"\n
|
|
94
|
+
`Add an embedding or embedding_config field to each agent:\n` +
|
|
95
|
+
` embedding: "openai/text-embedding-3-small"\n` +
|
|
96
|
+
` # OR\n` +
|
|
97
|
+
` embedding_config:\n` +
|
|
98
|
+
` embedding_model: "nomic-embed-text:latest"\n\n` +
|
|
59
99
|
`Common embedding providers:\n` +
|
|
60
100
|
` - openai/text-embedding-3-small\n` +
|
|
61
101
|
` - openai/text-embedding-3-large\n` +
|
|
@@ -72,13 +112,17 @@ async function applyCommand(options, command) {
|
|
|
72
112
|
const client = new letta_client_1.LettaClientWrapper();
|
|
73
113
|
const blockManager = new block_manager_1.BlockManager(client);
|
|
74
114
|
const agentManager = new agent_manager_1.AgentManager(client);
|
|
75
|
-
const
|
|
115
|
+
const archiveManager = new archive_manager_1.ArchiveManager(client);
|
|
116
|
+
const diffEngine = new diff_engine_1.DiffEngine(client, blockManager, archiveManager, parser.basePath);
|
|
76
117
|
const fileTracker = new file_content_tracker_1.FileContentTracker(parser.basePath, parser.storageBackend);
|
|
77
118
|
// Load existing resources
|
|
78
119
|
const loadSpinner = (0, spinner_1.createSpinner)('Loading existing resources...', spinnerEnabled).start();
|
|
79
120
|
if (verbose)
|
|
80
121
|
(0, logger_1.log)('Loading existing blocks...');
|
|
81
122
|
await blockManager.loadExistingBlocks();
|
|
123
|
+
if (verbose)
|
|
124
|
+
(0, logger_1.log)('Loading existing archives...');
|
|
125
|
+
await archiveManager.loadExistingArchives();
|
|
82
126
|
if (verbose)
|
|
83
127
|
(0, logger_1.log)('Loading existing agents...');
|
|
84
128
|
await agentManager.loadExistingAgents();
|
|
@@ -88,6 +132,7 @@ async function applyCommand(options, command) {
|
|
|
88
132
|
const results = await (0, dry_run_1.computeDryRunDiffs)(config, {
|
|
89
133
|
client,
|
|
90
134
|
blockManager,
|
|
135
|
+
archiveManager,
|
|
91
136
|
agentManager,
|
|
92
137
|
diffEngine,
|
|
93
138
|
fileTracker,
|
|
@@ -102,28 +147,8 @@ async function applyCommand(options, command) {
|
|
|
102
147
|
const blockSpinner = (0, spinner_1.createSpinner)('Processing shared blocks...', spinnerEnabled).start();
|
|
103
148
|
const sharedBlockIds = await (0, apply_helpers_1.processSharedBlocks)(config, blockManager, verbose);
|
|
104
149
|
blockSpinner.succeed(`Processed ${sharedBlockIds.size} shared blocks`);
|
|
105
|
-
// Generate tool source hashes and register tools
|
|
106
|
-
const allToolNames = new Set();
|
|
107
|
-
for (const agent of config.agents) {
|
|
108
|
-
for (const toolName of agent.tools || []) {
|
|
109
|
-
allToolNames.add(toolName);
|
|
110
|
-
}
|
|
111
|
-
// Include file search tools for agents with folders
|
|
112
|
-
if ((agent.folders || []).length > 0) {
|
|
113
|
-
for (const fileTool of builtin_tools_1.FILE_SEARCH_TOOLS) {
|
|
114
|
-
allToolNames.add(fileTool);
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
const globalToolSourceHashes = fileTracker.generateToolSourceHashes(Array.from(allToolNames), parser.toolConfigs);
|
|
119
|
-
const toolSpinner = (0, spinner_1.createSpinner)('Registering tools...', spinnerEnabled).start();
|
|
120
|
-
if (verbose)
|
|
121
|
-
(0, logger_1.log)('Registering tools...');
|
|
122
|
-
const { toolNameToId, updatedTools, builtinTools } = await parser.registerRequiredTools(config, client, verbose, globalToolSourceHashes);
|
|
123
|
-
const builtinCount = builtinTools.size;
|
|
124
|
-
const customCount = toolNameToId.size - builtinCount;
|
|
125
|
-
toolSpinner.succeed(`Registered ${customCount} custom, ${builtinCount} builtin tools`);
|
|
126
150
|
// Register MCP servers
|
|
151
|
+
let mcpServerNameToId = new Map();
|
|
127
152
|
if (config.mcp_servers && config.mcp_servers.length > 0) {
|
|
128
153
|
const mcpSpinner = (0, spinner_1.createSpinner)('Registering MCP servers...', spinnerEnabled).start();
|
|
129
154
|
if (verbose)
|
|
@@ -144,6 +169,29 @@ async function applyCommand(options, command) {
|
|
|
144
169
|
(0, logger_1.warn)(`MCP servers failed: ${mcpResult.failed.join(', ')}`);
|
|
145
170
|
}
|
|
146
171
|
}
|
|
172
|
+
mcpServerNameToId = await (0, mcp_tools_1.buildMcpServerRegistry)(client);
|
|
173
|
+
await (0, mcp_tools_1.expandMcpToolsForAgents)(config, client, mcpServerNameToId, verbose);
|
|
174
|
+
// Generate tool source hashes and register tools
|
|
175
|
+
const allToolNames = new Set();
|
|
176
|
+
for (const agent of config.agents) {
|
|
177
|
+
for (const toolName of agent.tools || []) {
|
|
178
|
+
allToolNames.add(toolName);
|
|
179
|
+
}
|
|
180
|
+
// Include file search tools for agents with folders
|
|
181
|
+
if ((agent.folders || []).length > 0) {
|
|
182
|
+
for (const fileTool of builtin_tools_1.FILE_SEARCH_TOOLS) {
|
|
183
|
+
allToolNames.add(fileTool);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
const globalToolSourceHashes = fileTracker.generateToolSourceHashes(Array.from(allToolNames), parser.toolConfigs);
|
|
188
|
+
const toolSpinner = (0, spinner_1.createSpinner)('Registering tools...', spinnerEnabled).start();
|
|
189
|
+
if (verbose)
|
|
190
|
+
(0, logger_1.log)('Registering tools...');
|
|
191
|
+
const { toolNameToId, updatedTools, builtinTools } = await parser.registerRequiredTools(config, client, verbose, globalToolSourceHashes);
|
|
192
|
+
const builtinCount = builtinTools.size;
|
|
193
|
+
const customCount = toolNameToId.size - builtinCount;
|
|
194
|
+
toolSpinner.succeed(`Registered ${customCount} custom, ${builtinCount} builtin tools`);
|
|
147
195
|
// Process folders
|
|
148
196
|
const folderSpinner = (0, spinner_1.createSpinner)('Processing folders...', spinnerEnabled).start();
|
|
149
197
|
const createdFolders = await (0, apply_helpers_1.processFolders)(config, client, parser, options, verbose);
|
|
@@ -155,6 +203,7 @@ async function applyCommand(options, command) {
|
|
|
155
203
|
const succeeded = [];
|
|
156
204
|
const failed = [];
|
|
157
205
|
const skipped = [];
|
|
206
|
+
const appliedAgents = new Map();
|
|
158
207
|
for (const agent of config.agents) {
|
|
159
208
|
if (options.agent && !agent.name.includes(options.agent))
|
|
160
209
|
continue;
|
|
@@ -162,6 +211,7 @@ async function applyCommand(options, command) {
|
|
|
162
211
|
(0, logger_1.log)(` Description: ${agent.description}`);
|
|
163
212
|
(0, logger_1.log)(` Tools: ${agent.tools?.join(', ') || 'none'}`);
|
|
164
213
|
(0, logger_1.log)(` Memory blocks: ${agent.memory_blocks?.length || 0}`);
|
|
214
|
+
(0, logger_1.log)(` Archives: ${agent.archives?.length || 0}`);
|
|
165
215
|
(0, logger_1.log)(` Folders: ${agent.folders?.length || 0}`);
|
|
166
216
|
}
|
|
167
217
|
try {
|
|
@@ -192,7 +242,9 @@ async function applyCommand(options, command) {
|
|
|
192
242
|
toolSourceHashes,
|
|
193
243
|
model: agent.llm_config?.model,
|
|
194
244
|
embedding: agent.embedding,
|
|
245
|
+
embeddingConfig: agent.embedding_config,
|
|
195
246
|
contextWindow: agent.llm_config?.context_window,
|
|
247
|
+
reasoning: agent.reasoning,
|
|
196
248
|
memoryBlocks: (agent.memory_blocks || []).map((block) => ({
|
|
197
249
|
name: block.name,
|
|
198
250
|
description: block.description,
|
|
@@ -200,6 +252,20 @@ async function applyCommand(options, command) {
|
|
|
200
252
|
value: block.value || '',
|
|
201
253
|
mutable: block.mutable
|
|
202
254
|
})),
|
|
255
|
+
archives: (agent.archives || []).map((archive) => {
|
|
256
|
+
const resolved = {
|
|
257
|
+
name: archive.name,
|
|
258
|
+
description: archive.description,
|
|
259
|
+
embedding_config: archive.embedding_config
|
|
260
|
+
};
|
|
261
|
+
if (archive.embedding) {
|
|
262
|
+
resolved.embedding = archive.embedding;
|
|
263
|
+
}
|
|
264
|
+
else if (!archive.embedding_config && agent.embedding) {
|
|
265
|
+
resolved.embedding = agent.embedding;
|
|
266
|
+
}
|
|
267
|
+
return resolved;
|
|
268
|
+
}),
|
|
203
269
|
memoryBlockFileHashes,
|
|
204
270
|
folders: (agent.folders || []).map((folder) => ({
|
|
205
271
|
name: folder.name,
|
|
@@ -215,6 +281,10 @@ async function applyCommand(options, command) {
|
|
|
215
281
|
const changes = agentManager.getConfigChanges(existingAgent, agentConfig);
|
|
216
282
|
if (!changes.hasChanges) {
|
|
217
283
|
skipped.push(agent.name);
|
|
284
|
+
appliedAgents.set(agent.name, {
|
|
285
|
+
id: existingAgent.id,
|
|
286
|
+
resolvedName: existingAgent.name
|
|
287
|
+
});
|
|
218
288
|
if (verbose)
|
|
219
289
|
(0, logger_1.log)(`Agent ${agent.name} already up to date`);
|
|
220
290
|
continue;
|
|
@@ -232,18 +302,24 @@ async function applyCommand(options, command) {
|
|
|
232
302
|
builtinTools,
|
|
233
303
|
createdFolders,
|
|
234
304
|
sharedBlockIds,
|
|
305
|
+
archiveManager,
|
|
235
306
|
spinnerEnabled,
|
|
236
307
|
verbose,
|
|
237
308
|
force: options.force || false,
|
|
238
309
|
previousFolderFileHashes
|
|
239
310
|
});
|
|
240
311
|
succeeded.push(agent.name);
|
|
312
|
+
appliedAgents.set(agent.name, {
|
|
313
|
+
id: existingAgent.id,
|
|
314
|
+
resolvedName: existingAgent.name
|
|
315
|
+
});
|
|
241
316
|
}
|
|
242
317
|
else {
|
|
243
318
|
// Create new agent
|
|
244
|
-
await (0, apply_helpers_1.createNewAgent)(agent, agentName, {
|
|
319
|
+
const createdAgent = await (0, apply_helpers_1.createNewAgent)(agent, agentName, {
|
|
245
320
|
client,
|
|
246
321
|
blockManager,
|
|
322
|
+
archiveManager,
|
|
247
323
|
agentManager,
|
|
248
324
|
toolNameToId,
|
|
249
325
|
builtinTools,
|
|
@@ -254,6 +330,10 @@ async function applyCommand(options, command) {
|
|
|
254
330
|
folderContentHashes
|
|
255
331
|
});
|
|
256
332
|
succeeded.push(agent.name);
|
|
333
|
+
appliedAgents.set(agent.name, {
|
|
334
|
+
id: createdAgent.id,
|
|
335
|
+
resolvedName: createdAgent.name
|
|
336
|
+
});
|
|
257
337
|
}
|
|
258
338
|
}
|
|
259
339
|
catch (err) {
|
|
@@ -273,6 +353,28 @@ async function applyCommand(options, command) {
|
|
|
273
353
|
else {
|
|
274
354
|
(0, logger_1.log)((0, display_1.displayApplySummary)(summaryData));
|
|
275
355
|
}
|
|
356
|
+
// Only generate manifest if explicitly requested via --manifest flag
|
|
357
|
+
if (options.manifest !== undefined) {
|
|
358
|
+
// --manifest without path gives true, --manifest <path> gives the path string
|
|
359
|
+
const manifestPath = typeof options.manifest === 'string'
|
|
360
|
+
? path.resolve(options.manifest)
|
|
361
|
+
: (0, agent_manifest_1.getDefaultManifestPath)(options.file);
|
|
362
|
+
const manifest = (0, agent_manifest_1.buildAgentManifest)({
|
|
363
|
+
config,
|
|
364
|
+
configPath: options.file,
|
|
365
|
+
basePath: parser.basePath,
|
|
366
|
+
appliedAgents,
|
|
367
|
+
agentManager,
|
|
368
|
+
blockManager,
|
|
369
|
+
archiveManager,
|
|
370
|
+
sharedBlockIds,
|
|
371
|
+
toolNameToId,
|
|
372
|
+
folderNameToId: createdFolders,
|
|
373
|
+
mcpServerNameToId
|
|
374
|
+
});
|
|
375
|
+
(0, agent_manifest_1.writeAgentManifest)(manifest, manifestPath);
|
|
376
|
+
(0, logger_1.log)(`Agent manifest written to ${manifestPath}`);
|
|
377
|
+
}
|
|
276
378
|
}
|
|
277
379
|
catch (err) {
|
|
278
380
|
throw new Error(`Apply failed: ${(0, error_handler_1.formatLettaError)(err.message || err)}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apply.js","sourceRoot":"","sources":["../../../src/commands/apply/apply.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"apply.js","sourceRoot":"","sources":["../../../src/commands/apply/apply.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../../src/commands/apply/template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../../src/commands/apply/template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAcrD;;;;GAIG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,EAC5F,MAAM,EAAE,GAAG,EACX,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,GAAG,GACX,OAAO,CAAC,IAAI,CAAC,CAqLf"}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.applyTemplateMode = applyTemplateMode;
|
|
4
4
|
const letta_client_1 = require("../../lib/letta-client");
|
|
5
5
|
const block_manager_1 = require("../../lib/block-manager");
|
|
6
|
+
const archive_manager_1 = require("../../lib/archive-manager");
|
|
6
7
|
const diff_engine_1 = require("../../lib/diff-engine");
|
|
7
8
|
const file_content_tracker_1 = require("../../lib/file-content-tracker");
|
|
8
9
|
const output_formatter_1 = require("../../lib/ux/output-formatter");
|
|
@@ -11,6 +12,7 @@ const minimatch_1 = require("minimatch");
|
|
|
11
12
|
const last_applied_config_1 = require("../../lib/last-applied-config");
|
|
12
13
|
const response_normalizer_1 = require("../../lib/response-normalizer");
|
|
13
14
|
const logger_1 = require("../../lib/logger");
|
|
15
|
+
const mcp_tools_1 = require("../../lib/mcp-tools");
|
|
14
16
|
/**
|
|
15
17
|
* Template mode: apply a template config to all existing agents matching a glob pattern.
|
|
16
18
|
* Uses kubectl-style three-way merge: removes resources only if they were previously
|
|
@@ -54,10 +56,20 @@ async function applyTemplateMode(options, config, parser, command) {
|
|
|
54
56
|
}
|
|
55
57
|
// Initialize managers
|
|
56
58
|
const blockManager = new block_manager_1.BlockManager(client);
|
|
57
|
-
const
|
|
59
|
+
const archiveManager = new archive_manager_1.ArchiveManager(client);
|
|
60
|
+
const diffEngine = new diff_engine_1.DiffEngine(client, blockManager, archiveManager, parser.basePath);
|
|
58
61
|
const fileTracker = new file_content_tracker_1.FileContentTracker(parser.basePath, parser.storageBackend);
|
|
59
62
|
const createdFolders = new Map();
|
|
60
63
|
await blockManager.loadExistingBlocks();
|
|
64
|
+
await archiveManager.loadExistingArchives();
|
|
65
|
+
// Register MCP servers (if configured) and expand MCP tool selections
|
|
66
|
+
if (config.mcp_servers && config.mcp_servers.length > 0) {
|
|
67
|
+
const mcpSpinner = (0, spinner_1.createSpinner)('Registering MCP servers...', spinnerEnabled).start();
|
|
68
|
+
await parser.registerMcpServers(config, client, verbose);
|
|
69
|
+
mcpSpinner.succeed(`Registered ${config.mcp_servers.length} MCP servers`);
|
|
70
|
+
}
|
|
71
|
+
const mcpServerNameToId = await (0, mcp_tools_1.buildMcpServerRegistry)(client);
|
|
72
|
+
await (0, mcp_tools_1.expandMcpToolsForAgents)(config, client, mcpServerNameToId, verbose);
|
|
61
73
|
// Process shared blocks from template
|
|
62
74
|
const sharedBlockIds = new Map();
|
|
63
75
|
if (config.shared_blocks?.length) {
|
|
@@ -95,6 +107,7 @@ async function applyTemplateMode(options, config, parser, command) {
|
|
|
95
107
|
toolSourceHashes,
|
|
96
108
|
sharedBlocks: templateSharedBlocks,
|
|
97
109
|
embedding: templateAgent?.embedding,
|
|
110
|
+
embeddingConfig: templateAgent?.embedding_config,
|
|
98
111
|
model: templateAgent?.llm_config?.model,
|
|
99
112
|
contextWindow: templateAgent?.llm_config?.context_window,
|
|
100
113
|
};
|
|
@@ -103,7 +116,7 @@ async function applyTemplateMode(options, config, parser, command) {
|
|
|
103
116
|
id: existingAgent.id,
|
|
104
117
|
name: existingAgent.name,
|
|
105
118
|
baseName: existingAgent.name,
|
|
106
|
-
configHashes: { overall: '', systemPrompt: '', tools: '', model: '', memoryBlocks: '', folders: '', sharedBlocks: '' },
|
|
119
|
+
configHashes: { overall: '', systemPrompt: '', tools: '', model: '', memoryBlocks: '', folders: '', sharedBlocks: '', archives: '' },
|
|
107
120
|
version: 'latest',
|
|
108
121
|
lastUpdated: existingAgent.updated_at || new Date().toISOString()
|
|
109
122
|
};
|