- AgentConfig/LlmClient 新增 enable_thinking 参数,前端 SSE 请求传递 thinking 开关,仅千问/DashScope 时启用 - 完善权限系统,支持细粒度的权限控制和用户权限申请 - delegate_research 工具重命名为 subagent,SubAgentTool/SubAgentRunner 重构 - 子代理消息(system/user/assistant/tool)持久化到 agent_messages 表,带 agent_name 标识 - 子代理活动日志(工具调用列表+思考摘要)注入返回结果,Hooks 获得正确 session_id 和 subagent_name - LLM 工具调用 ID 回退生成 UUID(llm.rs),ToolCall/ToolResult SSE 事件增加 id/tool_call_id 双字段 - ToolContext 扩展 session_id/sse_tx/enable_thinking 字段,executor 统一注入而非构造函数传参 - agent_messages 新增 metadata+raw_json 列,agent_sessions 暴露 summary 字段 - 删除文件级 transcript 快照(compact.rs),改为依赖 DB 持久化 - ResearchAgentPanel 重写:TimelineItem 类型替代 StreamStep,支持会话历史回放 - 新增 AgentMetricsPanel/AskUserQuestionCard/AuditLogViewer 三个前端组件,types.ts 完整类型定义 - docs/architecture/ 分层重组:概览/核心模块/核心工作流 + agent/ 子目录 11 篇专题文档 - docs/api.md 补充 RAG/Target/Agent 接口,docs/development.md 新建开发指南 - .env.example 完全重写,补充 FALLBACK_MODEL 等变量说明
2.7 KiB
2.7 KiB
AstroResearch Architecture / 架构设计
AstroResearch 是一个集成了天文学文献检索、多通道下载(含防爬绕过与手动上传)、下载错误诊断、结构化解析、中英学术对比翻译、引文星系图谱以及馆藏健康度诊断的天文科研辅助系统。
本文档已拆分为模块化子文档。 以下为索引导航。各子文档位于
docs/architecture/目录下。
主架构
| 文档 | 内容 |
|---|---|
| overview | 整体架构 — C/S 架构总览、Mermaid 图、各层级说明 |
| core-workflows | 核心工作流 — 文献下载流程、手动上传流程、文献解析流程、智能对照翻译流程 |
| core-modules | 核心模块说明 — API 层、服务层、客户端层、独立工具、前端核心组件 |
智能体系统架构
| 文档 | 内容 |
|---|---|
| Agent 概览 | Agent 整体架构 + ReAct 运行循环(完整生命周期时序图、并行工具执行模型) |
| System Prompt | 系统提示词组装 — 模块化 Section 拼装、Anthropic Prompt Cache 优化策略 |
| 上下文管理 | 四层压缩策略(Snip/Micro/Auto/Aggressive)、Token 预算管理、压缩熔断器 |
| 工具系统 | AgentTool Trait 设计、ToolRegistry 注册流程、19 个工具的域组织 |
| Skills 系统 | 两层加载架构、SKILL.md 格式规范、热重载机制 |
| Hooks 系统 | 9 种生命周期事件、4 个内置 Hook 实现 |
| 记忆系统 | 文件系统持久化、save_memory 工具、Jaccard 去重、指数衰减、自动提取 |
| 子代理系统 | 上下文隔离子代理、delegate_research 工具、进度透传 |
| 多 Agent 团队 | 基于文件 inbox 的轻量级多 Agent 协作、Teammate 生命周期 |
| 任务看板与持久化 | DAG 任务依赖、审计日志、轨迹导出 |
| 环境变量参考 | Agent 调参环境变量、Token 预算配置、相关文档链接 |
其他文档
| 文档 | 内容 |
|---|---|
| API 文档 | 全部 REST API 端点说明 |
| 数据库设计 | SQLite 表结构与迁移 |
| 开发指南 | 开发环境搭建与工作流 |
| 部署指南 | 生产环境部署配置 |
| 故障排除 | 常见问题诊断与修复 |