CommunityEscrita e Ediçãogithub.com

kl-autonomous/agent-team-skills

Dá ao proprietário humano um quadro ao vivo, um artefato Claude com seu próprio pequeno banco de dados, para tudo que apenas eles podem decidir ou fazer.

O que é agent-team-skills?

Esta skill cria um 'desk' (painel de decisões) para o proprietário humano de um agente, movendo perguntas e tarefas que exigem ação humana para fora do chat e para um quadro visual interativo. O quadro possui abas como 'Precisa de você', 'Urgente', 'Decidido', 'Depois' e 'Arquivo', permitindo que o proprietário responda, marque etapas e faça perguntas de qualquer lugar, inclusive pelo celular. Quando o proprietário interage, a skill envia um comentário que 'acorda' o agente, que lê a resposta, age de acordo e arquiva o item. É útil para evitar que perguntas se percam no chat, para consolidar aprovações, uploads, logins e outras tarefas exclusivas do proprietário, e para sessões de chefe de equipe ou gerente que precisam de um local centralizado para o que está aguardando o proprietário.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/kl-autonomous/agent-team-skills/tree/HEAD/skills/owner-desk

Installed? Explore more Escrita e Edição skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Painel do proprietário

Perguntas no chat se perdem, e o proprietário tem que responder quando o agente pergunta, não quando tem tempo. O painel as tira do chat e as coloca em um quadro: uma aba Precisa de você com cada item em aberto, uma aba amarela Urgente apenas quando algo não pode esperar, uma aba Decidido para itens respondidos, uma aba Depois para o que pode esperar e um Arquivo para o que está concluído. Em um telefone ou iPad, o proprietário desliza lateralmente para mover entre as abas. O proprietário responde ali; você lê as respostas, age e arquiva.

O que é necessário

  • Artefatos Claude com as capacidades db e comments, em claude.ai ou no aplicativo de desktop Claude. Adicione assets apenas se os itens carregarem arquivos anexados.

  • Ferramentas:

    • Artifact, para publicar o painel e fazer upload de arquivos;
    • ArtifactData, para escrever e ler itens;
    • ArtifactComments, para observar o painel e responder aos comentários que te acordam.

    Carregue-as com ToolSearch quando estiverem adiadas.

  • Uma sessão de loop principal. Apenas uma sessão de loop principal pode manter uma observação; um subagente não pode.

Sem isso, avise e mantenha as perguntas no chat como uma lista numerada. Não finja que existe um painel.

Quem escreve nele

Apenas uma sessão:

  • o chefe de equipe, se houver (veja a skill chief-of-staff);
  • caso contrário, a sessão que trabalha com o proprietário.

Dois escritores numerariam itens duas vezes e arquivariam o trabalho um do outro.

Criar o painel

  1. Preencha o modelo, assets/desk.html. Ele tem três espaços reservados:

    • {{TITLE}}: o nome do painel, duas a quatro palavras, como "Painel do App de Receitas";
    • {{EYEBROW}}: uma pequena linha acima do título, como "App de receitas · do chefe de equipe";
    • {{AGENT}}: quem lê as respostas, como aparece no meio de uma frase: "o chefe de equipe", ou "Claude". Apenas palavras comuns, sem aspas.

    Por exemplo:

    sed -e 's/{{TITLE}}/Painel do App de Receitas/g' -e 's/{{EYEBROW}}/App de receitas · do chefe de equipe/g' -e 's/{{AGENT}}/o chefe de equipe/g' <skill>/assets/desk.html > desk.html
    
  2. Publique-o com a ferramenta Artifact:

    • capabilities: {"db": {}, "user": {}, "comments": {}}, mais "assets": {} se os itens carregarem arquivos;
    • icon: "inbox";
    • uma description de uma linha.

    Publicar também inicia a observação do painel por esta sessão.

  3. Verifique uma vez: ArtifactData list na coleção items. Está vazia, e a página diz "Nada precisa de você."

  4. Dê ao proprietário o link e diga que o painel é privado para ele.

  5. Escreva o link em um arquivo no projeto (a página de status ou as notas do projeto), para que uma nova sessão possa encontrá-lo.

