[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6PF44YA1GSD73EF3DPRPY1Q":3,"skill-same:01M6PF44YA1GSD73EF3DPRPY1Q":68},{"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":40,"linkOnly":41,"markdownContent":42,"markdownBody":43,"frontMatter":44,"refName":45,"commitSha":46,"skillDirectory":47,"forksCount":48,"repositoryHtmlUrl":49,"repositoryHomepageUrl":6,"ownerHtmlUrl":50,"ownerBlogUrl":51,"ownerDescription":52,"updatedAt":53,"install":54,"resources":67},"01M6PF44YA1GSD73EF3DPRPY1Q","caveman-install",null,"Install and configure the caveman plugin for Claude Code on the current machine. Trigger when user says \"install caveman\", \"setup caveman\", \"配置 caveman\", \"安装 caveman\", or when caveman hooks\u002Fstatusline are missing from settings.json. Also applies when user wants to verify, troubleshoot, or uninstall caveman. Not applicable to: using caveman mode (that's the built-in caveman skill), general Claude Code configuration unrelated to caveman.","openJiuwen-ai\u002Fagent-core-java","openJiuwen-ai","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F264091041?v=4","01M6PF3SW90T9MK2B9PHFDAE9C","openJiuwen","01M6PF3T0P2A1EYWG3JACQS3MQ",49,"Apache-2.0","https:\u002F\u002Fgithub.com\u002FopenJiuwen-ai\u002Fagent-core-java\u002Fblob\u002Fdevelop\u002F.claude\u002Fskills\u002Fcaveman-install\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39],"caveman","caveman install","install","when","uninstall","Caveman Mode","for","mode","machine","missing","trigger","statusline","general","unrelated","settings.json","hooks","json","configure","verify","code","plugin","2026-11-10 10:12:30",false,"---\nname: caveman-install\ndescription: >\n  Install and configure the caveman plugin for Claude Code on the current machine.\n  Trigger when user says \"install caveman\", \"setup caveman\", \"配置 caveman\", \"安装 caveman\",\n  or when caveman hooks\u002Fstatusline are missing from settings.json.\n  Also applies when user wants to verify, troubleshoot, or uninstall caveman.\n  Not applicable to: using caveman mode (that's the built-in caveman skill),\n  general Claude Code configuration unrelated to caveman.\n---\n\n# Caveman Plugin Installation Guide\n\nCaveman is a Claude Code plugin that reduces output tokens ~65% by enforcing\nterse, article-free communication. This skill covers install, verify,\nconfigure, and uninstall on Windows.\n\n## Quick Install\n\n### Windows (PowerShell 5.1+)\n\n```powershell\nirm https:\u002F\u002Fraw.githubusercontent.com\u002FJuliusBrussee\u002Fcaveman\u002Fmain\u002Finstall.ps1 | iex\n```\n\nIf execution policy blocks it:\n\n```powershell\nSet-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass\nirm https:\u002F\u002Fraw.githubusercontent.com\u002FJuliusBrussee\u002Fcaveman\u002Fmain\u002Finstall.ps1 | iex\n```\n\n### WSL \u002F Git Bash\n\n```bash\ncurl -fsSL https:\u002F\u002Fraw.githubusercontent.com\u002FJuliusBrussee\u002Fcaveman\u002Fmain\u002Finstall.sh | bash\n```\n\n### Claude Code Only (Manual)\n\n```bash\nclaude plugin marketplace add JuliusBrussee\u002Fcaveman\nclaude plugin install caveman@caveman\n```\n\n## What Gets Installed\n\n1. **Plugin** — `~\u002F.claude\u002Fplugins\u002Fmarketplaces\u002Fcaveman\u002F`\n2. **Hooks** — Two hooks registered in `~\u002F.claude\u002Fsettings.json`:\n   - `SessionStart`: `node src\u002Fhooks\u002Fcaveman-activate.js` — reads mode from\n     `~\u002F.claude\u002F.caveman-active`, injects activation prompt\n   - `UserPromptSubmit`: `node src\u002Fhooks\u002Fcaveman-mode-tracker.js` — tracks\n     mode changes, appends context to user prompts\n3. **Hook files** — `~\u002F.claude\u002Fhooks\u002Fcaveman-activate.js`,\n   `caveman-mode-tracker.js`, `caveman-stats.js`, `caveman-config.js`\n4. **Statusline** — PowerShell script `caveman-statusline.ps1` for `[CAVEMAN]`\n   badge in Claude Code status bar\n5. **Flag file** — `~\u002F.claude\u002F.caveman-active` stores current mode (default: `full`)\n\n## Verify Installation\n\nThree checks:\n\n1. **List detected agents:**\n   ```bash\n   node ~\u002F.claude\u002Fplugins\u002Fmarketplaces\u002Fcaveman\u002Fbin\u002Finstall.js --list\n   ```\n\n2. **Test in Claude Code:** Type `\u002Fcaveman`. Response should be terse fragments.\n\n3. **Check flag file:**\n   ```bash\n   cat ~\u002F.claude\u002F.caveman-active\n   # expected: full\n   ```\n\n4. **Check settings.json hooks:** Look for `caveman-activate.js` and\n   `caveman-mode-tracker.js` in `hooks` section.\n\n## Statusline Setup\n\nThe statusline badge shows `[CAVEMAN]` (orange) in the Claude Code status bar.\nAfter first `\u002Fcaveman-stats` run it appends a savings counter like\n`[CAVEMAN] ⛏ 12.4k`.\n\nAdd to `~\u002F.claude\u002Fsettings.json` (or project `.claude\u002Fsettings.json`):\n\n```json\n{\n  \"statusLine\": {\n    \"type\": \"command\",\n    \"command\": \"powershell -ExecutionPolicy Bypass -File \\\"C:\\\\Users\\\\twc\\\\.claude\\\\plugins\\\\marketplaces\\\\caveman\\\\src\\\\hooks\\\\caveman-statusline.ps1\\\"\"\n  }\n}\n```\n\n> Adjust path if your Windows username differs. The `.ps1` script lives under\n> the caveman plugin directory.\n\n## Modes\n\n| Command | Mode | Effect |\n|---|---|---|\n| `\u002Fcaveman` | full (default) | Drop articles, fragments OK, short synonyms |\n| `\u002Fcaveman lite` | lite | Mild compression, keep most structure |\n| `\u002Fcaveman ultra` | ultra | Maximum compression, near-telegraphic |\n| `\u002Fcaveman wenyan` | wenyan-lite\u002Ffull\u002Fultra | Classical Chinese style |\n| `stop caveman` \u002F `normal mode` | off | Revert to normal output |\n\n## Troubleshooting\n\n### Hooks not firing\n\n1. Check `claude` is on PATH: `which claude`\n2. Check `~\u002F.claude\u002Fsettings.json` has `hooks` with `caveman-activate.js`\n3. Check `~\u002F.claude\u002F.caveman-active` exists with content `full`\n4. Restart Claude Code — SessionStart hook only fires on session start\n\n### Windows-specific\n\n- Use `install.ps1`, not `install.sh`, for hook wiring\n- PowerShell 5.1 minimum: check `$PSVersionTable.PSVersion`\n- If `irm | iex` blocks on execution policy: `Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass`\n\n### settings.json mangled\n\n1. Check backup at `~\u002F.claude\u002Fsettings.json.bak`\n2. Restore from backup or version control\n3. Re-run installer with `--force`\n\n### Managed environment (no hooks)\n\nUse rule-file-only path:\n\n```bash\nnode ~\u002F.claude\u002Fplugins\u002Fmarketplaces\u002Fcaveman\u002Fbin\u002Finstall.js --with-init --only cursor\n```\n\nDrops `.cursor\u002Frules\u002Fcaveman.mdc` etc. into repo. No hooks, no global config.\n\n## Uninstall\n\n```bash\nnpx -y github:JuliusBrussee\u002Fcaveman -- --uninstall\n```\n\nRemoves hooks, plugin, flag file. Does NOT remove:\n- Skills installed via `npx skills add`\n- Per-repo rule files from `--with-init` (delete manually)\n\n## Useful Flags\n\n| Flag | Purpose |\n|---|---|\n| `--dry-run` | Preview commands, write nothing |\n| `--all` | Install everything detected |\n| `--minimal` | Plugin only, no hooks |\n| `--only \u003Cid>` | One agent only (e.g. `--only claude`) |\n| `--force` | Re-run even if already installed |\n| `--with-init` | Drop always-on rule files into current repo |\n| `--with-mcp-shrink=\"\u003Ccmd>\"` | Register caveman-shrink MCP proxy (opt-in) |\n| `--list` | Print full agent matrix and exit |","# Caveman Plugin Installation Guide\n\nCaveman is a Claude Code plugin that reduces output tokens ~65% by enforcing\nterse, article-free communication. This skill covers install, verify,\nconfigure, and uninstall on Windows.\n\n## Quick Install\n\n### Windows (PowerShell 5.1+)\n\n```powershell\nirm https:\u002F\u002Fraw.githubusercontent.com\u002FJuliusBrussee\u002Fcaveman\u002Fmain\u002Finstall.ps1 | iex\n```\n\nIf execution policy blocks it:\n\n```powershell\nSet-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass\nirm https:\u002F\u002Fraw.githubusercontent.com\u002FJuliusBrussee\u002Fcaveman\u002Fmain\u002Finstall.ps1 | iex\n```\n\n### WSL \u002F Git Bash\n\n```bash\ncurl -fsSL https:\u002F\u002Fraw.githubusercontent.com\u002FJuliusBrussee\u002Fcaveman\u002Fmain\u002Finstall.sh | bash\n```\n\n### Claude Code Only (Manual)\n\n```bash\nclaude plugin marketplace add JuliusBrussee\u002Fcaveman\nclaude plugin install caveman@caveman\n```\n\n## What Gets Installed\n\n1. **Plugin** — `~\u002F.claude\u002Fplugins\u002Fmarketplaces\u002Fcaveman\u002F`\n2. **Hooks** — Two hooks registered in `~\u002F.claude\u002Fsettings.json`:\n   - `SessionStart`: `node src\u002Fhooks\u002Fcaveman-activate.js` — reads mode from\n     `~\u002F.claude\u002F.caveman-active`, injects activation prompt\n   - `UserPromptSubmit`: `node src\u002Fhooks\u002Fcaveman-mode-tracker.js` — tracks\n     mode changes, appends context to user prompts\n3. **Hook files** — `~\u002F.claude\u002Fhooks\u002Fcaveman-activate.js`,\n   `caveman-mode-tracker.js`, `caveman-stats.js`, `caveman-config.js`\n4. **Statusline** — PowerShell script `caveman-statusline.ps1` for `[CAVEMAN]`\n   badge in Claude Code status bar\n5. **Flag file** — `~\u002F.claude\u002F.caveman-active` stores current mode (default: `full`)\n\n## Verify Installation\n\nThree checks:\n\n1. **List detected agents:**\n   ```bash\n   node ~\u002F.claude\u002Fplugins\u002Fmarketplaces\u002Fcaveman\u002Fbin\u002Finstall.js --list\n   ```\n\n2. **Test in Claude Code:** Type `\u002Fcaveman`. Response should be terse fragments.\n\n3. **Check flag file:**\n   ```bash\n   cat ~\u002F.claude\u002F.caveman-active\n   # expected: full\n   ```\n\n4. **Check settings.json hooks:** Look for `caveman-activate.js` and\n   `caveman-mode-tracker.js` in `hooks` section.\n\n## Statusline Setup\n\nThe statusline badge shows `[CAVEMAN]` (orange) in the Claude Code status bar.\nAfter first `\u002Fcaveman-stats` run it appends a savings counter like\n`[CAVEMAN] ⛏ 12.4k`.\n\nAdd to `~\u002F.claude\u002Fsettings.json` (or project `.claude\u002Fsettings.json`):\n\n```json\n{\n  \"statusLine\": {\n    \"type\": \"command\",\n    \"command\": \"powershell -ExecutionPolicy Bypass -File \\\"C:\\\\Users\\\\twc\\\\.claude\\\\plugins\\\\marketplaces\\\\caveman\\\\src\\\\hooks\\\\caveman-statusline.ps1\\\"\"\n  }\n}\n```\n\n> Adjust path if your Windows username differs. The `.ps1` script lives under\n> the caveman plugin directory.\n\n## Modes\n\n| Command | Mode | Effect |\n|---|---|---|\n| `\u002Fcaveman` | full (default) | Drop articles, fragments OK, short synonyms |\n| `\u002Fcaveman lite` | lite | Mild compression, keep most structure |\n| `\u002Fcaveman ultra` | ultra | Maximum compression, near-telegraphic |\n| `\u002Fcaveman wenyan` | wenyan-lite\u002Ffull\u002Fultra | Classical Chinese style |\n| `stop caveman` \u002F `normal mode` | off | Revert to normal output |\n\n## Troubleshooting\n\n### Hooks not firing\n\n1. Check `claude` is on PATH: `which claude`\n2. Check `~\u002F.claude\u002Fsettings.json` has `hooks` with `caveman-activate.js`\n3. Check `~\u002F.claude\u002F.caveman-active` exists with content `full`\n4. Restart Claude Code — SessionStart hook only fires on session start\n\n### Windows-specific\n\n- Use `install.ps1`, not `install.sh`, for hook wiring\n- PowerShell 5.1 minimum: check `$PSVersionTable.PSVersion`\n- If `irm | iex` blocks on execution policy: `Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass`\n\n### settings.json mangled\n\n1. Check backup at `~\u002F.claude\u002Fsettings.json.bak`\n2. Restore from backup or version control\n3. Re-run installer with `--force`\n\n### Managed environment (no hooks)\n\nUse rule-file-only path:\n\n```bash\nnode ~\u002F.claude\u002Fplugins\u002Fmarketplaces\u002Fcaveman\u002Fbin\u002Finstall.js --with-init --only cursor\n```\n\nDrops `.cursor\u002Frules\u002Fcaveman.mdc` etc. into repo. No hooks, no global config.\n\n## Uninstall\n\n```bash\nnpx -y github:JuliusBrussee\u002Fcaveman -- --uninstall\n```\n\nRemoves hooks, plugin, flag file. Does NOT remove:\n- Skills installed via `npx skills add`\n- Per-repo rule files from `--with-init` (delete manually)\n\n## Useful Flags\n\n| Flag | Purpose |\n|---|---|\n| `--dry-run` | Preview commands, write nothing |\n| `--all` | Install everything detected |\n| `--minimal` | Plugin only, no hooks |\n| `--only \u003Cid>` | One agent only (e.g. `--only claude`) |\n| `--force` | Re-run even if already installed |\n| `--with-init` | Drop always-on rule files into current repo |\n| `--with-mcp-shrink=\"\u003Ccmd>\"` | Register caveman-shrink MCP proxy (opt-in) |\n| `--list` | Print full agent matrix and exit |",{"name":5,"description":7},"develop","dfece20d51f9b476b87c7fc08dbba71857e1fe17",".claude\u002Fskills\u002Fcaveman-install",10,"https:\u002F\u002Fgithub.com\u002FopenJiuwen-ai\u002Fagent-core-java","https:\u002F\u002Fgithub.com\u002FopenJiuwen-ai","https:\u002F\u002Fwww.openjiuwen.com","openJiuwen is an open-source community dedicated to building a production-ready AI Agent platform.","2026-11-13 17:24:16",{"source":8,"skillName":5,"commands":55,"prompt":65,"zipAvailable":66},[56,59,62],{"tool":57,"command":58},"npx","npx skills add openJiuwen-ai\u002Fagent-core-java --skill caveman-install",{"tool":60,"command":61},"bunx","bunx skills add openJiuwen-ai\u002Fagent-core-java --skill caveman-install",{"tool":63,"command":64},"pnpm","pnpm dlx skills add openJiuwen-ai\u002Fagent-core-java --skill caveman-install","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FopenJiuwen-ai\u002Fagent-core-java\u002Fblob\u002Fdevelop\u002F.claude\u002Fskills\u002Fcaveman-install\u002FSKILL.md",true,[],[69,93,104,114,123,132],{"skillNo":70,"name":71,"nameZh":6,"description":72,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":73,"categories":74,"keywords":80,"publishedAt":40},"01M6PFBS67R67YZW9V80AHK266","web_research","Search public information and summarize sources with the search tool.","https:\u002F\u002Fgithub.com\u002FopenJiuwen-ai\u002Fagent-core-java\u002Fblob\u002Fdevelop\u002Fexamples\u002Ftoolgroup\u002Fskills\u002Fweb_research\u002FSKILL.md",[75],{"categoryNo":76,"categoryName":77,"taxonomyType":78,"taxonomyTypeDesc":79},"01JBSEEDCAT000000000000021","资料检索与研究","SCENARIO","使用场景",[81,82,83,84,85,86,87,88,89,90,91,92],"web research","research","web","with","information","sources","false","public","tool","examples","search","summarize",{"skillNo":94,"name":95,"nameZh":6,"description":96,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":97,"categories":98,"keywords":102,"publishedAt":40},"01M6PFBNC6CP2CVQE6QPJBZCT3","skill_a","Modified Skill A","https:\u002F\u002Fgithub.com\u002FopenJiuwen-ai\u002Fagent-core-java\u002Fblob\u002Fdevelop\u002Fexamples\u002Fskill_hot_reload\u002Fskills\u002Fskill_a\u002FSKILL.md",[99],{"categoryNo":100,"categoryName":101,"taxonomyType":78,"taxonomyTypeDesc":79},"01JBSEEDCAT000000000000023","Skill与智能体开发",[103],"skill a",{"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":111,"publishedAt":40},"01M6PFBHGDK865W5KFD9XC2XPB","skill_30","Skill 30 for hot-reload demo","https:\u002F\u002Fgithub.com\u002FopenJiuwen-ai\u002Fagent-core-java\u002Fblob\u002Fdevelop\u002Fexamples\u002Fskill_hot_reload\u002Fskills\u002Fskill_30\u002FSKILL.md",[110],{"categoryNo":100,"categoryName":101,"taxonomyType":78,"taxonomyTypeDesc":79},[112,25,113],"skill 30","demo",{"skillNo":115,"name":116,"nameZh":6,"description":117,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":118,"categories":119,"keywords":121,"publishedAt":40},"01M6PFBDBR8BK7Z2N8XR0WV2P2","skill_29","Skill 29 for hot-reload demo","https:\u002F\u002Fgithub.com\u002FopenJiuwen-ai\u002Fagent-core-java\u002Fblob\u002Fdevelop\u002Fexamples\u002Fskill_hot_reload\u002Fskills\u002Fskill_29\u002FSKILL.md",[120],{"categoryNo":100,"categoryName":101,"taxonomyType":78,"taxonomyTypeDesc":79},[122,25,113],"skill 29",{"skillNo":124,"name":125,"nameZh":6,"description":126,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":127,"categories":128,"keywords":130,"publishedAt":40},"01M6PFB9H4ND4RVTPBVC32CPZZ","skill_28","Skill 28 for hot-reload demo","https:\u002F\u002Fgithub.com\u002FopenJiuwen-ai\u002Fagent-core-java\u002Fblob\u002Fdevelop\u002Fexamples\u002Fskill_hot_reload\u002Fskills\u002Fskill_28\u002FSKILL.md",[129],{"categoryNo":100,"categoryName":101,"taxonomyType":78,"taxonomyTypeDesc":79},[131,25,113],"skill 28",{"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":139,"publishedAt":40},"01M6PFB5FR4ACYQ2NCGJ51NSJT","skill_27","Skill 27 for hot-reload demo","https:\u002F\u002Fgithub.com\u002FopenJiuwen-ai\u002Fagent-core-java\u002Fblob\u002Fdevelop\u002Fexamples\u002Fskill_hot_reload\u002Fskills\u002Fskill_27\u002FSKILL.md",[138],{"categoryNo":100,"categoryName":101,"taxonomyType":78,"taxonomyTypeDesc":79},[140,113,25],"skill 27"]