Segurança
Suas tarefas continuam suas
O Done foi feito para um mundo em que agentes de IA dividem a sua lista de tarefas. Por isso, isolamento, acesso com escopo e aprovação humana não são recursos: são a base.
Isolamento de contas
- Toda tarefa, todo projeto e toda etiqueta ficam restritos aos espaços de trabalho de que você participa. Uma consulta só pode devolver linhas que a sua conta tem permissão para ver. Não existe caminho que leia de uma conta para outra.
- A coluna interna de criador/atribuição é removida antes de qualquer linha sair da camada de dados, então nunca faz parte da superfície da API.
- Os espaços de trabalho compartilhados e o compartilhamento por projeto são opcionais: um colega só vê aquilo para o qual você o convidou, e nada mais.
Autenticação
- As senhas passam por hash com argon2id e nunca são guardadas em texto puro. A autenticação é por conta, não um segredo compartilhado do ambiente.
- Ative a autenticação em duas etapas (TOTP) e uma senha roubada não basta para entrar. Ela também é exigida na redefinição de senha, então só o acesso à caixa de entrada não permite tomar uma conta, e você recebe dez códigos de recuperação de uso único para o caso de perder o aparelho.
- As sessões são por conta e baseadas em cookie. Cada sessão corresponde a exatamente um usuário, e toda requisição fica restrita a esse usuário.
- O site inteiro é de mesma origem e servido por HTTPS com uma Content-Security-Policy rígida. Scripts embutidos só rodam com um nonce novo a cada requisição, então um script injetado não é executado.
Acesso de agentes e tokens
- Cada conta tem seu próprio endpoint MCP e seus próprios tokens. Não existe token compartilhado nem global: um token só enxerga os dados da própria conta.
- No Pro e no Teams, restrinja um token a somente leitura ou a um único projeto, para o agente ter exatamente o acesso de que precisa e nada além disso.
- Conecte por OAuth 2.1 (o Done é um servidor de autorização completo para o seu endpoint MCP) ou por um token bearer. Gerar de novo ou revogar um token o invalida na hora.
- Trocar ou redefinir sua senha também revoga todas as credenciais de API (tokens MCP e apps conectados), para que a recuperação de uma suspeita de invasão não deixe o acesso de agentes vivo em silêncio.
Você aprova cada resultado
- Uma tarefa com aprovação exigida não se encerra sozinha. O agente propõe um plano antes de um trabalho grande e um resumo antes da conclusão. Nada chega a concluído sem a sua aprovação em Precisa de você.
- Só uma pessoa pode tornar uma tarefa aprovável automaticamente. Um agente não consegue tirar a própria barreira.
- Toda sessão de agente é registrada como uma execução, com seus limites de chamadas de ferramentas e de tempo, para você ver exatamente o que rodou e limitar até onde ela vai.
Seus dados
- Os dados ficam no Cloudflare D1 (SQLite na borda) e os arquivos anexados às tarefas no Cloudflare R2, os dois atendidos por um único Worker. Não há um backend separado passando seus dados de um lado para outro.
- Excluir uma tarefa a move para a Lixeira, com 30 dias para restaurar. Não é uma exclusão definitiva imediata.
- Exporte suas tarefas em CSV ou Markdown quando quiser e exclua sua conta (com todos os dados) você mesmo, pelo app.
Slack e conexões de terceiros
- O app do Slack é vinculado por usuário, e só depois que você, conectado ao Done, confirma. Uma identidade do Slack não pode ser ligada a uma conta sem o consentimento do dono.
- Toda requisição recebida do Slack é verificada com a assinatura do signing secret do Slack, e requisições repetidas (antigas) são rejeitadas.
- O Google Calendar e os feeds de calendário ICS assinados são apenas uma sincronização, somente leitura, dos horários ocupados (nunca títulos ou detalhes de eventos) e totalmente opcionais. Nada é conectado se você não conectar.
Encontrou algo?
Relate um problema de segurança em particular para security [arroba] trydone.app e nós retornamos. Por favor, não abra uma issue pública para nada que possa ser explorado.