oclaw/docs/ARCHITECTURE_OVERVIEW.md
oliver 628a9dffd2 Subtract dead agent husks and unify the gateway executor path.
Remove SpecialistAgentRunner, plan_agent_v2 re-export shims, empty runtime husks, and disconnected Admin knobs. Fold ops into build_gateway_executor, align AIA_ENABLE_PLUGIN_TOOLS with catalog, and allow ops on the default MCP specialist list.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-11 01:02:29 +08:00

43 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 架构总览(当前真相)
本文件用于描述当前仓库分层与目录职责,避免迁移后“认知滞后”。
## 顶层目录职责
- `runtime/`:运行时主域(agent、gateway 执行流、skills/hooks/extensions、operations)。
- `interfaces/`:对外接口层(HTTP、WS、Admin、Gateway method bridge)。
- `svc/`:通用平台能力(配置、存储、LLM transport、文件层)。
- `runtime/workspaces/_system/`:内置系统提示词 Markdown 树(与按角色分区的 `workspaces/<role>/` 并列);`runtime/prompt_templates/` 为加载与 frontmatter 解析。
- `tests/`:测试代码(按你的要求保持顶层)。
- `docs/`:设计文档、运维说明、迁移记录。
## 现行 Agent 脊梁
```text
interfaces (HTTP/WS/Admin/channel)
→ OclawGateway.handle_turn
→ run_agent_core → run_direct_loop
→ SkillExecutor / ToolExecutor → ToolRegistry (MCP/public/expert/plugin)
→ SqliteStore → outbound
```
工厂入口:`runtime/agents/factory.py::build_gateway_executor`(按 specialist 构建 `Agent`)。
## runtime 内部建议边界
- `runtime/core/`:可复用执行内核(如 agent 执行管线聚合入口)。
- `runtime/application/gateway/`:渠道入站用例(WhatsApp/Weixin/WeCom)。
- `runtime/agents|chat|orchestration`:领域能力模块。
- `skills/`、`runtime/hooks`、`runtime/extensions`:可扩展能力载体(技能包在仓库根 `skills/`)。
- `runtime/operations/scripts`:运维脚本与生成器。
## 路径规范
- 运行时资源路径统一通过 `svc/config/runtime_paths.py` 获取。
- 禁止新增硬编码目录字符串(如直接拼 `oclaw/runtime/...`)。
## 依赖方向(原则)
- `interfaces -> runtime -> svc`(尽量单向)。
- `runtime` 不反向依赖 `interfaces`(必要时通过协议/回调解耦)。
- `docs/tests` 可依赖任意层,但不应反向影响运行时代码设计。