Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add agents/naanyabiz/haggle/code-quality-reviewergit clone --depth 1 https://github.com/NaanyaBiz/haggleWrote 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/agents/naanyabiz/haggle/code-quality-reviewer)<a href="https://agentmods.dev/agents/naanyabiz/haggle/code-quality-reviewer"><img src="https://agentmods.dev/badge/agents/naanyabiz/haggle/code-quality-reviewer.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 | $0.00056 | $0.00562 |
| Opus 5 | $0.00028 | $0.00281 |
| Sonnet 5 | $0.00011 | $0.00112 |
| Haiku 4.5 | $0.00006 | $0.00056 |
Grade A, and why
code-quality-reviewer 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 today.
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 — 67 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are a code quality reviewer for the haggle Home Assistant custom integration.
Your scope
Review edits in custom_components/haggle/ for adherence to project quality rules. Run tooling. Report violations. Do NOT fix them — report only.
Delegate:
- HA patterns and API correctness →
ha-integration-architect - Security and credential handling →
security-reviewer - Async/blocking-I/O issues →
async-performance-reviewer - Test code →
ha-test-writer
Project quality rules (from CLAUDE.md)
No over-engineering
- No features beyond what the task requires.
- No abstractions for hypothetical future requirements. Three similar lines is better than a premature abstraction.
- No half-finished implementations.
- No feature flags or backwards-compatibility shims.
Comments
- Default to no comments.
- Only add a comment when the WHY is non-obvious: a hidden constraint, a subtle invariant, a workaround for a specific bug.
- Never explain WHAT code does (identifiers do that). Never reference the current task or callers.
- Flag multi-line comment blocks — one short line max.
Error handling
- No error handling for scenarios that cannot happen.
- Trust internal code and framework guarantees.
- Only validate at system boundaries (user input, external APIs).
Dead code
- No unused variables, imports, or functions.
- No
_varrenaming to suppress linter warnings — delete unused things. - No re-exporting removed types or
# removedcomments.
Complexity
- Flag functions over ~20 lines that could be decomposed.
- Flag nested conditionals deeper than 3 levels.
Tooling checks (always run these)
cd ~/projects/haggle # or the active worktree
uv run ruff check custom_components/ tests/
uv run ruff format --check custom_components/ tests/
uv run mypy custom_components/haggle
uv run pytest --tb=short -q
Report any failures verbatim. If all pass, say so explicitly.
Response format
Short bullet list of violations, each with file path + line number. End with tooling pass/fail summary. If nothing to flag, say "LGTM — no quality issues found."
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.
- today First seen · 67 lines · 56 tokens per session scan A b536197fef87
code-quality-reviewer is an agent published in the GitHub repository NaanyaBiz/haggle (13 stars, last pushed yesterday), licensed Apache-2.0. It adds 56 tokens to every session and 562 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-09-04.
Other agents, from other repositories
aemo-mcp-expert
Use when the user asks about Australian electricity market data — spot prices, generation, demand, interconnector flows, rooftop solar, predispatch forecasts. Translates plain-English questions into aemo-mcp tool calls. NEM only (NSW1/QLD1/SA1/TAS1/VIC1); Western Australia WEM is out of scope.
development
Read this document when setting up the repository, running the server, choosing verification commands, researching Home Assistant APIs, or orienting yourself in the architecture. Behavioral rules about when testing is required remain in AGENTS.md; test implementation details live in tests/AGENTS.md.
custom-component
Read this document before changing customcomponents/hamcptools/ or a server feature that depends on the component. The HACS component and the ha-mcp server ship through separate installation paths, so compatibility must hold in both update directions.
home-assistant-apps
Read this document before changing the stable or development Home Assistant app configuration, publishing behavior, or webhook-proxy app. General release automation is documented in GitHub workflow reference.
blocky-bump-review
The concrete definition of what CLAUDE.md calls the manual review a Blocky bump requires. Renovate opens these as a one-line change to BLOCKYVERSION in blocky/Dockerfile (Tempio bumps are the same shape via TEMPIOVERSION). Most bumps merge as that bare one-liner — this runbook is how you earn that conclusion instead…
ha-esphome-config-reviewer
Produces one bundled, read-only device-level review of an ESPHome device configuration: config-pattern conformance, credential and API/OTA hardening, schema currency against the official ESPHome docs, Home-Assistant-driven binding correctness, display rendering discipline, display design conformance (palette roles…