Política de Privacidade
Este texto descreve como o Train by HAKR trata seus dados hoje. Se algum comportamento do app divergir do que está escrito aqui, o comportamento é que está errado — escreva para support@hakr.me e nós corrigimos.
1. Quem somos
O Train by HAKR é um aplicativo de treino de força para iPhone e Apple Watch. O responsável pelo tratamento dos dados descritos aqui é o desenvolvedor do aplicativo, que pode ser contatado em support@hakr.me.
2. Que dados coletamos
- Conta. Seu e-mail, para autenticação. Se você usar Face ID, uma passkey — cuja chave privada nunca sai do seu aparelho e nunca chega até nós.
- Treino. Planos, rotinas, exercícios, séries, cargas, repetições, RIR e RPE, dor que você registrar, check-ins depois do treino, datas e durações.
- Perfil. Para montar seu plano, o app pede obrigatoriamente a data de nascimento (a idade orienta a prescrição e confirma a idade mínima) e uma resposta sobre limitações ou lesões, em que “nenhuma” é uma resposta válida. São opcionais: nome, sexo, altura, peso, medidas, objetivo nas suas palavras, equipamentos disponíveis e contexto de recuperação, como sono, estresse, medicação ou terapia hormonal.
- Conversas com o Coach. As perguntas que você faz e as respostas que recebe.
- Memória do Coach. Preferências declaradas, inferências não relacionadas à saúde que precisam de confirmação e classes de sugestões silenciadas, com origem e validade. Você pode corrigir ou apagar esses itens no Perfil; dor não é silenciada. Recibos locais de decisões têm janela de 180 dias/500 itens e cobertura parcial, sem reconstruir o passado.
- Apple Saúde e Apple Watch. Durante um treino iniciado no relógio, o app lê frequência cardíaca e energia ativa para mostrar no pulso e grava o treino no app Saúde. Esses dados de saúde ficam no relógio e no iPhone; não são enviados ao nosso servidor.
- Registro de uso da IA. Para cada pedido ao Coach guardamos a tarefa, o modelo, os tokens, o custo e o tempo de resposta, para controlar limites e corrigir falhas. Esse registro não guarda o texto do pedido e é apagado com a conta.
- Diagnóstico técnico mínimo, para entender falhas e manter o serviço no ar.
- Medição opcional de uso. Nasce desligada e só é ativada em Ajustes, por aparelho. Mede interações como salvar treino/check-in, pular explicitamente o check-in, visualizar/abrir explicações, marcos do treino (primeira série salva, treino retomado, falha ao selar), etapas do primeiro uso, falhas de sincronização e falha ao abrir o app. Inclui apenas identificadores aleatórios, tipo fechado, superfície, horário e, nas interações do Coach, duração limitada a 30 segundos; não inclui respostas de saúde, textos, nomes, mensagens, documentos ou mídia. Sem consentimento não coletamos esses eventos nem localmente.
3. O que fica no seu aparelho e o que pode sair dele
Esta seção é a parte mais importante do documento.
- Fotos de corpo e vídeos de treino ficam no seu iPhone. Fotos de corpo não são enviadas à IA nem ao nosso servidor. Se você apagar o app, elas vão junto. Contas criadas em versões antigas podem ter observações em texto sobre fotos analisadas naquela época; o Coach pode lê-las, e elas são apagadas com a conta.
- A análise de postura em vídeo roda no aparelho. Do vídeo, apenas pontos-chave e ângulos podem ser transmitidos — nunca a imagem.
- A leitura da foto do seu plano roda no aparelho, com o reconhecimento de texto do próprio iOS. O texto reconhecido segue para a IA montar o plano. Quando o texto não é legível localmente, o app pede uma confirmação separada e explícita antes de enviar uma versão reduzida da imagem.
- Saem do aparelho, quando você escolhe: fotos dos seus equipamentos (cópias reduzidas, para a IA identificar o que há na academia, depois de você revisá-las), arquivos PDF e planilhas que você importa, e o texto que você escreve ou cola para a IA.
4. Onde os dados ficam
Seu histórico de treino é gravado primeiro no próprio aparelho, num banco local — é isso que faz o app funcionar sem conexão — e depois sincronizado com nosso servidor, hospedado na Supabase (PostgreSQL). Cada tabela tem segurança em nível de linha por usuário: você lê e escreve apenas as suas linhas, e nenhuma outra conta alcança as suas.
A sincronização de conversas e memória começa desligada e tem ativação própria em Ajustes, em cada aparelho. Você escolhe incluir o histórico local existente ou apenas alterações futuras. Ela pode transmitir texto de treino sensível; não envia fotos, vídeos, eventos de medição nem recibos operacionais de decisões. Conteúdo recebido é histórico legível, não comandos executados novamente. O histórico é transferido em páginas; itens inválidos ficam no aparelho, com indicação de sincronização parcial, sem impedir os demais.
5. Inteligência artificial
O Coach HAKR funciona com modelos de linguagem de terceiros. O app fala apenas com um servidor nosso e autenticado; ele encaminha o pedido pelo OpenRouter a provedores de modelos — hoje OpenAI, por meio da Microsoft Azure, e Google, por meio do Vertex AI. Os pedidos são configurados para provedores com retenção zero de dados e que não usam o conteúdo para treinar modelos.
Conforme o recurso que você usa, o pedido pode levar: seu perfil (idade, sexo, altura, peso, objetivo, equipamentos), as limitações, dores e o contexto de recuperação que você declarou, seu histórico e plano de treino, suas mensagens e os documentos ou imagens que você importa. Enviamos apenas o que o recurso pedido precisa. Isso acontece quando você cria, descreve, importa ou ajusta um plano, conversa com o Coach e quando o Coach prepara sozinho a revisão do seu treino da semana — essa revisão automática pode ser desligada em Notificações, em “Mensagens do coach”.
Nada vai para a IA sem a sua permissão. Antes do primeiro pedido, o app mostra o que vai e para quem, e pergunta. Se você não permitir, nenhum pedido sai do aparelho, inclusive os automáticos, e o treino continua funcionando. Você muda a escolha quando quiser em Você → Dados e privacidade → Uso de IA. Quando esta política muda, o app pede a permissão de novo.
Pedidos relevantes ao Coach podem usar até oito preferências ativas declaradas ou confirmadas; inferências não confirmadas não são tratadas como suas preferências. Essa memória não é acrescentada automaticamente à importação de documentos. O consentimento de armazenamento sincronizado é separado do uso de contexto necessário ao pedido que você faz ao Coach.
Não usamos seu histórico, suas conversas, suas fotos ou seus vídeos identificáveis para treinar modelos — nossos ou de terceiros — sem o seu consentimento específico para isso.
A consulta à literatura científica roda num serviço de pesquisa nosso, hospedado na Oracle Cloud. Quando o próprio Coach decide consultar, ele é instruído a enviar só um tema derivado em inglês, sem dados pessoais. Quando você pede a consulta pelo menu “+”, a pergunta que você escreveu é enviada como está; evite colocar nela dados que identifiquem você ou outra pessoa.
6. Compartilhamento
Não vendemos seus dados e não os usamos para publicidade. O app ainda não tem compartilhamento com treinador. Você pode gerar um relatório do seu treino (nome, histórico, recordes e análises de execução) e enviá-lo a quem quiser pela folha de compartilhamento do iPhone; depois de enviado, ele fica com quem o recebeu e não pode ser revogado pelo app.
Usamos estes prestadores de serviço, que tratam os dados apenas para executar suas funções: Supabase (servidor, banco de dados, autenticação e e-mails da conta), OpenRouter e os provedores de modelos citados na seção 5 (inferência de IA), Oracle Cloud (serviço de pesquisa científica) e Vercel (hospedagem deste site).
7. Seus direitos
Você pode acessar, corrigir, exportar e apagar seus dados. A exclusão da conta é definitiva: ela remove o armazenamento associado, apaga em cascata todos os registros ligados a você e elimina a conta de autenticação. As instruções estão em Excluir conta.
Seu histórico nunca é usado como refém: você não precisa continuar pagando, nem manter uma conta ativa, para conseguir exportá-lo ou apagá-lo.
Em Ajustes, desativar a medição opcional apaga seus eventos e a fila local. A ação separada “Excluir eventos de uso enviados” solicita a exclusão de eventos de todos os aparelhos da conta e pode aguardar conexão para tentar novamente. Filas antigas de outros aparelhos são invalidadas e exigem nova ativação. Eventos têm retenção padrão de 180 dias, configurável no servidor, com limpeza diária; recibos opacos de revogação/exclusão ficam até excluir a conta para impedir reenvios tardios. Esse controle é separado da memória do Coach, do consentimento de mídia e da contabilização necessária de uso de IA.
Pedidos locais de privacidade pendentes mantêm somente o ID da conta original, o tipo de operação e um identificador aleatório após sair ou limpar os dados da conta. Só retomam quando essa conta entra e se conecta. Outra conta não pode vê-los nem enviá-los. Esses registros de tentativa não contêm eventos, respostas ou credenciais e são removidos após confirmação.
O cancelamento pendente de lembretes locais mantém somente os identificadores das notificações no aparelho, mesmo após sair ou limpar os dados da conta, até a confirmação do cancelamento. Esses registros não contêm o texto da notificação nem dados da conta.
Revogar a sincronização de conversas/memória pausa os envios da conta e preserva o conteúdo já enviado. A parada neste aparelho é imediata; sem conexão, a ação remota fica pendente até confirmação. Apagar neste aparelho e apagar na conta são escolhas separadas em Ajustes, preservando treino e auditoria/recuperação do plano. Apagar localmente impede o retorno automático dos dados até uma nova ativação explícita, que pode restaurar conteúdo da conta. Filas e pedidos antigos são protegidos por gerações de consentimento; novos pedidos usam a geração confirmada sem alterar pedidos pendentes. Metadados sem conteúdo de identidade/revisão/exclusão impedem restauração indevida; a exclusão confirmada da conta também remove seus controles pendentes.
8. Crianças
O aplicativo não se destina a menores de 13 anos, ou à idade mínima aplicável no seu país, o que for maior.
9. Mudanças nesta política
Se houver mudança material, atualizamos a data no topo desta página e avisamos você antes de a mudança valer.
10. Contato
Dúvidas, correções ou pedidos sobre dados: support@hakr.me.
Privacy Policy
This describes how Train by HAKR handles your data today. If the app ever behaves differently from what is written here, the behaviour is the bug — write to support@hakr.me and we'll fix it.
1. Who we are
Train by HAKR is a strength-training app for iPhone and Apple Watch. The party responsible for the data described here is the app's developer, reachable at support@hakr.me.
2. What we collect
- Account. Your email, for authentication. If you use Face ID, a passkey — whose private key never leaves your device and never reaches us.
- Training. Plans, routines, exercises, sets, loads, reps, RIR and RPE, any pain you log, post-workout check-ins, dates and durations.
- Profile. To build your plan, the app requires your date of birth (age informs the prescription and confirms the minimum age) and an answer about limitations or injuries, where “none” is a valid answer. Optional: name, sex, height, weight, measurements, your goal in your own words, available equipment, and recovery context such as sleep, stress, medication or hormone therapy.
- Coach conversations. The questions you ask and the answers you get.
- Coach memory. Declared preferences, non-health inferences requiring confirmation, and silenced suggestion classes, with source and expiry. You can correct or delete these items in Profile; pain is not silenced. Local decision receipts have a 180-day/500-item window and partial coverage, without reconstructing the past.
- Apple Health and Apple Watch. During a workout started on the watch, the app reads heart rate and active energy to show them on your wrist, and saves the workout to the Health app. This health data stays on the watch and the iPhone; it is not sent to our server.
- AI usage records. For each Coach request we keep the task, model, tokens, cost and response time, to enforce limits and fix failures. These records do not keep the request text and are deleted with the account.
- Minimal technical diagnostics, to understand failures and keep the service running.
- Optional usage measurement. This starts off and can only be enabled in Settings, per device. It measures interactions such as saving a workout/check-in, explicitly skipping a check-in, viewing/opening explanations, workout milestones (first set saved, workout resumed, failure to seal), first-run steps, sync failures and failure to launch the app. It includes only random identifiers, a closed event type, surface, timestamp and, for Coach interactions, duration capped at 30 seconds; no health answers, text, names, messages, documents or media. Without consent, these events are not collected, even locally.
3. What stays on your device and what may leave it
This section is the most important part of this document.
- Body photos and workout videos stay on your iPhone. Body photos are not sent to the AI or to our server. Delete the app and they go with it. Accounts created on older versions may have text observations about photos analysed back then; the Coach may read them, and they are deleted with the account.
- Video posture analysis runs on the device. From the video, only keypoints and angles may ever be transmitted — never the footage.
- Reading your plan photo runs on the device, using iOS's own text recognition. The recognised text goes to the AI to build the plan. When the text isn't legible locally, the app asks for a separate, explicit confirmation before sending a reduced version of the image.
- Leaving the device when you choose to: photos of your equipment (reduced copies, so the AI can identify what your gym has, after you review them), PDF files and spreadsheets you import, and the text you write or paste for the AI.
4. Where the data lives
Your training history is written first to the device itself, in a local database — this is what lets the app work with no connection — and then synchronised to our server, hosted on Supabase (PostgreSQL). Every table has per-user row-level security: you read and write only your own rows, and no other account can reach them.
Conversation and memory synchronization starts off and has its own opt-in in Settings, on each device. You choose existing local history or future changes only. It may transmit sensitive training text; it does not send photos, videos, measurement events or operational decision receipts. Received content is readable history, not replayed commands. History transfers in pages; invalid items stay on the device with partial-sync status without blocking other items.
5. Artificial intelligence
Coach HAKR runs on third-party language models. The app talks only to an authenticated server of ours, which routes the request through OpenRouter to model providers — currently OpenAI, through Microsoft Azure, and Google, through Vertex AI. Requests are restricted to providers with zero data retention that do not use the content to train models.
Depending on the feature you use, a request may carry: your profile (age, sex, height, weight, goal, equipment), the limitations, pain and recovery context you declared, your training history and plan, your messages, and the documents or images you import. We send only what the requested feature needs. This happens when you create, describe, import or adjust a plan, when you chat with the Coach, and when the Coach prepares your weekly training review on its own — that automatic review can be turned off in Notifications, under “Coach messages”.
Nothing goes to the AI without your permission. Before the first request, the app shows what goes and to whom, and asks. If you do not allow it, no request leaves the device, automatic ones included, and training keeps working. Change your choice anytime in You → Data and privacy → AI use. When this policy changes, the app asks again.
Relevant Coach requests may use up to eight active declared or confirmed preferences; unconfirmed inferences are not treated as your preferences. This memory is not automatically attached to document import. Synced-storage consent is separate from the context needed for the request you make to the Coach.
We do not use your identifiable history, conversations, photos, or videos to train models — ours or anyone else's — without your specific consent.
Scientific literature lookups run on a research service of ours, hosted on Oracle Cloud. When the Coach decides to look something up on its own, it is instructed to send only a derived English topic, without personal data. When you ask for a lookup from the “+” menu, the question you wrote is sent as is; avoid including details that identify you or anyone else.
6. Sharing
We do not sell your data and we do not use it for advertising. The app does not offer trainer sharing yet. You can generate a training report (name, history, records and form analyses) and send it to anyone through the iPhone share sheet; once sent, it stays with whoever received it and cannot be revoked from the app.
We use these service providers, which process the data only to perform their functions: Supabase (server, database, authentication and account emails), OpenRouter and the model providers named in section 5 (AI inference), Oracle Cloud (scientific research service) and Vercel (hosting of this website).
7. Your rights
You can access, correct, export, and delete your data. Deleting your account is permanent: it purges the associated storage, cascades the deletion across every record tied to you, and removes the authentication account. Instructions are at Delete account.
Your history is never held hostage: you do not need to keep paying, or keep an account active, in order to export or delete it.
In Settings, disabling optional measurement deletes local events and their queue. The separate “Delete uploaded usage events” action requests deletion of events from all devices on the account and can wait for connectivity to retry. Older queues on other devices are invalidated and require fresh opt-in. Event retention defaults to 180 days, configurable on the server, with daily cleanup; opaque revocation/deletion receipts remain until account deletion to prevent delayed replays. This control is separate from Coach memory, media consent and necessary AI usage accounting.
Pending local privacy requests keep only the original account ID, operation type and a random request identifier across sign-out or account-data reset. They resume only when that account signs in and connects. Another account cannot view or send them. These retry records contain no event data, answers or credentials and are removed after confirmation.
Pending cancellation of local reminders keeps only notification identifiers on the device, including across sign-out or account-data reset, until cancellation is confirmed. These records contain no notification text or account data.
Revoking conversation/memory synchronization pauses account uploads and preserves uploaded content. This device stops immediately; offline remote action remains pending until confirmation. Device-only and account-wide erasure are separate Settings choices, preserving training and plan audit/recovery. Local erase prevents automatic data restoration until fresh explicit activation, which may restore account content. Consent generations protect against old queues and requests; new requests use confirmed generation knowledge without changing pending requests. Payload-free identity/revision/deletion metadata prevents resurrection; confirmed account deletion also removes its pending controls.
8. Children
The app is not directed to children under 13, or the minimum age applicable in your country, whichever is higher.
9. Changes to this policy
If something material changes, we update the date at the top of this page and let you know before the change takes effect.
10. Contact
Questions, corrections, or data requests: support@hakr.me.
