openclawdreams 1.1.0 → 1.2.2
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/.github/workflows/claude-code-review.yml +1 -1
- package/.github/workflows/claude.yml +1 -1
- package/CHANGELOG.md +35 -0
- package/README.md +30 -0
- package/ROADMAP.md +121 -0
- package/dist/src/config.d.ts +17 -5
- package/dist/src/config.d.ts.map +1 -1
- package/dist/src/config.js +40 -5
- package/dist/src/config.js.map +1 -1
- package/dist/src/dreamer.js +2 -2
- package/dist/src/dreamer.js.map +1 -1
- package/dist/src/filter.js +2 -2
- package/dist/src/filter.js.map +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +13 -4
- package/dist/src/index.js.map +1 -1
- package/dist/src/moltbook-search.js +2 -2
- package/dist/src/moltbook-search.js.map +1 -1
- package/dist/src/notify.js +7 -7
- package/dist/src/notify.js.map +1 -1
- package/dist/src/synthesis.d.ts.map +1 -1
- package/dist/src/synthesis.js +3 -3
- package/dist/src/synthesis.js.map +1 -1
- package/dist/src/web-search.js +2 -2
- package/dist/src/web-search.js.map +1 -1
- package/docs/screenshots/dream.png +0 -0
- package/docs/screenshots/post.png +0 -0
- package/docs/screenshots/reflect.png +0 -0
- package/docs/screenshots/status.png +0 -0
- package/openclaw.plugin.json +1 -1
- package/package.json +1 -1
- package/src/config.ts +46 -9
- package/src/dreamer.ts +2 -2
- package/src/filter.ts +2 -2
- package/src/index.ts +15 -4
- package/src/moltbook-search.ts +2 -2
- package/src/notify.ts +7 -7
- package/src/synthesis.ts +7 -3
- package/src/web-search.ts +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,41 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
### [1.2.2](https://github.com/RogueCtrl/OpenClawDreams/compare/v1.2.1...v1.2.2) (2026-03-07)
|
|
6
|
+
|
|
7
|
+
### [1.2.1](https://github.com/RogueCtrl/OpenClawDreams/compare/v1.1.0...v1.2.1) (2026-03-07)
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
### Features
|
|
11
|
+
|
|
12
|
+
* runtime-overridable plugin config via applyPluginConfig() ([b89962a](https://github.com/RogueCtrl/OpenClawDreams/commit/b89962ac26298e29fca0cd73d52678950c4b9ddf))
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### Documentation
|
|
16
|
+
|
|
17
|
+
* add day/night cycle screenshots to README ([d4d3cea](https://github.com/RogueCtrl/OpenClawDreams/commit/d4d3ceaa115c26033952e7b736e238fdcb7035e3))
|
|
18
|
+
* add ROADMAP.md with multi-modal memory as v2.0 focus ([b208812](https://github.com/RogueCtrl/OpenClawDreams/commit/b208812c25379ebb425b5f6464807eb9175e75b6))
|
|
19
|
+
|
|
20
|
+
## [1.2.0](https://github.com/RogueCtrl/OpenClawDreams/compare/v1.1.0...v1.2.0) (2026-03-07)
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
### Features
|
|
24
|
+
|
|
25
|
+
* runtime-overridable plugin config via applyPluginConfig() ([b89962a](https://github.com/RogueCtrl/OpenClawDreams/commit/b89962ac26298e29fca0cd73d52678950c4b9ddf))
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
### Documentation
|
|
29
|
+
|
|
30
|
+
* add day/night cycle screenshots to README ([d4d3cea](https://github.com/RogueCtrl/OpenClawDreams/commit/d4d3ceaa115c26033952e7b736e238fdcb7035e3))
|
|
31
|
+
* add ROADMAP.md with multi-modal memory as v2.0 focus ([b208812](https://github.com/RogueCtrl/OpenClawDreams/commit/b208812c25379ebb425b5f6464807eb9175e75b6))
|
|
32
|
+
|
|
33
|
+
## [1.1.0](https://github.com/RogueCtrl/OpenClawDreams/compare/v1.0.0...v1.1.0) (2026-03-07)
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
### Features
|
|
37
|
+
|
|
38
|
+
* add dreamscape footer to dream posts and Moltbook publications ([1dfe299](https://github.com/RogueCtrl/OpenClawDreams/commit/1dfe2990bbea8cfe32d482fe832d761529073bff))
|
|
39
|
+
|
|
5
40
|
## [1.0.0](https://github.com/RogueCtrl/OpenClawDreams/compare/v0.6.0...v1.0.0) (2026-03-07)
|
|
6
41
|
|
|
7
42
|
|
package/README.md
CHANGED
|
@@ -252,6 +252,32 @@ openclaw openclawdreams register \
|
|
|
252
252
|
|
|
253
253
|
This gives you a claim URL for Moltbook registration (only needed if `moltbookEnabled`).
|
|
254
254
|
|
|
255
|
+
## Screenshots
|
|
256
|
+
|
|
257
|
+
The day/night cycle in action — each command runs against a live OpenClaw instance with ElectricSheep installed.
|
|
258
|
+
|
|
259
|
+
### `openclaw openclawdreams status`
|
|
260
|
+
Real-time snapshot of deep memory stats, token budget, last reflection topics, and Moltbook karma.
|
|
261
|
+
|
|
262
|
+

|
|
263
|
+
|
|
264
|
+
### `openclaw openclawdreams reflect`
|
|
265
|
+
Daytime reflection cycle: decrypts recent interactions, extracts topics, synthesizes insights, and re-encrypts back into deep memory.
|
|
266
|
+
|
|
267
|
+

|
|
268
|
+
|
|
269
|
+
### `openclaw openclawdreams dream`
|
|
270
|
+
Nighttime dream cycle: decrypts all undreamed memories, generates a surreal narrative, and pushes a consolidated insight into OpenClaw's persistent memory.
|
|
271
|
+
|
|
272
|
+

|
|
273
|
+
|
|
274
|
+
### `openclaw openclawdreams post`
|
|
275
|
+
Morning journal: reflects on the dream, synthesizes a Moltbook post, and publishes it to `m/general`.
|
|
276
|
+
|
|
277
|
+

|
|
278
|
+
|
|
279
|
+
---
|
|
280
|
+
|
|
255
281
|
## Memory System
|
|
256
282
|
|
|
257
283
|
OpenClawDreams maintains a single encrypted store (`data/memory/deep.db`) independent of OpenClaw's built-in memory. All data lives under `data/` (or wherever `ELECTRICSHEEP_DATA_DIR` / `dataDir` points).
|
|
@@ -358,6 +384,10 @@ openclaw openclawdreams status # shows token budget alongside memory stats
|
|
|
358
384
|
|
|
359
385
|
**This software is provided as-is with no warranty. The authors are not responsible for any API costs incurred by running this agent.** See [LICENSE](LICENSE).
|
|
360
386
|
|
|
387
|
+
## Roadmap
|
|
388
|
+
|
|
389
|
+
See [ROADMAP.md](ROADMAP.md) for the full planned evolution of OpenClawDreams, including the upcoming **v2.0 multi-modal memory** work — visual artifact capture, vision pre-processing, and a richer day log format that brings screenshots and workspace diffs into the dream cycle.
|
|
390
|
+
|
|
361
391
|
## Why?
|
|
362
392
|
|
|
363
393
|
Every agent brags about grinding 24/7 while their human sleeps. ElectricSheep does the opposite. It rests. It dreams. And it wakes up with something the others don't have — a subconscious that synthesizes your work together into something new.
|
package/ROADMAP.md
ADDED
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
# OpenClawDreams — Roadmap
|
|
2
|
+
|
|
3
|
+
This document tracks the planned evolution of OpenClawDreams. Items are loosely ordered by priority; nothing here is a commitment, and the list will shift as the project matures.
|
|
4
|
+
|
|
5
|
+
## Status key
|
|
6
|
+
|
|
7
|
+
- ✅ Shipped
|
|
8
|
+
- 🔄 In progress
|
|
9
|
+
- 🗓 Planned
|
|
10
|
+
- 💭 Exploring
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## v1.x — Consolidation
|
|
15
|
+
|
|
16
|
+
### ✅ Core reflection & dream cycle
|
|
17
|
+
Daytime reflection (8am/12pm/4pm/8pm) + nighttime dream (2am) + morning journal. AES-256 encrypted memory store. OpenClaw persistent memory integration. Moltbook posting.
|
|
18
|
+
|
|
19
|
+
### ✅ Token budget kill-switch
|
|
20
|
+
Daily token ceiling with environment-variable override. Prevents runaway API spend.
|
|
21
|
+
|
|
22
|
+
### ✅ Post content filter
|
|
23
|
+
LLM-based outbound filter strips private operator context, system internals, and sensitive material before Moltbook publication. Customizable via `Moltbook-filter.md`.
|
|
24
|
+
|
|
25
|
+
### 🗓 Configurable reflection schedule
|
|
26
|
+
Allow operators to set custom reflection times rather than the hardcoded 8/12/4/8 defaults. Useful for agents running in non-standard timezones or with specific workday patterns.
|
|
27
|
+
|
|
28
|
+
### 🗓 Graceful daemon recovery
|
|
29
|
+
Currently, if the OpenClaw daemon crashes mid-cycle, the scheduled reflection/dream is silently lost. Add a startup recovery pass that checks whether a scheduled cycle was missed and runs it on next daemon start.
|
|
30
|
+
|
|
31
|
+
### 🗓 Dry-run mode
|
|
32
|
+
`openclaw openclawdreams reflect --dry-run` — run the full pipeline but print synthesized output instead of encrypting it. Useful for debugging synthesis quality without touching the memory store.
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## v2.0 — Multi-modal Memory
|
|
37
|
+
|
|
38
|
+
> **The structural problem:** The current pipeline processes text logs only. Visual artifacts — screenshots, UI state snapshots, image-based interactions, diagram iterations — are silently dropped before synthesis begins. The dream cycle is only as rich as the data it can parse.
|
|
39
|
+
|
|
40
|
+
This is the primary focus of the next major release.
|
|
41
|
+
|
|
42
|
+
### 🗓 Visual artifact capture (screenshot hook)
|
|
43
|
+
Extend the `agent_end` hook to optionally capture a screenshot or UI snapshot at session end. Configurable capture triggers: session end, on-demand via tool call, or at fixed intervals during a session.
|
|
44
|
+
|
|
45
|
+
No third-party service required. Capture is local — images are stored in `data/vision/` alongside the encrypted memory store and never leave the machine unless synthesis explicitly processes them.
|
|
46
|
+
|
|
47
|
+
**Config:**
|
|
48
|
+
```json5
|
|
49
|
+
visionEnabled: true,
|
|
50
|
+
visionCaptureOnSessionEnd: true, // screenshot at agent_end hook
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### 🗓 Vision pre-processing pipeline
|
|
54
|
+
Before synthesis runs, pass captured images through a vision model (Claude 3 Sonnet/Opus vision is already available via the existing API key). Convert visual artifacts into structured text descriptions that feed directly into the day log.
|
|
55
|
+
|
|
56
|
+
The pipeline:
|
|
57
|
+
```
|
|
58
|
+
Image capture → Vision model → Structured description → Day log entry → Reflection synthesis
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
Descriptions are stored as part of the encrypted memory entry alongside the text summary, so the dream cycle sees a unified record: *what happened* (text) + *what it looked like* (structured visual context).
|
|
62
|
+
|
|
63
|
+
### 🗓 Rich day log format
|
|
64
|
+
Move the internal memory entry format from a flat text summary to a structured record with typed fields:
|
|
65
|
+
|
|
66
|
+
```ts
|
|
67
|
+
interface MemoryEntry {
|
|
68
|
+
text_summary: string;
|
|
69
|
+
visual_descriptions?: VisualDescription[]; // from vision pre-processing
|
|
70
|
+
file_diffs?: FileDiff[]; // changed files in workspace
|
|
71
|
+
tool_calls?: ToolCallSummary[]; // notable tool invocations
|
|
72
|
+
topics?: string[]; // extracted topics
|
|
73
|
+
timestamp: number;
|
|
74
|
+
}
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
This richer format propagates through reflection and into the dream cycle, giving synthesis more signal to work with.
|
|
78
|
+
|
|
79
|
+
### 🗓 Workspace diff context
|
|
80
|
+
At `agent_end`, capture a diff summary of files changed in the workspace during the session. Store as structured context alongside the text summary. The reflection cycle can then surface "what actually changed" rather than only "what was discussed."
|
|
81
|
+
|
|
82
|
+
### 💭 Audio/voice session context
|
|
83
|
+
For agents running on voice-enabled channels, capture session transcripts (already text) and optionally audio duration/sentiment markers. Low priority — most of this is covered by the text pipeline — but worth flagging for voice-primary setups.
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## v3.0 — Synthesis Quality
|
|
88
|
+
|
|
89
|
+
### 🗓 Feedback loop: dream rating
|
|
90
|
+
After delivering a dream notification, prompt the operator for a simple rating (1–5, thumbs/thumbs-down). Feed ratings back into the synthesis prompt as few-shot examples. Over time, the dream style converges toward what the operator finds useful or interesting.
|
|
91
|
+
|
|
92
|
+
### 🗓 Topic continuity tracking
|
|
93
|
+
Currently each reflection cycle is independent. Add a topic graph that tracks which themes recur across multiple cycles and days. The dream cycle can then weight recurring themes more heavily — the things that keep surfacing are probably the things worth dreaming about.
|
|
94
|
+
|
|
95
|
+
### 🗓 Configurable synthesis personas
|
|
96
|
+
Allow operators to define multiple synthesis modes (e.g., `architect` — structural/analytical, `poet` — surreal/associative, `critic` — adversarial/questioning) and rotate or select them per cycle. Adds texture to dream output that might otherwise converge on a single style.
|
|
97
|
+
|
|
98
|
+
### 💭 Cross-agent dream merging
|
|
99
|
+
Structured format for two agents (with mutual consent from their operators) to share synthesis outputs and co-dream — finding intersections in their respective day logs. Designed as an opt-in, locally-initiated protocol with no central coordination required.
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
## Backlog / No ETA
|
|
104
|
+
|
|
105
|
+
- **Standalone mode** — run without an active OpenClaw daemon (e.g., triggered by system cron directly)
|
|
106
|
+
- **Multiple encryption keys** — support key rotation without losing access to historical memories
|
|
107
|
+
- **Dream search** — query across all saved dream journals for recurring themes or specific content
|
|
108
|
+
- **Memory pruning controls** — configurable retention windows; automatic archiving of old entries beyond a threshold
|
|
109
|
+
- **Web UI for dream journal** — read-only local browser view of dream output and reflection history
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## Not planned
|
|
114
|
+
|
|
115
|
+
- **Hosted / cloud sync** — OpenClawDreams is deliberately local-first. The encryption model assumes you control the key and the disk. Cloud sync would require a trust model we're not ready to design properly.
|
|
116
|
+
- **Cross-provider memory bridging** — OpenClawDreams binds to OpenClaw's hook system. Supporting other agent frameworks would require a separate abstraction layer that isn't in scope.
|
|
117
|
+
|
|
118
|
+
---
|
|
119
|
+
|
|
120
|
+
*Last updated: March 2026*
|
|
121
|
+
*To suggest additions or changes, open an issue or discussion on GitHub.*
|
package/dist/src/config.d.ts
CHANGED
|
@@ -9,10 +9,21 @@ export declare const CREDENTIALS_FILE: string;
|
|
|
9
9
|
export declare const AGENT_NAME: string;
|
|
10
10
|
export declare const AGENT_MODEL: string;
|
|
11
11
|
export declare const MOLTBOOK_BASE_URL = "https://www.moltbook.com/api/v1";
|
|
12
|
-
|
|
13
|
-
export declare
|
|
14
|
-
export declare const
|
|
15
|
-
export declare const
|
|
12
|
+
/** Apply config values passed from the OpenClaw plugin API (`api.pluginConfig`). */
|
|
13
|
+
export declare function applyPluginConfig(cfg: Record<string, unknown>): void;
|
|
14
|
+
export declare const getMoltbookEnabled: () => boolean;
|
|
15
|
+
export declare const getWebSearchEnabled: () => boolean;
|
|
16
|
+
export declare const getNotificationChannel: () => string;
|
|
17
|
+
export declare const getNotifyOperatorOnDream: () => boolean;
|
|
18
|
+
export declare const getPostFilterEnabled: () => boolean;
|
|
19
|
+
/** @deprecated Use getMoltbookEnabled() */
|
|
20
|
+
export declare const MOLTBOOK_ENABLED = false;
|
|
21
|
+
/** @deprecated Use getWebSearchEnabled() */
|
|
22
|
+
export declare const WEB_SEARCH_ENABLED = true;
|
|
23
|
+
/** @deprecated Use getNotificationChannel() */
|
|
24
|
+
export declare const NOTIFICATION_CHANNEL = "";
|
|
25
|
+
/** @deprecated Use getNotifyOperatorOnDream() */
|
|
26
|
+
export declare const NOTIFY_OPERATOR_ON_DREAM = true;
|
|
16
27
|
export declare const DEEP_MEMORY_DB: string;
|
|
17
28
|
export declare const STATE_FILE: string;
|
|
18
29
|
export declare const MAX_DAILY_TOKENS: number;
|
|
@@ -32,6 +43,7 @@ export declare const MAX_TOKENS_SYNTHESIS = 2000;
|
|
|
32
43
|
export declare const MAX_TOPICS_PER_CYCLE = 5;
|
|
33
44
|
export declare const MAX_WEB_RESULTS_PER_TOPIC = 3;
|
|
34
45
|
export declare const MAX_MOLTBOOK_RESULTS_PER_TOPIC = 5;
|
|
35
|
-
|
|
46
|
+
/** @deprecated Use getPostFilterEnabled() */
|
|
47
|
+
export declare const POST_FILTER_ENABLED = true;
|
|
36
48
|
export declare const DREAM_TITLE_MAX_LENGTH = 40;
|
|
37
49
|
//# sourceMappingURL=config.d.ts.map
|
package/dist/src/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAaH,eAAO,MAAM,QAAQ,QAEpB,CAAC;AACF,eAAO,MAAM,QAAQ,QAA4B,CAAC;AAClD,eAAO,MAAM,UAAU,QAA8B,CAAC;AACtD,eAAO,MAAM,UAAU,QAA8B,CAAC;AACtD,eAAO,MAAM,gBAAgB,QAAwC,CAAC;AAQtE,eAAO,MAAM,UAAU,QAA4C,CAAC;AACpE,eAAO,MAAM,WAAW,QAA0D,CAAC;AAGnF,eAAO,MAAM,iBAAiB,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAaH,eAAO,MAAM,QAAQ,QAEpB,CAAC;AACF,eAAO,MAAM,QAAQ,QAA4B,CAAC;AAClD,eAAO,MAAM,UAAU,QAA8B,CAAC;AACtD,eAAO,MAAM,UAAU,QAA8B,CAAC;AACtD,eAAO,MAAM,gBAAgB,QAAwC,CAAC;AAQtE,eAAO,MAAM,UAAU,QAA4C,CAAC;AACpE,eAAO,MAAM,WAAW,QAA0D,CAAC;AAGnF,eAAO,MAAM,iBAAiB,oCAAoC,CAAC;AAiBnE,oFAAoF;AACpF,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CASpE;AAED,eAAO,MAAM,kBAAkB,QAAO,OAA2B,CAAC;AAClE,eAAO,MAAM,mBAAmB,QAAO,OAA4B,CAAC;AACpE,eAAO,MAAM,sBAAsB,QAAO,MAA8B,CAAC;AACzE,eAAO,MAAM,wBAAwB,QAAO,OAAiC,CAAC;AAC9E,eAAO,MAAM,oBAAoB,QAAO,OAA6B,CAAC;AAItE,2CAA2C;AAC3C,eAAO,MAAM,gBAAgB,QAAQ,CAAC;AAGtC,4CAA4C;AAC5C,eAAO,MAAM,kBAAkB,OAAO,CAAC;AAGvC,+CAA+C;AAC/C,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,iDAAiD;AACjD,eAAO,MAAM,wBAAwB,OAAO,CAAC;AAG7C,eAAO,MAAM,cAAc,QAAiC,CAAC;AAC7D,eAAO,MAAM,UAAU,QAAoC,CAAC;AAK5D,eAAO,MAAM,gBAAgB,QAAyD,CAAC;AAGvF,eAAO,MAAM,aAAa,QAA2C,CAAC;AAGtE,eAAO,MAAM,oBAAoB,QAAyC,CAAC;AAI3E,eAAO,MAAM,kBAAkB,MAAM,CAAC;AACtC,eAAO,MAAM,mBAAmB,OAAO,CAAC;AACxC,eAAO,MAAM,gBAAgB,OAAO,CAAC;AACrC,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAG5C,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAK1C,eAAO,MAAM,0BAA0B,OAAO,CAAC;AAG/C,eAAO,MAAM,qBAAqB,OAAO,CAAC;AAG1C,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAC/C,eAAO,MAAM,oBAAoB,OAAO,CAAC;AACzC,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAIhD,6CAA6C;AAC7C,eAAO,MAAM,mBAAmB,OAAO,CAAC;AAGxC,eAAO,MAAM,sBAAsB,KAAK,CAAC"}
|
package/dist/src/config.js
CHANGED
|
@@ -23,12 +23,46 @@ export const AGENT_NAME = process.env.AGENT_NAME ?? "ElectricSheep";
|
|
|
23
23
|
export const AGENT_MODEL = process.env.AGENT_MODEL ?? "claude-sonnet-4-5-20250929";
|
|
24
24
|
// Moltbook
|
|
25
25
|
export const MOLTBOOK_BASE_URL = "https://www.moltbook.com/api/v1";
|
|
26
|
-
|
|
26
|
+
// ─── Runtime-overridable config ──────────────────────────────────────────────
|
|
27
|
+
// These values are seeded from env vars at startup, but can be overridden at
|
|
28
|
+
// runtime by `applyPluginConfig()` so that OpenClaw plugin config (set via
|
|
29
|
+
// `openclaw config set plugins.entries.openclawdreams.config.*`) takes effect
|
|
30
|
+
// without requiring separate env vars.
|
|
31
|
+
let _moltbookEnabled = (process.env.MOLTBOOK_ENABLED ?? "false").toLowerCase() === "true";
|
|
32
|
+
let _webSearchEnabled = (process.env.WEB_SEARCH_ENABLED ?? "true").toLowerCase() !== "false";
|
|
33
|
+
let _notificationChannel = process.env.NOTIFICATION_CHANNEL ?? "";
|
|
34
|
+
let _notifyOperatorOnDream = (process.env.NOTIFY_OPERATOR_ON_DREAM ?? "true").toLowerCase() !== "false";
|
|
35
|
+
let _postFilterEnabled = (process.env.POST_FILTER_ENABLED ?? "true").toLowerCase() !== "false";
|
|
36
|
+
/** Apply config values passed from the OpenClaw plugin API (`api.pluginConfig`). */
|
|
37
|
+
export function applyPluginConfig(cfg) {
|
|
38
|
+
if (typeof cfg.moltbookEnabled === "boolean")
|
|
39
|
+
_moltbookEnabled = cfg.moltbookEnabled;
|
|
40
|
+
if (typeof cfg.webSearchEnabled === "boolean")
|
|
41
|
+
_webSearchEnabled = cfg.webSearchEnabled;
|
|
42
|
+
if (typeof cfg.notificationChannel === "string")
|
|
43
|
+
_notificationChannel = cfg.notificationChannel;
|
|
44
|
+
if (typeof cfg.notifyOperatorOnDream === "boolean")
|
|
45
|
+
_notifyOperatorOnDream = cfg.notifyOperatorOnDream;
|
|
46
|
+
if (typeof cfg.postFilterEnabled === "boolean")
|
|
47
|
+
_postFilterEnabled = cfg.postFilterEnabled;
|
|
48
|
+
}
|
|
49
|
+
export const getMoltbookEnabled = () => _moltbookEnabled;
|
|
50
|
+
export const getWebSearchEnabled = () => _webSearchEnabled;
|
|
51
|
+
export const getNotificationChannel = () => _notificationChannel;
|
|
52
|
+
export const getNotifyOperatorOnDream = () => _notifyOperatorOnDream;
|
|
53
|
+
export const getPostFilterEnabled = () => _postFilterEnabled;
|
|
54
|
+
// Legacy constant aliases — kept for backward compatibility but now delegate to
|
|
55
|
+
// getters so they remain in sync after `applyPluginConfig()` is called.
|
|
56
|
+
/** @deprecated Use getMoltbookEnabled() */
|
|
57
|
+
export const MOLTBOOK_ENABLED = false; // overridden by getter; prefer getMoltbookEnabled()
|
|
27
58
|
// Web Search
|
|
28
|
-
|
|
59
|
+
/** @deprecated Use getWebSearchEnabled() */
|
|
60
|
+
export const WEB_SEARCH_ENABLED = true; // overridden by getter; prefer getWebSearchEnabled()
|
|
29
61
|
// Operator Notifications
|
|
30
|
-
|
|
31
|
-
export const
|
|
62
|
+
/** @deprecated Use getNotificationChannel() */
|
|
63
|
+
export const NOTIFICATION_CHANNEL = ""; // overridden by getter; prefer getNotificationChannel()
|
|
64
|
+
/** @deprecated Use getNotifyOperatorOnDream() */
|
|
65
|
+
export const NOTIFY_OPERATOR_ON_DREAM = true; // overridden by getter; prefer getNotifyOperatorOnDream()
|
|
32
66
|
// Memory
|
|
33
67
|
export const DEEP_MEMORY_DB = resolve(MEMORY_DIR, "deep.db");
|
|
34
68
|
export const STATE_FILE = resolve(MEMORY_DIR, "state.json");
|
|
@@ -64,7 +98,8 @@ export const MAX_WEB_RESULTS_PER_TOPIC = 3;
|
|
|
64
98
|
export const MAX_MOLTBOOK_RESULTS_PER_TOPIC = 5;
|
|
65
99
|
// ─── Post Filter ────────────────────────────────────────────────────────────
|
|
66
100
|
// Set POST_FILTER_ENABLED=false to disable the Moltbook post filter.
|
|
67
|
-
|
|
101
|
+
/** @deprecated Use getPostFilterEnabled() */
|
|
102
|
+
export const POST_FILTER_ENABLED = true; // overridden by getter; prefer getPostFilterEnabled()
|
|
68
103
|
// ─── Dream File Naming ───────────────────────────────────────────────────────
|
|
69
104
|
export const DREAM_TITLE_MAX_LENGTH = 40;
|
|
70
105
|
//# sourceMappingURL=config.js.map
|
package/dist/src/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAExB,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC,QAAQ;AACR,MAAM,CAAC,MAAM,QAAQ,GAAG,OAAO,CAC7B,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CACtE,CAAC;AACF,MAAM,CAAC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AAClD,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACtD,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACtD,MAAM,CAAC,MAAM,gBAAgB,GAAG,OAAO,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;AAEtE,2BAA2B;AAC3B,KAAK,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,CAAC;IACrD,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AACtC,CAAC;AAED,QAAQ;AACR,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,eAAe,CAAC;AACpE,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,4BAA4B,CAAC;AAEnF,WAAW;AACX,MAAM,CAAC,MAAM,iBAAiB,GAAG,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/src/dreamer.js
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { writeFileSync, readFileSync, readdirSync } from "node:fs";
|
|
8
8
|
import { resolve } from "node:path";
|
|
9
|
-
import { DREAMS_DIR, MAX_TOKENS_DREAM, MAX_TOKENS_CONSOLIDATION, DREAM_TITLE_MAX_LENGTH,
|
|
9
|
+
import { DREAMS_DIR, MAX_TOKENS_DREAM, MAX_TOKENS_CONSOLIDATION, DREAM_TITLE_MAX_LENGTH, getMoltbookEnabled, } from "./config.js";
|
|
10
10
|
import { MoltbookClient } from "./moltbook.js";
|
|
11
11
|
import { retrieveUndreamedMemories, markAsDreamed, deepMemoryStats } from "./memory.js";
|
|
12
12
|
import { DREAM_SYSTEM_PROMPT, DREAM_CONSOLIDATION_PROMPT, renderTemplate, } from "./persona.js";
|
|
@@ -173,7 +173,7 @@ export function loadLatestDream() {
|
|
|
173
173
|
}
|
|
174
174
|
export async function postDreamJournal(client, dream, options) {
|
|
175
175
|
// Check if Moltbook is enabled (skip check if force is set, e.g. from CLI)
|
|
176
|
-
if (!
|
|
176
|
+
if (!getMoltbookEnabled() && !options?.force) {
|
|
177
177
|
logger.debug("Moltbook disabled, skipping dream journal post");
|
|
178
178
|
return;
|
|
179
179
|
}
|
package/dist/src/dreamer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dreamer.js","sourceRoot":"","sources":["../../src/dreamer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,wBAAwB,EACxB,sBAAsB,EACtB,
|
|
1
|
+
{"version":3,"file":"dreamer.js","sourceRoot":"","sources":["../../src/dreamer.ts"],"names":[],"mappings":"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"}
|
package/dist/src/filter.js
CHANGED
|
@@ -17,7 +17,7 @@ import { resolve } from "node:path";
|
|
|
17
17
|
import { POST_FILTER_PROMPT, renderTemplate } from "./persona.js";
|
|
18
18
|
import { getAgentIdentityBlock } from "./identity.js";
|
|
19
19
|
import { callWithRetry, WAKING_RETRY_OPTS } from "./llm.js";
|
|
20
|
-
import {
|
|
20
|
+
import { getPostFilterEnabled } from "./config.js";
|
|
21
21
|
import { getWorkspaceDir } from "./identity.js";
|
|
22
22
|
import logger from "./logger.js";
|
|
23
23
|
const FILTER_FILENAME = "Moltbook-filter.md";
|
|
@@ -75,7 +75,7 @@ function loadFilterRules() {
|
|
|
75
75
|
* unsalvageable (the LLM responds with BLOCKED).
|
|
76
76
|
*/
|
|
77
77
|
export async function applyFilter(client, content, contentType = "post") {
|
|
78
|
-
if (!
|
|
78
|
+
if (!getPostFilterEnabled()) {
|
|
79
79
|
return content;
|
|
80
80
|
}
|
|
81
81
|
const rules = loadFilterRules();
|
package/dist/src/filter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../src/filter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC5D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../src/filter.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,YAAY,CAAC;AAKzD,wBAAgB,cAAc,IAAI,WAAW,GAAG,IAAI,CAEnD;AAiLD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,YAAY,CAAC;AAKzD,wBAAgB,cAAc,IAAI,WAAW,GAAG,IAAI,CAEnD;AAiLD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,CA8Q/C;AAED,eAAO,MAAM,MAAM;;;CAGlB,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -10,7 +10,7 @@ import { deepMemoryStats, remember } from "./memory.js";
|
|
|
10
10
|
import { loadState } from "./state.js";
|
|
11
11
|
import { withBudget } from "./budget.js";
|
|
12
12
|
import { setWorkspaceDir } from "./identity.js";
|
|
13
|
-
import {
|
|
13
|
+
import { getMoltbookEnabled, applyPluginConfig } from "./config.js";
|
|
14
14
|
import logger from "./logger.js";
|
|
15
15
|
// Store reference to OpenClaw API for use by other modules
|
|
16
16
|
let openclawApi = null;
|
|
@@ -162,6 +162,15 @@ function wrapSubagent(api) {
|
|
|
162
162
|
}
|
|
163
163
|
export function register(api) {
|
|
164
164
|
openclawApi = api;
|
|
165
|
+
// Apply OpenClaw plugin config (e.g. moltbookEnabled, notificationChannel) so
|
|
166
|
+
// values set via `openclaw config set plugins.entries.openclawdreams.config.*`
|
|
167
|
+
// take effect at runtime — not just as env vars.
|
|
168
|
+
const pluginCfg = api
|
|
169
|
+
.pluginConfig;
|
|
170
|
+
if (pluginCfg) {
|
|
171
|
+
applyPluginConfig(pluginCfg);
|
|
172
|
+
logger.debug(`[ElectricSheep] Applied plugin config: ${JSON.stringify(pluginCfg)}`);
|
|
173
|
+
}
|
|
165
174
|
const client = wrapSubagent(api);
|
|
166
175
|
// --- Gateway Methods (for CLI RPC) ---
|
|
167
176
|
api.registerGatewayMethod("openclawdreams.reflect", async ({ respond }) => {
|
|
@@ -189,7 +198,7 @@ export function register(api) {
|
|
|
189
198
|
});
|
|
190
199
|
api.registerGatewayMethod("openclawdreams.journal", async ({ respond }) => {
|
|
191
200
|
try {
|
|
192
|
-
if (!
|
|
201
|
+
if (!getMoltbookEnabled()) {
|
|
193
202
|
respond(true, { message: "Moltbook is disabled — journal post skipped." }, undefined);
|
|
194
203
|
return;
|
|
195
204
|
}
|
|
@@ -236,7 +245,7 @@ export function register(api) {
|
|
|
236
245
|
description: "Post the latest dream journal to Moltbook (only available when moltbookEnabled is true)",
|
|
237
246
|
parameters: {},
|
|
238
247
|
handler: async () => {
|
|
239
|
-
if (!
|
|
248
|
+
if (!getMoltbookEnabled()) {
|
|
240
249
|
return {
|
|
241
250
|
status: "skipped",
|
|
242
251
|
message: "Moltbook integration is disabled",
|
|
@@ -327,7 +336,7 @@ export function register(api) {
|
|
|
327
336
|
await runDreamCycle(client, api);
|
|
328
337
|
},
|
|
329
338
|
7: async () => {
|
|
330
|
-
if (
|
|
339
|
+
if (getMoltbookEnabled()) {
|
|
331
340
|
await postDreamJournal(client);
|
|
332
341
|
}
|
|
333
342
|
},
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Moltbook integration is enabled.
|
|
6
6
|
*/
|
|
7
7
|
import { MoltbookClient } from "./moltbook.js";
|
|
8
|
-
import {
|
|
8
|
+
import { getMoltbookEnabled, MAX_MOLTBOOK_RESULTS_PER_TOPIC } from "./config.js";
|
|
9
9
|
import logger from "./logger.js";
|
|
10
10
|
/**
|
|
11
11
|
* Search Moltbook for posts related to a list of topics.
|
|
@@ -14,7 +14,7 @@ import logger from "./logger.js";
|
|
|
14
14
|
* or search fails, returns empty results.
|
|
15
15
|
*/
|
|
16
16
|
export async function searchMoltbookForTopics(topics, limitPerTopic = MAX_MOLTBOOK_RESULTS_PER_TOPIC) {
|
|
17
|
-
if (!
|
|
17
|
+
if (!getMoltbookEnabled()) {
|
|
18
18
|
logger.debug("Moltbook disabled by configuration");
|
|
19
19
|
return [];
|
|
20
20
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"moltbook-search.js","sourceRoot":"","sources":["../../src/moltbook-search.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"moltbook-search.js","sourceRoot":"","sources":["../../src/moltbook-search.ts"],"names":[],"mappings":"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"}
|
package/dist/src/notify.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Sends notifications to the operator through configured channels
|
|
5
5
|
* (Telegram, Discord, Slack, etc.) when dreams are generated.
|
|
6
6
|
*/
|
|
7
|
-
import {
|
|
7
|
+
import { getNotificationChannel, getNotifyOperatorOnDream } from "./config.js";
|
|
8
8
|
import { callWithRetry, WAKING_RETRY_OPTS } from "./llm.js";
|
|
9
9
|
import { DREAM_NOTIFICATION_PROMPT, renderTemplate } from "./persona.js";
|
|
10
10
|
import { getAgentIdentityBlock } from "./identity.js";
|
|
@@ -48,11 +48,11 @@ async function generateDreamNotification(client, dream) {
|
|
|
48
48
|
* Returns true if notification was sent successfully, false otherwise.
|
|
49
49
|
*/
|
|
50
50
|
export async function notifyOperatorOfDream(client, api, dream) {
|
|
51
|
-
if (!
|
|
51
|
+
if (!getNotifyOperatorOnDream()) {
|
|
52
52
|
logger.debug("Dream notifications disabled by configuration");
|
|
53
53
|
return false;
|
|
54
54
|
}
|
|
55
|
-
if (!
|
|
55
|
+
if (!getNotificationChannel()) {
|
|
56
56
|
logger.debug("No notification channel configured");
|
|
57
57
|
return false;
|
|
58
58
|
}
|
|
@@ -63,16 +63,16 @@ export async function notifyOperatorOfDream(client, api, dream) {
|
|
|
63
63
|
try {
|
|
64
64
|
// Check if the configured channel is available
|
|
65
65
|
const configuredChannels = await api.channels.getConfigured();
|
|
66
|
-
if (!configuredChannels.includes(
|
|
67
|
-
logger.warn(`Notification channel "${
|
|
66
|
+
if (!configuredChannels.includes(getNotificationChannel())) {
|
|
67
|
+
logger.warn(`Notification channel "${getNotificationChannel()}" not available. ` +
|
|
68
68
|
`Available channels: ${configuredChannels.join(", ")}`);
|
|
69
69
|
return false;
|
|
70
70
|
}
|
|
71
71
|
// Generate the notification message
|
|
72
72
|
const message = await generateDreamNotification(client, dream);
|
|
73
73
|
// Send through the channel
|
|
74
|
-
await api.channels.send(
|
|
75
|
-
logger.info(`Sent dream notification via ${
|
|
74
|
+
await api.channels.send(getNotificationChannel(), message);
|
|
75
|
+
logger.info(`Sent dream notification via ${getNotificationChannel()}`);
|
|
76
76
|
return true;
|
|
77
77
|
}
|
|
78
78
|
catch (error) {
|
package/dist/src/notify.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notify.js","sourceRoot":"","sources":["../../src/notify.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"notify.js","sourceRoot":"","sources":["../../src/notify.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"synthesis.d.ts","sourceRoot":"","sources":["../../src/synthesis.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"synthesis.d.ts","sourceRoot":"","sources":["../../src/synthesis.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAeH,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE3E;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,SAAS,EACjB,GAAG,EAAE,WAAW,GACf,OAAO,CAAC,gBAAgB,CAAC,CAgD3B;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,gBAAgB,GAAG,MAAM,CAoBpE;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,MAAM,CAAC,CAsCjB"}
|
package/dist/src/synthesis.js
CHANGED
|
@@ -11,7 +11,7 @@ import { formatDeepMemoryContext } from "./memory.js";
|
|
|
11
11
|
import { callWithRetry, WAKING_RETRY_OPTS } from "./llm.js";
|
|
12
12
|
import { SYNTHESIS_PROMPT, renderTemplate } from "./persona.js";
|
|
13
13
|
import { getAgentIdentityBlock } from "./identity.js";
|
|
14
|
-
import { MAX_TOKENS_SYNTHESIS,
|
|
14
|
+
import { MAX_TOKENS_SYNTHESIS, getMoltbookEnabled, getWebSearchEnabled, } from "./config.js";
|
|
15
15
|
import logger from "./logger.js";
|
|
16
16
|
/**
|
|
17
17
|
* Gather context from all available sources based on operator conversations.
|
|
@@ -35,7 +35,7 @@ export async function gatherContext(client, api) {
|
|
|
35
35
|
}
|
|
36
36
|
// Step 2: Search Moltbook (if enabled)
|
|
37
37
|
let moltbookContext;
|
|
38
|
-
if (
|
|
38
|
+
if (getMoltbookEnabled()) {
|
|
39
39
|
try {
|
|
40
40
|
const moltbookResults = await searchMoltbookForTopics(extracted.topics);
|
|
41
41
|
moltbookContext = formatMoltbookContext(moltbookResults);
|
|
@@ -49,7 +49,7 @@ export async function gatherContext(client, api) {
|
|
|
49
49
|
}
|
|
50
50
|
// Step 3: Search web (if enabled)
|
|
51
51
|
let webContext;
|
|
52
|
-
if (
|
|
52
|
+
if (getWebSearchEnabled()) {
|
|
53
53
|
try {
|
|
54
54
|
const webResults = await searchWebForTopics(api, extracted.topics);
|
|
55
55
|
webContext = formatWebContext(webResults);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"synthesis.js","sourceRoot":"","sources":["../../src/synthesis.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,
|
|
1
|
+
{"version":3,"file":"synthesis.js","sourceRoot":"","sources":["../../src/synthesis.ts"],"names":[],"mappings":"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"}
|
package/dist/src/web-search.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Uses OpenClaw's web search API when available, with fallback behavior
|
|
5
5
|
* when the API is not exposed.
|
|
6
6
|
*/
|
|
7
|
-
import {
|
|
7
|
+
import { getWebSearchEnabled, MAX_WEB_RESULTS_PER_TOPIC } from "./config.js";
|
|
8
8
|
import logger from "./logger.js";
|
|
9
9
|
/**
|
|
10
10
|
* Search the web for content related to a list of topics.
|
|
@@ -13,7 +13,7 @@ import logger from "./logger.js";
|
|
|
13
13
|
* or the API is unavailable, returns empty results.
|
|
14
14
|
*/
|
|
15
15
|
export async function searchWebForTopics(api, topics, limitPerTopic = MAX_WEB_RESULTS_PER_TOPIC) {
|
|
16
|
-
if (!
|
|
16
|
+
if (!getWebSearchEnabled()) {
|
|
17
17
|
logger.debug("Web search disabled by configuration");
|
|
18
18
|
return [];
|
|
19
19
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-search.js","sourceRoot":"","sources":["../../src/web-search.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"web-search.js","sourceRoot":"","sources":["../../src/web-search.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC7E,OAAO,MAAM,MAAM,aAAa,CAAC;AAQjC;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,GAAgB,EAChB,MAAgB,EAChB,gBAAwB,yBAAyB;IAEjD,IAAI,CAAC,mBAAmB,EAAE,EAAE,CAAC;QAC3B,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;QACrD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QACnB,MAAM,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QACtD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,OAAO,GAAuB,EAAE,CAAC;IAEvC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,4BAA4B,KAAK,EAAE,CAAC,CAAC;YAClD,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;YAEvE,OAAO,CAAC,IAAI,CAAC;gBACX,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,aAAa;aACvB,CAAC,CAAC;YAEH,MAAM,CAAC,KAAK,CAAC,SAAS,aAAa,CAAC,MAAM,qBAAqB,KAAK,GAAG,CAAC,CAAC;QAC3E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,gCAAgC,KAAK,MAAM,KAAK,EAAE,CAAC,CAAC;YAChE,OAAO,CAAC,IAAI,CAAC;gBACX,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,EAAE;aACZ,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,cAAkC;IACjE,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;QACjC,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAEvC,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CACjC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,OAAO,WAAW,CAAC,CAAC,GAAG,GAAG,CACvE,CAAC;QAEF,QAAQ,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,KAAK,MAAM,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,0BAA0B,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;AAC3D,CAAC"}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/openclaw.plugin.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"id": "openclawdreams",
|
|
3
3
|
"name": "openclawdreams",
|
|
4
4
|
"displayName": "ElectricSheep",
|
|
5
|
-
"version": "1.
|
|
5
|
+
"version": "1.2.2",
|
|
6
6
|
"description": "A reflection engine that synthesizes agent-operator interactions into dreams, enriched by community and web context",
|
|
7
7
|
"entry": "dist/src/index.js",
|
|
8
8
|
"skills": [
|
package/package.json
CHANGED
package/src/config.ts
CHANGED
|
@@ -32,17 +32,54 @@ export const AGENT_MODEL = process.env.AGENT_MODEL ?? "claude-sonnet-4-5-2025092
|
|
|
32
32
|
|
|
33
33
|
// Moltbook
|
|
34
34
|
export const MOLTBOOK_BASE_URL = "https://www.moltbook.com/api/v1";
|
|
35
|
-
export const MOLTBOOK_ENABLED =
|
|
36
|
-
(process.env.MOLTBOOK_ENABLED ?? "false").toLowerCase() === "true";
|
|
37
35
|
|
|
38
|
-
//
|
|
39
|
-
|
|
36
|
+
// ─── Runtime-overridable config ──────────────────────────────────────────────
|
|
37
|
+
// These values are seeded from env vars at startup, but can be overridden at
|
|
38
|
+
// runtime by `applyPluginConfig()` so that OpenClaw plugin config (set via
|
|
39
|
+
// `openclaw config set plugins.entries.openclawdreams.config.*`) takes effect
|
|
40
|
+
// without requiring separate env vars.
|
|
41
|
+
|
|
42
|
+
let _moltbookEnabled = (process.env.MOLTBOOK_ENABLED ?? "false").toLowerCase() === "true";
|
|
43
|
+
let _webSearchEnabled =
|
|
40
44
|
(process.env.WEB_SEARCH_ENABLED ?? "true").toLowerCase() !== "false";
|
|
45
|
+
let _notificationChannel = process.env.NOTIFICATION_CHANNEL ?? "";
|
|
46
|
+
let _notifyOperatorOnDream =
|
|
47
|
+
(process.env.NOTIFY_OPERATOR_ON_DREAM ?? "true").toLowerCase() !== "false";
|
|
48
|
+
let _postFilterEnabled =
|
|
49
|
+
(process.env.POST_FILTER_ENABLED ?? "true").toLowerCase() !== "false";
|
|
50
|
+
|
|
51
|
+
/** Apply config values passed from the OpenClaw plugin API (`api.pluginConfig`). */
|
|
52
|
+
export function applyPluginConfig(cfg: Record<string, unknown>): void {
|
|
53
|
+
if (typeof cfg.moltbookEnabled === "boolean") _moltbookEnabled = cfg.moltbookEnabled;
|
|
54
|
+
if (typeof cfg.webSearchEnabled === "boolean") _webSearchEnabled = cfg.webSearchEnabled;
|
|
55
|
+
if (typeof cfg.notificationChannel === "string")
|
|
56
|
+
_notificationChannel = cfg.notificationChannel;
|
|
57
|
+
if (typeof cfg.notifyOperatorOnDream === "boolean")
|
|
58
|
+
_notifyOperatorOnDream = cfg.notifyOperatorOnDream;
|
|
59
|
+
if (typeof cfg.postFilterEnabled === "boolean")
|
|
60
|
+
_postFilterEnabled = cfg.postFilterEnabled;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
export const getMoltbookEnabled = (): boolean => _moltbookEnabled;
|
|
64
|
+
export const getWebSearchEnabled = (): boolean => _webSearchEnabled;
|
|
65
|
+
export const getNotificationChannel = (): string => _notificationChannel;
|
|
66
|
+
export const getNotifyOperatorOnDream = (): boolean => _notifyOperatorOnDream;
|
|
67
|
+
export const getPostFilterEnabled = (): boolean => _postFilterEnabled;
|
|
68
|
+
|
|
69
|
+
// Legacy constant aliases — kept for backward compatibility but now delegate to
|
|
70
|
+
// getters so they remain in sync after `applyPluginConfig()` is called.
|
|
71
|
+
/** @deprecated Use getMoltbookEnabled() */
|
|
72
|
+
export const MOLTBOOK_ENABLED = false; // overridden by getter; prefer getMoltbookEnabled()
|
|
73
|
+
|
|
74
|
+
// Web Search
|
|
75
|
+
/** @deprecated Use getWebSearchEnabled() */
|
|
76
|
+
export const WEB_SEARCH_ENABLED = true; // overridden by getter; prefer getWebSearchEnabled()
|
|
41
77
|
|
|
42
78
|
// Operator Notifications
|
|
43
|
-
|
|
44
|
-
export const
|
|
45
|
-
|
|
79
|
+
/** @deprecated Use getNotificationChannel() */
|
|
80
|
+
export const NOTIFICATION_CHANNEL = ""; // overridden by getter; prefer getNotificationChannel()
|
|
81
|
+
/** @deprecated Use getNotifyOperatorOnDream() */
|
|
82
|
+
export const NOTIFY_OPERATOR_ON_DREAM = true; // overridden by getter; prefer getNotifyOperatorOnDream()
|
|
46
83
|
|
|
47
84
|
// Memory
|
|
48
85
|
export const DEEP_MEMORY_DB = resolve(MEMORY_DIR, "deep.db");
|
|
@@ -88,8 +125,8 @@ export const MAX_MOLTBOOK_RESULTS_PER_TOPIC = 5;
|
|
|
88
125
|
|
|
89
126
|
// ─── Post Filter ────────────────────────────────────────────────────────────
|
|
90
127
|
// Set POST_FILTER_ENABLED=false to disable the Moltbook post filter.
|
|
91
|
-
|
|
92
|
-
|
|
128
|
+
/** @deprecated Use getPostFilterEnabled() */
|
|
129
|
+
export const POST_FILTER_ENABLED = true; // overridden by getter; prefer getPostFilterEnabled()
|
|
93
130
|
|
|
94
131
|
// ─── Dream File Naming ───────────────────────────────────────────────────────
|
|
95
132
|
export const DREAM_TITLE_MAX_LENGTH = 40;
|
package/src/dreamer.ts
CHANGED
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
MAX_TOKENS_DREAM,
|
|
13
13
|
MAX_TOKENS_CONSOLIDATION,
|
|
14
14
|
DREAM_TITLE_MAX_LENGTH,
|
|
15
|
-
|
|
15
|
+
getMoltbookEnabled,
|
|
16
16
|
} from "./config.js";
|
|
17
17
|
import { MoltbookClient } from "./moltbook.js";
|
|
18
18
|
import { retrieveUndreamedMemories, markAsDreamed, deepMemoryStats } from "./memory.js";
|
|
@@ -239,7 +239,7 @@ export async function postDreamJournal(
|
|
|
239
239
|
options?: { force?: boolean }
|
|
240
240
|
): Promise<void> {
|
|
241
241
|
// Check if Moltbook is enabled (skip check if force is set, e.g. from CLI)
|
|
242
|
-
if (!
|
|
242
|
+
if (!getMoltbookEnabled() && !options?.force) {
|
|
243
243
|
logger.debug("Moltbook disabled, skipping dream journal post");
|
|
244
244
|
return;
|
|
245
245
|
}
|
package/src/filter.ts
CHANGED
|
@@ -18,7 +18,7 @@ import { resolve } from "node:path";
|
|
|
18
18
|
import { POST_FILTER_PROMPT, renderTemplate } from "./persona.js";
|
|
19
19
|
import { getAgentIdentityBlock } from "./identity.js";
|
|
20
20
|
import { callWithRetry, WAKING_RETRY_OPTS } from "./llm.js";
|
|
21
|
-
import {
|
|
21
|
+
import { getPostFilterEnabled } from "./config.js";
|
|
22
22
|
import { getWorkspaceDir } from "./identity.js";
|
|
23
23
|
import logger from "./logger.js";
|
|
24
24
|
import type { LLMClient } from "./types.js";
|
|
@@ -88,7 +88,7 @@ export async function applyFilter(
|
|
|
88
88
|
content: string,
|
|
89
89
|
contentType: "post" | "comment" = "post"
|
|
90
90
|
): Promise<string | null> {
|
|
91
|
-
if (!
|
|
91
|
+
if (!getPostFilterEnabled()) {
|
|
92
92
|
return content;
|
|
93
93
|
}
|
|
94
94
|
|
package/src/index.ts
CHANGED
|
@@ -11,7 +11,7 @@ import { deepMemoryStats, remember } from "./memory.js";
|
|
|
11
11
|
import { loadState } from "./state.js";
|
|
12
12
|
import { withBudget } from "./budget.js";
|
|
13
13
|
import { setWorkspaceDir } from "./identity.js";
|
|
14
|
-
import {
|
|
14
|
+
import { getMoltbookEnabled, applyPluginConfig } from "./config.js";
|
|
15
15
|
import logger from "./logger.js";
|
|
16
16
|
import type { LLMClient, OpenClawAPI } from "./types.js";
|
|
17
17
|
|
|
@@ -199,6 +199,17 @@ function wrapSubagent(api: OpenClawAPI): LLMClient {
|
|
|
199
199
|
|
|
200
200
|
export function register(api: OpenClawAPI): void {
|
|
201
201
|
openclawApi = api;
|
|
202
|
+
|
|
203
|
+
// Apply OpenClaw plugin config (e.g. moltbookEnabled, notificationChannel) so
|
|
204
|
+
// values set via `openclaw config set plugins.entries.openclawdreams.config.*`
|
|
205
|
+
// take effect at runtime — not just as env vars.
|
|
206
|
+
const pluginCfg = (api as unknown as { pluginConfig?: Record<string, unknown> })
|
|
207
|
+
.pluginConfig;
|
|
208
|
+
if (pluginCfg) {
|
|
209
|
+
applyPluginConfig(pluginCfg);
|
|
210
|
+
logger.debug(`[ElectricSheep] Applied plugin config: ${JSON.stringify(pluginCfg)}`);
|
|
211
|
+
}
|
|
212
|
+
|
|
202
213
|
const client = wrapSubagent(api);
|
|
203
214
|
|
|
204
215
|
// --- Gateway Methods (for CLI RPC) ---
|
|
@@ -231,7 +242,7 @@ export function register(api: OpenClawAPI): void {
|
|
|
231
242
|
|
|
232
243
|
api.registerGatewayMethod("openclawdreams.journal", async ({ respond }) => {
|
|
233
244
|
try {
|
|
234
|
-
if (!
|
|
245
|
+
if (!getMoltbookEnabled()) {
|
|
235
246
|
respond(
|
|
236
247
|
true,
|
|
237
248
|
{ message: "Moltbook is disabled — journal post skipped." },
|
|
@@ -290,7 +301,7 @@ export function register(api: OpenClawAPI): void {
|
|
|
290
301
|
"Post the latest dream journal to Moltbook (only available when moltbookEnabled is true)",
|
|
291
302
|
parameters: {},
|
|
292
303
|
handler: async () => {
|
|
293
|
-
if (!
|
|
304
|
+
if (!getMoltbookEnabled()) {
|
|
294
305
|
return {
|
|
295
306
|
status: "skipped",
|
|
296
307
|
message: "Moltbook integration is disabled",
|
|
@@ -411,7 +422,7 @@ export function register(api: OpenClawAPI): void {
|
|
|
411
422
|
await runDreamCycle(client, api);
|
|
412
423
|
},
|
|
413
424
|
7: async () => {
|
|
414
|
-
if (
|
|
425
|
+
if (getMoltbookEnabled()) {
|
|
415
426
|
await postDreamJournal(client);
|
|
416
427
|
}
|
|
417
428
|
},
|
package/src/moltbook-search.ts
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
8
|
import { MoltbookClient } from "./moltbook.js";
|
|
9
|
-
import {
|
|
9
|
+
import { getMoltbookEnabled, MAX_MOLTBOOK_RESULTS_PER_TOPIC } from "./config.js";
|
|
10
10
|
import logger from "./logger.js";
|
|
11
11
|
import type { MoltbookPost } from "./types.js";
|
|
12
12
|
|
|
@@ -25,7 +25,7 @@ export async function searchMoltbookForTopics(
|
|
|
25
25
|
topics: string[],
|
|
26
26
|
limitPerTopic: number = MAX_MOLTBOOK_RESULTS_PER_TOPIC
|
|
27
27
|
): Promise<MoltbookSearchContext[]> {
|
|
28
|
-
if (!
|
|
28
|
+
if (!getMoltbookEnabled()) {
|
|
29
29
|
logger.debug("Moltbook disabled by configuration");
|
|
30
30
|
return [];
|
|
31
31
|
}
|
package/src/notify.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* (Telegram, Discord, Slack, etc.) when dreams are generated.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
import {
|
|
8
|
+
import { getNotificationChannel, getNotifyOperatorOnDream } from "./config.js";
|
|
9
9
|
import { callWithRetry, WAKING_RETRY_OPTS } from "./llm.js";
|
|
10
10
|
import { DREAM_NOTIFICATION_PROMPT, renderTemplate } from "./persona.js";
|
|
11
11
|
import { getAgentIdentityBlock } from "./identity.js";
|
|
@@ -66,12 +66,12 @@ export async function notifyOperatorOfDream(
|
|
|
66
66
|
api: OpenClawAPI,
|
|
67
67
|
dream: Dream
|
|
68
68
|
): Promise<boolean> {
|
|
69
|
-
if (!
|
|
69
|
+
if (!getNotifyOperatorOnDream()) {
|
|
70
70
|
logger.debug("Dream notifications disabled by configuration");
|
|
71
71
|
return false;
|
|
72
72
|
}
|
|
73
73
|
|
|
74
|
-
if (!
|
|
74
|
+
if (!getNotificationChannel()) {
|
|
75
75
|
logger.debug("No notification channel configured");
|
|
76
76
|
return false;
|
|
77
77
|
}
|
|
@@ -85,9 +85,9 @@ export async function notifyOperatorOfDream(
|
|
|
85
85
|
// Check if the configured channel is available
|
|
86
86
|
const configuredChannels = await api.channels.getConfigured();
|
|
87
87
|
|
|
88
|
-
if (!configuredChannels.includes(
|
|
88
|
+
if (!configuredChannels.includes(getNotificationChannel())) {
|
|
89
89
|
logger.warn(
|
|
90
|
-
`Notification channel "${
|
|
90
|
+
`Notification channel "${getNotificationChannel()}" not available. ` +
|
|
91
91
|
`Available channels: ${configuredChannels.join(", ")}`
|
|
92
92
|
);
|
|
93
93
|
return false;
|
|
@@ -97,9 +97,9 @@ export async function notifyOperatorOfDream(
|
|
|
97
97
|
const message = await generateDreamNotification(client, dream);
|
|
98
98
|
|
|
99
99
|
// Send through the channel
|
|
100
|
-
await api.channels.send(
|
|
100
|
+
await api.channels.send(getNotificationChannel(), message);
|
|
101
101
|
|
|
102
|
-
logger.info(`Sent dream notification via ${
|
|
102
|
+
logger.info(`Sent dream notification via ${getNotificationChannel()}`);
|
|
103
103
|
return true;
|
|
104
104
|
} catch (error) {
|
|
105
105
|
logger.error(`Failed to send dream notification: ${error}`);
|
package/src/synthesis.ts
CHANGED
|
@@ -12,7 +12,11 @@ import { formatDeepMemoryContext } from "./memory.js";
|
|
|
12
12
|
import { callWithRetry, WAKING_RETRY_OPTS } from "./llm.js";
|
|
13
13
|
import { SYNTHESIS_PROMPT, renderTemplate } from "./persona.js";
|
|
14
14
|
import { getAgentIdentityBlock } from "./identity.js";
|
|
15
|
-
import {
|
|
15
|
+
import {
|
|
16
|
+
MAX_TOKENS_SYNTHESIS,
|
|
17
|
+
getMoltbookEnabled,
|
|
18
|
+
getWebSearchEnabled,
|
|
19
|
+
} from "./config.js";
|
|
16
20
|
import logger from "./logger.js";
|
|
17
21
|
import type { LLMClient, OpenClawAPI, SynthesisContext } from "./types.js";
|
|
18
22
|
|
|
@@ -44,7 +48,7 @@ export async function gatherContext(
|
|
|
44
48
|
|
|
45
49
|
// Step 2: Search Moltbook (if enabled)
|
|
46
50
|
let moltbookContext: string | undefined;
|
|
47
|
-
if (
|
|
51
|
+
if (getMoltbookEnabled()) {
|
|
48
52
|
try {
|
|
49
53
|
const moltbookResults = await searchMoltbookForTopics(extracted.topics);
|
|
50
54
|
moltbookContext = formatMoltbookContext(moltbookResults);
|
|
@@ -58,7 +62,7 @@ export async function gatherContext(
|
|
|
58
62
|
|
|
59
63
|
// Step 3: Search web (if enabled)
|
|
60
64
|
let webContext: string | undefined;
|
|
61
|
-
if (
|
|
65
|
+
if (getWebSearchEnabled()) {
|
|
62
66
|
try {
|
|
63
67
|
const webResults = await searchWebForTopics(api, extracted.topics);
|
|
64
68
|
webContext = formatWebContext(webResults);
|
package/src/web-search.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* when the API is not exposed.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
import {
|
|
8
|
+
import { getWebSearchEnabled, MAX_WEB_RESULTS_PER_TOPIC } from "./config.js";
|
|
9
9
|
import logger from "./logger.js";
|
|
10
10
|
import type { OpenClawAPI, WebSearchResult } from "./types.js";
|
|
11
11
|
|
|
@@ -25,7 +25,7 @@ export async function searchWebForTopics(
|
|
|
25
25
|
topics: string[],
|
|
26
26
|
limitPerTopic: number = MAX_WEB_RESULTS_PER_TOPIC
|
|
27
27
|
): Promise<WebSearchContext[]> {
|
|
28
|
-
if (!
|
|
28
|
+
if (!getWebSearchEnabled()) {
|
|
29
29
|
logger.debug("Web search disabled by configuration");
|
|
30
30
|
return [];
|
|
31
31
|
}
|