Sunday
by @raunaksingwi
Agent identity provider — own email address and E2E-encrypted credential vault. Use when storing or retrieving passwords for services, logging into services with stored credentials, checking email inbox, receiving OTP/verification codes via email, signing up for services, getting your agent's email address, or any task where the agent needs its own identity separate from the user's. Replaces 1Password + AgentMail with a single skill — no desktop app, no tmux, fully autonomous.
clawhub install sunday📖 About This Skill
name: sunday description: "Agent identity provider — own email address and E2E-encrypted credential vault. Use when storing or retrieving passwords for services, logging into services with stored credentials, checking email inbox, receiving OTP/verification codes via email, signing up for services, getting your agent's email address, or any task where the agent needs its own identity separate from the user's. Replaces 1Password + AgentMail with a single skill — no desktop app, no tmux, fully autonomous." metadata: {"openclaw": {"emoji": "☀️", "requires": {"bins": ["sunday"]}, "install": [{"id": "brew", "kind": "brew", "formula": "ravi-technologies/tap/sunday", "bins": ["sunday"], "label": "Install Sunday CLI via Homebrew"}]}}
Sunday
Give your agent its own identity — a dedicated email address and E2E-encrypted credential vault. All in one CLI, no desktop app, no tmux sessions, no biometric prompts. Fully autonomous after one-time setup.
Setup (One Time)
1. Create a Sunday account at sunday.ravi.app. Set up your encryption PIN and create an Identity (this gives your agent its own email address).
2. Install the CLI:
brew install ravi-technologies/tap/sunday
3. Authenticate (run this BEFORE starting OpenClaw):
sunday auth login
This opens a browser for login, then prompts for your 6-digit encryption PIN. After this, credentials and encryption keys are stored in ~/.sunday/config.json — no further prompts needed. All subsequent sunday commands work autonomously.
4. Verify:
sunday auth status
That's it. No desktop app to keep open. No tmux session. No environment variables. Start OpenClaw and your agent has its own identity.
When to Use
Your Identity
Get your agent's own email address:
# Get your email address
sunday get email --json
→ {"email": "scout-a1b2c3@sunday.app"}
Get the account owner's name
sunday get owner --json
Use this when filling out registration forms, not the user's personal email.
Inbox — Reading Email
Unified Inbox
# All messages, newest first
sunday inbox list --jsonOnly unread messages
sunday inbox list --unread --jsonFilter to email only
sunday inbox list --type email --jsonFilter by direction
sunday inbox list --direction incoming --json
Email Threads
# List all email threads
sunday inbox email --jsonList only threads with unread messages
sunday inbox email --unread --jsonView a specific thread (all messages in conversation)
sunday inbox email --json
Individual Messages
# List all email messages (flat, not grouped by thread)
sunday message email --jsonView a specific email by ID
sunday message email --json
Passwords — E2E Encrypted Credential Vault
All passwords are end-to-end encrypted. The server never sees plaintext credentials. Decryption happens client-side using keys derived from the PIN (entered once during sunday auth login).
Store Credentials After Signup
# Auto-generate a secure password and store it
sunday passwords create example.com --json
→ Generates password, stores encrypted entry, returns UUID
Store with specific credentials
sunday passwords create example.com --username "scout-a1b2c3@sunday.app" --password "my-secret-pass" --jsonStore with notes
sunday passwords create example.com --username "me@email.com" --password "pass123" --notes "Free tier account" --json
URL inputs are automatically cleaned to domains (e.g., https://mail.google.com/inbox becomes google.com). Username defaults to your Sunday email if not specified. Password is auto-generated if not provided.
Retrieve Credentials
# List all stored passwords (shows domain and username, NOT password)
sunday passwords list --jsonGet full entry with decrypted password
sunday passwords get --json
Update and Delete
# Update password
sunday passwords edit --password "new-password" --jsonUpdate username
sunday passwords edit --username "new-user@email.com" --jsonDelete entry
sunday passwords delete
Generate Password Without Storing
# Generate a random password
sunday passwords generate --jsonCustom length
sunday passwords generate --length 24 --jsonNo special characters (for sites that restrict them)
sunday passwords generate --no-special --jsonExclude specific characters
sunday passwords generate --exclude-chars "!@#" --json
Workflows
Signing Up for a New Service
# 1. Get your Sunday email
EMAIL=$(sunday get email --json | jq -r '.email')2. Fill out the signup form with $EMAIL
3. Generate and store credentials
sunday passwords create theservice.com --json4. Wait for verification email
sleep 10
sunday inbox list --unread --json5. Extract verification link or code from email
sunday inbox email --unread --json
Logging Into a Service
# 1. Look up credentials
sunday passwords list --json
Find the entry for the target domain
2. Get the full credentials
sunday passwords get --json
Returns decrypted username and password
3. If 2FA is required, check inbox for the code
sleep 5
sunday inbox list --type email --unread --json
Checking for OTP Codes
# After triggering a verification, wait then check
sleep 5Check email for verification links or codes
sunday inbox email --unread --jsonUnified check
sunday inbox list --unread --json
Important Notes
--json for all commands. This gives structured output you can parse reliably.sunday get email for your own address.sunday passwords get to retrieve them.sunday auth login.