A comprehensive OpenClaw skill that integrates with Untappd, the world's largest social network for beer enthusiasts. Search for beers, check in with ratings and comments, view checkin history, and manage your beer-drinking social experience directly from your OpenClaw assistant.
- Natural language search queries ("Find a Dogfish Head IPA")
- Comprehensive beer information with ratings and brewery details
- Smart brewery + beer name optimization
- JSON and formatted table output
- Full-featured check-ins with 1-5 star ratings (supports half ratings)
- Add comments and tasting notes (up to 140 characters)
- GPS location integration
- Social media sharing (Facebook, Twitter, Foursquare)
- Automatic badge earning
- Dry-run mode for testing
- Personal checkin history viewing
- Public user profile access
- Drinking statistics and badge tracking
- Compact and detailed viewing formats
- JSON export for data analysis
- Client credentials for searches and public data
- OAuth 2.0 for authenticated actions
- Secure credential storage
- Interactive setup process
- OpenClaw installed and running
- Python 3.8+
- Untappd API credentials (free from Untappd API)
-
Clone this repository into your OpenClaw skills directory:
cd ~/.openclaw/skills git clone https://github.com/DexDevCode/openclaw-untappd-skill.git untappd
-
Install dependencies (if any additional packages are needed):
cd untappd pip install -r requirements.txt # If requirements.txt exists
-
Set up authentication:
# Configure your Untappd API credentials python3 scripts/untappd_setup.py credentials # Complete OAuth flow for authenticated features python3 scripts/untappd_setup.py auth # Test your setup python3 scripts/untappd_setup.py test
- Visit Untappd API and register your application
- Note down your Client ID and Client Secret
- Set redirect URI to
http://localhost:8080/callback(for local OAuth)
You can configure credentials via:
Option 1: Interactive Setup (Recommended)
python3 scripts/untappd_setup.py credentialsOption 2: Environment Variables
export UNTAPPD_CLIENT_ID="your_client_id_here"
export UNTAPPD_CLIENT_SECRET="your_client_secret_here"
export UNTAPPD_ACCESS_TOKEN="your_access_token_here" # Optional, for authenticated featuresOption 3: Configuration File
Create ~/.openclaw/skills/untappd/credentials.ini:
[untappd]
client_id = your_client_id_here
client_secret = your_client_secret_here
access_token = your_access_token_here # OptionalYou: "Search for Russian River Pliny the Elder on Untappd"
Assistant: [Uses untappd skill to search and display results]
You: "Check in to that beer with a 5 star rating"
Assistant: [Performs checkin with rating]
You: "Show my recent beer checkins"
Assistant: [Displays your checkin history]
# Search for beers
python3 scripts/untappd_search.py "Stone Arrogant Bastard"
# Check in to a beer (ID 12345) with rating and comment
python3 scripts/untappd_checkin.py 12345 --rating 4.5 --comment "Exceptional hop character!"
# View your recent checkins
python3 scripts/untappd_checkins.py --limit 10 --compact
# Get detailed beer information
python3 scripts/untappd_search.py "Guinness" --format json- β Search beers and breweries
- β Get detailed beer information
- β View public user profiles
- β Access trending beer data
- β Check in to beers with ratings/comments
- β Access private user data
- β Share to social media platforms
- β Manage wishlist and badges
- β View personalized recommendations
untappd/
βββ SKILL.md # OpenClaw skill definition
βββ README.md # This file
βββ EXAMPLES.md # Usage examples and workflows
βββ test_skill.py # Comprehensive test suite
βββ .gitignore # Git ignore rules
βββ scripts/ # CLI tools and core functionality
β βββ untappd_client.py # Core API client library
β βββ untappd_setup.py # Authentication setup tool
β βββ untappd_search.py # Beer search CLI
β βββ untappd_checkin.py # Beer checkin CLI
β βββ untappd_checkins.py # Checkin history CLI
βββ references/ # Detailed documentation
βββ api.md # Complete API reference
βββ authentication.md # Authentication setup guide
Run the comprehensive test suite:
python3 test_skill.pyTests include:
- Skill structure validation
- File permissions and executability
- Mock API functionality
- Error handling
- Authentication flow
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
- Fork this repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Run tests (
python3 test_skill.py) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow PEP 8 for Python code
- Include docstrings for functions and classes
- Add tests for new functionality
- Update documentation as needed
This project is licensed under the MIT License - see the LICENSE file for details.
- OpenClaw - The AI assistant platform
- Untappd - The social beer platform
- Untappd API Documentation
This is an unofficial integration with Untappd. Please use responsibly and in accordance with Untappd's Terms of Service and API rate limits (100 requests per hour).
- Issues: Report bugs or request features via GitHub Issues
- OpenClaw Documentation: openclaw.com/docs
- Untappd API Support: untappd.com/api