Sobre o projeto

MyAgents é uma estação de trabalho pessoal de Agent para desktop de código aberto; sua proposta não é ser uma janela de chat, mas reunir conversas, workspace, arquivos, ferramentas, modelos, tarefas e memória de longo prazo em um único sistema de desktop. O projeto usa a licença AGPL-3.0-only, e o site oficial e ponto de download é myagents.io. Experiência principal - Workspace em primeiro lugar: cada Agent é vinculado a um workspace real, oferecendo árvore de arquivos, pré-visualização de arquivos, branch Git, Skills e entradas de comando; suporta referência a arquivos com @, chamada de skills com /, chamada de ferramentas MCP e seleção de modelo. - Agent com múltiplas abas: abas no estilo Chrome, cada Tab executa independentemente um Agent e um Sidecar, adequado para trabalho paralelo. - Terminal e navegador embutidos: a divisão à direita oferece terminal xterm.js + portable-pty e navegador Tauri multi-Webview, facilitando executar e verificar ao mesmo tempo. - Central de ideias e tarefas: é possível anotar ideias rapidamente, arquivar com tags e depois discuti-las com a IA e transformá-las em tarefas; suporta tarefas pontuais, tarefas periódicas, expressões Cron, sensor opcional de comandos locais, status de tarefa, número de execuções, logs de execução e recuperação de exceções. - Múltiplos provedores de modelos: suporta assinatura ou API da Anthropic, além de DeepSeek, Moonshot, Zhipu, MiniMax, Google Gemini, Volcano Ark, SiliconFlow, ZenMux, OpenRouter, Xiaomi MiMo, Alibaba Cloud Bailian etc.; a lista real deve ser consultada na página dentro do aplicativo. - Capacidades abertas: MCP suporta STDIO / HTTP / SSE; Skills são divididas em internas, de nível de usuário e de nível de workspace; é possível configurar Prompt, modelo, ferramentas e permissões de Agents personalizados para diferentes workspaces; recursos de laboratório suportam Claude Code CLI, OpenAI Codex CLI e Google Gemini CLI como Runtime externo. - Múltiplas entradas: IM Bots integrados para Telegram e DingTalk; mais plataformas podem ser conectadas via plugin OpenClaw; também há pequeno assistente, pet de desktop/janela flutuante e tarefas agendadas. - Local-first: sessões, tarefas, configurações e artefatos gerados são salvos por padrão na máquina local; a busca full-text local é baseada em Tantivy + jieba e pode pesquisar histórico de sessões e arquivos do workspace. Stack tecnológica e arquitetura A camada desktop é Tauri v2 + Rust, o frontend é React 19 + TypeScript + Vite + TailwindCSS, o backend Sidecar é Node.js v24 + Claude Agent SDK, a comunicação passa por proxy HTTP/SSE em Rust, e o frontend acessa o Sidecar via Tauri invoke. A busca usa Tantivy + tantivy-jieba, e o terminal usa portable-pty + xterm.js. Os princípios arquiteturais principais incluem: Session e Sidecar são 1:1; Tab, CronTask, BackgroundCompletion e Agent compartilham ciclo de vida por meio do modelo Owner; Chat Tab usa API com escopo de tab, enquanto Settings e Launcher usam Global Sidecar; o plano de controle HTTP/SSE passa pelo proxy Rust, e apenas os dados de grande volume em /refs/:id e /attachment/* usam fetch nativo sob restrições de CORS/CSP/segurança de caminho; IO de arquivos do workspace passa por Tauri/Rust; gravação de configuração em disco é disk-first; operações de Session passam uniformemente pela facade src/server/session-engine/, com selector escolhendo adapter builtin ou external. Desenvolvimento e build Usuários finais têm suporte a macOS 13.0+ (Apple Silicon e Intel) e Windows 10+. Desenvolvedores precisam de Node.js >=22 (recomendado 24), npm, Rust instalado via rustup (toolchain fixada por rust-toolchain.toml); build frio de recursos nativos de inferência requer CMake 3.28+ e toolchain C/C++ da plataforma; no macOS também são necessários Git, Python 3.10+ e Apple Clang. No macOS / Linux, use ./setup.sh e ./start_dev.sh; no Windows, use .\setup_windows.ps1 e .\build_windows.ps1. Comandos comuns incluem npm run typecheck, npm run lint (com verificação de limites arquiteturais via dependency-cruiser), testes em camadas test:classification / test:unit / test:dom / test:integration, além de test:credentialed, que precisa ser executado explicitamente localmente; scripts de build incluem build_dev.sh, build_macos.sh e build_linux.sh. Máquinas de build Linux precisam instalar dependências de sistema relacionadas a Tauri/WebKit. A estrutura do projeto divide-se em src/renderer (frontend React), src/server (Node Sidecar), src/server/plugin-bridge (OpenClaw Plugin Bridge), src/cli (myagents CLI), src/shared (tipos compartilhados), src-tauri (camada Rust), bundled-agents, bundled-skills e specs (documentos de arquitetura e design). As mensagens de commit seguem Conventional Commits. Licença e uso comercial O projeto usa a GNU Affero General Public License v3.0 (AGPL-3.0-only); uso pessoal e empresarial é gratuito, e também é permitido uso comercial; cenários como distribuir versões modificadas ou fornecer versões modificadas a usuários pela rede exigem cumprimento integral da AGPL. Se desejar modificações fechadas, incorporação, OEM, distribuição ou hospedagem sem cumprir as obrigações de código aberto da AGPL, é necessária uma licença comercial separada. Componentes de terceiros continuam sujeitos às suas próprias licenças.