🧪 Skills
Approve Pairing
Approve a pending DM pairing request without the openclaw CLI, by directly editing credential files. Use when `openclaw pairing approve` is unavailable (CLI...
v2.0.0
Description
name: approve-pairing
description: Approve a pending DM pairing request without the openclaw CLI, by directly editing credential files. Use when openclaw pairing approve is unavailable (CLI not in PATH, elevated access not configured, sandbox environment). Supports telegram, whatsapp, signal, imessage, discord, slack, feishu.
approve-pairing
Approve pending DM pairing requests by writing directly to OpenClaw credential files — no CLI required.
How It Works
Pairing state lives in two files under ~/.openclaw/credentials/:
<channel>-pairing.json— pending requests (sender ID, code, accountId)<channel>-<accountId>-allowFrom.json— approved senders allowlist
Approving = add sender ID to allowFrom file + remove code from pairing file.
Quick Approval (script)
python3 skills/approve-pairing/scripts/approve_pairing.py <channel> <code>
Example:
python3 skills/approve-pairing/scripts/approve_pairing.py telegram PWVW264M
The script:
- Reads
~/.openclaw/credentials/<channel>-pairing.json - Finds the request matching the code
- Appends the sender ID to the allowFrom file
- Removes the code from pending requests
Manual Steps (if script unavailable)
- Read
~/.openclaw/credentials/<channel>-pairing.jsonto getidandmeta.accountId - Write/update
~/.openclaw/credentials/<channel>-<accountId>-allowFrom.json:{ "version": 1, "allowFrom": ["<sender_id>"] } - Clear the pending request from
<channel>-pairing.json
Notes
- Codes expire after 1 hour — check
createdAtif approval fails - A gateway restart may be needed:
openclaw gateway restart - If
accountIdis"default"or empty, the file is<channel>-default-allowFrom.json - Pending requests capped at 3 per channel; old ones must expire before new ones are created
Reviews (0)
Sign in to write a review.
No reviews yet. Be the first to review!
Comments (0)
No comments yet. Be the first to share your thoughts!