development.md 2.0 KB

从公开源码开发

使用公开 v8 分支,推荐 Node 24.15.0、pnpm 11.27.1(源码构建与宿主插件管理统一为该版本)。无需私人任务文件或原书。

git clone --branch v8 --single-branch https://github.com/lingfengQAQ/webnovel-writer.git
cd webnovel-writer
pnpm install --frozen-lockfile
pnpm lint
pnpm test
pnpm test:release
pnpm build
pnpm --filter @linfengqaqtat/dsh-scriptor typecheck
pnpm --filter @linfengqaqtat/dsh-scriptor dump-config-check
pnpm --filter @linfengqaqtat/dsh-scriptor pack-check
pnpm check:public

常规检查使用合成夹具与固定响应,无需 API key。SCALE_BENCH=1 的容量测试和真实模型评测单独运行,不是普通 PR 的前提。大规模容量报告写入 .tmp/scale-benchmark/。

目录

目录 职责
packages/core 书仓、状态推导、规划、账本、记忆、检索、导出与安全写入
packages/bundle 宿主接线、原生客户端、随包技能和打包
packages/drafting、review、polish 写稿、审读和修改相关实现
packages/embedding-provider 独立可选模型提供方与原生设置
scripts/release 公开源码检查、版本、许可证、发行与安装验收

阅读 书仓契约 后修改涉及数据的代码。变更行为带回归测试,文件写入复用现有事务、路径和作者授权通道。

安装已构建的 DSH 后,可使用 packages/bundle/scripts/start-local.mjs,传入该 CLI 的实际 lib/bin.js 路径;启动器动态生成本机 patch,不需要仓库里的绝对路径文件。开发用 patch 与正式安装入口不要同时启用。

发行构建只内联项目实现和普通依赖,Cordis/DSH/React 等宿主共享模块保留 peer 身份。构建生成原始第三方声明,并通过实际 tarball 检查证明随包内容。

提交前查看 CONTRIBUTING。主线只合入审阅后的 PR;首次发行和后续更新见 发行说明。