聚类游戏报错并定位冲突 mod,给出修复证据
30.8/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/27 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add Jzc1098/rimworld-log-plugin该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:需留意
是什么
dsh 原生插件 · dev
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 5 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
⚠︎ 实装验证未通过(unknown · 2026/10/27) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
可执行外部命令读写/删除本地文件
查看扫描证据(共 19 处,展示前 18 条)
- 执行外部命令固定命令index.js:228
const out = execFileSync('tasklist', ['/fo', 'csv', '/nh'], { - 读取本地文件index.js:324
mtimeMs = statSync(filePath).mtimeMs; - 读取本地文件index.js:982
if (!existsSync(other)) return { text: `目录不存在:${other}` }; - 读取本地文件index.js:985
if (!existsSync(script)) { - 执行外部命令来自配置/变量index.js:992
const out = execFileSync(process.execPath, argv, { - 读取本地文件plugins/registry.js:79
const pkg = JSON.parse(readFileSync(path.join(PLUGIN_ROOT, 'package.json'), 'utf8')); - 读取本地文件plugins/registry.js:88
const pkg = JSON.parse(readFileSync(path.join(PLUGIN_ROOT, 'package.json'), 'utf8')); - 读取本地文件plugins/registry.js:104
if (!existsSync(file)) return null; - 读取本地文件plugins/registry.js:105
const parsed = JSON.parse(readFileSync(file, 'utf8')); - 读取本地文件plugins/registry.js:150
return readdirSync(path.join(PLUGIN_ROOT, 'tools'), { withFileTypes: true }) - 读取本地文件plugins/registry.js:162
return readdirSync(PLUGIN_ROOT, { withFileTypes: true }) - 读取本地文件plugins/state.js:43
if (!existsSync(file)) return {}; - 读取本地文件plugins/state.js:44
const parsed = JSON.parse(readFileSync(file, 'utf8')); - 读取本地文件plugins/state.js:64
if (!existsSync(dir)) mkdirSync(dir, { recursive: true }); - 写入本地文件plugins/state.js:64
if (!existsSync(dir)) mkdirSync(dir, { recursive: true }); - 写入本地文件plugins/state.js:65
writeFileSync(statePath(), JSON.stringify(next, null, 2) + '\n', 'utf8'); - 读取本地文件lib/config.js:84
if (!existsSync(file)) return {}; - 读取本地文件lib/config.js:85
const parsed = JSON.parse(readFileSync(file, 'utf8'));
扫描于 2026/11/1(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
为 DSH(DeepSeek Harness)提供只读的 RimWorld 日志分析:聚类错误和警告,结合证据归因到具体 mod,审计修复补丁。兼容 RimCrow。
README
由 DeepSeek 最新模型翻译生成RimWorld 日志分析插件(DSH)
中文 · English
免责声明(RimWorld EULA 要求)
Portions of the materials used to create this content/mod are trademarks and/or
copyrighted works of Ludeon Studios Inc. All rights reserved by Ludeon. This
content/mod is not official and is not endorsed by Ludeon.
一个只读的 DSH(DeepSeek Harness) 插件:读取并预聚类 RimWorld 游戏日志(推荐配合 RimCrow 使用),把结论交给当前会话,让 AI 帮你定位 mod 冲突、崩溃原因与帧数掉点。它不改游戏、不改 mod 列表,只读日志与文件元数据。
展开完整文档(README 剩余 1 节)
RimWorld 日志分析插件(DSH) 中文 · English 免责声明(RimWorld EULA 要求) Portions of the materials used to create this content/mod are trademarks and/or copyrighted works of Ludeon Studios Inc. All rights reserved by Ludeon. This content/mod is not official and is not endorsed by Ludeon. 一个只读的 DSH(DeepSeek Harness) 插件:读取并预聚类 RimWorld 游戏日志(推荐配合 RimCrow 使用),把结论交给当前会话,让 AI 帮你定位 mod 冲突、崩溃原因与帧数掉点。它不改游戏、不改 mod 列表,只读日志与文件元数据。 - 首个公开版本:v1.6.9 - 许可证:PolyForm Noncommercial 1.0.0(非商业、源码可见,见 LICENSE);第三方声明与 RimWorld 使用规则见 NOTICE.md - 免费(RimWorld EULA 的要求):不卖、不含广告、插件内不请求捐赠 一、这是什么 | 它做什么 | 它不做什么 | | 读 RimCrow 实时日志 / Player.log,聚类错误与警告 | 不修改 RimWorld、不改 ModsConfig.xml | | 按堆栈归属到具体 mod,给出证据与样本 | 不替你启用/禁用 mod(清单给你,勾选你自己来) | | 生成/审计修复补丁(XML 补丁、Harmony DLL 的工作区) | 不下载、不分发任何第三方 mod 内容 | | 归档工作区快照、对账、导出迁移包 | 不上传任何日志或文件 | 二、前置条件 | 必需 / 可选 | 是什么 | | 必需 | DSH(DeepSeek Harness) 桌面版,且已能正常对话 | | 必需 | Node.js 20+ 与 pnpm(安装依赖用;DSH 自带运行时也够) | | 可选 | RimCrow:装了它日志才是结构化 JSON(分析质量显著更好) | | 可选 | Node 解析 Player.log 也能用,只是信息量少 | 三、快速开始(每一步都可直接复制给 DSH) 第 0 步:环境自检 复制这句给 DSH: 检查我的环境:Node 版本、pnpm 是否可用、DSH 版本;有没有装 RimCrow、RimWorld 装在哪个目录。 缺什么就给我一条可直接执行的安装命令,别只描述。 第 1 步:装依赖(本仓库不含 node_modules) 在本仓库根目录执行: pnpm install 没有 pnpm 时:npm install。 为什么需要:插件导出 Config(DSH 行配置的 Schemastery schema),运行期依赖公共包 schemastery。 少了它,插件安装会报 ERR_MODULE_NOT_FOUND。安装后目录里应出现 node_modules/schemastery。 第 2 步:安装插件 复制这句给 DSH(把路径换成你 clone 下来的绝对路径): 用 plugin_manager 的 install_bundle 安装这个目录:<本仓库的绝对路径>。 装好后告诉我结果(applied / failed 及原文),并提醒我重启 DSH。 不要手动改 profile 的 package.json 或 cordis.patch.yml,也不要 plugin_manager 之外的 pnpm install 落在 profile 目录里。 第 3 步:重启 DSH 关掉 DSH 进程再打开(模块缓存键是「包」不是「行」,热替换无效)。 第 4 步:验证 复制这句给 DSH: 跑 rimworld_plugin_guide action=usage 看工具都在;再跑 rimworld_log_scan action=detect 确认能读到日志;最后分析最近一次游戏日志,只报新增的 ERROR 并说明各自归哪个 mod。 四、能做什么(工具与动作) rimworld_log_scan(分析) | action | 作用 | | analyze(默认) | 聚类错误/警告、按堆栈归属 mod、给证据与样本;compact=true 出紧凑签名视图(每簇一行,引擎帧折叠);ignore 过滤已知噪音 | | detect | 环境与日志来源清单(profile、日志文件、启用模组、来源性价比) | | grep | 在原始日志里按子串或 /正则/ 检索;context=0..3 带相邻行 | | mods | 起草启用/禁用清单(只出草稿,不写入) | | mods-changed | 时间窗内更新/新增/移除的 mod(目录时间 + About 版本与基线比对) | | diff | 本次 vs 上次会话:新增 / 消失 / 计数变化 | | patchaudit | 工作区源码 ↔ 已部署 DLL 的哈希与时间对照 | | aboutcheck | About.xml 六项校验(结构、裸 &、description、BOM/乱码) | rimworld_workspace_archive(归档) list / snapshot(按天保留 3 份)/ export(迁移包,只带最新快照)/ verify(快照与工作区逐文件对账)/ note(写归档记录并拍快照)。 rimworld_plugin_guide(自述) report / usage(参数取值实时生成)/ since / config(当前生效设置与每个值的来源)。 rimworld_plugin_compare(按块比对) 与另一份插件副本按块比对差异(不判断谁更新)。 命令 /rimlog、/rimmods 与上面工具同名动作等价。 五、设置 装好并重启后,设置 → 左栏「RimWorld 日志」(在「Agent 预设」下面)是一个独立设置页,7 个键可直接编辑。 生效优先级(从高到低): 1. 环境变量 2. 设置界面(写进 profile patch) 3. ~/.dsh/rimworld-log/settings.json 4. 内置默认 两个如实说明:保存后要重启 DSH 才生效(已加载的 host 半区不会热重载配置);环境变量始终优先。 六、环境变量 | 变量 | 作用 | | RIMWORLD_DIR | RimWorld 安装根(其下有 Data/、Mods/) | | WORKSHOP_DIR | Steam 工坊内容目录 …/workshop/content/294100 | | RIMCROW_HOME | RimCrow 安装根(非默认位置时用) | | CE_MOD_DIR | Combat Extended 的 mod 目录(CE 相关诊断脚本用) | | VISUAL_EXCEPTIONS_DLL | VisualExceptions 的 DLL 路径(tools/probe-ve.mjs 用) | | DSH_RIMWORLD_PATCH_DIR | 生成补丁的输出目录(默认 ~/.dsh/rimworld-log/patches) | | RIMLOG_WORKSPACE_DIR | 工作区目录(快照与归档的来源) | | RIMLOG_STATE_DIR | 插件状态目录(默认 ~/.dsh/rimworld-log) | | RIMLOG_SNAPSHOT_DIR | 快照目录(默认工作区旁的 snapshots) | | RIMLOG_AUTO_ARCHIVE=0 | 关闭分析后的自动归档速记 | 七、排错 工具没加载或设置页没出现时,复制这句给 DSH: 排错:先看 plugin_manager 的 list_plugins 里有没有 rimworld-log;有的话看它报错原文;再确认插件目录里 node_modules/schemastery 是否存在(不存在就 pnpm install);最后确认我重启过 DSH。 检查清单: 1. 插件目录里有没有 node_modules/schemastery?没有 → 第 1 步没做。 2. list_plugins 里 rimworld-log 是 enabled 还是 failed?failed 看诊断原文。 3. 重启过 DSH 吗?(设置与工具都只在重启后生效) 4. 设置左栏没有「RimWorld 日志」→ 跑 rimworld_plugin_guide action=config,看它能不能报出设置(能=host 半区正常,只是界面未注册,请附 DSH 版本反馈)。 5. 日志读不到 → 跑 rimworld_log_scan action=detect,确认 profile 与日志路径。 八、卸载 复制这句给 DSH: 用 plugin_manager 移除 rimworld-log 插件;告诉我文件夹和 ~/.dsh/rimworld-log 状态目录要不要删,我自己决定。 删 ~/.dsh/rimworld-log 会一并清掉增量游标、mod 版本基线与可选的 settings.json。 九、文档 | 文档 | 给谁看 | | 使用参考.md | 使用者:能直接复制给 DSH 的一句话清单 | | 安装说明.md | 完整安装、确认、排错、卸载 | | COMBAT_EXTENDED.md | CE 兼容参考(判定、四类补法、已验证的坑、载具一节) | | 块功能介绍.md | 块登记、按块比对与选择性导入(维护者/协作者) | | 插件清单.md | 每个文件干什么、哪些能删 | | HISTORY.md | 版本累积更新记录 | | RELEASE.md | 如何打交付包(维护者) | 十、版本与许可 v1.6.9 — 首个公开版本。 版本历史见 HISTORY.md。 - 插件代码与文档:PolyForm Noncommercial 1.0.0(见 LICENSE)(允许非商业的使用、修改与再分发;不允许商业用途) - Ludeon 声明与「本仓库不是什么」:见 NOTICE.md - RimWorld 相关材料:归 Ludeon Studios Inc.,本插件非官方、未获背书(声明原文见本页顶部与 NOTICE.md) - RimCrow:独立 MIT 项目(另作作者),本仓库不包含它 - 本仓库不包含任何第三方 mod 的代码、贴图或数据;文档中出现的 mod 名称仅作事实引用
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
Jzc1098/rimworld-log-plugin
聚类游戏报错并定位冲突 mod,给出修复证据
相关插件 · 开发 / 工程
隐私简历生成器reactive-resume/reactive-resume
Reactive Resume 已迁至 GitHub 上的…
★ 45,125已汉化MCP
71.7
AI 架构文档生成器sopaco/deepwiki-rs
🚀 Litho 已进化为 Terrain —— 给你的 AI 智能体一张会呼吸的代码库地图。
★ 3,157已汉化DSH
70.8
长时任务执行闭环AMAP-ML/LongHorizon-Harness
面向 Computer-Use Agent 的 Loop Engineering
★ 1,764已汉化DSH
70.5
AI 编程纪律方法包GanyuanRan/Aegis
让 AI 编程 agent 变得可信:少返工、更安全、说“完成”前先给证据。
★ 1,384已汉化DSH
69.6
多代理编排运行时Enderfga/claw-orchestrator
面向编程智能体的运行时。把 Claude Code、Codex、Antigravity、Grok…
★ 586已汉化MCP
69.4
记忆进化插件csyangwen/dsh-memory-evolve
dsh-memory-evolve 使用场景指南
★ 461已汉化DSH
67.9