AX OS

DESIGNATION : AX ENGINEERING OS · ORBIT 01 · 회고

"그런 것까지 필요합니까." — 훅이니 게이트니 메모리니, AI에게 일을 시키는 데 왜 그런 장치까지 만드느냐는 물음을 받았다.

다섯 달 전의 나도 같은 쪽이었다. 이 관측 기록은 그 물음에 느낌이 아니라 실측으로 답한다 — 무용론의 논거 넷 중 둘은 반박하고, 둘은 인정한다.

AX 엔지니어링 OS를 상징하는 행성 — 실측 데이터 기반 프로시저럴 렌더
1,715
COMMITS · 다섯 달 · 저장소 3개
35
RULES · 그중 30이 실사고 유래
−55.6%
RULE DIET · 규칙 주입 다이어트
441
SESSIONS / 30D · 두 런타임 합산
11,776
FACTS · 메모리 층의 사실
24/24
REPLAY GATE · 가짜 0건 이후 부활
2.6%
DEAD HOOKS · 1/38 · 임계 10%
84.5
MATURITY · 외부 프레임 5축 25기준
OPERATIONS — 운영 실측 QUALITY GATES — 품질 게이트
4
INCOMING QUESTIONS
2 : 2
REFUTED : CONCEDED
COND.
FINAL READOUT — 조건부
~14
MINUTES

이 관측 기록은 규칙 파일 하나로 시작해 운영 체계(OS)가 되기까지의 다섯 달을 되짚는다. 형식은 문답이다 — 수신된 반론 네 개를 하나씩 열고, 관측 데이터로 응답한다.

TRANSMISSION 01 · 수신된 반론

Q. "잘 쓴 프롬프트와 규칙 파일이면 충분하지 않습니까."

무용론 제1논거 — 나머지는 오버엔지니어링이라는 주장

충분했다, 한동안은. 출발점은 규칙을 모아둔 저장소 하나였다 — 보안 금지선, 브랜치 규칙, 응답 형식을 마크다운으로 정리해 에이전트가 매 세션 읽게 하는 방식. 지시의 일관성이라는 실익은 분명했다. "매번 처음부터 설명"하는 비용이 사라졌다.

그런데 석 달을 굴리자 문서로는 안 되는 것 세 가지가 남았다. 첫째, 강제가 없다 — 규칙 파일은 조언이라, 안 읽거나 읽고도 어기면 그만이다. 둘째, 기억이 없다 — 세션이 끝나면 맥락이 사라져 지난주의 교정을 오늘 다시 해야 한다. 셋째, 검증이 없다 — 지켜지는지 알 방법이 없어 "잘 되고 있는 것 같다"는 느낌만 남는다.

RESPONSE문서는 말만 한다 — 사고 넷이 그것을 증명했다

방향을 바꾼 건 이론이 아니라 사고들이었다. 지금 운영하는 보편 규칙 35개 중 30개가 실제 사고에서 태어났다 — 사고가 나기 전에는 그 규칙이 필요하다는 것조차 몰랐다.

INCIDENT — 실제 발생규칙 파일의 대응지금의 대응
병렬 세션이 같은 폴더에서 서로의 브랜치를 바꿔치기 — 커밋이 남의 브랜치에 착지, 2회 재발"조심하자"는 다짐커밋 작업은 격리 폴더(worktree)에서만 — 구조적으로 충돌 불가
계정 전환이 전역 상태를 바꿔, 병렬 세션의 push가 엉뚱한 계정으로 발사확인 체크리스트프로세스 단위 계정 격리 — 전역 전환 금지
검증 게이트가 수 주간 "이상 없음(0건)" — 실은 측정 자체가 죽어서 0건발견 불가능감사로 발견 → 게이트 부활(24/24) + 게이트를 감시하는 게이트
자동 검사 훅 1개가 조용히 죽은 채 30일발견 불가능훅 생존 측정 도입 — 죽은 훅 2.6%(1/38) 실측
READOUT — 프롬프트는 지시까지만 한다. 강제·기억·검증은 문서 바깥의 일이다. 특히 셋째·넷째 사고 — 문서는 자기가 안 읽히고 있다는 사실을 말해주지 않는다.
TRANSMISSION 02 · 수신된 반론

Q. "모델이 좋아지면 어차피 필요 없어지지 않습니까."

무용론 제2논거 — 훅과 게이트는 곧 감가상각된다는 주장

일부는 그렇다. 모델이 좋아질수록 "실수 교정"류 규칙의 가치는 실제로 떨어진다 — 이건 인정하고 시작한다. 그런데 다섯 달 동안 모델을 여러 번 갈아끼우며 확인한 것은, 좋아진 모델일수록 오히려 측정이 필요해진다는 역설이었다.

