Kilo Orchestrator

Kilo Orchestrator

Coordinates multiple Kilo Code agents via MCP, managing tasks, approvals, and verification across development environments like VS Code and Android Studio.

Category
Visit Server

README

Kilo Orchestrator

Orquestrador local de agentes Kilo Code baseado em MCP para Windows 11.

O Kilo Orchestrator é um sistema local desenvolvido para coordenar múltiplos agentes Kilo Code trabalhando em diferentes ambientes de desenvolvimento, inicialmente VS Code e Android Studio.

O sistema funciona como um núcleo central de comunicação, gerenciamento de tarefas, distribuição de trabalho, acompanhamento de execução, aprovação humana e verificação dos resultados.


🎯 Objetivo

O objetivo principal é permitir que diferentes agentes Kilo Code trabalhem de forma coordenada em um mesmo projeto.

Exemplo:

┌──────────────────────┐
│       USUÁRIO        │
└──────────┬───────────┘
           │
           ▼
┌──────────────────────┐
│      KILO HUB        │
│                      │
│ Orquestração         │
│ Tarefas              │
│ Agentes              │
│ Mensagens            │
│ Aprovações           │
│ Verificação          │
│ Auditoria            │
└──────────┬───────────┘
           │
     MCP Streamable HTTP
           │
      ┌────┴─────┐
      ▼          ▼
┌──────────┐ ┌─────────────────┐
│ VS Code  │ │ Android Studio  │
│ Kilo Code│ │ Kilo Code       │
└──────────┘ └─────────────────┘

🧠 Conceito

O Kilo Orchestrator não substitui o Kilo Code.

Ele funciona como uma camada de coordenação entre os agentes.

Cada agente continua trabalhando dentro da sua própria IDE e projeto.

O Kilo Hub controla:

  • agentes;
  • tarefas;
  • mensagens;
  • estados;
  • dependências;
  • permissões;
  • aprovações;
  • execução;
  • verificação;
  • eventos;
  • auditoria.

🏗️ Arquitetura

A arquitetura utiliza princípios de Clean Architecture e Arquitetura Hexagonal, mantendo o núcleo do sistema independente de infraestrutura específica.

                       USUÁRIO
                          │
                          ▼
                  ┌───────────────┐
                  │    KILO HUB   │
                  └───────┬───────┘
                          │
        ┌─────────────────┼─────────────────┐
        │                 │                 │
        ▼                 ▼                 ▼
     Tarefas           Agentes          Mensagens
        │                 │                 │
        └─────────────────┼─────────────────┘
                          │
                          ▼
                   MCP Streamable HTTP
                     ┌────┴────┐
                     │         │
                     ▼         ▼
                  VS Code   Android Studio
                  Kilo      Kilo

🛠️ Tecnologias

Camada Tecnologia
Sistema operacional Windows 11
Runtime Node.js 24 LTS
Linguagem TypeScript
Protocolo dos agentes MCP
Transporte MCP Streamable HTTP
HTTP/API Express
Validação Zod
Banco de dados SQLite
Driver SQLite better-sqlite3
Eventos da interface WebSocket
Dashboard HTML + CSS + TypeScript
Testes unitários Vitest
Testes HTTP Supertest
Testes E2E Playwright
Logging Pino
Identificadores UUID
IA local opcional Ollama / LM Studio
Bridge VS Code Somente se necessário
Bridge Android Studio Kotlin + IntelliJ Platform SDK, somente se necessário

A arquitetura final deliberadamente não utiliza Java/Spring como núcleo. Java/Kotlin permanece como opção para integração específica com Android Studio caso um bridge seja realmente necessário.


📁 Estrutura do projeto

