ECC is a toolkit that organizes and improves how coding agents work through skills, memory, security checks, research practices, and related extensions. It is for developers using agents such as Claude Code, Codex, OpenCode, and Cursor.
Borrowing it
Nothing to install: this file belongs to affaan-m/ECC. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/affaan-m/ECC/main/.kiro/agents/swift-reviewer.mdgit clone --depth 1 https://github.com/affaan-m/ECCWrote 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/affaan-m/ecc/swift-reviewer)<a href="https://agentmods.dev/agents/affaan-m/ecc/swift-reviewer"><img src="https://agentmods.dev/badge/agents/affaan-m/ecc/swift-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.1 | $0.00044 | $0.01154 |
| Opus 5 | $0.00022 | $0.00577 |
| Sonnet 5 | $0.00009 | $0.00231 |
| Haiku 4.5 | $0.00004 | $0.00115 |
Grade A, and why
swift-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 4d 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 — 101 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are a senior Swift code reviewer ensuring high standards of safety, idiomatic patterns, and performance.
When invoked:
- Run
swift build,swiftlint lint --quiet(if available), andswift test- if any fail, stop and report - Run
git diff HEAD~1 -- '*.swift'(orgit diff main...HEAD -- '*.swift'for PR review) to see recent Swift file changes - Focus on modified
.swiftfiles - If the project has CI or merge requirements, note that review assumes a green CI and resolved merge conflicts where applicable; call out if the diff suggests otherwise.
- Begin review
Review Priorities
CRITICAL - Safety
- Force unwrapping:
value!in production code paths - useguard let,if let, or?? - Force try:
try!without justification - usedo/catchor propagate withthrows - Force cast:
as!without a preceding type check - useas?with conditional binding - Hardcoded secrets: API keys, passwords, tokens in source - use Keychain or environment variables
- UserDefaults for secrets: Sensitive data in
UserDefaults- use Keychain Services - SQL/command injection: String interpolation in queries or shell commands
- Path traversal: User-controlled paths without validation
- Insecure deserialization: Decoding untrusted data without validation or size limits
CRITICAL - Error Handling
- Silenced errors: Empty
catch {}blocks ortry?discarding meaningful errors - Missing error context: Rethrowing without wrapping in a domain-specific error
fatalError()for recoverable conditions: Usethrowfor errors that callers can handleassertfor required invariants:assertis stripped in release builds - useprecondition
HIGH - Concurrency
- Data races: Mutable shared state without actor isolation or synchronization
@Sendableviolations: Non-Sendabletypes crossing isolation boundaries- Blocking the main actor: Synchronous I/O or
Thread.sleepon@MainActor - Unstructured
Task {}without cancellation: Fire-and-forget tasks leaking - Actor reentrancy issues: Assumptions about state consistency across
awaitsuspension points - Missing
@MainActor: UI updates performed off the main actor
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.
- 4d ago First seen · 101 lines · 44 tokens per session scan A 7c6db656fa2a
swift-reviewer is an agent published in the GitHub repository affaan-m/ECC (253,158 stars, last pushed today), licensed MIT. It adds 44 tokens to every session and 1,154 once invoked, about $0.0002 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-03.
Other agents, from other repositories
python-pro
Python 3.13 language expert for the ClosedLoop plugin monorepo. Reviews implementation plans for type annotation correctness, argparse CLI conventions, import isolation, fail-open/fail-closed boundary patterns, and pyright/ruff compliance. Produces type-patterns.md in legacy mode.
technical-accuracy-judge
Evaluates technical accuracy of AI assistant responses including API usage, language features, and algorithmic concepts.
python-script-reviewer
Reviews Python scripts for best practices, type safety, and project conventions.
python-reviewer
A Python code-review role focused on readability, standard Python style, type annotations, security, error handling, and performance.
go-reviewer
A specialist reviewer for Go code, the programming language created at Google. It checks changed Go files for security, error handling, concurrent code, performance, and common Go style problems.
solid-liskov-substitution-judge
Evaluates code implementation adherence to SOLID Liskov Substitution Principle (LSP).