Getting it into your agent
This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.
/plugin marketplace add atman-33/workhub/plugin install personaWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/atman-33/workhub/persona-compress)<a href="https://agentmods.dev/skills/atman-33/workhub/persona-compress"><img src="https://agentmods.dev/badge/skills/atman-33/workhub/persona-compress/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/atman-33/workhub/persona-compress"><img src="https://agentmods.dev/badge/skills/atman-33/workhub/persona-compress.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00073 | $0.01143 |
| Opus 5 | $0.00036 | $0.00571 |
| Sonnet 5 | $0.00015 | $0.00229 |
| Haiku 4.5 | $0.00007 | $0.00114 |
Grade A, and why
persona-compress scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
Derived from genshijin (MIT, InterfaceX-co-jp) — https://github.com/InterfaceX-co-jp/genshijin
自然言語ファイルを圧縮して、毎セッション読み込まれる入力トークンを減らす。
圧縮版が元ファイルを置き換え、人間可読な原文は <name>.original.md に残す。
このスキルはキャラクター非依存。 圧縮結果は口調ではなく、core/compression.md の
圧縮ルールに従う。どのキャラクターが有効でも出力は同じになる。
手順
1. 事前チェック(必須)
node "${CLAUDE_PLUGIN_ROOT}/skills/persona-compress/scripts/detect.mjs" <絶対パス>
REFUSE: が返ったら、その理由をユーザーに伝えて中止する。機密ファイルの判定は
このスクリプトが唯一の判断者で、会話でこれを覆さない。ファイルの内容を読むのは
このチェックを通過してから。
2. バックアップ
detect.mjs が返した backup パスに原文をコピーする。
backupExists が true の場合は、上書きしてよいかユーザーに確認する。
3. 圧縮
ファイルを読み、以下に従って書き換える。
削除する
- 敬語・丁寧語、クッション言葉、前置き、ぼかし
- 冗長表現(〜することができる→〜できる)
- 自明な助詞、形容動詞の活用語尾(な/に/で/だ)→ 語幹止め
- 形式名詞(こと/もの/ため)、補助動詞(ている/ておく/てしまう)
- 「〜してください」「〜を忘れずに」→ 動作のみ記述
- 重複した箇条書きの統合、同パターンの複数例は1例に
絶対に変更しない
- コードブロック(``` 囲みとインデント)。完全にコピーする。 コメント削除・スペース削除・行順変更・コマンド短縮・簡略化すべて禁止
- インラインコード(バッククォート内)
- URL・Markdown リンク
- ファイルパス、コマンド、環境変数
- 技術用語、ライブラリ名、API 名、固有名詞
- 日付、バージョン番号、数値
- エラーメッセージの原文
構造を保つ
- 見出しはすべて維持(見出しテキストは完全保持、下の本文だけ圧縮)
- 箇条書きの階層、番号付きリストの番号
- テーブルの構造(セル内のテキストのみ圧縮)
- frontmatter / YAML ヘッダ
4. 検証(必須)
node "${CLAUDE_PLUGIN_ROOT}/skills/persona-compress/scripts/validate.mjs" <backup> <圧縮後>
OK:— 完了。削減率をユーザーに報告するWARN:— 圧縮できていない。原因を確認するFAIL:— 保護対象が失われている。指摘された箇所だけを原文から復元して再検証する。 全体を再圧縮しない。2回試して直らなければバックアップから復元し、失敗を報告する
例
原文:
main ブランチにプッシュする前には必ずテストスイートを実行するようにしてください。 これはバグを早期に発見し、壊れたビルドが本番環境にデプロイされるのを防ぐために重要です。
圧縮後:
main push 前テスト実行。バグ早期発見、壊れビルドの本番デプロイ防止。
境界
- 対象は
.md/.txt/ 拡張子なしのみ。detect.mjsが判定する - 散文とコードが混在するファイルは散文部分のみ圧縮する
- コードか散文か判断がつかない箇所は変更しない
*.original.mdは圧縮しない
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 10d ago First seen · 92 lines · 73 tokens per session scan A 5445da2acf6a
persona-compress is a skill published in the GitHub repository atman-33/workhub (2 stars, last pushed today), licensed MIT. It adds 73 tokens to every session and 1,143 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
gonavi-cli
Operate databases through the GoNavi headless CLI — the gonavi executable shipped in verified GitHub Release archives. Covers listing/adding/importing saved connections, running SQL queries against saved connections or ad-hoc connection files, exporting result sets to csv/json/md/html/xlsx, batch-executing SQL files…
ucai-patterns
Use when the user asks about Claude Code best practices, how to write agents, how to use hooks, how to manage context, or how to work effectively with Claude Code's native systems.
memory
Use this skill when Pioneer should proactively use durable memory or recalled context: decide whether memory can improve a turn, answer from remembered user/project facts, request memory tools, search/list/get stored memories, save durable preferences or project decisions, forget memories, audit or clean up memory, or…
memory-curator
Use at session-close when a session captured several new memories, or on-demand, to consolidate, deduplicate, prune, and structure the beads memory store. Triggers on "curate memories", "clean up memories", "memory sweep".
orient
Use when user invokes /orient with a topic keyword, entity type, project name, time qualifier, or combination. Also triggers on "what do we know about X", "remind me about X", "where did we leave off on X". Provides targeted context loading — searches the MCP Memory Server graph, knowledge files, journal entries, and…
capture
Use when user invokes /capture to capture information from the current conversation into a staging file for later reflection and knowledge graph processing. Accepts no arguments (auto-extract), specific facts as text, or filter keywords like "decisions" or "technical". Do NOT use when the user wants to write directly…