viralcode/openwhale/botpress-adk
Claude Code and agent skill by viralcode/openwhale
- community
Checking that the SKILL.md file is still in the repository.
A guide to build AI bots with Botpress's Agent Development Kit (ADK)
Install
npx vskill@latest install viralcode/openwhale/botpress-adkSKILL.md
Botpress ADK Development Guide
A comprehensive guide for building AI bots with the Botpress Agent Development Kit (ADK).
When to Use
- User asks to build a Botpress bot or chatbot
- User mentions ADK, Agent Development Kit, or Botpress
- User wants to create actions, tools, workflows, conversations, tables, triggers, or knowledge bases
- User needs help with
adkCLI commands (init, dev, deploy, link) - User has ADK-related errors or needs troubleshooting
- User asks about bot configuration, state management, or integrations
Quick Reference
The ADK is a convention-based TypeScript framework where file structure maps directly to bot behavior.
Your role: Guide users through the entire bot development lifecycle - from project setup to deployment. Use the patterns and code examples in this skill to write correct, working ADK code.
Key principle: In ADK, where you put files matters. Each component type has a specific src/ subdirectory, and files are auto-discovered based on location.
How to Use This Skill
This skill is your primary reference for building Botpress bots. When a user asks you to build something with the ADK:
- Identify what they need - Is it a new bot, a feature (action, tool, workflow), data storage (table), or event handling (trigger)?
- Check the correct directory - Each component type goes in a specific
src/subdirectory - Use the patterns below - Follow the code examples exactly, they represent the correct ADK conventions
- Run `adk --help` - For CLI commands not covered here, or
adk <command> --helpfor specific help
Decision Guide - What Component to Create:
| User Wants To... | Create This | Location | |
|---|---|---|---|
| Handle user messages | Conversation | src/conversations/ | |
| Add a function the AI can call | Tool | src/tools/ | |
| Add reusable business logic | Action | src/actions/ | |
| Run background/scheduled tasks | Workflow | src/workflows/ | |
| Store structured data | Table | src/tables/ | |
| React to events (user created, etc.) | Trigger | src/triggers/ | |
| Give AI access to docs/data | Knowledge Base | src/knowledge/ | |
| Connect external service (Slack, etc.) | Integration | adk add <name> |
If the information in this skill isn't enough, fetch the corresponding GitHub reference file (links provided in each section) for more detailed specifications.
Important: ADK is AI-Native
The ADK does NOT use traditional chatbot patterns. Don't create intents, entities, or dialog flows.
Instead of:
- Defining intents (
greet,orderPizza,checkStatus) - Training entity extraction (
@pizzaSize,@toppings) - Manually routing to intent handlers
ADK uses:
execute()- The AI understands user intent naturally from instructions- Tools - AI autonomously decides when to call your functions
zai.extract()- Schema-based structured data extraction- Knowledge bases - RAG for grounding responses in your docs
Docs: https://www.botpress.com/docs/adk/ GitHub: https://github.com/botpress/skills/tree/master/skills/adk
Prerequisites & Installation
Before using the ADK, ensure the user has:
- Botpress Account - Create at https://app.botpress.cloud
- Node.js v22.0.0+ - Check with
node --version - Package Manager - bun (recommended), pnpm, yarn, or npm
Install the ADK CLI:
macOS & Linux:
Windows (PowerShell):
Verify installation:
If installation fails, check https://github.com/botpress/adk/releases for manual download options.
Docs: https://www.botpress.com/docs/adk/quickstart GitHub: https://raw.githubusercontent.com/botpress/skills/master/skills/adk/references/cli.md
Quick Start
Once the ADK CLI is installed, create a new bot:
The visual console at http://localhost:3001/ lets you configure integrations and test the bot.
Docs: https://www.botpress.com/docs/adk/quickstart GitHub: https://raw.githubusercontent.com/botpress/skills/master/skills/adk/references/cli.md
Linking and Deploying Your Bot
IMPORTANT: Your bot must be linked to Botpress Cloud and deployed for it to work. The ADK runs locally during development but the bot itself lives in Botpress Cloud.
The Correct Order: Link → Dev → Deploy
Follow this order to get your bot working:
Step-by-step:
- `adk link` - Links your local project to a bot in Botpress Cloud. This creates
agent.jsonwith your workspace and bot IDs. Run this first before anything else.
- `adk dev` - Starts the local development server with hot reloading. Opens the dev console at http://localhost:3001 where you can configure integrations and test your bot. Use
adk chatin a separate terminal to test.
- `adk deploy` - Deploys your bot to production. Run this when you're ready for your bot to be live and accessible through production channels (Slack, WhatsApp, webchat, etc.).
Troubleshooting Errors
If you encounter errors when running `adk dev` or `adk deploy`:
- Check the logs - Look at the terminal output or the logs panel in the dev console at http://localhost:3001
- Copy the error message - Select and copy the full error message from the logs
- Ask for help - Paste the error back to the AI assistant and ask it to help fix the issue
Common error scenarios:
- Integration configuration errors: Usually means an integration needs to be configured in the UI at localhost:3001
- Type errors: Often caused by incorrect imports or schema mismatches
- Deployment failures: May indicate missing environment variables or invalid configuration
Example workflow for fixing errors:
Docs: https://www.botpress.com/docs/adk/quickstart GitHub: https://raw.githubusercontent.com/botpress/skills/master/skills/adk/references/cli.md
Project Structure
Critical rule: File location determines behavior. Place components in the correct src/ subdirectory or they won't be discovered.
Key Configuration Files:
- agent.config.ts - Primary configuration defining bot metadata, AI models, state schemas, and integrations (you edit this)
- agent.json - Links agent to workspace/bot IDs. Auto-generated by
adk linkoradk dev. Add to .gitignore - contains environment-specific IDs that differ per developer - package.json - Node.js config with
@botpress/runtimedependency and scripts fordev,build,deploy - tsconfig.json - TypeScript configuration for the project
- .env - Environment variables for API keys and secrets (never commit!)
- .gitignore - Should include:
agent.json,.env,node_modules/,.botpress/
Docs: https://www.botpress.com/docs/adk/project-structure GitHub: https://raw.githubusercontent.com/botpress/skills/master/skills/adk/references/agent-config.md
Agent Configuration
The agent.config.ts file defines your bot's identity, AI models, state schemas, and integrations. Always start here when setting up a new bot.
Available models:
- OpenAI:
openai:gpt-4o,openai:gpt-4o-mini,openai:gpt-4-turbo - Anthropic:
anthropic:claude-3-5-sonnet,anthropic:claude-3-opus - Google:
google:gemini-1.5-pro,google:gemini-1.5-flash
Docs: https://www.botpress.com/docs/adk/project-structure GitHub: https://raw.githubusercontent.com/botpress/skills/master/skills/adk/references/agent-config.md
Core Concepts
1. Actions - Reusable Business Logic
When to create an Action:
- You need reusable logic that will be called from multiple places (workflows, conversations, triggers)
- You're wrapping an external API or database operation
- You want testable, composable business logic
- You need to call integration APIs (Slack, Linear, etc.) with custom logic
When NOT to use an Action (use a Tool instead):
- You want the AI to decide when to call it autonomously
- The function should be available during
execute()
Actions are not directly callable by the AI - convert them to tools with .asTool() if the AI needs to use them.
Location: src/actions/*.ts
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 91 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/botpress-adk/SKILL.md
Popularity
- Repository stars
- 51
- Repository forks
- 4
- Repository npm downloads, 7 days
- 67
- 7-day trend score
- 34
Stars and forks are for the whole GitHub repository, not this skill alone. Downloads are for the repository's npm package. Refreshed 18 Mar 2026, 7 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/viralcode/openwhale/botpress-adk)