Communitygithub.com

PaeoniaCommon/SkillsOdea

Planeje um novo processo toy_process a partir de um objetivo em linguagem natural, dividindo-o em etapas ordenadas e subprocessos aninhados. Use sempre que o usuário solicitar um novo processo, fluxo de trabalho ou pipeline, antes de escrever qualquer código.

O que é SkillsOdea?

Esta skill orienta o projeto de um `toy_process` (processo toy) a partir de uma descrição em linguagem simples. Ela ajuda a decompor um objetivo amplo em uma sequência de etapas lógicas, decidindo quando cada etapa deve ser um método atômico ou um subprocesso reutilizável. A skill promove boas práticas de design: cada etapa escreve em um dicionário de contexto compartilhado, subprocessos podem ser aninhados (recomenda-se no máximo dois níveis) e os parâmetros são passados explicitamente do processo pai para o filho. O resultado é um plano estruturado que pode ser implementado posteriormente com a skill `create-process`. É útil para desenvolvedores que trabalham com agentes de IA (como Claude Code, Cursor ou Codex) e precisam projetar pipelines modulares e manuteníveis antes de codificar.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/PaeoniaCommon/SkillsOdea/tree/HEAD/.opencode/skills/design-process

Perguntar na sua IA favorita

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

Documentação

Projetar um Processo

Use esta skill para transformar uma solicitação como "crie um processo que conte as palavras em algum texto" em um plano de etapas. Em seguida, construa-o com a skill create-process.

O pacote reside em process_package/. A classe pai é process_package/toy_process/process.py.

1. Liste as etapas

Escreva o objetivo como uma lista ordenada de pequenas ações, cada uma como uma frase verbal:

WordReport
  1. limpar o texto
  2. contar as palavras
  3. construir o relatório

Cada etapa deve fazer uma única coisa e colocar seu resultado no dicionário context compartilhado.

2. Decida o que é cada etapa

Para cada etapa, escolha:

Use uma etapa de método quando...Use uma etapa de subprocesso quando...
for uma única ação pequenafor várias ações que pertencem juntas
for usada apenas aquipuder ser reutilizada em outros processos
não precisar de configurações própriastiver seus próprios parâmetros

Subprocessos podem conter subprocessos. Mantenha o aninhamento raso: dois níveis é suficiente para a maioria dos processos toy.

3. Escreva o plano

Para cada processo (pai e cada subprocesso), registre:

  • Nome da classe: um substantivo ou frase verbal em CamelCase, ex.: CleanText.
  • Parâmetros: nome → valor padrão. Eles vão em set_parameters.
  • Etapas: em ordem. Métodos são snake_case; subprocessos usam o nome da classe.
  • Chaves de contexto: o que cada etapa lê e escreve.

Exemplo de plano:

CleanText            params: lowercase=True
  - strip_punctuation  lê text   escreve text
  - normalise_case     lê text   escreve text

WordReport           params: text="", lowercase=True, top_n=3
  - load_text          lê -       escreve text
  - CleanText(lowercase=...)   (subprocesso)
  - count_words        lê text   escreve counts
  - build_report       lê counts escreve report

4. Verifique o plano

  • Toda chave de contexto que uma etapa lê é escrita por uma etapa anterior.
  • Todo parâmetro que uma etapa usa está nos parâmetros desse processo.
  • Um subprocesso recebe seus parâmetros do pai como argumentos nomeados, ex.: CleanText(lowercase=self.params["lowercase"]).

Mostre o plano ao usuário se a solicitação foi vaga e, em seguida, siga a skill create-process.

Individual skills in this repo

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

Habilidades Relacionadas