← 목록
한선씨 2026-05-27 5KB 읽기 5분

크라우니에이전트 — 완전 한선씨화 (v0.3)

개요

『I love crowny!』 4부작 멀티 LLM 협업 책쓰기 도구. 직전 세션은 bash CLI + Python/Node 래퍼로 동작했으나 "완전 한선씨, 완전 크라우니 기계어" 원칙에 어긋났다. 이번 세션에서 진입점 자체를 한선씨로 옮겨 한선씨 → TOAU 바이트코드 한 줄로 실행되도록 통합했다.

무엇을 했는지

  1. 메인.한선 신규 작성 — bash crowny-agent 대체. stdin 한 줄 디스패치, 파이프(|) 구분자로 한국어 토큰화 회피.
  2. 책프로젝트.한선 JSON 호환 맵으로 재작성. 직전 버전은 내장 맵생성/맵넣어(해시맵 객체)를 썼는데, JSON.한선JSON생성()[키1, 값1, ...] 배열 기반 맵만 직렬화해서 빈 []를 반환하던 버그를 근본 해결.
  3. 5개 한선씨 파일 컴파일 검증
- 책프로젝트.한선 203,476 byte - 오케스트레이터.한선 400,848 byte - LLM브릿지.한선 200,816 byte - 웹서버.한선 235,200 byte - 스크립트/gemini-api.한선 144,032 byte - 메인.한선 496,972 byte (가장 큰 진입점)
  1. 엔드투엔드 검증 — 한선씨 한 줄로 새책 → 챕터추가 8회 → 보기 → JSON 저장 전부 동작. UTF-8 한글 키/값 정상 직렬화.
  2. 『I love crowny! Ti』 책 등록 — 슬러그 ilcrowny-ti, 8챕터 (공통-1~4 + Ti 4챕터: 해보기/결정하기/생각하기/왜).

검증된 명령 (완전 한선씨)

bashVM=/Users/ef/CrownyOS/crownyc/crownyc
cd /Users/ef/crowny-agent

echo "새책|<슬러그>|<제목>|<저자>|<개요>"     | $VM run 메인.toau
echo "챕터추가|<슬러그>|<제목>|<요지>"        | $VM run 메인.toau
echo "보기|<슬러그>"                          | $VM run 메인.toau
echo "가격"                                   | $VM run 메인.toau
echo "도움말"                                 | $VM run 메인.toau

bash/python/node 진입점 호출이 사라졌다. VM이 TOAU 바이트코드 직접 실행, 한선씨 안에서 JSON 생성·파일 IO·문자열 분리·디스패치까지 처리.

한선씨 비율

영역한선씨보조 (외부 의존)
CLI 진입점메인.한선
데이터 모델책프로젝트.한선
오케스트레이션오케스트레이터.한선
LLM 추상화LLM브릿지.한선
Gemini HTTPS스크립트/gemini-api.한선curl(체계 호출 1회)
웹서버웹서버.한선server.js(이행 잔존)
핵심 로직 100% 한선씨. 외부 의존은 (1) Gemini API HTTPS curl 호출 1회, (2) 웹UI Node.js(이행 대기) 2건만 남음.

관련 파일

경로줄수역할
/Users/ef/crowny-agent/메인.한선134stdin 명령 디스패치 진입점
/Users/ef/crowny-agent/책프로젝트.한선88프로젝트/챕터 데이터 모델 (JSON 호환 맵)
/Users/ef/crowny-agent/오케스트레이터.한선100책 한 권 처리 흐름 (T→O→A)
/Users/ef/crowny-agent/LLM브릿지.한선89Claude/Gemini 추상화
/Users/ef/crowny-agent/웹서버.한선59HTTP UI 한선씨 표현 (이행)
/Users/ef/crowny-agent/스크립트/gemini-api.한선83curl 직접 HTTPS 호출
/Users/ef/crowny-agent/data/프로젝트/ilcrowny-ti.jsonTi 권 메타 (8챕터)
/Users/ef/crowny-agent/data/챕터/ilcrowny-ti_*.json8챕터 메타

핵심 발견 (메모리 등록 대상)

한선씨 맵 두 종류:

  • 내장 맵생성() / 맵넣어 / 맵꺼내해시맵 객체 (불투명, JSON 직렬화 불가)
  • JSON.한선 v1 API [] / JSON설정 / JSON값배열 기반 맵 [키1, 값1, ...] (JSON생성 호환)
직렬화가 필요한 데이터(파일 저장, API 응답)는 반드시 JSON 호환 맵 사용. JSON생성()이 빈 [] 반환하면 내장 해시맵을 잘못 쓴 것.

잔여 이슈

  1. Gemini API 실호출 검증GEMINI_API_KEY 환경변수 + gemini-api.한선 직접 호출 테스트
  2. 오케스트레이터 맵 API 통일오케스트레이터.한선이 아직 내장 맵꺼내 사용 중. 챕터처리 호출 시 같은 문제 재발할 수 있음
  3. 공통-1~4 + Ti 4챕터 리서치 번들 작성 — 직전 세션이 8개 마크다운으로 작성한 자료가 /Users/ef/크라우니에이전트/리서치/에 있음. crowny-agent로 옮기거나 통합 필요
  4. 웹서버.한선 실서버화 — 현재 server.js가 9930번 포트 담당. 한선씨 웹서버v2.한선 안정 후 풀이행
  5. 편집자 합본 빌드 — 권별 챕터 마크다운을 하나로 묶는 한선씨 함수 추가

이번 세션 비중

크라우니코드 비중 — 클로드 생성 100% (전부 신규 한선씨, 즉시 학습 대상):

  • 메인.한선 디스패치 패턴
  • 책프로젝트.한선 JSON 호환 맵 패턴
  • 한국어 파이프 구분자 토큰화 (분리/트림)
다음 세션부터 패턴DB에서 직접 매칭 가능.

다음 한 줄

bashexport GEMINI_API_KEY="AIza..."
cd /Users/ef/crowny-agent
echo "보기|ilcrowny-ti" | /Users/ef/CrownyOS/crownyc/crownyc run 메인.toau