Compor Instrução de Escrita
Componha uma instrução de escrita combinando entradas da taxonomia dos eixos Voz e Tom, Estilo e Formato.
Uso
/writing-style-catalog:writing-instruction-builder [voice=<id>] [tone=<id>] [style=<id>] [format=<id>] [topic=<texto>] [audience=<texto>]
Todos os parâmetros são opcionais. Se omitidos, a habilidade escolhe valores padrão sensatos.
Parâmetros
voice- ID da entrada de Voz (ex.:pragmatic-architect,pastoral,columnist)tone- ID da entrada de Tom (ex.:candid,warm,matter-of-fact)style- ID da entrada de Estilo (ex.:problem-solution,devotional-reflection)format- ID da entrada de Formato (ex.:adr,blog-post-long-form,slack-message)topic- O tópico ou assunto a ser escrito (opcional, para uma instrução composta mais concreta)audience- O público-alvo pretendido (opcional, padrão: geral)
O que a Habilidade Faz
- Valida cada ID de entrada fornecido contra o catálogo de taxonomia
- Lê o campo
llm_instruction_phrasingde cada entrada correspondente - Monta uma string de instrução composta em uma ordem de precedência fixa: voz, depois tom, depois estilo, depois formato
- Verifica as entradas selecionadas entre si nos campos de relacionamento e avisa sobre qualquer conflito (sem bloquear)
- Retorna a instrução composta pronta para colar em qualquer prompt de LLM
Implementação
A composição é implementada pelo script auxiliar scripts/build-instruction.py nesta pasta da habilidade.
Ele lê o catálogo do diretório taxonomy/ na raiz do plugin, então esse diretório acompanha o plugin. O slash command aceita argumentos chave=valor; o script em si aceita argumentos --flag valor. Execute-o diretamente para compor sem o slash command, por exemplo:
python scripts/build-instruction.py --voice pragmatic-architect --tone candid --format adr
Composição ciente de conflitos
O construtor lê os campos avoid_with (evitar com) e pairs_well_with (combina bem com) de cada entrada selecionada e relata sobre eles, de modo que uma composição é uma garantia verificada, não uma concatenação cega. As regras (consulte ADR 0016):
- Conflitos são simétricos. Um par é sinalizado se qualquer entrada listar a outra em
avoid_with, então o aviso nunca depende de qual autor registrou o link. - Avisar, nunca bloquear. Um par conflitante ainda compõe (você pode querer uma tensão deliberada); o construtor emite um aviso e aplica a precedência voz -> tom -> estilo -> formato para que o eixo de maior precedência lidere.
- Afirmações. Uma correspondência de
pairs_well_withé exibida como uma nota de confirmação.
A instrução composta é impressa em stdout; avisos de conflito e notas de afirmação são impressos em stderr, para que o stdout permaneça um prompt limpo e canalizável. Por exemplo, combinar a voz pragmatic-architect com o tom reverent (que ela lista em avoid_with) ainda retorna a instrução e imprime:
warning: conflict - pragmatic-architect (voice) and reverent (tone) are marked avoid_with.
Composing anyway with voice -> tone -> style -> format precedence; expect tension.
Exemplos
Compõe um ADR (Registro de Decisão de Arquitetura) na voz pragmatic-architect com tom candid:
/writing-style-catalog:writing-instruction-builder voice=pragmatic-architect tone=candid format=adr
Compõe um devocional pastoral:
/writing-style-catalog:writing-instruction-builder voice=pastoral tone=reverent style=devotional-reflection format=devotional-entry topic="A disciplina do descanso"
Entradas Disponíveis
Execute sem argumentos para ver todas as entradas disponíveis agrupadas por eixo.