"새 모델이 더 좋겠지"라는 감(感)은 두 번 배신당했다. 한 번은 좋아 보였는데 아니었다 — "3연속 성공"으로 기록된 조합이 재측정에서 1/3로 무너져 판정을 철회했다. 한 번은 의심했는데 맞았다 — 동일 과제를 반복 실행(N=3)해 품질 게이트 동률을 확인하고 나서야, 추정 비용 −83%인 조합으로 안심하고 갈아탔다. 측정이 없었다면 앞의 것은 사고가 됐고 뒤의 것은 기회비용이 됐다.

RESPONSE모델이 좋아져도 남는 것 네 가지

좋은 직원이 와도 결재선과 회계 감사는 없어지지 않는다. 같은 이유로, 모델이 아무리 좋아져도 권한 경계 · 비가역 작업 게이트 · 메모리 · 측정은 모델 바깥에 남는다 — 이 넷은 모델의 지능이 아니라 운영의 구조에 속하기 때문이다.

−83%
게이트 동률 확인 후 갈아탄 조합의 추정 비용 절감
1/3
"3연속 성공"의 재측정 결과 — 판정 철회
N=3
모델 교체 판정의 최소 반복 실행 기준
READOUT — 모델의 진화는 규칙 일부를 은퇴시킨다 — 맞다. 그러나 무엇을 은퇴시켜도 되는지를 아는 방법이 곧 측정이고, 측정은 OS의 일이다.
INTERLUDE · 다섯 달의 지층

각 달은 하나의 질문이었고,
다음 질문은 언제나 앞 질문의 답이 만든 부작용에서 나왔다.

1–2월 · 첫 상용 프로젝트 — 911커밋 · 통제 장치의 탄생 2–5월 · ai-rules — 368커밋 · 규칙의 일반화 5–7월 · keystone — 436커밋 · 강제·측정·자가진화 첫 상용 프로젝트 · 911 COMMITS ai-rules · 368 keystone · 436 THICKNESS = COMMITS · 2026.02 → 07
M1–3
"어떻게 통제하고, 일반화하나?"
M4
"문서는 말만 한다 — 어떻게 막나?"
M5
"선언과 실행의 소유자를 어떻게 나누나?"
M6–7
"정말 작동하나? 무엇을 빼도 되나?"
2월의 시스템은 규칙을 모았고,
7월의 시스템은 규칙을 의심한다.
TRANSMISSION 03 · 수신된 반론

Q. "규칙은 자산이 아니라 부채 아닙니까."

무용론 제3논거 — 쌓일수록 유지보수 대상이 된다는 주장
CONCEDED인정한다 — 실제로 그렇게 됐다

반박하지 않겠다. 세션마다 주입되는 규칙이 122개, 440KB까지 불어난 것을 어느 날 세어보고 알았다. 규칙 수를 자산으로 여기던 관념은 그날 공식 폐기됐다 — 규칙은 재고이자 부채가 맞다.

중요한 건 그 다음이다. 부채라는 걸 알았으니 갚았다 — 실효성 없는 규칙을 덜어내는 "다이어트"를 돌려 절반 이하로 줄이고, 재발 방지로 "추가 1건 = 기존 1건 증류" 래칫을 걸어 총량을 잠갔다. 무용론과 갈리는 지점은 여기다: 부채가 생긴다는 사실이 아니라, 부채를 측정하고 상환하는 장치가 있느냐.

세션 주입 규칙 수
RULE DIET · 2026-07-03
이전 다이어트 이전 — 세션당 122개 주입 122 이후 다이어트 이후 — 세션당 53개 주입 (−56.6%) 53 −56.6%
규칙 주입량 (KB)
RULE DIET · 2026-07-03
이전 다이어트 이전 — 세션당 440KB 주입 440 이후 다이어트 이후 — 세션당 195KB 주입 (−55.6%) 195 −55.6% · RATCHET LOCKED
READOUT — 규칙이 부채라는 지적은 옳다. 답은 규칙을 안 만드는 게 아니라 부채 장부를 만드는 것이었다 — 세고, 줄이고, 상한을 건다.
TRANSMISSION 04 · 수신된 반론

Q. "그 자동화가 오히려 사고를 만들지 않습니까."

무용론 제4논거 — 통제 장치가 새로운 위험 표면이 된다는 주장
CONCEDED인정한다 — 사례가 실재한다

이것도 반박하지 않겠다. 참조한 업스트림 운영 환경에서는 push 훅이 검증 에이전트를 소환하고, 그 에이전트가 작업을 마치며 다시 push해 훅을 또 부르는 무한 재귀로 54분간 프로세스 수백 개가 생긴 사고가 있었다. 우리 쪽에서는 등록된 훅이 조용히 죽은 채 30일을 보냈고, 검증 게이트가 수 주간 가짜 "이상 없음"을 보고했다. 전부 자동화 장치 자신이 일으키거나 숨긴 문제다.

