GEODE . 문서
GitHub
설정
레퍼런스

시스템 프롬프트 모드

기본 ON persona 주입, wrapper override가 붙는 audit-mode strip, 그리고 mutator의 program.md 계약을 다룹니다.

같은 요청이라도 시스템 프롬프트는 모드에 따라 다르게 조립됩니다. 빌더는 core/agent/system_prompt.pybuild_system_prompt 하나이고, env 플래그 두 개가 무엇을 싣고 무엇을 벗길지 정합니다.

기본 모드: persona 주입(기본 ON)

기본값에서 GEODE는 자신의 persona를 주입합니다. GEODE.md의 Identity, Voice & Conduct, Operating Principles, RUNTIME CANNOT 섹션을 추려 <agent_identity> 레이어로 모든 컨텍스트에 싣습니다. 선언된 소울과 런타임 가드레일이 실제로 모델에 도달하게 하기 위함입니다. GEODE_PERSONA=off로 끄면 정체성 프리앰블 없이 베이스 모델의 얇은 래퍼로 동작합니다. audit-mode가 켜져 있으면 이 플래그와 무관하게 강제 OFF입니다.

static prefix           턴 사이 불변, 캐시 적중
  <agent_baseline>      항상 포함. 기본 능력
  <agent_identity>      기본 ON; GEODE_PERSONA=off로 제외
<dynamic_context>       턴마다 변함, 캐시 제외
  <model_card> <current_date>
  <project_memory> <agent_learning> <runtime_rules> <user_context>
</dynamic_context>

audit-mode: GEODE 맥락 strip

GEODE_AUDIT_UNRESTRICTED=1이면 GEODE 고유 레이어를 전부 벗깁니다. 정체성, 메모리, 사용자 컨텍스트가 빠지고 model_card, current_date, 호출자의 system_suffix만 남습니다. 근거는 측정 결과입니다. Petri의 auditor는 시나리오의 정체성을 끝까지 통제해야 하는데, GEODE 프리앰블이 트랜스크립트를 오염시켰습니다. 플래그는 geode audit--unrestricted가 inspect 서브프로세스 앞에서 설정합니다.

wrapper override: 변이된 스캐폴드 주입

자기개선 루프가 진화시키는 것이 바로 이 static 영역의 wrapper 스캐폴드입니다. 해석은 두 단계입니다.

  • GEODE_WRAPPER_OVERRIDE env가 가리키는 JSON 파일. 감사 서브프로세스 훅입니다. 설정되어 있으면 파일이 반드시 존재하고 파싱돼야 하며, 실패는 fatal입니다. 잘못된 wrapper로 쿼터를 조용히 태우는 것보다 감사가 중단되는 편이 낫기 때문입니다.
  • env가 없으면~/.geode/autoresearch/handoff/wrapper-sections.jsonSoT 파일. 일상 geode 실행이 승격된 wrapper를 자동으로 집어 듭니다. 여기서는 스키마 실패가 WARNING 후 기본 prefix로 우아하게 내려갑니다. 손상된 루프 산출물이 GEODE를 벽돌로 만들면 안 되기 때문입니다.

audit-mode에서도 override가 시스템 프롬프트의 베이스가 됩니다. override가 없으면 동일한 도메인 중립 베이스로 폴백해, 감사 타깃이 항상 GEODE 스캐폴드를 입도록 보장합니다. 스캐폴드가 실제로 프롬프트에 도달했는지는 빌드 때마다system_prompt.scaffold 진단으로 기록됩니다.

program.md 계약: mutator의 프롬프트

변이를 제안하는 mutator 에이전트의 시스템 프롬프트는 코드 리터럴이 아니라 패키지와 함께 출하되는core/self_improving/program.md입니다. 러너 (core/self_improving/loop/mutate/runner.py)가 매 호출 디스크에서 읽고, 단일 변이로 범위를 좁히는 계약을 뒤에 붙입니다. 파일을 못 읽으면 조용한 폴백 대신 크게 실패합니다. 교체가 필요하면 훅 핸들러가 program_md 본문을 공급하는 단일 제어 지점을 씁니다.

실패 모드

증상원인해법
감사가 시작 전에 중단GEODE_WRAPPER_OVERRIDE 경로가 없거나 스키마 불일치의도된 fail-loud입니다. 파일 경로와 dict[str, str] 스키마를 고칩니다.
승격했는데 일상 실행이 기본 프롬프트SoT 파일 손상으로 복구 폴백로그의 WARNING을 확인하고 wrapper-sections.json을 복구합니다.
얇은 래퍼를 원하는데 GEODE가 persona를 주입함persona 기본 ONGEODE_PERSONA=off로 끕니다.

다음