DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Civhash — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
C

@dsh-external/dsh-civhash

Civhash

将 CivNexus6 ConsoleApplication1 的 hash 功能制作成 civhash.exe CLI,并注册为 AI 可调用的 civhash 工具

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:Sumcam-L/dsh-civhash#c022f586370c5ae5da5ba75927a89abbdda71505
README兼容性版本

兼容性与来源证明

Civhash 以 @dsh-external/dsh-civhash 发布,当前版本为 0.0.1。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
any
发布来源
github
Registry 更新时间
2026/10/19

版本

0.0.1stable
2026/10/19

相关插件

正在加载相关插件…

最新版
0.0.1
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
any
许可证
BSD-3-Clause
发布源
github
GitHub
★ 0
周下载
0
最近提交
2026/10/19
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 developer-tools 分类下经过校验的插件。

Web App@deepseek-ai/dsh-web-appdsh 浏览器界面捆绑包:位于 dsh-base 之上的 Web 补丁层,加上运行时粘合插件(提供前端 dist、Web 界面提示符、bash 运行时变量和 URL 行)Sdk Minimal@deepseek-ai/dsh-sdk-minimal独立的最小 SDK 配置包:JSON-RPC、一个 DeepSeek 适配器、持久化 Shell 和 JSONL 会话Sdk App@deepseek-ai/dsh-sdk-appdsh SDK 配置包:基于 dsh-base 提供 stdio JSON-RPC 服务和进程生命周期管理Experimental Inspector@deepseek-ai/dsh-experimental-inspector用于 Host 调试和 Client Runtime 检查的实验性跨 realm CDP hub

README

dsh-civhash

把 CivNexus6 ConsoleApplication1 里的 hash 逻辑提取成一个独立的命令行工具 (civhash.exe),并把它注册成 DSH 里 AI 可直接调用的工具。

Civ VI 的引擎里,几乎所有资源名最终都变成一个 32 位 hash:地形、资源、单位、骨骼、动画轨道…… 本工具能正向算这个 hash,也能在已知前缀的前提下把后缀反推出来——排查「这串 hash 原本是哪个名字」时很有用。

能做什么

能力说明
Civ 风格 CRC32逐字复刻 ComputeHash(返回原始状态、无最终异或),同时输出标准 CRC32 便于对照
引擎 FNV-1aPlatform::strhash / StaticHash_FNV1A 语义,支持自定义 seed 与大小写折叠变体(--fold)
骨骼链 hash沿父链自叶向根累加骨骼名,再累加轨道名,最后与 0xFFFFFFFF 异或
反推后缀已知前缀 + 目标 hash,在可控字符集内暴力搜索后缀(CRC 与 FNV 都支持)

目录结构

dsh-civhash/
├── cli/
│   ├── civhash.cpp          # CLI 源码;CRC32 表 / ComputeHash 逻辑逐字取自原工程
│   ├── build.cmd            # MinGW g++ 编译(Windows)
│   └── build.sh             # 同上,bash 版
├── bin/
│   └── civhash.exe          # 随包分发的构建产物(由 cli/build 生成)
├── src/
│   └── index.ts             # DSH 插件入口:注册 _dsh_external_dsh_civhash_hash
├── scripts/
│   ├── build.sh             # 编译 TypeScript(src → lib)
│   └── test.mjs             # 对 bin/civhash.exe 跑已知向量
├── cordis.patch.yml         # DSH bundle patch
├── LICENSE                  # BSD-3-Clause
├── NOTICE                   # 上游 CivNexus6 署名
└── package.json

civhash.exe 用法

civhash <text>                                      :: Civ 风格 CRC32(raw + 标准)
civhash <text> --fnv [--seed N] [--fold]            :: 引擎 FNV-1a
civhash <track> --bone Root/BoneA/BoneB             :: 骨骼链 hash(路径自根到叶,末位为目标骨骼)
civhash --reverse <target>[,<target>...] [opts]     :: 反推后缀(逗号分隔可批量)

  --prefix <P>     已知字段前缀(默认空)
  --max <N>        后缀最大长度 1..6(默认 5;大字符集下 max=6 需数十秒)
  --charset <S>    搜索字符集(默认 A-Z 0-9 _)

数值格式:默认 hex;--int 有符号 int32;--uint 无符号 uint32(reverse 下忽略)
通用:--json 输出 JSON;-h / --help 帮助

