{"id":38182575,"url":"https://github.com/flowline-io/flowbot","last_synced_at":"2026-02-27T11:26:15.856Z","repository":{"id":190959219,"uuid":"683665118","full_name":"flowline-io/flowbot","owner":"flowline-io","description":"flowbot is system for chatbot","archived":false,"fork":false,"pushed_at":"2026-02-20T13:07:12.000Z","size":10160,"stargazers_count":7,"open_issues_count":0,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-02-20T17:27:12.874Z","etag":null,"topics":["agent","chatbot","golang","llm","workflow"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flowline-io.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-08-27T10:07:17.000Z","updated_at":"2026-02-20T13:07:09.000Z","dependencies_parsed_at":null,"dependency_job_id":"c0466207-c57a-4163-807e-bfea0a8be11a","html_url":"https://github.com/flowline-io/flowbot","commit_stats":null,"previous_names":["flowline-io/flowbot"],"tags_count":105,"template":false,"template_full_name":null,"purl":"pkg:github/flowline-io/flowbot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flowline-io%2Fflowbot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flowline-io%2Fflowbot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flowline-io%2Fflowbot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flowline-io%2Fflowbot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flowline-io","download_url":"https://codeload.github.com/flowline-io/flowbot/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flowline-io%2Fflowbot/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29892077,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-27T09:48:51.284Z","status":"ssl_error","status_checked_at":"2026-02-27T09:48:43.992Z","response_time":57,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent","chatbot","golang","llm","workflow"],"created_at":"2026-01-16T23:57:30.283Z","updated_at":"2026-02-27T11:26:15.850Z","avatar_url":"https://github.com/flowline-io.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Flowbot\n\n[![Build](https://github.com/flowline-io/flowbot/actions/workflows/build.yml/badge.svg)](https://github.com/flowline-io/flowbot/actions/workflows/build.yml)\n[![Go Report Card](https://goreportcard.com/badge/github.com/flowline-io/flowbot)](https://goreportcard.com/report/github.com/flowline-io/flowbot)\n[![License](https://img.shields.io/badge/License-GPL%20v3-blue.svg)](LICENSE)\n\nFlowbot is an advanced multi-platform chatbot framework that provides intelligent conversation, workflow automation, and comprehensive LLM agent capabilities with extensive third-party integrations.\n\n## ✨ Key Features\n\n- 🤖 **Multi-Platform Chatbot** - Support for Discord, Slack, Tailchat, and Telegram\n- 🧠 **LLM Agent System** - Advanced AI agents with multiple model support (OpenAI, etc.)\n- ⚡ **Workflow Engine** - Visual workflow designer with DAG-based execution\n- 📨 **Message Hub** - Publish/Subscribe messaging with Redis Stream\n- ⏰ **Scheduling System** - Cron jobs, triggers, and automated tasks\n- 🔌 **Extensive Integrations** - 20+ built-in bot modules for various services\n- � **Monitoring \u0026 Metrics** - Prometheus metrics and comprehensive logging\n- 🎯 **Multi-tenancy** - Platform-aware user and channel management\n- 🔒 **Security** - OAuth integration and role-based access control\n- 📱 **Modern Web UI** - Progressive Web App with Fiber v3 backend\n\n## 🏗️ Architecture\n\n\u003cimg src=\"./docs/architecture/architecture.png\" alt=\"Architecture\" align=\"center\" width=\"100%\" /\u003e\n\nThe system follows a modular architecture with:\n\n- **Command Layer**: CLI tools for agent and composer operations\n- **Bot Modules**: Specialized handlers for different services\n- **Workflow Engine**: Visual workflow design and execution\n- **Platform Layer**: Multi-platform messaging support\n- **Storage Layer**: MySQL/SQLite with Redis caching\n\n## 🚀 Quick Start\n\n### Requirements\n\n- Go 1.25+\n- MySQL/SQLite database\n- Redis server\n- Docker (optional, for containerized execution)\n\n### Installation\n\n#### Option 1: Build from Source\n\n```bash\n# Clone repository\ngit clone https://github.com/flowline-io/flowbot.git\ncd flowbot\n\n# Configure\ncp docs/config/config.yaml flowbot.yaml\n# Edit flowbot.yaml with your settings\n\n# Build and run\ngo build -o flowbot ./cmd\n./flowbot\n```\n\n#### Option 2: Docker\n\n```bash\n# Pull and run with docker-compose\ndocker-compose up -d\n\n# Or build custom image\ndocker build -t flowbot .\ndocker run -p 6060:6060 -v $(pwd)/flowbot.yaml:/app/flowbot.yaml flowbot\n```\n\n### Initial Setup\n\n1. **Database Setup**: Configure MySQL or SQLite in `flowbot.yaml`\n2. **Redis Configuration**: Set Redis connection details\n3. **Platform Integration**: Add bot tokens for Discord/Slack/etc.\n4. **LLM Models**: Configure OpenAI API key endpoint\n5. **Start Service**: Launch flowbot and access Web UI at `http://localhost:6060`\n\n## 🤖 Bot Modules\n\nFlowbot includes 20+ specialized bot modules:\n\n| Module           | Description                   | Features                                   |\n| ---------------- | ----------------------------- | ------------------------------------------ |\n| **Agent**        | LLM-powered conversational AI | Multiple model support, context management |\n| **Workflow**     | Visual workflow automation    | DAG execution, 15+ built-in actions        |\n| **Finance**      | Financial data management     | Bill tracking, expense categorization      |\n| **Kanban**       | Project management            | Task boards, team collaboration            |\n| **Notify**       | Notification system           | Multi-channel alerts, scheduling           |\n| **Reader**       | RSS/Feed processing           | Content aggregation, summaries             |\n| **GitHub/Gitea** | Git repository integration    | Issue tracking, PR management              |\n| **Obsidian**     | Note-taking integration       | Knowledge management, linking              |\n| **Torrent**      | Download management           | Transmission integration                   |\n| **Bookmark**     | Link management               | URL organization, tagging                  |\n| **Search**       | Full-text search              | MeiliSearch integration                    |\n| **Clipboard**    | Cross-platform clipboard      | Sync and history                           |\n\n## 🔧 API \u0026 Development\n\n### Development Tasks\n\nThis repository uses `mise` for common development tasks.\n\n```bash\n# list tasks\nmise tasks\n\n# run the common checks (tidy/swagger/format/lint/scc)\nmise run default\n\n# build all binaries\nmise run build:all\n```\n\n### RESTful API\n\n- **Base URL**: `http://localhost:6060/service`\n- **Authentication**: API key via `X-AccessToken` header\n- **Documentation**: Swagger UI available at `/swagger/`\n- **Endpoints**: 50+ endpoints for complete system management\n\n### CLI Tools\n\n```bash\n# Agent CLI - Desktop automation\n./flowbot-agent --config agent.yaml\n\n# Composer CLI - Code generation and migration\n./flowbot composer generate bot --name mybot\n./flowbot composer migrate import\n./flowbot composer workflow import --path workflow.yaml\n```\n\n### Workflow Actions\n\nBuilt-in workflow actions include:\n\n- **Message**: Send notifications to channels\n- **Fetch**: HTTP requests and web scraping\n- **Feed**: RSS/Atom feed processing\n- **LLM**: AI text processing and generation\n- **Docker**: Container execution\n- **Grep**: Text pattern matching\n- **Unique**: Data deduplication\n- **Torrent**: File downloads\n\n### Third-party Integrations\n\nSupported services:\n\n- **Communication**: Discord, Slack, Tailchat, Telegram\n- **Development**: GitHub, Gitea, Drone CI\n- **Productivity**: Notion, Obsidian, Kanboard\n- **Finance**: Firefly III, Wallos\n- **Infrastructure**: AdGuard, Safeline WAF, Uptime Kuma\n- **Media**: Transmission, MiniFlux, ArchiveBox\n- **Storage**: MinIO, Dropbox, Hoarder\n\n## 📊 Monitoring \u0026 Operations\n\n- **Metrics**: Prometheus integration with custom metrics\n- **Logging**: Structured logging with Zerolog\n- **Health Checks**: Built-in health and readiness probes\n- **Performance**: Automatic GOMAXPROCS tuning\n- **Scaling**: Horizontal scaling with Redis clustering\n\n## 🛠️ Configuration\n\nKey configuration sections in `flowbot.yaml`:\n\n```yaml\n# Server settings\nlisten: \":6060\"\napi_path: \"/\"\n\n# Database (MySQL/SQLite)\nstore_config:\n  use_adapter: mysql\n  adapters:\n    mysql:\n      dsn: \"root:password@tcp(localhost)/flowbot\"\n\n# LLM Models\nmodels:\n  - provider: openai\n    base_url: \"https://api.openai.com/v1\"\n    api_key: \"your-key\"\n    model_names: [\"gpt-4\", \"gpt-3.5-turbo\"]\n\n# Platform integrations\nplatform:\n  discord:\n    enabled: true\n    bot_token: \"your-token\"\n  slack:\n    enabled: true\n    bot_token: \"your-token\"\n```\n\n## 🚀 Deployment\n\n### Production Deployment\n\n```bash\n# Using systemd service\nsudo cp docs/flowbot.service /etc/systemd/system/\nsudo systemctl enable flowbot\nsudo systemctl start flowbot\n\n# Using Docker Compose\ndocker-compose -f deployments/docker-compose.yml up -d\n\n# Using Kubernetes\nkubectl apply -f deployments/k8s/\n```\n\n### Environment Variables\n\n```bash\nexport FLOWBOT_CONFIG_PATH=/path/to/flowbot.yaml\nexport FLOWBOT_LOG_LEVEL=info\nexport FLOWBOT_DB_DSN=\"mysql://user:pass@host/db\"\n```\n\n## 📚 Documentation\n\n- **API Documentation**: [Swagger UI](http://localhost:6060/swagger/)\n- **Configuration Schema**: [docs/schema.md](docs/schema.md)\n- **Architecture Guide**: [docs/README.md](docs/README.md)\n- **Examples**: [docs/examples/](docs/examples/)\n- **Wiki**: [GitHub Wiki](https://github.com/flowline-io/flowbot/wiki)\n\n## 🤝 Contributing\n\nWe welcome contributions! Please see our contributing guidelines:\n\n1. **Fork** the repository\n2. **Create** a feature branch (`git checkout -b feature/amazing-feature`)\n3. **Commit** your changes (`git commit -m 'Add amazing feature'`)\n4. **Push** to the branch (`git push origin feature/amazing-feature`)\n5. **Open** a Pull Request\n\n### Development Tools\n\n```bash\n# Code generation\ntask generate\n\n# Linting\nrevive -formatter friendly ./...\n\n# Security scanning\ngovulncheck ./...\n\n# Database migrations\nmigrate -source file://./internal/store/migrate -database \"mysql://...\" up\n```\n\n## 📄 License\n\nThis project is licensed under the [GPL-3.0](LICENSE) License - see the LICENSE file for details.\n\n## ⭐ Star History\n\nIf you find Flowbot useful, please consider giving it a star on GitHub!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflowline-io%2Fflowbot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflowline-io%2Fflowbot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflowline-io%2Fflowbot/lists"}