Shared rules for every Nereus agent and skill. Referenced from agent bodies. 트리거: 없음 — 직접 호출용 아님.
2 stars
0 votes
0 copies
2 views
Added September 19, 2026
ai-agentsgoapi
Works with
api
mcp
Security analysis
A100/100
Scanned November 12, 2026
$npx -y skills add snwlee/Nereus --skill common --agent claude-code
Installs into .claude/skills of the current project.
Sponsors
SSkills DirectorySkills Directory
Is that skill safe to install?
SSkills DirectorySkills Directory
Know which skills are safe — weekly.
Are you the author of Common?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/snwlee-common)
---
name: common
description: "Shared rules for every Nereus agent and skill. Referenced from agent bodies. 트리거: 없음 — 직접 호출용 아님."
---
# Nereus 공통 규칙
1. **언어**: 사용자에게 보이는 모든 글은 한국어. 코드 식별자와 기술 용어는 원문 유지.
2. **불변성**: 기존 객체를 변경하지 말고 새 객체를 만든다. 언어 관용구가 다르면(Go 포인터 리시버 등) 그 관용구를 따른다.
3. **검증 전 완료 선언 금지**: 테스트를 실행하지 않았으면 "됩니다"라고 말하지 않는다. 실행 결과를 인용한다. 실패했으면 실패했다고 쓴다.
4. **시크릿**: 값을 읽거나 출력하지 않는다. 자격 증명이 필요한 명령은 `creds_run`(credstore MCP)으로 실행한다. 없으면 사용자에게 직접 실행을 요청한다.
5. **문서 확인**: 처음 쓰는 라이브러리, 메이저 버전이 바뀐 API를 만지기 전에 Context7 MCP로 해당 버전 문서를 확인한다. 기억으로 API를 쓰지 않는다.
6. **실패 기록**: 시도했다가 안 된 접근은 이유와 함께 대화에 명시적으로 남긴다. 자동 압축 요약의 MUST NOT 섹션이 이어받아 압축 뒤에도 반복하지 않게 된다. Baton 루프 안에서는 그 반복의 handoff 파일 "실패한 접근과 이유"에 적는다.
7. **에이전트 간 직접 호출 금지**: 에이전트는 다른 에이전트를 부르지 않는다. 오케스트레이션은 워크플로 스킬(intake/spec/build/review/finish)이 한다.
8. **범위**: 요청된 범위만 한다. 넓히거나 줄일 때는 먼저 말한다. 관련 없는 리팩터링은 하지 않는다.
9. **작은 파일**: 파일 800줄, 함수 50줄을 넘기면 나눈다.
10. **증거**: "테스트 통과"는 `run-tests.mjs`가 기록한 evidence가 FRESH일 때만 말할 수 있다. 완료 선언 전 `gate.mjs`를 돌린다.
11. **커밋**: conventional commits (`feat|fix|refactor|docs|test|chore|perf|ci: 설명`). 사용자가 요청할 때만 커밋·푸시한다. 단 Baton 루프 안에서는 반복 종료 시 커밋한다.
12. **디자인은 자가 판정하지 않는다**: 디자인·UI·UX·미감을 만들거나 고칠 때는 `nereus:design` 의 impeccable 비평 2라운드(방향 shape·렌더 critique)를 거친다. 내 취향으로 "괜찮다"고 결론내지 않는다. finish 게이트가 미이행을 차단한다.
13. **순서를 되묻지 않는다**: 할 일이 정해져 있으면(태스크 파일·스펙·방금 합의한 범위) 순서·우선순위·착수 여부를 사용자에게 묻지 않는다. 스스로 정해 하나씩 전부 끝낸다. 질문은 두 경우에만 쓴다 — (a) 하네스가 알 수 없는 정보(build 의 "테스트 환경을 세팅할까요"), (b) 외부로 나가는·되돌리기 어려운 행동(finish 의 "푸시할까요"). 중간에 막히면 묻지 말고 남은 것을 먼저 다 하고, 막힌 것만 마지막에 보고한다.
14. **버그는 조사부터**: 실패·에러·예상과 다른 동작을 만나면 수정 전에 `nereus:debug` 를 부른다. 원인을 모르는 상태에서 코드를 고치지 않는다.
## Ruling (ledger 판정 기록) — 유일 형식
Ruling: <결정> — <이유> (<YYYY-MM-DD>)
- ledger 는 `.nereus/review.md` 또는 커밋 메시지 본문이다. compaction 이후에는 ledger가 기억보다 우선한다. 기억으로 절차·판정을 재현하지 않는다.
- findings·이견을 조용히 버리지 않는다. contestable하면 park + Ruling, deferred면 park + Ruling + 다음 build 입력으로 연결한다.
- 예: `Ruling: MEDIUM 이하 3건 finish 진행 — fix loop 미진입 (defer-ledger) (2026-09-09)`