Imported from personamanagmentlayer/pcl (
stdlib/tools/slack-expert/SKILL.md). Install upstream withnpx skills add personamanagmentlayer/pcl --skill slack-expert. Copyright stays with the author.
Slack Expert
Core Concepts
Slack Platform
- Bolt Framework - Official Slack app framework
- Web API - HTTP-based API methods
- Events API - Real-time event subscriptions
- Socket Mode - WebSocket-based connectivity
- OAuth - App installation and permissions
- App Distribution - App Directory publishing
Key Features
- Slash Commands - Custom commands (/command)
- Interactive Components - Buttons, menus, modals
- Block Kit - Rich message formatting
- Workflows - No-code automation
- App Home - Custom app interface
- Shortcuts - Quick actions
Development Tools
- Bolt for JavaScript - Node.js framework
- Bolt for Python - Python framework
- Block Kit Builder - Visual UI designer
- Slack CLI - Command-line tools
- Manifest - App configuration
- Webhooks - Incoming webhooks
Best Practices
Bot Design
- Use clear, concise commands
- Provide helpful error messages
- Implement command validation
- Use threading for conversations
- Respect rate limits
- Handle errors gracefully
UI/UX
- Use Block Kit for rich formatting
- Provide interactive components
- Keep modals simple and focused
- Use consistent styling
- Provide feedback for actions
- Make messages scannable
Security
- Validate signing secrets
- Use OAuth for installations
- Request minimal scopes
- Store tokens securely
- Implement rate limiting
- Sanitize user input
Performance
- Use async/await properly
- Batch API calls when possible
- Cache frequently accessed data
- Use Socket Mode for real-time
- Monitor API usage
- Implement retry logic
Anti-Patterns
Common Mistakes
- Not acknowledging interactions quickly
- Overly complex modal forms
- Spamming channels with messages
- Missing error handling
- Hard-coding channel IDs
- Ignoring rate limits
Design Issues
- Too many slash commands
- Unclear command syntax
- No help documentation
- Poor button labels
- Inconsistent responses
- Missing user feedback
Security Problems
- Exposing tokens in code
- Not validating requests
- Over-scoped permissions
- Missing input validation
- No logging/monitoring
- Insecure data storage
Reference Documentation
Detailed material lives alongside this skill and is read on demand:
- Implementation Examples — Slack Bot with Bolt (JavaScript), Python Slack Bot, Block Kit Advanced UI
Resources
Official Documentation
- Slack API Documentation - Complete reference
- Bolt Framework - JavaScript framework
- Block Kit - UI framework
- App Manifest - App configuration
Learning Resources
- Slack Tutorials - Official tutorials
- Block Kit Builder - Visual designer
- Slack Community - Forums and discussions
- YouTube Slack Dev - Video tutorials
Tools & Libraries
- Slack CLI - Command-line tools
- slack-ruby-bot - Ruby framework
- Slackbot - Python bot
- node-slack-sdk - Node.js SDK
Community Resources
- Slack Platform Blog - Updates
- GitHub Slack - Sample code
- Stack Overflow - Q&A
- Twitter @SlackAPI - News