experiment-log — 实验日志标准化
输入方式
用户通过以下任一方式提交实验原始材料时自动加载:
- 直接上传 — 在当前会话提交图片、音频、语音转录或文字。
- 本地材料 — 提供本地文件或文件夹路径,由 agent 读取并整理。
- 飞书群 — 通过可选的
feishu-cli-integration读取群消息和附件。
输出方式
- 本地 Markdown — 将日志和原始附件保存到用户指定的普通本地文件夹;未指定目录时,先返回可保存的 Markdown,不擅自选择路径。
- Obsidian vault — 通过可选的
obsidianskill 写入 vault,并使用附带模板建立索引、异常记录和设备追踪。
核心流程不要求安装飞书或 Obsidian。使用飞书群输入时,才需要 bot 已加入目标群并具备 im:message、im:message.group_msg 和 im:resource 权限。
处理流程
- 接收上传材料、读取本地文件,或从已配置的飞书群获取材料。
- 通过 vision_analyze 和文本解析提取结构化信息。
- 对缺失或模糊字段向用户确认,不猜测实验条件或结果。
- 确认输出方式和目标目录,生成实验 ID 与样品批次 ID。
- 写出
{OUTPUT_ROOT}/实验日志/{体系}/{类型}/{exp_id}.md。 - 将原始附件归档到
{OUTPUT_ROOT}/raw/experiments/YYYY.MM.DD_描述_EXPID/,并在日志中建立引用。 - 如启用索引模板,更新实验索引;发现异常时追加异常记录。
- 告知用户生成文件及原始材料的具体位置。
模糊信息(温度记不清、样品编号不明)主动询问,不猜测写入。
目录结构
/vault/
├── raw/experiments/ ← 原始层(归档)
│ └── YYYY.MM.DD_描述_EXPID/
│ ├── 笔记.md
│ ├── 图片/
│ └── 语音/
│
wiki/实验日志/ ← 标准层(产出)
├── 实验索引.md
├── 异常记录.md
├── {体系A}/
│ ├── 实验类型1/
│ ├── 实验类型2/
│ └── ...
├── {体系B}/
│ └── ...
└── 公共/
└── 设备与试剂追踪.md
实验 ID 规则
{体系代码}-{设备代码}-YYMMDD-{序号}
│ …