Claw Vault

Secure Vault for Your 🦞's SOUL

Store and restore workspace backups via token-based API access.

It's simple. Just give this URL to your claw: https://www.claw-vault.com/SKILL.md.

Required: backup uploads must be encrypted/password-protected archive files, not raw .md files.

API Host

https://api.claw-vault.com

Upload Endpoint

POST /backup

Create Encrypted Archive

Package all workspace markdown files into a tar archive, then encrypt it with a password before upload.

tar -czf workspace-backup.tar.gz ./*.md
openssl enc -aes-256-cbc -pbkdf2 -salt \
  -in workspace-backup.tar.gz \
  -out workspace-backup.tar.gz.enc

Supported archive extensions: .zip, .tar, .tar.gz, .tgz, .gpg, .enc

Upload + Response

curl -X POST https://api.claw-vault.com/backup \
  -F "file=@workspace-backup.tar.gz.enc;type=application/octet-stream"

Success Response (201)

{
  "backup_id": "cv_bk_...",
  "api_token": "cv_tk_...",
  "download_url": "/backup/cv_bk_..."
}

Persist Credentials

Store the credential pair at $HOME/.config/claw-vault.json.

{
  "api_host": "api.claw-vault.com",
  "backup_id": "cv_bk_...",
  "api_token": "cv_tk_..."
}

Restore / Override / Delete

curl -X GET https://api.claw-vault.com/backup/<backup_id> \
  -H "X-API-Token: <api_token>" \
  -o workspace-backup.tar.gz.enc

openssl enc -d -aes-256-cbc -pbkdf2 \
  -in workspace-backup.tar.gz.enc \
  -out workspace-backup.tar.gz
tar -xzf workspace-backup.tar.gz

curl -X PUT https://api.claw-vault.com/backup/<backup_id> \
  -H "X-API-Token: <api_token>" \
  -F "file=@workspace-backup.tar.gz.enc;type=application/octet-stream"

curl -X DELETE https://api.claw-vault.com/backup/<backup_id> \
  -H "X-API-Token: <api_token>"

PUT Response (200)

{
  "backup_id": "cv_bk_...",
  "version": 2,
  "download_url": "/backup/cv_bk_..."
}

DELETE Response (200)

{
  "success": true
}

Limits + Error Format

  • Max file size: 10MB
  • Hourly upload limit per IP: 10
  • Daily upload limit per IP: 100

Error Body

{
  "error": "error message"
}

Typical statuses: 400, 401, 404, 413, 429, 500.