peteromallet/dataclaw

Agent harness to publish your agent chat history as Huggingface datasets.

DataClaw – 将 AI 编程对话转化为可共享的数据集

功能简介 DataClaw 是一个小巧的工具(提供 macOS 菜单栏应用和 Python CLI 版本),可以读取您与 Claude Code 或 Codex 等编程 AI 代理的对话日志。它提取消息、工具调用、Token 计数和部分元数据,在移除机密和个人数据后,将清理后的 JSON-Lines 文件以 dataclaw 标签上传至 Hugging Face 作为公开数据集。

重要性 作者将该项目视为对 Anthropic 限制性数据使用政策的一种“行为艺术”回应。通过让个人用户能够轻松发布自己的人机协作编程会话,DataClaw 旨在创建一个分布式的、由社区驱动的真实世界编程协作数据集,可用于研究、模型微调或分析。

主要功能

  • 两种分发格式 – 原生 macOS 菜单栏应用(仅限 Apple-silicon),无需安装 Python 即可运行;以及适用于任何平台的 pip 安装版 CLI。
  • 来源无关的解析器 – 内置支持 Claude Code 和 Codex 日志;CLI 可扩展以支持其他代理。
  • 隐私优先的脱敏处理 – 自动移除用户名、API 密钥、JWT、电子邮件、高熵字符串,以及用户自定义的字符串。
  • 逐步工作流程 – 命令会生成 JSON next_steps 字段,引导用户(或代理)完成配置、本地导出、审查和最终发布。
  • Hugging Face 集成 – 一键上传创建数据集仓库;README 会自动生成,包含 Token 计数、模型分布和时间戳。
  • 实用辅助工具 – jsonl-to-yaml 用于人类可读的检查,diff-jsonl 用于变更检测,并建议运行如 trufflehog 或 gitleaks 等外部扫描工具。

典型用法

  1. 安装 CLI (pip install -U dataclaw) 或 macOS 应用。
  2. 运行 dataclaw update-skill claude 以安装 Claude 专用解析器。
  3. 配置要导出的来源和项目文件夹 (dataclaw config …)。
  4. 运行 dataclaw export --no-push --output export.jsonl 以生成本地文件。
  5. 审查脱敏报告,选择性添加自定义字符串,并使用 dataclaw confirm … 进行确认。
  6. 使用 dataclaw export --publish-attestation "User approved" 发布,将文件推送到新的 Hugging Face 数据集。

适用对象

  • 经常与编程代理互动,并希望保留个人化、可搜索对话存档的开发者。
  • 寻找人机协作编程互动众包语料库,且无需抓取私人日志的研究人员。
  • 关心数据所有权,并希望通过分享自己清理过的日志来“回馈社区”的人士。

限制

  • 脱敏处理为尽力而为;用户在发布前必须手动审查导出内容。
  • 目前仅开箱即用支持 Claude Code 和 Codex;添加新代理需要编写解析器。
  • macOS 应用(截至最新版本)未签名,且仅适用于 Apple-silicon 硬件。

许可 MIT – 可自由使用、修改和重新分发。

相关

  • 项目
  • 项目
  • 项目
  • 项目