@christopherlittle51/postclaw 1.0.4 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/README.md +1 -1
  2. package/dashboard/public/app.js +743 -0
  3. package/dashboard/public/index.html +350 -0
  4. package/dashboard/public/styles.css +571 -0
  5. package/dist/dashboard/helpers.d.ts +32 -0
  6. package/dist/dashboard/helpers.d.ts.map +1 -0
  7. package/dist/dashboard/helpers.js +122 -0
  8. package/dist/dashboard/helpers.js.map +1 -0
  9. package/dist/dashboard/router.d.ts +39 -0
  10. package/dist/dashboard/router.d.ts.map +1 -0
  11. package/dist/dashboard/router.js +94 -0
  12. package/dist/dashboard/router.js.map +1 -0
  13. package/dist/dashboard/routes/config.d.ts +3 -0
  14. package/dist/dashboard/routes/config.d.ts.map +1 -0
  15. package/dist/dashboard/routes/config.js +53 -0
  16. package/dist/dashboard/routes/config.js.map +1 -0
  17. package/dist/dashboard/routes/graph.d.ts +11 -0
  18. package/dist/dashboard/routes/graph.d.ts.map +1 -0
  19. package/dist/dashboard/routes/graph.js +131 -0
  20. package/dist/dashboard/routes/graph.js.map +1 -0
  21. package/dist/dashboard/routes/memories.d.ts +12 -0
  22. package/dist/dashboard/routes/memories.d.ts.map +1 -0
  23. package/dist/dashboard/routes/memories.js +199 -0
  24. package/dist/dashboard/routes/memories.js.map +1 -0
  25. package/dist/dashboard/routes/personas.d.ts +11 -0
  26. package/dist/dashboard/routes/personas.d.ts.map +1 -0
  27. package/dist/dashboard/routes/personas.js +71 -0
  28. package/dist/dashboard/routes/personas.js.map +1 -0
  29. package/dist/dashboard/routes/scripts.d.ts +9 -0
  30. package/dist/dashboard/routes/scripts.d.ts.map +1 -0
  31. package/dist/dashboard/routes/scripts.js +62 -0
  32. package/dist/dashboard/routes/scripts.js.map +1 -0
  33. package/dist/dashboard/routes/workspace.d.ts +10 -0
  34. package/dist/dashboard/routes/workspace.d.ts.map +1 -0
  35. package/dist/dashboard/routes/workspace.js +82 -0
  36. package/dist/dashboard/routes/workspace.js.map +1 -0
  37. package/dist/dashboard/server.d.ts +14 -0
  38. package/dist/dashboard/server.d.ts.map +1 -0
  39. package/dist/dashboard/server.js +97 -0
  40. package/dist/dashboard/server.js.map +1 -0
  41. package/dist/index.d.ts +3 -27
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js +142 -46
  44. package/dist/index.js.map +1 -1
  45. package/dist/schemas/validation.d.ts +406 -0
  46. package/dist/schemas/validation.d.ts.map +1 -1
  47. package/dist/schemas/validation.js +231 -4
  48. package/dist/schemas/validation.js.map +1 -1
  49. package/dist/scripts/bootstrap_persona.d.ts.map +1 -1
  50. package/dist/scripts/bootstrap_persona.js +9 -4
  51. package/dist/scripts/bootstrap_persona.js.map +1 -1
  52. package/dist/scripts/bootstrap_tools.js +16 -25
  53. package/dist/scripts/bootstrap_tools.js.map +1 -1
  54. package/dist/scripts/setup-db.d.ts.map +1 -1
  55. package/dist/scripts/setup-db.js +40 -33
  56. package/dist/scripts/setup-db.js.map +1 -1
  57. package/dist/scripts/sleep_cycle.d.ts +12 -0
  58. package/dist/scripts/sleep_cycle.d.ts.map +1 -1
  59. package/dist/scripts/sleep_cycle.js +57 -38
  60. package/dist/scripts/sleep_cycle.js.map +1 -1
  61. package/dist/services/config.d.ts +31 -0
  62. package/dist/services/config.d.ts.map +1 -0
  63. package/dist/services/config.js +125 -0
  64. package/dist/services/config.js.map +1 -0
  65. package/dist/services/db.d.ts.map +1 -1
  66. package/dist/services/db.js +6 -4
  67. package/dist/services/db.js.map +1 -1
  68. package/dist/services/llm.d.ts.map +1 -1
  69. package/dist/services/llm.js +13 -6
  70. package/dist/services/llm.js.map +1 -1
  71. package/dist/services/memoryService.d.ts +10 -38
  72. package/dist/services/memoryService.d.ts.map +1 -1
  73. package/dist/services/memoryService.js +27 -78
  74. package/dist/services/memoryService.js.map +1 -1
  75. package/dist/services/personaService.d.ts +22 -0
  76. package/dist/services/personaService.d.ts.map +1 -0
  77. package/dist/services/personaService.js +148 -0
  78. package/dist/services/personaService.js.map +1 -0
  79. package/dist/tests/dashboard-schemas.test.d.ts +6 -0
  80. package/dist/tests/dashboard-schemas.test.d.ts.map +1 -0
  81. package/dist/tests/dashboard-schemas.test.js +171 -0
  82. package/dist/tests/dashboard-schemas.test.js.map +1 -0
  83. package/dist/tests/helpers.test.d.ts +5 -0
  84. package/dist/tests/helpers.test.d.ts.map +1 -0
  85. package/dist/tests/helpers.test.js +66 -0
  86. package/dist/tests/helpers.test.js.map +1 -0
  87. package/dist/tests/router.test.d.ts +5 -0
  88. package/dist/tests/router.test.d.ts.map +1 -0
  89. package/dist/tests/router.test.js +125 -0
  90. package/dist/tests/router.test.js.map +1 -0
  91. package/openclaw.plugin.json +23 -0
  92. package/package.json +7 -2
