docs/channels/vk/README.md
The VK channel uses Bots Long Poll API for bot-based communication with VK social network. It supports text messages, media attachments (photos, videos, audio, documents, stickers), and group chat interactions.
{
"channel_list": {
"vk": {
"enabled": true,
"type": "vk",
"token": "NOT_HERE",
"group_id": 123456789,
"allow_from": ["123456789"],
"group_trigger": {
"mention_only": false,
"prefixes": ["/bot", "!bot"]
}
}
}
}
| Field | Type | Required | Description |
|---|---|---|---|
| enabled | bool | Yes | Whether to enable the VK channel |
| token | string | Yes | Set to NOT_HERE - token is stored securely (see Token Storage) |
| group_id | int | Yes | VK Community ID (Group ID) |
| allow_from | array | No | Allowlist of user IDs; empty means all users are allowed |
| group_trigger | object | No | Configuration for group chat triggers |
For security reasons, the VK access token should not be stored directly in the configuration file. Instead:
token to "NOT_HERE" in the configurationPICOCLAW_CHANNELS_VK_TOKEN environment variableExample using environment variable:
export PICOCLAW_CHANNELS_VK_TOKEN="vk1.a.abc123..."
| Field | Type | Description |
|---|---|---|
| mention_only | bool | Only respond when bot is mentioned in group chats |
| prefixes | []string | List of prefixes that trigger bot response in group chats |
public123456789)messages - Access to messagesphotos - Access to photos (optional)docs - Access to documents (optional)group_id to your community ID (numeric value)allow_from to restrict which user IDs can interact[photo] placeholder[video] placeholder[audio] placeholder[voice] placeholder and support transcription[document: filename][sticker] placeholderThe VK channel supports both voice message reception and text-to-speech capabilities:
To enable voice transcription, configure a voice model in your providers setup. See Voice Transcription for details.
The VK channel supports group chats with configurable triggers:
VK has a maximum message length of 4000 characters. PicoClaw automatically splits longer messages into multiple parts.
{
"channel_list": {
"vk": {
"enabled": true,
"type": "vk",
"token": "NOT_HERE",
"group_id": 123456789
}
}
}
{
"channel_list": {
"vk": {
"enabled": true,
"type": "vk",
"token": "NOT_HERE",
"group_id": 123456789,
"allow_from": ["123456789", "987654321"]
}
}
}
{
"channel_list": {
"vk": {
"enabled": true,
"type": "vk",
"token": "NOT_HERE",
"group_id": 123456789,
"group_trigger": {
"prefixes": ["/bot", "!bot"]
}
}
}
}
group_id is correctallow_from if configuredMake sure the access token has the necessary permissions:
messages - Required for sending and receiving messagesphotos - Optional, for handling photo attachmentsdocs - Optional, for handling document attachmentsIf the bot doesn't respond in group chats:
group_trigger configurationThe VK channel uses the VK SDK for Go library, which supports VK API version 5.199.
For more information about VK API, see: