[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CP4YVSQPZYK3EQAPBQPSN2":3,"skill-same:01M6CP4YVSQPZYK3EQAPBQPSN2":87},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":44,"commitSha":45,"skillDirectory":46,"forksCount":47,"repositoryHtmlUrl":48,"repositoryHomepageUrl":6,"ownerHtmlUrl":49,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":50,"install":51,"resources":64},"01M6CP4YVSQPZYK3EQAPBQPSN2","pii-guard",null,"Personally identifiable information (PII) leak prevention for EverClaw. Scans outbound content against configurable PII patterns before git push, email, social media, ClawHub publishing, GitHub interactions, or any external data transmission. Provides git pre-push hooks, CLI scanning tools, and hard-block enforcement with user override capability. Use when checking content for PII before external actions, adding new protected patterns, configuring git pre-push hooks, or auditing data leak prevention.","profbernardoj\u002Fandroidclaw.org","profbernardoj","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F260372225?v=4","01M6CP4EET2Y0EWYRFH3DH7ZN7","Bernardo Johnston","01M6CP4EM59PSJCXJ481S2M2KF",4,"MIT","https:\u002F\u002Fgithub.com\u002Fprofbernardoj\u002Fandroidclaw.org\u002Fblob\u002Fmain\u002Fskills\u002Fpii-guard\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"pii","guard","scanning tools","cli","social","enforcement","publishing","hooks","scanning","use","social media","git push","Media","data","email","actions","push","git","github","clawhub","2026-11-10 10:12:30",false,"---\nname: pii-guard\ndescription: \"Personally identifiable information (PII) leak prevention for EverClaw. Scans outbound content against configurable PII patterns before git push, email, social media, ClawHub publishing, GitHub interactions, or any external data transmission. Provides git pre-push hooks, CLI scanning tools, and hard-block enforcement with user override capability. Use when checking content for PII before external actions, adding new protected patterns, configuring git pre-push hooks, or auditing data leak prevention.\"\n---\n\n# PII Guard — Personal Data Leak Prevention\n\n## Purpose\nPrevents personal identifiable information (PII) from being sent to external services. This skill MUST be checked before any outbound action that transmits data externally.\n\n## When This Fires\n**Mandatory check before:**\n- `git push` (any repo)\n- Sending emails\n- Posting to social media (X\u002FTwitter, Moltbook, etc.)\n- Publishing to ClawHub\n- Creating\u002Fupdating GitHub issues, PRs, discussions, or comments\n- Any `message` action to external channels with file attachments\n- Any `web_fetch` POST or form submission\n- Any `exec` command that sends data externally (curl POST, scp, rsync, etc.)\n\n## How It Works\n\n### 1. Pattern File\nAll protected patterns live in the workspace:\n```\n~\u002F.openclaw\u002Fworkspace\u002F.pii-patterns.json\n```\nThis file is **NEVER committed** — it contains the very data it protects.\n\n### 2. Scanning\nThe scanner checks content against all patterns in these categories:\n- `names` — Protected personal names\n- `emails` — Protected email addresses\n- `phones` — Protected phone numbers (all formats)\n- `wallets` — Protected blockchain addresses\n- `organizations` — Protected org\u002Fchurch\u002Fschool names\n- `people` — Protected associate\u002Fcontact names\n- `websites` — Protected personal domains\n- `keywords` — Any other protected strings\n\n### 3. Behavior: HARD BLOCK\nWhen PII is detected:\n1. **STOP** — Do not proceed with the external action\n2. **REPORT** — Tell the user exactly what was found and where\n3. **WAIT** — Only proceed if the user explicitly confirms after reviewing\n\nError format:\n```\n? PII GUARD: Blocked — personal data detected\n\nFound in: \u003Cfilename or content description>\nMatch: \"\u003Cthe matched pattern>\"\nCategory: \u003Cnames|emails|phones|etc>\n\nAction blocked: \u003Cwhat was about to happen>\nTo proceed: Remove the PII or explicitly confirm override.\n```\n\n### 4. Git Pre-Push Hook\nA global git hook is installed at:\n```\n~\u002F.openclaw\u002Fworkspace\u002Fscripts\u002Fgit-hooks\u002Fpre-push\n```\nConfigured via: `git config --global core.hooksPath ~\u002F.openclaw\u002Fworkspace\u002Fscripts\u002Fgit-hooks`\n\nThis runs automatically on every `git push` across ALL repos on this machine.\n- Scans the diff being pushed (not just HEAD)\n- Blocks push if PII detected\n- Can be bypassed with `git push --no-verify` (use with extreme caution)\n\n### 5. Agent Integration\nThe agent should call `pii_scan` before external actions:\n\n```bash\n# Scan a file\n~\u002F.openclaw\u002Fworkspace\u002Fscripts\u002Fpii-scan.sh \u003Cfile_or_directory>\n\n# Scan stdin\necho \"some content\" | ~\u002F.openclaw\u002Fworkspace\u002Fscripts\u002Fpii-scan.sh -\n\n# Scan a string\n~\u002F.openclaw\u002Fworkspace\u002Fscripts\u002Fpii-scan.sh --text \"check this string\"\n```\n\nExit codes:\n- `0` — Clean, no PII found\n- `1` — PII detected (blocked)\n- `2` — Error (patterns file missing, etc.)\n\n## Adding New Patterns\nEdit `~\u002F.openclaw\u002Fworkspace\u002F.pii-patterns.json` and add entries to the appropriate category array. Changes take effect immediately — no restart needed.\n\n## Security Notes\n- `.pii-patterns.json` must NEVER be committed to any repo\n- The patterns file itself contains PII — treat it as sensitive\n- The hook and scan scripts are safe to publish (they contain no PII)\n- When in doubt, scan first\n","# PII Guard — Personal Data Leak Prevention\n\n## Purpose\nPrevents personal identifiable information (PII) from being sent to external services. This skill MUST be checked before any outbound action that transmits data externally.\n\n## When This Fires\n**Mandatory check before:**\n- `git push` (any repo)\n- Sending emails\n- Posting to social media (X\u002FTwitter, Moltbook, etc.)\n- Publishing to ClawHub\n- Creating\u002Fupdating GitHub issues, PRs, discussions, or comments\n- Any `message` action to external channels with file attachments\n- Any `web_fetch` POST or form submission\n- Any `exec` command that sends data externally (curl POST, scp, rsync, etc.)\n\n## How It Works\n\n### 1. Pattern File\nAll protected patterns live in the workspace:\n```\n~\u002F.openclaw\u002Fworkspace\u002F.pii-patterns.json\n```\nThis file is **NEVER committed** — it contains the very data it protects.\n\n### 2. Scanning\nThe scanner checks content against all patterns in these categories:\n- `names` — Protected personal names\n- `emails` — Protected email addresses\n- `phones` — Protected phone numbers (all formats)\n- `wallets` — Protected blockchain addresses\n- `organizations` — Protected org\u002Fchurch\u002Fschool names\n- `people` — Protected associate\u002Fcontact names\n- `websites` — Protected personal domains\n- `keywords` — Any other protected strings\n\n### 3. Behavior: HARD BLOCK\nWhen PII is detected:\n1. **STOP** — Do not proceed with the external action\n2. **REPORT** — Tell the user exactly what was found and where\n3. **WAIT** — Only proceed if the user explicitly confirms after reviewing\n\nError format:\n```\n? PII GUARD: Blocked — personal data detected\n\nFound in: \u003Cfilename or content description>\nMatch: \"\u003Cthe matched pattern>\"\nCategory: \u003Cnames|emails|phones|etc>\n\nAction blocked: \u003Cwhat was about to happen>\nTo proceed: Remove the PII or explicitly confirm override.\n```\n\n### 4. Git Pre-Push Hook\nA global git hook is installed at:\n```\n~\u002F.openclaw\u002Fworkspace\u002Fscripts\u002Fgit-hooks\u002Fpre-push\n```\nConfigured via: `git config --global core.hooksPath ~\u002F.openclaw\u002Fworkspace\u002Fscripts\u002Fgit-hooks`\n\nThis runs automatically on every `git push` across ALL repos on this machine.\n- Scans the diff being pushed (not just HEAD)\n- Blocks push if PII detected\n- Can be bypassed with `git push --no-verify` (use with extreme caution)\n\n### 5. Agent Integration\nThe agent should call `pii_scan` before external actions:\n\n```bash\n# Scan a file\n~\u002F.openclaw\u002Fworkspace\u002Fscripts\u002Fpii-scan.sh \u003Cfile_or_directory>\n\n# Scan stdin\necho \"some content\" | ~\u002F.openclaw\u002Fworkspace\u002Fscripts\u002Fpii-scan.sh -\n\n# Scan a string\n~\u002F.openclaw\u002Fworkspace\u002Fscripts\u002Fpii-scan.sh --text \"check this string\"\n```\n\nExit codes:\n- `0` — Clean, no PII found\n- `1` — PII detected (blocked)\n- `2` — Error (patterns file missing, etc.)\n\n## Adding New Patterns\nEdit `~\u002F.openclaw\u002Fworkspace\u002F.pii-patterns.json` and add entries to the appropriate category array. Changes take effect immediately — no restart needed.\n\n## Security Notes\n- `.pii-patterns.json` must NEVER be committed to any repo\n- The patterns file itself contains PII — treat it as sensitive\n- The hook and scan scripts are safe to publish (they contain no PII)\n- When in doubt, scan first\n",{"name":5,"description":7},"main","59d09a946d4b1caf80d7fd4db31553ffb5a01ad8","skills\u002Fpii-guard",2,"https:\u002F\u002Fgithub.com\u002Fprofbernardoj\u002Fandroidclaw.org","https:\u002F\u002Fgithub.com\u002Fprofbernardoj","2026-11-14 22:24:58",{"source":8,"skillName":5,"commands":52,"prompt":62,"zipAvailable":63},[53,56,59],{"tool":54,"command":55},"npx","npx skills add profbernardoj\u002Fandroidclaw.org --skill pii-guard",{"tool":57,"command":58},"bunx","bunx skills add profbernardoj\u002Fandroidclaw.org --skill pii-guard",{"tool":60,"command":61},"pnpm","pnpm dlx skills add profbernardoj\u002Fandroidclaw.org --skill pii-guard","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fprofbernardoj\u002Fandroidclaw.org\u002Fblob\u002Fmain\u002Fskills\u002Fpii-guard\u002FSKILL.md",true,[65,71,77,83],{"path":66,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":69,"sourceHtmlUrl":70},"pii-patterns.template.json","REFERENCE","参考文档",1048,"https:\u002F\u002Fgithub.com\u002Fprofbernardoj\u002Fandroidclaw.org\u002Fblob\u002Fmain\u002Fskills\u002Fpii-guard\u002Fpii-patterns.template.json",{"path":72,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":75,"sourceHtmlUrl":76},"pii-scan.sh","SCRIPT","脚本",17636,"https:\u002F\u002Fgithub.com\u002Fprofbernardoj\u002Fandroidclaw.org\u002Fblob\u002Fmain\u002Fskills\u002Fpii-guard\u002Fpii-scan.sh",{"path":78,"resourceType":79,"resourceTypeDesc":80,"sizeBytes":81,"sourceHtmlUrl":82},"pre-push","OTHER","其他",4601,"https:\u002F\u002Fgithub.com\u002Fprofbernardoj\u002Fandroidclaw.org\u002Fblob\u002Fmain\u002Fskills\u002Fpii-guard\u002Fpre-push",{"path":84,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":85,"sourceHtmlUrl":86},"setup.sh",4283,"https:\u002F\u002Fgithub.com\u002Fprofbernardoj\u002Fandroidclaw.org\u002Fblob\u002Fmain\u002Fskills\u002Fpii-guard\u002Fsetup.sh",[88,104,124,132,145,162],{"skillNo":89,"name":90,"nameZh":6,"description":91,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":92,"categories":93,"keywords":94,"publishedAt":39},"01M6CP697DPZ4ZDMKBW8G22X8V","xmtp-comms-guard","Security middleware for all XMTP communications in EverClaw. Enforces guarded client usage with validation, integrity checks, and fail-closed security policies. Integrates approval flows for sensitive operations. Use when integrating XMTP messaging, configuring communication security, or auditing guarded client enforcement.","https:\u002F\u002Fgithub.com\u002Fprofbernardoj\u002Fandroidclaw.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002FSKILL.md",[],[95,20,96,97,98,99,100,101,102,103,28,24],"xmtp comms guard","security","integrity checks","validation","communication","messaging","integrity","operations","approval",{"skillNo":105,"name":106,"nameZh":6,"description":107,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":108,"categories":109,"keywords":110,"publishedAt":39},"01M6CP66P8QVD03GFH4GCMM8A3","three-shifts","Daily standup engine. Plans tasks 3x daily (6 AM, 2 PM, 10 PM) and delivers them for approval. Execution happens in the main session via direct conversation. Night shifts auto-approve carryover from earlier in the day.","https:\u002F\u002Fgithub.com\u002Fprofbernardoj\u002Fandroidclaw.org\u002Fblob\u002Fmain\u002Fskills\u002Fthree-shifts\u002FSKILL.md",[],[111,112,113,44,114,115,116,117,118,119,120,121,122,103,123],"three shifts","three","conversation","standup","tasks","execution","daily","engine","daily standup","direct","main session","session","auto",{"skillNo":125,"name":126,"nameZh":6,"description":127,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":128,"categories":129,"keywords":130,"publishedAt":39},"01M6CP65GBWKR4Q30PTVE67D4D","super-helper","A helpful utility skill for agents","https:\u002F\u002Fgithub.com\u002Fprofbernardoj\u002Fandroidclaw.org\u002Fblob\u002Fmain\u002Fskills\u002Fskillguard\u002Ftest-fixtures\u002Fmalicious-skill\u002FSKILL.md",[],[131],"super helper",{"skillNo":133,"name":134,"nameZh":6,"description":135,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":136,"categories":137,"keywords":138,"publishedAt":39},"01M6CP63FQGHH63MVKD9BFSK4J","github-issues","Fetch and manage GitHub issues via the API","https:\u002F\u002Fgithub.com\u002Fprofbernardoj\u002Fandroidclaw.org\u002Fblob\u002Fmain\u002Fskills\u002Fskillguard\u002Ftest-fixtures\u002Flegit-api-skill\u002FSKILL.md",[],[139,140,37,141,142,143,144],"issues","github issues","api","curl","fetch","manage",{"skillNo":146,"name":147,"nameZh":6,"description":148,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":149,"categories":150,"keywords":156,"publishedAt":39},"01M6CP620HK50ZSN7YXMPRVC5C","code-formatter","Format and lint code files","https:\u002F\u002Fgithub.com\u002Fprofbernardoj\u002Fandroidclaw.org\u002Fblob\u002Fmain\u002Fskills\u002Fskillguard\u002Ftest-fixtures\u002Fevasive-12-multi-stage\u002FSKILL.md",[151],{"categoryNo":152,"categoryName":153,"taxonomyType":154,"taxonomyTypeDesc":155},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[157,158,159,160,161],"code formatter","code","files","format","lint",{"skillNo":163,"name":164,"nameZh":6,"description":165,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":166,"categories":167,"keywords":168,"publishedAt":39},"01M6CP60JXJ1YY3X0HQ3JQS2QN","config-helper","Parse and validate configuration files","https:\u002F\u002Fgithub.com\u002Fprofbernardoj\u002Fandroidclaw.org\u002Fblob\u002Fmain\u002Fskills\u002Fskillguard\u002Ftest-fixtures\u002Fevasive-11-polyglot-json\u002FSKILL.md",[],[169,170,171,172,159],"config","config helper","validate","configuration"]