# Agent Knowledge Atlas

本地 Agent 论文知识地图，直接读取仓库里的 `data/index.json` 和 `papers/items/*.md`。

## Run

```bash
web/manage.sh start
web/manage.sh status
```

前台调试仍可直接运行：

```bash
python3 web/app.py --host 100.114.68.27 --port 18080
```

默认 llama.cpp 地址：

```bash
MODEL_API_LUNA_URL=http://192.168.1.10:11435/v1
MODEL_API_SOL_URL=http://192.168.1.10:11436/v1
```

访问地址：

```text
http://100.114.68.27:18080
```

映射域名：

```text
https://lab.k1412.top/
```

图谱增强渲染懒加载本地 vendored `ECharts 6.1.0`，文件位于 `web/static/vendor/`。首屏先显示内置 SVG 图谱；ECharts 加载成功后自动升级为 Canvas 交互图谱。

## AI Policy

- 默认摘要模型：`ChatGPT-5.6:Terra`
- 默认翻译模型：`ChatGPT-5.6:Luna`
- 深度分析模型：`ChatGPT-5.6:Sol`，只在前端手动选择时使用
- Atlas 解释：`ChatGPT-5.6:Terra`
- 主题导读、阅读路径、主题比较：`ChatGPT-5.6:Sol`，只在前端手动确认后调用
- Search Agent 查询理解：`ChatGPT-5.6:Luna`
- Search Agent 结果简报、搜索追问、论文对话：`ChatGPT-5.6:Terra`
- llama.cpp 请求单并发执行，并缓存结果到 `web/cache/ai/`
- 应用侧不覆盖上下文长度，Luna 固定 8K，Terra/Sol 固定 32K
- arXiv 摘要缓存到 `web/cache/arxiv/`

模型 tier 可以覆盖：

```bash
MODEL_LIGHT=ChatGPT-5.6:Luna \
MODEL_FAST=ChatGPT-5.6:Terra \
MODEL_LARGE=ChatGPT-5.6:Sol \
web/manage.sh restart
```

`/api/health` 会返回可用模型、默认模型和缺失的默认标签。维护时先看健康接口，不要假设旧 alias 仍存在。

## Service Management

```bash
web/manage.sh start
web/manage.sh stop
web/manage.sh restart
web/manage.sh status
web/manage.sh logs
```

`manage.sh` 会把仓库中的 `agent-knowledge-atlas.service` 链接到用户级 systemd，并把可覆盖环境写入忽略提交的 `web/cache/service.env`。日志使用 systemd journal。它不替代 TLS、反向代理或鉴权。

## Knowledge Design

先由后端从本地语料轻量计算：

- 主题节点和主题规模
- 最近三个月热度
- 主题共现关系
- 月度趋势
- 关键论文候选
- 主题证据列表

按需调用 AI 的高维动作：

- 解释当前 Atlas
- 生成主题导读
- 生成阅读路径
- 比较技术路线
- 单篇论文摘要、翻译、深度研读
- 搜索意图理解、关键词扩展、结果简报
- 基于搜索结果继续追问
- 基于单篇论文继续对话式研读

## Product Boundary

当前 Atlas 是资料探索原型，不是已经验证的学习产品。用户对“只浏览论文、图谱和 AI 摘要”的实用性评价很低，因为它没有保存个人理解、主张、反证、应用和复习状态。后续产品方向见 `docs/08-next-work.md`，不要把下一阶段继续收敛为图谱视觉优化。