Aberto fora do Claude, em um navegador comum, a página mostra itens de exemplo fictícios com uma nota dizendo isso. Isso é para prévias e capturas de tela; nunca escreve nada.

Ser acordado por respostas

Uma gravação no banco de dados não te acorda; um comentário enviado ao Claude sim. Quando o proprietário responde, marca uma tarefa como concluída ou faz uma pergunta, a página envia um comentário curto no próprio tópico do item, por exemplo "Nº 12 · Abrir o beta nesta sexta? Resposta: Sim". Esse comentário acorda a sessão que está observando o painel.

  • Publicar inicia a observação, mas é apenas uma observação quando ArtifactComments watch (sem url) lista o painel como conectado, com respostas automáticas armadas.
  • Uma nova sessão deve observar novamente, com ArtifactComments watch e o url do painel. As respostas automáticas só armam quando o proprietário deu esse link em sua própria mensagem, então o link vai no prompt de reinicialização que o proprietário cola.
  • A página informa ao proprietário em qual caso ele está: "…é informado no momento em que você responde", ou "Salvo aqui; … lê na sua próxima verificação".
  • Se os comentários não puderem te alcançar (estão desligados, ou nenhuma sessão está observando), recorra a:
    • ler o painel no início de cada turno;
    • pedir ao proprietário para dizer "painel" no chat após responder;
    • oferecer uma verificação agendada, apenas se o proprietário quiser uma.

Um item

Cada item é um documento na coleção items. Seu ID de documento é seu identificador: use q<número> para decisões e t-<palavra> para tarefas. Use palavras comuns em todo o texto, já que o proprietário pode lê-lo em um telefone.

CampoEscrito porO que contém
kindvocê"decision" ou "task"
statusambos"open"; a página define "answered"; você define "archived"
latervocêtrue o coloca na aba Depois
urgentvocêtrue o coloca em uma aba Urgente amarela e no topo da Visão Geral. Apenas para o que não pode esperar: um prazo hoje, ou algo quebrado para usuários
numvocêum número sequencial, o mesmo que você usa no chat; nunca reutilizado
titlevocêa própria pergunta, respondível com as opções, ou a tarefa como uma ação
body, bulletsvocêparágrafos e pontos curtos: por que é importante, o que afeta
recommendationvocêsua resposta primeiro, depois o motivo, em uma ou duas frases
choicesvocêduas a quatro respostas; padrão Sim / Não
steps, stepsDonevocê; páginaas etapas de uma tarefa e as marcadas (índices)
copiesvocê[{label, text}]: texto que o proprietário colará em algum lugar
linksvocê[{label, url, note}]: guias, páginas, arquivos anexados
fromvocêqual sessão perguntou
priorityvocê1 primeiro; ordena os itens abertos
createdvocêquando você o postou (horário ISO)
answerpágina{choice, note, at}
askspágina; você[{q, at, via, a, aAt}]: as perguntas do proprietário sobre o item; você preenche a e aAt
threadpáginao tópico de comentário que a página usa para este item; deixe-o em paz
outcome, archivedvocêo que aconteceu, em uma linha; quando você o arquivou

assets/example-items.json contém sete itens fictícios, como o ArtifactData batch escreve. Use-os para testar um painel, nunca no real do proprietário.

