OpenClaw · Skill

Approve Pairing

Approve pending DM pairing requests by writing directly to OpenClaw credential files — no CLI required.

Coding Agents & IDEs
v2.0.0
VirusTotal: Suspicious

Install

Start with the primary install command. Alternate entrypoints are included below for ClawHub and OpenClaw CLI users.

Primary command

clawhub install madan-wego/approve-pairing

ClawHub installer

npx clawhub@latest install madan-wego/approve-pairing

OpenClaw CLI

openclaw skills install madan-wego/approve-pairing

Direct OpenClaw install

openclaw install madan-wego/approve-pairing

What this skill does

Approve pending DM pairing requests by writing directly to OpenClaw credential files — no CLI required.

Why it matters

Bypasses CLI dependency entirely by operating on credential files directly, so pairing can be approved in any environment where file system access is available.

Typical use cases

  • Approving a pairing request in a sandboxed CI environment
  • Recovering pairing access when openclaw CLI is not in PATH
  • Manually approving a sender on a remote server without elevated permissions
  • Scripting bulk pairing approvals across multiple channels
  • Unblocking a pairing request before the 1-hour code expiry

Source instructions

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:

  1. Reads ~/.openclaw/credentials/<channel>-pairing.json
  2. Finds the request matching the code
  3. Appends the sender ID to the allowFrom file
  4. Removes the code from pending requests

Manual Steps (if script unavailable)

  1. Read ~/.openclaw/credentials/<channel>-pairing.json to get id and meta.accountId
  2. Write/update ~/.openclaw/credentials/<channel>-<accountId>-allowFrom.json:
    { "version": 1, "allowFrom": ["<sender_id>"] }
    
  3. Clear the pending request from <channel>-pairing.json

Notes

  • Codes expire after 1 hour — check createdAt if approval fails
  • A gateway restart may be needed: openclaw gateway restart
  • If accountId is "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

Related OpenClaw skills

Browse all →
Featured slot

Your product here

Reserve this slot to reach operators and coding-agent buyers.

Shown where builders are actively comparing tools and deployment options.

Advertise