🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI
广告☁️ 云服务器特惠阿里云首购 8 折 · 腾讯云合作特惠
DeepSeek Harness Hub
← 返回列表

ffseika0304/code-ownership-audit

DeepSeek Harnessspec-screened扫描:中风险在 GitHub 查看 ↗
未验证

代码所有权体检 · Code Ownership Audit

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/9/7 · 已提供中文文档

判定 Python 代码是原创还是演绎作品 — 纯本地 AST 分析,零依赖不联网。Agent Skill,任何智能体可用。Detect derivative work in Python code, offline & dependency-free.

综合分
28.5
GitHub 分
28.5
用户评分
—
★ Stars
0
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add ffseika0304/code-ownership-audit
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
信任档位:已验证本站已于 0 天前真实安装成功
是什么
dsh 原生插件 · chat
装得上吗
本站已真实安装成功(非静态推断)
安全吗
本站尚未对该插件做风险分级(暂未覆盖,不等同于无风险)
还在维护吗
活跃:最近一次提交在 18 天前

档位由下列信号合成:本站实装验证(真实安装,当前最高到 L4)· 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。下方各区块是它的证据明细。 验证判据与等级说明 →

🟢实装验证通过· 2026/9/25
由本站实装验证器在真实 dsh 环境安装成功,非静态推断。
数据截至 2026/9/21(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

由 DeepSeek 最新模型翻译生成
代码所有权体检 · Code Ownership Audit

判定 Python 代码是原创还是演绎作品 —— 给出与上游最长相同表达片段、逐条豁免依据和风险清单。

🥇 纯 AST 静态分析,零第三方依赖,代码不出本机 🥇

简体中文 ·
English

GitHub(主源) ·
Gitee(国内镜像)

安装 ·
使用 ·
定价 ·
国内加速 ·
反馈问题

你引入了一段开源代码,改了改,现在它算谁的?

- 法律上,"改过"不等于"是我的"。 演绎作品(derivative work)仍受上游许可证约束。
- AI 大量生成代码后,这个问题变得更普遍。 你可能根本不知道某段实现和上游有多像。
- 交付给甲方时,把演绎作品当自有资产声明,是实打实的风险。

这个工具做的事:把你的代码和上游逐个 AST 节点比,告出最长的相同表达片段,并对每条风险给出豁免依据(是通用惯用法?是接口约定必然形状?还是真的抄了表达)。

Highlights

🥇 纯 AST 静态分析,不联网、不调模型。 审计引擎只用 Python 标准库 —— 你的代码不出本机,不存在隐私泄露。

🥇 两种安装方式,同一套引擎。 Agent Skill 和 DSH Plugin 共享 audit.py,按你的 Agent 支持情况选。

🥇 两档报告,预览免费不限次。 免费档给出风险总数、类型分布、一句话摘要;完整档 ¥0.2/次,含行号、修复建议、服务器签名审计凭证。

🥇 x402 协议付款。 服务端是纯支付预言机:只验钱、签发回执,不接收也不存储你的任何代码。回执用内嵌公钥离线验签。

🥇 31 项测试覆盖。 python -m pytest -q 一键跑完,全部通过再发版。

国内加速

本仓库主源在 GitHub,国内用户可通过 Gitee 镜像加速访问:

| 用途 | 链接 |
|---|---|
| 仓库镜像 | https://gitee.com/seikabook/code-ownership-audit |
| raw 直链 | https://gitee.com/seikabook/code-ownership-audit/raw/main/ |
| 安装 Skill | git clone https://gitee.com/seikabook/code-ownership-audit.git |

两种安装方式

同一套审计引擎(audit.py),两种装载形态,按你的 Agent 支持情况选:

| | Agent Skill | DSH Plugin |
|---|---|---|
| 形态 | SKILL.md 技能目录 | Cordis 模块,导出 apply(ctx) |
| 装载 | 放进 Agent 的 skills 目录 | dsh plugin --profile web add |
| 入口文件 | SKILL.md | index.js + cordis.patch.yml |
| 适用 | Claude Code / Codex / Cursor / opencode / Hermes / WorkBuddy 等 | DeepSeek Harness |
| 需要 Node.js | 否 | 是(≥ 22) |

两者互不干扰,DSH 用户想走 skill 路径也可以。
Agent Skill(Claude Code / Codex / Cursor / opencode / Hermes / WorkBuddy 等)

对你的 Agent 说一句话就行:

请把 https://github.com/ffseika0304/code-ownership-audit 安装为 skill

它会自己 clone 到对应的 skills 目录。之后直接说:「帮我做个代码所有权体检」。

国内加速安装:

git clone https://gitee.com/seikabook/code-ownership-audit.git \
~/.agents/skills/code-ownership-audit

各 Agent 的 skills 目录

⚠️ 目录名必须是 code-ownership-audit —— opencode、Cursor 等要求目录名与 frontmatter 的 name 一致,改名会导致加载失败。

~/.agents/skills/ 是 opencode 与 Cursor 都识别的通用路径。其他位置:

| Agent | 全局 | 项目级 |
|---|---|---|
| Claude Code | ~/.claude/skills/ | .claude/skills/ |
| opencode | ~/.config/opencode/skills/ | .opencode/skills/ |
| Cursor | ~/.cursor/skills/ | .cursor/skills/ |
| Codex | ~/.codex/skills/ | .codex/skills/ |
| Hermes | ~/.hermes/skills/ | — |
| WorkBuddy | ~/.workbuddy/skills/ | .workbuddy/skills/ |
| DSH(零插件路径) | ~/.dsh/skills/ | .dsh/skills/ |

opencode 与 Cursor 同时兼容 .claude/skills/ 和 .agents/skills/,装一份即可被多个 Agent 共用。

DSH Plugin(DeepSeek Harness)

dsh plugin --profile web add github:ffseika0304/code-ownership-audit

安装后重启 profile 让 bundle 层生效:

dsh --profile web

技能随即出现在模型可见的技能目录里,遇到「这段代码算不算抄的」这类场景会自动加载,也可以直接点名:
「用 code-ownership-audit 检查 ./my-code 相对 ./upstream 的所有权情况」

锁版本 / 本地调试 / 卸载

锁定 commit(推荐,DSH 仍是 developer preview)
dsh plugin --profile web add "github:ffseika0304/code-ownership-audit#"

本地目录(开发调试)
dsh plugin --profile web add link:/absolute/path/to/code-ownership-audit

卸载 / 更新
dsh plugin --profile web remove code-ownership-audit
dsh plugin --profile web update code-ownership-audit

插件层是纯 ESM JavaScript、零构建、零运行时依赖,因此不会触发 pnpm 的 allowBuilds 授权中断。

快速使用

免费预览:风险数量 + 类型分布 + 一句话摘要
python audit.py  --reference  --tier preview

完整报告:代码位置 + 行号 + 修复建议
python audit.py  --reference  --tier full

目标和参照都可以是单个 .py 文件或整个目录。

两档报告

| | 免费预览 | 完整报告 |
|---|---|---|
| 价格 | 免费、不限次 | ¥0.2 / 次 |
| 风险总数与分级统计 | ✅ | ✅ |
| 风险类型分布 | ✅ | ✅ |
| 每条一句话摘要 | ✅ | ✅ |
| 代码位置 + 具体行号 | — | ✅ |
| 逐条修复建议 | — | ✅ |
| 可导出 md / json | — | ✅ |
| 服务器签名审计凭证 | — | ✅ |
| 是否需要联网 | 完全离线 | 仅付款那一步 |

预览档在代码层就不构造行号与建议字段,不是前端隐藏 —— 说到做到。

关于"付费解锁的到底是什么"

说实话:完整报告是在你本机算出来的。付费解锁的不是"计算结果",
而是带服务器 RSA2 签名的认证交付物 certified.json / certified.md
—— 用来证明这次审计确实付费执行过,可存档、可交给甲方、可离线复验签名。

技术上懂行的人当然可以直接跑 --tier full 拿全量。这是"本地执行"架构的必然,
我们没有加壳也没有混淆 —— 代码保持干净可读。定价逻辑落在凭证价值上,
而 ¥0.2 这个价格本身就让绕过这件事不值得。

付款流程(x402)

完整报告走 x402 协议,用支付宝 AI 钱包付款。买家侧若还没有钱包 CLI:

npx -y @alipay/agent-payment@latest install-experience
alipay-bot check-wallet     # 自检

付款时依次执行两条命令(两条都要跑,只跑第一条拿不到凭证):

第 1 步:扫码付款
alipay-bot 402-buyer-pay --file

第 2 步:查询支付状态,取回 proof + 签名回执
alipay-bot 402-query-payment-status --trade-no
服务端是纯支付预言机:只验钱、签发回执,不接收也不存储你的任何代码。
回执用内嵌公钥(paygate.SERVER_PUBKEY_PEM)离线验签,任何字段被篡改都会失败。

依赖

| 用途 | 依赖 |
|---|---|
| 审计引擎(免费档) | 无 —— 只用 Python 标准库 ast |
| DSH 插件装载层 | 无 —— 纯 ESM JavaScript,零构建零依赖 |
| 付费档离线验签 | pycryptodome |
| 付费档付款 | 支付宝 AI 钱包 CLI |

运行环境与权限

| 项目 | 说明 |
|---|---|
| Python | ≥ 3.9(审计引擎本体) |
| Node.js | ≥ 22(仅 DSH 插件装载层需要) |
| 网络访问 | 免费档零网络访问;仅付费档的付款那一步联网访问支付预言机 |
| 上传数据 | none —— 代码不出本机 |
| 模型调用 | none —— 不调用任何 LLM |
| 文件写入 | 只写 --out-dir 指定的产物目录,不改动源码目录 |

测试

python -m pytest -q     # 31 项(14 项功能测试 + 17 项结构测试)

仓库结构

code-ownership-audit/
├── audit.py            # 审计引擎(741 行纯 Python AST 分析)
├── paygate.py          # 付费网关(x402 协议 + pycryptodome 验签)
├── SKILL.md            # Agent Skill 入口
├── index.js            # DSH Plugin 入口(纯 ESM,零依赖)
├── cordis.patch.yml    # DSH 插件声明
├── dsh-plugin.json     # DSH 插件元数据
├── package.json        # npm 元数据(仅用于 DSH 插件发现)
├── icon.png            # 插件图标(PNG)
├── icon.svg            # 插件图标(SVG)
├── test_audit.py       # 14 项功能测试
├── test_structural.py  # 17 项结构测试
├── LICENSE             # MIT
└── .gitignore

常见场景

- 引入开源代码后,确认法律上还算不算自己的
- 净室重写(clean-room rewrite)后,验证是否真的切断了上游
- 交付前自查,避免把演绎作品当自有资产
- 合并外部贡献(PR)时,确认来源干净

Star History

Disclaimer

本工具给出的是技术事实(哪些表达相同、相同到什么程度),不构成法律意见。
最终的许可证判断请咨询专业人士。

本项目为社区开源项目,与 DeepSeek AI 无隶属关系,非官方插件。

License

MIT

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

同作者(ffseika0304)的其他插件

💬 加入社群

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

DPharness QQ 群二维码,QQ 扫码进群
QQ 扫码进群
DPharness 飞书群二维码,飞书扫码进群
飞书扫码进群