Skip to content
🆕 New skill: Pstack Skill! Lauren Tan's rigorous engineering orchestrator — 23 playbooks, 21 procedures, and 21 principles in a single skill for any agent.View skill →

Humanizar

Strips mechanical writing signals from Brazilian Portuguese text and restores rhythm, precision, and voice — without inventing a new story. Since v1.4 it also writes from scratch, applying the pattern catalog as an output filter rather than a repair pass.

The goal is a better text, not a fooled detector: no rewrite can guarantee that a tool will classify the result as human, and the skill treats AI-detector scores as an invalid criterion — those tools misfire more often against neurodivergent and non-native writers.

For English text, use the sibling skill Human-AI.

  • Text in PT-BR sounds generic, bureaucratic, or AI-generated
  • Requests like “humanize”, “give it life”, “remove AI tone”, “remove AI slop”
  • Writing from scratch anything a person will sign: post, article, email, proposal, release, README, bio
  • Simplifying institutional or technical language for a broad audience
  • Auditing another agent’s output before publishing
  • Agent pipelines that need natural language output and a structured contract
Mode When to use Attempts Delivery
modo_completo Default — “humanize this” 3 Final text, score, and a summary of changes
modo_direto Agent pipelines or “humanize quick” 1 Final text and a synthetic report
modo_revisão Audit text from another agent 3 Final text, diagnosis, and a detailed report
modo_criacao The text does not exist yet 2 Final text only

Thirteen profiles guide rhythm and register without authorizing new content: Crônica, Journalistic, Academic, Informal Corporate, Social Media Post, WhatsApp, Legal, Instructional, Português Simplificado, Assertivo, Enxuto, Resumo, and Neutral Voice. With no explicit profile and no author sample, the skill detects one from the content; with no clear signal, it uses the neutral voice and only removes mechanical patterns.

The Português Simplificado profile applies seven operations derived from the PorSimples project (NILC/USP) and the techniques associated with Brazil’s Lei 15.263/2025 (National Plain Language Policy): sentence splitting, passive → active, SVO reordering, discourse marker substitution, long apposition removal, lexical simplification, and subject explicitation. It simplifies the form, never the reasoning.

The Assertivo, Enxuto, and Resumo profiles form the rapid-consumption group: they optimize for the reader’s absorption, not for authorship. Assertivo opens with the answer and uses bold as hierarchy; Enxuto answers in one line and does not explain what was not asked; Resumo becomes a status board with a checklist (✅🟡⬜❔🔴), blockers on their own line, and a “Sua vez” block listing the action options. The three share one rule set: step-by-step work becomes a numbered list, the closing is a concrete action rather than a recap, a secondary topic moves out of the middle of the first, and an escape clause applies when the user asks for depth. Brevity compresses form, never content — no warning, number, or scope condition is cut to make it fit.

A nine-step process over an immutable texto_fonte:

Mandatory triage (refuses drug labels, contracts, aviation manuals)
|
v
1. voice profile selection
2. diagnosis with weights 1-3 per category
3. pattern removal (loads only the flagged references)
4. specificity restoration
5. voice application
6. false-positive guard <-- unmarks what is not AI
7. final verification (12 items + 5 brevity checks)
8. 0-100 scoring across 4 dimensions
9. attempt control and delivery

TRAVA FACTUAL (factual lock). Names, numbers, dates, quotes, sources, examples, causality, modality, argument, and code are immutable. The skill may condense, reorder, and rephrase; it may not add, remove, or alter. A candidate that breaks the lock is discarded before it is even scored.

False-positive guard. Before final verification, the skill unmarks signals that are not AI at all: flawless grammar, dry prose, legal or academic register, dialogue em-dashes, isolated connectives, curly quotes on their own, correct commas. And it preserves human marks instead of standardizing them — contractions (pra, , ), regionalisms (uai, oxe, tchê), mixed feelings, parenthetical self-correction, sentence-length variation.

Terminal window
npx skills add https://github.com/fabricioctelles/skills -s humanizar

v1.6 (Sep 2026)

  • The Direto profile is now Assertivo. The name collided with modo_direto, which is an operation mode and not a voice profile: the output contract allowed modo: modo_direto + perfil_de_voz: Direto, two unrelated things under one name
  • New common rules for the rapid-consumption profiles block: a four-constraint reader model, numbered lists for step-by-step work, a closing that names a concrete action, a repositioned secondary topic, and one escape clause covering all three profiles
  • The Enxuto profile gains two AI signals: dramatized errors (“Ops”, “Infelizmente”) and idiom where the literal action fits
  • The Resumo profile now requires concrete time units when the source supplies them — and ❔ when it does not, because an invented deadline is invented status
  • Rules adapted from i-have-adhd (MIT)

v1.5 (Aug 2026)

  • Three rapid-consumption profiles: Assertivo, Enxuto, and Resumo, inspired by the Attention-Span project
  • New reference padroes-consumo-rapido.md: formatting rules, what to always cut, what to never cut, and TRAVA FACTUAL integration
  • Brevity verification in Step 7 (5 items): propositions preserved, warnings not removed, scope not generalized, modality preserved, and exact numbers kept
  • False-positive guard extended with six exceptions for these profiles: bold lead-ins, arrows, short sentences, checklists, long lists, and single-line paragraphs
  • Now 13 voice profiles

v1.4 (Aug 2026)

  • New Step 6 — false-positive guard, with 18 items that must not be flagged and a list of human marks to preserve; includes an explicit warning against AI-detector scores
  • New modo_criacao for writing from scratch: write first, sweep afterwards, starting with the five patterns that account for most slips in new text
  • Five new patterns: fabricated source (a specific reference that does not exist — never repair it, just flag it), title echo, false alternative rejected, documentation describing the previous version, and t-shirt maxim
  • Em-dash recalibrated from weight 1 to weight 2, with a mandatory sweep for , and -- before delivery, plus explicit exceptions (fiction dialogue, author sample)
  • Regression suite extended to T8

v1.3 (Jul 2026)

  • Português Simplificado profile with seven PorSimples (NILC/USP) operations and Lei 15.263/2025
  • New reference padroes-portugues-simplificado.md: ~50 lexical substitutions, NILC-Metrix metrics, 15 rules across 3 priority levels, and 4 application domains
  • Now 10 voice profiles

v1.2 (Jun 2026)

  • Automatic document type detection with fallback
  • Post-rewrite scoring across weighted dimensions and an iterative loop with strategy fallback
  • YAML output contract compatible with external orchestrators

v1.0 (Jun 2026)

  • Initial version with 3 operation modes
  • PT-BR-specific AI slop pattern catalog
  • Guardrails against fact invention and argument shifting

The false-positive guard, the human-marks list, the from-scratch writing mode, and five patterns were incorporated from PedroLLou/humanizador (MIT), the Brazilian Portuguese version of blader/humanizer (MIT), which in turn derives from Wikipedia: Signs of AI writing, maintained by WikiProject AI Cleanup. The original catalog also draws on the tropes.fyi directory.

Portuguese-language sources behind those adaptations:

Confidence levels. No single pattern proves artificial origin; the signal is accumulation. These have direct support in published Portuguese sources or in released measurements: AI vocabulary, negative parallelism, the aparte em-dash, decorative emoji, curly quotes, chatbot leftovers, stacked connectives, English-imported punctuation, and fabricated sources. The rest are heuristics, not proof.

📄 Full documentation on GitHub