package/dist/index.d.ts CHANGED
@@ -1,31 +1,7 @@
1
1
  export { getSql, LM_STUDIO_URL, POSTCLAW_DB_URL, EMBEDDING_MODEL, getEmbedding, hashContent, setEmbeddingConfig, setDbUrl } from "./services/db.js";
2
- export { ensureAgent, searchPostgres, logEpisodicMemory, logEpisodicToolCall, fetchPersonaContext, fetchDynamicTools, storeMemory, updateMemory, linkMemories, storeTool } from "./services/memoryService.js";
3
- export type { ChatCompletionTool } from "./services/memoryService.js";
4
- /** A single message in the OpenAI chat format. */
5
- export interface ChatMessage {
6
- role: "system" | "user" | "assistant" | "tool";
7
- content: string | ContentPart[] | null;
8
- tool_calls?: ToolCallRecord[];
9
- tool_call_id?: string;
10
- name?: string;
11
- }
12
- /** Multimodal content part (text, image, etc). */
13
- export interface ContentPart {
14
- type: string;
15
- text?: string;
16
- image_url?: {
17
- url: string;
18
- };
19
- }
20
- /** A tool call record attached to an assistant message. */
21
- export interface ToolCallRecord {
22
- id?: string;
23
- type?: "function";
24
- function: {
25
- name: string;
26
- arguments: string;
27
- };
28
- }
2
+ export { ensureAgent, searchPostgres, logEpisodicMemory, logEpisodicToolCall, fetchPersonaContext, storeMemory, updateMemory, linkMemories } from "./services/memoryService.js";
3
+ export { listPersonas, getPersona, createPersona, updatePersona, deletePersona } from "./services/personaService.js";
4
+ export type { ChatMessage, ContentPart, ToolCallRecord } from "./schemas/validation.js";
29
5
  declare const openclawPostgresPlugin: {
30
6
  id: string;
31
7
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACpJ,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAC9M,YAAY,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAStE,kDAAkD;AAClD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;IAC/C,OAAO,EAAE,MAAM,GAAG,WAAW,EAAE,GAAG,IAAI,CAAC;IACvC,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,kDAAkD;AAClD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7B;AAED,2DAA2D;AAC3D,MAAM,WAAW,cAAc;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAiDD,QAAA,MAAM,sBAAsB;;;;kBAKZ,GAAG;CAsflB,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACpJ,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChL,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAoBrH,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAgDxF,QAAA,MAAM,sBAAsB;;;;kBAKZ,GAAG;CA2lBlB,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
package/dist/index.js CHANGED
@@ -3,7 +3,7 @@
3
3
  // RE-EXPORTS — Single entry point for downstream consumers
4
4
  // =============================================================================
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.storeTool = exports.linkMemories = exports.updateMemory = exports.storeMemory = exports.fetchDynamicTools = exports.fetchPersonaContext = exports.logEpisodicToolCall = exports.logEpisodicMemory = exports.searchPostgres = exports.ensureAgent = exports.setDbUrl = exports.setEmbeddingConfig = exports.hashContent = exports.getEmbedding = exports.EMBEDDING_MODEL = exports.POSTCLAW_DB_URL = exports.LM_STUDIO_URL = exports.getSql = void 0;
6
+ exports.deletePersona = exports.updatePersona = exports.createPersona = exports.getPersona = exports.listPersonas = exports.linkMemories = exports.updateMemory = exports.storeMemory = exports.fetchPersonaContext = exports.logEpisodicToolCall = exports.logEpisodicMemory = exports.searchPostgres = exports.ensureAgent = exports.setDbUrl = exports.setEmbeddingConfig = exports.hashContent = exports.getEmbedding = exports.EMBEDDING_MODEL = exports.POSTCLAW_DB_URL = exports.LM_STUDIO_URL = exports.getSql = void 0;
7
7
  var db_js_1 = require("./services/db.js");
8
8
  Object.defineProperty(exports, "getSql", { enumerable: true, get: function () { return db_js_1.getSql; } });
9
9
  Object.defineProperty(exports, "LM_STUDIO_URL", { enumerable: true, get: function () { return db_js_1.LM_STUDIO_URL; } });
@@ -19,28 +19,34 @@ Object.defineProperty(exports, "searchPostgres", { enumerable: true, get: functi
19
19
  Object.defineProperty(exports, "logEpisodicMemory", { enumerable: true, get: function () { return memoryService_js_1.logEpisodicMemory; } });
20
20
  Object.defineProperty(exports, "logEpisodicToolCall", { enumerable: true, get: function () { return memoryService_js_1.logEpisodicToolCall; } });
21
21
  Object.defineProperty(exports, "fetchPersonaContext", { enumerable: true, get: function () { return memoryService_js_1.fetchPersonaContext; } });
22
- Object.defineProperty(exports, "fetchDynamicTools", { enumerable: true, get: function () { return memoryService_js_1.fetchDynamicTools; } });
23
22
  Object.defineProperty(exports, "storeMemory", { enumerable: true, get: function () { return memoryService_js_1.storeMemory; } });
24
23
  Object.defineProperty(exports, "updateMemory", { enumerable: true, get: function () { return memoryService_js_1.updateMemory; } });
25
24
  Object.defineProperty(exports, "linkMemories", { enumerable: true, get: function () { return memoryService_js_1.linkMemories; } });
26
- Object.defineProperty(exports, "storeTool", { enumerable: true, get: function () { return memoryService_js_1.storeTool; } });
25
+ var personaService_js_1 = require("./services/personaService.js");
26
+ Object.defineProperty(exports, "listPersonas", { enumerable: true, get: function () { return personaService_js_1.listPersonas; } });
27
+ Object.defineProperty(exports, "getPersona", { enumerable: true, get: function () { return personaService_js_1.getPersona; } });
28
+ Object.defineProperty(exports, "createPersona", { enumerable: true, get: function () { return personaService_js_1.createPersona; } });
29
+ Object.defineProperty(exports, "updatePersona", { enumerable: true, get: function () { return personaService_js_1.updatePersona; } });
30
+ Object.defineProperty(exports, "deletePersona", { enumerable: true, get: function () { return personaService_js_1.deletePersona; } });
27
31
  const db_js_2 = require("./services/db.js");
28
32
  const sleep_cycle_js_1 = require("./scripts/sleep_cycle.js");
33
+ const server_js_1 = require("./dashboard/server.js");
34
+ const personaService_js_2 = require("./services/personaService.js");
29
35
  // =============================================================================
30
36
  // IN-MEMORY DEDUPLICATION
31
37
  // =============================================================================
32
38
  const processedEvents = new Set();
33
- const MAX_CACHE_SIZE = 1000;
34
- /** Cache last message from message_received (fires before before_prompt_build). */
35
- let lastReceivedMessage = "";
39
+ const config_js_1 = require("./services/config.js");
36
40
  function isDuplicate(key) {
41
+ const maxCacheSize = (0, config_js_1.getCurrentConfig)().dedup.maxCacheSize;
37
42
  if (processedEvents.has(key))
38
43
  return true;
39
44
  processedEvents.add(key);
40
- if (processedEvents.size > MAX_CACHE_SIZE)
45
+ if (processedEvents.size > maxCacheSize)
41
46
  processedEvents.clear();
42
47
  return false;
43
48
  }
49
+ let lastReceivedMessage = "";
44
50
  // =============================================================================
45
51
  // HELPERS
46
52
  // =============================================================================
@@ -85,6 +91,13 @@ const openclawPostgresPlugin = {
85
91
  const llmUrl = memoryConfig?.remote?.baseUrl || "http://127.0.0.1:1234/v1";
86
92
  const llmModel = memoryConfig?.remote?.model || memoryConfig?.model || "text-embedding-nomic-embed-text-v2-moe";
87
93
  (0, db_js_3.setEmbeddingConfig)(llmUrl, llmModel);
94
+ const agentId = "main";
95
+ const workspaceDir = api.config?.workspaceDir;
96
+ (0, memoryService_js_2.ensureAgent)(agentId, workspaceDir).then(() => {
97
+ (0, config_js_1.loadConfig)(agentId).then(() => {
98
+ console.log("[PostClaw] Configuration loaded successfully");
99
+ });
100
+ });
88
101
  // -------------------------------------------------------------------------
89
102
  // before_prompt_build — Prune + replace system prompt, inject RAG context
90
103
  //
@@ -113,7 +126,7 @@ const openclawPostgresPlugin = {
113
126
  const provider = ctx?.messageProvider ?? "";
114
127
  const isHeartbeat = provider === "heartbeat" || provider === "cron";
115
128
  // Lazy-register the agent if not already in the DB
116
- await (0, memoryService_js_2.ensureAgent)(agentId);
129
+ await (0, memoryService_js_2.ensureAgent)(agentId, ctx.workspaceDir);
117
130
  console.log(`[PostClaw] before_prompt_build: "${cleanText.substring(0, 80)}..." (heartbeat=${isHeartbeat}, provider=${provider})`);
118
131
  // ==================================================================
119
132
  // STEP 1: Prune the system prompt (strip OpenClaw default bloat)
@@ -134,26 +147,17 @@ const openclawPostgresPlugin = {
134
147
  // ==================================================================
135
148
  // STEP 2: Inject custom memory architecture rules
136
149
  // ==================================================================
137
- sysPrompt += `
138
- ## Memory & Knowledge Management
139
- You are a stateful agent. Your context window is ephemeral but your PostgreSQL memory is permanent.
140
- Silently manage your knowledge — never ask permission to save, link, or update facts.
141
-
142
- - **Retrieval:** Relevant memories (with UUID tags) are auto-injected.
143
- - **Search:** Use the \`memory_search\` tool when you need to recall facts not in the current context.
144
- - **Correct/update facts:** Use the \`memory_update\` tool when a fact is incorrect, outdated, or needs to be updated. When using memory_update, ALWAYS assign an appropriate 'tier' and 'category'.
145
- - **Save new facts:** Use the \`memory_store\` tool when a new fact is learned. When using memory_store, ALWAYS assign an appropriate 'tier' (e.g., 'permanent' for core user identity, 'daily' for current tasks) and 'category'.
146
- - **Link related memories:** Use the \`memory_link\` tool when two memories are related.
147
- - **Store a tool:** Use the \`tool_store\` tool when a new tool schema is learned.
148
- - **Sleep cycle** (consolidates short-term memory): \`deno run -A /home/cl/.openclaw/workspace/scripts/sleep_cycle.ts "${agentId}"\`
149
- - **Always Reply**: ALWAYS conclude your turn with a direct response to the user.
150
- `;
151
- sysPrompt += `
152
- ## Autonomous Heartbeats
153
- OpenClaw provides a native heartbeat loop — never use Linux crontab.
154
- To schedule background tasks, add a checklist to: /home/cl/.openclaw/workspace/HEARTBEAT.md
155
- On heartbeat poll: read that file. If no pending tasks, reply with ONLY: HEARTBEAT_OK
156
- `;
150
+ const config = await (0, config_js_1.loadConfig)(agentId);
151
+ for (const [key, promptValue] of Object.entries(config.prompts)) {
152
+ // Special case for heartbeat
153
+ if (key === 'heartbeatRules') {
154
+ const heartbeatPrompt = promptValue.replace("{{heartbeatFilePath}}", config.prompts.heartbeatFilePath || "/home/cl/.openclaw/workspace/HEARTBEAT.md");
155
+ sysPrompt += `\n\n${heartbeatPrompt}\n`;
156
+ }
157
+ else if (key !== 'heartbeatFilePath') {
158
+ sysPrompt += `\n\n${promptValue}\n`;
159
+ }
160
+ }
157
161
  // ==================================================================
158
162
  // STEP 3: Fetch persona + RAG context from Postgres (in parallel)
159
163
  // ==================================================================
@@ -163,9 +167,15 @@ const openclawPostgresPlugin = {
163
167
  const embedding = hasUserText ? await (0, db_js_3.getEmbedding)(cleanText) : null;
164
168
  const [memoryContext, personaContext] = await Promise.all([
165
169
  // RAG: only when we have user text to search against
166
- hasUserText ? (0, memoryService_js_2.searchPostgres)(agentId, cleanText) : Promise.resolve(null),
170
+ hasUserText ? (0, memoryService_js_2.searchPostgres)(agentId, cleanText, {
171
+ semanticLimit: config.rag.semanticLimit,
172
+ linkedSimilarity: config.rag.linkedSimilarity,
173
+ totalLimit: config.rag.totalLimit
174
+ }) : Promise.resolve(null),
167
175
  // Persona: always fetch (core rules work without embedding)
168
- (0, memoryService_js_2.fetchPersonaContext)(agentId, embedding),
176
+ (0, memoryService_js_2.fetchPersonaContext)(agentId, embedding, {
177
+ situationalLimit: config.persona.situationalLimit
178
+ }),
169
179
  ]);
170
180
  // Persona context → append to the pruned system prompt
171
181
  if (personaContext) {
@@ -211,8 +221,13 @@ const openclawPostgresPlugin = {
211
221
  }),
212
222
  async execute(_toolCallId, args, _signal, _onUpdate, ctx) {
213
223
  const agentId = ctx?.agentId || "main";
214
- await (0, memoryService_js_2.ensureAgent)(agentId);
215
- const result = await (0, memoryService_js_2.searchPostgres)(agentId, args.query);
224
+ await (0, memoryService_js_2.ensureAgent)(agentId, ctx?.workspaceDir);
225
+ const config = (0, config_js_1.getCurrentConfig)();
226
+ const result = await (0, memoryService_js_2.searchPostgres)(agentId, args.query, {
227
+ semanticLimit: config.rag.semanticLimit,
228
+ linkedSimilarity: config.rag.linkedSimilarity,
229
+ totalLimit: config.rag.totalLimit
230
+ });
216
231
  return result || "No memories found matching that query.";
217
232
  },
218
233
  }, { names: ["memory_search"] });
@@ -230,7 +245,7 @@ const openclawPostgresPlugin = {
230
245
  }),
231
246
  async execute(_toolCallId, args, _signal, _onUpdate, ctx) {
232
247
  const agentId = ctx?.agentId || "main";
233
- await (0, memoryService_js_2.ensureAgent)(agentId);
248
+ await (0, memoryService_js_2.ensureAgent)(agentId, ctx?.workspaceDir);
234
249
  const { content, scope, ...options } = args;
235
250
  const result = await (0, memoryService_js_2.storeMemory)(agentId, content, scope, options);
236
251
  return JSON.stringify(result);
@@ -250,7 +265,7 @@ const openclawPostgresPlugin = {
250
265
  }),
251
266
  async execute(_toolCallId, args, _signal, _onUpdate, ctx) {
252
267
  const agentId = ctx?.agentId || "main";
253
- await (0, memoryService_js_2.ensureAgent)(agentId);
268
+ await (0, memoryService_js_2.ensureAgent)(agentId, ctx?.workspaceDir);
254
269
  const { old_memory_id, new_fact, ...options } = args;
255
270
  const result = await (0, memoryService_js_2.updateMemory)(agentId, old_memory_id, new_fact, options);
256
271
  return JSON.stringify(result);
@@ -267,27 +282,69 @@ const openclawPostgresPlugin = {
267
282
  }),
268
283
  async execute(_toolCallId, args, _signal, _onUpdate, ctx) {
269
284
  const agentId = ctx?.agentId || "main";
270
- await (0, memoryService_js_2.ensureAgent)(agentId);
285
+ await (0, memoryService_js_2.ensureAgent)(agentId, ctx?.workspaceDir);
271
286
  const result = await (0, memoryService_js_2.linkMemories)(agentId, args.source_id, args.target_id, args.relationship);
272
287
  return JSON.stringify(result);
273
288
  },
274
289
  }, { names: ["memory_link"] });
275
- // --- tool_store: Store or update a tool schema definition ---
290
+ // --- persona_list: List all persona entries ---
291
+ api.registerTool({
292
+ name: "persona_list",
293
+ description: "List all persona rules for the current agent.",
294
+ parameters: typebox_1.Type.Object({}),
295
+ async execute(_toolCallId, _args, _signal, _onUpdate, ctx) {
296
+ const agentId = ctx?.agentId || "main";
297
+ await (0, memoryService_js_2.ensureAgent)(agentId, ctx?.workspaceDir);
298
+ const personas = await (0, personaService_js_2.listPersonas)(agentId);
299
+ return JSON.stringify(personas);
300
+ },
301
+ }, { names: ["persona_list"] });
302
+ // --- persona_get: Get a specific persona entry ---
276
303
  api.registerTool({
277
- name: "tool_store",
278
- description: "Store or update a tool definition in the environment context database, so it can be dynamically loaded for future conversations.",
304
+ name: "persona_get",
305
+ description: "Get a specific persona rule by its UUID.",
279
306
  parameters: typebox_1.Type.Object({
280
- tool_name: typebox_1.Type.String({ description: "Unique name for the tool" }),
281
- tool_json: typebox_1.Type.String({ description: "Full JSON schema definition of the tool" }),
282
- scope: typebox_1.Type.Optional(typebox_1.Type.Union([typebox_1.Type.Literal("private"), typebox_1.Type.Literal("shared"), typebox_1.Type.Literal("global")], { description: "Visibility scope. Default: private", default: "private" })),
307
+ persona_id: typebox_1.Type.String({ description: "UUID of the persona entry" }),
283
308
  }),
284
309
  async execute(_toolCallId, args, _signal, _onUpdate, ctx) {
285
310
  const agentId = ctx?.agentId || "main";
286
- await (0, memoryService_js_2.ensureAgent)(agentId);
287
- const result = await (0, memoryService_js_2.storeTool)(agentId, args.tool_name, args.tool_json, args.scope);
288
- return JSON.stringify(result);
311
+ await (0, memoryService_js_2.ensureAgent)(agentId, ctx?.workspaceDir);
312
+ const persona = await (0, personaService_js_2.getPersona)(agentId, args.persona_id);
313
+ return persona ? JSON.stringify(persona) : "Persona not found.";
314
+ },
315
+ }, { names: ["persona_get"] });
316
+ // --- persona_update: Update a persona entry ---
317
+ api.registerTool({
318
+ name: "persona_update",
319
+ description: "Update an existing persona rule. You can change the category, content, or whether it is always active.",
320
+ parameters: typebox_1.Type.Object({
321
+ persona_id: typebox_1.Type.String({ description: "UUID of the persona entry to update" }),
322
+ category: typebox_1.Type.Optional(typebox_1.Type.String({ description: "New category name" })),
323
+ content: typebox_1.Type.Optional(typebox_1.Type.String({ description: "New content text" })),
324
+ is_always_active: typebox_1.Type.Optional(typebox_1.Type.Boolean({ description: "Whether this rule is always injected" })),
325
+ }),
326
+ async execute(_toolCallId, args, _signal, _onUpdate, ctx) {
327
+ const agentId = ctx?.agentId || "main";
328
+ await (0, memoryService_js_2.ensureAgent)(agentId, ctx?.workspaceDir);
329
+ const { persona_id, ...updates } = args;
330
+ const result = await (0, personaService_js_2.updatePersona)(agentId, persona_id, updates);
331
+ return result ? JSON.stringify(result) : "Persona not found.";
332
+ },
333
+ }, { names: ["persona_update"] });
334
+ // --- persona_delete: Delete a persona entry ---
335
+ api.registerTool({
336
+ name: "persona_delete",
337
+ description: "Delete a persona rule by its UUID.",
338
+ parameters: typebox_1.Type.Object({
339
+ persona_id: typebox_1.Type.String({ description: "UUID of the persona entry to delete" }),
340
+ }),
341
+ async execute(_toolCallId, args, _signal, _onUpdate, ctx) {
342
+ const agentId = ctx?.agentId || "main";
343
+ await (0, memoryService_js_2.ensureAgent)(agentId, ctx?.workspaceDir);
344
+ const deleted = await (0, personaService_js_2.deletePersona)(agentId, args.persona_id);
345
+ return deleted ? '{"status": "deleted"}' : "Persona not found.";
289
346
  },
290
- }, { names: ["tool_store"] });
347
+ }, { names: ["persona_delete"] });
291
348
  // -------------------------------------------------------------------------
