05 파이스 탄생 — 닷새 만에 뼈대와 안전망
이 페이지 목차
목적만든 순서1 · 첫 커밋부터 자기 업그레이드 (8/2)2 · Phase 1 개통 · Phase 2 시켜놓고 잊기 (8/3)3 · Phase 3 예약 · Phase 4 기억 · Phase 5 손발 (8/4)4 · Phase 6 구조대 (8/5)5 · Phase 7 스스로 좋아지는 구조 (8/6)6 · HUD · 뇌 그래프 (8/6)7 · 실제 사고 — 경로 도구가 아무 경로나 받았다 (8/6)8 · 외부 패키지 0 · 권한은 기본 OFF (8/2~8/6)💡 설명함정과 배운 것출처뒷이야기 · 5 / 17단계 · 2026-08-02 ~ 08-06 · 갈래 파이스
이전 단계: 04 옵시디언 '제2 두뇌' · 다음 단계: 06 두뇌 관문 — omniroute · 9router · 사용량 절감
핵심 요약
| 항목 | 내용 |
|---|---|
| 이 단계에서 한 일 | 파이스(PAIS, 목표만 말하면 스스로 도구를 골라 실행하는 개인 비서 AI)의 뼈대 — 도구 루프(모델이 도구를 골라 부르는 반복) · 잡 큐(할 일 줄) · 예약 · 기억 — 와 안전망 — 구조대(망가지면 되살리는 감시 프로그램) · 시험 틀 · 승인 한 번 배포 — 을 닷새 만에 세웠다. 중간에 파이스가 만든 도구가 아무 경로나 받는 사고도 겪고 막았다. |
| 기간 | 2026-08-02 ~ 08-06 (닷새) |
| 규모 | 커밋 141개(작성자 이름이 PAIS인 것 45개). 첫 커밋 8/2 11:16 → 마지막 8/6 18:59. JS 코드 8파일 698줄 → 29파일 7,894줄 |
| 다룬 도구 | Node.js(외부 패키지 0) · OpenAI 호환 API · 도구 루프 · runner.js 구조대 · selftest · git 자동 백업 · ntfy · iPhone 단축어 · graphify |
| 결과 | 도구 3종 → 47종 · 능력(권한) 0 → 9종(기본 ON은 1종) · selftest 항목 10 → 19 · 외부 패키지 0개 |
| 공개 범위 | 사내(로그인 뒤) — 🔒 항목은 넣지 않음 |
한 줄 요약 — 파이스는 닷새 사이 커밋 141개로 뼈대와 안전망을 세웠고, 고치다 깨져도 되돌아오는 길을 먼저 만든 것이 핵심이다.
5단계 · 파이스 탄생
목적
파이스는 목표만 말하면 스스로 도구를 골라 실행하는 개인 비서 AI다. 스스로 코드를 고치는 비서가 목표였는데, 고치다 깨지면 고칠 수단까지 같이 죽는다. 그래서 몸통을 만드는 일과 되돌릴 길을 만드는 일을 같이 해야 했다.
첫 커밋(저장 기록)은 8/2 11:16에 남겼다. 이미 짜 둔 코드(도구 3종)를 'baseline'이라는 이름으로 처음 저장한 것이다. 닷새째인 8/6 18:59까지 커밋 141개를 쌓았다. 141개 가운데 45개는 작성자 이름이 PAIS다. 제목으로 가르면 self-upgrade 33개 · 자동 백업 9개 · 기타 3개(첫 커밋 · 롤백 수리 · 설명서)다. self-upgrade 중 2개는 파이스가 커밋하지 못하고 남긴 변경을 나중에 같은 이름으로 올린 것이다. 사람 이름으로 낸 96개 중 74개에는 Claude 공동 저자 표시가 붙어 있다.
날짜별로는 이랬다. 도구·능력은 그날 마지막 커밋에서 센 값이다.
| 날짜 | 커밋 | 그중 작성자 PAIS | 그날 한 일 | 날 마감 도구 | 날 마감 능력 |
|---|---|---|---|---|---|
| 8/2 | 21 | 15 | 첫 커밋 · 자기수정 · 권한 등급제 · 보안 점검 | 13 | 5 |
| 8/3 | 14 | 0 | Phase 1 고정 주소 · Phase 2 잡 큐 · 알림 | 16 | 6 |
| 8/4 | 5 | 0 | Phase 3 예약 · 4 기억 · 5 손발 | 32 | 9 |
| 8/5 | 43 | 20 | Phase 6 구조대 · 기억 v2 · 첨부 · 이벤트 감지 | 37 | 9 |
| 8/6 | 58 | 10 | Phase 7 · HUD · 뇌 그래프 · 사고 수리 | 47 | 9 |
| 합계 | 141 | 45 |
8/2 00:00 이전 커밋은 0개다. 저장소의 첫 커밋이 8/2 11:16이다(10/8 현재 전체 694개 중 첫 번째).
만든 순서
1 · 첫 커밋부터 자기 업그레이드 (8/2)
첫 커밋 8분 뒤(8/2 11:24) 자기수정 도구가 처음 돌았다. 고치기 전 백업, 문법 검사, 실패하면 원상 복구(롤백)가 한 묶음이다.
- 왜: 스스로 코드를 고치는 비서가 목표였다. 고치다 깨지면 고칠 수단까지 같이 죽는다. 되돌릴 길이 먼저 필요했다.
- 어떻게:
modify_own_code는 git 커밋(저장 기록)으로 백업 → 파일 쓰기 →node --check(문법 검사) → 실패하면 되돌림 → 성공하면self-upgrade:커밋 순서다. 파일을 통째로 받는 방식이다. - 권한 등급제(능력마다 켜고 끄는 스위치)도 자기수정 도구와 같은 커밋(11:24 첫 백업)에 처음 들어갔다. 자기수정은 위험도 high, 기본 OFF.
- 이 날의 기록에는 남의 사례 조사가 없다. 첫 조사 기록은 8/5다.
- 결과: 8/2 커밋 21개 중 15개가 작성자 PAIS(self-upgrade 7 · 백업 5 · 기타 3). 도구 3 → 13종, 능력 0 → 5종.
- 파이스가 자기수정으로 파일 받기·지우기 도구와 파일함 화면을 추가하고, 대화 루프 한도를 12 → 40으로 올렸다.
2 · Phase 1 개통 · Phase 2 시켜놓고 잊기 (8/3)
8/3 17:10 고정 주소로 어디서나 접속(Phase 1)이 열렸고, 19분 뒤 17:29에 할 일 줄(잡 큐)과 완료 알림(Phase 2)이 붙었다.
- 왜: 창을 닫거나 폰 화면이 잠기면 연결이 끊기고 작업도 같이 멈췄다. 연결이 닫히면 중단하는 코드였다. 시켜 놓고 잊을 수 없으면 비서가 아니다.
- 어떻게: 대화 한 턴을 잡(작업 하나)으로 보고 연결과 분리했다. 동시 1개만 돌고, 더 보내면 409(거절)다. 재접속하면 진행분을 다시 보여 준다(진행 이벤트 400건까지 보관).
- 완료 알림은 ntfy(무료 푸시 서비스)와 직접 만드는 브라우저 알림(웹 푸시)을 비교해 ntfy를 골랐다. 요청 한 줄이면 되고, 본문은 최소한만 보낸다.
- Phase 1은 이름 있는 터널(밖으로 길 열기), 아이폰 홈 화면 앱(PWA), 대화의 서버 저장(기기끼리 이어짐)이다.
- 결과: 전: 창을 닫으면 작업 중단. 후: 보낸 2초 뒤 연결을 끊어도 끝까지 돌고 서버가 대화에 기록했다(실검증).
jobs.js94줄. 도구 13 → 16종(일정·메일·문자 읽기 3종, 새 능력personal_data는 high).
3 · Phase 3 예약 · Phase 4 기억 · Phase 5 손발 (8/4)
8/4 하루 커밋 5개로 예약 실행(Phase 3), 예전 대화 찾기(Phase 4), 웹 검색·백업·아이폰 단축어(Phase 5)를 붙였다.
- 왜: 시켜야만 움직이면 비서가 아니다. 모델은 최근 메시지 40개만 받아서 그보다 오래된 일은 잊었고(서버에는 200개가 저장돼 있었다), 웹은 주소를 알려 줘야만 열 수 있었다.
- 예약: 30초마다 확인하는 단순 시계다. cron(복잡한 시간 규칙) 대신 매일·매주·한 번 세 가지만 지원한다. 서버가 꺼져 놓친 회차는 켜진 뒤 한 번 실행한다. 혼자 모델을 부르므로 능력
scheduler는 기본 OFF. - 기억: 요약 파이프라인(매 턴 모델 비용, 금방 낡음) 대신 검색을 택했다. 서버에 이미 있는 200개를
search_history로 찾는다. 주간 회고는 코드 0줄, 월요일 아침 예약 하나다. - 손발:
web_search,backup_workspace(저장은 자동, 올리기는 사람), 아이폰 단축어용simple모드(최종 답만 돌려줌). - 결과: 8/4 하루 도구 16 → 32종, 능력 6 → 9종(밤 22:59 화면 캡처·클립보드·구글 캘린더/Gmail 포함).
- 예약 시험: 50초 뒤 한 번 실행을 심고 재시작 → 스스로 실행됐다. 쓰지 않는 JS 70줄을 지웠다.
4 · Phase 6 구조대 (8/5)
8/5 11:57~13:11, 74분에 구조대를 세웠다. 헬스 체크(살아 있는지 찔러 보기)·자동 되돌리기·last-good(마지막 정상 버전 기록)·비상 화면이다.
- 왜: 자기수정이 실패하면 고칠 수단까지 같이 죽는다. 채팅 화면을 파이스 서버가 내보내서, 죽으면 "고쳐 줘"라고 말할 곳도 없다. 8/5 오전에 겪었다.
- 어떻게: 감시 프로그램(runner.js)이 재시작 후 90초간 5초 간격으로 찔러, 3연속 통과해야 그 커밋을 last-good에 적는다. 못 하면 last-good으로
git reset --hard(강제 복원) 후 다시 띄운다(MOSS 논문 수치). - 찔러 보기는 모델을 부르지 않고 내부 5가지(설정·권한·기억·대화 기록·도구 설명서)만 본다. 모델 장애는 남의 장애라 되돌릴 이유가 아니다.
- 비상 화면(rescue.js)은 파이스 서버가 아니라 감시 프로그램이 띄운다. 자기수정 도구는 runner.js · rescue.js · last-good을 못 고친다(셸 명령 우회는 남은 한계). 안전장치가 에이전트 손 안에 있으면 안전장치가 아니다.
- 결과: runner.js 34 → 167줄, rescue.js 0 → 166줄.
- 문법은 맞고 기능만 깨진 커밋이 90초 검사에 걸려 자동 복구됐다(8/5엔 한 글자를 바꿔 시험, 설명서를 깨 다시 해 보니 약 92초).
- 설명서를 망가뜨리니 얕은 검사는 정상(200), 깊은 검사는 실패(503)였다.
5 · Phase 7 스스로 좋아지는 구조 (8/6)
8/6 00:32~02:01, 89분에 시험 틀·스킬 라이브러리·노트 화면을 만들고, 06:24엔 승인 한 번으로 배포까지 끝나게 했다(Phase 7a~7h).
- 왜: 문법 검사와 90초 검사는 "문법은 맞는데 기능이 죽은 코드"를 통과시킨다. 능력을 얻는 길도 코어 수정(고위험)뿐이었다. 승인은 세 번 받아야 했고, 푸시는 재시작에 끊겨 영영 안 갔다.
- 어떻게: 시험 틀(selftest.js)은 모듈마다 스스로 시험을 돌리고, 안 바뀌어야 할 규칙(불변식)을 직접 본다. 통과해야 커밋하고, 통과한 버전만 last-good이 된다. 평가 틀은 평가 대상이 못 지워야 한다는 DGM 논문(스스로 고치는 에이전트 연구)의 원칙을 따랐다.
- 스킬: 성공한 코드를 이름 붙여 파일 하나로 쌓고(Voyager 논문 방식), 스스로 시험이 통과해야 등록. 코어는 안 건드린다.
- 승인 한 번: 승인 사실을 파일에 남기고, 재시작한 파이스가 이어서 올린다. 되돌아갔으면 올리지 않는다.
- 결과: 시험 항목 10(01:49) → 19(18:59). 도구 37 → 47종.
- 재현:
ics.js를 기능만 깨면 문법 검사 종료코드 0, selftest는 1. - 승인 3번 → 1번. 노트 화면(7d)은 서버 코드 0줄.
6 · HUD · 뇌 그래프 (8/6)
8/6 11:00~18:59, 파이스의 '뇌' 화면을 옵시디언 노트 그래프(NOTES)와 graphify가 뽑은 자기 코드 그래프(CODE)로 바꾸고, 계기판식 HUD 화면을 얹었다.
- 왜: 뇌 화면이 무작위 애니메이션이었다. 파이스가 아는 것(노트)과 자기 몸(코드)을 실제 데이터로 보고 싶었다.
- 어떻게: 노트는 점,
[[링크]]는 선이다. 첫 판은 파이스가 스스로 만들었다(11:00 데이터 71줄, 11:17 화면). 12:00 힘 기반 배치·확대·끌기로 다시 썼다. force-graph 같은 라이브러리는 외부 패키지 0 원칙으로 안 썼다. - 코드 그래프: graphify(외부 명령행 도구, 의존성 아님)가 만든 파일을 읽는다. 453노드·904엣지·22무리 중 연결 많은 220개만 그린다.
- HUD: 대화는 명령창식으로 흐려지고, 패널은 끌어 배치하며, 밤낮 테마는 06:30~18:30 기준이다.
- 결과: 코드 그래프 허브 상위 app.js(73)·tools.js(60)·server.js(54)는 실제 구조와 맞았다.
- 색인 한 번에 그래프 점이 2,465개가 되자 무리 필터와 800노드 상한을 넣었다.
- 노트 3,000개로 다시 재 보니(이 PC) 서버가 멈추는 시간이 0.7~2.9초 → 0.2~0.45초로 줄었다(잴 때마다 값이 달랐다). 폴더 훑기가 아직 동기라 남은 몫이다.
- 노트 쪽 이야기는 04단계 옵시디언 '제2 두뇌'에 있다.
7 · 실제 사고 — 경로 도구가 아무 경로나 받았다 (8/6)
8/6 파이스가 스스로 만든 도구 둘이 아무 경로나 받아, 기본 권한만으로 디스크와 NAS(공유 저장 장치) 전체를 읽을 수 있었다. 10:45에 허용 구역 3단과 거부 시험으로 막았다.
- 왜: 파이스가 노트 연동 도구 6종을 만들었다. 노트 폴더용은 경계를 지켰는데, 절대경로(드라이브부터 적는 전체 경로)를 받는 둘(문서 읽기·폴더 색인)에는 경계 검사가 아예 없었다. 위험도 low·기본 ON 능력 하나로 열렸고, 비밀이 든 설정 파일까지 닿는 범위였다. 다른 능력과 묶이면 밖으로 샐 수 있다고 봤다. 설계 문서의 "파일 도구는 작업공간 밖으로 못 나간다"는 문장이 거짓이었다.
- 어떻게: 허용 구역 3단. ① 파이스 소스 폴더는 항상 거부 ② 작업공간·노트 폴더는
files_workspace③ 그 밖은 설정에 적어 둔 폴더 안 +personal_data(high, 기본 OFF). 적어 둔 폴더는 기본이 빈 목록이다. - 경계 검사는 함수 하나(
docPath)를 거친다. - 거부 시험: 권한을 전부 켜도 허용 밖 경로 6종이 거부되는지 시험 틀(selftest)에 넣었다.
- 남의 사례를 조사한 기록은 없다.
- 결과: 도구가 코드에 들어간 09:31 → 수정 10:45, 74분.
- 직접 재현(문서 읽기 도구, 기본 권한, 허용 밖 폴더의 시험 파일): 수정 전 내용이 읽힘 → 수정 후 거부.
- 거부 시험 6/6. 수정 커밋에서 selftest 15항목 통과, 이날 마감 19항목.
8 · 외부 패키지 0 · 권한은 기본 OFF (8/2~8/6)
닷새 동안 지킨 원칙 둘, 외부 패키지 0개와 위험한 능력 기본 OFF. 도구·권한 수는 코드에서 센다(문서에서 숫자를 아예 뺀 것은 9/16).
- 왜: 파이스는 설계 문서를 읽고 자기수정의 근거로 삼는다(문서 첫머리에 적혀 있다). 문서 숫자가 틀리면 틀린 전제가 된다. 외부 패키지 0의 이유를 적은 글은 "개발 원칙" 한 줄뿐이라 이유는 확인 못 함. 권한은 커밋에 이유가 있다(민감도 · 비용).
- 외부 패키지 0:
package.json에 의존성이 없다. 아이콘 PNG, PDF·엑셀 읽기, 서명(JWT, 인증 토큰)은 Node 내장 모듈로, 힘 기반 그래프는 브라우저 코드로 직접 짰다. graphify는 패키지가 아니라 외부 명령행 도구다. - 기본 OFF: 능력(권한) 9종 중 기본 ON은
files_workspace하나. 위험도 low 1 · medium 4 · high 4. 읽기 전용이어도 개인 정보는 high, 혼자 모델을 부르는 예약은 OFF. - 숫자는 코드에서: 도구는
toolSchemas.length, 능력은CAPABILITIES의 키를 센다. - 결과: 8/2 11:16 도구 3·권한 제도 없음 → 8/6 저녁 도구 47·능력 9. 기본 ON은 제도가 생긴 11:24부터 줄곧 1종.
- JS 8파일 698줄 → 29파일 7,894줄, 외부 패키지 0.
- 참고, 10/8: 도구 72 · 능력 12 · 기본 ON 1종.
💡 설명
- 커밋: 코드를 바꿀 때마다 남기는 저장 기록. git(버전 관리 도구)이 쌓는다.
- 롤백: 고치다 망가졌을 때 바꾸기 전 상태로 되돌리는 것.
- 도구 루프: 모델이 도구를 하나 고르고, 결과를 받고, 다시 고르는 반복. 파이스 몸통이다.
- 잡 큐: 시킨 일 하나(잡)를 줄 세워 두고 하나씩 돌리는 할 일 줄. 화면 연결과 따로 돈다.
- 능력(권한): 파일 읽기·명령 실행 같은 일을 켜고 끄는 스위치. 위험한 것은 기본 OFF다.
- 헬스 체크: 서버가 살아 있는지 일정한 간격으로 찔러 보는 검사. 얕은 검사는 응답만, 깊은 검사는 내부 5가지를 본다.
- last-good: 마지막으로 정상이라고 확인된 버전의 기록. 망가지면 여기로 돌아간다.
- 구조대(runner.js): 파이스 서버 바깥에서 서버를 지켜보다가 망가지면 되돌리는 감시 프로그램.
- selftest(시험 틀): 모듈마다 스스로 시험을 돌려 보는 프로그램. 통과해야 커밋하고, 통과한 버전만 last-good이 된다.
- 불변식: 어떤 수정이 있어도 안 바뀌어야 하는 규칙(예: 위험 능력은 기본 OFF).
- 절대경로: 드라이브 이름부터 적는 전체 경로. 도구가 이걸 아무거나 받으면 작업공간 밖까지 열린다.
- 외부 패키지: 남이 만든 부품 묶음. 파이스는 쓰지 않는다(
package.json에 의존성 0).
함정과 배운 것
- (01) 롤백이 기존 파일만 되돌린다: 깨진 새 파일로 시험하니 롤백이 기존 파일만 되돌려 깨진 파일이 남았고 다음 백업에 커밋됐다. 44초 뒤 고쳤다.
- (01)
git add -A는 남의 작업까지 쓸어 담는다: 백업이 바뀐 파일을 전부 올리는 명령이라 그때까지 안 올린 작업 전체(+549/−279줄)가 첫 백업에 딸려 갔다. 9/26에야 고친 파일만 올리게 바꿨다. - (01) 문법 검사는 문법만 본다: 기능이 죽은 코드는 못 거른다. → 4, 5번.
- (01) 명령 실행기에 문자열을 그대로 넘기지 않는다: 같은 날 22:56 보안 점검에서 커밋 메시지가 셸(명령 실행기)에 넘기는 문자열에 섞이던 구멍을 인자 배열(명령과 값을 따로 넘기는) 방식으로 막았다.
- (02) 재시작하면 진행 중인 잡이 사라진다: 끝난 결과는 기록에 남는다.
- (02) 알림이 외부 서비스를 지나간다: 토픽 이름(알림 채널 이름)을 아는 사람은 누구나 받으므로 비밀로 다뤘다.
- (02) 본체가 바뀌면 그 환경에 없는 도구가 죽는다: 본체를 Windows 회사 PC로 정한 뒤, macOS 전용 도구 3종이 오류로 죽지 않고 안내만 하게 막았다.
- (03) 검색 페이지의 글자 패턴을 읽는 도구는 깨진다:
web_search는 정규식으로 읽어서 페이지 모양이 바뀌면 깨진다. - (03) 연동 방식은 막혀야 안다: 구글 연동은 방향이 두 번 바뀌었다. 8/4 밤 디바이스 플로우(코드 입력 방식)로 붙였고, 8/5 아침 일정 읽기는 캘린더의 비공개 주소(ICS, 일정 파일)를 읽는 방식으로 대체했다. 8/5 낮 Gmail은 구글이 그 방식으로 권한을 안 줘 loopback(내 PC로 되돌려받기) 방식으로 바꿨다.
- (04) 비상 화면은
prompt()암호창에 기대면 안 된다: 안 뜨는 환경이 있었다. - (04) 방어를 시험하다 스스로를 잠갔다: 암호 무작위 시도 방어를 시험하니 로그인 전 자동 확인이 약 1분 만에 스스로를 10분 잠갔고, 잠금이 올바른 암호도 막았다. 순서를 인증 → 차단으로 바꿨다.
- (04) 문법 검사를 통과한 파일 덮어쓰기: 끝낸 3시간 25분 뒤(16:36) 자기수정이 server.js를 348줄 → 16줄로 덮었다. 문법 검사는 통과했고 사람이 66초 만에 복구했다.
- (05) 시험 틀이 종료코드만 보면 속는다: 시험 틀이 자기 시험을 지운 코드를 통과시켰다. 통과 문구까지 확인하게 고쳤다.
- (05) 프로그램은 살아 있는데 멈추는 고장: PDF 첨부가 서버를 멈췄다(글자 패턴 정규식 폭주, 01:02 수리). 프로그램은 살아 있어 감시자가 못 봐서 상시 워치독(계속 지켜보는 검사, 7f)이 생겼다.
- (05) 권한 없는 길로 다시 만든다: 7h는 작업 스케줄러로 먼저 만들었다. 권한 거부로 21분 뒤 권한이 필요 없는 되살림 스크립트(keeper)로 다시 만들었다.
- (05) 문서의 ✅를 믿지 말고 실측한다: 문서엔 ✅였는데 상시 워치독(7f)은 한 번도 켜진 적이 없었다. 12:08에 실측으로 알았다.
- (06) 헬스 체크 200이어도 서버는 멈춰 있을 수 있다: 그래프 요청이 파일을 하나씩 기다리며(동기) 읽어, 페이지를 열 때마다 서버 전체가 멈췄다. 헬스 체크는 200이었다. 비동기, 파일 2,000개·64KB 상한, 30초 캐시(결과 잠시 보관)로 고쳤다.
- (06) 한글 파일을 PowerShell로 다시 쓰면 깨진다: 캐시 번호(새 파일을 받게 하는 번호) 하나 올리려고 PowerShell로 index.html을 다시 쓰자 한글 229자가 깨졌다. selftest에 깨진 글자 0 검사를 넣었다.
- (07) 시험이 일부 도구만 보면 새 도구가 샌다: 시험이 상대경로 도구만 봤다. 경로를 받는 도구가 새로 생기면 시험 목록에 넣으라고 설계 문서에 적었다.
- (07) 경계는 도구마다 새로 뚫린다: 8/2에도 같은 계열(접두사만 비교해 이름이 비슷한 옆 폴더가 통과)을 고쳤다.
- (07) 확인 못 함: 밖에서 실제로 읽힌 기록이 있는지는 확인 못 함.
- (08) 문서 숫자는 어긋난다: 설계 문서에 "도구 41종"이 8/6 01:57에 적혔는데 그날 저녁 코드는 47종이었고, 그 문장이 9/16까지 41일 남았다.
- (08) 직접 짠 부품은 직접 책임진다: 손으로 쓴 PDF 읽기가 정규식 폭주로 서버를 멈췄다(8/6).
- (08) 원칙은 시험이 있어야 지켜진다: selftest가 "기본 OFF 8종 · 기본 ON 1종"을 매번 본다.
출처
- 커밋(저장소
pais_project): 84a6aa0 · 91bf3df · 1a935cd · 569f59b · c143587 · 7ddb38b · 7ce568a(1) / d151144 · cdd6680 · 8df2e13 · 67c1f97 · 070aa5f · c84eb4b(2) / 1619ca5 · 84ba774 · 083c500 · 15742b7 · b412d1f · d406b8c(3) / 6c12709 · 8ebdd4f · 569828f · c387d55 · 0906197 · 78856a4 · f8fb593 · 61288f4(4) / 7aeb2e6 · 848ce5f · 67df8cd · 2acc53a · 16bfe15 · 0460cdc · 2667832 · cba4d31 · 66ea292 · 14aa557 · 71b4234(5) / 6412c8d · 51ce0fd · af56056 · d37b4b4 · ec58939 · 9b279c9 · 7bfe22b · 17673f2(6) / 7dcf958 · a7ab0f3(7) / 37521c4(8) - 문서: ROADMAP.md Phase 1~7 · ARCHITECTURE.md(파일 경계 표)
- 기억 노트: weekly-code-review · pais-hud-and-graph
- 숫자를 센 명령과 결과: 같은 폴더
checks.md
← 04 옵시디언 '제2 두뇌' · 06 두뇌 관문 — omniroute · 9router · 사용량 절감 →