{"id":49956679,"url":"https://github.com/evolution-foundation/evo-bot-runtime","last_synced_at":"2026-05-28T00:01:00.777Z","repository":{"id":353380995,"uuid":"1172852888","full_name":"evolution-foundation/evo-bot-runtime","owner":"evolution-foundation","description":null,"archived":false,"fork":false,"pushed_at":"2026-05-25T18:32:12.000Z","size":26896,"stargazers_count":2,"open_issues_count":1,"forks_count":10,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-25T20:28:22.661Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/evolution-foundation.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":"NOTICE","maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-04T18:53:57.000Z","updated_at":"2026-05-13T04:11:32.000Z","dependencies_parsed_at":null,"dependency_job_id":"e7be0ec1-f835-40bd-9177-f3ca7523d72c","html_url":"https://github.com/evolution-foundation/evo-bot-runtime","commit_stats":null,"previous_names":["evolutionapi/evo-bot-runtime","evolution-foundation/evo-bot-runtime"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/evolution-foundation/evo-bot-runtime","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evolution-foundation%2Fevo-bot-runtime","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evolution-foundation%2Fevo-bot-runtime/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evolution-foundation%2Fevo-bot-runtime/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evolution-foundation%2Fevo-bot-runtime/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/evolution-foundation","download_url":"https://codeload.github.com/evolution-foundation/evo-bot-runtime/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evolution-foundation%2Fevo-bot-runtime/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33588345,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-27T02:00:06.184Z","response_time":53,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2026-05-18T00:14:59.093Z","updated_at":"2026-05-28T00:01:00.768Z","avatar_url":"https://github.com/evolution-foundation.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://evolutionfoundation.com.br\"\u003e\n    \u003cimg src=\"./public/hover-evolution.png\" alt=\"Evolution Foundation\" /\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eEvo Bot Runtime\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  Bot pipeline execution, debouncing, and dispatch service for the Evo CRM Community ecosystem.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/evolution-foundation/evo-bot-runtime/releases/latest\"\u003e\u003cimg src=\"https://img.shields.io/github/v/release/evolution-foundation/evo-bot-runtime?include_prereleases\u0026label=version\u0026color=00ffa7\" alt=\"Latest version\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://opensource.org/licenses/Apache-2.0\"\u003e\u003cimg src=\"https://img.shields.io/badge/License-Apache%202.0-blue.svg\" alt=\"License: Apache 2.0\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://docs.evolutionfoundation.com.br\"\u003e\u003cimg src=\"https://img.shields.io/badge/Docs-evolutionfoundation.com.br-00ffa7\" alt=\"Documentation\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://evolutionfoundation.com.br/community\"\u003e\u003cimg src=\"https://img.shields.io/badge/Community-Join%20us-white\" alt=\"Community\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://evolutionfoundation.com.br\"\u003eWebsite\u003c/a\u003e \u0026middot;\n  \u003ca href=\"https://docs.evolutionfoundation.com.br\"\u003eDocumentation\u003c/a\u003e \u0026middot;\n  \u003ca href=\"https://evolutionfoundation.com.br/community\"\u003eCommunity\u003c/a\u003e \u0026middot;\n  \u003ca href=\"mailto:suporte@evofoundation.com.br\"\u003eSupport\u003c/a\u003e\n\u003c/p\u003e\n\n---\n\n## About\n\n**Evo Bot Runtime** is the bot orchestration service for the Evo CRM Community ecosystem. Built in Go with the Gin framework, it manages bot pipeline execution, message debouncing, and dispatch coordination across multiple WhatsApp instances and AI agents.\n\nIt integrates with `evo-ai-processor-community` (agent execution), `evo-ai-crm-community` (conversations) and Evolution API / Evolution Go (WhatsApp providers) to deliver real-time conversational flows with sub-second latency.\n\n## Part of the Evo CRM Community\n\nEvo Bot Runtime is part of the [Evo CRM Community](https://github.com/evolution-foundation/evo-crm-community) ecosystem maintained by Evolution Foundation. To use the full stack, clone the umbrella repository with submodules:\n\n```bash\ngit clone --recurse-submodules git@github.com:evolution-foundation/evo-crm-community.git\n```\n\nThe Community Edition is **single-tenant** by design — one account, no multi-tenancy overhead, no super-admin, no billing or plans. All limits are removed and features are unlocked by default.\n\n---\n\n## Quick Start\n\n### Prerequisites\n\n- **Go** 1.24+\n- **PostgreSQL** 12+\n- **Redis** 6+\n- **Docker** (optional, recommended for production)\n\n### Installation\n\n```bash\ngit clone git@github.com:evolution-foundation/evo-bot-runtime.git\ncd evo-bot-runtime\n\n# Install dependencies\ngo mod download\n\n# Configure environment\ncp .env.example .env\n# Edit .env with your settings\n\n# Run\nmake run\n```\n\nThe service will be available at `http://localhost:8080`.\n\n### Docker\n\n```bash\ndocker build -t evo-bot-runtime .\ndocker run -p 8080:8080 --env-file .env evo-bot-runtime\n```\n\n---\n\n## Configuration\n\nCopy `.env.example` to `.env` and configure the required variables:\n\n```bash\n# Database\nDATABASE_URL=postgresql://user:pass@localhost:5432/evo_bot_runtime\n\n# Redis (for debouncing and pipeline state)\nREDIS_URL=redis://localhost:6379/0\n\n# Service URLs\nEVO_AI_PROCESSOR_URL=http://localhost:8000\nEVO_AI_CRM_URL=http://localhost:3000\n\n# Authentication (Bearer token from evo-auth-service-community)\nJWT_SECRET_KEY=your_evolution_secret_key\n```\n\nSee `.env.example` for the full list of variables.\n\n---\n\n## Architecture\n\nEvo Bot Runtime sits between WhatsApp providers and AI agent execution:\n\n```\nWhatsApp message\n      ↓\nEvolution API / Evolution Go\n      ↓\nEvo Bot Runtime (debounce + pipeline)\n      ↓\nEvo AI Processor (agent execution)\n      ↓\nEvo CRM (conversation persistence)\n```\n\nKey responsibilities:\n- **Debouncing**: groups rapid-fire messages from the same contact into a single agent invocation\n- **Pipeline execution**: runs ordered bot flows with branching logic\n- **Dispatch**: routes responses back to the originating WhatsApp instance\n- **State**: persists pipeline progress in Redis with PostgreSQL fallback\n\n---\n\n## Documentation\n\n| Resource | Link |\n|---|---|\n| Website | [evolutionfoundation.com.br](https://evolutionfoundation.com.br) |\n| Documentation | [docs.evolutionfoundation.com.br](https://docs.evolutionfoundation.com.br) |\n| Community | [evolutionfoundation.com.br/community](https://evolutionfoundation.com.br/community) |\n| Changelog | [CHANGELOG.md](./CHANGELOG.md) |\n| Contributing | [CONTRIBUTING.md](./CONTRIBUTING.md) |\n| Security | [SECURITY.md](./SECURITY.md) |\n\n---\n\n## Contributing\n\nContributions are welcome! Please read [CONTRIBUTING.md](./CONTRIBUTING.md) for guidelines on how to submit issues, propose features, and open pull requests.\n\nJoin our [community](https://evolutionfoundation.com.br/community) to discuss ideas and collaborate.\n\n---\n\n## Security\n\nFor security issues, **do not open a public issue**. Email **suporte@evofoundation.com.br** or use GitHub's private vulnerability reporting. See [SECURITY.md](./SECURITY.md) for details.\n\n---\n\n## License\n\nEvo Bot Runtime is licensed under the Apache License 2.0. See [LICENSE](./LICENSE) for details.\n\n## Trademarks\n\n\"Evolution Foundation\", \"Evolution\" and \"Evo Bot Runtime\" are trademarks of Evolution Foundation. See [TRADEMARKS.md](./TRADEMARKS.md) for the brand assets policy.\n\nThird-party attributions are documented in [NOTICE](./NOTICE).\n\n---\n\n\u003cp align=\"center\"\u003e\n  Made by \u003ca href=\"https://evolutionfoundation.com.br\"\u003eEvolution Foundation\u003c/a\u003e · © 2026\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevolution-foundation%2Fevo-bot-runtime","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fevolution-foundation%2Fevo-bot-runtime","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevolution-foundation%2Fevo-bot-runtime/lists"}