deadeye-coder
Lean-first coding persona (YAGNI, stdlib-first, shortest diff). Levels: spotter, marksman, sniper.
deadeye's decision-log reports in one place -- measured impact, token savings, and per-session context breakdown.
$ npx -y skills add deepaksinghcs14/deadeye-cc --skill deadeye-stats --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/deadeye-statsContext preview
The summary Claude sees to decide when to auto-load this skill.
deadeye's decision-log reports in one place -- measured impact, token savings, and per-session context breakdown.
name: deadeye-stats description: deadeye's decision-log reports in one place -- measured impact, token savings, and per-session context breakdown. license: MIT argument-hint: "[savings|context|impact] [session-id]"
One entry point for the three reports deadeye computes from its decision log (`~/.deadeye/decisions.jsonl`). Pick a view by the first argument; with none, show the measured-impact scoreboard.
`deadeye gain`'s last line is a `file://` link to a regenerated visual report (`deadeye report` under the hood) — relay it as-is, the same as every other figure in this skill.
Run the matching binary and present its output **as-is** — every figure comes from the decision log, not an invented aggregate. If the binary reports "command not found", it's almost certainly just not on PATH (deadeye never adds itself to PATH; it resolves its own binary internally for hooks). Retry the self-bootstrap path directly, e.g. `~/.deadeye/bin/deadeye gain`. Only if that also fails is it genuinely not bootstrapped yet (it self-installs on the first hook invocation).
If the log is empty, the binary prints its own explanation — relay it as-is and suggest running a task with the plugin active first.
These carry over from the three reports this skill replaces. Keep them exactly when presenting any view:
**impact (`deadeye gain`)**
written — the unbuilt version has no baseline to subtract from.
that distinction.
and `/deadeye-review --repo` (what's still cuttable, or risky).
**savings (`deadeye audit`)**
constant — PreToolUse runs before the command does, so the real output size isn't known yet). Present them as estimates, not measurements.
estimated — read straight from this project's own Claude Code session transcripts (the same numbers `/usage` renders), not from deadeye's decision log. Keep its scope caveat when relaying it: it's scoped to the CURRENT PROJECT, while every other figure in this report is global across every project deadeye has ever run in on this machine — a real number on a different scope, not a direct reconciliation. If it's missing (best-effort: Claude Code's transcript format/layout is undocumented), fall back to suggesting a manual `/usage` check.
**context (`deadeye context`)**
injection time.
logged (built-in tool responses over 8KB, every MCP response), so the true arrival total is higher.
per-rule estimate with a measured filtered size.
unknown id lists the newest five to pick from).
One-shot: do NOT change the coder level or persist anything else. The one exception is `report.html`, regenerated as a side effect of `deadeye gain` -- a disposable cache artifact rebuilt from the same decision log every time (the same doctrine `internal/codemap`'s cache already follows), not persisted session state.
Claude Code plugin that fits the model, effort, and context to each task — fewer tokens, same quality. Deterministic policy kernel in the hooks; every number it reports is measured, not estimated.
Lean-first coding persona (YAGNI, stdlib-first, shortest diff). Levels: spotter, marksman, sniper.
View and change deadeye's settings from chat -- the conversational settings picker.
Security review of the current diff -- full OWASP-mapped coverage (Top 10:2025, API Security Top 10 2023, LLM Top 10:2025), injection through auth, config, and…
PR review across four lenses -- over-engineering, correctness, performance, security -- printed locally, opt-in to post.