https://github.com/tonykipkemboi/crewai-release-monitor-announcer
🚀 Automated CrewAI release monitoring and community announcements
https://github.com/tonykipkemboi/crewai-release-monitor-announcer
Last synced: about 2 months ago
JSON representation
🚀 Automated CrewAI release monitoring and community announcements
- Host: GitHub
- URL: https://github.com/tonykipkemboi/crewai-release-monitor-announcer
- Owner: tonykipkemboi
- Created: 2025-08-25T19:19:27.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2025-08-25T19:19:29.000Z (3 months ago)
- Last Synced: 2025-09-09T12:53:07.783Z (3 months ago)
- Language: Python
- Size: 248 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🚀 CrewAI Release Monitor & Announcer
An automated CrewAI crew that monitors CrewAI releases and creates enhanced community announcements.
## ✨ Features
- **🔍 Release Monitoring**: Automatically scrapes GitHub releases page for new CrewAI versions
- **📊 Technical Analysis**: Researches and analyzes code changes and improvements
- **✍️ Enhanced Content**: Creates comprehensive, emoji-rich release notes with developer context
- **🗣️ Auto-Posting**: Automatically posts announcements to CrewAI Discourse community forum
- **🤖 Full Transparency**: All posts clearly attributed to CrewAI Agent with timestamps
## 🏗️ Architecture
### Agents
- **GitHub Release Monitor**: Monitors releases and extracts version information
- **Release Context Researcher**: Analyzes technical changes using custom research tools
- **Technical Writer**: Creates enhanced, community-friendly release notes
- **Discourse Forum Publisher**: Posts announcements to the community forum
### Custom Tools
- **CodeAnalysisTool**: Researches technical context without GitHub API keys
- **PyPIAnalysisTool**: Analyzes package information and dependencies
- **DiscoursePostTool**: Posts to Discourse forum with proper formatting
- **DiscourseSetupTool**: Validates API credentials and provides setup guidance
## 🚀 Quick Start
### Prerequisites
- Python 3.10+
- CrewAI framework
- Discourse API credentials
### Installation
1. **Clone the repository**
```bash
git clone
cd crewai_release_monitor_announcer_v1_crewai-project
```
2. **Install dependencies**
```bash
crewai install
# or
uv sync
```
3. **Configure environment variables**
```bash
# Create .env file with:
OPENAI_API_KEY=your_openai_api_key
DISCOURSE_API_KEY=your_discourse_api_key
DISCOURSE_USERNAME=your_discourse_username
```
4. **Run the crew**
```bash
crewai run
```
## ⚙️ Configuration
### Environment Variables
Create a `.env` file with:
```bash
OPENAI_API_KEY=your_openai_api_key
DISCOURSE_API_KEY=your_discourse_api_key
DISCOURSE_USERNAME=your_discourse_username
```
### Discourse Setup
1. Go to https://community.crewai.com/admin/api/keys
2. Create a new Global API Key
3. Assign it to your username
4. Add the key and username to your `.env` file
## 📖 Usage
### Local Execution
```bash
# Run the complete pipeline
crewai run
# Train the crew (optional)
crewai train
# Test the crew
crewai test
```
### CrewAI Enterprise Deployment
Deploy to CrewAI Enterprise for:
- **Webhook-driven automation**: Instant triggers from GitHub releases
- **Enterprise reliability**: Cloud hosting with monitoring
- **RBAC security**: Role-based access control
- **Scalable infrastructure**: Automatic scaling and resource management
## 🔧 Development
### Project Structure
```
├── src/crewai_release_monitor_announcer/
│ ├── config/
│ │ ├── agents.yaml # Agent definitions
│ │ └── tasks.yaml # Task configurations
│ ├── tools/
│ │ ├── analysis_tools.py # Custom analysis & posting tools
│ │ └── discourse_formatter.py # Content formatting utilities
│ ├── crew.py # Main crew definition
│ └── main.py # Entry point
├── .env # Environment variables (not in repo)
├── pyproject.toml # Project dependencies
└── README.md # This file
```
### Key Components
- **Release Monitoring**: Scrapes https://github.com/crewAIInc/crewAI/releases/
- **Technical Research**: Uses public APIs and documentation for context
- **Content Enhancement**: Adds emojis, links, and developer resources
- **Community Posting**: Posts to Announcements category with agent attribution
## 🤝 Contributing
1. Fork the repository
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request
## 📜 License
This project is licensed under the MIT License.
## 🙏 Acknowledgments
- **CrewAI Team**: For the amazing multi-agent framework
- **Community Contributors**: For ongoing feedback and improvements
---
*🤖 This project was built using CrewAI - The future of AI agent collaboration*
## 🔗 Links
- [CrewAI Documentation](https://docs.crewai.com/)
- [CrewAI Community Forum](https://community.crewai.com)
- [CrewAI GitHub](https://github.com/crewAIInc/crewAI)
- [PyPI Package](https://pypi.org/project/crewai)