反推时必须用 raw 值作为目标——raw 才是 ComputeHash 的原语义,标准 CRC32 是它再异或 0xFFFFFFFF 的结果。

示例:

$ civhash 123456789 --json
{"ok":true,"mode":"hash","algo":"crc","input":"123456789","fmt":"hex",
 "raw":"0x340BC6D9","std":"0xCBF43926","rawValue":873187033,"stdValue":3421780262}

$ civhash Idle --bone Root/Spine/Head --json
{"ok":true,"mode":"bone","algo":"crc","track":"Idle","bone":"Root/Spine/Head",
 "order":["Head","Spine","Root"],"hash":"0xFF0361A1","hashValue":4278411681}

$ civhash --reverse 0x16D22538 --prefix TERRA --max 2
algo     : CRC32 (raw 语义)
prefix   : "TERRA"  prefix_state=0xBEEA7DE8
charset  : 37 字符, maxlen=2, 搜索空间 ~1407
target[0] : 0x16D22538  found 1
  7   ->  TERRA7  verify=0x16D22538

作为 AI 工具使用

插件把 CLI 注册为 _dsh_external_dsh_civhash_hash,参数与 CLI 一一对应:

参数类型说明
textstring要哈希的文本(如 TERRAIN_COAST);reverse 模式可省
bonestring骨骼链 Root/A/B(自根到叶);提供时 text 作为轨道名
reversestring目标值(0x 十六进制或十进制,raw 语义);提供时进入反推模式
prefixstring反推:已知字段前缀
maxnumber反推:后缀最大长度 1-6(默认 5)
charsetstring反推:搜索字符集(默认 A-Z 0-9 _)
fnvboolean改用引擎 FNV-1a;reverse / bone 同步切换
seedstringFNV 种子(默认 0x811C9DC5,仅 fnv 生效)
foldbooleanFNV 大小写折叠变体(仅 fnv 生效)
int / uintboolean输出 int32 / uint32 十进制(默认 hex;reverse 下无效)

安装

dsh plugin --profile web add link:/path/to/dsh-civhash
# 然后把 "@dsh-external/dsh-civhash" 加进 profile package.json 的 dsh.profile.bundles

插件默认使用包内自带的 bin/civhash.exe;要指向别处的可执行文件,用 config.exePath 覆盖。

构建

# TypeScript 插件(src → lib)
bash scripts/build.sh

# CLI(产出 cli/civhash.exe;Windows 下也可用 cli\build.cmd)
bash cli/build.sh
cp cli/civhash.exe bin/civhash.exe

node_modules 由 scripts/build.sh 自动建立 junction 链接,指向本机已有的 dsh-super-injector / npm 版 dsh 依赖树;仓库本身不提交 node_modules。

测试

node scripts/test.mjs      # 或 npm test

对包内 bin/civhash.exe 跑一组已知向量(标准 CRC32 / Civ raw / FNV / 折叠变体 / 骨骼链 / 反推往返 / int·uint 格式 / 退出码)。重编 exe 后若 hash 语义有变,这里会直接失败。 用 CIVHASH_EXE 环境变量可指定其他可执行文件。

验证记录

  • 标准向量:std("123456789") = 0xCBF43926 ✓
  • 与原工程旧 exe 对照:NOTIFICATION_ADDED = 0xF26F3ACF ✓
  • 重编的 cli/civhash.exe 与原有 bin/civhash.exe 对 12 组用例输出逐字节一致 ✓
  • 骨骼 hash 与 node zlib 交叉验证(叶→根名字 + 轨道名的标准 CRC32)✓
  • 反推往返:raw("TERRA7") = 0x16D22538,prefix TERRA → 精确找回 7 ✓
  • FNV 反推往返:fnv("UNIT_ARCHER") = 0x3C250997,prefix UNIT_ARCHER → 空后缀命中 ✓

致谢与许可

hash 逻辑(CRC32 表、ComputeHash、骨骼层级 hash)提取自 deliverator23/CivNexus6,原作者 deliverator23。 本仓库仅包含这一小部分逻辑及其 DSH 封装。

以 BSD-3-Clause 许可发布,见 LICENSE。本工具与 Firaxis / 2K 无关, 不包含任何游戏本体资源。