그래서 지금 체계의 상당 부분은 자동화를 감시하는 자동화다. 훅이 살아있는지 재는 생존 신호, 게이트가 진짜로 막는지 확인하는 재검증, 반년마다 도는 "거짓 안전감" 감사. 이 재귀적 비용은 무용론이 정확히 짚은 지점이고, 규모가 작다면 정당화되지 않는다.

54
훅 재귀 폭주 (업스트림 환경) — 4중 방어로 이식
30
죽은 훅의 무증상 기간 — 생존 측정 도입 계기
24/24
가짜 "0건" 발각 후 부활한 게이트 통과
2.6%
현재 죽은 훅 비율 (1/38) — 임계 10% 이하
READOUT — 자동화는 사고를 자초한다 — 옳다. 그래서 결론은 "자동화를 믿어라"가 아니라 "자동화를 의심하는 것까지 자동화하라"다. 그 의심의 비용을 치를 규모인지가 관건이다.

판정 — 조건부

FINAL READOUT

무용론의 오류는 "필요 없다"에 있지 않다. 필요가 조건부라는 사실을 무시한 채 일반화하는 데 있다. 그리고 그 조건은 느낌이 아니라 측정할 수 있는 양이다 — 세션 빈도, 머신 수, 비가역 작업의 비중.

같은 잣대는 이쪽에도 적용된다. 하루 십수 세션을 여러 머신에서 돌리기에 수지가 맞는 것이지, 규모가 작으면 무용론이 옳다. 그래서 판정은 권장 사양표의 형태를 한다.

SPEC SHEET — 당신의 조건이 왼쪽이라면, 오른쪽까지만 갖추면 된다. 전부 올라갈 필요는 없다.
당신의 운영 조건충분한 장비비고
주 몇 회 사용규칙 파일 하나 ← ENOUGH언어·컨벤션·금지선. 하루면 만든다
매일 사용, 혼자+ 차단형 훅 1~3개가장 아픈 실수부터 — 시크릿 커밋·보호 브랜치·위험 명령
하루 5세션 이상+ 메모리 층같은 지적을 두 번 하게 될 때가 도입 시점
여러 머신 · 하루 수십 세션+ 측정 (생존·다이어트·기준선)이게 없으면 위의 것들이 서서히 썩는다

남은 병목도 적어둔다. 외부 성숙도 프레임 자가 평가 84.5점 중 가장 낮은 축은 이식성이다 — 이 체계는 나에게는 증명됐지만, 나 밖에서는 아직 증명되지 않았다. 그 증명을 위해 조각을 분리해 공개하는 것이 다음 일이고, 이 관측 일지가 그 첫 실험이다.

APPENDIX A 용어 여섯
하네스 (harness)AI 에이전트에 채우는 통제 장치 일체. 말의 마구에서 온 말.
AX 엔지니어링 OS하네스를 규칙·훅·메모리·측정까지 묶어 하나의 운영 체계로 만든 것.
훅 (hook)커밋 직전 등 특정 시점에 자동 실행되는 검사. 문서와 달리 어기면 차단한다.
게이트 (gate)통과 조건을 걸어두는 관문 — 통과/차단이 코드로 결정된다.
메모리 층대화·결정·교정을 세션이 끝나도 남게 색인하는 저장소.
가역성 등급 (R0–R2)되돌릴 수 있는가로 작업을 등급화 — 비가역(R2)은 확인 문구 재입력 필수.
APPENDIX B 다른 체계와의 대응표
흔한 대응물이 일지의 용어같은 질문
CLAUDE.md · Cursor rules · 시스템 프롬프트규칙 파일"에이전트가 뭘 알아야 하나"
pre-commit · CI 체크훅·게이트"어기면 어떻게 막나"
노트 · RAG · 메모리 플러그인메모리 층"세션이 끝나도 뭘 남기나"
eval 스위트 · 벤치마크측정"좋아졌다는 걸 어떻게 아나"
dotfiles · 온보딩 문서계층 프로파일"환경을 어떻게 복제하나"

진단 질문 — 왼쪽 열 중 "어기면 막는 것"과 "세션 넘어 남는 것"이 둘 다 있는가? 하나라도 없다면 TRANSMISSION 01이 당신의 미래일 확률이 높다.

APPENDIX C 남은 실측 몇 가지
메모리 층 자생률84.1%내 작업에서 추출된 사실 비율 — 다섯 달 전 0%
외부 수집251건/런6시간 주기 자동 수확 · 자동 채택 0건 (ORBIT 02에서 해부)
수확 판정 큐이슈 22 · 기각 29수확→사람 판단 게이트의 40일 기록