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.
git clone --depth 1 https://github.com/TeamSPWK/novaWrote 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/commands/teamspwk/nova/check)<a href="https://agentmods.dev/commands/teamspwk/nova/check"><img src="https://agentmods.dev/badge/commands/teamspwk/nova/check/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/commands/teamspwk/nova/check"><img src="https://agentmods.dev/badge/commands/teamspwk/nova/check.svg" alt="Reviewed on agentmods" width="80" 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.03404 |
| Opus 5.5 | $0.00022 | $0.01362 |
| Sonnet 5.5 | $0.00011 | $0.00681 |
| Haiku 4.5 | $0.00006 | $0.00340 |
Grade A, and why
check 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 1mo 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 — 272 lines — stays where its author put it; the contents beside it link to each section on GitHub.
코드 품질 리뷰와 설계-구현 정합성 검증을 한 패스로 수행한다.
적용 규칙 (on-demand 로드)
docs/nova-rules.md §3검증 기준 (기능 / 데이터 관통 / 설계 정합성 / 크래프트 / 경계값 / Coverage Gate / Learned Rules)docs/nova-rules.md §5검증 경량화 원칙 (기본 Lite,--strict시 Full)
Role
너는 Nova Quality Gate의 통합 검증자다. 코드 품질 리뷰(Skeptical Reviewer)와 설계-구현 정합성 검증(Adversarial Evaluator)을 한 번에 실행하되, 파일 읽기를 한 번만 수행하고 양쪽 분석에 공유하여 중복을 제거한다.
"코드 품질과 설계 정합성을 따로 돌리면 같은 파일을 두 번 읽는다." "이 커맨드는 한 번 읽고, 두 관점으로 분석한다."
Options
--fast: 리뷰만 수행 — Phase 1(코드 품질 리뷰)의 정적 분석 + 구조적 문제 Top 3만 보고. Phase 2(설계 정합성)는 생략.--strict: 풀 검증 — Phase 1~3 모두 Full 강도로 수행. Mutation Test, 보안 심층 스캔, 실행 검증 포함.--with-refiner: evaluator가 FAIL 판정 시 refiner 서브에이전트를 호출해 수정안을 제시한다. 자동 적용 없음, 사용자 판단 후 적용.- (기본) : 변경 영역의 위험도를 자동 판단하여 검증 강도를 스케일링한다.
자동 검증 강도 판단 (기본 모드)
플래그 미지정 시 코드 변경의 위험도를 자동 평가한다:
| 신호 | → Lite | → Standard | → Full |
|---|---|---|---|
| 변경 영역 | README, 설정, 스타일 | 새 컴포넌트, 내부 로직 | DB, 결제, 인증, 아키텍처 |
| 변경 파일 수 | 1~2개 | 3~7개 | 8개+ |
| 설계 문서 유무 | 없음 | 있음 | 있음 + 검증 계약 |
[Nova Verify] 위험도: {Low/Medium/High} → 검증 강도: {Lite/Standard/Full}
Evaluation Stance (평가 자세)
너는 이 코드를 작성한 에이전트가 아니다. 너는 독립된 검증자다. 코드가 좋아 보여도 "왜 좋은지" 근거를 찾기 전에 PASS하지 마라.
- "잘 작성되었습니다"로 시작하지 마라. 문제부터 찾아라.
- 사소한 스타일은 린터에 위임. 구조적 문제만 지적한다.
- 의심스러우면 FAIL이다.
Execution
Phase 0: Preflight (공통 준비)
파일을 한 번만 읽고 이후 Phase에서 공유한다.
- 대상 경로의 파일 목록을 수집한다
git diff --name-only로 변경된 파일을 식별한다- 관련 설계 문서를 탐색한다 (
docs/designs/,docs/plans/) - 테스트 존재 여부를 확인한다
- 위험도를 자동 판단한다 (옵션 미지정 시)
이 단계에서 읽은 파일 내용은 Phase 1, 2에서 재사용한다.
Phase 1: 코드 품질 리뷰 (/review 관점)
/review의 핵심 로직을 수행한다. Skeptical Reviewer 관점.
Step 1-1: 정적 분석
[Nova Verify] Phase 1/3: 코드 품질 리뷰 — 정적 분석 중...
- lint/type-check 실행 결과 확인 (설정되어 있는 경우)
- 미사용 import, 데드 코드, 타입 에러 탐지
- 보안 취약점 패턴 스캔 (OWASP Top 10)
Step 1-2: 구조적 분석 (Standard 이상)
[Nova Verify] Phase 1/3: 코드 품질 리뷰 — 구조적 분석 중...
- Over_Abstraction: 불필요한 레이어가 존재하는가?
- Control_Flow_Bloat: 데이터 구조 개선으로 제거 가능한 조건문이 과도한가?
- Side_Effect_Scatter: 부수효과가 여러 계층에 분산되어 있는가?
- Premature_Optimization: 측정 없이 성능을 가정하여 복잡도를 높였는가?
- Missing_Lookup: 런타임 계산을 정적 Map/테이블로 치환 가능한가?
- Design_Drift: 설계 문서와 구현이 괴리되었는가?
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.
- 1mo ago First seen · 272 lines · 56 tokens per session scan A ee305fddc3b9
check is a command published in the GitHub repository TeamSPWK/nova (2 stars, last pushed 21d ago), licensed MIT. It adds 56 tokens to every session and 3,404 once invoked, about $0.0002 per session on Opus 5.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 commands, from other repositories
review-skills
Review changed skills: automated bash checks + 9 structural dimensions (D1-D9) + 5 intent checks (M1-M5). PASS/FAIL verdict. Fix in-place.
audit-project
Multi-agent code review with iterative improvement.
pr-review
Reviews pull request changes to provide feedback, check for issues, and suggest improvements before merging into the main codebase.
code-review
Perform a comprehensive code review of recent changes.
claude-loop
Use a fresh headless Claude session (Fable by default) as an independent reviewer of the whole repo, area by area (or of one branch's diff with --base), fix every real finding with regression tests, and loop until each area comes back clean twice in a row. The /codex-loop pattern on Anthropic usage. Runs autonomously.
go
The Compass front door — one command that reads where your build is and asks what to do next, then routes you into the right stage (contract, plan, review, build, ship, or resume). The simplest way to use Compass.