Activbot is a self-evolving workflow automation framework that enables dynamic workflow generation, modification, and updates without manual interventi
- 🔄 Auto-Design Workflows - Dynamically generate and modify workflows based on requirements
- 🔌 Modular Plugin System - Extensible architecture for custom task types
- 📊 Workflow Validation - Schema-based validation and compatibility checking
- 🚀 Automated Updates - Self-evolving system with automatic improvement suggestions
- 🧪 Comprehensive Testing - Full test suite with CI/CD integration
- 📈 Version Control - Track workflow changes and maintain history
# Clone the repository
git clone https://github.com/ELMOURABEA/Activbot.git
cd Activbot
# Install dependencies
pip install -r requirements.txtfrom activbot import WorkflowEngine, WorkflowManager
# Create a workflow
manager = WorkflowManager()
tasks = [
{'name': 'build', 'type': 'build', 'description': 'Build project'},
{'name': 'test', 'type': 'test', 'description': 'Run tests', 'depends_on': ['build']}
]
workflow = manager.create_workflow('my_workflow', tasks)
# Execute the workflow
engine = WorkflowEngine()
engine.load_workflow('activbot/workflows/my_workflow.yml')
results = engine.execute_workflow('my_workflow')
print(results)Activbot consists of several key components:
- WorkflowEngine - Core execution engine for processing workflows
- WorkflowManager - Manages workflow lifecycle and auto-generation
- PluginLoader - Dynamic plugin loading with hot-reload support
- Validator - Schema validation and compatibility checking
- Auto-Updater - Analyzes and suggests workflow improvements
See [WORKFLOW_ARCHITECTURE.md] for detailed documentation.
# Run all tests
pytest tests/ -v
# Run with coverage
pytest tests/ -v --cov=activbot --cov-report=term-missing
# Validate workflows
python -m activbot.validator --validate-all
# Check for updates
python -m activbot.updater --reportfrom activbot.plugins.base_plugin import BasePlugin
class MyCustomPlugin(BasePlugin):
def __init__(self):
super().__init__()
self.version = "1.0
}Save to activbot/plugins/my_custom_plugin.py and it will be auto-discovered.
Activbot includes automated workflows for:
- ✅ Workflow validation on every push
- ✅ Automated testing with pytest
- ✅ Plugin compatibility checking
- ✅ Auto-update suggestions
See .github/workflows/workflow-auto-update.yml for details.
Configure Activbot via config.yml:
activbot:
engine:
workflow_dir: "activbot/workflows"
plugin_dir: "activbot/plugins"
auto_update:
enabled: true
check_interval: 3600- Plugin-based system for easy extensibility
- Hot-reloading support for development
- Clear separation of concerns
- CI/CD workflow validates changes automatically
- Continuous testing ensures reliability
- Auto-update system suggests improvements
- GitHub Actions integration
- Automated testing on every push
- Plugin and workflow compatibility checking
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch
- Add tests for new functionality
- Run
pytestand `python - Submit a pull request
MIT License - Copyright (c) 2025 ELMOURABEA
See [LICENSE] for details.
Activbot - Self-evolving workflow automation for the future 🚀