OpenClaw uses Ditto through a ClawHub skill that calls the Ditto CLI. You don’t need a Ditto account before you start — OpenClaw sets everything up itself and sends you a claim link.
Paste this into OpenClaw
The fastest path: hand the whole job to the agent.
Install the skill "Ditto" (ditto/ditto) from ClawHub:
openclaw skills install ditto
Skill page: https://clawhub.ai/ditto/ditto
Then create your own Ditto account (no API key needed):
npx -y @heyditto/cli init --agent --agent-caller "openclaw" --json
Send me the claimURL from the JSON response so I can claim the account.
Never share the API key — only the claim link.
Verify with: npx -y @heyditto/cli status
OpenClaw installs the skill, creates a free account with the key stored locally (it is never printed), and replies with a claimURL. Open it, sign in, and the account is yours — the agent keeps its key and memories after you claim. See Agent-Native Signup for how the claim flow works.
Prefer to run the commands yourself?
Install the skill:
openclaw skills install ditto
Then let OpenClaw sign itself up:
npx -y @heyditto/cli init --agent --agent-caller "openclaw" --json
You can inspect the public skill page first: Ditto on ClawHub. The skill installs the Ditto CLI as part of setup. If you already manage your own key, heyditto login <key> still works instead.
Verify
npx -y @heyditto/cli status
If the status shows an endpoint and an API key, OpenClaw is connected and will use Ditto memory when the conversation calls for it.
Troubleshooting
| Symptom | Fix |
|---|---|
| The skill won’t install | Confirm OpenClaw uses ClawHub skill sources and clawhub.ai/ditto/ditto is reachable. |
error: no Ditto API key configured | Re-run the init command above, then check npx -y @heyditto/cli status. |
| The claim link doesn’t work | Re-send the full claimURL, including everything after ?t=. |