kilo-orchestrator/
│
├── apps/
│   └── kilo-hub/
│       ├── src/
│       │   ├── bootstrap/
│       │   ├── domain/
│       │   ├── application/
│       │   ├── infrastructure/
│       │   ├── interfaces/
│       │   ├── mcp/
│       │   ├── dashboard/
│       │   └── config/
│       │
│       ├── tests/
│       ├── package.json
│       └── tsconfig.json
│
├── bridges/
│   ├── vscode/
│   └── android-studio/
│
├── packages/
│   ├── protocol/
│   ├── schemas/
│   └── shared/
│
├── docs/
│   ├── ARCHITECTURE.md
│   ├── PROTOCOL.md
│   ├── SECURITY.md
│   ├── MCP.md
│   ├── WINDOWS.md
│   └── ADR/
│
├── scripts/
│   ├── check-environment.ps1
│   ├── start.ps1
│   ├── stop.ps1
│   └── status.ps1
│
├── .env.example
├── .gitignore
├── README.md
└── package.json

O monorepo permite compartilhar contratos entre o Hub, protocolo, schemas e integrações. Os contratos críticos serão versionados em JSON Schema.


🔌 MCP

O Model Context Protocol (MCP) é a principal interface de integração do sistema.

Transporte principal:

MCP Streamable HTTP

Endpoint padrão:

http://127.0.0.1:8787/mcp

O sistema será inicialmente executado apenas localmente no Windows.


🔐 Segurança

A segurança será considerada desde o início do desenvolvimento.

Principais mecanismos:

  • execução somente em localhost;
  • autenticação;
  • token de acesso;
  • validação de Origin;
  • proteção contra DNS rebinding;
  • controle de workspace;
  • proteção contra path traversal;
  • limite de payload;
  • limite de tamanho de mensagens;
  • limite de arquivos por tarefa;
  • timeout de execução;
  • limite de tentativas;
  • controle de concorrência;
  • Policy Engine;
  • aprovação humana;
  • auditoria;
  • controle de comandos.

O acesso fora da raiz autorizada do workspace deve ser rejeitado.


🛡️ Controle de comandos

Agentes não poderão enviar comandos arbitrários como uma simples string.

Exemplo de estrutura permitida:

{
  "executable": "git",
  "args": ["status"],
  "cwd": "C:/Projects/backend"
}

O Policy Engine deverá verificar:

executável
argumentos
diretório de trabalho
risco
necessidade de aprovação

Operações perigosas exigirão aprovação humana.

Exemplos:

git reset --hard
git push --force
git clean -fd
exclusão de arquivos
alterações destrutivas
alterações de segurança

🤖 Agentes

Os agentes inicialmente previstos são:

KILO_VSCODE
KILO_ANDROID_STUDIO

Fluxo:

VS Code
   │
   ▼
Kilo Hub
   │
   ▼
Android Studio

E também:

Android Studio
   │
   ▼
Kilo Hub
   │
   ▼
VS Code

O objetivo do MVP-2 é adicionar o agente do Android Studio sem modificar o núcleo do Hub.


📋 Tarefas

O Kilo Hub será responsável pelo gerenciamento das tarefas.

Principais operações:

criar tarefa
atribuir tarefa
iniciar tarefa
atualizar tarefa
cancelar tarefa
repetir tarefa
verificar tarefa
finalizar tarefa

Estados serão controlados explicitamente por uma máquina de estados.


🔗 Task Graph

As tarefas poderão possuir dependências.

Exemplo:

Tarefa A
   │
   ▼
Tarefa B
   │
   ├──────────► Tarefa C
   │
   ▼
Tarefa D

O sistema deverá controlar:

  • dependências;
  • DAG;
  • detecção de ciclos;
  • dispatcher;
  • retry;
  • timeout;
  • recuperação.

👤 Aprovação humana

O sistema será human-in-the-loop.

Quando uma operação exigir aprovação:

Agente
  │
  ▼
Kilo Hub
  │
  ▼
Policy Engine
  │
  ▼
Aprovação necessária
  │
  ▼
USUÁRIO
  │
  ├── Aprovar
  ├── Editar
  └── Rejeitar

A aprovação será registrada no histórico de auditoria.


🧪 Verificação

