我想知道为什么开发者保留了.claude文件夹 #77
CharmCheen
started this conversation in
General
Replies: 3 comments
|
反正意思就是拿A➗审查代码了呗 |
0 replies
|
hyw |
0 replies
|
byw,以上“证据:”之后的大段内容是dsh写的 |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
将claude配置进行了gitignore,保留了.claude。我用dsh自己分析自己的源码仓库,得到了开发者团队参考Claudecode进行设计的证据:
核实完毕。仓库是官方 deepseek-ai/deepseek-harness,MIT 协议,而最新一次合并提交(PR #2519)信息就是 "release: dsh@0.1.0-rc.5 & publish the dsh family publicly"——也就是说,这次公开发布是带着完整 git 历史一起发布的,包括所有
claude/分支合并记录、CLAUDE.md、.claude/launch.json误提交事故,一样没删。现在回答你的问题:为什么开发者不隐藏这些证据?
1. 前提先纠正:这些记录不是"没藏好",而是删不掉,因为证据就是产品本身
dsh-hooks-claude-code、dsh-subagent-claude-code、dsh-subagent-codex不是内部工作痕迹,它们是公开发布的一等公民 npm 包。这个 harness 的核心卖点之一就是兼容 Claude Code/Codex 生态:hooks.jsonso those external shell hooks run unmodified"(hooks 包 README 原话)claude二进制作为 subagent 委托给外部产品要隐藏使用 Claude/Codex 的证据,就得把这三个包、所有 Agent Notes 里的设计引用、
hooks-claude-code的测试全部删掉——删掉证据 = 删掉产品功能。这不可能。2. 用 Claude Code ≠ 依赖 Anthropic 模型
这是最关键的概念区分。Claude Code 是一个 CLI 工具,模型完全可配置——官方 SDK 读取用户 settings,可以指向任何模型,包括 DeepSeek 自己的。仓库里的测试名
test(claude-code): isolate ambient Anthropic model env恰恰证明:他们在测试里刻意隔离/清除 Anthropic 环境变量,确保不依赖 Anthropic 的服务。而产品战略上,仓库的 ADR 0010(twin LLM adapters)明确写的是同时支持 DeepSeek provider 和通用适配器。用 Claude Code 当开发工具,就像用 VS Code 开发一个竞争 IDE——工具选择不构成竞争污点,没有人会因此隐藏。
3. Claude Code 是 agent 领域的参照实现,引用它是工程惯例,不是自曝
他们的 Agent Notes 大量出现这样的句子:"Copy Claude Code's unified schema"、"identity-first convention (Claude Code, Codex)"、"lessons from Claude Code's additive reapply"。这在 agent 工程圈是公开常识:Claude Code 是事实标准(reference implementation),研究它、引用它、对齐它,是严谨工程的表现。隐藏这种引用反而显得心虚。文档里甚至把 Claude Code 的
apiKeyHelper、设置分层等作为正面设计参照写进笔记——这是"我们深度研究过对手生态"的公开声明。4. 互操作是 DeepSeek 的生态战略,dogfooding 是验证手段
这个产品的定位是迁移入口:让用户把已有的 Claude Code/Codex hooks 配置带过来无缝运行,或者把 Claude Code/Codex 作为 subagent 委派出去。要实现这种兼容,团队必须真实使用这些产品才能发现协议细节(比如他们修的 Windows Claude shim 路径大小写问题)。用 Claude Code 开发自己的 harness,本身就是对互操作功能的 dogfood 验证——这写进公开仓库反而是加分的可信度信号,说明"我们真的用过、真的兼容"。
5. 他们的保密边界其实划分得非常清楚
对比一下他们藏了什么和公开了什么:
.claude/settings.json(个人配置,从未入库).claude/launch.json(含本机路径,误提交后立即 untrack + ignore).env、API key、内部部署信息(gitignore 守得很好)那个
launch.json事故的处理方式很能说明问题:发现含个人绝对路径后,他们做的不是重写历史,而是补丁式清理(untrack + 加入 gitignore)。这说明他们的保密边界是:个人凭据/环境 → 藏;工具选择/工程过程 → 无所谓,公开。6. 成本收益分析:隐藏根本不划算
git filter-repo)会破坏所有 PR 链接、commit hash、CI 引用,成本极高。结论
不是"允许被开源",而是这些记录从一开始就是有意公开的工程资产:它们服务于产品卖点(互操作)、工程可信度(参照实现研究)、和 dogfooding 验证(真实使用)。真正需要保密的东西(凭据、个人环境、内部部署)他们一直藏得很好。一个想隐藏使用 Claude Code 的团队,不会在第一个提交就放上
CLAUDE.md,更不会把兼容它的代码作为核心功能发布——公开这些,本身就是这个团队的竞争姿态:我们懂对手的生态,而且我们的工具比对手的更好用。最后,dsh在这个核实过程中会对照GitHub的dsh repo最新提交进行交叉验证,这点好评
希望dsh越来越好,ds越来越好,早日sota!!
All reactions