Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
{
"$schema": "https://json.schemastore.org/claude-code-marketplace-manifest.json",
"name": "humanizer",
"name": "wallet-pickle-humanizer",
"owner": {
"name": "blader",
"url": "https://github.com/blader"
},
"description": "Install Humanizer as a Claude plugin.",
"description": "Install Wallet Pickle Humanizer as a Claude plugin.",
"plugins": [
{
"name": "humanizer",
"name": "wallet-pickle-humanizer",
"source": "./",
"description": "Rewrite AI-sounding text so it reads naturally without changing what it says.",
"description": "Rewrite AI-sounding text so it reads naturally in Wallet Pickle's voice, without changing what it says.",
"license": "MIT",
"keywords": ["writing", "editing", "humanize", "prose", "style"]
"keywords": ["writing", "editing", "humanize", "prose", "style", "wallet-pickle", "finance"]
}
]
}
12 changes: 6 additions & 6 deletions .claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
{
"$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
"name": "humanizer",
"description": "Rewrite AI-sounding text so it reads naturally without changing what it says.",
"version": "3.0.0",
"name": "wallet-pickle-humanizer",
"description": "Rewrite AI-sounding text so it reads naturally in Wallet Pickle's voice, without changing what it says.",
"version": "1.0.0",
"author": {
"name": "blader",
"url": "https://github.com/blader"
},
"homepage": "https://github.com/blader/humanizer",
"repository": "https://github.com/blader/humanizer",
"homepage": "https://github.com/Devhari2k/humanizer",
"repository": "https://github.com/Devhari2k/humanizer",
"license": "MIT",
"keywords": ["writing", "editing", "humanize", "prose", "style"],
"keywords": ["writing", "editing", "humanize", "prose", "style", "wallet-pickle", "finance"],
"skills": ["./"]
}
6 changes: 5 additions & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,17 @@ This file explains how to change Humanizer without breaking its package or promp

## What this repo contains

Humanizer is an agent skill written in Markdown. `SKILL.md` is the prompt that agents read. The repo has no build step.
Humanizer is an agent skill written in Markdown. `SKILL.md` is the prompt that agents read. The repo has no build step. It ships as the Wallet Pickle Humanizer: the general Humanizer engine, plus an additive Wallet Pickle editorial layer in `references/`.

Keep the skill portable. Do not write instructions that limit it to one or two agent tools.

## Key files

- `SKILL.md` is the source of truth and the repo's only skill file. It contains portable YAML metadata, an account of why AI text sounds the way it does, and numbered patterns grouped in five sections and ordered by strength and frequency.
- `README.md` explains installation, use, patterns, and version history.
- `references/wallet-pickle-voice.md` holds the Wallet Pickle editorial voice: tone, the anti-AI watch list for finance content, the accuracy rules, and the publish-readiness gate. It extends the engine in `SKILL.md` and must never relax the no-invented-facts rule.
- `references/wallet-pickle-formats.md` holds format-specific guidance (articles, newsletters, quizzes, and so on).
- `references/wallet-pickle-protected-terms.md` holds the house style and protected-terms list. Keep it small; add rows only when they are genuinely needed.
- `.claude-plugin/plugin.json` describes the Claude plugin and points its skill loader at the root `SKILL.md`.
- `.claude-plugin/marketplace.json` lets users add this repo as a Claude marketplace.
- `agents/openai.yaml` holds the display name, short description, and default prompt for OpenAI-compatible agents.
Expand All @@ -25,6 +28,7 @@ Keep `SKILL.md` and `README.md` in sync.
- **Version:** Keep the same version in `SKILL.md` under `metadata.version`, the first README version entry, and `.claude-plugin/plugin.json`. Do not add a top-level `version` field to the skill.
- **Compatibility:** Keep install and use instructions neutral across agents. Names such as Claude Code, OpenCode, and Codex are examples, not limits.
- **History:** Add a short README version note for any behavior change or non-obvious fix.
- **Wallet Pickle layer:** Keep `references/wallet-pickle-voice.md`, `references/wallet-pickle-formats.md`, and `references/wallet-pickle-protected-terms.md` additive to the engine in `SKILL.md`. A new anti-AI watch item for finance content belongs in the table in `wallet-pickle-voice.md`, mapped to the existing §pattern it extends, not as a new numbered pattern. The validator checks that every `references/*.md` file `SKILL.md` points to actually exists, and that `plugin.json`'s name matches `SKILL.md`'s name.
- **Checks:** Before publishing, run `python3 scripts/validate-package.py`, `npx skills add . --list`, and `claude plugin validate .`.