292
349
  // agent_end — Log episodic memories after agent completes
293
350
  //
@@ -302,7 +359,7 @@ const openclawPostgresPlugin = {
302
359
  const provider = ctx?.messageProvider ?? "";
303
360
  const isHeartbeat = provider === "heartbeat" || provider === "cron";
304
361
  // Lazy-register the agent if not already in the DB
305
- await (0, memoryService_js_2.ensureAgent)(agentId);
362
+ await (0, memoryService_js_2.ensureAgent)(agentId, ctx.workspaceDir);
306
363
  console.log(`[PostClaw] agent_end: ${messages.length} messages, success=${event.success}, provider=${provider}`);
307
364
  // Skip all episodic logging for heartbeat/cron runs
308
365
  if (isHeartbeat) {
@@ -468,6 +525,27 @@ const openclawPostgresPlugin = {
468
525
  (0, sleep_cycle_js_1.stopService)();
469
526
  await (0, db_js_2.getSql)().end();
470
527
  });
528
+ postclaw
529
+ .command("dashboard")
530
+ .description("Start the dashboard server standalone")
531
+ .option("--port <port>", "Port to listen on (default: 3333)")
532
+ .option("--bind <address>", "Bind address (default: 127.0.0.1)")
533
+ .action(async (opts) => {
534
+ const pluginCfg = api.config?.plugins?.entries?.postclaw?.config;
535
+ if (pluginCfg?.dbUrl) {
536
+ (0, db_js_3.setDbUrl)(pluginCfg.dbUrl);
537
+ }
538
+ const memCfg = api.config?.agents?.defaults?.memorySearch;
539
+ const llmUrl = memCfg?.remote?.baseUrl || "http://127.0.0.1:1234/v1";
540
+ const embModel = memCfg?.remote?.model || memCfg?.model || "text-embedding-nomic-embed-text-v2-moe";
541
+ (0, db_js_3.setEmbeddingConfig)(llmUrl, embModel);
542
+ const { startDashboard } = await import("./dashboard/server.js");
543
+ startDashboard({
544
+ port: opts.port ? parseInt(opts.port, 10) : undefined,
545
+ bindAddress: opts.bind,
546
+ });
547
+ console.log("[PostClaw] Dashboard running. Press Ctrl+C to stop.");
548
+ });
471
549
  }, { commands: ["postclaw"] });
