에이전트가 같은 실수 반복? 규칙으로 막는다
코딩 컨벤션·디버깅 교훈을 한 번 적어두면, 에이전트가 작업하려는 순간 자동으로 일러주는 메모리 레이어
AI 코딩 에이전트와 일하다 보면 같은 잔소리를 매번 반복하게 된다. "이 함수는 쓰지 마라", "이 컨벤션을 지켜라" 같은 규칙이 세션이 바뀔 때마다 잊힌다. 너지(nudge)는 바로 이 문제를 겨냥한 '협업 메모리 레이어'다. 클로드 코드(Claude Code)와 코덱스 CLI(Codex CLI)의 훅(hook)에 붙어, 한 번 적은 규칙을 필요한 순간에 자동으로 꺼내준다.
무슨 일인가
너지의 발상은 단순하다. 규칙을 한 번만 적어두면, 에이전트가 파일을 쓰거나 명령을 실행하거나 URL을 가져오려는 바로 그 순간에 너지가 그 규칙을 전달한다. 에이전트가 모든 프로젝트 규칙을 작업 기억에 이고 다닐 필요 없이, 실제 작업에만 집중하게 만드는 구조다. 러스트(Rust)로 작성됐고 맥·리눅스·윈도우 바이너리를 지원한다.
핵심 구성은 네 가지다. ▲결정적 컨벤션을 작업 전에 잡아내는 규칙(rules) ▲간단한 명령 실수를 자동 교정하는 배시 치환 ▲사용자 요청 시 맥락을 더해주는 프롬프트 리마인더 ▲과거 디버깅 교훈을 기록해 다음 에이전트가 같은 시행착오를 반복하지 않게 하는 '학습된 사고 기록'이다.
핵심 짚어보기
실제 설정은 야믈(YAML) 파일 한 장으로 끝난다. 예컨대 러스트 파일에서 .unwrap() 사용을 정규식으로 잡아, 에이전트가 그 코드를 쓰려는 순간 ".unwrap() 대신 설명이 담긴 .expect()를 쓰고 다시 시도하라"는 메시지를 띄우게 만든다. 잘못된 동작이 '저장되기 전에' 막는 사전 차단 방식이다.
너지가 강조하는 원칙은 '직설적 메시지'다. 좋은 알림은 무엇이 잘못됐는지, 어떻게 고치는지, 그리고 다시 시도하라는 것까지 명확히 말한다. 또한 nudge check 명령으로 같은 규칙을 CI(지속적 통합)와 스크립트에도 적용할 수 있어, 사람이 작업할 때와 자동화 파이프라인에서 동일한 기준을 강제한다. 유용한 디버깅 세션이 끝난 뒤에는 에이전트에게 그 교훈을 영구 기록하게 시킬 수도 있다.
1인기업 실전 적용 포인트
- 매번 AI에게 반복하는 지시("이 라이브러리 쓰지 마라", "이 폴더는 건드리지 마라")를 머릿속에 두지 말고 규칙 파일로 명문화하라. 한 번 적으면 세션이 바뀌어도 자동 적용된다.
- 같은 디버깅을 두 번 겪었다면, 그 해법을 '학습된 사고 기록'으로 남겨라. 1인기업은 인수인계할 동료가 없으니, 이 기록이 곧 미래의 자신을 위한 매뉴얼이 된다.
- CI에도 같은 규칙을 거는
nudge check방식을 빌려, 로컬에서 통과한 규칙이 배포 단계에서 깨지지 않게 하라. 1인 운영에서 가장 무서운 건 사람이 놓친 한 줄이다. - 알림 문구를 '무엇이 잘못/어떻게 고침/재시도'의 3요소로 쓰는 습관을 들여라. 모호한 잔소리는 에이전트가 무시한다.
전망 / 주의점
로컬 시맨틱 임베딩 지원은 애플 실리콘 맥과 x64 리눅스 등 일부 환경에 한정되고, 그 외에서는 BM25 키워드 검색만 쓸 수 있다. 규칙을 너무 많이 걸면 에이전트가 매번 알림에 부딪혀 작업이 느려질 수 있으니, 정말 반복되는 핵심 규칙부터 최소한으로 시작하는 편이 낫다. 그럼에도 '한 번 적고 계속 적용된다'는 메모리 레이어 발상은, 혼자 여러 프로젝트를 오가는 1인기업에게 특히 유효하다.
출처: Hacker News / GitHub attunehq/nudge (https://github.com/attunehq/nudge)