examples/skills/ov_dream/SKILL.md
Use this skill for manual OpenViking sync and recall without occupying the OpenClaw contextEngine slot.
Use this skill when the user message begins with one of these exact prefixes:
ov dreamov recall Do not treat those messages as normal conversation. They are explicit operator commands.
ov dream
Manual sync. Read OpenClaw's sessions.json, sync eligible chat transcripts to OpenViking, then commit each session when new messages exist.
ov recall <query>
Manual recall. Search OpenViking under the default user root URI, viking://user/default.
Trigger when the user message is exactly ov dream.
Execution flow:
Run:
python3 scripts/dream.py dream
Return the sync summary.
The sync command reads OpenClaw session metadata from ~/.openclaw/agents/main/sessions/sessions.json when available. It syncs chat-like session keys such as agent:main:main, :direct:, :channel:, :group:, and :room:.
It must not sync explicitly non-chat sessions, including keys containing :cron:, :heartbeat, :subagent:, :acp:, or :hook:.
Each source session keeps an independent sync cursor in ~/.openclaw/memory/ov_dream_sync.json.
Trigger when the user message starts with ov recall .
This is a hard routing rule for this skill:
ov recall <query>, do not answer from general reasoning.Execution flow:
Extract everything after ov recall as the recall query.
Run:
python3 scripts/dream.py recall "<query>"
Return the relevant memory rows to the user.
If no memories are found, return No memories found.
Rules:
ov recall ... as a manual recall request, not a normal conversation turn.ov recall as the exact recall query.scripts/dream.py resolves correctly.ov dream unless the user separately asks for sync.OPENVIKING_BASE_URL, OPENVIKING_API_KEY, OPENVIKING_AGENT_ID, and optionally OPENVIKING_AUTH_MODE=serverless. The CLI will use Bearer auth and the serverless session message format automatically.