De gateway multi-canal a plataforma AI lider de mercado. Ultima atualizacao: 2026-04-07
GarraIA e um gateway de IA multi-canal e multi-provider escrito em Rust, com cliente mobile (Flutter), desktop (Tauri) e web UI. Diferente de clones ChatGPT (LobeChat, LibreChat), o GarraIA e um orquestrador de agentes que roda em qualquer canal (Telegram, Discord, Slack, WhatsApp, Web, Mobile, Desktop).
Posicionamento: "O OpenClaw do Rust — 75x menor, 30x mais eficiente, seguro por default."
| Dimensao | GarraIA | LobeChat | LibreChat | Open WebUI | OpenClaw |
|---|---|---|---|---|---|
| UI/UX | 6 | 9 | 8 | 8 | 6 |
| Multi-Provider | 9 | 9 | 9 | 8 | 8 |
| Plugins/Extensoes | 7 | 9 | 8 | 7 | 9 |
| Memoria/Contexto | 8 | 7 | 6 | 7 | 5 |
| Multi-Canal | 9 | 1 | 1 | 2 | 9 |
| Dev Experience | 7 | 8 | 8 | 6 | 5 |
| Comunidade | 3 | 8 | 7 | 9 | 10 |
| Producao | 7 | 8 | 8 | 9 | 6 |
| MEDIA | 7.0 | 7.9 | 7.1 | 7.3 | 7.1 |
Meta: Chegar a 8.5/10 ate 2027-Q1.
- Concluido e funcional
- [~] Backend pronto, frontend parcial ou nao integrado
- Nao implementado
- Fix Riverpod
Ref(api_service.dart) - CSpell
.cspell.jsoncom dicionario do projeto - JDK 23 configurado (Gradle 8.14 OK)
- ClaudeMaxPower: 4 hooks + 4 agents + 13 skills + permissions
- OpenClaw: canal nativo
garraia-channels::openclaw+ tool bridge + 4 endpoints API - Roadmap estrategico atualizado
Objetivo: Elevar UI/UX de 5/10 para 8/10 Impacto: Desbloqueia adocao por usuarios nao-tecnicos
- Redesenhar
webchat.htmlcom layout moderno (sidebar + chat + painel direito) - Componente de mensagem com Markdown rendering, syntax highlighting, copy button
- Streaming de respostas via SSE/WebSocket com animacao de digitacao
- Suporte a temas: Light, Dark, Brasil, Dracula, Monokai, Nord
- Responsivo (mobile-first design)
- [~] Botao "+" (Recursos) — HTML existe, event listeners parciais:
- [~] Selecionar pasta/projeto para contexto (
working_dir) — API pronta, UI parcial - [~] Criar novo projeto (nome + caminho) — API pronta, UI parcial
- [~] Navegar pastas do sistema (file picker) — API pronta, UI parcial
- Anexar arquivos/imagens ao chat — nao implementado
- [~] Selecionar modo do agente (code, review, debug, auto) — API pronta, UI parcial
- [~] Selecionar pasta/projeto para contexto (
- [~] Botao "Extensoes" (puzzle icon) — carrega MCP/tools/skills:
- Listar MCP servers
- [~] Listar tools (endpoint corrigido /api/mcp/tools)
- [~] Listar skills
- Gerenciar plugins WASM via UI
- Toggle tool_sharing OpenClaw via UI
- Adicionar campo
working_dir: Option<String>emSessionState - Adicionar campo
project_name: Option<String>emSessionState - API:
POST /api/sessions/with-projectaceitar{ working_dir, project_name } - API:
POST /api/projects— criar/listar projetos - API:
GET /api/projects/{id}/files— listar arquivos do projeto - Propagar
working_dirparaToolContext(bash_tool, file_read, file_write) - Seguranca: paths nao podem escapar do
working_dir(path traversal protection) - [~] UI: Arvore de arquivos no painel lateral direito — estrutura existe, wiring parcial
- [~] UI: Breadcrumb mostrando projeto/pasta atual — estrutura existe, wiring parcial
- Sistema de skins via CSS variables
- API:
GET /api/skins— listar skins disponiveis - API:
POST /api/skins— salvar skin customizada - Skin editor visual (color picker + preview) — funcional
- Pack de skins: Dracula, Monokai, Nord, Light, Dark, Brasil
- Skins exportaveis/importaveis como JSON
- Dashboard com metricas (sessoes ativas, providers, alertas)
- Graficos de uso por provider/canal (Chart.js)
- [~] Gerenciamento de usuarios com RBAC — backend pronto, UI basica
- [~] Configuracao de canais via UI — formulario existe, sem persistencia
- Log viewer com filtros e busca
Objetivo: Permitir que usuarios trabalhem em projetos especificos Impacto: Diferenciacao critica vs concorrentes
- Tabela
projectsno SQLite: id, name, path, description, created_at, owner_id - CRUD completo de projetos (project_store.rs, 15 testes)
- Projeto associado a sessao (1:N — muitas sessoes por projeto)
-
.garraignorerespeitado na indexacao
-
BashToolusaworking_dircomo CWD quando definido -
FileReadTooleFileWriteToolresolvem paths relativos ao projeto -
GitDiffToolopera no repositorio do projeto - Seguranca:
ProjectToolContextcom path traversal protection (5 testes)
- Tabela
project_filescom embedding BLOB e content_hash - Embedding incremental (needs_reindex via content_hash)
- Busca semantica via cosine similarity (search_project_files)
- [~] UI: Upload de documentos via drag-and-drop — nao wired
- Tabela
project_templatescom system_prompt, tools_enabled, default_mode - CRUD de templates + create_project_from_template
- [~] UI para selecionar/criar templates — nao implementado
Objetivo: Elevar Plugins de 6/10 para 8/10 Impacto: Ecossistema de extensoes
- Registro central de plugins com JSON manifest
- API: install, list, get, delete, toggle — todos funcionais
- Versionamento (semver) com comparacao
- Catalogo built-in de 8 MCP servers populares
- API: one-click install, health check, config-schema
- [~] UI de configuracao por MCP — backend pronto, UI nao wired
- API: CRUD de skills, import/export, triggers — todos funcionais
- [~] Editor visual de skills — nao implementado no frontend
- [~] Galeria de skills da comunidade — nao implementado
- Documentacao do Plugin SDK (docs/src/guides/plugin-sdk.md)
- Host functions definidas (sdk/host_functions.rs)
- Plugin trait definido (sdk/plugin_trait.rs)
- [~] Template de plugin com
cargo generate— docs existem, template nao criado - [~] Publicacao via
garraia plugin publish— comando CLI nao implementado
Objetivo: Consolidar lideranca multi-canal (9/10 -> 10/10) Impacto: Diferenciador unico vs 95% dos concorrentes
- WhatsApp Business API (canal existente, funcional)
- Telegram (canal existente, funcional com voz)
- Discord (canal existente, slash commands)
- Slack (canal existente, Socket Mode)
- iMessage (macOS only, funcional)
- [~] Google Chat — struct implementada, nao testada em producao
- [~] Microsoft Teams — struct implementada, nao testada
- [~] Matrix/Element — struct implementada, nao testada
- [~] LINE — struct implementada, nao testada
- [~] IRC — struct implementada com parser, nao testada
- [~] Signal — struct implementada, nao testada
- WebSocket bridge para OpenClaw daemon
- Fallback routing (send_with_fallback)
- ChannelMetrics com AtomicChannelMetrics (lock-free)
- [~] UI: sidebar mostra sessoes de todos os canais — parcial
- Filtro por canal, usuario, data
- Responder diretamente de qualquer canal na UI
- Notificacoes cross-canal na UI
- Whisper STT integrado (whisper.cpp server CUDA, large-v3-turbo)
- TTS via LM Studio (vieneu-tts-v2-turbo) + Chatterbox + Hibiki
- TtsSynthesizer trait polimorfco com 3 providers
- WhisperClient dual-endpoint (whisper.cpp /inference + OpenAI /v1/audio)
- Health check condicional por provider ativo
- [~] Voice mode no Web UI (gravar e enviar audio) — nao wired
- Transcricao automatica de audios recebidos (Telegram)
Objetivo: Sistema de agentes de classe mundial Impacto: Compete com Claude Code, Cursor, OpenClaw agents
- AgentMode enum (Ask, Code, Debug, Review, Auto, Custom)
- ToolPolicyEngine — quais tools cada modo pode usar
- AutoRouter — deteccao por keywords
- LlmRouter — deteccao via LLM (opcional)
- SessionModeMetadata — persistencia de modo por sessao
- AgentCoordinator com spawn_agent + cancel token
- parallel_execute (respeita max_concurrent)
- pipeline_execute (output A -> input B, fail-fast)
-
repo_searchtool — grep + file pattern (usa rg) -
list_dirtool — tree com file sizes, skip build dirs -
run_teststool — auto-detect framework (cargo/flutter/npm/pytest) -
code_reviewtool — diff -> LLM review com severity
- TriggerRegistry com on_webhook e on_event
- EventType: PrCreated, Push, IssueOpened, Custom
- list_scheduled() com dashboard data
- [~] UI dashboard de execucoes agendadas — nao implementado
Objetivo: Apps nativos competitivos Impacto: Fecha gap com Jan.ai, Chatbox, LobeChat
- Tray icon com quick-chat e menu completo
- Hotkey global (Alt+G overlay, Ctrl+Space quick-chat)
- File picker nativo (select_project_folder, select_files)
- System notifications (tauri-plugin-notification)
- Auto-start com Windows (toggle em Settings UI)
- Auto-update via GitHub releases (tauri-plugin-updater)
- Quick-chat HTML + Settings HTML
- Chat screen com bolhas modernas, markdown, timestamps
- Mascote Garra com 4 animacoes (idle/thinking/talking/happy)
- [~] Push notifications — stub criado, Firebase nao configurado
- Offline message queue (sqflite + connectivity_plus + auto-retry)
- Voice input widget (hold-to-record, waveform, transcricao)
- Biometric auth (local_auth + PIN fallback)
- Deep links (garraia://chat/{sessionId})
- Flutter analyze: 0 issues
- SyncService com WebSocket + auto-reconnect + heartbeat
- QR code pairing screen (qr_flutter + mobile_scanner)
- [~] Sessao compartilhada real-time — struct pronta, servidor nao wired
- Notificacao cross-device cancelation
Objetivo: Production-ready para empresas Impacto: Desbloqueia mercado enterprise
- Audit log completo (AuditEntry com user, action, target, result, IP)
- RBAC granular (Permission enum, CustomRole, has_permission)
- OAuth2/OIDC (Google, GitHub, Azure AD) — routes + handlers
- 2FA TOTP (generate, verify, QR URI) — routes + handlers
- Rate limiting (RateLimiter, sliding window, configurable)
- Content sanitization (anti-prompt-injection patterns)
- [~] Rate limiting em /auth/login e /auth/register — implementado mas nao wired como middleware
- [~] OAuth state TTL — implementado (10min eviction)
- SSL/TLS nativo built-in (atualmente via reverse proxy)
- Metricas Prometheus (
GET /metrics) — 15 counters/gauges - OtelConfig + init_tracing + span helpers
- Dashboard Grafana pre-configurado (deploy/grafana/dashboard.json)
- [~] Alertas configuraveis — estrutura pronta, nao wired
- Dockerfile otimizado multi-stage (builder + runtime)
- docker-compose.yml (app + postgres + redis opcionais)
- Helm chart completo (deploy/helm/garraia/)
- Terraform module AWS ECS Fargate (deploy/terraform/)
- systemd unit file (deploy/systemd/garraia.service)
- CI/CD: ci.yml + release.yml + deploy.yml (multi-arch Docker)
- GDPR: export_user_data + delete_user_data (cascade delete)
- data_retention table com TTL
- [~] SOC 2 audit log — log existe, dashboard nao
- [~] EU AI Act transparencia — campo model nos responses, nao formalizado
Objetivo: Elevar Comunidade de 2/10 para 6/10 Impacto: Sustentabilidade do projeto
- Site de documentacao (mdBook configurado, book.toml)
- Getting Started em <5 minutos (docs/src/getting-started.md)
- Guias: Conectar Telegram, Adicionar LM Studio, Criar Plugin
- API Reference completa (docs/src/api-reference.md)
- Video tutoriais (YouTube/Loom)
- GitHub Discussions habilitado + templates
- Contributing guide (CONTRIBUTING.md)
- Issue templates (bug, feature, plugin)
- PR template (.github/PULL_REQUEST_TEMPLATE.md)
- Discord server oficial
- Newsletter mensal
- Benchmarks documentados (docs/src/benchmarks.md)
- Pricing page (docs/src/pricing.md)
- Landing page (garraia.org)
- Blog com posts tecnicos
- Case studies
- Presenca em Hacker News, Reddit
- [~] Docs de planos (Free/Pro/Enterprise) criados
- GarraIA Cloud (hosted version)
- Marketplace de plugins premium
- Suporte prioritario enterprise
| Marco | Data Alvo | Status |
|---|---|---|
| v0.3 — Web UI | 2026-05 | Backend OK, frontend parcial |
| v0.4 — Projetos | 2026-06 | Backend + DB + testes OK |
| v0.5 — Plugins | 2026-07 | Backend OK, UI nao wired |
| v0.6 — Canais | 2026-08 | 5 funcionais + 6 structs prontas |
| v0.7 — Agentes | 2026-09 | CONCLUIDO (130 testes) |
| v0.8 — Apps | 2026-11 | Desktop OK, Mobile 90% |
| v0.9 — Enterprise | 2027-01 | Backend OK, wiring parcial |
| v1.0 — GA | 2027-03 | Em progresso |
| Metrica | Anterior | Atual | Meta v1.0 |
|---|---|---|---|
| GitHub Stars | ~100 | ~100 | 2,000 |
| Nota Competitiva | 6.6/10 | 7.0/10 | 8.5/10 |
| Providers Suportados | 14 | 14 | 20 |
| Canais Funcionais | 5 | 5 (+6 structs) | 12 |
| Plugins Registrados | 0 | 8 (MCP catalog) | 50 |
| Skills Disponiveis | 13 | 13 | 50 |
| Testes | ~120 | ~195 | 500 |
| Docs Pages | ~5 | ~30 | 100 |
- Web UI wiring — Conectar botoes da sidebar as APIs existentes
- Voice UI — Gravar audio no browser e enviar ao backend
- Testes dos novos canais — Testar Google Chat, Teams, Matrix em prod
- Security wiring — Rate limiter em auth, CORS restrito
- Mobile Firebase — Configurar push notifications reais
- v0.3 release — Tag + binarios + changelog
Fase 1.2 (Botoes UI wiring) → Fase 3.2 (MCP Marketplace UI)
Fase 2.2 (Contexto Pasta) → Fase 5.3 (Code Agent) CONCLUIDO
Fase 5.1 (Modos) → Fase 5.2 (Multi-Agent) CONCLUIDO
Fase 7.1 (Seguranca) → Fase 7.4 (Compliance) Backend OK
Web UI wiring → v0.3 release