Documentation IndexFetch the complete documentation index at: /llms.txtUse this file to discover all available pages before exploring further.
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
Build reusable plugins for bot functionality
bp init --type plugin
import { PluginDefinition, z } from '@botpress/sdk' import messaging from './bp_modules/messaging' export default new PluginDefinition({ name: 'acme/logger', version: '1.0.0', interfaces: { messaging, }, configuration: { schema: z.object({ logLevel: z.enum(['debug', 'info']), }), }, actions: { log: { input: { schema: z.object({ message: z.string() }) }, output: { schema: z.object({ success: z.boolean() }) }, }, }, })
import * as bp from '.botpress' const plugin = new bp.Plugin({ actions: { log: async ({ input, logger }) => { logger.info(input.message) return { success: true } }, }, }) plugin.on.message('*', async ({ message, logger }) => { logger.info('Message received:', message.payload) }) export default plugin