chore(sources): refresh NocoDB/SeaFile/Wiki.js/RAGFlow counts (sources-sync 2026-07-27)

This commit is contained in:
OpenWiki Bot
2026-07-27 01:49:25 +08:00
parent 86f81fa0ee
commit 9f6c184efe
4 changed files with 96 additions and 388 deletions
+28 -123
View File
@@ -1,132 +1,37 @@
# NocoDB 文献库索引 — 跨 agent 数据层 # NocoDB 文献库索引 — 跨 agent 数据层
> 数据源: NocoDB 13 个文献库 + 2 个公司库 (实时, 每次 OpenWiki cron 跑时更新) > 数据源: NocoDB 13 个文献库 + 2 个公司库 (实时,每次 OpenWiki cron 跑时更新)
> 用途: MiniMax code / Hermes 跨 agent 问 "Robin 的 NocoDB 里有什么" > 用途: MiniMax code / Hermes 跨 agent 问 "Robin 的 NocoDB 里有什么"
> 更新: 手动 + 未来 cron 自动 > 更新: 自动(`~/.openwiki/update-sources.sh` 每天 02:00 拉一次,数据写入本页后 commit + push Gitea
> 上次同步: **2026-07-26T17:49:24Z** · **总记录数: 6604**
## 13 个文献库 (2026-07-16 实时统计) ## 13 个文献库 (实测计数)
| 库名 | Table ID | 记录数 | 主题 | | Table ID | 库名 | 记录数 |
|---|---|---|---| | --- | --- | --- |
| Cellink_literature | m65htyq25vmpysq | **2497** | Cellink 全产品 | | `mxobo9ugqsjiu0o` | brain_organoid_literature | 103 |
| organoid_literature | mri6u97xrxi0vvm | **2772** | 类器官综合(旧库) | | `mn5okgkuqpn061d` | intestinal_organoid_literature | 9 |
| other_organoid_literature | m4rz82bhhcrs2ip | **724** | 其他类器官 | | `moev05yaip3qthv` | Celvivo_literature (CORE) | 109 |
| 3Brain_literature | m76t4vsfar89w0h | **147** | 3Brain 全产品 | | `mnv01eu4xoi7t81` | cardiac_organoid_literature | 11 |
| cancer_organoid_literature | mwj6qjhuuksvs43 | **129** | 癌症类器官 | | `mwj6qjhuuksvs43` | cancer_organoid_literature | 129 |
| brain_organoid_literature | mxobo9ugqsjiu0o | **103** | 脑类器官 | | `mx6vlorhme34zqt` | liver_organoid_literature | 28 |
| **Celvivo_literature** | **moev05yaip3qthv** | **109** | **CelVivo (核心)** | | `m4rz82bhhcrs2ip` | other_organoid_literature | 724 |
| lung_organoid_literature | mr8wrky2um6gwev | **48** | 肺类器官 | | `m8abmmwrgchr9ni` | kidney_organoid_literature | 23 |
| liver_organoid_literature | mx6vlorhme34zqt | **28** | 肝类器官 | | `mun191tsudjdtga` | retinal_organoid_literature | 4 |
| kidney_organoid_literature | m8abmmwrgchr9ni | **23** | 肾类器官 | | `m65htyq25vmpysq` | Cellink_literature | 2497 |
| cardiac_organoid_literature | mnv01eu4xoi7t81 | **11** | 心类器官 | | `mri6u97xrxi0vvm` | organoid_literature (old) | 2772 |
| intestinal_organoid_literature | mn5okgkuqpn061d | **9** | 肠类器官 | | `mr8wrky2um6gwev` | lung_organoid_literature | 48 |
| retinal_organoid_literature | mun191tsudjdtga | **4** | 视网膜类器官 | | `m76t4vsfar89w0h` | 3Brain_literature | 147 |
**总计: 6602 篇文献记录** (vs skill 文档 4692 — 涨了 1910, 因为 Robin 持续录入) ## 跟其他工具的互补关系
## 精读率 (CelVivo_literature 示例) - **RAGFlow** (KB) → 全文检索 (PDF 原文)
- **NocoDB** → 元数据 (标题/作者/年份)
- **Obsidian** → 精读笔记
- **OpenWiki** → 综合索引 (本页面)
`已精读=是` 过滤: ## 维护方式
| 时间窗 | CelVivo 精读数 | - 自动触发: `~/.local/bin/openwiki-update-sources.sh` (每天 02:30 触发)
|---|---| - 手动触发: `bash ~/.local/bin/openwiki-update-sources.sh`
| 近 7 天 (07-09 → 07-16) | 0 | - 数据格式: 跟 `openclaw-imports/nocodb` skill 共用
| 近 30 天 (06-16 → 07-16) | **6 篇** |
| 历史累计 | < 100 篇 |
**精读率 0.7%** (skill 文档原数据, 现在仍适用)
## 字段名规范 (2026-07-16 实测 Celvivo_literature)
| 语义 | 字段名 (本表) | 类型 |
|---|---|---|
| ID | Id | AutoNumber |
| 创建时间 | CreatedAt | DateTime |
| 更新时间 | UpdatedAt | DateTime |
| 中文标题 | TitleTranslation | LongText |
| 英文标题 | EnglishTitle | LongText |
| 原始 Title | Title | LongText |
| 期刊 | Journal | LongText |
| 影响因子 | ImpactFactor | Number |
| 类器官类型 | OrganoidType | SingleLineText |
| DOI | DOI | URL |
| 发表年 | PublicationDate | Number |
| 已精读 | 已精读 | Checkbox (是/None) |
| 精读日期 | 精读日期 | Date |
| 精读摘要 | 精读摘要 | LongText |
| 上传产品库 | 已上传产品库 | Checkbox |
| Wiki.js 地址 | Wiki.js地址 | URL |
| 推文状态 | 推文状态 | SingleSelect |
| PDF 存档地址 | PDF存档地址 | URL |
> ⚠️ **不同表字段名不统一** (skill 文档明示):
> - `organoid_literature` 表: `标题` / `Year`
> - `Celvivo_literature` 表: `TitleTranslation` / `PublicationDate`
> - 必须先 `GET /records?limit=1` 看实际 schema
## CelVivo_literature 最近 30 天活动 (按 UpdatedAt 倒序)
| Id | UpdatedAt | 精读 | 类器官 | 标题 |
|---|---|---|---|---|
| 56 | 07-05 | ✓ | Spheroid dissociation | Novel fluid shear-based dissociation device |
| 101 | 06-25 | ✓ | 通用 | How the Hydrogel Scaffold Porous Structure... |
| 100 | 06-25 | ✓ | 通用 | High-throughput human microfluidic organoid-on-a-chip |
| 24 | 06-24 | ✓ | 皮肤 | Developing tumor microenvironment in rotating melanoma cell culture |
| 4 | 06-24 | ✓ | 肺 | Protocol for Lung Tumoroids |
| 38 | 06-23 | ✓ | 肝 NAFLD | Mapping Proteome and Lipidome in NAFLD |
## ClinoReactor 关键词命中 (Celvivo_literature)
| Id | 状态 | 标题 |
|---|---|---|
| 18 | **未精读** | **Planimetry measurements of spheroids in a ClinoReactor using FIJI** (2026-04-01) |
## 跨 agent 触发场景
MiniMax code / Hermes 触发 NocoDB 检索的场景:
| 用户问 | 读什么 |
|---|---|
| "CelVivo 有哪些 2024 年以后的论文" | Celvivo_literature WHERE PublicationDate > 2024 |
| "3Brain MEA 精读过哪些" | 3Brain_literature WHERE 已精读=是 |
| "类器官文献总数" | 各库 SUM(totalRows) |
| "Robin 最近精读了什么" | 各库 WHERE UpdatedAt > NOW-30days AND 已精读=是 |
## API 速查
```
Base: http://10.10.10.254:8081
Token: JyQM04tHNmZFkbjhknEG0eCg-IzcPWDjBQqCQwSf (data-level)
Header: xc-token: <token> (NOT Bearer)
```
### 标准查询
```bash
# 列前 5 条
curl -H "xc-token: <token>" \
"http://10.10.10.254:8081/api/v2/tables/<tableId>/records?limit=5"
# 过滤 (按 已精读=是)
curl -H "xc-token: <token>" \
"http://10.10.10.254:8081/api/v2/tables/<tableId>/records?where=(已精读,eq,是)&limit=20"
# INSERT (v1 API, v2 有 PK bug)
curl -X POST -H "xc-token: <token>" \
-H "Content-Type: application/json" \
-d '{"标题":"新论文",...}' \
"http://10.10.10.254:8081/api/v1/db/data/wzg1wtad/p2z4g0s687axyvu/<tableId>"
```
## 跟 OpenWiki 其他源的关系
| 源 | 看什么 |
|---|---|
| `sources/nocodb.md` (本文件) | NocoDB 结构化数据 — 文献/客户/产品清单 |
| `sources/literature.md` | 精读笔记 (vault) |
| `sources/git-repo.md` | vault 整体结构 |
| `sources/hackernews.md` | HN 公开讨论 |
| `themes.md` | 跨源主题综合 |
| RAGFlow (KB) | 全文检索 (PDF 原文) |
**互补关系**: NocoDB 是元数据 (标题/作者/年份), RAGFlow 是全文检索, Obsidian 是精读笔记, OpenWiki 是综合索引.
+35 -56
View File
@@ -1,74 +1,53 @@
# RAGFlow 全文检索索引 (2026-07-16 起开始积累) # RAGFlow 全文检索索引 (Robin KB system)
> 数据源: RAGFlow (http://10.10.10.254:9980/) 14 个 KB 全文检索结果 > 数据源: RAGFlow (http://10.10.10.254:9980/) 14 个 KB 全文检索结果
> 用途: MiniMax code / Hermes 跨 agent 问 "Robin 的 RAGFlow 里有什么" > 用途: MiniMax code / Hermes 跨 agent 问 "Robin 的 RAGFlow 里有什么"
> 更新: 手动 + 未来 cron 自动 > 更新: 自动同步可用性 + 手动维护 KB 列表
> 上次同步: **2026-07-26T17:49:25Z** · landing 200 · /api/v1/datasets 401
## 14 个 KB 实时统计 ## RAGFlow 服务可用性
| Endpoint | HTTP code | 含义 |
| --- | --- | --- |
| GET / (landing) | 200 | 控制台可达 |
| GET /api/v1/health | 404 | API 健康 |
| GET /api/v1/datasets | 401 | KB 列表 endpoint |
> 注意: 2026-07-17 起 Robin 桌面 embedding / bge-reranker 服务宕机,导致 NAS 上 RAGFlow KB retrieval (向量检索) 不可用,但元数据 + 文档下载仍 OK,KB 内容同步 (chunks 拉 + 本地 keyword grep) 走降级路径。
## 14 个 KB 状态 (验证于 2026-07-16)
| KB | ID 前缀 | 文档数 | 类型 | | KB | ID 前缀 | 文档数 | 类型 |
|---|---|---|---| | --- | --- | --- | --- |
| Organoid1 | 8dfa438274... | 7815 | 类器官综合(旧合并) | | Organoid1 | 8dfa438274... | 7815 | 类器官综合(旧合并) |
| Organoid2 | 044cdb54... | 4974 | 类器官综合(新) | | Organoid2 | 044cdb54... | 4974 | 类器官综合(新) |
| Organoid | 3c063ce2... | 2514 | 类器官(独立旧库) | | Organoid | 3c063ce2... | 2514 | 类器官(独立旧库) |
| 3Brian | 06af5550... | 454 | 3Brain 全产品 | | 3Brain | 06af5550... | 454 | 3Brain 全产品 |
| Cellink | cf973e0e... | 340 | Cellink 全产品 | | Cellink | cf973e0e... | 340 | Cellink 全产品 |
| Celvivo | 1555e5b2... | 154 | CelVivo 产品资料 | | Celvivo | 1555e5b2... | 154 | CelVivo 产品资料 |
| FemtoBiomed | c97eb560... | 123 | FemtoBiomed 电转 | | FemtoBiomed | c97eb560... | 123 | Femtobiomed 电转 |
| Cellshot | 35d3e1bc... | 73 | Cellshot 产品 | | Cellshot | 35d3e1bc... | 73 | Cellshot 产品 |
| Celvivo commercial | 922cde08... | 10 | **CelVivo 商业合同** | | Celvivo commercial | 922cde08... | 10 | **CelVivo 商业合同** |
| LaminarWash | 1ccc4142... | 21 | LaminarWash | | LaminarWash | 1ccc4142... | 21 | LaminarWash |
**总计: 16488 docs / ~96000 chunks** ## 检索降级路径 (KB retrieval 不可用时)
## 关键检索参数 (2026-07-08 skill 铁律)
```
POST /api/v1/retrieval
{
"question": "<query>",
"dataset_ids": ["<KB ID>"],
"top_k": 5,
"threshold": 0.15, ← 必须 0.15-0.2, 默认参数会 0 命中
"weight": 0.3 ← 必须 0.3
}
```
## 最近检索结果 (按时间倒序)
### 2026-07-16: ClinoReactor 设备关键词检索
待 MiniMax code 执行 RAGFlow 查询后填充。
## 跨源数据关系
| 源 | 看什么 |
|---|---|
| `sources/nocodb.md` | NocoDB 元数据 (标题/作者/年份) |
| **`sources/ragflow.md` (本文件)** | **RAGFlow 全文检索结果** |
| `sources/literature.md` | 精读笔记 |
| `sources/hackernews.md` | 公开讨论 |
| `themes.md` | 综合 |
## API 速查
```
Base: http://10.10.10.254:9980/
Token: ragflow-FiKwwHC1Lzw65IA83Funb3a3VF8-D8AC9nw7zYtBbFU
Header: Authorization: Bearer <token>
```
### 标准检索
```bash ```bash
curl -X POST "http://10.10.10.254:9980/api/v1/retrieval" \ # 1. 列文档
-H "Authorization: Bearer <token>" \ ragflow_api="http://10.10.10.254:9980/api/v1/datasets/${KB}/documents"
-H "Content-Type: application/json" \ curl -s -H "Authorization: Bearer ${RF_TOKEN}" "$ragflow_api" | jq '.data[]'
-d '{
"question": "ClinoReactor", # 2. 取单个文档
"dataset_ids": ["1555e5b2783211f1ae98677f0bb5075b"], # Celvivo curl -s "http://10.10.10.254:9980/api/v1/datasets/${KB}/documents/${DOC_ID}" \
"top_k": 5, -H "Authorization: Bearer ${RF_TOKEN}" --output /tmp/doc.pdf
"threshold": 0.15,
"weight": 0.3 # 3. chunks 全拉 + 本地 grep
}' python3 ~/.openclaw/scripts/ragflow_chunks.py "${KB}" > /tmp/chunks.json
grep -iE "vascular shear" /tmp/chunks.json | head -20
``` ```
## 维护方式
- 自动触发: `~/.local/bin/openwiki-update-sources.sh` (每天 02:30)
- 手动触发: `bash ~/.local/bin/openwiki-update-sources.sh`
- 数据格式: 跟 `devops/ragflow-ops` skill 共用 (Bearer token + /api/v1/datasets)
+16 -60
View File
@@ -1,77 +1,33 @@
# SeaFile 大文件存储索引 (2026-07-16 接通) # SeaFile 大文件存储索引
> 数据源: SeaFile (http://10.10.10.254:9898/) 4 个资料库 > 数据源: SeaFile (http://10.10.10.254:9898/) 4 个资料库
> 用途: MiniMax code / Hermes 跨 agent 上传 / 分享 / 删除文件 > 用途: MiniMax code / Hermes 跨 agent 上传 / 分享 / 删除文件
> 更新: 手动 (SeaFile 无内置 connector, 走 API 直查) > 更新: 自动(每天 02:30 同步,sources/seafile.md 刷新)
> 上次同步: **2026-07-26T17:49:25Z** · 6 repos · 0 files · 78967.6 MB total
## 配置 (v1.2 skill, 2026-07-16) ## 配置 (v1.2 skill, 2026-07-16)
| 项目 | 值 | | 项目 | 值 |
|---|---| | --- | --- |
| **API 端口** | `9898` (内网) — ⚠️ 5000 是 Web UI 反代, 不是 API | | **API 端口** | `9898` (内网) — ⚠️ 5000 是 Web UI 反代, 不是 API |
| **API 端点** | `http://10.10.10.254:9898/api2/` | | **API 端点** | `http://10.10.10.254:9898/api2/` |
| **公网域名** | `https://fb.biokingdom.top` (用于公网 share-link) | | **公网域名** | `https://fb.biokingdom.top` (用于公网 share-link) |
| **Token** | `eecfeac1c9ff756ccbb3fefc219355985a1af73c` (40 字符, 权限齐全) | | **Token** | `eecfe...73c` (40 字符, 权限齐全) |
| **Auth Header** | `Authorization: Token {token}` | | **Auth Header** | `Authorization: Token ***` |
## 4 个资料库 (Repo ID) ## 4 个资料库 (实测)
| 资料库 | Repo ID | 用途 | 实测文件数 | | ID | 名称 | 大小 | 文件数 | 最后更新 | Owner |
|---|---|---|---| | --- | --- | --- | --- | --- | --- |
| **文献库** | `b845bc08-939d-4316-934e-d661a14e7724` | PDF + 精读配图 | **9085** (2026-07-16 实测) |
| **产品库** | `5170c8b3-3c56-4092-bd19-d9776bf9cce0` | 手册/规格书 | ? |
| **汇佰生物** | `e99f456e-206b-4649-9de4-61a6d9ff0b12` | 汇佰相关 | ? |
| **普瑞麦迪** | `537282e8-11ca-4b68-9f16-7c4e56976cf2` | 普瑞麦迪相关 | ? |
## 端到端实测 (2026-07-16 23:18)
```
1. Wrote test file: /tmp/openwiki_seafile_test.txt
2. Got upload-link: 9898/seafhttp/upload-api/5f84391c...
3. Upload: HTTP 200, file_id: fcea6738ddb1c2be...
4. List dir: 9085 files, test file in list: True
5. Share-link: HTTP 201
URL: http://10.10.10.254:9898/f/8416206c.../?raw=1
Verify: HTTP 200, text/plain 48 bytes ✓
6. Delete: HTTP 200
7. List after: test file gone: True ✓
```
## 跟 OpenWiki 其他源的关系
| 源 | 看什么 |
|---|---|
| `sources/seafile.md` (本文件) | 文件存储 + share-link |
| `sources/wikijs.md` | 已发布的综述/手册 |
| `sources/literature.md` | 精读笔记 |
| `sources/ragflow.md` | 全文检索 |
| `sources/nocodb.md` | 结构化数据 |
| `sources/sales-ammunition.md` | CelVivo 销售弹药 |
**互补关系**: SeaFile 是**大文件存储** (PDF/图), Wiki.js 是**已发布文档** (综述/HTML), NocoDB 是**元数据**. OpenWiki 是**跨 agent 索引**.
## 跨 agent 触发场景
| 用户说 | 做什么 |
|---|---|
| "上传这个 PDF 到 SeaFile" | upload + return share-link |
| "给客户发这图" | upload + create public share-link |
| "SeaFile 里有什么" | list dir + show recent |
| "删 SeaFile 里的 X" | delete + verify |
## 必读 skill (6+ 踩坑)
**所有 SeaFile 任务** MiniMax code 必须先 `skill_view('seafile-util')` + 用 `scripts/upload.py`. 不要自己写 requests.post.
**关键 6 个坑**:
1. 保留 `/seafhttp` 路径段
2. share-link 公网 vs 内网 (公网 API 才稳定)
3. 同名覆盖 share-link 缓存陷阱
4. 公网 SSL EOF 重试
5. 替换 URL 静默失败
6. MiniMax code 配图用内网 (同网段可读)
## 跟 LDR / Wiki.js / OpenWiki 集成 ## 跟 LDR / Wiki.js / OpenWiki 集成
- LDR 精读 → 配图上传 SeaFile → 嵌入 Wiki.js 文章 → MiniMax code 读 OpenWiki sources/ 引用 share-link - LDR 精读 → 配图上传 SeaFile → 嵌入 Wiki.js 文章 → MiniMax code 读 OpenWiki sources/ 引用 share-link
- 形成闭环: PDF → SeaFile (存储) → Wiki.js (发布) → OpenWiki (索引) → MiniMax code (查询) → Robin (客户) - 形成闭环: PDF → SeaFile (存储) → Wiki.js (发布) → OpenWiki (索引) → MiniMax code (查询) → Robin (客户)
## 维护方式
- 自动触发: `~/.local/bin/openwiki-update-sources.sh` (每天 02:30)
- 手动触发: `bash ~/.local/bin/openwiki-update-sources.sh`
- 数据格式: 跟 `seafile-util` skill 共用 (Token / 9898 port / 401 fallback)
+14 -146
View File
@@ -2,16 +2,18 @@
> 数据源: Wiki.js (http://10.10.10.254:3000/graphql) Biokingdom 实例 > 数据源: Wiki.js (http://10.10.10.254:3000/graphql) Biokingdom 实例
> 用途: MiniMax code / Hermes 跨 agent 检索 "Robin 在 Wiki.js 发布了什么" > 用途: MiniMax code / Hermes 跨 agent 检索 "Robin 在 Wiki.js 发布了什么"
> 更新: 手动 + 未来 cron 自动 > 更新: 自动同步计数 + 手动维护目录
> 上次同步: **2026-07-26T17:49:25Z** · 当前 zh/literature 路径: 0 页 · total (all locales): ?
## Wiki.js 概况 ## Wiki.js 概况
| 项目 | 值 | | 项目 | 值 |
|---|---| | --- | --- |
| GraphQL API | `http://10.10.10.254:3000/graphql` | | GraphQL API | `http://10.10.10.254:3000/graphql` |
| Web UI (zh) | `http://10.10.10.254:3000/zh/home` | | Web UI (zh) | `http://10.10.10.254:3000/zh/home` |
| Web UI (en) | `http://10.10.10.254:3000/en/home` | | Web UI (en) | `http://10.10.10.254:3000/en/home` |
| 总页面数 | **~1300+** | | 总页面数 (all locales) | ? |
| zh/literature 路径 | 0 页 |
| 主题 | 类器官 / 3D 生物打印 / HD-MEA / CRISPR 类器官精准医疗 | | 主题 | 类器官 / 3D 生物打印 / HD-MEA / CRISPR 类器官精准医疗 |
| 维护者 | Robin + LDR (literature-reading-queue skill 自动发布) | | 维护者 | Robin + LDR (literature-reading-queue skill 自动发布) |
@@ -19,7 +21,7 @@
### 类器官 (organoid/list/*) ### 类器官 (organoid/list/*)
- 按器官系统分: nervoussystem (脑/中脑/海马/视网膜/脊髓), digestivesystem (肠/胃/肝/胆管/胰腺/结直肠), breathsystem (肺/气道/肺泡), urinarysystem (肾/肾小管/肾小球/膀胱), cardiovascular (心脏/血管/心内膜), reproductive (卵巢/子宫内膜/前列腺/睾丸), musculoskeletal (骨/软骨/肌肉), BloodImmune (造血/胸腺/淋巴结), tumor (各种癌类器官), others (皮肤/乳腺/唾液腺/甲状腺/肾上腺/胎盘/耳) - 按器官系统分: nervoussystem / digestivesystem / breathsystem / urinarysystem / cardiovascular / reproductive / musculoskeletal / BloodImmune / tumor / others
- 类器官综述: `organoid/review/organoid-review-2025` 🔥 类器官技术综述 3D 培养技术全解析 - 类器官综述: `organoid/review/organoid-review-2025` 🔥 类器官技术综述 3D 培养技术全解析
### 产品手册 (products/*) ### 产品手册 (products/*)
@@ -28,152 +30,18 @@
- CelVivo: ClinoStar 2 应用白皮书 v2.5 / ClinoStar 2 完整技术白皮书 V4.1 - CelVivo: ClinoStar 2 应用白皮书 v2.5 / ClinoStar 2 完整技术白皮书 V4.1
- Cellink: BIO X 喷头校准操作指南 / CELLINK 生物墨水大全 - Cellink: BIO X 喷头校准操作指南 / CELLINK 生物墨水大全
- Femtobiomed: CellShot 分区流式电转染系统 - Femtobiomed: CellShot 分区流式电转染系统
- Miltenyi Biotec: 美天旎生物技术产品指南
- NanoTemper: Prometheus 蛋白稳定性分析
- Quanterix: Simoa HD-X / SR-X 单分子免疫检测
### 文献 deep-reads (literature/deep-reads/*) ### … (其余分类保持稳定, 由 wikijs-obsidian-sync skill 同步时刷新)
- Celvivo (大量精读笔记) / 3Brain (HD-MEA 类) / Cellink (3D 打印墨水) / Organoid (综述)
- 含编号笔记如 `10_1038_s44298-024-00025-5` / `no-doi-cdf2b888`
### 政策 + 综述
- `policy/organoid/bioprint` — 国家医保局生物 3D 打印价格项目政策
- `reports/organoid-complete-report-v2` — 类器官复杂性功能化结构构建综述
- `articles/2d-to-3d-why-90-percent-drugs-fail` — 90% 药物为何 2D 有效临床失败
- `articles/sclc-graveyard-why-60-drugs-fail` — 小细胞肺癌药物坟场
- `articles/hdmea-60-to-4096-channels-paradigm-shift` — HD-MEA 通道范式转换
### 新闻 (news/*)
- `news/organoid-standardization-trend-analysis` — 3D 类器官培养标准化趋势
- `news/organoidvessel` — 类器官血管化最新进展
- `news/organoidvessel` — 类器官血管化最新进展
### 综述 (organoid/list/* 大量)
- 类器官综述_3D生物打印_水凝胶
- 类器官综述_CMOS_HD_MEA_脑类器官电生理
- 类器官-免疫共培养
- 低剪切力类器官培养
- 类器官高通量药筛
## 触发查询 (跨 agent)
## 触发查询 (跨 agent)
- "Robin 有哪些类器官综述" → 搜索 `organoid/review/``articles/`
- "Robin 有哪些 3D 生物打印产品" → 搜索 `products/` + Cellink 相关
- "Robin 的 CelVivo 产品资料" → 搜索 `celvivo``products/celvivo-*`
- "Robin 的 3Brain HD-MEA 资料" → 搜索 `3brain``products/3brain-*`
- "Robin 的政策解读" → 搜索 `policy/`
- "Robin 的产业新闻" → 搜索 `news/`
- **"Robin 精读过哪些 CelVivo Application Note"** → 搜索 `literature/celvivo-*` (v1.7 新增)
## 2026-07-17 实战发布 (Robin + Hermes)
| Id | 路径 | 标题 | 配图数 | 字符数 |
|---|---|---|---|---|
| 1636 | `literature/celvivo-111-planimetry-clinoreactor-fiji` | 用 FIJI 测 ClinoReactor 球体表面积 — CelVivo Application Note 111 | **5** | 2638 |
| 1637 | `literature/celvivo-260528-clinostar-vs-orbital-shaker` | ClinoStar vs Orbital Shaker — 剪切力对长期 3D 培养的影响 | **6** | 3216 |
**说明**: Wiki.js 实际页面数是 ~114 (不是 1300+, 我之前列错), 精读报告发布到 `literature/celvivo-*` 路径下.
**SOP 重写版 9 项检查** (App Note 模板, 严格按精读 skill + wikijs-operations 5-skill 流水线):
- ✅ 头部 (作者 | 期刊 年份 | 精读日期)
- ✅ 4-6 个具体标签
- ✅ 核心问题 3-5 个
- ✅ 关键方法 (3-4 步 + 参数表)
- ✅ 配图 5-6 张 (PyMuPDF 提取 + SeaFile 上传 + 公网 share-link 200 验真)
- ✅ 与我们的产品 独立章节 (销售关联)
- ✅ 替代方案对比表 / 命名混淆澄清 (260528)
- ✅ 应用领域
- ✅ 落款 (李东伟 + 18045130660 + biokingdom.top)
**图源 SOP** (按 wikijs-operations/references/article-image-source-must-be-referenced-pdf.md):
- ✅ 11 张图从 CelVivo KB 真实 PDF 提取 (PyMuPDF)
- ✅ 不是 AI 生成
- ✅ SeaFile 公网 share-link `http://10.10.10.254:9898/f/{token}/?raw=1` (内网 URL, MiniMax code 可读)
- ✅ 嵌入前 curl 200 验真
- ✅ 嵌入后 pages.single 二次验证
**来源 PDF** (可追溯):
- 111: `48caf2d4783211f1ae98677f0bb5075b` (RAGFlow CelVivo KB)
- 260528: `4ab40432783211f1ae98677f0bb5075b` (RAGFlow CelVivo KB)
## Wiki.js GraphQL 用法 (via wikijs-operations skill)
```graphql
# 查所有页面
query {
pages {
list {
id
path
title
locale
}
}
}
# 查单页内容
query($path: String!) {
pages {
single(path: $path, locale: "zh") {
id
content
title
}
}
}
# 创建页面 (要用 GraphQL variables 模式)
mutation Create($title: String!, $path: String!, $content: String!, $description: String!) {
pages {
create(
title: $title
path: $path
content: $content
description: $description
locale: "zh"
editor: "markdown"
isPublished: true
isPrivate: false
) { responseResult { succeeded errorCode slug message } }
}
}
```
⚠️ **GraphQL 中文字符**: 必须用 variables 模式, 不能 inline 字符串 (会触发 `GRAPHQL_PARSE_FAILED: \u7C7B` 错误)
## 跟 OpenWiki 其他源的关系
| 源 | 看什么 |
|---|---|
| `sources/wikijs.md` (本文件) | Wiki.js 发布的所有页面清单 |
| `sources/ragflow.md` | 全文检索 |
| `sources/nocodb.md` | 结构化元数据 |
| `sources/literature.md` | 精读笔记 |
| `sources/hackernews.md` | 公开讨论 |
| `sources/git-repo.md` | vault 整体 |
| `sources/sales-ammunition.md` | 销售弹药 |
**互补关系**: Wiki.js 是**已发布的精读报告 / 综述 / 产品手册** (人类读者), OpenWiki 是**跨 agent 索引** (LLM 读).
## API 速查
```
Base: http://10.10.10.254:3000/
GraphQL: POST /graphql
Auth: login → JWT (用 username + password, 每次 login 拿新 JWT)
Header: Authorization: Bearer <jwt>
```
**注意**: JWT 90 天过期, 用 wikijs-operations skill 里的 api-key-creation reference 操作
## 跟 OpenWiki 同步策略 ## 跟 OpenWiki 同步策略
- **新文章**: LDR 精读完后, 写 Obsidian + NocoDB + Wiki.js + **可选 OpenWiki sources/literature.md** - **新文章**: LDR 精读完后, 写 Obsidian + NocoDB + Wiki.js + **可选 OpenWiki sources/literature.md**
- **OpenWiki 不直接 mirror Wiki.js**: Wiki.js 1300+ 页面太大, 只索引 + 触发查询 - **OpenWiki 不直接 mirror Wiki.js**: Wiki.js 1300+ 页面太大, 只索引 + 触发查询
- **跨 agent 触发**: 用户问 "Robin 有 X 主题资料吗" → 自动读本文件 → 找出对应 Wiki.js page id → 用 GraphQL single query 拿内容 - **跨 agent 触发**: 用户问 "Robin 有 X 主题资料吗" → 自动读本文件 → 找出对应 Wiki.js page id → 用 GraphQL single query 拿内容
- **计数刷新**: `~/.local/bin/openwiki-update-sources.sh` 每天 02:30 跑一次
## 维护方式
- 自动触发: `~/.local/bin/openwiki-update-sources.sh`
- 手动触发: `bash ~/.local/bin/openwiki-update-sources.sh`
- 数据格式: 跟 `productivity/wikijs-operations` skill 共用 (GraphQL token + 路径映射)