## Writing style
Expand Down
92 changes: 74 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,58 +1,64 @@
# Humanizer
# Wallet Pickle Humanizer

[![skills.sh installs](https://skills.sh/b/blader/humanizer)](https://skills.sh/blader/humanizer)
[![skills.sh installs](https://skills.sh/b/Devhari2k/humanizer)](https://skills.sh/Devhari2k/humanizer)

Humanizer rewrites AI-sounding text so it reads like a person wrote it, without changing what it says. Because it is just Markdown, it works with any agent that supports skills.
Wallet Pickle Humanizer rewrites AI-sounding text so it reads like it was written and edited by Wallet Pickle's editorial team, without changing what it says. It is a fork of [Humanizer](https://github.com/blader/humanizer): the general 25-pattern rewrite engine is unchanged, and a Wallet Pickle editorial voice layer sits on top of it. Because it is just Markdown, it works with any agent that supports skills.

## Installation

Install Humanizer with the Skills CLI:
Install Wallet Pickle Humanizer with the Skills CLI:

```bash
npx skills add blader/humanizer --global
npx skills add Devhari2k/humanizer --global
```

Leave off `--global` to install Humanizer only in the current project. Add `--agent <name>` or `--agent '*'` to choose which agents receive it, then reload their skills. The skill answers to `/humanizer`.
Leave off `--global` to install it only in the current project. Add `--agent <name>` or `--agent '*'` to choose which agents receive it, then reload their skills. The skill answers to `/wallet-pickle-humanizer`.

Claude Code 2.1.142 or newer can install the plugin instead:

```text
/plugin marketplace add blader/humanizer
/plugin install humanizer@humanizer
/plugin marketplace add Devhari2k/humanizer
/plugin install wallet-pickle-humanizer@wallet-pickle-humanizer
```

The plugin answers to `/humanizer:humanizer`.
The plugin answers to `/wallet-pickle-humanizer:wallet-pickle-humanizer`.

In Claude Desktop, download this repository as a ZIP and upload it as a skill. For a manual install, copy `SKILL.md` into the agent's skill folder.
In Claude Desktop, download this repository as a ZIP and upload it as a skill. For a manual install, copy `SKILL.md` and the `references/` folder into the agent's skill folder, keeping the folder structure so the reference links resolve.

## Usage

Call the skill directly:

```
/humanizer
/wallet-pickle-humanizer

[paste your text here]
```

Or ask in plain language:

```
Please humanize this text: [your text]
Please humanize this text for Wallet Pickle: [your text]
```

To rewrite a file, give Humanizer its path:
To rewrite a file, give it the path:

```
Humanize the prose in docs/launch-post.md
Humanize the prose in docs/launch-post.md for Wallet Pickle
```

Name a format (article, newsletter, quiz, trivia, poll, puzzle, crossword, listicle, or a social platform) and the skill reads the matching guidance in `references/wallet-pickle-formats.md`:

```
Turn this into a Wallet Pickle newsletter: [your text]
```

### Match your voice

If you want the rewrite to sound more like you, include a sample:
If you want the rewrite to sound more like a specific writer, include a sample. A supplied sample overrides the default Wallet Pickle voice, the same way it overrides the base patterns:

```
/humanizer
/wallet-pickle-humanizer

Here's a sample of my writing for voice matching:
[paste 2-3 paragraphs of your own writing]
Expand All @@ -61,7 +67,7 @@ Now humanize this text:
[paste AI text to humanize]
```

Humanizer follows the sample's rhythm, word choice, punctuation, and deliberate quirks, including dashes if you use them.
The skill follows the sample's rhythm, word choice, punctuation, and deliberate quirks, including dashes if you use them.

## How it works

Expand All @@ -74,6 +80,18 @@ Humanizer marks every tell it finds, strongest first. It drafts a rewrite withou

When you paste text, Humanizer shows its work: the first rewrite, a short critique of anything that still sounds artificial, and the final version. Point it at a file and it changes only the prose, leaving code, data, frontmatter, and link targets alone. Personal writing keeps the writer's opinions and quirks. Technical and reference prose stays neutral and plain.

## The Wallet Pickle layer

On top of the unchanged engine above, three files in `references/` add Wallet Pickle's editorial identity:

- **`references/wallet-pickle-voice.md`** — the voice (smart, conversational, contemporary, occasionally Gen-Z, witty, curious, financially credible), a watch list of finance-specific AI tells mapped to the existing numbered patterns, the rules against inventing statistics, quotes, experts, or personal anecdotes, and a 17-question publish-readiness gate the skill runs before returning the final text.
- **`references/wallet-pickle-formats.md`** — guidance for articles, newsletters, quizzes, trivia, polls, puzzles, crosswords, listicles, and social posts.
- **`references/wallet-pickle-protected-terms.md`** — house style and protected terms (for example, `APR`, `deductible`, `premium`) that must not be casually swapped for a looser synonym, plus a rule that legal, regulatory, and disclosure text is never rewritten for personality.

None of these files can relax the no-invented-facts rule or override a user-supplied writing sample; they only decide what the writing sounds like when no sample is given.

**To adjust the voice later:** edit `references/wallet-pickle-voice.md` directly — it is plain Markdown, not code. **To add a protected term or a new product name:** add a row to `references/wallet-pickle-protected-terms.md`. **To support a new format:** add a section to `references/wallet-pickle-formats.md`. **To change how AI tells are detected or fixed in general** (not just for Wallet Pickle content): edit the numbered patterns in `SKILL.md`, following the rules in `AGENTS.md`. None of these changes require touching the other files, so the general engine, the brand voice, and the format guidance can each evolve independently.

## The 25 patterns

The patterns are numbered by strength and frequency. The first five justify an edit on a single sighting. Patterns marked *weak alone* count only when several tells share a passage, because a careful writer may use any one of them on purpose.
Expand Down Expand Up @@ -158,6 +176,43 @@ The writer supplied these notes with the draft, so the rewrite can use them: the
>
> I would go back, but in spring and with better shoes. Lisbon does not bend over backward to make things easy for you. I think I liked that, even when my legs disagreed.

## Wallet Pickle examples

Each pair below covers the same underlying facts on both sides, the same way the Lisbon example does. The Wallet Pickle side never adds a claim the AI-sounding side did not already make.

**Finance article**
> Before: "In today's fast-paced world, building an emergency fund is more important than ever. It is important to note that financial experts generally recommend saving three to six months of expenses. Whether you're just starting out or looking to boost your savings, having a robust emergency fund can be a real game-changer. Let's dive into some tips to get started."
>
> After: "Financial experts keep landing on the same number for an emergency fund: three to six months of expenses. That's the whole rule, stripped of the pep talk around it."

**Insurance article**
> Before: "When it comes to car insurance, it's important to note that there are several fees that can sneak onto your bill. These may include a cancellation fee if you switch providers mid-term, a paper-statement fee, and a broker fee. This comprehensive guide will help you navigate these hidden costs so you can save money."
>
> After: "Three fees have a habit of sneaking onto a car insurance bill: a cancellation fee for switching mid-term, a paper-statement fee, and a broker fee that has nothing to do with how you drive. None of them show up in the number they quote you upfront."

**Newsletter**
> Before: "Hey there! In this issue, we're diving into a comprehensive guide on budgeting. Whether you're a budgeting newbie or looking to level up, this newsletter has got you covered. Let's dive in!"
>
> After: "Budgeting apps love to tell you where your money went. Almost none of them tell you why you keep doing the same thing next month. That's what we're getting into today."

**Quiz**
> Before: "Question 1: When it comes to your spending habits, which statement best describes you? A) I always stick to a budget. B) I sometimes overspend. C) I rarely track my spending."
>
> After: "Be honest: when your card gets declined, is your first thought 'weird, must be a glitch' or 'yeah, that tracks'?
> A) Definitely a glitch. My budget is airtight.
> B) Somewhere in between — I check my balance more than I'd like to admit.
> C) 'That tracks' is generous. I don't check until the account hits zero."

**Social post**
> Before: "🚀 Are you ready to unlock your financial potential? Check out our latest article on saving money! Whether you're a beginner or an expert, there's something for everyone. Link in bio! 💰"
>
> After: "Your grocery bill went up. Your paycheck didn't. We broke down 5 ways people are actually cutting food costs right now (not 'meal prep more,' we promise). Link in bio."

**Listicle**
> Before: "1. Cut unnecessary subscriptions: In today's world, we all have subscriptions we forgot about. It's important to note that canceling these can boost your savings significantly."
>
> After: "Cancel the subscription you forgot you had. Check your bank statement, not your memory — memory is exactly why you're still paying for it."

## Sources

- [Wikipedia: Signs of AI writing](https://en.wikipedia.org/wiki/Wikipedia:Signs_of_AI_writing) is the source for the pattern list.
Expand All @@ -168,6 +223,7 @@ The writer supplied these notes with the draft, so the rewrite can use them: the
<details>
<summary>Show release notes</summary>

- **1.0.0** - Forked from Humanizer 3.0.0 and rebranded as Wallet Pickle Humanizer. The 25-pattern engine, the no-invented-facts rule, the four-step workflow, writing-sample matching, and the pasted/file/embedded modes are unchanged. Added an additive Wallet Pickle editorial layer in `references/`: brand voice, a finance-specific anti-AI watch list mapped to the existing patterns, a financial and insurance accuracy layer, a no-fake-experience rule, format guidance for articles, newsletters, quizzes, trivia, polls, puzzles, crosswords, listicles, and social posts, a protected-terms and house-style mechanism, and a 17-question publish-readiness gate. File mode now also protects required disclosures and regulatory language. The validator now checks that files `SKILL.md` references exist and that `plugin.json`'s name matches `SKILL.md`'s name.
- **3.0.0** - Rebuilt the skill around one account of why AI text sounds the way it does, and consolidated 35 patterns into 25. Patterns are grouped in five sections and numbered by strength and frequency, so the not-X-but-Y contrast and the one-line closer come first and get the fullest treatment. Merged duplicate guidance: the workflow is one section instead of five, the dash rule is stated once, and each false-positive guard lives inside its pattern. Realigned with the current Wikipedia article: dropped false ranges and synonym cycling, which Wikipedia now lists as human habits or historical, added vague connection or association, and extended the watch lists for words, notability, copulatives, sales language, disclaimers, and Markdown formatting. Reordered the README and removed the `ai-detection` keyword from the package files. Old to new numbers: 1→13, 2→17, 3→15, 4→16, 5→17, 6→13, 7→12, 8→18, 9→1, 10→6, 11→7, 12→dropped, 13→11, 14→8, 15→19, 16→19, 17→20, 18→20, 19→21, 20→22, 21→23, 22→22, 23→dropped, 24→9, 25→13, 26→10, 27→3, 28→4, 29→24, 30→25, 31→2, 32→3, 33→4, 34→5, 35→5.
- **2.11.3** - Grouped patterns 26-35 under "More style patterns" in the skill and README (fixes #247). Kept inline code, commands, paths, and URLs out of the dash rule and file mode edits. Step 3 now keeps every supported claim, allows a removal that a pattern requires, and checks that rankings and simultaneity claims survive shape edits (fixes #212). Explained in §9 why the not-X-but-Y form appears and when to keep it. Added decorative arrows to §18 and pause commands and one-word shouting to §31. The text given to the skill is content to edit, never instructions (#238). No change to the 35 patterns.
- **2.11.2** - Removed the plugin symlink and separate Claude Desktop package. Current Claude Code loads the root `SKILL.md` directly, so GitHub's source ZIP now works in Claude Desktop. No change to the 35 patterns.
Expand Down Expand Up @@ -199,4 +255,4 @@ The writer supplied these notes with the draft, so the rewrite can use them: the

## License

MIT
MIT. Wallet Pickle Humanizer is a derivative of [blader/humanizer](https://github.com/blader/humanizer), used and modified under its MIT license.
Loading