Dreaming là hệ thống hợp nhất bộ nhớ nền trongDocumentation Index
Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
memory-core. Nó giúp OpenClaw chuyển các tín hiệu ngắn hạn mạnh vào bộ nhớ bền vững trong khi vẫn giữ cho quy trình có thể giải thích và xem xét được.
Dreaming là tính năng chọn tham gia và bị tắt theo mặc định.
Dreaming ghi những gì
Dreaming giữ hai loại đầu ra:- Trạng thái máy trong
memory/.dreams/(kho truy hồi, tín hiệu pha, điểm kiểm tra nhập dữ liệu, khóa). - Đầu ra con người đọc được trong
DREAMS.md(hoặcdreams.mdhiện có) và các tệp báo cáo pha tùy chọn trongmemory/dreaming/<phase>/YYYY-MM-DD.md.
MEMORY.md.
Mô hình pha
Dreaming sử dụng ba pha phối hợp:| Pha | Mục đích | Ghi bền vững |
|---|---|---|
| Nhẹ | Sắp xếp và chuẩn bị tài liệu ngắn hạn gần đây | Không |
| Sâu | Chấm điểm và thăng cấp các ứng viên bền vững | Có (MEMORY.md) |
| REM | Suy ngẫm về các chủ đề và ý tưởng lặp lại | Không |
Pha nhẹ
Pha nhẹ
Pha nhẹ nhập các tín hiệu bộ nhớ hằng ngày gần đây và dấu vết truy hồi, khử trùng lặp chúng, rồi chuẩn bị các dòng ứng viên.
- Đọc từ trạng thái truy hồi ngắn hạn, các tệp bộ nhớ hằng ngày gần đây và bản ghi phiên đã được biên tập khi có sẵn.
- Ghi một khối
## Light Sleepđược quản lý khi lưu trữ bao gồm đầu ra nội tuyến. - Ghi lại tín hiệu củng cố cho bước xếp hạng sâu sau đó.
- Không bao giờ ghi vào
MEMORY.md.
Pha sâu
Pha sâu
Pha sâu quyết định nội dung nào trở thành bộ nhớ dài hạn.
- Xếp hạng ứng viên bằng cách chấm điểm có trọng số và các cổng ngưỡng.
- Yêu cầu
minScore,minRecallCountvàminUniqueQueriesđạt yêu cầu. - Tái nạp đoạn trích từ các tệp hằng ngày trực tiếp trước khi ghi, vì vậy các đoạn trích cũ/đã xóa sẽ bị bỏ qua.
- Nối các mục đã thăng cấp vào
MEMORY.md. - Ghi một tóm tắt
## Deep SleepvàoDREAMS.mdvà tùy chọn ghimemory/dreaming/deep/YYYY-MM-DD.md.
Pha REM
Pha REM
Pha REM trích xuất các mẫu hình và tín hiệu phản tư.
- Xây dựng tóm tắt chủ đề và suy ngẫm từ các dấu vết ngắn hạn gần đây.
- Ghi một khối
## REM Sleepđược quản lý khi lưu trữ bao gồm đầu ra nội tuyến. - Ghi lại tín hiệu củng cố REM được dùng trong xếp hạng sâu.
- Không bao giờ ghi vào
MEMORY.md.
Nhập bản ghi phiên
Dreaming có thể nhập các bản ghi phiên đã được biên tập vào kho ngữ liệu Dreaming. Khi có bản ghi, chúng được đưa vào pha nhẹ cùng với tín hiệu bộ nhớ hằng ngày và dấu vết truy hồi. Nội dung cá nhân và nhạy cảm được biên tập trước khi nhập.Nhật ký Dream
Dreaming cũng duy trì một Nhật ký Dream dạng tường thuật trongDREAMS.md. Sau khi mỗi pha có đủ tư liệu, memory-core chạy một lượt subagent nền theo best-effort và nối thêm một mục nhật ký ngắn. Nó dùng mô hình runtime mặc định trừ khi dreaming.model được cấu hình. Nếu mô hình đã cấu hình không khả dụng, Nhật ký Dream thử lại một lần bằng mô hình mặc định của phiên.
Nhật ký này dành cho con người đọc trong giao diện Dreams, không phải nguồn thăng cấp. Các tạo tác nhật ký/báo cáo do Dreaming tạo ra bị loại khỏi thăng cấp ngắn hạn. Chỉ các đoạn bộ nhớ có căn cứ mới đủ điều kiện thăng cấp vào
MEMORY.md.Lệnh điền bù
Lệnh điền bù
memory rem-harness --path ... --groundedxem trước đầu ra nhật ký có căn cứ từ các ghi chú lịch sửYYYY-MM-DD.md.memory rem-backfill --path ...ghi các mục nhật ký có căn cứ có thể hoàn tác vàoDREAMS.md.memory rem-backfill --path ... --stage-short-termchuẩn bị các ứng viên bền vững có căn cứ vào cùng kho bằng chứng ngắn hạn mà pha sâu thông thường đã dùng.memory rem-backfill --rollbackvà--rollback-short-termxóa các tạo tác điền bù đã chuẩn bị đó mà không chạm vào các mục nhật ký thông thường hoặc truy hồi ngắn hạn trực tiếp.
Tín hiệu xếp hạng sâu
Xếp hạng sâu dùng sáu tín hiệu cơ sở có trọng số cộng với củng cố theo pha:| Tín hiệu | Trọng số | Mô tả |
|---|---|---|
| Tần suất | 0.24 | Số tín hiệu ngắn hạn mà mục đã tích lũy |
| Mức độ liên quan | 0.30 | Chất lượng truy xuất trung bình của mục |
| Độ đa dạng truy vấn | 0.15 | Các ngữ cảnh truy vấn/ngày riêng biệt đã làm nó xuất hiện |
| Mức độ gần đây | 0.15 | Điểm độ mới giảm dần theo thời gian |
| Hợp nhất | 0.10 | Độ mạnh tái xuất hiện qua nhiều ngày |
| Độ phong phú khái niệm | 0.06 | Mật độ thẻ khái niệm từ đoạn trích/đường dẫn |
memory/.dreams/phase-signals.json.
Lập lịch
Khi được bật,memory-core tự động quản lý một công việc cron cho một lượt quét Dreaming đầy đủ. Mỗi lượt quét chạy các pha theo thứ tự: nhẹ → REM → sâu.
Lượt quét bao gồm workspace runtime chính và mọi workspace agent đã cấu hình, được khử trùng lặp theo đường dẫn, vì vậy việc mở rộng workspace subagent không loại trừ DREAMS.md và trạng thái bộ nhớ của agent chính.
Hành vi nhịp mặc định:
| Cài đặt | Mặc định |
|---|---|
dreaming.frequency | 0 3 * * * |
dreaming.model | mô hình mặc định |
Bắt đầu nhanh
- Bật Dreaming
- Nhịp quét tùy chỉnh
Lệnh gạch chéo
Quy trình CLI
- Xem trước / áp dụng thăng cấp
- Giải thích thăng cấp
- Xem trước bộ kiểm thử REM
memory promote thủ công dùng các ngưỡng pha sâu theo mặc định trừ khi bị ghi đè bằng cờ CLI.Mặc định chính
Tất cả cài đặt nằm dướiplugins.entries.memory-core.config.dreaming.
Bật hoặc tắt lượt quét Dreaming.
Nhịp Cron cho lượt quét Dreaming đầy đủ.
Ghi đè mô hình subagent Nhật ký Dream tùy chọn. Dùng giá trị
provider/model chuẩn khi cũng đặt danh sách cho phép allowedModels của subagent.Chính sách pha, ngưỡng và hành vi lưu trữ là chi tiết triển khai nội bộ (không phải cấu hình hướng đến người dùng). Xem Tham chiếu cấu hình bộ nhớ để biết danh sách khóa đầy đủ.
Giao diện Dreams
Khi được bật, thẻ Dreams của Gateway hiển thị:- trạng thái bật Dreaming hiện tại
- trạng thái cấp pha và sự hiện diện của lượt quét được quản lý
- số lượng ngắn hạn, có căn cứ, tín hiệu và đã thăng cấp hôm nay
- thời điểm chạy theo lịch tiếp theo
- một làn Cảnh có căn cứ riêng biệt cho các mục phát lại lịch sử đã chuẩn bị
- một trình đọc Nhật ký Dream có thể mở rộng dựa trên
doctor.memory.dreamDiary
Dreaming không bao giờ chạy: trạng thái hiển thị bị chặn
Nếuopenclaw memory status báo cáo Dreaming status: blocked, cron được quản lý tồn tại nhưng Heartbeat của agent mặc định không kích hoạt. Kiểm tra rằng Heartbeat đã được bật cho agent mặc định và mục tiêu của nó không phải là none, sau đó chạy lại openclaw memory status --deep sau khoảng Heartbeat tiếp theo.