# 基础设施地图 中文 · [English](infrastructure.md) 本文档用于区分共享基础设施与真正决定 K1412 Agent 行为的组件。 ## 请求路径 ```text Internet -> DNS / TLS -> Nginx Proxy Manager -> Unraid NAS:K1412 Web 服务栈 -> Tailscale + SSH -> home-node-itx:每用户 Docker 工作区 ``` ## 共享基础设施 这些服务让应用可以被访问或部署,但修改它们不会改变 Agent Loop: | 服务 | 职责 | | --- | --- | | `git.k1412.top` | 公开源码仓库 | | `docker.k1412.top` | 私有不可变容器镜像 | | Nginx Proxy Manager | HTTPS 入口和反向代理 | | k1412 首页 | 服务发现入口 | | Tailscale | NAS 到执行主机的私有网络 | | Unraid Compose Manager | NAS 上的应用生命周期管理 | | Ollama + 32 GB NVIDIA GPU | Luna、Terra、Sol 模型服务 | NAS 上的其他应用是相互独立的租户。仅仅因为共享同一台主机,并不意味着它们是 K1412 Agent 的依赖。 ## NAS 上的 K1412 平台服务 | 容器 | 职责 | 是否属于 Agent 核心 | | --- | --- | --- | | `k1412-agent-web` | Open WebUI 鉴权、RBAC、历史和界面 | 产品外壳 | | `k1412-agent-runtime` | Agent Loop 和 Provider 网关 | 是 | | `k1412-agent-gateway` | 身份、执行策略、工作区生命周期 | 是 | | `k1412-agent-postgres` | Open WebUI 和 Runtime 持久状态 | 状态层 | | `k1412-agent-redis` | Open WebUI 协调和缓存 | 状态层 | | `k1412-agent-bootstrap` | 幂等的管理员/工具初始化任务 | 运维 | 只有 Web 会发布宿主机端口。Runtime、Gateway、PostgreSQL 和 Redis 均位于私有 Compose 网络。 ## 物理执行主机 `home-node-itx` 是一台专用、可替换的 Docker 执行节点: - Intel Core i3-12100F,4 核 8 线程; - 约 14 GiB 可用内存; - 120 GB NVMe 系统盘; - 500 GB SSD,格式化为 ext4 并挂载到 `/srv/k1412-data`; - Docker Root 位于 `/srv/k1412-data/docker`; - 用户工作区卷保存在同一块数据盘。 NAS Gateway 使用专用 Ed25519 密钥和严格的主机密钥校验进行连接。执行主机不保存 Web 或数据库密钥。更换执行主机只需要迁移 Docker 卷并修改 SSH 配置,不需要修改 Agent Loop。 ## Agent 核心 用于持续实验的代码包括: - `agent_platform/runtime/loop.py`:Loop 和证据策略; - `agent_platform/runtime/context.py`:上下文策略; - `agent_platform/runtime/tools.py`:工具和调度元数据; - `agent_platform/store.py`:事件、计划和记忆; - `agent_platform/gateway/`:隔离执行 Provider。 前端品牌、反向代理配置和 Registry 自动化是重要的产品/运维工作,但不属于 Agent 智能。