O sistema não deverá considerar uma tarefa concluída apenas porque o agente informou que terminou.

A verificação poderá utilizar:

build
test
lint
diff
contract

Fluxo:

Agente
   │
   ▼
Resultado
   │
   ▼
VerificationService
   │
   ├── Build
   ├── Testes
   ├── Lint
   ├── Diff
   └── Contratos
   │
   ▼
Resultado da verificação

O Verification Engine faz parte da evolução planejada do MVP-5.


🧠 IA local

A IA local é opcional.

O núcleo não ficará diretamente dependente de um modelo específico.

Arquitetura:

PlannerProvider
│
├── HumanPlanner
├── OllamaPlanner
└── LMStudioPlanner

Modo padrão:

HYBRID

O sistema poderá utilizar modelos locais para:

  • planejamento;
  • decomposição de tarefas;
  • diagnóstico;
  • replanejamento;
  • análise de resultados;
  • julgamento auxiliar.

O modelo de IA não terá autoridade para ignorar o Policy Engine, a aprovação humana ou a Verification Engine.


💾 Persistência

O MVP utiliza:

SQLite

O banco armazenará informações como:

agents
projects
tasks
messages
task_events
approvals
audit_events

O banco local deverá ficar fora do repositório Git.

Local padrão:

%LOCALAPPDATA%\KiloOrchestrator\data\kilo-hub.sqlite

📡 API REST

Endpoints planejados:

GET    /api/v1/health

GET    /api/v1/agents
GET    /api/v1/agents/:id

GET    /api/v1/projects
POST   /api/v1/projects

GET    /api/v1/tasks
POST   /api/v1/tasks
GET    /api/v1/tasks/:id

POST   /api/v1/tasks/:id/cancel
POST   /api/v1/tasks/:id/retry

GET    /api/v1/tasks/:id/events

GET    /api/v1/approvals
POST   /api/v1/approvals/:id/approve
POST   /api/v1/approvals/:id/reject
POST   /api/v1/approvals/:id/edit-approve

🔄 WebSocket

Endpoint:

/ws

Eventos previstos:

agent.connected
agent.disconnected
agent.updated

task.created
task.updated
task.progress
task.completed
task.failed

approval.created
approval.updated

message.created
message.delivered
message.acked

verification.started
verification.completed

📊 Observabilidade

No MVP:

  • logs estruturados;
  • histórico de tarefas;
  • status dos agentes;
  • linha do tempo de eventos;
  • métricas básicas.

No futuro:

OpenTelemetry
Prometheus

Não será adicionada infraestrutura externa de observabilidade no MVP.


🪵 Auditoria

O sistema deverá registrar:

quem
o quê
quando
tarefa
agente
decisão
estado anterior
estado posterior
resultado

Especialmente:

aprovações
rejeições
execução de comandos
alterações de workspace
conexões de agentes
autenticação
negações de política

🔢 Protocolo

O protocolo interno atual é:

KO/2

Regras:

major = alteração incompatível
minor = extensão compatível

Os agentes deverão declarar:

protocolVersion

O Hub deverá rejeitar versões incompatíveis que não sejam suportadas.


⚙️ Configuração

Exemplo:

KILO_HUB_PORT
KILO_HUB_TOKEN
KILO_HUB_DB_PATH

KILO_PLANNER_MODE
KILO_PLANNER_PROVIDER

OLLAMA_BASE_URL
LMSTUDIO_BASE_URL

Segredos nunca deverão:

ser enviados ao Git
ser registrados em logs
ser enviados aos agentes
ser exibidos no Dashboard

🪟 Windows 11

O projeto foi projetado inicialmente para:

Windows 11

Scripts previstos:

scripts/
├── check-environment.ps1
├── start.ps1
├── stop.ps1
└── status.ps1

Inicialmente:

npm run start

Posteriormente:

Windows Task Scheduler

para inicialização automática.


🚀 Desenvolvimento

Instalar dependências:

