helixlife-expert-cli
v0.5.2
Published
helixlife 科研专家合集后台命令行工具
Downloads
1,603
Readme
helixlife-expert-cli
解螺旋 5.0 后台体系 · 科研专家合集 CLI。一个 npm 包提供六个专家命名空间,Skill 按专家拆分后单独交付,从而对外只暴露当前专家。
Skill 与 CLI 已分离:
cli/skills/下各专家目录不随本 npm 包发布。发给用户的是单个专家 Skill 目录,不是改 CLI 安装包。
安装
npm install -g helixlife-expert-cli
# 请求凭证由外部环境写入 ~/.config/helixlife/user-access-token.txt
helixlife-expert upgrade # 检查并按需升级到 npm 最新版Token 与接口基址配置位于 ~/.config/helixlife/:
- 配置:
~/.config/helixlife/config.json - Token:
~/.config/helixlife/user-access-token.txt
与解螺旋其他 CLI 共用同一目录下的凭证文件。
环境地址
默认使用生产基址。可通过本地配置覆盖 api / agent_api(完整 URL,原样使用):
helixlife-expert config # 查看当前生效地址
helixlife-expert config set api https://api.example.com
helixlife-expert config set agent_api https://agent.example.com本地开发
npm install
npm run build
npm link
helixlife-expert --version常用脚本:
npm run dev # 直接跑 TypeScript 入口
npm run typecheck # 类型检查
npm test # 单元测试
npm run sync:skills # 将共用环境说明同步到各 Skill 的 references/common.md
npm run pack:skill -- meta # 导出单个专家目录到 dist-skills/helixlife-expert-meta/发布
在仓库根目录执行:
npm publishprepublishOnly 会自动执行 npm run build。发布内容仅含 cli/bin 与 cli/dist,不含 cli/skills/。
Skill 交付
发布约定:本仓库 npm 包不含 Skill。每次发给用户一个专家目录;替换 Agent 侧 Skill 即可,不必为此升 CLI 版本。
安装 / 升级 / 错误码的正文只维护在 cli/skills/_fragments/common.md。课题方案另有 external-newidea.md,由 npm run sync:skills 追加到该专家的 references/common.md。不要把 _fragments 或整个 cli/skills/ 发给用户。
交付某一个专家
每次只发一个专家目录,不要发整个 cli/skills/(其中含 _fragments 与其他专家)。推荐:
npm run pack:skill -- meta # 或 fund / sci / analysis / literature / proposal产物在 dist-skills/helixlife-expert-meta/。源目录结构如下:
cli/skills/helixlife-expert-meta/
├── SKILL.md
└── references/
├── common.md # 安装 / 错误处理(自包含)
└── meta.md # 本专家细则该 Skill 写死只允许 helixlife-expert meta …,即使本机 CLI 里还有其他专家命令,Agent 也不会去调。
| 专家 | Skill 目录 |
| ---- | ---------- |
| Meta 分析 | cli/skills/helixlife-expert-meta/ |
| 基金写作 | cli/skills/helixlife-expert-fund/ |
| SCI 写作 | cli/skills/helixlife-expert-sci/ |
| 数据分析 | cli/skills/helixlife-expert-analysis/ |
| 文献调研 | cli/skills/helixlife-expert-literature/ |
| 课题方案 | cli/skills/helixlife-expert-proposal/ |
目录结构
helixlife-expert-cli/
├── package.json
└── cli/
├── bin/helixlife-expert.js
├── dist/
├── src/
│ ├── core/ # 共用基础设施(api / config / token)
│ └── modules/
│ ├── upgrade/
│ ├── shared/ # 跨专家共用(结果包装器、workflow-app 调用层)
│ ├── meta/
│ ├── fund/ # 含 nsfc(国自然)与 clinical(临床申请书)两个工作台
│ ├── sci/
│ ├── analysis/
│ ├── literature/
│ └── proposal/
├── tests/
└── skills/ # 各专家 Skill,不随 npm 发布命令命名空间
| 模块 | 命令示例 | 状态 |
| ---- | -------- | ---- |
| 升级 | helixlife-expert upgrade | 已实现 |
| 配置 | helixlife-expert config | 已实现 |
| 工作台探测 | helixlife-expert site-configs | 已实现(工作台类专家业务前置硬门禁) |
| Meta 分析 | helixlife-expert meta workflow create | 已实现(选题/检索/筛选/抽提/统计/写作六步全流程) |
| 基金写作 | helixlife-expert fund nsfc hypothesis create | 已实现(国自然四步 + 临床申请书三步) |
| SCI 写作 | helixlife-expert sci outline create | 已实现(拟定主题/确认提纲/生成全文三步流程) |
| 数据分析 | helixlife-expert analysis tool exec | 已实现(本 CLI 直接调用菜单、生信统一入口与上传接口) |
| 文献调研 | helixlife-expert literature workflow run | 已实现(信息调研/结构化拆解/文献阅读/研究假设四工作流) |
| 课题方案 | helixlife-expert proposal clinical run | 已实现(基础研究经外部 newidea CLI;临床研究五工作流 + 生信方案) |
Meta 分析专家迁移自 helixlife-service-cli 的 workbench meta,命令树为 meta workflow|topic|picos|criteria|retrieve|screening|extraction|analysis|writing。进入任何 Meta 业务命令前必须先通过 helixlife-expert site-configs --format=json 探测(细则见 cli/skills/helixlife-expert-meta/references/meta.md)。
SCI 写作专家迁移自 helixlife-service-cli 的 workbench sci,命令树为 sci template list / sci outline create / sci outline confirm create / sci article download;docx 导出走 Newidea 接口(固定基址 https://paas-api.newidea.pro,不读本地配置)。同样须先通过 site-configs 探测(细则见 cli/skills/helixlife-expert-sci/references/sci.md)。
基金写作专家迁移自 helixlife-service-cli 的 workbench nsfc(国自然申请书:假说 → 确认 → 提纲 → 全文四步)与 workbench clinical(临床申请书:选题评估 → 四要素 → 全文三步),命令树为 fund nsfc … 与 fund clinical … 两个子命名空间;技术路线图/假说机制图渲染与 docx 导出均走 Newidea 接口。同样须先通过 site-configs 探测(细则见 cli/skills/helixlife-expert-fund/references/nsfc.md 与 references/clinical.md)。
文献调研专家提供四个工作流(WF01 信息调研、WF02 结构化拆解、WF03 文献阅读、WF04 研究假设),命令树为 literature workflow list|params|run。四者均为「params 取动态表单 → run 填参执行」两步式,表单字段由后端实时返回,CLI 不做本地映射。主线为 WF01 → WF02 → WF04,工作流间数据由 Agent 串联,CLI 不隐式串。该专家不走 site-configs 门禁(细则见 cli/skills/helixlife-expert-literature/references/literature.md)。
数据分析专家由本 CLI 直接执行:helixlife-expert analysis tool search|menus|inspect|cloud|specific-search|prepare|exec 与 helixlife-expert analysis history list|view|download|rename|delete|save。菜单与菜单详情走 agent_api 的 /api/v1/agent/client/tool/menus,生信统一入口走 /api/v1/agent/client/bio-api;文件上传仍取 /api/v1/agent/upload/config 后直传 OSS。凭证与其他专家相同,读 ~/.config/helixlife/。Skill 细则见 cli/skills/helixlife-expert-analysis/references/(路由索引 + 393 项冻结目录 + 执行手册)。
课题方案专家先做基础 / 临床 / 生信三方向识别(证据不唯一时由 Skill 弹选择器兜底)。基础研究业务经外部 newidea CLI(newidea,npm:@helixlife-ai/newidea)执行,与本 CLI 共用 ~/.config/helixlife/ 凭证文件,按需被动安装(命令不存在再 npm install -g @helixlife-ai/newidea@latest);Agent 直接调用 newidea invocation start / invocation process,成功后交付 ZIP 下载链接,不落盘、不解压。禁止执行 newidea login / newidea status / newidea logout。
临床研究与生信方案由本 CLI 直接调用工作流接口,与文献调研共用 shared/workflow-app 调用层,同为「params 取动态表单 → run 填参执行」两步式。临床命令树为 proposal clinical list|params|run,五个 source(diagnostic-study 诊断、prognosis-study 预后、treatment-trial 疗效试验、treatment-cohort 疗效队列、etiology-study 病因)的研究目的字段已被后端锁成单一选项,因而 source 即等价于研究目的,疗效方向需再按研究设计二选一;生信为单一工作流 bioinfo-planner,命令树 proposal bioinfo params|run,不设 --source;该方向在 Skill 侧多一步套路定位,冻结目录 bioinfo-pattern-catalog-v1.json(67 条,含一句话概述与数据层面),由 references/bioinfo-patterns.md 做召回索引与可行性核对,CLI 本身不解析该目录。临床表单声明 output_text 与 output_reference 两路输出,实测后端通常只回 output_text(参考文献并在正文末章),渲染层对缺失的已声明输出直接跳过。该专家不走 site-configs 门禁(细则见 cli/skills/helixlife-expert-proposal/references/proposal.md)。
Meta / 基金(国自然)模块额外引入运行时依赖:@resvg/resvg-js(SVG→PNG)、docx(Word 导出)、pdf-lib(PDF 导出)。
