feat(conscience): Aster reset commands, subagent thread chunking, conscience wiring
[IN TESTING — production on ani@wiuf.net, treat as experimental] bot.ts — !reset aster cycles only Aster's conversation (leaves Ani's alone), patches the systemd service file in place so restarts also use the new conv ID. Full !reset now co-cycles Aster's conversation alongside Ani's so failure notifications target the active context. Both commands write through to lettabot-agent.json and daemon-reload immediately. bot.ts — subagent thread results are now chunked at 16KB before posting to Matrix threads. Previously truncated at 800 chars, cutting results mid-sentence. store.ts / letta-api.ts — createConversationForAgent exposed for use by reset commands. Store gains setAgentField for targeted JSON updates without clobbering. config/types.ts, channels/factory.ts — conscience env var plumbing (CONSCIENCE_AGENT_ID, CONSCIENCE_CONVERSATION_ID) wired through the config surface. memfs-server.py — git sidecar for local memfs serving (port 8285). Serves bare repos from ~/.letta/memfs/repository/ over HTTP. Required by letta-code memfs in self-hosted mode.
This commit is contained in:
36
package-lock.json
generated
36
package-lock.json
generated
@@ -13,7 +13,7 @@
|
||||
"@clack/prompts": "^0.11.0",
|
||||
"@hapi/boom": "^10.0.1",
|
||||
"@letta-ai/letta-client": "^1.7.12",
|
||||
"@letta-ai/letta-code-sdk": "^0.1.11",
|
||||
"@letta-ai/letta-code-sdk": "^0.1.14",
|
||||
"@types/express": "^5.0.6",
|
||||
"@types/node": "^25.0.10",
|
||||
"@types/node-schedule": "^2.1.8",
|
||||
@@ -1376,9 +1376,9 @@
|
||||
"license": "Apache-2.0"
|
||||
},
|
||||
"node_modules/@letta-ai/letta-code": {
|
||||
"version": "0.18.2",
|
||||
"resolved": "https://registry.npmjs.org/@letta-ai/letta-code/-/letta-code-0.18.2.tgz",
|
||||
"integrity": "sha512-HzNqMjBUiAq5IyZ8DSSWBHq/ahkd4RRYfO/V9eXMBZRTRpLb7Dae2hwvicE+aRSLmJqMdxpH6WI7+ZHKlFsILQ==",
|
||||
"version": "0.19.5",
|
||||
"resolved": "https://registry.npmjs.org/@letta-ai/letta-code/-/letta-code-0.19.5.tgz",
|
||||
"integrity": "sha512-INEDS79dkzJoQyL3IJRof+HNob3GZXgAge/JdJRFaVfJhU/o/6aTPcPWpQwxygE5ExIDSUlL85OlZ3CcBv0TyA==",
|
||||
"hasInstallScript": true,
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
@@ -1387,6 +1387,7 @@
|
||||
"highlight.js": "^11.11.1",
|
||||
"ink-link": "^5.0.0",
|
||||
"lowlight": "^3.3.0",
|
||||
"node-pty": "^1.1.0",
|
||||
"open": "^10.2.0",
|
||||
"sharp": "^0.34.5",
|
||||
"ws": "^8.19.0"
|
||||
@@ -1402,12 +1403,12 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@letta-ai/letta-code-sdk": {
|
||||
"version": "0.1.11",
|
||||
"resolved": "https://registry.npmjs.org/@letta-ai/letta-code-sdk/-/letta-code-sdk-0.1.11.tgz",
|
||||
"integrity": "sha512-P1ueLWQuCnERizrvU3fZ9/rrMAJSIT+2j2/xxptqxMOKUuUrDmvAix1/eyDXqAwZkBVGImyqLGm4zqwNVNA7Dg==",
|
||||
"version": "0.1.14",
|
||||
"resolved": "https://registry.npmjs.org/@letta-ai/letta-code-sdk/-/letta-code-sdk-0.1.14.tgz",
|
||||
"integrity": "sha512-rSMp7kYwRZ4PAe3jET+PETFesuYCbeodEp6Qf7a5rLu97epqs+zNegSR+UUgq6c9+c5eqbuo+BsRThTKiSNJkA==",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@letta-ai/letta-code": "0.18.2"
|
||||
"@letta-ai/letta-code": "0.19.5"
|
||||
}
|
||||
},
|
||||
"node_modules/@letta-ai/letta-code/node_modules/balanced-match": {
|
||||
@@ -5669,9 +5670,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/ink/node_modules/type-fest": {
|
||||
"version": "5.4.4",
|
||||
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.4.4.tgz",
|
||||
"integrity": "sha512-JnTrzGu+zPV3aXIUhnyWJj4z/wigMsdYajGLIYakqyOW1nPllzXEJee0QQbHj+CTIQtXGlAjuK0UY+2xTyjVAw==",
|
||||
"version": "5.5.0",
|
||||
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.5.0.tgz",
|
||||
"integrity": "sha512-PlBfpQwiUvGViBNX84Yxwjsdhd1TUlXr6zjX7eoirtCPIr08NAmxwa+fcYBTeRQxHo9YC9wwF3m9i700sHma8g==",
|
||||
"license": "(MIT OR CC0-1.0)",
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
@@ -7696,8 +7697,7 @@
|
||||
"version": "7.1.1",
|
||||
"resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz",
|
||||
"integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==",
|
||||
"license": "MIT",
|
||||
"optional": true
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/node-domexception": {
|
||||
"version": "1.0.0",
|
||||
@@ -7839,6 +7839,16 @@
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
}
|
||||
},
|
||||
"node_modules/node-pty": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/node-pty/-/node-pty-1.1.0.tgz",
|
||||
"integrity": "sha512-20JqtutY6JPXTUnL0ij1uad7Qe1baT46lyolh2sSENDd4sTzKZ4nmAFkeAARDKwmlLjPx6XKRlwRUxwjOy+lUg==",
|
||||
"hasInstallScript": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"node-addon-api": "^7.1.0"
|
||||
}
|
||||
},
|
||||
"node_modules/node-schedule": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/node-schedule/-/node-schedule-2.1.1.tgz",
|
||||
|
||||
Reference in New Issue
Block a user