472
550
  // ─────────────────────────────────────────────────────────────────────────
473
551
  // BACKGROUND SERVICE — Start sleep cycle on an interval
@@ -476,14 +554,30 @@ const openclawPostgresPlugin = {
476
554
  if (sleepIntervalHours !== 0) {
477
555
  // Start the background sleep cycle service (0 = disabled)
478
556
  import("./scripts/sleep_cycle.js").then(({ startService }) => {
557
+ const config = (0, config_js_1.getCurrentConfig)();
479
558
  startService({
480
559
  agentId: "main",
481
560
  intervalHours: sleepIntervalHours || 6,
561
+ config: config.sleep
482
562
  });
483
563
  }).catch((err) => {
484
564
  console.error("[PostClaw] Failed to start sleep service:", err);
485
565
  });
486
566
  }
567
+ // ─────────────────────────────────────────────────────────────────────────
568
+ // BACKGROUND SERVICE — Optional dashboard server
569
+ // ─────────────────────────────────────────────────────────────────────────
570
+ const dashboardEnabled = pluginConfig?.dashboardEnabled;
571
+ if (dashboardEnabled) {
572
+ import("./dashboard/server.js").then(({ startDashboard }) => {
573
+ startDashboard({
574
+ port: pluginConfig?.dashboardPort,
575
+ bindAddress: pluginConfig?.dashboardBindAddress,
576
+ });
577
+ }).catch((err) => {
578
+ console.error("[PostClaw] Failed to start dashboard:", err);
579
+ });
580
+ }
487
581
  console.log("[PostClaw] Plugin hooks registered successfully");
488
582
  },
489
583
  };
@@ -501,6 +595,8 @@ if (require.main === module) {
501
595
  // Graceful shutdown
502
596
  process.on("SIGINT", async () => {
503
597
  console.log("\nShutting down...");
598
+ (0, sleep_cycle_js_1.stopService)();
599
+ (0, server_js_1.stopDashboard)();
504
600
  await (0, db_js_2.getSql)().end();
505
601
  process.exit(0);
506
602
  });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}