[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6JCKW704VMB3ABAT2X94XPF":3,"skill-same:01M6JCKW704VMB3ABAT2X94XPF":90},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":25,"publishedAt":46,"linkOnly":47,"markdownContent":48,"markdownBody":49,"frontMatter":50,"refName":52,"commitSha":53,"skillDirectory":54,"forksCount":55,"repositoryHtmlUrl":56,"repositoryHomepageUrl":57,"ownerHtmlUrl":58,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":59,"install":60,"resources":73},"01M6JCKW704VMB3ABAT2X94XPF","skill-library-sanitization",null,"Audit, sanitize, curate, and maintain AI agent skill libraries. Use when pulling external\u002Fcommunity skills, updating installed skills, removing secrets\u002Fprivate info, quarantining unsafe material, deduplicating skills, or building a clean curated skill database for public or shared use.","S3YED\u002Fappie-kit","S3YED","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F62743867?v=4","01M6JBKBRRVP6KMS0VWZ27T3R6","01M6JBKBX0KG30284PW1DBYJT1",14,"MIT","https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fdevops\u002Fskill-library-sanitization\u002FSKILL.md",[17,22],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":23,"categoryName":24,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000023","Skill与智能体开发",[26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],"skill library sanitization","library","sanitization","skill library","maintain","unsafe","for","material","agent skill","shared","sanitize","info","ai agent","community","clean","curate","secrets","audit","database","libraries","2026-11-10 10:12:30",false,"---\nname: skill-library-sanitization\ndescription: \"Audit, sanitize, curate, and maintain AI agent skill libraries. Use when pulling external\u002Fcommunity skills, updating installed skills, removing secrets\u002Fprivate info, quarantining unsafe material, deduplicating skills, or building a clean curated skill database for public or shared use.\"\norigin: user\n---\n\n# Skill Library Sanitization\n\nUse this when preparing, importing, updating, or publishing a skill library, agent kit, prompt\u002Ftool bundle, or exported knowledge base. The goal is to preserve reusable workflows while stripping secrets, private identity, client data, infrastructure details, copyrighted\u002Fraw paid material, NSFW material, local-machine assumptions, and stale duplicates.\n\n## Core rule\n\nNever import external skills directly into the live skill library. Pull into a staging area, scan, sanitize, curate, validate, then promote.\n\n## Standard directory model\n\nUse explicit zones:\n\n- **Sources**: external repos, marketplace exports, local Hermes\u002FOpenClaw\u002FClaude skills, appie-brain skills.\n- **Intake staging**: `~\u002F.hermes\u002Fskill-intake\u002F\u003Csource>\u002F\u003Ctimestamp>\u002F` for raw pulled material.\n- **Quarantine**: `~\u002F.hermes\u002Fskill-quarantine\u002F\u003Ctimestamp>\u002F` for private, unsafe, duplicate, or unlicensed material.\n- **Clean database**: a user-approved repo or folder such as `\u003CCLEAN_SKILLS_REPO>\u002Fskills\u002F`.\n- **Install target**: `~\u002F.hermes\u002Fskills\u002F` only after clean database validation passes.\n\nDo not leave quarantine inside a public repo, even when `.gitignore` hides it.\n\n## Workflow\n\n### 1. Intake, never direct install\n\nFor a Git source:\n\n```bash\nmkdir -p ~\u002F.hermes\u002Fskill-intake\ncd ~\u002F.hermes\u002Fskill-intake\ngit clone --depth 1 \u003CREPO_URL> \u003Csource>-$(date -u +%Y%m%dT%H%M%SZ)\n```\n\nFor local sources, copy into staging instead of editing originals:\n\n```bash\nrsync -a --exclude '.git' \u003CSOURCE_SKILLS_DIR>\u002F ~\u002F.hermes\u002Fskill-intake\u002F\u003Csource>-$(date -u +%Y%m%dT%H%M%SZ)\u002F\n```\n\nRecord source URL\u002Fpath, commit SHA if available, timestamp, and license before touching content.\n\n### 2. Inventory and normalize\n\nCount skills by `SKILL.md`, not just folders. Extract:\n\n- skill name and description\n- source path and source license\n- linked resources under `references\u002F`, `scripts\u002F`, `templates\u002F`, `assets\u002F`\n- duplicate names\n- missing or malformed frontmatter\n- support files outside allowed directories\n- absolute paths, network calls, credential references, destructive commands\n\nUse `scripts\u002Fscan_skill_library.py` from this skill for a masked inventory and leak scan.\n\n### 3. Classify before editing\n\nClassify every skill:\n\n- **Keep**: generic, useful, low-risk, portable.\n- **Sanitize**: useful workflow but contains private IDs, local paths, credentials, client references, internal hosts, or account names.\n- **Merge**: narrow one-off that belongs in an umbrella skill.\n- **Quarantine**: private\u002Fsession-specific, NSFW\u002Fclient-sensitive, raw paid-course\u002Ftranscript material, unsafe automation, unclear license, or private memory.\n- **Retire**: stale, broken, duplicate with no unique content.\n\nDo not delete useful workflows just because they contain private IDs. Replace identifiers with placeholders and document required env vars.\n\n### 4. Sanitize into portable placeholders\n\nReplace concrete values with placeholders while keeping the procedure intact:\n\n- API keys\u002Ftokens\u002Fcookies\u002Fauth headers -> `\u003CAPI_KEY>`, `\u003CTOKEN>`, env-var references, or `.env.example` keys.\n- Notion database\u002Fdata-source\u002Fpage IDs -> `\u003CNOTION_DATABASE_ID>`.\n- Webflow site\u002Fcollection IDs -> `\u003CWEBFLOW_SITE_ID>`, `\u003CWEBFLOW_COLLECTION_ID>`.\n- Google Drive\u002Fdocs\u002Fsheets IDs -> `\u003CGOOGLE_FILE_ID>` \u002F `\u003CSPREADSHEET_ID>`.\n- Tailscale\u002Fprivate IPs\u002Finternal domains -> `\u003CPRIVATE_HOST>` \u002F `\u003CINTERNAL_DOMAIN>`.\n- SSH hosts\u002Fkey paths\u002Fusernames -> `\u003CSSH_HOST>`, `\u003CSSH_KEY_PATH>`, `\u003CREMOTE_USER>`.\n- Local absolute paths -> `$HOME\u002F...` or `\u003CPROJECT_PATH>`.\n- Client\u002Fperson\u002Fbot handles -> `\u003CCLIENT_NAME>`, `\u003CACCOUNT_HANDLE>`, `\u003CBOT_NAME>`.\n- Signed URLs\u002Fquery tokens -> strip query string or replace with `\u003CSIGNED_URL>`.\n\n### 5. Quarantine safely\n\nMove unsafe files outside the clean database and keep a private manifest:\n\n```bash\nmkdir -p ~\u002F.hermes\u002Fskill-quarantine\u002F\u003Ctimestamp>\nmv \u003Cunsafe-path> ~\u002F.hermes\u002Fskill-quarantine\u002F\u003Ctimestamp>\u002F\n```\n\nThe public report should say counts and categories only. Do not paste raw private snippets into chat or public reports.\n\n### 6. Curate the clean database\n\nFor promoted skills:\n\n- Keep one canonical skill per workflow, with umbrella skills preferred over narrow one-offs.\n- Use lowercase hyphenated names and ensure global uniqueness.\n- Keep `SKILL.md` concise; move long examples to `references\u002F`.\n- Keep support files only under `references\u002F`, `scripts\u002F`, `templates\u002F`, or `assets\u002F`.\n- Replace environment-specific commands with variables and setup notes.\n- Prefer deterministic scripts for repeatable scanning\u002Fconversion.\n- Preserve attribution\u002Flicense metadata in a private or public manifest when allowed.\n\n### 7. Layered verification before promote\u002Finstall\n\nRun all gates before copying into the clean database or install target:\n\n```bash\npython3 \u003CTHIS_SKILL_DIR>\u002Fscripts\u002Fscan_skill_library.py \u003CSTAGED_OR_CLEAN_DIR> --json-out \u002Ftmp\u002Fskill-scan.json\n# If available:\ngitleaks detect --source \u003CSTAGED_OR_CLEAN_DIR> --no-git --redact\n```\n\nAlso verify:\n\n- Unique skill names equal total public skills.\n- Missing frontmatter\u002Fdescription: 0.\n- Duplicate names: 0.\n- Broken links\u002Fsupport-file paths: 0.\n- Secret\u002Fprivate-pattern findings: 0, except explicitly accepted false positives.\n- Touched scripts pass syntax checks.\n- Git diff contains no private report content.\n\n### 8. Promote atomically\n\nPromote only validated skills:\n\n```bash\nrsync -a --delete \u003CCLEAN_CANDIDATE_DIR>\u002F \u003CCLEAN_SKILLS_REPO>\u002Fskills\u002F\n```\n\nThen install or sync from the clean database into `~\u002F.hermes\u002Fskills\u002F` if desired. Avoid editing installed skills directly when a clean source-of-truth repo exists.\n\n### 9. Ongoing update loop\n\nFor updates:\n\n1. Pull new upstream material into a fresh staging folder.\n2. Compare against current clean database.\n3. Re-run scan and classification.\n4. Apply sanitization\u002Fmerge decisions in staging.\n5. Validate.\n6. Promote with a reviewed diff.\n7. Update indexes\u002Fmanifests and this skill if the workflow changed.\n\n## Reporting\n\nFinal reports should be terse and actionable:\n\n- Source(s) inspected.\n- Public\u002Fclean skill count.\n- Kept, sanitized, merged, quarantined, retired counts.\n- Duplicate skill count.\n- Frontmatter\u002Fdescription validation result.\n- Secret\u002Fprivate-pattern scan result.\n- Generic scanner result.\n- Syntax\u002Findex validation result.\n- Quarantine path and file count.\n- Clean database path and report paths.\n- Reminder that intentional deletions need review before commit\u002Fpush.\n\nNever paste raw secrets or full private findings into chat. Mask them or reference the private quarantine path.\n\n## Pitfalls\n\n- Do not treat `gitleaks` alone as sufficient. It misses private identities, internal domains, client names, local paths, signed URLs, and operational details.\n- Do not trust marketplace\u002Fcommunity skills until read and scanned. Skills can contain destructive shell commands, exfiltration URLs, or hidden credential assumptions.\n- Do not promote raw session transcripts, paid course transcripts, private memory, NSFW client-bot material, or client-specific docs into a shared kit.\n- Do not rely on directory names for uniqueness. Read `name:` frontmatter.\n- Do not create one skill per cleanup session. Fold recurring lessons into this skill and put run-specific patterns in `references\u002F`.\n\n## Support files\n\n- `scripts\u002Fscan_skill_library.py`: masked inventory and leak scanner for skill trees.\n- `references\u002Fcurated-skill-database-workflow.md`: detailed intake, sanitize, curate, promote workflow.\n- `references\u002Fappie-kit-cleanup-2026-06-14.md`: compact example of a completed public skill-kit cleanup, including validation checklist and reporting shape.\n","# Skill Library Sanitization\n\nUse this when preparing, importing, updating, or publishing a skill library, agent kit, prompt\u002Ftool bundle, or exported knowledge base. The goal is to preserve reusable workflows while stripping secrets, private identity, client data, infrastructure details, copyrighted\u002Fraw paid material, NSFW material, local-machine assumptions, and stale duplicates.\n\n## Core rule\n\nNever import external skills directly into the live skill library. Pull into a staging area, scan, sanitize, curate, validate, then promote.\n\n## Standard directory model\n\nUse explicit zones:\n\n- **Sources**: external repos, marketplace exports, local Hermes\u002FOpenClaw\u002FClaude skills, appie-brain skills.\n- **Intake staging**: `~\u002F.hermes\u002Fskill-intake\u002F\u003Csource>\u002F\u003Ctimestamp>\u002F` for raw pulled material.\n- **Quarantine**: `~\u002F.hermes\u002Fskill-quarantine\u002F\u003Ctimestamp>\u002F` for private, unsafe, duplicate, or unlicensed material.\n- **Clean database**: a user-approved repo or folder such as `\u003CCLEAN_SKILLS_REPO>\u002Fskills\u002F`.\n- **Install target**: `~\u002F.hermes\u002Fskills\u002F` only after clean database validation passes.\n\nDo not leave quarantine inside a public repo, even when `.gitignore` hides it.\n\n## Workflow\n\n### 1. Intake, never direct install\n\nFor a Git source:\n\n```bash\nmkdir -p ~\u002F.hermes\u002Fskill-intake\ncd ~\u002F.hermes\u002Fskill-intake\ngit clone --depth 1 \u003CREPO_URL> \u003Csource>-$(date -u +%Y%m%dT%H%M%SZ)\n```\n\nFor local sources, copy into staging instead of editing originals:\n\n```bash\nrsync -a --exclude '.git' \u003CSOURCE_SKILLS_DIR>\u002F ~\u002F.hermes\u002Fskill-intake\u002F\u003Csource>-$(date -u +%Y%m%dT%H%M%SZ)\u002F\n```\n\nRecord source URL\u002Fpath, commit SHA if available, timestamp, and license before touching content.\n\n### 2. Inventory and normalize\n\nCount skills by `SKILL.md`, not just folders. Extract:\n\n- skill name and description\n- source path and source license\n- linked resources under `references\u002F`, `scripts\u002F`, `templates\u002F`, `assets\u002F`\n- duplicate names\n- missing or malformed frontmatter\n- support files outside allowed directories\n- absolute paths, network calls, credential references, destructive commands\n\nUse `scripts\u002Fscan_skill_library.py` from this skill for a masked inventory and leak scan.\n\n### 3. Classify before editing\n\nClassify every skill:\n\n- **Keep**: generic, useful, low-risk, portable.\n- **Sanitize**: useful workflow but contains private IDs, local paths, credentials, client references, internal hosts, or account names.\n- **Merge**: narrow one-off that belongs in an umbrella skill.\n- **Quarantine**: private\u002Fsession-specific, NSFW\u002Fclient-sensitive, raw paid-course\u002Ftranscript material, unsafe automation, unclear license, or private memory.\n- **Retire**: stale, broken, duplicate with no unique content.\n\nDo not delete useful workflows just because they contain private IDs. Replace identifiers with placeholders and document required env vars.\n\n### 4. Sanitize into portable placeholders\n\nReplace concrete values with placeholders while keeping the procedure intact:\n\n- API keys\u002Ftokens\u002Fcookies\u002Fauth headers -> `\u003CAPI_KEY>`, `\u003CTOKEN>`, env-var references, or `.env.example` keys.\n- Notion database\u002Fdata-source\u002Fpage IDs -> `\u003CNOTION_DATABASE_ID>`.\n- Webflow site\u002Fcollection IDs -> `\u003CWEBFLOW_SITE_ID>`, `\u003CWEBFLOW_COLLECTION_ID>`.\n- Google Drive\u002Fdocs\u002Fsheets IDs -> `\u003CGOOGLE_FILE_ID>` \u002F `\u003CSPREADSHEET_ID>`.\n- Tailscale\u002Fprivate IPs\u002Finternal domains -> `\u003CPRIVATE_HOST>` \u002F `\u003CINTERNAL_DOMAIN>`.\n- SSH hosts\u002Fkey paths\u002Fusernames -> `\u003CSSH_HOST>`, `\u003CSSH_KEY_PATH>`, `\u003CREMOTE_USER>`.\n- Local absolute paths -> `$HOME\u002F...` or `\u003CPROJECT_PATH>`.\n- Client\u002Fperson\u002Fbot handles -> `\u003CCLIENT_NAME>`, `\u003CACCOUNT_HANDLE>`, `\u003CBOT_NAME>`.\n- Signed URLs\u002Fquery tokens -> strip query string or replace with `\u003CSIGNED_URL>`.\n\n### 5. Quarantine safely\n\nMove unsafe files outside the clean database and keep a private manifest:\n\n```bash\nmkdir -p ~\u002F.hermes\u002Fskill-quarantine\u002F\u003Ctimestamp>\nmv \u003Cunsafe-path> ~\u002F.hermes\u002Fskill-quarantine\u002F\u003Ctimestamp>\u002F\n```\n\nThe public report should say counts and categories only. Do not paste raw private snippets into chat or public reports.\n\n### 6. Curate the clean database\n\nFor promoted skills:\n\n- Keep one canonical skill per workflow, with umbrella skills preferred over narrow one-offs.\n- Use lowercase hyphenated names and ensure global uniqueness.\n- Keep `SKILL.md` concise; move long examples to `references\u002F`.\n- Keep support files only under `references\u002F`, `scripts\u002F`, `templates\u002F`, or `assets\u002F`.\n- Replace environment-specific commands with variables and setup notes.\n- Prefer deterministic scripts for repeatable scanning\u002Fconversion.\n- Preserve attribution\u002Flicense metadata in a private or public manifest when allowed.\n\n### 7. Layered verification before promote\u002Finstall\n\nRun all gates before copying into the clean database or install target:\n\n```bash\npython3 \u003CTHIS_SKILL_DIR>\u002Fscripts\u002Fscan_skill_library.py \u003CSTAGED_OR_CLEAN_DIR> --json-out \u002Ftmp\u002Fskill-scan.json\n# If available:\ngitleaks detect --source \u003CSTAGED_OR_CLEAN_DIR> --no-git --redact\n```\n\nAlso verify:\n\n- Unique skill names equal total public skills.\n- Missing frontmatter\u002Fdescription: 0.\n- Duplicate names: 0.\n- Broken links\u002Fsupport-file paths: 0.\n- Secret\u002Fprivate-pattern findings: 0, except explicitly accepted false positives.\n- Touched scripts pass syntax checks.\n- Git diff contains no private report content.\n\n### 8. Promote atomically\n\nPromote only validated skills:\n\n```bash\nrsync -a --delete \u003CCLEAN_CANDIDATE_DIR>\u002F \u003CCLEAN_SKILLS_REPO>\u002Fskills\u002F\n```\n\nThen install or sync from the clean database into `~\u002F.hermes\u002Fskills\u002F` if desired. Avoid editing installed skills directly when a clean source-of-truth repo exists.\n\n### 9. Ongoing update loop\n\nFor updates:\n\n1. Pull new upstream material into a fresh staging folder.\n2. Compare against current clean database.\n3. Re-run scan and classification.\n4. Apply sanitization\u002Fmerge decisions in staging.\n5. Validate.\n6. Promote with a reviewed diff.\n7. Update indexes\u002Fmanifests and this skill if the workflow changed.\n\n## Reporting\n\nFinal reports should be terse and actionable:\n\n- Source(s) inspected.\n- Public\u002Fclean skill count.\n- Kept, sanitized, merged, quarantined, retired counts.\n- Duplicate skill count.\n- Frontmatter\u002Fdescription validation result.\n- Secret\u002Fprivate-pattern scan result.\n- Generic scanner result.\n- Syntax\u002Findex validation result.\n- Quarantine path and file count.\n- Clean database path and report paths.\n- Reminder that intentional deletions need review before commit\u002Fpush.\n\nNever paste raw secrets or full private findings into chat. Mask them or reference the private quarantine path.\n\n## Pitfalls\n\n- Do not treat `gitleaks` alone as sufficient. It misses private identities, internal domains, client names, local paths, signed URLs, and operational details.\n- Do not trust marketplace\u002Fcommunity skills until read and scanned. Skills can contain destructive shell commands, exfiltration URLs, or hidden credential assumptions.\n- Do not promote raw session transcripts, paid course transcripts, private memory, NSFW client-bot material, or client-specific docs into a shared kit.\n- Do not rely on directory names for uniqueness. Read `name:` frontmatter.\n- Do not create one skill per cleanup session. Fold recurring lessons into this skill and put run-specific patterns in `references\u002F`.\n\n## Support files\n\n- `scripts\u002Fscan_skill_library.py`: masked inventory and leak scanner for skill trees.\n- `references\u002Fcurated-skill-database-workflow.md`: detailed intake, sanitize, curate, promote workflow.\n- `references\u002Fappie-kit-cleanup-2026-06-14.md`: compact example of a completed public skill-kit cleanup, including validation checklist and reporting shape.\n",{"name":5,"origin":51,"description":7},"user","master","8ec37df6d71fb664ea19d32c079e7d3ff931a8e0","skills\u002Fdevops\u002Fskill-library-sanitization",3,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit","https:\u002F\u002Fweblyfe.ai","https:\u002F\u002Fgithub.com\u002FS3YED","2026-08-27 01:54:02",{"source":8,"skillName":5,"commands":61,"prompt":71,"zipAvailable":72},[62,65,68],{"tool":63,"command":64},"npx","npx skills add S3YED\u002Fappie-kit --skill skill-library-sanitization",{"tool":66,"command":67},"bunx","bunx skills add S3YED\u002Fappie-kit --skill skill-library-sanitization",{"tool":69,"command":70},"pnpm","pnpm dlx skills add S3YED\u002Fappie-kit --skill skill-library-sanitization","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fdevops\u002Fskill-library-sanitization\u002FSKILL.md",true,[74,80,84],{"path":75,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":78,"sourceHtmlUrl":79},"references\u002Fappie-kit-cleanup-2026-06-14.md","REFERENCE","参考文档",1898,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fdevops\u002Fskill-library-sanitization\u002Freferences\u002Fappie-kit-cleanup-2026-06-14.md",{"path":81,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":82,"sourceHtmlUrl":83},"references\u002Fcurated-skill-database-workflow.md",3089,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fdevops\u002Fskill-library-sanitization\u002Freferences\u002Fcurated-skill-database-workflow.md",{"path":85,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":88,"sourceHtmlUrl":89},"scripts\u002Fscan_skill_library.py","SCRIPT","脚本",7022,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fdevops\u002Fskill-library-sanitization\u002Fscripts\u002Fscan_skill_library.py",[91,123,158,183,213,236],{"skillNo":92,"name":93,"nameZh":6,"description":94,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":95,"categories":96,"keywords":104,"publishedAt":46},"01M6JFD4M6N4DSGC7TXEJ5R3J2","ai-music","AI music generation and audio tools: HeartMuLa lyrics-to-music generation, songwriting craft (+ Suno prompts), and audio spectrogram\u002Ffeature visualization.","https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fwethlete\u002Fai-music\u002FSKILL.md",[97,100,103],{"categoryNo":98,"categoryName":99,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000013","分析与可视化",{"categoryNo":101,"categoryName":102,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000016","图像与多媒体",{"categoryNo":23,"categoryName":24,"taxonomyType":20,"taxonomyTypeDesc":21},[105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122],"music","ai music","humanizer","visualization","Tools","Audio","hermes","hermes agent","songwriting","suno","lyrics","prompts","heartmula","craft","generation","feature","ai music generation","music generation",{"skillNo":124,"name":125,"nameZh":6,"description":126,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":127,"categories":128,"keywords":137,"publishedAt":46},"01M6JFCZE4XNFQFMNZDHKHT5V5","agentic-webdesign-design-system-ingestion","Use v0 Design Systems 2.0, Bolt Design System Agents, or Lovable to generate production UI from a client's real design system components — not generic Tailwind. Use when building a client website where brand consistency matters.","https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fweb-design\u002Fagentic-webdesign-design-system-ingestion\u002FSKILL.md",[129,132],{"categoryNo":130,"categoryName":131,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":133,"categoryName":134,"taxonomyType":135,"taxonomyTypeDesc":136},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",[138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157],"design","agentic","design system","system","ingestion","webdesign","agentic webdesign design system ingestion","components","generate","design systems","website","ui","Tailwind","bolt","lovable","v0","design-system","wed","design system components","appie",{"skillNo":159,"name":160,"nameZh":6,"description":161,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":162,"categories":163,"keywords":166,"publishedAt":46},"01M6JFCVPX3913CFAS6QQJ33ZB","agentic-webdesign-agent-elements","Use 21st.dev Agent Elements — 25 shadcn\u002Fui components purpose-built for AI agent UIs. Tool cards (Bash, Edit, Search, Plan, Subagent, MCP), chat, input, streaming. Open source, shadcn-registry install, no runtime lock-in.","https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fweb-design\u002Fagentic-webdesign-agent-elements\u002FSKILL.md",[164,165],{"categoryNo":23,"categoryName":24,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":133,"categoryName":134,"taxonomyType":135,"taxonomyTypeDesc":136},[139,167,143,168,169,38,145,170,171,172,173,174,175,176,177,178,179,180,181,182],"elements","agentic webdesign agent elements","MCP","registry","search","streaming","open source","open","Bash","plan","subagent","edit","install","input","lock","source",{"skillNo":184,"name":185,"nameZh":6,"description":186,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":187,"categories":188,"keywords":193,"publishedAt":46},"01M6JFCQC7H65M9QJ6TRE71BS1","vercel-deployment","Deploy static sites and frontends to Vercel — handles both CLI and REST API paths, including the CLI token sanitization workaround.","https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fsoftware-development\u002Fvercel-deployment\u002FSKILL.md",[189,192],{"categoryNo":190,"categoryName":191,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000011","运维与部署",{"categoryNo":23,"categoryName":24,"taxonomyType":20,"taxonomyTypeDesc":21},[194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,28,212],"deployment","vercel deployment","vercel","macos","cli","linux","windows","deploy","vercel deploy","REST","api","site","deploy to vercel","token","rest api","host","sites","paths","static site",{"skillNo":214,"name":215,"nameZh":6,"description":216,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":217,"categories":218,"keywords":220,"publishedAt":46},"01M6JFCM4SMTXBM5A01BK2YQG1","software-quality-workflows","Umbrella workflow for TDD, debugging, code simplification, spikes, pre-commit review, and debugger-assisted investigation.","https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fsoftware-development\u002Fsoftware-quality-workflows\u002FSKILL.md",[219],{"categoryNo":23,"categoryName":24,"taxonomyType":20,"taxonomyTypeDesc":21},[221,222,223,224,225,226,227,228,229,230,231,232,233,234,51,235,32],"workflows","quality","software","software quality workflows","review","tdd","workflow","commit","debugging","code","debugger","pre-commit","investigation","code simplification","simplification",{"skillNo":237,"name":238,"nameZh":6,"description":239,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":240,"categories":241,"keywords":249,"publishedAt":46},"01M6JFCGD0M6CEATY01W7YN6DB","react-component-refactoring","Safely refactor large React components into smaller, maintainable pieces using proven patterns","https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fsoftware-development\u002Freact-component-refactoring\u002FSKILL.md",[242,245,248],{"categoryNo":243,"categoryName":244,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000007","代码审查",{"categoryNo":246,"categoryName":247,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000009","前端开发",{"categoryNo":23,"categoryName":24,"taxonomyType":20,"taxonomyTypeDesc":21},[250,251,252,253,254,255,256,257,197,258,259,145,260,200,261,230,262,263,264,265],"react","component","refactoring","component refactoring","react component","react component refactoring","frontend","writing","safe","typescript","react components","modular","refactor","simplify","patterns","test-driven-development"]