# 拾序个人工作台 **Repository Path**: enterprise2021/shixu-workbench ## Basic Information - **Project Name**: 拾序个人工作台 - **Description**: 个人工作台:多设备工作资料索引、任务安排与健康记录。Python、Vue、SQLite。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-27 - **Last Updated**: 2026-09-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 拾序个人工作台 一个本地优先的个人工作台:工作资料索引与检索、设备目录管理、任务安排、日常健康记录、可版本化的资料识别知识库、账户安全和数据备份。 ## 启动 要求 Python 3.10+。在项目目录运行: ```powershell python -m pip install -r requirements.txt python app.py ``` 打开 http://127.0.0.1:5000 。空数据库首次创建唯一所有者;已有工作台请直接登录,不开放追加注册。SQLite 数据库保存在 `data/workbench.sqlite3`。 ## 本机 Windows 扫描 1. 在「设备管理」打开本机设备并配置扫描根目录、扩展名、深度与排除规则。 2. 在「资料库」运行扫描,检查仅高置信工作资料的候选清单,再导入。 3. 或按 [scanner/README.md](scanner/README.md) 使用本地脚本。采集器仅读取元数据,不读取正文或复制原文件。 ## Windows 与 NAS 采集器 设备详情 →「生成配对码」,然后在目标设备获取项目代码,在有效期内执行: ```sh python scanner/agent.py pair --server https://你的工作台地址 --code 一次性配对码 python scanner/agent.py run --interval 60 ``` 首次连接后,采集器使用已授权扫描根和服务端知识库;令牌保存在设备用户的 `Shixu/agent.json`。脚本支持离线缓存元数据、联网后重试。设备详情可撤销令牌。NAS 需支持 Python 3.10+,或在可运行 Python 的容器中挂载只读资料目录。 **跨设备部署要求**:服务默认只绑定 `127.0.0.1`。LAN 部署请将 `WORKBENCH_HOST` 配置到受控主机,设置随机 `WORKBENCH_SECRET`,并通过 HTTPS 反向代理提供服务;采集器拒绝非 HTTPS 远程地址。不要将 Flask 开发服务器直接暴露到互联网。NAS 型号/容器运行时不同,真实安装步骤需按设备验证。 ## fnOS 中心节点 可用根目录 `Dockerfile` 与 `compose.nas.yml` 将工作台部署到 NAS。此容器默认只绑定 NAS 本机回环地址,需在 fnOS 配置 HTTPS 反向代理;部署步骤、持久化目录和上线验收见 [docs/nas-deployment.md](docs/nas-deployment.md)。当前配置尚未在实际 fnOS 设备验证,特别是 FN Connect 到自定义反向代理路由的可达性需要上线前实测。 ## 任务与健康记录 任务支持项目、标签、优先级、状态、截止日期和软删除恢复。健康模块记录用户自行输入的血糖数值、时间、情境、用药状态和备注;支持筛选、CSV 导出和删除恢复,不提供诊断或用药建议。 ## 知识库、账户与数据 「知识库与设置」可编辑正向工作词、排除词与人工复核词,预览分类结果,发布或回滚规则版本。支持 JSON 数据导出、本机 SQLite 备份/恢复和修改密码。恢复会覆盖当前数据库,界面要求显式确认。 本地口令恢复(不会更改业务数据): ```powershell python scripts/reset_owner_password.py --username USERNAME ``` 程序会交互式输入新密码;所有其他登录会话随之失效。 ## 验证 ```powershell python -m pytest -q node --check frontend/app.js python -m py_compile app.py scanner/agent.py scanner/scan_windows.py scripts/reset_owner_password.py ``` ## 隐私边界 默认无遥测。服务端保存文件索引元数据、任务及健康数据;采集器只提交位于授权根目录内、符合扩展名与规则且经服务端分类为工作资料的元数据。用户可自行将数据库、备份和采集器配置纳入所在系统的磁盘加密与访问控制。 LAN 部署时可额外设置 `WORKBENCH_COOKIE_SECURE=1`,确保浏览器只通过 HTTPS 发送登录 cookie。若 HTTPS 代理在同机反代,Flask 可以继续只监听 `127.0.0.1`;只有需要容器/其他主机直连 Flask 时才设置 `WORKBENCH_HOST`,并应将主机防火墙限制为代理/可信 LAN。