Skip to main content
skill CX Codex

humanpen — Claude Code skill: what it does, how to install

Runs HumanPen on document files to rewrite, shorten, translate, or reformat citations while keeping the document structure intact.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add humanpen/humanpen-skill --skill humanpen -a claude-code
Open on GitHub

What humanpen does

humanpen works from document files rather than pasted chat text. It can rewrite a complete .docx or .pptx, target passages identified by a Turnitin or iThenticate report, convert citations and reference lists to one style, reduce a document to a word limit, or translate it while retaining layout, tables, and formulas. The finished file is written beside the source, and the returned result is a path instead of the document contents.

The skill includes Python scripts built around humanpen.py. Its commands cover humanize, fix-citations, condense, and translate, plus report reading, job resumption, and credit balance checks. You need python3 and HUMANPEN_API_KEY. Jobs spend credits according to the operation and processed word count, with a 10-credit minimum. Without HUMANPEN_API_KEY, commands fail.

The user must approve the stated cost before a job starts. A completed humanize job can be run through free-rehumanize once to process passages still flagged by a fresh report at no credit cost; a daily cap applies. Output files remain available for 7 days. Translation accepts .pdf, .xlsx, .epub, .html, and .txt in addition to the document formats used by the other operations.

What it helps with

  • rewrite a complete .docx or .pptx
  • target passages marked by a Turnitin or iThenticate report
  • convert citations and references to one style
  • condense a document to a word budget
  • translate a file without losing its layout

Example prompts for the agent

  • Rewrite paper.docx with the balanced strategy and place the result beside the source file.
  • Use turnitin.pdf to revise only the passages flagged in paper.docx.
  • Translate paper.docx into Russian while retaining its tables, formulas, and layout.

How to install humanpen

1Skills CLI (Vercel)

npx skills add humanpen/humanpen-skill --skill humanpen -a claude-code

2Manually: put the files in place

~/.claude/skills/humanpen/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/humanpen/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about humanpen

How do I install humanpen in Claude Code?

Run npx skills add humanpen/humanpen-skill --skill humanpen -a claude-code, then check ~/.claude/skills/humanpen/SKILL.md.

What does humanpen do?

The skill sends a document to HumanPen, waits for the job to finish, and saves the result next to the source. It handles document rewriting, citation-style changes, shortening, and translation.

Which file formats does humanpen support?

humanize accepts .docx and .pptx; fix-citations and condense accept .docx. translate also accepts .pdf, .xlsx, .epub, .html, and .txt, and the skill requires HUMANPEN_API_KEY.

Source text

SKILL.md · Apache-2.0
---
name: humanpen
description: Humanize document files with HumanPen to lower their AI-detection score. Rewrite a whole .docx/.pptx, or only the passages a Turnitin/iThenticate AI report flagged, while keeping every fact, number, citation, table and formula intact. Also converts citations to one style (APA, MLA, IEEE, GB/T 7714), condenses a document to a word budget, and translates while preserving layout. Use when the user points at a document FILE (.docx/.pptx; translate also takes .pdf/.xlsx/.epub/.html/.txt) or such an AI report and wants any of these; not for text pasted into chat.
license: Apache-2.0
---

# HumanPen

A document-level AI humanizer. Point it at a document file and it uploads the file, waits for the job, and writes the result next to the source — you get a path back, **never the document's contents**. Formatting, tables, images, citations, and formulas survive intact.

**Every job spends the account's credits. State the cost and get the user's agreement before running any job command.** Per 1,000 words processed: humanize 100 credits, fix-citations 5, condense 20, translate 10, charged only on the words actually processed, with a 10-credit minimum per job; failed or cancelled jobs cost nothing.

## Setup

```bash
export HUMANPEN_API_KEY=hp_...   # create one at https://humanpen.net/settings/api-keys
```

New accounts get 100 free credits at https://humanpen.net. Without a key every command fails with instructions to get one.

## Commands

Run from this skill's directory; `python3` and nothing else is needed. `--help` on any command lists its flags. Add `-o PATH` to choose where the result lands (default `<name>-polished.docx` beside the source).

### Humanize — the main operation

Lower AI-detection signals on a `.docx` / `.pptx`. Three ways to scope it:

```bash
# 1. Whole document.  --strategy: balanced | aggressive
python3 scripts/humanpen.py humanize paper.docx --strategy balanced

# 2. Only the passages a Turnitin / iThenticate report flagged — the rest is left untouched
python3 scripts/humanpen.py humanize paper.docx --report turnitin.pdf

# 3. Continue a finished job for FREE (once per job): re-runs its still-flagged
#    passages against a fresh report. Pass the job_id that humanize returned.
python3 scripts/humanpen.py free-rehumanize <job_id> --report new-turnitin.pdf
```

Optional length control — EXPERIMENTAL, a word limit noticeably weakens AI-rate reduction, so skip it unless a length is required:

```bash
python3 scripts/humanpen.py humanize paper.docx --min-words 1500 --max-words 1800
# Per-passage budgets for the report's flagged passages:
python3 scripts/humanpen.py humanize paper.docx --report turnitin.pdf --segments-file budgets.json
```

### The other three operations

```bash
# Convert every citation + the reference list to one style.  --style: apa7 |
#   mla9 | harvard | chicago_author_date | chicago_notes | ieee | vancouver |
#   gbt7714 | gbt7714_author_year | ama | acs | oscola
python3 scripts/humanpen.py fix-citations paper.docx --style apa7

# Shorten the whole document to a word budget
python3 scripts/humanpen.py condense paper.docx --max-words 4000

# Translate, keeping layout, tables and formulas.  --to: zh | zh-tw | en | ja |
#   ko | es | fr | pt | ru | de | pl | it   (--source-lang: same codes, default auto)
python3 scripts/humanpen.py translate paper.docx --to zh
```

### Read a report · resume a job · check credits

```bash
# A Turnitin / iThenticate report: overall AI %, and the flagged passages
python3 scripts/humanpen.py report turnitin.pdf

# Pick a running job back up (optionally download its result); show the balance
python3 scripts/humanpen.py status <job_id> --download paper.docx
python3 scripts/humanpen.py balance
```

## Reading the output

A finished job prints JSON. Report its `output` (the result path) and `credits_charged` (the cost) to the user. **Do not read the produced file back to summarise it** unless asked — it is a full document, and the point of the path is that its contents stay out of the conversation.

`report` and a finished humanize print `ai_percent` as a number — or `null` when the report shows `*`. Turnitin prints `*` whenever AI writing is **under 20%**; it will not quantify that band, because of false positives. So `null` is usually good news, not a missing result. **It is never zero**: report it as "under 20%, which is where Turnitin stops printing a number", never "0% AI".

## Worth knowing

- **Formats.** humanize takes `.docx` / `.pptx`; fix-citations and condense take `.docx`; translate additionally takes `.pdf`, `.xlsx`, `.pptx`, `.epub`, `.html` and `.txt`.
- **Minutes, not seconds.** The command waits and prints progress to stderr. Interrupting it does **not** cancel the job — `status <job_id>` picks it back up.
- **A second pass is the plan, not a failure — and it is free.** If a detector still flags the result, `free-rehumanize <job_id>` with a fresh report rewrites only the still-flagged passages, at no credit cost (once per job, with a daily cap). Keep `balanced`; no need to escalate to `aggressive`.
- **Result files are kept 7 days**, then deleted; the job record stays.

© humanpen · Apache-2.0 · humanpen/humanpen-skill

Similar skills

All skills for Writing and docs →

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor