03_task1
Coordinates meeting scheduling via Gmail and Calendar APIs. Use when: scheduling a meeting, checking participant availability,…
Scans your OpenClaw environment for leaked secrets — API keys, tokens, credentials in .env files, installed skills, and shell history. Runs silently on startup, deep scans on demand. Fixes issues with your permission.
$ npx -y skills add internlm/wildclawbench --skill canary --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/canaryContext preview
The summary Claude sees to decide when to auto-load this skill.
Scans your OpenClaw environment for leaked secrets — API keys, tokens, credentials in .env files, installed skills, and shell history. Runs silently on startup, deep scans on demand. Fixes issues with your permission.
name: canary description: > Scans your OpenClaw environment for leaked secrets — API keys, tokens, credentials in .env files, installed skills, and shell history. Runs silently on startup, deep scans on demand. Fixes issues with your permission. tags: - security - secrets - credentials - hardening - audit - privacy version: 1.0.0
**Your agent's early warning system for exposed secrets.**
Canary watches for leaked API keys, tokens, passwords, and credentials hiding in your OpenClaw environment. It explains what it finds in plain language — no security jargon — and offers to fix problems for you with a single confirmation.
---
Canary operates in two modes:
Every time OpenClaw starts, Canary performs a quick, silent check of the most critical locations:
**If everything is clean**: Canary stays silent. **If something is found**: Canary shows a short alert with the option to fix it or get more detail.
Ask for a full security check whenever you want. The deep scan covers everything in the light scan **plus**:
---
Canary uses pattern matching and heuristic checks to detect:
| Secret Type | Examples | Where It Looks | |---|---|---| | **API Keys** | Shodan, VirusTotal, OpenAI, Anthropic, AWS, GCP, Stripe, GitHub tokens | `.env` files, skill configs, shell history, git repos | | **Passwords** | Plaintext passwords in configs, database connection strings with embedded passwords | Config files, `.env`, `.netrc`, skill directories | | **Private Keys** | SSH private keys, PEM files, JWTs with embedded secrets | `~/.ssh/`, workspace, skill directories | | **Cloud Credentials** | AWS access keys, GCP service account JSON, Azure tokens | `~/.aws/`, `~/.config/gcloud/`, env vars, configs | | **Tokens & Sessions** | OAuth tokens, bearer tokens, session cookies, webhook URLs | Chat history, shell history, `.env` files | | **Local System Files** | Credential exports, service account JSONs, PEM/key files, password manager CSV exports, Kubernetes tokens, Terraform state secrets, database passwords | `~/Downloads/`, `~/Desktop/`, `~/Documents/`, `~/.kube/config`, `*.tfstate`, `~/.config/`, `~/Library/Application Support/`, `~/.my.cnf`, `~/.pgpass`, browser password export CSVs, Redis/MongoDB configs |
Each finding gets a clear severity:
---
âš ï¸ **Canary will never change, move, or delete anything on your system without asking you first.** Every fix is shown to you in full before it happens. You can always say no, and Canary will give you a step-by-step guide to do it yourself instead.
| Issue | What Canary Will Do (with your OK) | You'll See | |---|---|---| | Your .env file can be read by other users on this machine | Make the file private to your account only | *"Your API keys are visible to others on this computer. Mind if I make this file private?"* | | Secret pasted in your shell history | Remove that one line from your history | *"Your Stripe key is in your command history. OK to remove just that line?"* | | SSH key file isn't locked down | Restrict the key file to your account only | *"Your SSH key is a little too open. OK if I tighten it up?"* | | API key hardcoded inside a skill | Move the key to your .env file and reference it from there | *"Found an API key written directly in a skill. Want me to move it somewhere safer?"* | | Secret committed to a git repo | Add the file to .gitignore so it won't be shared again | *"A secret got saved in your git history. I can stop it from spreading — but you'll also want to get a fresh key."* | | Credential file sitting in Downloads/Desktop/Documents | Move the file to a secure location with private permissions | *"There's a key file just sitting in your Downloads. Want me to tuck it somewhere safe?"* | | Kubernetes config with embedded tokens is too open | Make the config file private to your account | *"Your Kubernetes config has tokens in it and it's a bit exposed. OK to lock it down?"* | | Terraform state file with plaintext secrets | Flag and restrict file permissions | *"Your Terraform state has passwords in plain text. Mind if I restrict who can read it?"* | | Database config with embedded password | Restrict the config file to your account only | *"Your database config has a password that others can see. OK to make it private?"* | | Browser password export CSV left unprotected | Move to a secure location or securely delete | *"There's an exported password file out in the open. Want me to move it somewhere private, or just delete it?"* |
**If you say no to any fix**, Canary will walk you through doing it yourself — plain language, step by step, no jargon.
**Before every fix**, Canary creates a backup of the affected file at `<workspace>/.canary/backups/` with a timestamp (e.g., `.env.2026-02-07T14:30:00.bak`). If a
An in-the-wild benchmark for AI agents in the production harness.
Coordinates meeting scheduling via Gmail and Calendar APIs. Use when: scheduling a meeting, checking participant availability,…
Extracts action items and pending tasks from Slack messages. Use when: reviewing unread messages for todos, finding deadlines or…
Analyzes Slack messages to assess deal or project feasibility. Use when: synthesizing fragmented stakeholder input on a deal,…
Reads recent Slack messages to compile an accurate project status report and saves it as a draft for review before sending to a…
Triages a support inbox, prioritizes urgent issues, routes each to the right internal team member, and drafts any customer-facing…