이 페이지는 순수한 경로 색인입니다. 경로가 어떻게 이어지는지는 아키텍처 심화가, 계층이 왜 이렇게 나뉘는지는 왜 5계층인가가 다룹니다.
생성된 아키텍처 인벤토리
아래 값은 문서에 손으로 복사한 수치가 아니라, CI가 검증하는 결정적 JSON 스냅숏을 이 페이지가 직접 렌더링한 결과입니다. site/src/data/geode/architecture-baseline.json
| 측정값 | 현재 트리 |
|---|---|
| 프로덕션 Python 파일 | 538 |
| 테스트 Python 파일 | 671 |
| 도구 정의 / 실행 등록 / 유효 스키마 | 78 / 81 / 78 |
| HookEvent 멤버 | 56 |
| 기본 LLM 어댑터 | 8 |
| 모듈 수준 ContextVar | 27 |
| core → plugins import 지점 / 파일 | 31 / 14 |
| import-linter 예외 edge | 24 |
최상위 진입 모듈
| 모듈 | 역할 |
|---|---|
core/runtime.py | GeodeRuntime 부트스트랩 |
core/paths.py | 모든 디렉터리 경로의 단일 해석 지점 |
core/mcp_server.py | geode-mcp 진입점 (stdio MCP 서버) |
core/async_runtime.py | async 이벤트 루프 헬퍼 |
Self-Improving
| 서브시스템 | 루트 | 핵심 모듈 |
|---|---|---|
| 루프 드라이버 | core/self_improving/ | train.py, campaign.py, prepare.py, program.md, watch_campaign.py |
| 측정 장비 | core/self_improving/ | measure.py, fitness.py, gate.py, ledger.py |
| 변이 런타임 | core/self_improving/loop/ | mutate/runner.py, mutate/policies.py, observe/baseline_epoch.py, inject/in_context_wiring.py, auto_trigger.py |
Agent
| 서브시스템 | 루트 | 핵심 모듈 |
|---|---|---|
| agentic 루프 | core/agent/loop/ | agent_loop.py (AgenticLoop), models.py, _context.py |
| 서브에이전트 | core/agent/ | sub_agent.py, worker.py, task_isolation.py |
| 시스템 프롬프트 | core/agent/ | system_prompt.py, system_injection.py |
| 가드 | core/agent/ | safety.py, budget.py, approval.py, context_manager.py |
Harness
| 서브시스템 | 루트 | 핵심 모듈 |
|---|---|---|
| thin CLI | core/cli/ | __init__.py (Typer app), commands/, routing.py, dispatcher.py, ipc_client.py, onboarding.py |
| serve 데몬 | core/server/ | ipc_server/poller.py (CLIPoller), supervised/ (Slack Socket Mode, Discord/Telegram 폴러, webhook, services) |
| 게이트웨이 | core/messaging/ | binding.py (ChannelManager), models.py, slack_formatter.py |
| 훅 | core/hooks/ | system.py (HookSystem + HookEvent), dispatch.py, discovery.py |
| 오케스트레이션 | core/orchestration/ | lane_queue.py, task_system.py, compaction.py, tool_offload.py, isolated_execution.py |
| 스케줄러 | core/scheduler/ | service.py, triggers.py, nl_scheduler.py, jitter.py |
| 배선 | core/wiring/ | bootstrap.py, container.py, scheduling.py, startup.py |
| 터미널 UI | core/ui/ | event_renderer.py, latex.py, console.py |
Runtime
| 서브시스템 | 루트 | 핵심 모듈 |
|---|---|---|
| 도구 | core/tools/ | registry.py, definitions.json, policy.py (PolicyChain), toolkit_registry.py + toolkits.toml, computer_use.py |
| MCP 클라이언트 | core/mcp/ | manager.py (MCPServerManager), stdio_client.py, registry.py, 알림/캘린더 어댑터 |
| 메모리 | core/memory/ | context.py (ContextAssembler), project.py, session_manager.py, episodic.py, recall_writer.py, user_profile.py |
| 스킬 | core/skills/ | skills.py (레지스트리), agents.py |
| 프롬프트 | core/llm/prompts/ | router.md, commentary.md, decomposer.md, 해시 핀은 __init__.py |
| 감사 추출 | core/audit/ | dim_extractor.py, manifest.py, eval_to_jsonl.py, contracts.py |
| 관측성 | core/observability/ | event_store.py, hook_persistence.py, run_log.py (스케줄러 전용), session_metrics.py, logging_config.py, transcript.py |
| 설정 | core/config/ | _settings.py, explain.py, env_io.py, routing.toml + routing_manifest.py, self_improving.py |
| 인증 | core/auth/ | oauth_login.py, profiles.py, rotation.py, cooldown.py |
Model
| 서브시스템 | 루트 | 핵심 모듈 |
|---|---|---|
| 라우터 | core/llm/router/ | calls/_route.py, calls/_failover.py, calls/{text,json,streaming,tools}.py |
| 어댑터 | core/llm/adapters/ | registry.py (bootstrap_builtins), dispatch.py |
| 프로바이더 | core/llm/providers/ | anthropic.py, openai.py, codex.py, glm.py |
| 지원 모듈 | core/llm/ | fallback.py, errors.py, token_tracker.py, model_pricing.toml, model_capabilities.py |
번들 플러그인
| 플러그인 | 루트 | 핵심 모듈 |
|---|---|---|
| petri_audit | plugins/petri_audit/ | cli_audit.py, runner.py, audit_mode.py, judge_dims/, seeds/ |
| seed_generation | plugins/seed_generation/ | cli.py, orchestrator.py, tournament.py, agents/ |