Sobre o projeto
StarNet é um aplicativo de desktop local-first que permite criar agentes de IA, organizá-los em uma estação espacial em pixel art e observá-los executar trabalho real usando modelos e ferramentas reais. A estação não é meramente decorativa; é uma projeção ao vivo do estado de runtime onde salas representam equipes com escopo de capacidade, corredores são vias de transferência autorizadas e objetos posicionados são concessões de capacidade reais.
As principais capacidades incluem:
- Criar múltiplos agentes com classes, personas e loadouts distintos, cada um executando concorrentemente em seu próprio workspace com permissões limitadas.
- Trazer suas próprias chaves de API (OpenRouter, Anthropic, OpenAI, Google) armazenadas com segurança no chaveiro do SO; o frontend nunca mantém segredos.
- Conectar agentes a plataformas de mensagens como Telegram, Discord, Slack, Signal ou Matrix para interação remota.
- Usar modelos locais via Ollama sem nenhuma chave de API ou custo.
- Agendar tarefas com cron, iniciar receitas de múltiplas etapas e conceder habilidades reutilizáveis.
- Fazer perguntas de esclarecimento por meio de Task Briefs em vez de adivinhar.
- Entregar trabalho concluído como arquivos reais em um diretório OUTBOX.
- Conectar servidores Model Context Protocol (MCP) e conectores paste-a-key/OAuth para estender as capacidades do agente.
- Ditado de voz push-to-talk e uma saída de voz consistente da estação.
- Ledgers persistentes em disco para gastos, orçamentos, histórico de tarefas e agendamentos.
A arquitetura separa responsabilidades:
- `frontend/`: Mundo da estação em JavaScript vanilla e UI de desktop.
- `sidecar/`: Runtime de agente Node.js local que lida com provedores, ferramentas, persistência, orçamentos e consentimento.
- `shared/`: Contratos de eventos e scheams entre fronteiras.
- `src-tauri/`: Shell de desktop Rust/Tauri e runtime empacotado.
- `test/` e `qa/`: Testes unitários, de contrato, de integração e de portão de release, além de recibos de QA ao vivo.
O trem de release público suporta Windows 10/11 (64 bits) e macOS (Apple Silicon e Intel). Pacotes Linux são artefatos de build internos e não um alvo público suportado. Builds de desktop são publicados na página de releases do GitHub.
Para executar a partir do código-fonte, você precisa do Node.js 18+ (Node.js 22 corresponde ao CI), Git e, opcionalmente, dos pré-requisitos do Rust e Tauri para o shell de desktop. O sidecar pode ser iniciado diretamente com `node sidecar/index.js`, então abra http://localhost:8787 em um navegador. Para desenvolvimento, use `npm run desktop:dev` e `npm run desktop:build`.
Os testes são feitos por meio de scripts npm: `npm run test:fast` (portão de merge obrigatório), `npm run test:http` (suíte HTTP/E2E ao vivo do sidecar), `npm test` (validação completa) e `npm run security:secrets` (varredura de segredos em histórico completo). A prontidão para release é validada com `npm run qa:ready`.
Contribuições são bem-vindas; consulte CONTRIBUTING.md e o Código de Conduta. Vulnerabilidades de segurança devem ser relatadas de forma privada conforme SECURITY.md.
O projeto é open source sob a Licença MIT. A licença cobre apenas o código; o nome StarNet, logotipo, arte da estação e identidade de marca são de propriedade de Andrew Sims e não são licenciados com o código. Forks devem usar seu próprio nome, logotipo e arte e não podem se apresentar como StarNet nem como endossados pelo projeto.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.