본문으로 건너뛰기
cccskills
무료GitHub에 공개

openviking-context-database

Use OpenViking through OpenClaw to manage long-term memories, search archived conversations, and find imported resources or Agent Skills. Inspect recall traces to understand search results and recover full tool outputs stored outside the conversation.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

원문원문 설명 보기

Use OpenViking from OpenClaw through @openviking/openclaw-plugin: long-term memory, session archives, resource and Agent Skill import, semantic recall, recall trace debugging, and externalized tool-result recovery. Prefer this skill when the user wants to use, query, debug, or operate OpenViking context from an OpenClaw agent. For first-time plugin installation, use the install-openviking-memory skill instead.

설치 방법 보기

이럴 때 유용합니다

  • Recall past preferences and decisions
  • Find exact commands in archived conversations
  • Import and search documents or Agent Skills
  • Investigate why a memory appeared in search results
  • Read the full content behind a tool-output preview

포함된 파일(1)

  • SKILL.md15.7 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

OpenViking Context Database — OpenClaw Plugin Operator Skill

Use this skill after @openviking/openclaw-plugin is installed and configured. It describes the current OpenClaw plugin implementation, not the standalone OpenViking Python SDK.

Scope and Safety Rules

  • The plugin is remote-only. It talks to an existing OpenViking server through HTTP and does not start or manage openviking-server.
  • Do not invent OpenViking REST endpoints. Use the registered OpenClaw tools and commands described below.
  • The agent-visible add_resource tool is disabled by default (enableAddResourceTool=false). Do not use add_resource during search, retrieval, URI reading, or search-result optimization. Use ov_search and ov_read in those flows.
  • Use manual /add-resource, or add_resource only when it is explicitly enabled and the user explicitly asks to import, add, upload, save, or index a resource.
  • Use add_skill only when the user explicitly asks to import, add, install, or register an Agent Skill into OpenViking.
  • For local files and directories, pass the local path to the plugin tool. The plugin uploads them through /api/v1/resources/temp_upload; do not send raw local filesystem paths to a remote server yourself.
  • Never log or echo API keys. The plugin sends API keys as X-API-Key / setup probe headers and masks them in setup output.

Current Architecture

OpenClaw owns agent execution, prompts, and tool invocation. OpenViking owns long-lived context:

LayerCurrent behavior
assembleRebuilds compressed session history from OpenViking and injects relevant recall into the latest user message.
afterTurnAppends only the new turn to the OpenViking session; may trigger async commit when pending_tokens >= tokenBudget * commitTokenThresholdRatio.
compactRuns commit(wait=true), waits for archive/extraction completion, and reads back latest archive overview.
ToolsMemory recall/store/forget, archive search/expand, resource/skill import/search, recall trace query, tool-result list/search/read.

Long-term memories are usually extracted on /compact or on threshold-triggered commit. A fact mentioned in a fresh conversation may still be present as recent session context before it becomes a long-term memory.

Configuration Quick Reference

Read status first:

openclaw openviking status --json
openclaw config get plugins.entries.openviking.config
openclaw config get plugins.slots.contextEngine

Core config lives under plugins.entries.openviking.config:

