fix(openclaw): split OpenViking import tools#1946
Merged
Mijamind719 merged 1 commit intoMay 10, 2026
Merged
Conversation
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
PR Code Suggestions ✨No code suggestions found for the PR. |
5446441 to
e40c799
Compare
5a99f14 to
b66d51a
Compare
ZaynJarvis
approved these changes
May 10, 2026
ZaynJarvis
reviewed
May 10, 2026
Replace the ambiguous OpenClaw ov_import surface with explicit add_resource and add_skill tools and slash commands. Guide media attachment imports through the existing OpenViking temp-upload and resource import APIs instead of invented upload endpoints. Update docs, plugin manifest, and unit coverage for the split import commands. Co-authored-by: GPT-5.5 <noreply@openai.com>
b66d51a to
9449d9b
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes #1945.
Issue #1945 is the local OpenClaw chat media-attachment failure:
[media attached: /Users/.../.openclaw/media/inbound/xxx.xlsx (...)]/openviking/v1/files/uploadThis PR fixes that flow by replacing the ambiguous agent-facing
ov_import(kind=...)surface with two explicit OpenViking import operations:add_resource//add-resource: import a document, directory, URL, Git repository, or OpenClaw media attachment into OpenViking resourcesadd_skill//add-skill: import or register an OpenViking agent skillThe
add_resourcetool now explicitly tells the agent to pass the exact local path from[media attached: /path ...]messages and not to invent OpenViking upload REST endpoints. The underlying behavior still uses the existing OpenViking upload/import APIs:POST /api/v1/resources/temp_uploadfor local files/directoriesPOST /api/v1/resourcesfor resource importPOST /api/v1/skillsfor skill importDocs, plugin manifest, command parsing tests, and the agent tool naming convergence note are updated accordingly. The old
/ov-importslash command is no longer kept as a public command.Testing
Result: 2 test files passed, 75 tests passed.
Real OpenClaw chat E2E, 2026-05-10:
commands.listexposes/add-resourceand/add-skill/add-resource /tmp/ov-pr1946-e2e/resource.md --to viking://resources/pr1946-mock-resourcethroughchat.send; OpenClaw returned success and OVfs/stat+fs/lsfound the imported resource file/add-skill /tmp/ov-pr1946-e2e/demo-skillthroughchat.send; OpenClaw returned success and OVfs/ls viking://agent/main/skillsfoundov-pr1946-demo-skill[media attached: /tmp/ov-pr1946-e2e/resource.md ...]; the model calledadd_resourcewith the exact local media path, the tool returned success, and OVfs/statfoundviking://resources/pr1946-media-resource-2Note: with the local real
ov.conf, non-wait resource import persisted successfully, but--waitprocessing and skill import hit the current upstream model quota/connection limit. To avoid conflating plugin behavior with external quota, the full chat/tool/storage E2E above was rerun against a temporary local OpenAI-compatible mock model server while keeping the real OpenClaw plugin and OpenViking HTTP API path.