{"owner":"peteromallet","repo":"dataclaw","hasSkills":true,"totalSkillsCount":2,"totalTokensCount":2871,"categories":["anthropic-skill","root-instruction"],"hasMcp":false,"mcpConfig":null,"found":[".claude/skills/dataclaw/SKILL.md","AGENTS.md"],"skills":{".claude/skills/dataclaw/SKILL.md":"---\nname: dataclaw\ndescription: >\n  Export Claude Code, Codex, and other coding-agent conversation history to Hugging Face.\n  Use when the user asks about exporting conversations, uploading to Hugging Face,\n  configuring DataClaw, reviewing PII/secrets in exports, or managing their dataset.\nallowed-tools: Bash(dataclaw *), Bash(hf auth login *), Bash(pip install dataclaw*), Bash(grep *)\n---\n\n<!-- dataclaw-begin -->\n\n# DataClaw Skill\n\n## THE RULE\n\n**Every `dataclaw` command outputs `next_steps`. FOLLOW THEM.**\n\nDo not memorize the flow. Do not skip steps. Do not improvise.\nRun the command -> read the output -> follow `next_steps`. That's it.\n\nRuntime guidance follows this checklist:\n\n1. Install\n2. Install skill\n3. Prep\n3A. Choose source scope\n3B. Choose project scope\n3C. Set redacted strings\n4. Export locally\n5. Review and confirm\n6. Publish\n\nThe CLI tracks your stage as 1-4: auth -> configure -> review -> done.\n`dataclaw export` (push) is **gated** - you must run `dataclaw confirm` first or it will refuse.\n\n## Getting Started\n\nRun `dataclaw status` (or `dataclaw prep` for full details) and follow the `next_steps`.\n\n## Output Format\n\n- `dataclaw prep`, `dataclaw config`, `dataclaw status`, and `dataclaw confirm` output pure JSON\n- `dataclaw export` outputs human-readable text followed by `---DATACLAW_JSON---` and a JSON block\n- Always parse the JSON and act on `next_steps`\n\nKey fields:\n- `stage` / `stage_number` / `total_stages` - where you are\n- `next_steps` - follow these in order\n- `next_command` - the single most important command to run next (null if user input needed first)\n\n## PII Audit (Stage 5)\n\nAfter `dataclaw export --no-push`, follow the `next_steps` in the JSON output. The flow is:\n\n1. **Ask the user their full name** - then grep the export for it\n2. **Run the pii_commands** from the JSON output and review results with the user\n3. **Ask the user what else to look for** - company names, client names, private URLs, other people's names, custom domains\n4. **Deep manual scan** - sample ~20 sessions (beginning, middle, end) and look for anything sensitive the regex missed\n5. **Fix and re-export** if anything found: `dataclaw config --redact \"string\"` then `dataclaw export --no-push`\n6. **Run `dataclaw confirm` with text attestations** - pass `--full-name`, `--attest-full-name`, `--attest-sensitive`, and `--attest-manual-scan`. It runs PII scan, verifies attestations, shows project breakdown, and unlocks pushing.\n7. **Push only after explicit user confirmation**: `dataclaw export --publish-attestation \"User explicitly approved publishing to Hugging Face.\"`\n\n## Commands Reference\n\n```bash\ndataclaw status                            # Show current stage and next steps\ndataclaw prep                              # Discover projects, check HF auth\ndataclaw prep --source all                 # Prep with all sources explicitly selected\ndataclaw prep --source claude              # Prep using one supported source key (for example claude)\ndataclaw confirm --full-name \"NAME\" --attest-full-name \"...\" --attest-sensitive \"...\" --attest-manual-scan \"...\" # Scan PII, verify attestations, unlock pushing\ndataclaw confirm --file /path/to/file.jsonl --full-name \"NAME\" --attest-full-name \"...\" --attest-sensitive \"...\" --attest-manual-scan \"...\" # Confirm a specific export file\ndataclaw list                              # List all projects with exclusion status\ndataclaw list --source all                 # List all sources\ndataclaw list --source claude              # List projects for one supported source key\ndataclaw config                            # Show current config\ndataclaw config --repo user/my-dataset     # Set HF repo\ndataclaw config --source all               # REQUIRED source scope selection (<source|all>; for example claude or codex)\ndataclaw config --exclude \"a,b\"            # Add excluded projects (appends)\ndataclaw config --redact \"str1,str2\"       # Add strings to redact (appends)\ndataclaw config --redact-usernames \"u1,u2\" # Add usernames to anonymize (appends)\ndataclaw config --confirm-projects         # Mark project selection as confirmed\ndataclaw export --publish-attestation \"...\" # Export and push (requires dataclaw confirm first)\ndataclaw export --no-push                  # Export locally only\ndataclaw export --source all --no-push     # Export all configured sources locally\ndataclaw export --source claude --no-push  # Export one supported source scope locally\ndataclaw export --all-projects             # Include everything (ignore exclusions)\ndataclaw export --no-thinking              # Exclude extended thinking blocks\ndataclaw export -o /path/to/file.jsonl     # Custom output path\ndataclaw update-skill claude               # Install/update the dataclaw skill for Claude Code\n```\n\n## Gotchas\n\n- **Never run bare `hf auth login`** - it's interactive and will hang. Always use `--token`.\n- **`--exclude`, `--redact`, `--redact-usernames` APPEND** - they never overwrite. Safe to call repeatedly.\n- **Source selection is REQUIRED before export** - explicitly set `dataclaw config --source <source|all>` (for example `claude` or `codex`), or pass `--source ...` on export.\n- **`dataclaw prep` outputs pure JSON** - parse it directly.\n- **Always export with `--no-push` first** - review before publishing.\n- **`dataclaw export` (push) reuses the exact file reviewed by `dataclaw confirm`** - if that file is missing, re-export locally and re-confirm before pushing.\n- **`dataclaw export` (push) requires `dataclaw confirm` first** - it will refuse otherwise. Re-exporting with `--no-push` resets this.\n- **PII audit is critical** - automated redaction is not foolproof.\n- **Large exports take time** - 500+ sessions may take 1-3 minutes. Use a generous timeout.\n\n## Prerequisite\n\n`command -v dataclaw >/dev/null 2>&1 && echo \"dataclaw: installed\" || echo \"NOT INSTALLED - run: pip install dataclaw\"`\n\n<!-- dataclaw-end -->\n","AGENTS.md":"# DataClaw\n\nExport Claude Code, Codex, and other coding-agent conversation history to Hugging Face.\n\n## THE RULE\n\n**Every `dataclaw` command outputs `next_steps`. FOLLOW THEM.**\n\nDo not memorize the flow. Do not skip steps. Do not improvise.\nRun the command -> read the output -> follow `next_steps`. That's it.\n\nRuntime guidance follows this checklist:\n\n1. Install\n2. Install skill\n3. Prep\n3A. Choose source scope\n3B. Choose project scope\n3C. Set redacted strings\n4. Export locally\n5. Review and confirm\n6. Publish\n\nThe CLI tracks your stage as 1-4: auth -> configure -> review -> done.\n`dataclaw export` (push) is **gated** - you must run `dataclaw confirm` first or it will refuse.\n\n## Getting Started\n\nRun `dataclaw status` (or `dataclaw prep` for full details) and follow the `next_steps`.\n\n## Output Format\n\n- `dataclaw prep`, `dataclaw config`, `dataclaw status`, and `dataclaw confirm` output pure JSON\n- `dataclaw export` outputs human-readable text followed by `---DATACLAW_JSON---` and a JSON block\n- Always parse the JSON and act on `next_steps`\n\nKey fields:\n- `stage` / `stage_number` / `total_stages` - where you are\n- `next_steps` - follow these in order\n- `next_command` - the single most important command to run next (null if user input needed first)\n\n## PII Audit (Stage 5)\n\nAfter `dataclaw export --no-push`, follow the `next_steps` in the JSON output. The flow is:\n\n1. **Ask the user their full name** - then grep the export for it\n2. **Run the pii_commands** from the JSON output and review results with the user\n3. **Ask the user what else to look for** - company names, client names, private URLs, other people's names, custom domains\n4. **Deep manual scan** - sample ~20 sessions (beginning, middle, end) and look for anything sensitive the regex missed\n5. **Fix and re-export** if anything found: `dataclaw config --redact \"string\"` then `dataclaw export --no-push`\n6. **Run `dataclaw confirm` with text attestations** - pass `--full-name`, `--attest-full-name`, `--attest-sensitive`, and `--attest-manual-scan`. It runs PII scan, verifies attestations, shows project breakdown, and unlocks pushing.\n7. **Push only after explicit user confirmation**: `dataclaw export --publish-attestation \"User explicitly approved publishing to Hugging Face.\"`\n\n## Commands Reference\n\n```bash\ndataclaw status                            # Show current stage and next steps\ndataclaw prep                              # Discover projects, check HF auth\ndataclaw prep --source all                 # Prep with all sources explicitly selected\ndataclaw prep --source claude              # Prep using one supported source key (for example claude)\ndataclaw confirm --full-name \"NAME\" --attest-full-name \"...\" --attest-sensitive \"...\" --attest-manual-scan \"...\" # Scan PII, verify attestations, unlock pushing\ndataclaw confirm --file /path/to/file.jsonl --full-name \"NAME\" --attest-full-name \"...\" --attest-sensitive \"...\" --attest-manual-scan \"...\" # Confirm a specific export file\ndataclaw list                              # List all projects with exclusion status\ndataclaw list --source all                 # List all sources\ndataclaw list --source claude              # List projects for one supported source key\ndataclaw config                            # Show current config\ndataclaw config --repo user/my-dataset     # Set HF repo\ndataclaw config --source all               # REQUIRED source scope selection (<source|all>; for example claude or codex)\ndataclaw config --exclude \"a,b\"            # Add excluded projects (appends)\ndataclaw config --redact \"str1,str2\"       # Add strings to redact (appends)\ndataclaw config --redact-usernames \"u1,u2\" # Add usernames to anonymize (appends)\ndataclaw config --confirm-projects         # Mark project selection as confirmed\ndataclaw export --publish-attestation \"...\" # Export and push (requires dataclaw confirm first)\ndataclaw export --no-push                  # Export locally only\ndataclaw export --source all --no-push     # Export all configured sources locally\ndataclaw export --source claude --no-push  # Export one supported source scope locally\ndataclaw export --all-projects             # Include everything (ignore exclusions)\ndataclaw export --no-thinking              # Exclude extended thinking blocks\ndataclaw export -o /path/to/file.jsonl     # Custom output path\ndataclaw update-skill claude               # Install/update the dataclaw skill for Claude Code\n```\n\n## Gotchas\n\n- **Never run bare `hf auth login`** - it's interactive and will hang. Always use `--token`.\n- **`--exclude`, `--redact`, `--redact-usernames` APPEND** - they never overwrite. Safe to call repeatedly.\n- **Source selection is REQUIRED before export** - explicitly set `dataclaw config --source <source|all>` (for example `claude` or `codex`), or pass `--source ...` on export.\n- **`dataclaw prep` outputs pure JSON** - parse it directly.\n- **Always export with `--no-push` first** - review before publishing.\n- **`dataclaw export` (push) reuses the exact file reviewed by `dataclaw confirm`** - if that file is missing, re-export locally and re-confirm before pushing.\n- **`dataclaw export` (push) requires `dataclaw confirm` first** - it will refuse otherwise. Re-exporting with `--no-push` resets this.\n- **PII audit is critical** - automated redaction is not foolproof.\n- **Large exports take time** - 500+ sessions may take 1-3 minutes. Use a generous timeout.\n\n## Prerequisite\n\n`command -v dataclaw >/dev/null 2>&1 && echo \"dataclaw: installed\" || echo \"NOT INSTALLED - run: pip install -U dataclaw\"`\n"},"files":{".claude/skills/dataclaw/SKILL.md":"---\nname: dataclaw\ndescription: >\n  Export Claude Code, Codex, and other coding-agent conversation history to Hugging Face.\n  Use when the user asks about exporting conversations, uploading to Hugging Face,\n  configuring DataClaw, reviewing PII/secrets in exports, or managing their dataset.\nallowed-tools: Bash(dataclaw *), Bash(hf auth login *), Bash(pip install dataclaw*), Bash(grep *)\n---\n\n<!-- dataclaw-begin -->\n\n# DataClaw Skill\n\n## THE RULE\n\n**Every `dataclaw` command outputs `next_steps`. FOLLOW THEM.**\n\nDo not memorize the flow. Do not skip steps. Do not improvise.\nRun the command -> read the output -> follow `next_steps`. That's it.\n\nRuntime guidance follows this checklist:\n\n1. Install\n2. Install skill\n3. Prep\n3A. Choose source scope\n3B. Choose project scope\n3C. Set redacted strings\n4. Export locally\n5. Review and confirm\n6. Publish\n\nThe CLI tracks your stage as 1-4: auth -> configure -> review -> done.\n`dataclaw export` (push) is **gated** - you must run `dataclaw confirm` first or it will refuse.\n\n## Getting Started\n\nRun `dataclaw status` (or `dataclaw prep` for full details) and follow the `next_steps`.\n\n## Output Format\n\n- `dataclaw prep`, `dataclaw config`, `dataclaw status`, and `dataclaw confirm` output pure JSON\n- `dataclaw export` outputs human-readable text followed by `---DATACLAW_JSON---` and a JSON block\n- Always parse the JSON and act on `next_steps`\n\nKey fields:\n- `stage` / `stage_number` / `total_stages` - where you are\n- `next_steps` - follow these in order\n- `next_command` - the single most important command to run next (null if user input needed first)\n\n## PII Audit (Stage 5)\n\nAfter `dataclaw export --no-push`, follow the `next_steps` in the JSON output. The flow is:\n\n1. **Ask the user their full name** - then grep the export for it\n2. **Run the pii_commands** from the JSON output and review results with the user\n3. **Ask the user what else to look for** - company names, client names, private URLs, other people's names, custom domains\n4. **Deep manual scan** - sample ~20 sessions (beginning, middle, end) and look for anything sensitive the regex missed\n5. **Fix and re-export** if anything found: `dataclaw config --redact \"string\"` then `dataclaw export --no-push`\n6. **Run `dataclaw confirm` with text attestations** - pass `--full-name`, `--attest-full-name`, `--attest-sensitive`, and `--attest-manual-scan`. It runs PII scan, verifies attestations, shows project breakdown, and unlocks pushing.\n7. **Push only after explicit user confirmation**: `dataclaw export --publish-attestation \"User explicitly approved publishing to Hugging Face.\"`\n\n## Commands Reference\n\n```bash\ndataclaw status                            # Show current stage and next steps\ndataclaw prep                              # Discover projects, check HF auth\ndataclaw prep --source all                 # Prep with all sources explicitly selected\ndataclaw prep --source claude              # Prep using one supported source key (for example claude)\ndataclaw confirm --full-name \"NAME\" --attest-full-name \"...\" --attest-sensitive \"...\" --attest-manual-scan \"...\" # Scan PII, verify attestations, unlock pushing\ndataclaw confirm --file /path/to/file.jsonl --full-name \"NAME\" --attest-full-name \"...\" --attest-sensitive \"...\" --attest-manual-scan \"...\" # Confirm a specific export file\ndataclaw list                              # List all projects with exclusion status\ndataclaw list --source all                 # List all sources\ndataclaw list --source claude              # List projects for one supported source key\ndataclaw config                            # Show current config\ndataclaw config --repo user/my-dataset     # Set HF repo\ndataclaw config --source all               # REQUIRED source scope selection (<source|all>; for example claude or codex)\ndataclaw config --exclude \"a,b\"            # Add excluded projects (appends)\ndataclaw config --redact \"str1,str2\"       # Add strings to redact (appends)\ndataclaw config --redact-usernames \"u1,u2\" # Add usernames to anonymize (appends)\ndataclaw config --confirm-projects         # Mark project selection as confirmed\ndataclaw export --publish-attestation \"...\" # Export and push (requires dataclaw confirm first)\ndataclaw export --no-push                  # Export locally only\ndataclaw export --source all --no-push     # Export all configured sources locally\ndataclaw export --source claude --no-push  # Export one supported source scope locally\ndataclaw export --all-projects             # Include everything (ignore exclusions)\ndataclaw export --no-thinking              # Exclude extended thinking blocks\ndataclaw export -o /path/to/file.jsonl     # Custom output path\ndataclaw update-skill claude               # Install/update the dataclaw skill for Claude Code\n```\n\n## Gotchas\n\n- **Never run bare `hf auth login`** - it's interactive and will hang. Always use `--token`.\n- **`--exclude`, `--redact`, `--redact-usernames` APPEND** - they never overwrite. Safe to call repeatedly.\n- **Source selection is REQUIRED before export** - explicitly set `dataclaw config --source <source|all>` (for example `claude` or `codex`), or pass `--source ...` on export.\n- **`dataclaw prep` outputs pure JSON** - parse it directly.\n- **Always export with `--no-push` first** - review before publishing.\n- **`dataclaw export` (push) reuses the exact file reviewed by `dataclaw confirm`** - if that file is missing, re-export locally and re-confirm before pushing.\n- **`dataclaw export` (push) requires `dataclaw confirm` first** - it will refuse otherwise. Re-exporting with `--no-push` resets this.\n- **PII audit is critical** - automated redaction is not foolproof.\n- **Large exports take time** - 500+ sessions may take 1-3 minutes. Use a generous timeout.\n\n## Prerequisite\n\n`command -v dataclaw >/dev/null 2>&1 && echo \"dataclaw: installed\" || echo \"NOT INSTALLED - run: pip install dataclaw\"`\n\n<!-- dataclaw-end -->\n","AGENTS.md":"# DataClaw\n\nExport Claude Code, Codex, and other coding-agent conversation history to Hugging Face.\n\n## THE RULE\n\n**Every `dataclaw` command outputs `next_steps`. FOLLOW THEM.**\n\nDo not memorize the flow. Do not skip steps. Do not improvise.\nRun the command -> read the output -> follow `next_steps`. That's it.\n\nRuntime guidance follows this checklist:\n\n1. Install\n2. Install skill\n3. Prep\n3A. Choose source scope\n3B. Choose project scope\n3C. Set redacted strings\n4. Export locally\n5. Review and confirm\n6. Publish\n\nThe CLI tracks your stage as 1-4: auth -> configure -> review -> done.\n`dataclaw export` (push) is **gated** - you must run `dataclaw confirm` first or it will refuse.\n\n## Getting Started\n\nRun `dataclaw status` (or `dataclaw prep` for full details) and follow the `next_steps`.\n\n## Output Format\n\n- `dataclaw prep`, `dataclaw config`, `dataclaw status`, and `dataclaw confirm` output pure JSON\n- `dataclaw export` outputs human-readable text followed by `---DATACLAW_JSON---` and a JSON block\n- Always parse the JSON and act on `next_steps`\n\nKey fields:\n- `stage` / `stage_number` / `total_stages` - where you are\n- `next_steps` - follow these in order\n- `next_command` - the single most important command to run next (null if user input needed first)\n\n## PII Audit (Stage 5)\n\nAfter `dataclaw export --no-push`, follow the `next_steps` in the JSON output. The flow is:\n\n1. **Ask the user their full name** - then grep the export for it\n2. **Run the pii_commands** from the JSON output and review results with the user\n3. **Ask the user what else to look for** - company names, client names, private URLs, other people's names, custom domains\n4. **Deep manual scan** - sample ~20 sessions (beginning, middle, end) and look for anything sensitive the regex missed\n5. **Fix and re-export** if anything found: `dataclaw config --redact \"string\"` then `dataclaw export --no-push`\n6. **Run `dataclaw confirm` with text attestations** - pass `--full-name`, `--attest-full-name`, `--attest-sensitive`, and `--attest-manual-scan`. It runs PII scan, verifies attestations, shows project breakdown, and unlocks pushing.\n7. **Push only after explicit user confirmation**: `dataclaw export --publish-attestation \"User explicitly approved publishing to Hugging Face.\"`\n\n## Commands Reference\n\n```bash\ndataclaw status                            # Show current stage and next steps\ndataclaw prep                              # Discover projects, check HF auth\ndataclaw prep --source all                 # Prep with all sources explicitly selected\ndataclaw prep --source claude              # Prep using one supported source key (for example claude)\ndataclaw confirm --full-name \"NAME\" --attest-full-name \"...\" --attest-sensitive \"...\" --attest-manual-scan \"...\" # Scan PII, verify attestations, unlock pushing\ndataclaw confirm --file /path/to/file.jsonl --full-name \"NAME\" --attest-full-name \"...\" --attest-sensitive \"...\" --attest-manual-scan \"...\" # Confirm a specific export file\ndataclaw list                              # List all projects with exclusion status\ndataclaw list --source all                 # List all sources\ndataclaw list --source claude              # List projects for one supported source key\ndataclaw config                            # Show current config\ndataclaw config --repo user/my-dataset     # Set HF repo\ndataclaw config --source all               # REQUIRED source scope selection (<source|all>; for example claude or codex)\ndataclaw config --exclude \"a,b\"            # Add excluded projects (appends)\ndataclaw config --redact \"str1,str2\"       # Add strings to redact (appends)\ndataclaw config --redact-usernames \"u1,u2\" # Add usernames to anonymize (appends)\ndataclaw config --confirm-projects         # Mark project selection as confirmed\ndataclaw export --publish-attestation \"...\" # Export and push (requires dataclaw confirm first)\ndataclaw export --no-push                  # Export locally only\ndataclaw export --source all --no-push     # Export all configured sources locally\ndataclaw export --source claude --no-push  # Export one supported source scope locally\ndataclaw export --all-projects             # Include everything (ignore exclusions)\ndataclaw export --no-thinking              # Exclude extended thinking blocks\ndataclaw export -o /path/to/file.jsonl     # Custom output path\ndataclaw update-skill claude               # Install/update the dataclaw skill for Claude Code\n```\n\n## Gotchas\n\n- **Never run bare `hf auth login`** - it's interactive and will hang. Always use `--token`.\n- **`--exclude`, `--redact`, `--redact-usernames` APPEND** - they never overwrite. Safe to call repeatedly.\n- **Source selection is REQUIRED before export** - explicitly set `dataclaw config --source <source|all>` (for example `claude` or `codex`), or pass `--source ...` on export.\n- **`dataclaw prep` outputs pure JSON** - parse it directly.\n- **Always export with `--no-push` first** - review before publishing.\n- **`dataclaw export` (push) reuses the exact file reviewed by `dataclaw confirm`** - if that file is missing, re-export locally and re-confirm before pushing.\n- **`dataclaw export` (push) requires `dataclaw confirm` first** - it will refuse otherwise. Re-exporting with `--no-push` resets this.\n- **PII audit is critical** - automated redaction is not foolproof.\n- **Large exports take time** - 500+ sessions may take 1-3 minutes. Use a generous timeout.\n\n## Prerequisite\n\n`command -v dataclaw >/dev/null 2>&1 && echo \"dataclaw: installed\" || echo \"NOT INSTALLED - run: pip install -U dataclaw\"`\n"},"items":[{"name":"AGENTS.md","path":"AGENTS.md","rawUrl":"https://raw.githubusercontent.com/peteromallet/dataclaw/HEAD/AGENTS.md","title":"AI Agent Protocol & Instructions","category":"root-instruction","format":"markdown","content":"# DataClaw\n\nExport Claude Code, Codex, and other coding-agent conversation history to Hugging Face.\n\n## THE RULE\n\n**Every `dataclaw` command outputs `next_steps`. FOLLOW THEM.**\n\nDo not memorize the flow. Do not skip steps. Do not improvise.\nRun the command -> read the output -> follow `next_steps`. That's it.\n\nRuntime guidance follows this checklist:\n\n1. Install\n2. Install skill\n3. Prep\n3A. Choose source scope\n3B. Choose project scope\n3C. Set redacted strings\n4. Export locally\n5. Review and confirm\n6. Publish\n\nThe CLI tracks your stage as 1-4: auth -> configure -> review -> done.\n`dataclaw export` (push) is **gated** - you must run `dataclaw confirm` first or it will refuse.\n\n## Getting Started\n\nRun `dataclaw status` (or `dataclaw prep` for full details) and follow the `next_steps`.\n\n## Output Format\n\n- `dataclaw prep`, `dataclaw config`, `dataclaw status`, and `dataclaw confirm` output pure JSON\n- `dataclaw export` outputs human-readable text followed by `---DATACLAW_JSON---` and a JSON block\n- Always parse the JSON and act on `next_steps`\n\nKey fields:\n- `stage` / `stage_number` / `total_stages` - where you are\n- `next_steps` - follow these in order\n- `next_command` - the single most important command to run next (null if user input needed first)\n\n## PII Audit (Stage 5)\n\nAfter `dataclaw export --no-push`, follow the `next_steps` in the JSON output. The flow is:\n\n1. **Ask the user their full name** - then grep the export for it\n2. **Run the pii_commands** from the JSON output and review results with the user\n3. **Ask the user what else to look for** - company names, client names, private URLs, other people's names, custom domains\n4. **Deep manual scan** - sample ~20 sessions (beginning, middle, end) and look for anything sensitive the regex missed\n5. **Fix and re-export** if anything found: `dataclaw config --redact \"string\"` then `dataclaw export --no-push`\n6. **Run `dataclaw confirm` with text attestations** - pass `--full-name`, `--attest-full-name`, `--attest-sensitive`, and `--attest-manual-scan`. It runs PII scan, verifies attestations, shows project breakdown, and unlocks pushing.\n7. **Push only after explicit user confirmation**: `dataclaw export --publish-attestation \"User explicitly approved publishing to Hugging Face.\"`\n\n## Commands Reference\n\n```bash\ndataclaw status                            # Show current stage and next steps\ndataclaw prep                              # Discover projects, check HF auth\ndataclaw prep --source all                 # Prep with all sources explicitly selected\ndataclaw prep --source claude              # Prep using one supported source key (for example claude)\ndataclaw confirm --full-name \"NAME\" --attest-full-name \"...\" --attest-sensitive \"...\" --attest-manual-scan \"...\" # Scan PII, verify attestations, unlock pushing\ndataclaw confirm --file /path/to/file.jsonl --full-name \"NAME\" --attest-full-name \"...\" --attest-sensitive \"...\" --attest-manual-scan \"...\" # Confirm a specific export file\ndataclaw list                              # List all projects with exclusion status\ndataclaw list --source all                 # List all sources\ndataclaw list --source claude              # List projects for one supported source key\ndataclaw config                            # Show current config\ndataclaw config --repo user/my-dataset     # Set HF repo\ndataclaw config --source all               # REQUIRED source scope selection (<source|all>; for example claude or codex)\ndataclaw config --exclude \"a,b\"            # Add excluded projects (appends)\ndataclaw config --redact \"str1,str2\"       # Add strings to redact (appends)\ndataclaw config --redact-usernames \"u1,u2\" # Add usernames to anonymize (appends)\ndataclaw config --confirm-projects         # Mark project selection as confirmed\ndataclaw export --publish-attestation \"...\" # Export and push (requires dataclaw confirm first)\ndataclaw export --no-push                  # Export locally only\ndataclaw export --source all --no-push     # Export all configured sources locally\ndataclaw export --source claude --no-push  # Export one supported source scope locally\ndataclaw export --all-projects             # Include everything (ignore exclusions)\ndataclaw export --no-thinking              # Exclude extended thinking blocks\ndataclaw export -o /path/to/file.jsonl     # Custom output path\ndataclaw update-skill claude               # Install/update the dataclaw skill for Claude Code\n```\n\n## Gotchas\n\n- **Never run bare `hf auth login`** - it's interactive and will hang. Always use `--token`.\n- **`--exclude`, `--redact`, `--redact-usernames` APPEND** - they never overwrite. Safe to call repeatedly.\n- **Source selection is REQUIRED before export** - explicitly set `dataclaw config --source <source|all>` (for example `claude` or `codex`), or pass `--source ...` on export.\n- **`dataclaw prep` outputs pure JSON** - parse it directly.\n- **Always export with `--no-push` first** - review before publishing.\n- **`dataclaw export` (push) reuses the exact file reviewed by `dataclaw confirm`** - if that file is missing, re-export locally and re-confirm before pushing.\n- **`dataclaw export` (push) requires `dataclaw confirm` first** - it will refuse otherwise. Re-exporting with `--no-push` resets this.\n- **PII audit is critical** - automated redaction is not foolproof.\n- **Large exports take time** - 500+ sessions may take 1-3 minutes. Use a generous timeout.\n\n## Prerequisite\n\n`command -v dataclaw >/dev/null 2>&1 && echo \"dataclaw: installed\" || echo \"NOT INSTALLED - run: pip install -U dataclaw\"`\n","isInternal":false,"tokens":1392,"sizeBytes":5553},{"name":"SKILL.md","path":".claude/skills/dataclaw/SKILL.md","rawUrl":"https://raw.githubusercontent.com/peteromallet/dataclaw/HEAD/.claude/skills/dataclaw/SKILL.md","title":"dataclaw","category":"anthropic-skill","format":"markdown","content":"---\nname: dataclaw\ndescription: >\n  Export Claude Code, Codex, and other coding-agent conversation history to Hugging Face.\n  Use when the user asks about exporting conversations, uploading to Hugging Face,\n  configuring DataClaw, reviewing PII/secrets in exports, or managing their dataset.\nallowed-tools: Bash(dataclaw *), Bash(hf auth login *), Bash(pip install dataclaw*), Bash(grep *)\n---\n\n<!-- dataclaw-begin -->\n\n# DataClaw Skill\n\n## THE RULE\n\n**Every `dataclaw` command outputs `next_steps`. FOLLOW THEM.**\n\nDo not memorize the flow. Do not skip steps. Do not improvise.\nRun the command -> read the output -> follow `next_steps`. That's it.\n\nRuntime guidance follows this checklist:\n\n1. Install\n2. Install skill\n3. Prep\n3A. Choose source scope\n3B. Choose project scope\n3C. Set redacted strings\n4. Export locally\n5. Review and confirm\n6. Publish\n\nThe CLI tracks your stage as 1-4: auth -> configure -> review -> done.\n`dataclaw export` (push) is **gated** - you must run `dataclaw confirm` first or it will refuse.\n\n## Getting Started\n\nRun `dataclaw status` (or `dataclaw prep` for full details) and follow the `next_steps`.\n\n## Output Format\n\n- `dataclaw prep`, `dataclaw config`, `dataclaw status`, and `dataclaw confirm` output pure JSON\n- `dataclaw export` outputs human-readable text followed by `---DATACLAW_JSON---` and a JSON block\n- Always parse the JSON and act on `next_steps`\n\nKey fields:\n- `stage` / `stage_number` / `total_stages` - where you are\n- `next_steps` - follow these in order\n- `next_command` - the single most important command to run next (null if user input needed first)\n\n## PII Audit (Stage 5)\n\nAfter `dataclaw export --no-push`, follow the `next_steps` in the JSON output. The flow is:\n\n1. **Ask the user their full name** - then grep the export for it\n2. **Run the pii_commands** from the JSON output and review results with the user\n3. **Ask the user what else to look for** - company names, client names, private URLs, other people's names, custom domains\n4. **Deep manual scan** - sample ~20 sessions (beginning, middle, end) and look for anything sensitive the regex missed\n5. **Fix and re-export** if anything found: `dataclaw config --redact \"string\"` then `dataclaw export --no-push`\n6. **Run `dataclaw confirm` with text attestations** - pass `--full-name`, `--attest-full-name`, `--attest-sensitive`, and `--attest-manual-scan`. It runs PII scan, verifies attestations, shows project breakdown, and unlocks pushing.\n7. **Push only after explicit user confirmation**: `dataclaw export --publish-attestation \"User explicitly approved publishing to Hugging Face.\"`\n\n## Commands Reference\n\n```bash\ndataclaw status                            # Show current stage and next steps\ndataclaw prep                              # Discover projects, check HF auth\ndataclaw prep --source all                 # Prep with all sources explicitly selected\ndataclaw prep --source claude              # Prep using one supported source key (for example claude)\ndataclaw confirm --full-name \"NAME\" --attest-full-name \"...\" --attest-sensitive \"...\" --attest-manual-scan \"...\" # Scan PII, verify attestations, unlock pushing\ndataclaw confirm --file /path/to/file.jsonl --full-name \"NAME\" --attest-full-name \"...\" --attest-sensitive \"...\" --attest-manual-scan \"...\" # Confirm a specific export file\ndataclaw list                              # List all projects with exclusion status\ndataclaw list --source all                 # List all sources\ndataclaw list --source claude              # List projects for one supported source key\ndataclaw config                            # Show current config\ndataclaw config --repo user/my-dataset     # Set HF repo\ndataclaw config --source all               # REQUIRED source scope selection (<source|all>; for example claude or codex)\ndataclaw config --exclude \"a,b\"            # Add excluded projects (appends)\ndataclaw config --redact \"str1,str2\"       # Add strings to redact (appends)\ndataclaw config --redact-usernames \"u1,u2\" # Add usernames to anonymize (appends)\ndataclaw config --confirm-projects         # Mark project selection as confirmed\ndataclaw export --publish-attestation \"...\" # Export and push (requires dataclaw confirm first)\ndataclaw export --no-push                  # Export locally only\ndataclaw export --source all --no-push     # Export all configured sources locally\ndataclaw export --source claude --no-push  # Export one supported source scope locally\ndataclaw export --all-projects             # Include everything (ignore exclusions)\ndataclaw export --no-thinking              # Exclude extended thinking blocks\ndataclaw export -o /path/to/file.jsonl     # Custom output path\ndataclaw update-skill claude               # Install/update the dataclaw skill for Claude Code\n```\n\n## Gotchas\n\n- **Never run bare `hf auth login`** - it's interactive and will hang. Always use `--token`.\n- **`--exclude`, `--redact`, `--redact-usernames` APPEND** - they never overwrite. Safe to call repeatedly.\n- **Source selection is REQUIRED before export** - explicitly set `dataclaw config --source <source|all>` (for example `claude` or `codex`), or pass `--source ...` on export.\n- **`dataclaw prep` outputs pure JSON** - parse it directly.\n- **Always export with `--no-push` first** - review before publishing.\n- **`dataclaw export` (push) reuses the exact file reviewed by `dataclaw confirm`** - if that file is missing, re-export locally and re-confirm before pushing.\n- **`dataclaw export` (push) requires `dataclaw confirm` first** - it will refuse otherwise. Re-exporting with `--no-push` resets this.\n- **PII audit is critical** - automated redaction is not foolproof.\n- **Large exports take time** - 500+ sessions may take 1-3 minutes. Use a generous timeout.\n\n## Prerequisite\n\n`command -v dataclaw >/dev/null 2>&1 && echo \"dataclaw: installed\" || echo \"NOT INSTALLED - run: pip install dataclaw\"`\n\n<!-- dataclaw-end -->\n","frontmatter":{"name":"dataclaw","description":"Export Claude Code, Codex, and other coding-agent conversation history to Hugging Face. Use when the user asks about exporting conversations, uploading to Hugging Face, configuring DataClaw, reviewing PII/secrets in exports, or managing their dataset.\n","allowed-tools":"Bash(dataclaw *), Bash(hf auth login *), Bash(pip install dataclaw*), Bash(grep *)","allowedTools":["Bash(dataclaw","*),","Bash(hf","auth","login","*),","Bash(pip","install","dataclaw*),","Bash(grep","*)"]},"allowedTools":["Bash(dataclaw","*),","Bash(hf","auth","login","*),","Bash(pip","install","dataclaw*),","Bash(grep","*)"],"isInternal":false,"tokens":1479,"sizeBytes":5910}],"systemPromptSnippet":"<yakaai_skills repo=\"peteromallet/dataclaw\">\n<!-- File: AGENTS.md (Tokens: ~1392 | Category: root-instruction) -->\n# DataClaw\n\nExport Claude Code, Codex, and other coding-agent conversation history to Hugging Face.\n\n## THE RULE\n\n**Every `dataclaw` command outputs `next_steps`. FOLLOW THEM.**\n\nDo not memorize the flow. Do not skip steps. Do not improvise.\nRun the command -> read the output -> follow `next_steps`. That's it.\n\nRuntime guidance follows this checklist:\n\n1. Install\n2. Install skill\n3. Prep\n3A. Choose source scope\n3B. Choose project scope\n3C. Set redacted strings\n4. Export locally\n5. Review and confirm\n6. Publish\n\nThe CLI tracks your stage as 1-4: auth -> configure -> review -> done.\n`dataclaw export` (push) is **gated** - you must run `dataclaw confirm` first or it will refuse.\n\n## Getting Started\n\nRun `dataclaw status` (or `dataclaw prep` for full details) and follow the `next_steps`.\n\n## Output Format\n\n- `dataclaw prep`, `dataclaw config`, `dataclaw status`, and `dataclaw confirm` output pure JSON\n- `dataclaw export` outputs human-readable text followed by `---DATACLAW_JSON---` and a JSON block\n- Always parse the JSON and act on `next_steps`\n\nKey fields:\n- `stage` / `stage_number` / `total_stages` - where you are\n- `next_steps` - follow these in order\n- `next_command` - the single most important command to run next (null if user input needed first)\n\n## PII Audit (Stage 5)\n\nAfter `dataclaw export --no-push`, follow the `next_steps` in the JSON output. The flow is:\n\n1. **Ask the user their full name** - then grep the export for it\n2. **Run the pii_commands** from the JSON output and review results with the user\n3. **Ask the user what else to look for** - company names, client names, private URLs, other people's names, custom domains\n4. **Deep manual scan** - sample ~20 sessions (beginning, middle, end) and look for anything sensitive the regex missed\n5. **Fix and re-export** if anything found: `dataclaw config --redact \"string\"` then `dataclaw export --no-push`\n6. **Run `dataclaw confirm` with text attestations** - pass `--full-name`, `--attest-full-name`, `--attest-sensitive`, and `--attest-manual-scan`. It runs PII scan, verifies attestations, shows project breakdown, and unlocks pushing.\n7. **Push only after explicit user confirmation**: `dataclaw export --publish-attestation \"User explicitly approved publishing to Hugging Face.\"`\n\n## Commands Reference\n\n```bash\ndataclaw status                            # Show current stage and next steps\ndataclaw prep                              # Discover projects, check HF auth\ndataclaw prep --source all                 # Prep with all sources explicitly selected\ndataclaw prep --source claude              # Prep using one supported source key (for example claude)\ndataclaw confirm --full-name \"NAME\" --attest-full-name \"...\" --attest-sensitive \"...\" --attest-manual-scan \"...\" # Scan PII, verify attestations, unlock pushing\ndataclaw confirm --file /path/to/file.jsonl --full-name \"NAME\" --attest-full-name \"...\" --attest-sensitive \"...\" --attest-manual-scan \"...\" # Confirm a specific export file\ndataclaw list                              # List all projects with exclusion status\ndataclaw list --source all                 # List all sources\ndataclaw list --source claude              # List projects for one supported source key\ndataclaw config                            # Show current config\ndataclaw config --repo user/my-dataset     # Set HF repo\ndataclaw config --source all               # REQUIRED source scope selection (<source|all>; for example claude or codex)\ndataclaw config --exclude \"a,b\"            # Add excluded projects (appends)\ndataclaw config --redact \"str1,str2\"       # Add strings to redact (appends)\ndataclaw config --redact-usernames \"u1,u2\" # Add usernames to anonymize (appends)\ndataclaw config --confirm-projects         # Mark project selection as confirmed\ndataclaw export --publish-attestation \"...\" # Export and push (requires dataclaw confirm first)\ndataclaw export --no-push                  # Export locally only\ndataclaw export --source all --no-push     # Export all configured sources locally\ndataclaw export --source claude --no-push  # Export one supported source scope locally\ndataclaw export --all-projects             # Include everything (ignore exclusions)\ndataclaw export --no-thinking              # Exclude extended thinking blocks\ndataclaw export -o /path/to/file.jsonl     # Custom output path\ndataclaw update-skill claude               # Install/update the dataclaw skill for Claude Code\n```\n\n## Gotchas\n\n- **Never run bare `hf auth login`** - it's interactive and will hang. Always use `--token`.\n- **`--exclude`, `--redact`, `--redact-usernames` APPEND** - they never overwrite. Safe to call repeatedly.\n- **Source selection is REQUIRED before export** - explicitly set `dataclaw config --source <source|all>` (for example `claude` or `codex`), or pass `--source ...` on export.\n- **`dataclaw prep` outputs pure JSON** - parse it directly.\n- **Always export with `--no-push` first** - review before publishing.\n- **`dataclaw export` (push) reuses the exact file reviewed by `dataclaw confirm`** - if that file is missing, re-export locally and re-confirm before pushing.\n- **`dataclaw export` (push) requires `dataclaw confirm` first** - it will refuse otherwise. Re-exporting with `--no-push` resets this.\n- **PII audit is critical** - automated redaction is not foolproof.\n- **Large exports take time** - 500+ sessions may take 1-3 minutes. Use a generous timeout.\n\n## Prerequisite\n\n`command -v dataclaw >/dev/null 2>&1 && echo \"dataclaw: installed\" || echo \"NOT INSTALLED - run: pip install -U dataclaw\"`\n\n<!-- File: .claude/skills/dataclaw/SKILL.md (Tokens: ~1479 | Category: anthropic-skill) -->\n---\nname: dataclaw\ndescription: >\n  Export Claude Code, Codex, and other coding-agent conversation history to Hugging Face.\n  Use when the user asks about exporting conversations, uploading to Hugging Face,\n  configuring DataClaw, reviewing PII/secrets in exports, or managing their dataset.\nallowed-tools: Bash(dataclaw *), Bash(hf auth login *), Bash(pip install dataclaw*), Bash(grep *)\n---\n\n<!-- dataclaw-begin -->\n\n# DataClaw Skill\n\n## THE RULE\n\n**Every `dataclaw` command outputs `next_steps`. FOLLOW THEM.**\n\nDo not memorize the flow. Do not skip steps. Do not improvise.\nRun the command -> read the output -> follow `next_steps`. That's it.\n\nRuntime guidance follows this checklist:\n\n1. Install\n2. Install skill\n3. Prep\n3A. Choose source scope\n3B. Choose project scope\n3C. Set redacted strings\n4. Export locally\n5. Review and confirm\n6. Publish\n\nThe CLI tracks your stage as 1-4: auth -> configure -> review -> done.\n`dataclaw export` (push) is **gated** - you must run `dataclaw confirm` first or it will refuse.\n\n## Getting Started\n\nRun `dataclaw status` (or `dataclaw prep` for full details) and follow the `next_steps`.\n\n## Output Format\n\n- `dataclaw prep`, `dataclaw config`, `dataclaw status`, and `dataclaw confirm` output pure JSON\n- `dataclaw export` outputs human-readable text followed by `---DATACLAW_JSON---` and a JSON block\n- Always parse the JSON and act on `next_steps`\n\nKey fields:\n- `stage` / `stage_number` / `total_stages` - where you are\n- `next_steps` - follow these in order\n- `next_command` - the single most important command to run next (null if user input needed first)\n\n## PII Audit (Stage 5)\n\nAfter `dataclaw export --no-push`, follow the `next_steps` in the JSON output. The flow is:\n\n1. **Ask the user their full name** - then grep the export for it\n2. **Run the pii_commands** from the JSON output and review results with the user\n3. **Ask the user what else to look for** - company names, client names, private URLs, other people's names, custom domains\n4. **Deep manual scan** - sample ~20 sessions (beginning, middle, end) and look for anything sensitive the regex missed\n5. **Fix and re-export** if anything found: `dataclaw config --redact \"string\"` then `dataclaw export --no-push`\n6. **Run `dataclaw confirm` with text attestations** - pass `--full-name`, `--attest-full-name`, `--attest-sensitive`, and `--attest-manual-scan`. It runs PII scan, verifies attestations, shows project breakdown, and unlocks pushing.\n7. **Push only after explicit user confirmation**: `dataclaw export --publish-attestation \"User explicitly approved publishing to Hugging Face.\"`\n\n## Commands Reference\n\n```bash\ndataclaw status                            # Show current stage and next steps\ndataclaw prep                              # Discover projects, check HF auth\ndataclaw prep --source all                 # Prep with all sources explicitly selected\ndataclaw prep --source claude              # Prep using one supported source key (for example claude)\ndataclaw confirm --full-name \"NAME\" --attest-full-name \"...\" --attest-sensitive \"...\" --attest-manual-scan \"...\" # Scan PII, verify attestations, unlock pushing\ndataclaw confirm --file /path/to/file.jsonl --full-name \"NAME\" --attest-full-name \"...\" --attest-sensitive \"...\" --attest-manual-scan \"...\" # Confirm a specific export file\ndataclaw list                              # List all projects with exclusion status\ndataclaw list --source all                 # List all sources\ndataclaw list --source claude              # List projects for one supported source key\ndataclaw config                            # Show current config\ndataclaw config --repo user/my-dataset     # Set HF repo\ndataclaw config --source all               # REQUIRED source scope selection (<source|all>; for example claude or codex)\ndataclaw config --exclude \"a,b\"            # Add excluded projects (appends)\ndataclaw config --redact \"str1,str2\"       # Add strings to redact (appends)\ndataclaw config --redact-usernames \"u1,u2\" # Add usernames to anonymize (appends)\ndataclaw config --confirm-projects         # Mark project selection as confirmed\ndataclaw export --publish-attestation \"...\" # Export and push (requires dataclaw confirm first)\ndataclaw export --no-push                  # Export locally only\ndataclaw export --source all --no-push     # Export all configured sources locally\ndataclaw export --source claude --no-push  # Export one supported source scope locally\ndataclaw export --all-projects             # Include everything (ignore exclusions)\ndataclaw export --no-thinking              # Exclude extended thinking blocks\ndataclaw export -o /path/to/file.jsonl     # Custom output path\ndataclaw update-skill claude               # Install/update the dataclaw skill for Claude Code\n```\n\n## Gotchas\n\n- **Never run bare `hf auth login`** - it's interactive and will hang. Always use `--token`.\n- **`--exclude`, `--redact`, `--redact-usernames` APPEND** - they never overwrite. Safe to call repeatedly.\n- **Source selection is REQUIRED before export** - explicitly set `dataclaw config --source <source|all>` (for example `claude` or `codex`), or pass `--source ...` on export.\n- **`dataclaw prep` outputs pure JSON** - parse it directly.\n- **Always export with `--no-push` first** - review before publishing.\n- **`dataclaw export` (push) reuses the exact file reviewed by `dataclaw confirm`** - if that file is missing, re-export locally and re-confirm before pushing.\n- **`dataclaw export` (push) requires `dataclaw confirm` first** - it will refuse otherwise. Re-exporting with `--no-push` resets this.\n- **PII audit is critical** - automated redaction is not foolproof.\n- **Large exports take time** - 500+ sessions may take 1-3 minutes. Use a generous timeout.\n\n## Prerequisite\n\n`command -v dataclaw >/dev/null 2>&1 && echo \"dataclaw: installed\" || echo \"NOT INSTALLED - run: pip install dataclaw\"`\n\n<!-- dataclaw-end -->\n</yakaai_skills>"}