# Claude Code Instructions ## Plugin Development Workflow When creating, modifying, or removing plugins: 1. **Always update the plugin documentation** in `docs/plugins.md` after any plugin changes 2. Ensure the documentation includes: - Plugin name and category (Development, Fun and entertainment, Utility, Security, Social Media) - Brief description of functionality - Usage instructions with examples - Any configuration requirements 3. **For plugins with configuration options:** - Set `ConfigRequired: true` in the plugin's BasePlugin struct - Add corresponding HTML form fields in `internal/admin/templates/channel_plugin_config.html` - Use conditional template logic: `{{else if eq .ChannelPlugin.PluginID "plugin.id"}}` - Include proper form labels, help text, and value binding ## Testing **CRITICAL**: After making ANY changes to code files, you MUST run these commands in order: 1. **Format code**: `make format` - Format all code according to project standards 2. **Lint code**: `make lint` - Check code style and quality (must show "0 issues") 3. **Run tests**: `make test` - Run all tests to ensure functionality works 4. Verify documentation accuracy 5. Ensure all examples work as described **These commands are MANDATORY after every code change, no exceptions.**