Postar itens

  • Adicione novos itens com ArtifactData. Use set para um novo documento e batch para mais de dois. Nunca republique a página para alterar itens.
  • Em seguida, diga no chat o que você adicionou, com um link para cada item: <url do painel>#<id do documento> abre sua aba e rola até ele.
  • Se você também trabalha a partir de uma lista de chat de perguntas abertas (como o chefe de equipe faz), mantenha ambas iguais: o mesmo número, as mesmas palavras.
  • Escreva cada item para que seja autossuficiente: o que está sendo decidido, o que muda de qualquer forma e o que você recomenda.
  • Uma tarefa lista as etapas exatas, o texto para colar em copies e o guia em links.
  • Para anexar um arquivo: leia o arquivo inteiro primeiro, depois faça upload com Artifact (url do painel, asset: true) e vincule-o como /_blob/<id do asset>.
  • Nunca coloque senhas, chaves ou registros privados em um item. Uma tarefa que precisa de um segredo diz onde digitá-lo, nunca o que é.

Ler, agir, arquivar

Quando um comentário te acorda, ou no início de um turno:

  1. ArtifactData query em items com where: [["status", "==", "answered"]]. Leia o answer de cada item e quaisquer novos asks.
  2. Aja com base na resposta. Com um chefe de equipe, transmita a escolha e a nota do proprietário literalmente para a sessão que perguntou.
    • O comentário e o item normalmente concordam.
    • Se o item não estiver salvo como respondido, mas o comentário contiver uma resposta, o comentário é a palavra mais recente do proprietário. Escreva-o você mesmo no item.
  3. Arquive o item: update com status: "archived", um outcome de uma linha ("O desenvolvedor moveu o beta para sexta"), e archived (o horário). Prenda cada gravação com if_version, para que uma resposta que o proprietário mude enquanto isso não seja sobrescrita.
  4. Responda a cada entrada aberta em asks no mesmo item. Envie o array asks inteiro de volta, com a e aAt preenchidos, preso com if_version.
  5. Responda no tópico de comentário com uma linha ("Entendido: movendo o beta para sexta"), depois resolva o tópico (ArtifactComments reply, depois resolve).

Estacione um item com later: true e traga-o de volta com later: false. Um item decidido pode ficar em Depois até que seja hora de agir sobre ele. Arquive em vez de excluir: o Arquivo é o registro do que foi decidido. Exclua apenas por ordem do proprietário.

Status e Roadmap (opcional)

Mais duas abas mostram ao proprietário onde o projeto está, entre a Visão Geral e os itens. Cada uma aparece assim que você escreve seu documento na coleção board e é atualizada ao vivo. Escreva cada uma com ArtifactData (set na primeira vez, depois update preso com if_version). assets/example-board.json contém um par fictício.

board/status: onde cada sessão está. Atualize-o cada vez que você verificar a equipe; um chefe de equipe o escreve sempre que atualiza sua página de status.

CampoO que contém
updatedquando você verificou pela última vez (horário ISO); a página mostra há quanto tempo
oneLineonde o projeto está, em uma frase
sessions[{name, state, doing, last, restart}], uma linha por sessão. state é uma palavra ou duas ("Trabalhando", "Aguardando", "Parado em um limite"), e a página o colore. restart começa com "Sim" quando é um bom momento para reiniciar essa sessão
doneo que foi concluído desde a última atualização, uma linha cada
next[{who, what}]: os próximos passos, também os do proprietário (who: "you")

A aba Status conta os itens urgentes e abertos do proprietário por conta própria; não os repita em oneLine.

board/roadmap: o plano, etapa por etapa. Atualize-o quando uma etapa ou um de seus itens se mover.

CampoO que contém
updatedquando você o alterou pela última vez
headlineonde o projeto está em seu plano, em uma frase
stages[{id, name, state, when, summary, items}], em ordem. state é done, now, next ou later; items são [{text, state}] com done, now ou next. A etapa marcada como now abre no topo

Alterar a página

  • Republique a página apenas para alterar a própria página. Passe as mesmas capacidades ou omita capabilities para mantê-las.
  • Se outra sessão publicou o painel, leia-o primeiro (Artifact read) e construa sobre o que retornar.
  • Os itens vivem no banco de dados, então sobrevivem a uma republicação.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

Habilidades Relacionadas