2026年3月31日,Anthropic公司发布的Claude Code npm包因配置失误,将包含51.2万行完整TypeScript源码的调试文件公开,引发全球开发者社区关注。随后,Anthropic通过DMCA投诉下架了数千个直接分发泄露源码的仓库。
在此背景下,开发者Sigrid Jin选择不复制任何受版权保护的源码,采用干净室重写(Clean-room Rewrite)原则,仅基于公开的Claude Code功能设计与架构认知,用Python+Rust从零构建功能等价的代理框架,这就是 claw-code 的诞生背景。项目发布后短时间内,GitHub星标快速突破10万,成为社区关注的焦点。
需要明确的是:claw-code 与 Anthropic官方的Claude Code是两个完全独立的项目。前者是社区基于干净室原则重写的开源框架,后者是Anthropic维护的闭源商业产品,二者无官方隶属关系,claw-code 也不主张对原始Claude Code源码的所有权。
二、claw-code 是什么
claw-code 的核心定位是开源、跨平台、模型无关的AI编程代理框架,可理解为连接大模型、开发工具与工程流程的运行时框架,核心目标是帮助开发者以更可控、可扩展的方式,让AI自主完成完整开发任务。
核心特点
- 干净室合规:全程未参考或使用Claude Code泄露源码,仅通过公开功能设计独立实现,完全规避版权风险。
- 模型无关:支持主流开源/闭源大模型接口,兼容OpenAI、Anthropic、阿里通义等标准API格式。
- 终端原生:以命令行(CLI)为核心交互形式,不依赖重型IDE,可在本地、服务器或移动终端远程使用,融入现有开发流程。
- 可扩展架构:采用Python+Rust混合开发,兼顾上层灵活扩展与底层高性能,支持插件化扩展工具与功能。
三、整体架构
claw-code 采用分层模块化架构,核心分为任务理解层、执行规划层、工具调用层、安全控制层与交互层,整体设计贴合工程实践,无复杂抽象概念。
技术栈核心逻辑
整体采用 Python + Rust 混合架构:Python 负责插件、模型对接、流程编排;Rust 负责高性能执行路径、并发调度与终端IO,核心执行引擎正逐步向Rust迁移以提升稳定性与吞吐。
核心模块拆解
1. 任务理解与意图解析
接收用户自然语言指令后,首先解析任务类型(新增功能、修复Bug、代码重构、生成测试等),同时读取项目根目录配置文件、README与依赖清单,快速识别编程语言、框架、目录结构,避免AI在无项目认知的情况下盲目修改。
2. 执行规划与步骤拆解
claw-code 不会直接生成最终代码,而是先制定执行计划。例如用户要求“修复登录接口空指针异常”,工具会按以下流程推进:
- 定位登录接口相关文件
- 分析入参、判空逻辑与异常捕获机制
- 推导可能触发异常的代码位置
- 制定修改方案并执行
- 运行测试验证修复效果
- 反馈修改结果与注意事项
3. 工具调用与工程集成
内置文件、Git、代码检索等能力,并可集成LSP、Docker等生态工具,覆盖软件开发全流程核心操作:
- 文件操作:读取、创建、修改、删除文件与目录
- 代码检索:通过Grep/Glob按关键词、函数名定位代码
- 终端执行:运行构建、测试、格式化、依赖安装等命令
- Git操作:查看提交记录、对比变更、提交代码
- 开发工具集成:对接LSP(语言服务器协议)、Docker、HTTP客户端等
4. 安全与权限控制
为避免AI误操作关键文件或执行危险指令,设计多层安全机制:
- 白名单限制:可配置允许修改的目录,默认禁止修改密钥、配置等核心文件
- 高危操作审核:删除文件、执行系统命令等操作需用户手动确认
- 操作日志留存:每次修改均记录详细日志,方便回溯问题
5. 结果反馈与迭代
任务完成后,claw-code 会输出清晰的修改清单、变更原因、测试结果与风险提示;若执行失败,会明确标注失败原因与可能的调整方向,支持用户重新下达指令迭代优化。
四、典型使用流程与工程落地方式
claw-code 的使用流程贴合开发者日常工作,核心分为初始化、下达任务、人工审核、结果验收四步,易上手且适配现有工程流程。
1. 项目初始化
在目标项目目录下启动 claw-code,工具自动扫描项目结构,识别编程语言、框架、构建工具(如Maven、Gradle、npm等),用户需简单配置:
- 选用的大模型(本地模型或云端API)
- 权限范围(允许修改的目录、高危操作是否需审核)
- 日志存储路径与是否开启自动执行
2. 下达任务指令
指令可简洁可具体,示例如下:
- “为user模块所有函数添加符合Javadoc规范的注释”
- “升级项目依赖至稳定版,修复兼容性问题”
- “为service层生成单元测试,保证基础流程可运行”
- “重构订单模块代码,优化逻辑复杂度与性能”
claw-code 会根据任务复杂度,选择一次性执行或分多轮逐步完成,支持复杂任务的拆分与并行执行。
3. 中间人工审核
执行过程中,若出现以下情况,工具会暂停并请求用户确认:
- 涉及多处核心代码修改
- 需要删除重要文件或目录
- 运行可能影响环境的命令(如系统级操作)
- 修改结果与预期差异较大
用户可选择允许、拒绝或补充具体要求,有效控制风险。
4. 结果验收与迭代
执行完成后,通过diff查看具体变更,对比是否符合预期:
- 符合要求:直接合并修改,纳入项目版本管理
- 不符合要求:撤销修改,重新下达更精准的指令
- 部分符合:调整指令后二次执行,优化细节
五、适用场景与使用注意事项
1. 优先适用场景
结合社区用户反馈,claw-code 在以下场景中效率优势明显:
- 重复性模板工作:批量生成CRUD接口、数据转换类、统一代码格式与注释、添加异常处理模板
- 测试用例补充:自动生成单元测试、接口测试用例,提升项目测试覆盖率
- 旧项目维护与重构:快速理解历史代码逻辑,批量优化命名、冗余逻辑与代码结构,降低维护成本
- 文档规范化:批量生成接口说明、函数注释、使用示例,提升项目可维护性
- 学习与教学:辅助理解复杂代码逻辑、解释技术原理,适合初学者入门
2. 不建议过度依赖的场景
- 核心业务逻辑与高复杂算法设计:需工程师自主主导,保证逻辑严谨性
- 极高安全性要求的底层模块:不建议完全依赖自动修改,需人工严格审核
- 超大规模项目整体架构设计:工具暂无法替代架构师的全局判断
3. 工程使用核心注意事项
- 人工审核不可少:AI生成的代码可能存在逻辑错误、边界条件缺失、安全漏洞,需人工审核后再上线
- 合规与安全:避免上传敏感业务代码至公共模型服务,企业内部优先使用私有化部署
- 避免过度依赖:工程师需保留独立阅读代码、排查问题、设计架构的能力,工具仅为效率辅助
- 留存操作日志:每次AI执行的记录需妥善保存,方便出现问题时快速定位原因
六、示例
示例:用claw-code从零生成一套轻量级5G NR协议仿真工程,涵盖L3、L2、L1三层协议、单元测试环境及测试用例。
1. 任务下达
在项目目录下启动claw-code,通过自然语言下达以下指令:
请以3GPP 5G NR标准(Release 17)为参考,实现一套轻量级开源5G基站(gNB)系统的源码。具体要求如下:
- 实现 L3/RRC无线资源控制层、L2/MAC/RLC/PDCP数据链路层、L1/PHY物理层全部核心功能;
- 支持TDD模式、FR1频段,带宽100MHz,子载波间隔30kHz;
- 提供完整的单元测试框架,覆盖L3/L2/L1各层的关键功能,每个模块至少包含5~10个测试用例;
- 代码使用C编写,模块间接口清晰可扩展。
2. claw-code的任务拆解与规划
面对上述复杂任务,claw-code不会直接开始编写代码,而是首先进行系统化的任务理解与执行规划:
第一步:理解任务范围
claw-code自动读取当前项目目录的README、配置文件及已有代码结构(若存在),快速识别项目采用的编程语言与构建体系。若无现有框架,则按指令中的混合语言要求从零规划目录结构。
第二步:制定分层执行计划
根据5G NR协议栈的层次划分,claw-code将任务拆解为以下并行推进的模块清单
| 层级 |
核心模块 |
主要功能 |
实现语言 |
| L3 |
RRC |
连接管理、移动性管理、系统广播 |
C |
| L2 |
MAC |
调度、HARQ、随机接入、逻辑信道映射 |
C |
|
RLC |
分段重组、重传、AM/UM模式 |
C |
|
PDCP |
头压缩、加密、完整性保护 |
C |
| L1 |
PHY |
调制编码、OFDM等 |
C |
| 测试体系 |
单元测试框架 |
各层模块的单元测试 |
C |
|
测试用例 |
覆盖关键协议流程与边界条件 |
C |
第三步:设置安全约束
根据任务要求,claw-code自动配置:
- 白名单限制:仅允许修改
/src、/test、/include 等指定目录,自动规避系统核心文件;
- 高危操作审核:涉及生成涉及敏感网络端口绑定的代码(如PHY层的SDR驱动接口)时,标记需用户确认。
第四步:模块间接口定义与代码生成
在编写具体实现之前,claw-code会先输出各模块之间的接口定义(.h 头文件接口),确保L3控制面可以通过标准接口与L2/L1层交互,参考开源项目中的模块化设计模式。接口定义完成后,claw-code开始按模块顺序生成代码:
- L3/RRC层:生成连接建立流程的状态机实现、系统信息块(SIB)广播逻辑、切换信令处理等核心功能。
- L2/MAC层:实现调度器算法(比例公平、轮询等可选)、HARQ快速重传机制、随机接入流程(PRACH)处理,以及逻辑信道与传输信道的映射逻辑。
- L2/RLC层:实现三种传输模式(TM/UM/AM)的状态机,完成RLC SDU的分段与重组、重排序及定时器管理。
- L2/PDCP层:集成ROHC头压缩算法,实现加密与完整性保护的数据处理流程。
- L1/PHY层:实现OFDM调制解调、PSS/SSS同步信号生成、信道编码(LDPC/Polar)等物理层核心处理模块,配置子载波间隔30kHz对应273个PRB。
3. 中间人工审核与迭代
代码生成过程中,claw-code会在关键节点暂停并请求用户确认:
场景一:L2调度算法选择
claw-code提示:“MAC层调度器提供比例公平(PF)算法和轮询(Round-Robin)算法两种实现。请选择默认方案,或要求同时生成两种供后续测试对比。”
用户选择:默认采用比例公平算法,同时生成轮询算法作为备选。
场景二:加密模块敏感操作
claw-code提示:“PDCP层加密算法需要配置密钥管理模块,涉及安全敏感代码。请确认使用测试密钥(开发阶段)或预留标准接口(生产级)。建议开发阶段使用测试密钥,后续替换。”
用户确认:使用测试密钥,但要求所有加密函数预留标准NIA2/NEA2算法接口。
场景三:测试用例覆盖率审核
生成完L2层模块后,claw-code自动生成对应的单元测试文件(如 test_mac_scheduler.c),并报告当前覆盖率。若低于预设阈值(如80%),claw-code会提示“MAC层边界条件测试用例不足(当前覆盖65%),建议补充异常分支测试”。用户可选择要求AI补充,或人工介入编写关键用例。
4. 最终验收与交付
完成所有代码生成后,claw-code输出完整的交付成果:
- 源码目录结构:按L3/L2/L1分层组织的完整代码库,每个模块均包含接口头文件与实现文件;
- 单元测试框架:基于C的
cmocka/check 框架搭建,可直接运行 make test 执行全部用例;
- 测试用例清单:
- L3/RRC:连接建立流程测试(正常与异常)、切换信令时序测试、系统广播接收测试;
- L2/MAC:调度器分配公平性测试、HARQ重传最大次数测试、随机接入冲突处理测试;
- L2/RLC:AM模式重传超时测试、UM模式丢包处理测试、分段重组完整性测试;
- L2/PDCP:ROHC压缩/解压缩一致性测试、加密/解密往返测试;
- L1/PHY:PSS/SSS同步检测测试、LDPC编解码正确性测试;
- 编译与运行说明:包含依赖安装、编译参数配置、模拟环境启动等完整文档。
七、总结
claw-code 是一款基于干净室重写原则开发的开源AI编程代理框架,它不复制Claude Code的原始源码,而是独立整合大模型理解能力、工具调用能力与软件开发流程,以轻量化、可控制的方式帮助开发者减少重复性工作,提升研发效率。
对个人开发者而言,它可快速完成琐碎任务,加快项目推进速度;对开发团队和企业而言,在满足安全合规要求的前提下,可作为提升整体研发效率的补充工具。
随着大模型能力持续增强,类似 claw-code 的工程化AI编程工具将逐步成为开发流程的重要组成部分,掌握其合理使用方式,将成为技术人员的基础能力之一。希望这篇分析能帮助你在云栈社区更好地了解和应用此类前沿工具。