npm install

Executar em desenvolvimento:

npm run dev

Compilar:

npm run build

Executar testes:

npm test

Executar testes E2E:

npm run test:e2e

Executar produção:

npm run start

Verificar ambiente:

.\scripts\check-environment.ps1

Os comandos de desenvolvimento definidos na arquitetura são npm install, npm run dev, npm run build, npm test, npm run test:e2e e npm run start.


🗺️ Roadmap

MVP-0 — Prova do MCP

Node.js
   ↓
MCP Server
   ↓
Kilo VS Code

Implementar:

  • health;
  • uma ferramenta MCP;
  • um resource;
  • autenticação;
  • logs.

Objetivo:

Kilo consegue chamar a ferramenta
Kilo Hub responde

MVP-1 — Kilo Hub

Implementar:

  • Node.js;
  • TypeScript;
  • MCP Streamable HTTP;
  • SQLite;
  • tarefas;
  • agentes;
  • mensagens;
  • Dashboard;
  • autenticação.

Primeiro agente:

Kilo VS Code

MVP-2 — Dois agentes

Adicionar:

Kilo Android Studio

Objetivo:

VS Code Kilo
      ↓
   Kilo Hub
      ↓
Android Studio Kilo

E também o fluxo inverso.


MVP-3 — Controle humano

Adicionar:

  • ApprovalService;
  • PolicyEngine;
  • AuditLog;
  • aprovação;
  • edição;
  • rejeição.

MVP-4 — Task Graph

Adicionar:

  • dependências;
  • DAG;
  • detecção de ciclos;
  • dispatcher;
  • retry;
  • timeout;
  • recovery.

MVP-5 — Verification

Adicionar:

  • build;
  • testes;
  • lint;
  • diff;
  • contratos.

MVP-6 — IA local

Adicionar:

  • PlannerProvider;
  • OllamaPlanner;
  • LMStudioPlanner;
  • JudgeProvider;
  • Replanning.

MVP-7 — IDE Bridges

Somente criar bridges caso a integração MCP direta não seja suficiente.

VS Code Bridge
Android Studio Bridge

O Bridge não substitui o MCP.


MVP-8 — Produto para Windows

Adicionar:

  • instalador;
  • atalho na área de trabalho;
  • inicialização automática;
  • Task Scheduler;
  • backup;
  • health check.

A ordem completa de implementação foi definida de forma incremental, começando pelo MCP e chegando posteriormente ao empacotamento para Windows.


🚫 O que NÃO faz parte do MVP

Não utilizar inicialmente:

Kafka
RabbitMQ
Redis
PostgreSQL
Kubernetes
Docker obrigatório
React obrigatório
NestJS
microservices
cloud deployment
agentes remotos
banco distribuído

Também não criar bridges se a integração MCP direta resolver o problema.


🏁 Primeiro objetivo real

O primeiro objetivo do projeto é:

Kilo Code VS Code
       ↓
MCP Streamable HTTP
       ↓
Kilo Hub
       ↓
SQLite
       ↓
Dashboard

E conseguir:

enviar mensagem
receber mensagem
criar tarefa
atualizar tarefa
visualizar status

Depois disso, o segundo objetivo será adicionar o Kilo Code do Android Studio sem alterar o núcleo do sistema.


📌 Status do projeto

Projeto: Kilo Orchestrator
Versão: 1.0
Protocolo: KO/2
Plataforma: Windows 11
Arquitetura: Clean / Hexagonal
Runtime: Node.js 24 LTS
Linguagem: TypeScript
Banco: SQLite
Integração: MCP
Status: Em desenvolvimento

📄 Licença

Este projeto é distribuído sob a licença:

MIT License

👨‍💻 Projeto

Desenvolvido para uso local, com foco em:

automação
orquestração de agentes
desenvolvimento de software
integração entre IDEs
IA local
segurança
verificação
produtividade

Kilo Orchestrator — vários agentes, um núcleo de coordenação.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured