Skip to content
ReviewRamble

The weekly brief

AI, reviewed, in your inbox.

  • New reviews of tools, models, MCP servers and repos, with the verdict up front
  • Re-checked prices and ratings when something changes
  • New analysis pieces as they are published

Models, agents, MCP servers and the tools actually worth your time.

One email a week. Unsubscribe with the link in any brief. How we use your email

Dossier

Uma busca de emprego auto-hospedada para uma pessoa: um perfil, currículos e cartas de apresentação sob medida e cada candidatura acompanhada até a oferta.

Análise de Sheela · Atualizado

Ver no GitHub Código aberto

Nossa nota

3.8/5

O Dossier é um app de busca de emprego incomumente cuidadoso e bem documentado, cuja verificação de honestidade é uma rede de proteção útil, não uma garantia, e cujo histórico de quatro semanas e senha única recomendam rodá-lo primeiro em casa.

O que é Dossier?

O Dossier guarda o seu histórico profissional em um único perfil e o transforma em um currículo e uma carta de apresentação sob medida para cada vaga. Você cola um anúncio, ou parte de um encontrado pelo JSearch, Adzuna ou FreeHire; ele lê os requisitos, mostra quais o seu perfil cobre e quais são lacunas, e redige os documentos no tom que você escolher, em um de doze temas e em 21 idiomas de documento embutidos. Um chat os refina, toda versão é guardada, e um quadro, uma tabela e um painel acompanham cada candidatura do rascunho à oferta. Uma tela Startups lista startups que estão contratando, a partir de vagas da YC e do tópico mensal "Who is hiring?" do Hacker News.

As partes opcionais ficam desligadas até você ativá-las: um agente diário de vagas que pontua novos anúncios e pode preparar rascunhos, mas nunca envia nem se candidata, uma conexão com Gmail e Google Calendar pelo seu próprio cliente OAuth do Google, e um conector MCP que permite ao Claude ou a outro app MCP buscar, pontuar e salvar rascunhos. O modelo é escolha sua: Ollama, llama.cpp ou LM Studio localmente, ou qualquer API compatível com OpenAI, Anthropic ou Mistral com a sua própria chave.

É um app em Next.js 16 e PostgreSQL 18, escrito em TypeScript sob AGPL-3.0, feito para um único usuário atrás de uma única senha. O repositório foi criado em 3 de outubro de 2026 por AienTech e tem cerca de 3.509 estrelas e 744 forks, com 19 versões, da v1.0.0 naquele dia à v1.11.0 em 31 de outubro de 2026. Não há edição hospedada nem paga; o site do projeto oferece a instalação e um link de patrocínio.

Dossier vale a pena?

O ponto mais forte do Dossier não é a redação, mas a contabilidade em torno dela. Cada anúncio é comparado linha a linha com um único perfil, as lacunas aparecem como lacunas, e cada currículo e carta guarda suas versões, seu chat e seu status, então vinte candidaturas em um mês continuam legíveis. Sua documentação de privacidade é a mais precisa que lemos em um app auto-hospedado desse porte: o PRIVACY.md lista, tarefa por tarefa, o que um modelo hospedado recebe. Escrever um currículo ou uma carta envia o seu perfil sem os dados de contato (nome, título, cidade, cargos, empresas, datas, tópicos, projetos, formação e os fatos que você mesmo informou), mais o anúncio, lido até 20.000 caracteres. E-mail, telefone, endereço, data de nascimento, links, referências e notas privadas ficam de fora. A exceção é importar um currículo, que envia o arquivo inteiro, incluindo dados de contato e referências.

A promessa de "nunca inventar experiência" tem duas camadas, e só uma é código. Os prompts dizem ao modelo para usar apenas fatos do perfil; depois, com Never invent experience ligado (o padrão), uma proteção de fatos em fact-guard.ts varre cada seção gerada em busca de nomes com inicial maiúscula, siglas, números, anos, porcentagens e palavras como "certified", e marca tudo o que não está no perfil, no anúncio nem nos fatos que você acrescentou como "check this". Ela sinaliza; não bloqueia. Pela nossa leitura do código, uma afirmação vaga sem nome nem número, como "liderou equipes multifuncionais", passa intacta, e como o próprio anúncio conta como fonte, uma ferramenta citada no anúncio pode ser atribuída a você sem sinalização. A proteção reduz o risco. Ler cada rascunho antes de enviá-lo continua sendo a garantia.

