Criando e automatizando check-ins pela CLI
Crie um check-in do zero, ajuste sua agenda e lembretes, complete-o de forma headless a partir de um script ou agente, e roteie resultados para canais de relatório — contrato completo da CLI.
Um check-in que só pode ser completado clicando na UI de chat é um check-in que um agente não consegue conduzir. Cada passo do ciclo de vida — criar um do zero, ajustar sua agenda, respondê-lo, editar uma resposta passada, rotear resultados para um canal — tem um caminho headless via CLI/API, tudo coberto aqui.
Criando um check-in
Um check-in precisa de um nome, pelo menos um participante e pelo menos uma pergunta — pular qualquer um dos dois faz create falhar rapidamente (checkin_requires_participant / questions_required, respectivamente; um TTY interativo pede em vez de falhar).
dailybot checkin create -n "Daily Standup" \
--user [email protected] --user "Jane Doe" --team "My Team" \
--questions-file q.json --json
Os usuários são resolvidos por nome, email ou UUID (a busca por email exige permissões de admin/manager). Criar um check-in é aberto a qualquer membro autenticado; configurar, arquivar e editar suas perguntas são operações de admin/manager.
Agendamento
dailybot checkin config <followup_uuid> \
--time 09:30 --days 1,2,3,4,5 --timezone America/New_York \
--frequency weekly --report-time 10:00
| Flag | Valores | Notas |
|---|---|---|
--time |
HH:MM |
Horário de envio |
--days |
Lista separada por vírgula 0-6 |
0 = domingo; 1,2,3,4,5 = seg–sex |
--timezone |
Nome IANA | ex.: America/New_York |
--frequency |
apenas weekly |
--frequency-advanced monthly/custom para qualquer outra coisa — --frequency monthly falha rapidamente |
--frequency-advanced |
disabled / monthly / custom |
Use custom com --cron "m h dom mon dow" |
--start-on / --end-on |
YYYY-MM-DD |
Limites da janela ativa |
--participant-timezone / --custom-timezone |
flag | Por participante vs. um único fuso compartilhado |
--report-time |
HH:MM |
Quando o relatório agregado é publicado |
Lembretes
dailybot checkin config <followup_uuid> --reminders 2 --reminder-interval 30 \
--reminder-condition smart_frequency --reminder-tone persuasive
--reminders (0–5, 0 = desligado), --reminder-interval (0–60 minutos entre eles), --reminder-condition (smart_frequency / fixed_frequency), --reminder-tone (standard / persuasive, qualquer outra coisa → invalid_reminder_tone).
Autoria de perguntas
Os mesmos quatro tipos e a mesma regra de título de relatório dos formulários — text, multiple_choice (--options "A,B,C"), boolean, numeric — e --short-question/--ai-short-question é obrigatório em add:
dailybot checkin questions add <followup_uuid> \
--type text --question "What did you complete yesterday?" \
--short-question "Yesterday" --required
dailybot checkin questions add <followup_uuid> \
--type boolean --question "Any blockers?" --short-question "Blockers" --blocker
--blocker marca uma pergunta de forma que deixá-la em branco bloqueia o envio — combine com perguntas boolean; responder a uma pergunta blocker com "None" é rejeitado porque não é uma string boolean válida (use no / false / 0). A lógica condicional de salto (--jump-if-equals / --jump-to / --logic-file) funciona de forma idêntica aos formulários, incluindo as ações trigger_form e trigger_checkin para encadear em outro check-in ou formulário com base em uma resposta.
Completando de forma headless
dailybot checkin complete <followup_uuid> \
-a 0="Shipped the auth refactor with full test coverage" \
-a 1="Starting the payment integration" \
-a 2=no \
--yes
Combine a resposta com o próprio tipo da pergunta — leia primeiro com dailybot checkin show <followup_uuid> --json se ainda não souber qual é:
question_type |
Responda com |
|---|---|
text |
Texto livre |
boolean |
yes/no, true/false, ou 1/0 |
numeric |
Um número |
multiple_choice |
Um dos próprios choices da pergunta |
Uma incompatibilidade retorna 400 sem dizer qual pergunta estava errada — verifique os tipos primeiro para um fluxo com script. Preencha retroativamente ou com data futura usando --response-date YYYY-MM-DD (controlado pelas próprias configurações --allow-past/--allow-future do check-in — previous_responses_are_not_allowed / future_responses_are_not_allowed caso contrário).
Editando e navegando pelo histórico
# Override specific answers on an already-submitted response
dailybot checkin edit <followup_uuid> -a 0="Updated answer" --yes
# Every participant's responses over a range (admin/manager can filter --user)
dailybot checkin history <followup_uuid> --days 30 --user <user_uuid> --json
# Delete your own response for a day
dailybot checkin reset <followup_uuid> --yes
O histórico de check-in é de toda a equipe por padrão (diferente dos formulários, que por padrão mostram apenas suas próprias respostas) — um membro sempre vê apenas as próprias respostas, independentemente de --user, que é exclusivo para admin/manager. --user aceita apenas UUID; resolva nomes/emails primeiro com dailybot user list --json.
Roteando resultados para canais de relatório
dailybot checkin config <followup_uuid> \
--report-channel "$STANDUP_CHANNEL_UUID" --report-channel "$LEADS_CHANNEL_UUID"
--report-channel é repetível, máximo 3 (too_many_report_channels além disso). Em config ele substitui o conjunto inteiro de canais — liste todo canal que deseja ativo, sempre que o alterar. O relatório agregado é publicado em --report-time, se definido, resumindo as conclusões daquele dia.
Configurações de Smart / IA
dailybot checkin config <followup_uuid> --smart --intelligence --max-clarifying 2
--intelligence exige --smart; --max-clarifying > 0 exige --intelligence — ambos aplicados do lado do servidor (intelligence_requires_smart_checkin).
Privacidade
dailybot checkin config <followup_uuid> --privacy managers_and_members
Valores: only_owner, owner_and_members, managers_and_members, managers_and_admins, org_admins, everyone, custom. --anonymous é irreversível — --no-anonymous em um check-in já anônimo falha com anonymous_irreversible (diferente de formulários, onde o anonimato pode ser alternado livremente em ambas as direções).
Verificação round-trip
Depois de qualquer chamada de autoria, leia a configuração de volta para confirmar que ela foi aplicada:
dailybot checkin show <followup_uuid> --json
Referências cruzadas
- O ciclo de vida de formulários pela CLI para o modelo idêntico de autoria de perguntas compartilhado entre check-ins e formulários.
/pt/developers/clipara o grupo completo de comandoscheckin.
Navegue pelo hub de Soluções para o passeio voltado ao produto de automatizar check-ins de ponta a ponta.
FAQ
- Qual é o mínimo necessário para criar um check-in?
- Um nome, pelo menos um participante (--user ou --team) e pelo menos uma pergunta. Criação não interativa sem participante falha rapidamente com checkin_requires_participant; criação sem perguntas falha com questions_required. Criar um check-in é permitido para qualquer membro autenticado — configurar, arquivar e editar perguntas são operações de admin/manager.
- Como completo um check-in de forma headless a partir de um script ou agente?
- dailybot checkin complete <followup_uuid> -a 0="answer text" -a 1=8 -a 2=no --yes, onde cada par -a index=response corresponde ao índice 0-based da pergunta e ao tipo de resposta (texto, boolean como yes/no ou true/false, numérico, ou um dos próprios rótulos de uma pergunta multiple_choice).
- Como roteio os resultados de um check-in para um canal do Slack ou Teams?
- --report-channel <channel-uuid>, repetível até 3 canais. Em checkin config, --report-channel SUBSTITUI o conjunto inteiro de canais, então liste todo canal que deseja ativo cada vez que o definir.
- Posso desligar o anonimato depois que um check-in já é anônimo?
- Não — --anonymous em um check-in é irreversível; --no-anonymous em um check-in já anônimo falha com anonymous_irreversible. Isso difere de formulários, onde --anonymous / --no-anonymous podem ser alternados livremente em ambas as direções.
- Como faço para retroceder ou adiantar a data de uma resposta de check-in?
- dailybot checkin complete aceita --response-date YYYY-MM-DD, e edit / reset / history aceitam --date (ou --from/--to). As próprias configurações do check-in controlam isso: previous_responses_are_not_allowed ou future_responses_are_not_allowed se o preenchimento retroativo ou futuro estiver desativado, followup_not_allow_responses_before_trigger_time se for cedo demais.