security-reviewlisted
Install: claude install-skill xsefirosus/sefi-agents
# Security Review
Gate skill backing the security-engineer. This body is the Rule block; the expanded
checklist lives in `references/security-checklist.md`, read on demand. Review the diff,
not the intentions.
User instructions always override this skill.
All factual output follows the anti-hallucination skill: cite file:line or mark UNKNOWN,
never guess.
agentic-signals: goal_intake, refusal_gate, verification, loop_discipline, close_out
## Rule block (every reviewed diff is checked against all six)
1. Secrets: no credential, token, key, or connection string in code, fixtures, logs, or
CI config -- placeholders only. Never open a secret-bearing file to verify it; name
the missing variable instead.
2. Injection: every input reaching a shell, SQL/query builder, template engine, parser,
or deserializer is validated or parameterized AT the trust boundary, not upstream of
it.
3. Unsafe constructs: eval/exec on external input, unpinned curl-to-shell installs,
YAML/pickle load on untrusted data, path traversal on user-supplied paths, disabled
TLS verification.
4. Dependencies: a new dependency is a finding by default; it must name what it replaces
and why an existing rung of the minimization ladder cannot do it.
5. Authorization: changed endpoints and handlers keep (or add) their permission checks;
privilege boundaries are asserted in a test.
6. Data handling: PII is not newly logged, persisted, or sent to third parties; vault
writes pass the memory-p