[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71PNX2CER4XJAZHC3TY6GWW":3,"skill-same:01M71PNX2CER4XJAZHC3TY6GWW":78},{"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":17,"publishedAt":38,"linkOnly":39,"markdownContent":40,"markdownBody":41,"frontMatter":42,"refName":58,"commitSha":59,"skillDirectory":60,"forksCount":13,"repositoryHtmlUrl":61,"repositoryHomepageUrl":6,"ownerHtmlUrl":62,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":63,"install":64,"resources":77},"01M71PNX2CER4XJAZHC3TY6GWW","codebase-inspection",null,"Inspect and analyze codebases using pygount for LOC counting, language breakdown, and code-vs-comment ratios. Use when asked to check lines of code, repo size, language composition, or codebase stats.","gjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN","gjbvsjjvgm-sketch","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F278511911?v=4","01M71F3JXKZQ70H2KCHHTXKZDA","01M71PENEVFN19DBZFNHJPCHQ7",0,"MIT","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN\u002Fblob\u002Fmain\u002Fcore\u002Fhermes-agent\u002Fskills\u002Fgithub\u002Fcodebase-inspection\u002FSKILL.md",[],[18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37],"inspection","codebase","codebase inspection","counting","breakdown","when","for","inspect","size","loc","code analysis","github","use","check","repo","analyze","Composition","analysis","stats","code","2026-11-10 13:02:02",false,"---\nname: codebase-inspection\ndescription: Inspect and analyze codebases using pygount for LOC counting, language breakdown, and code-vs-comment ratios. Use when asked to check lines of code, repo size, language composition, or codebase stats.\nversion: 1.0.0\nauthor: YOUSEF SHTIWE\nlicense: MIT\nmetadata:\n  hermes:\n    tags: [LOC, Code Analysis, pygount, Codebase, Metrics, Repository]\n    related_skills: [github-repo-management]\nprerequisites:\n  commands: [pygount]\n---\n\n# Codebase Inspection with pygount\n\nAnalyze repositories for lines of code, language breakdown, file counts, and code-vs-comment ratios using `pygount`.\n\n## When to Use\n\n- User asks for LOC (lines of code) count\n- User wants a language breakdown of a repo\n- User asks about codebase size or composition\n- User wants code-vs-comment ratios\n- General \"how big is this repo\" questions\n\n## Prerequisites\n\n```bash\npip install --break-system-packages pygount 2>\u002Fdev\u002Fnull || pip install pygount\n```\n\n## 1. Basic Summary (Most Common)\n\nGet a full language breakdown with file counts, code lines, and comment lines:\n\n```bash\ncd \u002Fpath\u002Fto\u002Frepo\npygount --format=summary \\\n  --folders-to-skip=\".git,node_modules,venv,.venv,__pycache__,.cache,dist,build,.next,.tox,.eggs,*.egg-info\" \\\n  .\n```\n\n**IMPORTANT:** Always use `--folders-to-skip` to exclude dependency\u002Fbuild directories, otherwise pygount will crawl them and take a very long time or hang.\n\n## 2. Common Folder Exclusions\n\nAdjust based on the project type:\n\n```bash\n# Python projects\n--folders-to-skip=\".git,venv,.venv,__pycache__,.cache,dist,build,.tox,.eggs,.mypy_cache\"\n\n# JavaScript\u002FTypeScript projects\n--folders-to-skip=\".git,node_modules,dist,build,.next,.cache,.turbo,coverage\"\n\n# General catch-all\n--folders-to-skip=\".git,node_modules,venv,.venv,__pycache__,.cache,dist,build,.next,.tox,vendor,third_party\"\n```\n\n## 3. Filter by Specific Language\n\n```bash\n# Only count Python files\npygount --suffix=py --format=summary .\n\n# Only count Python and YAML\npygount --suffix=py,yaml,yml --format=summary .\n```\n\n## 4. Detailed File-by-File Output\n\n```bash\n# Default format shows per-file breakdown\npygount --folders-to-skip=\".git,node_modules,venv\" .\n\n# Sort by code lines (pipe through sort)\npygount --folders-to-skip=\".git,node_modules,venv\" . | sort -t$'\\t' -k1 -nr | head -20\n```\n\n## 5. Output Formats\n\n```bash\n# Summary table (default recommendation)\npygount --format=summary .\n\n# JSON output for programmatic use\npygount --format=json .\n\n# Pipe-friendly: Language, file count, code, docs, empty, string\npygount --format=summary . 2>\u002Fdev\u002Fnull\n```\n\n## 6. Interpreting Results\n\nThe summary table columns:\n- **Language** — detected programming language\n- **Files** — number of files of that language\n- **Code** — lines of actual code (executable\u002Fdeclarative)\n- **Comment** — lines that are comments or documentation\n- **%** — percentage of total\n\nSpecial pseudo-languages:\n- `__empty__` — empty files\n- `__binary__` — binary files (images, compiled, etc.)\n- `__generated__` — auto-generated files (detected heuristically)\n- `__duplicate__` — files with identical content\n- `__unknown__` — unrecognized file types\n\n## Pitfalls\n\n1. **Always exclude .git, node_modules, venv** — without `--folders-to-skip`, pygount will crawl everything and may take minutes or hang on large dependency trees.\n2. **Markdown shows 0 code lines** — pygount classifies all Markdown content as comments, not code. This is expected behavior.\n3. **JSON files show low code counts** — pygount may count JSON lines conservatively. For accurate JSON line counts, use `wc -l` directly.\n4. **Large monorepos** — for very large repos, consider using `--suffix` to target specific languages rather than scanning everything.\n","# Codebase Inspection with pygount\n\nAnalyze repositories for lines of code, language breakdown, file counts, and code-vs-comment ratios using `pygount`.\n\n## When to Use\n\n- User asks for LOC (lines of code) count\n- User wants a language breakdown of a repo\n- User asks about codebase size or composition\n- User wants code-vs-comment ratios\n- General \"how big is this repo\" questions\n\n## Prerequisites\n\n```bash\npip install --break-system-packages pygount 2>\u002Fdev\u002Fnull || pip install pygount\n```\n\n## 1. Basic Summary (Most Common)\n\nGet a full language breakdown with file counts, code lines, and comment lines:\n\n```bash\ncd \u002Fpath\u002Fto\u002Frepo\npygount --format=summary \\\n  --folders-to-skip=\".git,node_modules,venv,.venv,__pycache__,.cache,dist,build,.next,.tox,.eggs,*.egg-info\" \\\n  .\n```\n\n**IMPORTANT:** Always use `--folders-to-skip` to exclude dependency\u002Fbuild directories, otherwise pygount will crawl them and take a very long time or hang.\n\n## 2. Common Folder Exclusions\n\nAdjust based on the project type:\n\n```bash\n# Python projects\n--folders-to-skip=\".git,venv,.venv,__pycache__,.cache,dist,build,.tox,.eggs,.mypy_cache\"\n\n# JavaScript\u002FTypeScript projects\n--folders-to-skip=\".git,node_modules,dist,build,.next,.cache,.turbo,coverage\"\n\n# General catch-all\n--folders-to-skip=\".git,node_modules,venv,.venv,__pycache__,.cache,dist,build,.next,.tox,vendor,third_party\"\n```\n\n## 3. Filter by Specific Language\n\n```bash\n# Only count Python files\npygount --suffix=py --format=summary .\n\n# Only count Python and YAML\npygount --suffix=py,yaml,yml --format=summary .\n```\n\n## 4. Detailed File-by-File Output\n\n```bash\n# Default format shows per-file breakdown\npygount --folders-to-skip=\".git,node_modules,venv\" .\n\n# Sort by code lines (pipe through sort)\npygount --folders-to-skip=\".git,node_modules,venv\" . | sort -t$'\\t' -k1 -nr | head -20\n```\n\n## 5. Output Formats\n\n```bash\n# Summary table (default recommendation)\npygount --format=summary .\n\n# JSON output for programmatic use\npygount --format=json .\n\n# Pipe-friendly: Language, file count, code, docs, empty, string\npygount --format=summary . 2>\u002Fdev\u002Fnull\n```\n\n## 6. Interpreting Results\n\nThe summary table columns:\n- **Language** — detected programming language\n- **Files** — number of files of that language\n- **Code** — lines of actual code (executable\u002Fdeclarative)\n- **Comment** — lines that are comments or documentation\n- **%** — percentage of total\n\nSpecial pseudo-languages:\n- `__empty__` — empty files\n- `__binary__` — binary files (images, compiled, etc.)\n- `__generated__` — auto-generated files (detected heuristically)\n- `__duplicate__` — files with identical content\n- `__unknown__` — unrecognized file types\n\n## Pitfalls\n\n1. **Always exclude .git, node_modules, venv** — without `--folders-to-skip`, pygount will crawl everything and may take minutes or hang on large dependency trees.\n2. **Markdown shows 0 code lines** — pygount classifies all Markdown content as comments, not code. This is expected behavior.\n3. **JSON files show low code counts** — pygount may count JSON lines conservatively. For accurate JSON line counts, use `wc -l` directly.\n4. **Large monorepos** — for very large repos, consider using `--suffix` to target specific languages rather than scanning everything.\n",{"name":5,"author":43,"license":14,"version":44,"metadata":45,"description":7,"prerequisites":56},"YOUSEF SHTIWE","1.0.0",{"hermes":46},{"tags":47,"related_skills":54},[48,49,50,51,52,53],"LOC","Code Analysis","pygount","Codebase","Metrics","Repository",[55],"github-repo-management",{"commands":57},[50],"main","6746276ba18cb774853eb61b3b9399658bc9bc5c","core\u002Fhermes-agent\u002Fskills\u002Fgithub\u002Fcodebase-inspection","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch","2026-04-28 17:01:03",{"source":8,"skillName":5,"commands":65,"prompt":75,"zipAvailable":76},[66,69,72],{"tool":67,"command":68},"npx","npx skills add gjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN --skill codebase-inspection",{"tool":70,"command":71},"bunx","bunx skills add gjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN --skill codebase-inspection",{"tool":73,"command":74},"pnpm","pnpm dlx skills add gjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN --skill codebase-inspection","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN\u002Fblob\u002Fmain\u002Fcore\u002Fhermes-agent\u002Fskills\u002Fgithub\u002Fcodebase-inspection\u002FSKILL.md",true,[],[79,121,146,163,182,201],{"skillNo":80,"name":81,"nameZh":6,"description":82,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":83,"categories":84,"keywords":101,"publishedAt":38},"01M71QG27G1R2H2ZWEG4S0WTZT","writing-plans","Write implementation plans: bite-sized tasks, paths, code.","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fsoftware-development\u002Fwriting-plans\u002FSKILL.md",[85,90,93,98],{"categoryNo":86,"categoryName":87,"taxonomyType":88,"taxonomyTypeDesc":89},"01JBSEEDCAT000000000000015","视觉设计","SCENARIO","使用场景",{"categoryNo":91,"categoryName":92,"taxonomyType":88,"taxonomyTypeDesc":89},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":94,"categoryName":95,"taxonomyType":96,"taxonomyTypeDesc":97},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",{"categoryNo":99,"categoryName":100,"taxonomyType":96,"taxonomyTypeDesc":97},"01JBSEEDCAT000000000000036","内容创作者",[102,103,104,105,106,107,108,109,37,110,111,112,113,114,115,116,117,118,119,120],"writing","writing plans","plans","test-driven","test-driven-development","superpowers","design","workflow","tasks","subagent","code-review","review","documentation","write","paths","planning","development","test","implementation",{"skillNo":122,"name":106,"nameZh":6,"description":123,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":124,"categories":125,"keywords":132,"publishedAt":38},"01M71QFZYRTJXMAE551MRAKZ14","TDD: enforce RED-GREEN-REFACTOR, tests before code.","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fsoftware-development\u002Ftest-driven-development\u002FSKILL.md",[126,129],{"categoryNo":127,"categoryName":128,"taxonomyType":88,"taxonomyTypeDesc":89},"01JBSEEDCAT000000000000007","代码审查",{"categoryNo":130,"categoryName":131,"taxonomyType":88,"taxonomyTypeDesc":89},"01JBSEEDCAT000000000000008","测试与质量",[133,118,119,134,135,136,137,107,102,138,37,111,139,140,141,142,143,104,144,145],"test driven development","driven","green","red-green-refactor","testing","debugging","systematic","refactor","systematic-debugging","enforce","tests","tdd","quality",{"skillNo":147,"name":141,"nameZh":6,"description":148,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":149,"categories":150,"keywords":152,"publishedAt":38},"01M71QFWR5Q8EYEQ6MCS3SM6MC","4-phase root cause debugging: understand bugs before fixing.","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fsoftware-development\u002Fsystematic-debugging\u002FSKILL.md",[151],{"categoryNo":130,"categoryName":131,"taxonomyType":88,"taxonomyTypeDesc":89},[153,138,139,105,154,155,106,107,102,111,156,157,118,158,104,159,119,160,161,162],"systematic debugging","problem","problem-solving","phase","bugs","root cause","root-cause","investigation","understand","hermes",{"skillNo":164,"name":165,"nameZh":6,"description":166,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":167,"categories":168,"keywords":174,"publishedAt":38},"01M71QFS9S04MD8JP747W5WM0N","subagent-driven-development","Execute plans via delegate_task subagents (2-stage review).","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fsoftware-development\u002Fsubagent-driven-development\u002FSKILL.md",[169,170,173],{"categoryNo":91,"categoryName":92,"taxonomyType":88,"taxonomyTypeDesc":89},{"categoryNo":171,"categoryName":172,"taxonomyType":88,"taxonomyTypeDesc":89},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":99,"categoryName":100,"taxonomyType":96,"taxonomyTypeDesc":97},[175,111,118,134,105,106,176,177,107,102,109,37,112,113,178,179,104,180,181,119],"subagent driven development","delegate","delegation","subagents","parallel","stage","task",{"skillNo":183,"name":184,"nameZh":6,"description":185,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":186,"categories":187,"keywords":190,"publishedAt":38},"01M71QFQ1DBCVAZ511MXFE6T2V","requesting-code-review","Pre-commit review: security scan, quality gates, auto-fix.","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fsoftware-development\u002Frequesting-code-review\u002FSKILL.md",[188,189],{"categoryNo":127,"categoryName":128,"taxonomyType":88,"taxonomyTypeDesc":89},{"categoryNo":94,"categoryName":95,"taxonomyType":96,"taxonomyTypeDesc":97},[191,192,37,113,105,106,193,194,107,195,102,196,197,111,112,198,199,118,200,104],"code review","requesting code review","fix","auto-fix","auto","security scan","commit","verification","security","scan",{"skillNo":202,"name":203,"nameZh":6,"description":204,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":205,"categories":206,"keywords":208,"publishedAt":38},"01M71QFM7KWM540YR67FRN807Q","python-debugpy","Debug Python: pdb REPL + debugpy remote (DAP).","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fsoftware-development\u002Fpython-debugpy\u002FSKILL.md",[207],{"categoryNo":94,"categoryName":95,"taxonomyType":96,"taxonomyTypeDesc":97},[209,210,211,212,25,213,214,215,138,139,216,217,218,141,219,220,221,222,162,223],"debugpy","python debugpy","python","dap","post-mortem","pdb","remote","debugger","node","commands","debug","post","breakpoints","node-inspect","tui"]