A conexão com o Gmail pede ao Google gmail.send, gmail.readonly, calendar.freebusy e calendar.events, mais o seu endereço. O gmail.readonly permite ao app ler a sua caixa de entrada inteira; o próprio Dossier só guarda as conversas que enviou e os e-mails de empresas às quais você se candidatou, a menos que você escolha Every new email, que também envia à IA cada nova mensagem fora de Promoções e Social. Ele verifica a cada 10 minutos por padrão e não envia nada sem a sua confirmação. Você precisa criar o seu próprio cliente OAuth no Google Cloud, passar por um aviso de "app não verificado" e publicar a tela de consentimento, já que o Google encerra o acesso em modo de teste após 7 dias. A busca de vagas custa pouco: o plano gratuito do JSearch tem 200 buscas por mês, a OpenWeb Ninja cobra US$ 0,005 por requisição depois disso, o Adzuna dá uma chave gratuita que vale para cerca de 250 por dia, e o FreeHire não precisa de chave. O agente de vagas é limitado a três execuções por dia e uma página de resultados por execução, no máximo cerca de 90 buscas no JSearch por mês.

O modelo de segurança combina mais com um notebook do que com a internet aberta. Há uma única senha, guardada como hash argon2id, sem contas e sem segundo fator descrito, e atrás dela ficam o seu perfil, qualquer acesso de leitura ao Gmail e as chaves dos seus provedores. Os logins têm limite de taxa por IP e no total, mas o SECURITY.md adverte para não expor a porta 3000 diretamente porque o limitador confia na última entrada do X-Forwarded-For, então um proxy reverso com TLS é obrigatório, não opcional. Usar o Claude na web pelo conector MCP também exige esse endereço HTTPS público. O ping de uso só é opcional, por adesão, desde a 1.8.0, e uma verificação diária de atualizações no GitHub vem ligada por padrão.

A maturidade é a preocupação honesta. O repositório tem quatro semanas, a API do GitHub lista dois colaboradores e 25 commits no main, e 19 versões saíram desde 3 de outubro de 2026, com formatos de exportação que não podem ser importados em versões mais antigas. Os 744 forks são muitos perto de 3.509 estrelas, cerca de um para cada cinco, o que pode simplesmente significar que as pessoas fazem fork para auto-hospedar. A AGPL-3.0 permite que você o rode e modifique livremente para si; um orientador de carreira que rode uma cópia modificada para clientes precisa oferecer o código-fonte a eles, torna-se o controlador dos dados deles perante o GDPR e precisa de um plano de API do FreeHire. Para a busca de uma pessoa em uma máquina de casa com um modelo local, é uma ferramenta bem pensada; como serviço exposto à internet, precisa de mais blindagem do que traz.

Onde ele se destaca

  • Uma designer de produto sênior em Berlim que se candidata a 15 a 20 vagas por mês

    Adaptar um currículo e uma carta de apresentação a cada anúncio sem inventar nada

    Preencha o perfil uma vez, cole cada anúncio e revise a correspondência e as marcações "check this" antes de baixar os PDFs. Com Anthropic ou OpenAI, o perfil e o anúncio vão para esse provedor sob os termos da sua API; o quadro e o painel acompanham respostas e entrevistas.

  • Um engenheiro de software sob NDA que não vai enviar um currículo a um modelo na nuvem

    Rodar a busca inteira no meu próprio notebook

    Suba o arquivo Compose com o perfil ai e baixe o qwen2.5:7b, que precisa de cerca de 6 GB de memória. Nada do perfil ou dos documentos sai da máquina, mas em uma CPU uma nova candidatura leva vários minutos em vez de segundos.

  • Um assinante do Claude Pro que prefere trabalhar no chat

    Pedir ao Claude que encontre vagas, classifique-as em relação ao meu perfil e redija a melhor

    Ative o conector MCP, coloque o Dossier atrás de um proxy HTTPS público e adicione-o como conector personalizado. As ferramentas do Claude podem buscar, pontuar, ler o perfil e salvar rascunhos, mas nunca enviar nem apagar; o que o Claude lê vai para a Anthropic sob a sua conta do Claude.

  • Um recém-formado em busca de emprego com orçamento apertado

    Receber toda manhã uma lista curta de novos anúncios sem pagar por uma API

    Escolha o FreeHire ou a chave gratuita do Adzuna e defina uma busca, um horário e uma pontuação mínima em Settings, Job agent. Ele roda uma vez por dia, pontua até 15 novos anúncios por padrão e pode preparar até 3 rascunhos que aguardam aprovação.

Antes de decidir

