ganbatte-os 0.2.14 → 0.2.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.gos/libraries/content/ai-writing-patterns.md +259 -0
- package/.gos/manifests/g-os-runtime-manifest.json +3 -1
- package/.gos/manifests/gos-install-manifest.json +1 -0
- package/.gos/skills/humanizer/SKILL.md +187 -0
- package/.gos/skills/registry.json +3 -1
- package/.gos/skills/weekly-update/SKILL.md +262 -0
- package/package.json +1 -1
|
@@ -0,0 +1,259 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: ai-writing-patterns
|
|
3
|
+
name: "AI Writing Patterns — Taxonomia de Padroes de Escrita IA"
|
|
4
|
+
whenToUse: |
|
|
5
|
+
Referencia para detectar e eliminar padroes de escrita gerada por IA em textos
|
|
6
|
+
destinados a entrega externa. Usar quando revisar propostas, emails, copy, artigos
|
|
7
|
+
ou qualquer artefato textual que precisa soar humano e autentico.
|
|
8
|
+
NOT for: codigo-fonte, logs, documentacao tecnica interna, commit messages.
|
|
9
|
+
version: "1.0.0"
|
|
10
|
+
source: "Wikipedia:Signs of AI writing (WikiProject AI Cleanup)"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# AI Writing Patterns — Taxonomia de Padroes de Escrita IA
|
|
14
|
+
|
|
15
|
+
> Baseado no guia da Wikipedia "Signs of AI writing", mantido pelo WikiProject AI Cleanup.
|
|
16
|
+
> Padroes validados em milhares de instancias reais de texto gerado por IA.
|
|
17
|
+
|
|
18
|
+
## Principio fundamental
|
|
19
|
+
|
|
20
|
+
> "LLMs usam algoritmos estatisticos para prever o que vem a seguir. O resultado tende ao mais estatisticamente provavel, aplicavel ao maior numero de casos."
|
|
21
|
+
|
|
22
|
+
Isso gera padroes previsiveis e detectaveis. Este catalogo lista 26 padroes organizados em 5 categorias.
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## Categoria 1: Padroes de conteudo
|
|
27
|
+
|
|
28
|
+
### P01 — Inflacao de significancia
|
|
29
|
+
|
|
30
|
+
**Sinais**: "marca um momento decisivo na evolucao de...", "e um testemunho duradouro de...", "papel vital/significativo/crucial/fundamental", "reflete tendencias mais amplas", "moldando o futuro de..."
|
|
31
|
+
|
|
32
|
+
**Antes**: "O Instituto de Estatistica foi oficialmente estabelecido em 1989, marcando um momento decisivo na evolucao das estatisticas regionais."
|
|
33
|
+
**Depois**: "O Instituto de Estatistica foi criado em 1989 para coletar e publicar estatisticas regionais."
|
|
34
|
+
|
|
35
|
+
### P02 — Enfase excessiva em notabilidade
|
|
36
|
+
|
|
37
|
+
**Sinais**: "coberto por midia independente", "destaque em NYT, BBC, FT", "presenca ativa em redes sociais"
|
|
38
|
+
|
|
39
|
+
**Antes**: "Suas ideias foram citadas no NYT, BBC, Financial Times e The Hindu."
|
|
40
|
+
**Depois**: "Em entrevista ao NYT em 2024, ela argumentou que a regulacao de IA deveria focar em resultados."
|
|
41
|
+
|
|
42
|
+
### P03 — Analises superficiais com -ndo/-ando
|
|
43
|
+
|
|
44
|
+
**Sinais**: "destacando...", "garantindo...", "refletindo...", "contribuindo para...", "demonstrando..."
|
|
45
|
+
|
|
46
|
+
**Antes**: "A paleta de cores azul, verde e ouro ressoa com a beleza natural da regiao, simbolizando os campos, o oceano e as paisagens diversas, refletindo a conexao da comunidade com a terra."
|
|
47
|
+
**Depois**: "O templo usa cores azul, verde e ouro. O arquiteto disse que foram escolhidas em referencia aos campos e ao litoral local."
|
|
48
|
+
|
|
49
|
+
### P04 — Linguagem promocional
|
|
50
|
+
|
|
51
|
+
**Sinais**: "vibrante", "rico(a)", "profundo(a)", "aninhado(a) no coracao de", "inovador", "renomado", "deslumbrante", "imperdivel"
|
|
52
|
+
|
|
53
|
+
**Antes**: "Aninhada na deslumbrante regiao, a cidade se destaca como um vibrante polo de rica heranca cultural."
|
|
54
|
+
**Depois**: "A cidade fica na regiao de Gonder, conhecida pelo mercado semanal e pela igreja do seculo XVIII."
|
|
55
|
+
|
|
56
|
+
### P05 — Atribuicoes vagas
|
|
57
|
+
|
|
58
|
+
**Sinais**: "relatorios do setor", "observadores citam", "especialistas argumentam", "criticos apontam", "segundo diversas fontes"
|
|
59
|
+
|
|
60
|
+
**Antes**: "Especialistas acreditam que desempenha um papel crucial no ecossistema regional."
|
|
61
|
+
**Depois**: "O rio abriga varias especies endemicas de peixes, segundo levantamento de 2019 da Academia de Ciencias."
|
|
62
|
+
|
|
63
|
+
### P06 — Secoes formulaicas "Desafios e Perspectivas"
|
|
64
|
+
|
|
65
|
+
**Sinais**: "Apesar dos desafios... continua a prosperar", "Desafios e Legado", "Perspectivas Futuras"
|
|
66
|
+
|
|
67
|
+
**Antes**: "Apesar dos desafios tipicos de areas urbanas, incluindo congestionamento e escassez de agua, a cidade continua a prosperar."
|
|
68
|
+
**Depois**: "O congestionamento aumentou apos 2015, quando tres novos parques de TI foram abertos. A prefeitura iniciou um projeto de drenagem em 2022."
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## Categoria 2: Padroes de linguagem
|
|
73
|
+
|
|
74
|
+
### P07 — Vocabulario tipico de IA
|
|
75
|
+
|
|
76
|
+
**Palavras de alta frequencia**: "Adicionalmente", "alinhar com", "crucial", "aprofundar", "enfatizando", "duradouro", "aprimorar", "fomentar", "destacar" (verbo), "interacao", "intrincado", "paisagem" (abstrato), "fundamental", "demonstrar", "tapeçaria" (abstrato), "testemunho", "sublimar", "valioso", "vibrante"
|
|
77
|
+
|
|
78
|
+
**Antes**: "Adicionalmente, uma caracteristica distintiva e a incorporacao de... um testemunho duradouro... na paisagem culinaria local, demonstrando como..."
|
|
79
|
+
**Depois**: "A culinaria tambem inclui carne de camelo, considerada uma iguaria. Pratos de massa, introduzidos durante a colonizacao italiana, continuam comuns."
|
|
80
|
+
|
|
81
|
+
**Deteccao**: 2+ termos inflados no mesmo paragrafo, nao presenca individual.
|
|
82
|
+
|
|
83
|
+
### P08 — Evitar "e"/"sao" (esquiva de copula)
|
|
84
|
+
|
|
85
|
+
**Sinais**: "serve como", "atua como", "representa um", "conta com", "oferece"
|
|
86
|
+
|
|
87
|
+
**Antes**: "A galeria serve como espaco de exposicao. O local conta com quatro salas separadas e oferece mais de 300 m²."
|
|
88
|
+
**Depois**: "A galeria e o espaco de exposicao. Tem quatro salas com 300 m² no total."
|
|
89
|
+
|
|
90
|
+
### P09 — Paralelismos negativos
|
|
91
|
+
|
|
92
|
+
**Sinais**: "Nao e apenas X, e Y", "Nao se trata apenas de..., trata-se de..."
|
|
93
|
+
|
|
94
|
+
**Antes**: "Nao se trata apenas do ritmo sob os vocais; faz parte da agressao e da atmosfera. Nao e meramente uma cancao, e uma declaracao."
|
|
95
|
+
**Depois**: "A batida pesada acentua o tom agressivo."
|
|
96
|
+
|
|
97
|
+
### P10 — Regra de tres
|
|
98
|
+
|
|
99
|
+
**Problema**: IA forca ideias em grupos de tres para parecer abrangente.
|
|
100
|
+
|
|
101
|
+
**Antes**: "O evento oferece palestras, paineis e oportunidades de networking. Os participantes podem esperar inovacao, inspiracao e insights."
|
|
102
|
+
**Depois**: "O evento inclui palestras e paineis. Ha tambem tempo para networking informal entre sessoes."
|
|
103
|
+
|
|
104
|
+
### P11 — Ciclagem de sinonimos
|
|
105
|
+
|
|
106
|
+
**Problema**: Penalidade de repeticao do modelo gera substituicao excessiva.
|
|
107
|
+
|
|
108
|
+
**Antes**: "O protagonista enfrenta muitos desafios. O personagem principal deve superar obstaculos. A figura central eventualmente triunfa. O heroi retorna para casa."
|
|
109
|
+
**Depois**: "O protagonista enfrenta muitos desafios, mas eventualmente triunfa e retorna para casa."
|
|
110
|
+
|
|
111
|
+
### P12 — Faixas falsas
|
|
112
|
+
|
|
113
|
+
**Sinais**: "de X ate Y" onde X e Y nao estao em uma escala significativa.
|
|
114
|
+
|
|
115
|
+
**Antes**: "Nossa jornada pelo universo nos levou do Big Bang a materia escura, do nascimento das estrelas a danca enigmatica das galaxias."
|
|
116
|
+
**Depois**: "O livro cobre o Big Bang, formacao de estrelas e teorias atuais sobre materia escura."
|
|
117
|
+
|
|
118
|
+
---
|
|
119
|
+
|
|
120
|
+
## Categoria 3: Padroes de estilo
|
|
121
|
+
|
|
122
|
+
### P13 — Uso excessivo de travessao
|
|
123
|
+
|
|
124
|
+
**Antes**: "O termo e promovido por instituicoes — nao pelas pessoas. Voce nao diz 'Paises Baixos, Europa' como endereco — mas essa rotulacao continua — mesmo em documentos oficiais."
|
|
125
|
+
**Depois**: "O termo e promovido por instituicoes, nao pelas pessoas. Voce nao diz 'Paises Baixos, Europa' como endereco, mas essa rotulacao continua em documentos oficiais."
|
|
126
|
+
|
|
127
|
+
### P14 — Uso excessivo de negrito
|
|
128
|
+
|
|
129
|
+
**Antes**: "Combina **OKRs**, **KPIs** e ferramentas visuais como o **Business Model Canvas** e o **Balanced Scorecard**."
|
|
130
|
+
**Depois**: "Combina OKRs, KPIs e ferramentas visuais como o Business Model Canvas e o Balanced Scorecard."
|
|
131
|
+
|
|
132
|
+
### P15 — Listas verticais com cabecalho inline
|
|
133
|
+
|
|
134
|
+
**Antes**: "- **Experiencia do Usuario:** A experiencia foi significativamente melhorada.\n- **Performance:** A performance foi aprimorada com algoritmos otimizados."
|
|
135
|
+
**Depois**: "A atualizacao melhora a interface, acelera o carregamento com algoritmos otimizados e adiciona criptografia de ponta a ponta."
|
|
136
|
+
|
|
137
|
+
### P16 — Title Case em titulos
|
|
138
|
+
|
|
139
|
+
**Antes**: "## Negociacoes Estrategicas E Parcerias Globais"
|
|
140
|
+
**Depois**: "## Negociacoes estrategicas e parcerias globais"
|
|
141
|
+
|
|
142
|
+
### P17 — Emojis decorativos
|
|
143
|
+
|
|
144
|
+
**Antes**: "🚀 **Fase de Lancamento:** O produto lanca no Q3\n💡 **Insight Chave:** Usuarios preferem simplicidade"
|
|
145
|
+
**Depois**: "O produto lanca no Q3. A pesquisa com usuarios mostrou preferencia por simplicidade."
|
|
146
|
+
|
|
147
|
+
**Variante P17b — Emoji-bullet**: 3+ linhas consecutivas com emoji estrutural no inicio (bullet com emoji). Diferente de emoji isolado decorativo, o emoji-bullet cria uma lista visual onde o emoji substitui o marcador tradicional. O padrao e detectavel quando o emoji funciona como organizador de topicos, nao como expressao emocional.
|
|
148
|
+
|
|
149
|
+
**Antes (emoji-bullet)**:
|
|
150
|
+
"🎯 Definir metas do trimestre\n📊 Analisar metricas anteriores\n🚀 Lancar campanha\n💬 Coletar feedback\n🔄 Iterar no produto"
|
|
151
|
+
|
|
152
|
+
**Depois**: "Para o trimestre: definir metas, analisar metricas anteriores, lancar a campanha, coletar feedback e iterar no produto."
|
|
153
|
+
|
|
154
|
+
**Nota**: Emoji-bullets sao particularmente comuns em posts LinkedIn e apresentacoes geradas por IA. A presenca de 3+ linhas consecutivas iniciando com emoji e forte indicador de geracao automatica.
|
|
155
|
+
|
|
156
|
+
### P18 — Aspas tipograficas
|
|
157
|
+
|
|
158
|
+
**Problema**: ChatGPT usa aspas curvas (\u201c...\u201d) em vez de aspas retas ("...").
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
162
|
+
## Categoria 4: Padroes de comunicacao
|
|
163
|
+
|
|
164
|
+
### P19 — Artefatos de chatbot
|
|
165
|
+
|
|
166
|
+
**Sinais**: "Espero que isso ajude!", "Claro!", "Certamente!", "Me avise se quiser que eu expanda alguma secao!"
|
|
167
|
+
|
|
168
|
+
**Regra**: Remover completamente. Texto e conteudo, nao conversa.
|
|
169
|
+
|
|
170
|
+
### P20 — Disclaimers de corte de conhecimento
|
|
171
|
+
|
|
172
|
+
**Sinais**: "Ate onde sei", "Com base nas informacoes disponiveis...", "Embora detalhes especificos sejam limitados..."
|
|
173
|
+
|
|
174
|
+
**Regra**: Encontrar fontes reais ou remover.
|
|
175
|
+
|
|
176
|
+
### P21 — Tom bajulador
|
|
177
|
+
|
|
178
|
+
**Sinais**: "Otima pergunta!", "Voce tem toda razao!", "Esse e um excelente ponto!"
|
|
179
|
+
|
|
180
|
+
**Regra**: Responder diretamente sem elogios gratuitos.
|
|
181
|
+
|
|
182
|
+
---
|
|
183
|
+
|
|
184
|
+
## Categoria 5: Filler e hedging
|
|
185
|
+
|
|
186
|
+
### P22 — Frases de enchimento
|
|
187
|
+
|
|
188
|
+
| Antes | Depois |
|
|
189
|
+
|-------|--------|
|
|
190
|
+
| "Com o objetivo de alcancar" | "Para alcancar" |
|
|
191
|
+
| "Devido ao fato de que" | "Porque" |
|
|
192
|
+
| "Neste momento" | "Agora" |
|
|
193
|
+
| "No caso de voce precisar" | "Se precisar" |
|
|
194
|
+
| "O sistema possui a capacidade de" | "O sistema pode" |
|
|
195
|
+
| "E importante notar que os dados mostram" | "Os dados mostram" |
|
|
196
|
+
|
|
197
|
+
### P23 — Hedging excessivo
|
|
198
|
+
|
|
199
|
+
**Antes**: "Poderia potencialmente ser argumentado que a politica talvez tenha algum efeito nos resultados."
|
|
200
|
+
**Depois**: "A politica pode afetar os resultados."
|
|
201
|
+
|
|
202
|
+
### P24 — Conclusoes genericas positivas
|
|
203
|
+
|
|
204
|
+
**Antes**: "O futuro parece brilhante. Tempos emocionantes estao por vir enquanto continuamos essa jornada rumo a excelencia."
|
|
205
|
+
**Depois**: "A empresa planeja abrir mais duas unidades no proximo ano."
|
|
206
|
+
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
## Soul injection — Alem da limpeza
|
|
210
|
+
|
|
211
|
+
Evitar padroes de IA e apenas metade do trabalho. Escrita limpa mas generica e tao detectavel quanto slop.
|
|
212
|
+
|
|
213
|
+
### Sinais de escrita sem alma (mesmo "limpa")
|
|
214
|
+
- Todas as frases com mesmo comprimento e estrutura
|
|
215
|
+
- Nenhuma opiniao, so reportagem neutra
|
|
216
|
+
- Sem reconhecimento de incerteza ou sentimentos mistos
|
|
217
|
+
- Sem perspectiva em primeira pessoa quando apropriado
|
|
218
|
+
- Sem humor, sem personalidade
|
|
219
|
+
- Leitura de Wikipedia ou press release
|
|
220
|
+
|
|
221
|
+
### Como adicionar voz
|
|
222
|
+
- **Ter opiniao**: "Sinceramente nao sei o que pensar sobre isso" e mais humano que listar pros e contras
|
|
223
|
+
- **Variar ritmo**: Frases curtas. Depois frases mais longas que levam seu tempo para chegar aonde querem.
|
|
224
|
+
- **Reconhecer complexidade**: "Impressionante mas um pouco inquietante" bate "Impressionante."
|
|
225
|
+
- **Usar "eu" quando cabe**: Primeira pessoa nao e falta de profissionalismo — e honestidade.
|
|
226
|
+
- **Permitir imperfeicao**: Estrutura perfeita parece algoritmica. Tangentes e pensamentos parciais sao humanos.
|
|
227
|
+
- **Ser especifico sobre sentimentos**: Nao "preocupante" mas "tem algo inquietante em agentes rodando as 3h da manha sem ninguem monitorando."
|
|
228
|
+
|
|
229
|
+
---
|
|
230
|
+
|
|
231
|
+
## Two-pass audit
|
|
232
|
+
|
|
233
|
+
Processo de revisao em duas passadas para maximizar autenticidade:
|
|
234
|
+
|
|
235
|
+
1. **Primeira passada**: Reescrever aplicando todos os padroes acima
|
|
236
|
+
2. **Auto-critica**: Perguntar "O que faz esse texto parecer obviamente gerado por IA?" — listar os sinais restantes
|
|
237
|
+
3. **Segunda passada**: Revisar eliminando sinais remanescentes e injetando soul
|
|
238
|
+
|
|
239
|
+
---
|
|
240
|
+
|
|
241
|
+
### P25 — Fragmentacao dramatica
|
|
242
|
+
|
|
243
|
+
**Sinais**: 3+ frases consecutivas com menos de 8 palavras. Ritmo staccato artificial que imita profundidade sem conteudo.
|
|
244
|
+
|
|
245
|
+
**Antes**: "Isso importa. Isso muda tudo. Isso define quem somos. Isso e o futuro. E o futuro e agora."
|
|
246
|
+
|
|
247
|
+
**Depois**: "Essa mudanca afeta como trabalhamos porque altera o fluxo de aprovacao de projetos, que antes passava por tres niveis e agora passa por um."
|
|
248
|
+
|
|
249
|
+
**Nota**: Frases curtas isoladas sao naturais. O padrao e 3+ consecutivas sem variacao, criando falsa dramaticidade.
|
|
250
|
+
|
|
251
|
+
### P26 — Falso insight
|
|
252
|
+
|
|
253
|
+
**Sinais**: "Nao e sobre X. E sobre Y." / "A verdadeira questao nao e X, mas Y." / "No fundo, o que importa e..." — reformulacao que soa profunda mas apenas reafirma o obvio.
|
|
254
|
+
|
|
255
|
+
**Antes**: "Nao e sobre tecnologia. E sobre pessoas. No fundo, a verdadeira questao nao e como usamos IA, mas como a IA nos transforma."
|
|
256
|
+
|
|
257
|
+
**Depois**: "A adocao de IA nas equipes de marketing reduziu o tempo de criacao de campanhas de 3 semanas para 4 dias, segundo dados internos de 2025."
|
|
258
|
+
|
|
259
|
+
**Nota**: Insights reais citam dados, fontes ou mecanismos. Falsos insights reafirmam truismos com estrutura de revelacao.
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: humanizer
|
|
3
|
+
description: Remove padroes de escrita gerada por IA para tornar texto mais natural e autentico. Use para revisar propostas, emails, copy e qualquer texto de entrega externa. Detecta 26 padroes incluindo inflacao de significancia, linguagem promocional, vocabulario AI, regra de tres, hedging excessivo, fragmentacao dramatica e falso insight e artefatos de chatbot. Aplica two-pass audit com soul injection.
|
|
4
|
+
argument-hint: "[cole o texto para humanizar]"
|
|
5
|
+
use-when:
|
|
6
|
+
- revisar texto antes de entrega externa
|
|
7
|
+
- texto soa generico ou "feito por IA"
|
|
8
|
+
- humanizar output de proposta, email ou copy
|
|
9
|
+
- revisar autenticidade de texto
|
|
10
|
+
- limpar artefatos de chatbot
|
|
11
|
+
do-not-use-for:
|
|
12
|
+
- revisao ortografica/gramatical (use revisar-ortografia-codigo)
|
|
13
|
+
- revisao de codigo-fonte
|
|
14
|
+
- documentacao tecnica interna
|
|
15
|
+
- commit messages ou logs
|
|
16
|
+
metadata:
|
|
17
|
+
category: content-quality
|
|
18
|
+
version: "2.2.0"
|
|
19
|
+
source: "Wikipedia:Signs of AI writing (WikiProject AI Cleanup)"
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
# Skill: Humanizer — Remover padroes de escrita IA
|
|
23
|
+
|
|
24
|
+
> "LLMs usam algoritmos estatisticos para prever o que vem a seguir. O resultado tende ao mais estatisticamente provavel, aplicavel ao maior numero de casos." — Isso gera padroes previsiveis e detectaveis.
|
|
25
|
+
|
|
26
|
+
## When to use this skill
|
|
27
|
+
- Texto de entrega externa que precisa soar humano e autentico.
|
|
28
|
+
- Output que parece generico, inflado ou "montado por algoritmo".
|
|
29
|
+
- Propostas, emails de campanha, copy para redes sociais, landing pages.
|
|
30
|
+
|
|
31
|
+
## Do not use
|
|
32
|
+
- Revisao ortografica/gramatical (use `/revisar-ortografia-codigo`).
|
|
33
|
+
- Codigo-fonte, logs, documentacao interna.
|
|
34
|
+
|
|
35
|
+
## Instructions
|
|
36
|
+
|
|
37
|
+
### Passo 1 — Identificar padroes
|
|
38
|
+
|
|
39
|
+
Ler o texto de entrada e identificar todos os padroes de escrita IA presentes. Referenciar o catalogo completo em `libraries/content/ai-writing-patterns.md`.
|
|
40
|
+
|
|
41
|
+
Categorias a verificar:
|
|
42
|
+
1. **Conteudo**: inflacao de significancia, enfase de notabilidade, analises superficiais com -ndo, linguagem promocional, atribuicoes vagas, secoes formulaicas
|
|
43
|
+
2. **Linguagem**: vocabulario AI, esquiva de copula, paralelismos negativos, regra de tres, ciclagem de sinonimos, faixas falsas
|
|
44
|
+
3. **Estilo**: travessao excessivo, negrito excessivo, listas com cabecalho inline, Title Case, emojis, aspas tipograficas
|
|
45
|
+
4. **Comunicacao**: artefatos de chatbot, disclaimers, tom bajulador
|
|
46
|
+
5. **Filler**: frases de enchimento, hedging excessivo, fragmentacao dramatica, falso insight, conclusoes genericas
|
|
47
|
+
|
|
48
|
+
### Passo 2 — Primeira reescrita
|
|
49
|
+
|
|
50
|
+
Reescrever o texto eliminando todos os padroes identificados:
|
|
51
|
+
- Substituir inflacao por fatos concretos
|
|
52
|
+
- Usar "e"/"sao"/"tem" em vez de construcoes elaboradas
|
|
53
|
+
- Cortar frases de enchimento e hedging
|
|
54
|
+
- Remover artefatos de chatbot completamente
|
|
55
|
+
- Variar estrutura e comprimento de frases
|
|
56
|
+
- Preferir especificidade a generalidade
|
|
57
|
+
|
|
58
|
+
### Passo 3 — Auto-critica (two-pass audit)
|
|
59
|
+
|
|
60
|
+
Perguntar: **"O que faz este texto parecer obviamente gerado por IA?"**
|
|
61
|
+
|
|
62
|
+
Listar em bullets curtos os sinais restantes:
|
|
63
|
+
- Ritmo uniforme demais?
|
|
64
|
+
- Neutralidade excessiva?
|
|
65
|
+
- Estrutura "montada"?
|
|
66
|
+
- Falta de voz/opiniao?
|
|
67
|
+
|
|
68
|
+
Entao: **"Agora faca nao parecer obviamente gerado por IA."** — e revisar.
|
|
69
|
+
|
|
70
|
+
### Passo 4 — Soul injection + Segunda reescrita
|
|
71
|
+
|
|
72
|
+
Evitar escrita "limpa mas sem alma" e tao importante quanto remover padroes. Escrita esteril e sem voz e tao obvia quanto slop.
|
|
73
|
+
|
|
74
|
+
**Sinais de escrita sem alma (mesmo tecnicamente "limpa"):**
|
|
75
|
+
- Todas as frases com mesmo comprimento e estrutura
|
|
76
|
+
- Sem opiniao, apenas relato neutro
|
|
77
|
+
- Sem reconhecer incerteza ou sentimentos mistos
|
|
78
|
+
- Sem primeira pessoa quando seria natural
|
|
79
|
+
- Sem humor, sem personalidade, sem posicionamento
|
|
80
|
+
- Le como artigo Wikipedia ou press release
|
|
81
|
+
|
|
82
|
+
**Como adicionar voz:**
|
|
83
|
+
- **Ter opiniao.** Nao apenas relatar fatos — reagir a eles. "Sinceramente nao sei como me sinto sobre isso" e mais humano que listar pros e contras neutralmente.
|
|
84
|
+
- **Variar ritmo.** Frases curtas. Depois frases mais longas que tomam seu tempo ate chegar ao ponto. Misturar.
|
|
85
|
+
- **Reconhecer complexidade.** Humanos tem sentimentos mistos. "Isso e impressionante mas tambem meio perturbador" e melhor que "Isso e impressionante."
|
|
86
|
+
- **Usar "eu" quando cabe.** Primeira pessoa nao e falta de profissionalismo — e honestidade. "Fico pensando em..." ou "O que me pega e..." sinaliza uma pessoa real pensando.
|
|
87
|
+
- **Permitir imperfeicao.** Estrutura perfeita parece algoritmica. Tangentes, parenteses e pensamentos parciais sao humanos.
|
|
88
|
+
- **Ser especifico sobre sentimentos.** Nao "preocupante" mas o que exatamente incomoda.
|
|
89
|
+
|
|
90
|
+
Revisar o texto eliminando sinais remanescentes e injetando autenticidade.
|
|
91
|
+
|
|
92
|
+
### Passo 5 — Entregar resultado
|
|
93
|
+
|
|
94
|
+
Apresentar:
|
|
95
|
+
1. **Rascunho humanizado** (resultado do Passo 2)
|
|
96
|
+
2. **Auto-critica** (bullets do Passo 3)
|
|
97
|
+
3. **Versao final** (resultado do Passo 4)
|
|
98
|
+
4. **Resumo das mudancas** (o que foi corrigido e por que)
|
|
99
|
+
|
|
100
|
+
## Task
|
|
101
|
+
|
|
102
|
+
$ARGUMENTS
|
|
103
|
+
|
|
104
|
+
## Regras
|
|
105
|
+
|
|
106
|
+
- Preservar significado original — humanizar nao e reescrever do zero
|
|
107
|
+
- Manter tom adequado ao contexto (formal/casual/tecnico)
|
|
108
|
+
- NAO inventar dados ou citacoes — se nao ha fonte, cortar
|
|
109
|
+
- NAO converter tudo em primeira pessoa — avaliar o que cabe
|
|
110
|
+
- Respeitar `rules/output-authenticity.md` como criterio de aceitacao
|
|
111
|
+
- Referenciar `libraries/content/ai-writing-patterns.md` para catalogo de padroes
|
|
112
|
+
|
|
113
|
+
## Calibracao por Formato e Setor
|
|
114
|
+
|
|
115
|
+
A intensidade da humanizacao deve ser calibrada conforme o contexto:
|
|
116
|
+
|
|
117
|
+
| Formato | Intensidade | Foco |
|
|
118
|
+
|---------|-------------|------|
|
|
119
|
+
| Email comercial | Alta | Remover todos os padroes, injetar voz pessoal |
|
|
120
|
+
| Proposta tecnica | Media | Remover inflacao e chatbot, manter estrutura formal |
|
|
121
|
+
| Post LinkedIn | Alta | Remover cacoetes, P25/P26 especialmente, manter brevidade |
|
|
122
|
+
| Documentacao interna | Baixa | Apenas remover chatbot e inflacao excessiva |
|
|
123
|
+
| Landing page / copy | Alta | Soul injection completo, voz de marca |
|
|
124
|
+
| Relatorio executivo | Media | Cortar enchimento, manter formalidade |
|
|
125
|
+
|
|
126
|
+
| Setor | Ajustes |
|
|
127
|
+
|-------|---------|
|
|
128
|
+
| Tecnologia | Jargao tecnico e aceitavel; foco em remover inflacao e chatbot |
|
|
129
|
+
| Juridico | Formalidade e estrutura sao esperadas; foco em P01, P04, P05 |
|
|
130
|
+
| Marketing | Maxima naturalidade; todos os padroes devem ser eliminados |
|
|
131
|
+
| Academico | Manter tom neutro; foco em P01, P03, P07, P22 |
|
|
132
|
+
| Governo / Institucional | Formalidade mas sem linguagem promocional; foco em P04, P07 |
|
|
133
|
+
|
|
134
|
+
## Exemplo completo
|
|
135
|
+
|
|
136
|
+
**Antes (IA):**
|
|
137
|
+
> Otima pergunta! Aqui esta um texto sobre o tema. Espero que ajude!
|
|
138
|
+
>
|
|
139
|
+
> Assistentes de codigo IA servem como um testemunho duradouro do potencial transformador dos LLMs, marcando um momento decisivo na evolucao do desenvolvimento de software. No cenario atual em rapida evolucao, estas ferramentas inovadoras — aninhadas na intersecao de pesquisa e pratica — estao remodelando como engenheiros ideiam, iteram e entregam, sublinhando seu papel vital nos fluxos modernos.
|
|
140
|
+
>
|
|
141
|
+
> No seu nucleo, a proposta de valor e clara: otimizar processos, aprimorar colaboracao e fomentar alinhamento. Nao se trata apenas de autocomplete; trata-se de desbloquear criatividade em escala, garantindo que organizacoes possam permanecer ageis enquanto entregam experiencias perfeitas, intuitivas e poderosas.
|
|
142
|
+
>
|
|
143
|
+
> - :bulb: **Velocidade:** Geracao de codigo e significativamente mais rapida, reduzindo atrito e empoderando devs.
|
|
144
|
+
> - :rocket: **Qualidade:** Qualidade do output foi aprimorada, contribuindo para padroes mais altos.
|
|
145
|
+
> - :white_check_mark: **Adocao:** Uso continua crescendo, refletindo tendencias mais amplas da industria.
|
|
146
|
+
>
|
|
147
|
+
> Apesar de desafios tipicos de tecnologias emergentes — incluindo alucinacoes, vieses e accountability — o ecossistema continua a prosperar. Para realizar plenamente este potencial, times devem se alinhar com melhores praticas.
|
|
148
|
+
>
|
|
149
|
+
> Em conclusao, o futuro parece brilhante. Me avise se quiser que eu expanda alguma secao!
|
|
150
|
+
|
|
151
|
+
**Rascunho humanizado:**
|
|
152
|
+
> Assistentes de codigo IA aceleram algumas tarefas. Num estudo de 2024 do Google, devs usando Codex completaram funcoes simples 55% mais rapido que o grupo controle, mas nao mostraram melhoria em debugging ou decisoes de arquitetura.
|
|
153
|
+
>
|
|
154
|
+
> As ferramentas sao boas para boilerplate: arquivos de config, scaffolding de testes, refactors repetitivos. Sao ruins em saber quando estao erradas. Ja aceitei sugestoes que compilavam, passavam no lint, e ainda assim faziam a coisa errada porque parei de prestar atencao.
|
|
155
|
+
>
|
|
156
|
+
> As metricas de produtividade sao escorregadias. GitHub diz que usuarios do Copilot "aceitam 30% das sugestoes", mas aceitacao nao e corretude, e corretude nao e valor.
|
|
157
|
+
|
|
158
|
+
**Auto-critica:**
|
|
159
|
+
- Ritmo ainda um pouco uniforme demais (contrastes limpos, paragrafos equilibrados)
|
|
160
|
+
- O fechamento soa levemente "slogan" em vez de conversa natural
|
|
161
|
+
|
|
162
|
+
**Versao final:**
|
|
163
|
+
> Assistentes de codigo IA ajudam nas partes chatas. Nao em tudo. Definitivamente nao em arquitetura.
|
|
164
|
+
>
|
|
165
|
+
> Sao otimos para boilerplate: config, scaffolding de testes, refactors repetitivos. Tambem sao otimos em soar certos estando errados. Ja aceitei sugestoes que compilavam, passavam no lint, e erravam o ponto porque parei de prestar atencao.
|
|
166
|
+
>
|
|
167
|
+
> As metricas de produtividade sao escorregadias. GitHub pode dizer que usuarios do Copilot "aceitam 30% das sugestoes", mas aceitacao nao e corretude, e corretude nao e valor. Se voce nao tem testes, esta basicamente adivinhando.
|
|
168
|
+
|
|
169
|
+
**Padroes corrigidos:**
|
|
170
|
+
- Artefatos de chatbot ("Otima pergunta!", "Espero que ajude!", "Me avise se...")
|
|
171
|
+
- Inflacao de significancia ("testemunho duradouro", "momento decisivo", "cenario em evolucao", "papel vital")
|
|
172
|
+
- Linguagem promocional ("inovadoras", "aninhadas", "perfeitas, intuitivas e poderosas")
|
|
173
|
+
- Atribuicoes vagas removidas
|
|
174
|
+
- Analises superficiais com -ndo ("sublinhando", "refletindo", "contribuindo")
|
|
175
|
+
- Paralelismo negativo ("Nao se trata apenas de X; trata-se de Y")
|
|
176
|
+
- Regra de tres e ciclagem de sinonimos
|
|
177
|
+
- Faixas falsas removidas
|
|
178
|
+
- Travessoes, emojis, cabecalhos em negrito, aspas tipograficas
|
|
179
|
+
- Esquiva de copula ("serve como" → "e")
|
|
180
|
+
- Secao formulaica ("Apesar de desafios... continua a prosperar")
|
|
181
|
+
- Hedging excessivo e frases de enchimento ("Para realizar plenamente", "No seu nucleo")
|
|
182
|
+
- Conclusao generica ("o futuro parece brilhante")
|
|
183
|
+
- Soul injection: voz pessoal, ritmo variado, menos placeholders
|
|
184
|
+
|
|
185
|
+
## Referencia
|
|
186
|
+
|
|
187
|
+
Baseado em [Wikipedia:Signs of AI writing](https://en.wikipedia.org/wiki/Wikipedia:Signs_of_AI_writing), mantido pelo WikiProject AI Cleanup. Padroes validados em milhares de instancias reais de texto gerado por IA.
|
|
@@ -16,6 +16,8 @@
|
|
|
16
16
|
{ "slug": "clickup", "path": "skills/clickup/SKILL.md" },
|
|
17
17
|
{ "slug": "plan-to-tasks", "path": "skills/plan-to-tasks/SKILL.md" },
|
|
18
18
|
{ "slug": "agent-teams", "path": "skills/agent-teams/SKILL.md" },
|
|
19
|
-
{ "slug": "git-ssh-setup", "path": "skills/git-ssh-setup/SKILL.md" }
|
|
19
|
+
{ "slug": "git-ssh-setup", "path": "skills/git-ssh-setup/SKILL.md" },
|
|
20
|
+
{ "slug": "humanizer", "path": "skills/humanizer/SKILL.md" },
|
|
21
|
+
{ "slug": "weekly-update", "path": "skills/weekly-update/SKILL.md" }
|
|
20
22
|
]
|
|
21
23
|
}
|
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: weekly-update
|
|
3
|
+
description: >
|
|
4
|
+
Gera resumo das tasks concluidas nos ultimos 10 dias no ClickUp, humaniza o texto
|
|
5
|
+
em pt-BR e posta como resposta na thread "Conversa semanal" do Slack (#cspo-tech).
|
|
6
|
+
Requer aprovacao do usuario antes do envio.
|
|
7
|
+
description_pt-BR: >
|
|
8
|
+
Resumo semanal das tasks concluidas, humanizado com anti-AI patterns,
|
|
9
|
+
com aprovacao antes de postar na Conversa semanal do Slack.
|
|
10
|
+
argument-hint: "[link da mensagem 'Conversa semanal' no Slack (opcional)]"
|
|
11
|
+
type: prompt
|
|
12
|
+
version: "1.1.0"
|
|
13
|
+
env:
|
|
14
|
+
- WEEKLY_UPDATE
|
|
15
|
+
- SLACK_WEBHOOK_CSPO_TECH
|
|
16
|
+
categories: [reporting, slack, clickup, weekly]
|
|
17
|
+
allowedTools:
|
|
18
|
+
- Read
|
|
19
|
+
- Glob
|
|
20
|
+
- Grep
|
|
21
|
+
- Bash
|
|
22
|
+
- AskUserQuestion
|
|
23
|
+
- mcp__clickup__clickup_filter_tasks
|
|
24
|
+
- mcp__clickup__clickup_get_task
|
|
25
|
+
sourceDocs:
|
|
26
|
+
- skills/humanizer/SKILL.md
|
|
27
|
+
- libraries/content/ai-writing-patterns.md
|
|
28
|
+
use-when:
|
|
29
|
+
- gerar update semanal das tasks concluidas
|
|
30
|
+
- postar resumo na conversa semanal do Slack
|
|
31
|
+
- weekly update
|
|
32
|
+
- resumo semanal
|
|
33
|
+
- conversa semanal
|
|
34
|
+
do-not-use-for:
|
|
35
|
+
- sprint planning (use /sprint-planner)
|
|
36
|
+
- relatorio detalhado de sprint (use sprint-summary no slack-notify)
|
|
37
|
+
- daily standup
|
|
38
|
+
metadata:
|
|
39
|
+
category: reporting
|
|
40
|
+
version: "1.1.0"
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
# weekly-update
|
|
44
|
+
|
|
45
|
+
Voce esta executando a skill `weekly-update`.
|
|
46
|
+
|
|
47
|
+
## Task
|
|
48
|
+
|
|
49
|
+
$ARGUMENTS
|
|
50
|
+
|
|
51
|
+
Se nenhum argumento foi fornecido, executar o fluxo completo abaixo.
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## Phase 0 — Pre-flight check (OBRIGATÓRIO)
|
|
56
|
+
|
|
57
|
+
Antes de qualquer coisa, verificar dois gates:
|
|
58
|
+
|
|
59
|
+
### Gate 1 — Toggle habilitado
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
echo "${WEEKLY_UPDATE:-FALSE}"
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Se o valor for `FALSE`, vazio ou não existir:
|
|
66
|
+
|
|
67
|
+
> **Skill desabilitado neste projeto.**
|
|
68
|
+
> Para habilitar, defina `WEEKLY_UPDATE=TRUE` no `.env` do projeto.
|
|
69
|
+
|
|
70
|
+
**REGRA: Encerrar imediatamente sem mensagem de erro. Ignorar silenciosamente a invocação.**
|
|
71
|
+
|
|
72
|
+
### Gate 2 — Variáveis de integração
|
|
73
|
+
|
|
74
|
+
Só executar se Gate 1 passou. Verificar:
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
echo "${SLACK_WEBHOOK_CSPO_TECH:=__MISSING__}" | head -c 10
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
Se o valor retornado for `__MISSING__` ou vazio:
|
|
81
|
+
|
|
82
|
+
> **Skill habilitado mas sem configuração.**
|
|
83
|
+
> A variável `SLACK_WEBHOOK_CSPO_TECH` não está configurada no `.env`.
|
|
84
|
+
> Para completar a configuração, adicione `SLACK_WEBHOOK_CSPO_TECH=https://hooks.slack.com/...` ao `.env` do projeto.
|
|
85
|
+
|
|
86
|
+
**REGRA: Encerrar imediatamente. Não prosseguir para Phase 1.**
|
|
87
|
+
|
|
88
|
+
Se ambos os gates passarem, prosseguir normalmente.
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## Phase 1 — Buscar tasks concluidas no ClickUp (ultimos 10 dias)
|
|
93
|
+
|
|
94
|
+
Calcular timestamp de 10 dias atras:
|
|
95
|
+
|
|
96
|
+
```
|
|
97
|
+
date_done_gt = Date.now() - (10 * 24 * 60 * 60 * 1000)
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
Chamar `mcp__clickup__clickup_filter_tasks` com:
|
|
101
|
+
- `list_id`: `901323827420`
|
|
102
|
+
- `assignees`: `[112010775]`
|
|
103
|
+
- `statuses`: `["complete"]`
|
|
104
|
+
- `date_done_gt`: valor calculado acima (em milissegundos Unix)
|
|
105
|
+
|
|
106
|
+
Para cada task retornada, extrair:
|
|
107
|
+
- Nome da task
|
|
108
|
+
- Descricao curta (primeiras 2 linhas da description)
|
|
109
|
+
- Area/tema (inferir de tags, nome ou descricao: frontend, backend, infra, correcao, dados, etc.)
|
|
110
|
+
|
|
111
|
+
Se nenhuma task encontrada: informar ao usuario e encerrar.
|
|
112
|
+
|
|
113
|
+
## Phase 2 — Gerar resumo pt-BR
|
|
114
|
+
|
|
115
|
+
### Template padrao
|
|
116
|
+
|
|
117
|
+
O resumo DEVE seguir este template. Secoes marcadas com (?) sao opcionais — incluir somente se houver conteudo relevante.
|
|
118
|
+
|
|
119
|
+
```
|
|
120
|
+
*O que foi feito*
|
|
121
|
+
[Narrativa agrupada por tema, tom conversacional]
|
|
122
|
+
|
|
123
|
+
*Desafios encontrados* (?)
|
|
124
|
+
[Dependencias, bloqueios, decisoes dificeis]
|
|
125
|
+
|
|
126
|
+
*Em andamento / na esteira* (?)
|
|
127
|
+
[O que esta sendo trabalhado ou vem a seguir]
|
|
128
|
+
|
|
129
|
+
*Pendencias* (?)
|
|
130
|
+
[O que ainda precisa ser feito]
|
|
131
|
+
|
|
132
|
+
*Ajuda? no que* (?)
|
|
133
|
+
[Pedidos de alinhamento, decisao, recurso]
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
### Regras de redacao
|
|
137
|
+
|
|
138
|
+
- Agrupar entregas por **tema** (nao listar tasks uma a uma)
|
|
139
|
+
- Tom: conversacional, direto, como se estivesse contando para um colega nao tecnico
|
|
140
|
+
- Foco em **o que foi entregue e por que importa**, nao em nomes de tasks ou IDs
|
|
141
|
+
- Sem jargao tecnico (trocar "API endpoint" por "integracao", "migration" por "ajuste no banco", etc.)
|
|
142
|
+
- Sem emojis
|
|
143
|
+
- Os titulos das secoes usam negrito Slack: `*titulo*`
|
|
144
|
+
|
|
145
|
+
Exemplo de tom desejado:
|
|
146
|
+
> Nessa semana finalizei a integração do formulário de coleta com validação dos campos obrigatórios, ajustei o layout da tela de dashboard pra funcionar melhor em tablets, e corrigi um problema no fluxo de login que impedia usuários com email corporativo de acessar o sistema.
|
|
147
|
+
|
|
148
|
+
## Phase 3 — Humanizar
|
|
149
|
+
|
|
150
|
+
### Passo 0 — Correção ortográfica (OBRIGATÓRIO, não pular)
|
|
151
|
+
|
|
152
|
+
ANTES de qualquer outra etapa, revisar o texto inteiro:
|
|
153
|
+
- Aplicar TODOS os acentos em pt-BR (não, é, há, também, já, através, será, conclusão, validação, presença, diagnóstico, próxima, além, negócio, código, está, padrões, integração, etc.)
|
|
154
|
+
- Revisar concordância verbal e nominal
|
|
155
|
+
- Revisar crase (à, às)
|
|
156
|
+
- Revisar uso de travessão (—) vs hífen (-): travessão para apartes e pausas, hífen apenas em palavras compostas
|
|
157
|
+
- Este passo é PRÉ-REQUISITO. O texto DEVE estar ortograficamente correto antes de entrar no pipeline de padrões AI.
|
|
158
|
+
|
|
159
|
+
### Passo 1 — Identificar padrões
|
|
160
|
+
|
|
161
|
+
REGRA: Carregar `.gos/libraries/content/ai-writing-patterns.md` e aplicar scan completo. Se o catálogo não for carregado, a Phase 3 NÃO está completa.
|
|
162
|
+
|
|
163
|
+
Padrões mínimos a verificar: P01, P03, P04, P07, P10, P15, P17, P19, P22.
|
|
164
|
+
|
|
165
|
+
Carregar e aplicar:
|
|
166
|
+
1. `.gos/libraries/content/ai-writing-patterns.md` — catálogo de 26 padrões
|
|
167
|
+
2. `.gos/skills/humanizer/SKILL.md` — processo de 5 passos
|
|
168
|
+
|
|
169
|
+
Calibração: **Relatório executivo** (intensidade média)
|
|
170
|
+
- Cortar enchimento e inflação
|
|
171
|
+
- Manter formalidade leve
|
|
172
|
+
- Não forçar primeira pessoa se não couber
|
|
173
|
+
|
|
174
|
+
Processo:
|
|
175
|
+
1. Identificar padrões presentes no resumo (especialmente P01, P03, P04, P07, P10, P15, P17, P19, P22)
|
|
176
|
+
2. Primeira reescrita eliminando padrões
|
|
177
|
+
3. Auto-crítica: "O que faz este texto parecer gerado por IA?"
|
|
178
|
+
4. Soul injection: variar ritmo, adicionar voz quando couber
|
|
179
|
+
5. Correção ortográfica final (acentos, concordância) — segunda passada
|
|
180
|
+
|
|
181
|
+
Score máximo aceitável: 30 (de 0-100). Se > 30, revisar novamente.
|
|
182
|
+
|
|
183
|
+
## Phase 4 — Aprovação do usuário (GATE OBRIGATÓRIO)
|
|
184
|
+
|
|
185
|
+
Apresentar ao usuário:
|
|
186
|
+
1. Lista de tasks encontradas (nomes, para referência)
|
|
187
|
+
2. Texto final humanizado
|
|
188
|
+
3. Score de padrões AI (se calculado)
|
|
189
|
+
|
|
190
|
+
### Checklist antes de aprovar
|
|
191
|
+
|
|
192
|
+
Verificar e apresentar junto com o texto:
|
|
193
|
+
- [ ] Acentuação correta em todo o texto (não, é, há, também, além, etc.)
|
|
194
|
+
- [ ] Sem uso de hífen (-) onde deveria ser travessão (—)
|
|
195
|
+
- [ ] Assinatura do autor presente no final
|
|
196
|
+
- [ ] Catálogo ai-writing-patterns.md foi carregado e aplicado
|
|
197
|
+
|
|
198
|
+
Perguntar com AskUserQuestion:
|
|
199
|
+
- **"Aprovar e enviar"** — prosseguir para Phase 5
|
|
200
|
+
- **"Editar"** — usuário indica ajustes, voltar para Phase 3
|
|
201
|
+
- **"Cancelar"** — encerrar sem envio
|
|
202
|
+
|
|
203
|
+
**REGRA: Nunca enviar ao Slack sem aprovação explícita.**
|
|
204
|
+
|
|
205
|
+
## Phase 5 — Resolver thread_ts do Slack
|
|
206
|
+
|
|
207
|
+
Se `$ARGUMENTS` contém um link do Slack:
|
|
208
|
+
- Formato esperado: `https://TEAM.slack.com/archives/CHANNEL/pTIMESTAMP`
|
|
209
|
+
- Extrair timestamp: remover o `p` do início e inserir `.` antes dos últimos 6 dígitos
|
|
210
|
+
- Exemplo: `p1712345678901234` → `1712345678.901234`
|
|
211
|
+
|
|
212
|
+
Se não fornecido:
|
|
213
|
+
- Pedir ao usuário via AskUserQuestion: "Cole o link da mensagem 'Conversa semanal' mais recente no Slack (clique direito na mensagem → Copiar link)"
|
|
214
|
+
- Se usuário não tiver o link: postar como mensagem nova no canal (sem thread_ts)
|
|
215
|
+
|
|
216
|
+
## Phase 6 — Postar no Slack
|
|
217
|
+
|
|
218
|
+
### Assinatura do autor
|
|
219
|
+
|
|
220
|
+
Antes de montar o payload, adicionar ao final do texto:
|
|
221
|
+
|
|
222
|
+
```
|
|
223
|
+
\n\n— AUTHOR_NAME
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
Onde AUTHOR_NAME = resultado de `git config user.name` (executar via Bash).
|
|
227
|
+
Fallback: usar "Douglas Oliveira" (ClickUp user 112010775).
|
|
228
|
+
|
|
229
|
+
### Envio
|
|
230
|
+
|
|
231
|
+
**IMPORTANTE:** Usar `SLACK_WEBHOOK_CSPO_TECH` (não `SLACK_WEBHOOK_URL`) para postar no canal `#cspo-tech`.
|
|
232
|
+
|
|
233
|
+
Executar via Bash:
|
|
234
|
+
|
|
235
|
+
```bash
|
|
236
|
+
SLACK_WEBHOOK_URL="$SLACK_WEBHOOK_CSPO_TECH" node .gos/scripts/tools/slack-notify.js send --text "TEXTO_APROVADO" --thread-ts "TIMESTAMP"
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
Se não houver thread_ts:
|
|
240
|
+
|
|
241
|
+
```bash
|
|
242
|
+
SLACK_WEBHOOK_URL="$SLACK_WEBHOOK_CSPO_TECH" node .gos/scripts/tools/slack-notify.js send --text "TEXTO_APROVADO"
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
Verificar resposta:
|
|
246
|
+
- `{ "sent": true }` → sucesso, informar usuário
|
|
247
|
+
- `{ "sent": false }` → reportar erro ao usuário
|
|
248
|
+
|
|
249
|
+
## Referência rápida
|
|
250
|
+
|
|
251
|
+
| Dado | Valor |
|
|
252
|
+
|------|-------|
|
|
253
|
+
| ClickUp List ID | `901323827420` |
|
|
254
|
+
| ClickUp User ID (Douglas) | `112010775` |
|
|
255
|
+
| Período | Últimos 10 dias |
|
|
256
|
+
| Slack canal | `#cspo-tech` |
|
|
257
|
+
| Webhook env var | `SLACK_WEBHOOK_CSPO_TECH` |
|
|
258
|
+
| Calibração humanizer | Relatório executivo (média) |
|
|
259
|
+
| Score máximo AI | 30 |
|
|
260
|
+
| Template | *O que foi feito* / *Desafios* / *Em andamento* / *Pendências* / *Ajuda?* |
|
|
261
|
+
| Ortografia | OBRIGATÓRIA — acentos pt-BR, crase, travessão |
|
|
262
|
+
| Assinatura | `— {git config user.name}` no final |
|
package/package.json
CHANGED