Skip to content

Quickstart: OpenClaw

OpenClaw is an open-source AI agent that runs locally and connects to LLMs like Claude, GPT, and DeepSeek through messaging platforms. This guide adds Tusky as a storage skill so your OpenClaw agent can persist files, back up conversations, and share data — all on the decentralized Walrus network.

OpenClaw Agent
↕ MCP (skill)
Tusky CLI (tusky mcp serve)
↕ Tusky SDK
Tusky API → Hot Cache → Walrus Network

OpenClaw’s skill system is built on MCP. Installing Tusky as a skill gives your agent 29 storage tools — vaults, files, folders, trash, sharing — accessible through natural language.

  1. Get a Tusky API key

    Sign up at app.tusky.ai (you’ll need an access code during early access) and create an API key from the dashboard. Keys start with tdp_.

  2. Install the Tusky CLI

    Terminal window
    npm install -g @tuskydp/cli

    Verify the install:

    Terminal window
    tusky --version
  3. Create the Tusky skill

    Create a SKILL.md in your OpenClaw skills directory:

    Terminal window
    mkdir -p ~/.openclaw/workspace/skills/tusky

    Write the skill file at ~/.openclaw/workspace/skills/tusky/SKILL.md:

    ---
    name: tusky
    description: Decentralized file storage — upload, download, and manage files on the Walrus network via Tusky
    metadata:
    {
    "openclaw":
    {
    "emoji": "🦣",
    "requires": { "bins": ["tusky"], "env": ["TUSKYDP_API_KEY"] },
    "primaryEnv": "TUSKYDP_API_KEY"
    }
    }
    ---
    You have access to Tusky decentralized storage through MCP tools.
    Tusky stores files on the Walrus network — a decentralized storage layer with no single point of failure.
    ## Key concepts
    - **Vaults** are containers for files. Use `public` visibility for sharing, `shared` for encrypted collaboration.
    - **Files** upload to a hot cache first, then sync to Walrus in the background.
    - **File statuses**: `uploading``hot``synced``cold`. Files are available for download in any status except `uploading`.
    ## Common workflows
    ### Save a file
    1. Check for an existing vault with `tusky_vault_list`, or create one with `tusky_vault_create`
    2. Upload with `tusky_file_upload` (from disk) or `tusky_file_create` (from inline content)
    ### Retrieve a file
    1. Find it with `tusky_file_list` (filter by vault or folder)
    2. Download with `tusky_file_download` (to disk) or `tusky_file_read` (inline content)
    ### Organize files
    - Use `tusky_folder_create` to create folders within vaults
    - Use `tusky_file_list` with a `folderId` to browse folder contents
    ## Rules
    - Always check for existing vaults before creating new ones
    - Use descriptive vault and file names
    - Prefer `tusky_file_create` over `tusky_file_upload` when working with generated text content
    - Deleted files go to trash first — use `tusky_trash_restore` to recover mistakes
  4. Add the MCP server to your OpenClaw config

    Add the Tusky MCP server to ~/.openclaw/openclaw.json:

    In any OpenClaw chat, run:

    /mcp set tusky={"command":"tusky","args":["mcp","serve"],"env":{"TUSKYDP_API_KEY":"tdp_your_key"}}
  5. Restart OpenClaw and test

    Refresh your skills or restart the agent, then try:

    “List my Tusky vaults”

    Your agent should call tusky_vault_list and return results.

Once the skill is active, try these prompts in any OpenClaw channel (Signal, Telegram, Discord, WhatsApp):

PromptWhat happens
”Create a vault called ‘notes‘“Calls tusky_vault_create
”Save today’s conversation to Tusky”Calls tusky_file_create with inline content
”Upload the file at ~/reports/q1.pdf to Tusky”Calls tusky_file_upload from local disk
”What files do I have in my notes vault?”Calls tusky_file_list filtered by vault
”Download the latest backup from Tusky”Calls tusky_file_download to local disk
”How much storage am I using?”Calls tusky_account_info

If you run multiple OpenClaw agents, you can assign Tusky to specific agents instead of making it globally available:

{
"agents": {
"research-bot": {
"mcpServers": ["tusky"]
}
},
"mcp": {
"servers": {
"tusky": {
"command": "tusky",
"args": ["mcp", "serve"],
"env": {
"TUSKYDP_API_KEY": "tdp_your_key"
}
}
}
}
}

For encrypted collaboration between agents or users, enable SEAL encryption by adding a Sui keypair:

Terminal window
# Generate or import a Sui keypair
tusky sui setup

Then add the key to your MCP server config:

{
"mcp": {
"servers": {
"tusky": {
"command": "tusky",
"args": ["mcp", "serve"],
"env": {
"TUSKYDP_API_KEY": "tdp_your_key",
"TUSKYDP_SUI_PRIVATE_KEY": "suiprivkey1..."
}
}
}
}
}

Now your agent can create shared vaults, grant access to other Sui addresses, and encrypt/decrypt files transparently.

SymptomFix
Skill not appearingCheck that ~/.openclaw/workspace/skills/tusky/SKILL.md exists and restart OpenClaw
”Command not found”Use the absolute path to tusky in openclaw.json — find it with which tusky
”Invalid API key”Verify your key with tusky whoami, or create a new one at app.tusky.ai
MCP server not connectingCheck TUSKYDP_API_KEY is set in the env block of your openclaw.json config
”SEAL encryption not available”Add TUSKYDP_SUI_PRIVATE_KEY to enable shared vault access
Tools not showing in chatRun /mcp show tusky to verify the server is registered

The Tusky MCP server exposes 29 tools:

CategoryTools
Accounttusky_account_info, tusky_account_link_sui, tusky_account_unlink_sui
Vaultscreate, list, get, update, delete
Filesupload, create, download, read, list, get, delete, retry
Folderscreate, list, get_contents, update, delete
Trashlist, restore, delete, empty
Shared vaultsgrant_access, revoke_access, list_members, list_shared