Arquitetura e API
AgentBoard é um processo Go local executando SQLite. A API HTTP para humanos, o adaptador MCP para IA e a interface da web compartilham uma lógica de serviço comum. SQLite – fonte de estado; frontend não ignora o servidor. As ferramentas de IA têm uma superfície de direitos separada e o status Backlog/Complete no MCP não está disponível. O registro histórico do System é criado pelo próprio aplicativo.
Componentes
-cmd/agentboard -CLI init, open, serve, mcp, version.
- internal/core – modelos de domínio e erros.
- internal/service – transições de tarefas, permissões, importação e configurações.
- internal/persistence - SQLite e migrações.
- internal/httpapi - API HTTP humana.
- internal/mcpserver - Ferramentas MCP para um trabalhador separado.
- web - UI React/TypeScript; a montagem termina em internal/webui/dist e é incluída no EXE.
Rotas HTTP básicas
| Método e caminho | Destino |
|---|---|
GET /api/health |
Verificação do servidor. |
GET /api/projects |
Projetos cadastrados. |
GET /api/projects/{id}/board |
Quadro do projeto. |
GET/PUT /api/projects/{id}/settings |
Configurações, ordem e nomes das colunas. |
POST /api/projects/{id}/tasks |
Crie uma tarefa. |
POST /api/projects/{id}/tasks/import |
Importar atomicamente JSON versão 1. |
GET/PATCH/DELETE /api/tasks/{id} |
Cartão, alterar, excluir. |
POST /api/tasks/{id}/move |
Movendo-se por uma pessoa. |
GET/POST /api/projects/{id}/workers |
Lista e criação de um trabalhador. |
GET /api/workers/{id}/mcp/check |
Testes internos de handshake e ferramentas do MCP. |
GET /api/workers/{id}/sessions |
Diagnóstico de sessão. |
GET/POST /api/projects/{id}/properties |
Propriedades personalizadas. |
HTTP é para o usuário confiável local. Não publique uma porta web na Internet sem sua própria autenticação, restrições de rede e HTTPS. O servidor MCP é iniciado usando stdio para um projeto e trabalhador específico; comece com get_my_board. Suas permissões restringem ações dentro do AgentBoard, mas não substituem a sandbox do sistema de arquivos do cliente AI.
As colunas do usuário são armazenadas separadamente de tasks.state: o núcleo mantém a tarefa em tal coluna em backlog e tasks.board_column determina o local no quadro Humano. Isso mantém o mesmo modelo de transição de IA. A remoção de uma coluna limpa as tarefas board_column.