Facilitador rotativo de reuniões
Com Alice, Bob, Carol e Dana na lista, a primeira reunião (a de número 0) fica com Alice, Bob vem em seguida e Dana foi a anterior; depois de Dana, a rodada recomeça. Quem usa a mesma lista recebe a mesma resposta. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Lista de participantes
- Alice, Bob, Carol, Dana
- Índice da reunião
- 0
- Tamanho da lista
- 4
- Responsável
- Alice
- Índice do responsável
- 0
- Posição no ciclo
- 1
Standups recorrentes, all-hands e revisões de operações funcionam melhor quando a facilitação gira com justiça em vez de recair sempre no mesmo gestor a cada semana. Esta calculadora de facilitador rotativo de reuniões recebe uma lista ordenada de nomes e um índice de ocorrência com base zero, e aplica a aritmética modular clássica de round-robin para que você saiba sempre quem conduz a próxima sessão, quem vem a seguir e quem veio antes no ciclo. As equipes incorporam o mesmo contrato determinístico em bots, calendários e runbooks sem inventar fórmulas ad hoc em planilhas que divergem quando alguém entra ou sai.
Como funciona a titularidade rotativa da reunião
Uma rotação justa de facilitadores não é mais do que uma lista ordenada fixa de pessoas e um contador de quantas vezes a reunião já ocorreu. Quando o contador chega a N, o resto volta a zero e a primeira pessoa facilita de novo; ao chegar a N mais um, a segunda pessoa assume a cadeira, e o padrão continua sem casos especiais para semanas bissextas ou meses do calendário.
Como a fórmula usa apenas o resto da divisão inteira, dois clientes que compartilham a mesma ordem de roster e o mesmo contador de ocorrência sempre concordam no mesmo titular mesmo em fusos horários diferentes ou offline. A capacidade não inventa feriados, férias nem listas de omissão: se alguém está ausente, edite o roster ou avance o índice na sua camada de orquestração. Manter o núcleo puro permite que chatbots, GitHub Actions e plugins de planilha reutilizem um único oráculo em vez de reescrever a lógica modular em três linguagens.
Quando um facilitador rotativo mais ajuda
Gerentes de engenharia agendam demos semanais e querem que o anfitrião gire sem uma planilha privada que só uma pessoa atualiza. Scrum masters automatizam a facilitação do standup para que o mesmo engenheiro sênior não conduza o relógio para sempre. Incident commanders rotacionam a titularidade semanal da cerimônia on-call com um roster alinhado ao documento de plantão.
Equipes de RH e people-ops atribuem anfitriões de all-hands mensais com justiça entre departamentos.
Casos de uso
Rotação do anfitrião do standup semanal
Passe o roster da equipe e o contador de semanas do standup para mostrar quem facilita o de hoje e quem é o próximo, sem planilha compartilhada.
Anfitriões justos de all-hands e demos
Rotacione anfitriões mensais de all-hands ou demos entre departamentos usando o mesmo roster ordenado que o seu manual já publica.
Perguntas frequentes
E se alguém estiver de férias?
Esta calculadora não modela ausências. Remova-o temporariamente do roster ou pule o índice na sua camada de orquestração antes de chamar.
Quem conduz depois da última pessoa da lista?
A rotação recomeça pelo primeiro nome. Com Alice, Bob, Carol e Dana, a quinta reunião volta para Alice, e a mesma ordem se repete sem exceções para meses ou semanas especiais.
Por que a primeira reunião conta como zero?
Porque o contador indica quantas reuniões já aconteceram. A primeira é a de número 0 e fica com Alice; o resultado também mostra a posição na rodada contada a partir de 1, como 1 de 4, para facilitar a leitura.
Também mostra quem vem depois e quem veio antes?
Sim. Junto com o responsável de hoje, você vê o próximo e o anterior. Na primeira reunião são Bob e Dana, o que ajuda quando é preciso pedir as anotações da semana passada.
E se alguém entrar ou sair da equipe?
Atualize a lista na ordem da rotação e continue contando as reuniões como antes. Quem usar a mesma lista e o mesmo número de reunião terá o mesmo responsável, então a agenda e os lembretes nunca se contradizem.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/biz/rotating-meeting-owner \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"roster":["Alice","Bob","Carol","Dana"],"meeting_index":0}'const res = await fetch("https://api.kit.forhosting.com/biz/rotating-meeting-owner", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"roster": [
"Alice",
"Bob",
"Carol",
"Dana"
],
"meeting_index": 0
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/biz/rotating-meeting-owner",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"roster": [
"Alice",
"Bob",
"Carol",
"Dana"
],
"meeting_index": 0
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/biz/rotating-meeting-owner", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"roster":["Alice","Bob","Carol","Dana"],"meeting_index":0}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"roster":["Alice","Bob","Carol","Dana"],"meeting_index":0}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/biz/rotating-meeting-owner", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"roster": [
"Alice",
"Bob",
"Carol",
"Dana"
],
"meeting_index": 0
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "biz.rotating_meeting_owner",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Nomes vazios ou índices negativos falham com invalid_input e não são cobrados.
Como funciona a titularidade rotativa da reunião
Indexe a primeira ocorrência como meeting_index zero, a segunda como um, e assim por diante. Se o roster tem N pessoas, o titular dessa ocorrência fica em owner_index igual a meeting_index módulo N. A posição no ciclo é reportada como owner_index mais um para que as pessoas digam «terceiro de quatro neste ciclo» sem converter índices de base zero manualmente. O próximo titular é o nome em owner_index mais um módulo N; o anterior envolve no outro sentido, útil quando você precisa pedir anotações ao facilitador da semana passada.
Contrato de entrada, campos de resposta e erros de validação
Campos de saída opcionais nunca são preenchidos com null: neste contrato simples todo campo de sucesso está sempre presente. Envie por POST um corpo JSON com dois campos obrigatórios. roster é um array não vazio de uma a cem strings de nomes de facilitador na ordem de rotação; cada entrada é aparada, e strings em branco após o trim são rejeitadas como invalid_input nomeando o índice incorreto. meeting_index é um inteiro não negativo de zero a um bilhão que identifica qual ocorrência da série você está resolvendo—zero é a primeira reunião. Os aliases members, people e facilitators são aceitos para roster, e index, occurrence e week_number para meeting_index, para que automações existentes mapeiem chaves conhecidas sem renomear payloads. Em sucesso o corpo ecoa o roster normalizado e meeting_index, roster_size, owner e owner_index, cycle_position (base um dentro do ciclo), next_owner e next_owner_index, previous_owner e previous_owner_index, além de uma string de fórmula curta afirmando owner_index igual a meeting_index mod roster_size. Exemplo: roster Alice, Bob, Carol, Dana com meeting_index cinco produz owner_index um porque cinco módulo quatro é um, então Bob facilita, Carol é a próxima e Alice a anterior. Roster ausente, vazio, não array, meeting_index não inteiro ou negativo, e rosters grandes demais falham com invalid_input e não consomem saldo.
Onde uma API de facilitador rotativo agrega valor
Bots de product ops publicam mensagens «o facilitador desta semana é …» no Slack ou Teams chamando a API com o índice da série armazenado em uma chave contador. Como a implementação é parse de nível A, cada chamada bem-sucedida custa o preço base publicado US$ 0,002 sem tokens de modelo nem rede de saída; validação falha é gratuita. Mantenha o roster na mesma ordem em todo sistema de registro, incremente meeting_index uma vez por ocorrência (incluindo semanas puladas se ainda quiser que a rotação avance) e obtenha decisões de titularidade reproduzíveis para calendários, runbooks e edge workers sem montar um serviço de agendamento próprio.
Casos de integração
Automação com chatbot e calendário
Faça um bot chamar a API em cada ocorrência com o índice da série e publicar «facilitador: …» no Slack, Teams ou na descrição do calendário.
Perguntas técnicas
Como saber de quem é a vez de facilitar?
Envie roster (nomes ordenados) e meeting_index (0 para a primeira reunião). O titular é roster[meeting_index mod comprimento do roster].
meeting_index é de base zero ou de base um?
De base zero: a primeira ocorrência é 0, a segunda é 1, e assim por diante. cycle_position na resposta é de base um para exibição.
Posso enviar members em vez de roster?
Sim. Os aliases members, people e facilitators mapeiam para roster; index, occurrence e week_number mapeiam para meeting_index.
Quanto custa a calculadora de facilitador rotativo de reuniões?
A ferramenta do navegador é gratuita. Solicitações API usam saldo pré-pago do KIT a US$ 0,002 por chamada bem-sucedida; entrada inválida não é cobrada.