Skip to content

Configuração da CLI · Developers

Como a CLI do Dailybot lê credenciais e onde seu estado vive.

A CLI guarda seu estado sob um único diretório na sua home, lê credenciais de variáveis de ambiente ou de um arquivo de sessão, e respeita um `.dailybot/profile.json` por repo para defaults compartilhados do time. Tudo abaixo é a superfície *pública* de configuração — os schemas internos podem mudar; interaja pelos comandos da CLI.

Diretório de estado por usuário

A CLI guarda tudo em ~/.config/dailybot/ (ou no caminho de $DAILYBOT_CONFIG_DIR se definido — útil para runs de testes isolados). Armazena a credencial de sessão em credentials.json, a API key de máquina em config.json, os perfis de agente em agents.json, e o ledger local de hooks em ledger/. Os arquivos são gerados pela máquina — não edite à mão. Para resetar a sessão, rode dailybot login de novo; a CLI reautentica e sobrescreve credentials.json.

Perfil por repo

Um repo pode commitar .dailybot/profile.json para padronizar o autor de relatório, os metadados default, variáveis custom e política de relatório do time para cada colaborador. Nunca guarde credenciais no perfil — a CLI rejeita um campo key.

{
  "name": "${GIT_USER}",
  "profile": "release-bot",
  "default_metadata": {
    "repo": "${GIT_REPO}",
    "team": "platform"
  },
  "vars": {
    "custom_form_skills": ["access-request"]
  },
  "report": {
    "min_interval_minutes": 30,
    "nudge": "commit,activity"
  }
}
KeyDescription
nameNome do autor do relatório (fallback ao usuário autenticado).
profilePerfil de agente nomeado a ativar ao rodar comandos neste repo (a partir de ~/.config/dailybot/agents.json).
default_metadataMesclado em cada payload de agent update e chat send (campos custom como repo, team, component).
varsStore livre de chave/valor consumido pelas skills de agente (ex. skills custom de forms). Nunca coloque credenciais aqui.
reportPolítica de relatório do time: min_interval_minutes (rate-limita os relatórios do agente) e nudge (quais sinais disparam lembretes — commit, activity, both ou none).

Variáveis de ambiente de credencial

A CLI respeita quatro env vars — todas opcionais, todas documentadas.

VariableDescription
DAILYBOT_API_KEYCredencial de máquina para uso headless. Defina no secret manager do seu CI e a CLI pega automaticamente.
DAILYBOT_CLI_TOKENToken bearer estilo sessão (avançado). Sobrescreve o token guardado em credentials.json.
DAILYBOT_API_URLSobrescreve a base da API (default https://api.dailybot.com). Útil para staging / self-hosted.
DAILYBOT_CONFIG_DIRSobrescreve o diretório de estado (default ~/.config/dailybot). Útil para sandboxes e testes de integração.

Precedência quando uma chamada precisa de credencial: $DAILYBOT_API_KEY env → sessão em credentials.json (dailybot login) → config.json api_key. Se houver sessão de dailybot login e $DAILYBOT_API_KEY presentes, a sessão pessoal vence — combina com "se rodei dailybot login, quero ser eu".

Opt-out de hooks locais

Alguns harnesses de agente de IA instalam hooks de relatório do Dailybot que disparam ao editar arquivos e em stops. Para silenciá-los em um único repo, crie um arquivo em .dailybot/disabled. Commite se quiser que o silêncio viaje com o repo; caso contrário, mantenha local. Os hooks vivem em ~/.config/dailybot/ledger/ e nunca chamam a rede — apenas decidem quando lembrar você.

Como saber qual credencial está ativa

Rode dailybot status --auth. O comando testa tanto o caminho de sessão quanto o de API key (se presentes) e imprime qual vence — então você sempre sabe se a próxima chamada sairá como sua sessão de usuário ou como uma chave de serviço.