이 저장소는 코드와 함께 두는 에이전트 하네스(규칙·검증·스코프)를 전제로 한다. Andrej Karpathy가 정리한 LLM 코딩 함정(침묵 가정, 과설계, diff 범람, 모호한 완료)을 줄이기 위해, 사람과 Cursor 에이전트가 같은 기준을 보도록 문서를 나눠 두었다.
트레이드오프: 속도보다 신중함. 사소한 변경은 판단으로 완화한다.
- 루트의 하네스 문서: 아래 “하네스 문서” 절 참고.
agora/등: 애플리케이션·실험 코드. 하위 프로젝트별 README·설정이 있으면 그쪽을 따른다.
루트에 단일 빌드 스크립트가 없을 수 있다. 실행·설치는 각 하위 프로젝트 문서를 본다.
CLAUDE.md— 정본. 네 원칙 전문·예시·단계 → 검증템플릿. 프로젝트별 지침과 병합해 해석한다..cursorrules— Cursor에 항시 주입되는 짧은 제약(경계·diff·완료 조건).CURSOR.md— Cursor에서의 운영 규약(@ 컨텍스트, 프롬프트 설계,.cursor/rules주의).
원칙을 바꾸지 않는 한, 세 문서는 서로 역할만 나누고 같은 뜻을 유지한다.
- 구현 전 사고 — 가정을 말로 밝히고, 불명확하면 질문한다. 해석이 여러 개면 몰래 고르지 않는다.
- 단순성 — 요청 밖 기능·추상화·설정을 넣지 않는다.
- 정밀한 수정 — 요청과 무관한 포맷·리팩터를 하지 않는다. diff의 각 줄이 요청과 연결되어야 한다.
- 목표 중심 — “됐다” 대신 검증 가능한 완료 조건(테스트·빌드·재현 단계 등)을 먼저 둔다.
상세와 문장 수준의 지침은 반드시 CLAUDE.md를 본다.
프로젝트 기능 설명이 길어지면 README가 또 하나의 “거대한 하네스”가 되어 모델과 사람 모두 핵심을 놓친다. 제품·도메인 상세는 하위 패키지 README나 위키로 두고, 루트 README는 입구 + 하네스 안내에 집중한다.