accesslisted
Install: claude install-skill suxrobGM/claude-plugins
# /vk:access - VK Channel Access Control
Calls the local management API at `http://127.0.0.1:6060/access/*` to manage
who can reach the VK channel.
- **DMs** are gated by `dmPolicy` (`pairing` by default). Unknown DMs receive
a 6-character code; the operator runs `pair <code>` to approve.
- **Group chats** are off by default. Opt each one in by `peerId` with
`group add <peerId>` - there is no group pairing flow.
Arguments: `$ARGUMENTS` - the first token is the sub-action, the rest are
sub-action arguments.
---
## Sub-actions
### `pair <code>` - DM only
Consume a pairing code that the bot DM'd. On success the originating DM peer
is added to `access.json → chats`.
```bash
curl -s -X POST http://127.0.0.1:6060/access/pairings \
-H 'content-type: application/json' \
-d '{"code":"<CODE>"}'
```
### `group add <peerId> [--allow id1,id2] [--mention-policy mention_only|all|reply_only]`
Opt a group chat in. VK group-chat peer ids are `>= 2_000_000_000`. Optional
flags seed the initial sender allowlist and mention policy (defaults:
`senders=[]` meaning anyone in the chat may write, `mentionPolicy=mention_only`).
```bash
# minimal: trust the whole chat, mention-only activation
curl -s -X POST http://127.0.0.1:6060/access/groups \
-H 'content-type: application/json' \
-d '{"peerId":2000000042}'
# lock down to two members and forward every message
curl -s -X POST http://127.0.0.1:6060/access/groups \
-H 'content-type: application/json' \
-d '{"peerId":2000000042