FieldDefaultPurpose
baseUrlhttp://127.0.0.1:1933OpenViking HTTP endpoint. Can also come from OPENVIKING_BASE_URL / OPENVIKING_URL.
apiKeyemptyOptional API key. Can also come from OPENVIKING_API_KEY.
peer_rolenoneMemory scope: none (shared viking://user/<user_id>/memories), assistant (assistant-attributed memory under .../peers/<assistant_id>/memories), or sender (sender-attributed memory under .../peers/<sender_id>/memories). Legacy person is accepted as sender.
peer_prefixemptyOptional prefix for assistant peer_id / actor peer values when peer_role=assistant.
accountId / userIdemptyAdvanced tenant identity headers for root-key or trusted deployments.
targetUriviking://~/memoriesDefault search scope for legacy targeted memory search.
autoCapturetrueAppend sanitized turn text to OpenViking sessions.
captureModesemanticsemantic or keyword; affects server-side extraction filtering.
captureMaxLength24000Max sanitized text length per captured turn.
autoRecalltrueRun recall before replies and inject relevant context.
recallTargetTypesuser,agentDefault target types when targetUri is omitted. Allowed: resource, user, agent.
recallResourcesfalseCompatibility shortcut that appends resource to default recall targets when recallTargetTypes is unset.
recallLimit6Max selected recall items.
recallScoreThreshold0.15Min score after post-processing.
recallMaxInjectedChars4000Total injected character cap; complete memories that do not fit are skipped.
commitTokenThresholdRatio0.5Async-commit threshold as a fraction (0-1) of the model context window (e.g. 0.5 = 50%); 0 commits every turn.
commitKeepRecentCount10Recent messages kept live after afterTurn commit. Compact always uses 0.
bypassSessionPatternsemptyGlob-like session keys that completely bypass OpenViking (* segment, ** multi-segment).
emitStandardDiagnosticsfalseEmit structured openviking: diag {...} lines.
logFindRequestsfalseLog routing for find/session writes. Also enabled by OPENVIKING_LOG_ROUTING=1 or OPENVIKING_DEBUG=1.
traceRecallfalseRecord recall traces in memory.
traceRecallPersistfalsePersist recall traces as local JSONL files.
traceRecallDir~/.openclaw/openviking/recall-tracesRecall trace directory when persistence is enabled.

Normal setup command:

openclaw openviking setup --base-url <OPENVIKING_URL> --api-key <API_KEY> --json

Useful variants:

openclaw openviking setup --base-url <URL> --api-key <KEY> --peer-role assistant --peer-prefix openclaw-prod --json
openclaw openviking setup --base-url <URL> --api-key <ROOT_KEY> --account-id <ACCOUNT_ID> --user-id <USER_ID> --json
openclaw openviking setup --base-url <URL> --api-key <KEY> --recall-target-types resource --json
openclaw openviking setup --base-url <URL> --api-key <KEY> --allow-offline --json
openclaw openviking setup --base-url <URL> --api-key <KEY> --force-slot --json

Tool Selection Guide

User intentUse
“What did I say before?”, preferences, decisions, known factsmemory_recall
“Remember this now”memory_store
“Forget X”memory_forget
Summary lacks an exact command/path/snippet from old chatov_archive_search, then ov_archive_expand if needed
Import docs, PDFs, local dirs, URLs, Git repos, media attachmentsmanual /add-resource; add_resource only if enableAddResourceTool=true
Import/register an Agent Skilladd_skill
Search imported resources or skillsov_search
Read an exact viking://... hit from ov_search or recall traceov_read
Explain why recall/search returned somethingov_recall_trace
A previous tool result shows only a preview/refopenviking_tool_result_list, openviking_tool_result_search, openviking_tool_result_read

Tool Interface Reference

memory_recall

Semantic search over memories/resources. Use archive tools for session history.

ParameterRequiredDescription
queryYesSearch query.
limitNoMax selected results. Defaults to recallLimit.
scoreThresholdNoScore threshold 0..1. Defaults to recallScoreThreshold.
targetUriNoExact search URI. If set, only this URI is searched.
resourceTypesNoArray of resource, user, agent; used only when targetUri is omitted.

Notes: when targetUri is omitted, the plugin resolves a search plan from resourceTypes or configured recallTargetTypes, fetches more candidates than requested, deduplicates, filters leaf memories, reranks, and respects recallMaxInjectedChars.

memory_store

Persist text immediately by writing a session and committing with wait=true.

ParameterRequiredDescription
textYesInformation source text.
roleNoSession role, default user.
sessionIdNoExisting OpenViking/OpenClaw session reference. If omitted, a temporary memory-store-* session is created.

memory_forget

Delete a memory.

ParameterRequiredDescription
uriNoExact viking://user/.../memories/... memory URI. Non-memory URIs are refused.
queryNoSearch query when uri is unknown.
targetUriNoSearch scope URI, default targetUri.
limitNoSearch limit, default 5.
scoreThresholdNoSearch threshold, default recallScoreThreshold.

If query mode finds multiple candidates, report candidates and ask the user to choose the exact URI; do not delete ambiguous memories.

ov_archive_search

Keyword grep across archived original conversation messages of the current session.

ParameterRequiredDescription
queryYesSingle keyword or short phrase; prefer names, dates, file paths, commands, or distinctive nouns.
archiveIdNoRestrict to one archive, e.g. archive_002.

Try at least two concrete keyword variants before concluding archived detail is unavailable.

ov_archive_expand

ParameterRequiredDescription
archiveIdYesArchive ID from [Archive Index], e.g. archive_002.

Use after an archive search or when the [Archive Index] already identifies the archive likely to contain exact detail.

add_resource

Import resources into viking://resources/....

This agent tool is disabled by default. Prefer manual /add-resource for resource ingestion. If enableAddResourceTool=true exposes the tool, use it only for explicit import/index requests and never as part of search/retrieval optimization.

ParameterRequiredDescription
sourceYesLocal path, OpenClaw media attachment path, directory path, public URL, or Git URL.
toNoExact target URI, e.g. viking://resources/project-docs. Mutually exclusive with parent.
parentNoParent URI under viking://resources. Mutually exclusive with to.
reasonNoReason/note for import.
instructionNoProcessing instruction for semantic extraction.
waitNoWait for processing completion.

The current OpenClaw tool exposes the parameters above. The underlying client also supports server-facing resource options such as strict, ignore_dirs, include, exclude, and preserve_structure for command/internal paths; do not pass them to the tool unless the registered schema exposes them.

add_skill

Import Agent Skills into viking://~/skills/....

ParameterRequiredDescription
sourceNoLocal SKILL.md path or skill directory. Exactly one of source or data is required.
dataNoRaw SKILL.md content or an MCP tool dict. Exactly one of source or data is required.
waitNoWait for processing completion.

Agent Skill best practice: a skill should have precise frontmatter (name, trigger-oriented description, useful tags), clear scope boundaries, explicit “when not to use” guidance if needed, and executable steps with concrete parameters. Keep secrets out of skill content.

ov_search

ParameterRequiredDescription
queryYesSearch query.
uriNoSearch URI. Defaults to resources plus agent skills.
limitNoMax results per scope, default 10.

Use after importing resources/skills, or when the user asks to search OpenViking-managed knowledge.

Important: ov_search returns OpenViking virtual URIs such as viking://resources/project-docs/api.md#chunk-3. These are not local file paths. Do not use filesystem read tools for them; call ov_read with the exact URI when full content is needed.

ov_read

Read full content for one exact OpenViking virtual URI through /api/v1/content/read.

ParameterRequiredDescription
uriYesExact viking://... URI returned by ov_search or recall trace results. openviking://... aliases and local file paths are refused.

ov_recall_trace

ParameterRequiredDescription
turnNolatest or all, default latest.
traceIdNoExact trace ID.
sessionId / sessionKey / ovSessionIdNoFilter by OpenClaw/OpenViking session.
sourceNoauto_recall, memory_recall, ov_search, or ov_archive_search.
resourceTypesNoArray/string containing resource, user, agent.
since / untilNoUnix timestamp bounds in milliseconds.
includeContentNoRead selected/displayed URI content previews on demand.
limitNoMaximum traces to return, default 20.

Trace records exist only when traceRecall=true; persisted lookup requires traceRecallPersist=true and accessible trace files.

Externalized tool-result tools

Use when a preview contains viking://session/<session_id>/tool-results/<tool_result_id>.

ToolParameters
openviking_tool_result_listtool_name?, limit? (default 50)
openviking_tool_result_searchtool_output_ref, query, limit? (default 20), context_chars? (default 300)
openviking_tool_result_readtool_output_ref, offset? (default 0), limit? (default 20000, -1 accepted by server path for all remaining content)

The plugin refuses to read/search a tool-result ref from another session.

Slash Commands

/add-resource ./README.md --to viking://resources/openviking-readme --wait
/add-skill ./skills/install-openviking-memory --wait
/ov-search "OpenViking install" --uri viking://resources/openviking-readme --limit=5
/ov-recall-trace --turn latest --source auto_recall --include-content

Command parsers support quoted args and flags. Resource-only flags are rejected for skill imports.

Troubleshooting

SymptomLikely causeFirst action
configured=falseSetup did not persist configRe-run openclaw openviking setup ... --json; branch on JSON error.
slotActive=falseAnother context engine owns the slot or gateway has stale stateInspect plugins.slots.contextEngine; use --force-slot only after user confirms.
health.ok=falseServer unreachable or wrong baseUrl / keyCheck baseUrl, network, /health, and auth.
No long-term memory after a fresh fact/compact or commit/extraction has not run, or server extraction failedUse memory_store for explicit remember/save/store intents; otherwise run /compact or wait for threshold commit, then check OpenViking server logs.
Recall misses shared documentsresource target is not enabledUse memory_recall with resourceTypes:["resource"] or configure recallTargetTypes: ["resource"].
Summary lacks exact detailArchive summary is too coarseUse ov_archive_search with concrete keywords, then ov_archive_expand.
Large tool output preview is insufficientTool result was externalizedUse openviking_tool_result_search/read with the ref.
Need to explain recall behaviorTrace disabled or no trace for that turnEnable traceRecall; optionally traceRecallPersist; query ov_recall_trace.

Reference Docs in This Repo

  • README.md / README_CN.md: feature overview and quick start.
  • INSTALL.md / INSTALL-ZH.md: install, upgrade, uninstall, and JSON setup handling.
  • INSTALL-AGENT.md: agent-oriented installation workflow.
  • docs/openviking-openclaw-plugin-guide.md: comprehensive Chinese operator/developer guide.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

cron

무료

Schedule reminders and recurring work with the cron tool. Send fixed messages, have an agent execute tasks and report results, or arrange a one-time action at a specified time. List and remove scheduled jobs as needed.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Schedule regular break reminders
  • Set a one-time meeting reminder
  • Run recurring checks and receive results
volcengine/OpenViking4만2026년 10월 19일 업데이트

Turn conversation logs, meeting notes, task records, and other OpenViking materials into daily Markdown reports. The skill separates confirmed outcomes from plans, consolidates repeated evidence, and links reported progress, decisions, blockers, and commitments to their sources.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Preparing an end-of-day work report from scattered records
  • Combining meeting notes and chat logs into a daily summary
  • Separating confirmed results from agent plans and suggestions
volcengine/OpenViking4만2026년 10월 19일 업데이트

Find relevant past execution experience in OpenViking before starting a task. Check when each experience applies and when it does not, then load suitable guidance while giving current facts, policies, and tool results priority.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Find past experience relevant to a new task
  • Exclude guidance that does not fit current conditions
  • Recheck past guidance against current tool results
volcengine/OpenViking4만2026년 10월 19일 업데이트

github

무료

Work with GitHub issues, pull requests, and automated checks through the gh command-line tool. Inspect failed workflow steps and their logs, retrieve selected fields, and query the GitHub API for data beyond standard commands.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Check automated test results on a pull request
  • Inspect failed workflow steps and logs
  • List issue numbers and titles
volcengine/OpenViking4만2026년 10월 19일 업데이트

Convert GitHub resource links into proxy URLs for cloning repositories and downloading files when access is slow. Covers release attachments, raw files, repository archives, and Gist files, with a Python helper for URL conversion.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Cloning a repository when GitHub access is slow
  • Downloading release attachments through a proxy
  • Fetching raw files or repository archives
volcengine/OpenViking4만2026년 10월 19일 업데이트

Set up the OpenViking long-term memory plugin for OpenClaw through conversation. The skill handles installation, configuration, and verification so chat facts can be saved and relevant memories recalled across sessions, using an existing OpenViking server.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Add long-term memory to OpenClaw
  • Recall saved facts across chat sessions
  • Separate memories by assistant or sender
volcengine/OpenViking4만2026년 10월 19일 업데이트

volcengine의 스킬 모두 보기

이 스킬의 문제 신고