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 jazz1x/honne/plugin install honneWrote 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/jazz1x/honne/whoami)<a href="https://agentmods.dev/skills/jazz1x/honne/whoami"><img src="https://agentmods.dev/badge/skills/jazz1x/honne/whoami.svg" alt="Measured on agentmods" 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.00056 | $0.01991 |
| Opus 5 | $0.00028 | $0.00996 |
| Sonnet 5 | $0.00011 | $0.00398 |
| Haiku 4.5 | $0.00006 | $0.00199 |
Grade A, and why
whoami 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 6d 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.
How it starts
The opening of the file, as written. The whole thing — 172 lines — stays where its author put it; the contents beside it link to each section on GitHub.
honne — 7-Axis Self-Observation
When invoked, execute Step 1 through Step 6 in order immediately. Do not summarize the skill or ask what the user wants — invocation itself is the request. Start by asking the Step 1 question.
Step 1: Scope + Locale HITL
Invoke AskUserQuestion tool with two questions in a single call:
(a) Scope:
question: "Scan scope?"options:[{"label":"repo","description":"current project only"},{"label":"global","description":"all projects"}]
(b) Locale:
question: "Locale?"options:[{"label":"ko","description":"한국어"},{"label":"en","description":"English"},{"label":"jp","description":"日本語"}]
Set SCOPE and LOCALE from the two replies. Do not use plain-text Q&A — arrow-key selection only.
Step 2: Scan
Run: bash "${CLAUDE_PLUGIN_ROOT}/scripts/honne" scan --scope "$SCOPE" --cache ".honne/cache/scan.json"
Capture RUN_ID from result: RUN_ID=$(python3 -c 'import json; print(json.load(open(".honne/cache/scan.json"))["run_id"])')
Non-zero exit → output stdout+stderr verbatim to user, stop. Do not interpret exit codes.
Step 3: Rejection reframe filter (skip candidate)
For each axis, run: bash "${CLAUDE_PLUGIN_ROOT}/scripts/honne" query --base-dir ".honne" --tag "<axis>" --type rejection --scope "$SCOPE"
Before Step 4 records each axis, pipe the candidate through bash "${CLAUDE_PLUGIN_ROOT}/scripts/honne" axis validate --text "$candidate" --locale "$LOCALE" --skip-if-overlaps "$rejection_text" — exit 3 = overlap, skip and log "reframed". 모든 변수는 큰따옴표 인용 필수(공백·특수문자 안전). LLM 호출 없음.
Recording rejections: If the user explicitly says "n" or rejects a candidate claim for any axis, record it as a rejection so Step 3 can filter it in future runs:
bash "${CLAUDE_PLUGIN_ROOT}/scripts/honne" record claim \
--type rejection --axis "$axis" --scope "$SCOPE" \
--claim "$CANDIDATE" --run-id "$RUN_ID" \
--out ".honne/assets/rejections.jsonl"
What ships with it
14 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.
- references/criteria-persona.md 2.8 KB
- SKILL.jp.md 8.3 KB
- SKILL.ko.md 7.6 KB
- templates/axes.en.md 1.9 KB
- templates/axes.jp.md 2.2 KB
- templates/axes.ko.md 2.1 KB
- templates/errors.txt 671 B
- templates/forbidden.json 255 B
- templates/report.en.md 450 B
- templates/report.jp.md 430 B
- templates/report.ko.md 430 B
- templates/synthesis_prompt.en.md 1.4 KB
- templates/synthesis_prompt.jp.md 1.8 KB
- templates/synthesis_prompt.ko.md 1.9 KB
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.
- 6d ago First seen · 172 lines · 56 tokens per session scan A c1149db5eda8
whoami is a skill published in the GitHub repository jazz1x/honne (3 stars, last pushed 3mo ago), licensed MIT. It adds 56 tokens to every session and 1,991 once invoked, about $0.0003 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
learn-from-fix
Capture Elixir/Ecto/LiveView lessons and Hex API rules. Use after corrections or when asked to document learning, record a lesson, prevent a fixed mistake, or remember package guidance with --library.
assigns-audit
Inspect LiveView socket assigns for memory bloat — missing temporaryassigns, unused assigns, unbounded lists needing streams, memory estimates. Use when LiveView memory grows or you need to add temporaryassigns.
recall
Recall prior work from past sessions — how a bug was fixed, what was decided, where a pattern lives. Use when asked 'have we done this before' or 'how did I fix X' in Elixir/Phoenix work. ccrider MCP when available, else git + solution docs.
compound-docs
Searchable Elixir/Phoenix/Ecto solution documentation system with YAML frontmatter. Builds institutional knowledge from solved problems. Use when consulting past solutions before investigating new issues.
context-anchoring
Manage per-feature living documents that capture decisions, constraints, and reasoning across AI sessions during active development. Scoped to feature-level work — design, implementation, bugfix, refactor — not for codebase-wide assessments or product-wide specifications (those define their own document lifecycles).…
learning-harvest
Manage the operational learnings lifecycle — load prior learnings to inform current work, harvest new patterns worth preserving, and keep the document tight over time. Provides a protocol for accumulating actionable patterns from practice that complement standards and defaults. Use when a workflow session completes…