Configuração
Baixe o compose.production.yml, gere POSTGRES_PASSWORD e DOSSIER_SECRET, faça o hash de uma senha com o comando hash-password da imagem e rode docker compose up -d. A imagem tem cerca de 1.7 GB e precisa de cerca de 2 GB de memória livre; em um servidor, a documentação pede 2 vCPUs, 2 GB e um proxy reverso com TLS.
Integrações
Ollama, llama.cpp, LM Studio, qualquer API compatível com OpenAI (OpenRouter, DeepSeek, vLLM), Anthropic e Mistral; JSearch, Adzuna, FreeHire e uma fonte não oficial da Bundesagentur für Arbeit; Gmail e Google Calendar; um conector MCP para Claude, n8n e outros apps MCP; Jev, da TypeSafe, para pontuação.
Dados e privacidade
Tudo fica armazenado no seu banco PostgreSQL; chaves e tokens do Google são cifrados com DOSSIER_SECRET; backups noturnos em JSON simples são mantidos por 14 dias por padrão. Um modelo hospedado recebe o seu perfil sem dados de contato, mais os anúncios e, se o Gmail estiver ativo, respostas de até 8.000 caracteres. O ping de uso é por adesão; a verificação diária de atualizações no GitHub vem ligada por padrão.
Custo em escala
Não há nível pago. Um servidor pequeno mais o uso do modelo: gratuito com um modelo local, ou o preço por token do seu provedor para cada leitura, comparação, rascunho e pontuação. O JSearch acima de 200 buscas por mês é pago por uso, a US$ 0,005 por requisição; um orientador que o hospede para clientes precisa de um plano de API do FreeHire.
Limites
Um único usuário, uma única instância por banco de dados, só navegadores desktop e interface em inglês. 19 versões em quatro semanas, e uma exportação da 1.11.0 não pode ser importada em versões mais antigas. A proteção de fatos é lexical e só sinaliza. Seis issues abertas no momento em que escrevemos.

O que é bom

  • Documentação exata, tarefa por tarefa, do que um modelo hospedado recebe
  • A proteção de fatos sinaliza nomes, números e credenciais que o seu perfil não sustenta
  • Os níveis gratuitos de busca de vagas bastam para uso diário, e o agente nunca se candidata
  • Funciona totalmente offline com Ollama ou LM Studio

O que não é

  • Uma senha, sem contas e sem segundo fator descrito
  • A proteção de fatos só sinaliza, e deixa passar afirmações vagas e termos tirados do anúncio
  • O acesso de leitura ao Gmail cobre a caixa inteira; você precisa rodar o seu próprio cliente OAuth do Google
  • Quatro semanas de vida, com dois colaboradores listados; só desktop, interface em inglês

Ideal para

Uma pessoa em busca de emprego, à vontade com Docker, que quer currículos, cartas e acompanhamento de candidaturas sob medida em uma máquina de casa ou servidor privado, de preferência com um modelo local.

Dossier: perguntas frequentes

Dossier vale a pena?
O Dossier é um app de busca de emprego incomumente cuidadoso e bem documentado, cuja verificação de honestidade é uma rede de proteção útil, não uma garantia, e cujo histórico de quatro semanas e senha única recomendam rodá-lo primeiro em casa. Damos nota 3.8 de 5.
Quanto custa Dossier?
Gratuito e de código aberto (AGPL-3.0), só auto-hospedado. Você paga o seu próprio servidor, o seu provedor de IA se ele for hospedado e qualquer API de busca de vagas além dos níveis gratuitos (o plano gratuito do JSearch tem 200 buscas por mês; a chave gratuita do Adzuna, cerca de 250 por dia; o FreeHire não precisa de chave).
Quais são as desvantagens de Dossier?
Uma senha, sem contas e sem segundo fator descrito; a proteção de fatos só sinaliza, e deixa passar afirmações vagas e termos tirados do anúncio; o acesso de leitura ao Gmail cobre a caixa inteira; você precisa rodar o seu próprio cliente OAuth do Google; quatro semanas de vida, com dois colaboradores listados; só desktop, interface em inglês.
Para quem Dossier é indicado?
Uma pessoa em busca de emprego, à vontade com Docker, que quer currículos, cartas e acompanhamento de candidaturas sob medida em uma máquina de casa ou servidor privado, de preferência com um modelo local.
Quanto custa Dossier para uma equipe ou em produção?
Não há nível pago. Um servidor pequeno mais o uso do modelo: gratuito com um modelo local, ou o preço por token do seu provedor para cada leitura, comparação, rascunho e pontuação. O JSearch acima de 200 buscas por mês é pago por uso, a US$ 0,005 por requisição; um orientador que o hospede para clientes precisa de um plano de API do FreeHire.
Dossier é seguro para dados da empresa?
Tudo fica armazenado no seu banco PostgreSQL; chaves e tokens do Google são cifrados com DOSSIER_SECRET; backups noturnos em JSON simples são mantidos por 14 dias por padrão. Um modelo hospedado recebe o seu perfil sem dados de contato, mais os anúncios e, se o Gmail estiver ativo, respostas de até 8.000 caracteres. O ping de uso é por adesão; a verificação diária de atualizações no GitHub vem ligada por padrão.

Respostas verificadas em 31 de out. de 2026.