[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6C69QPMNPHS8714D6P3XEGC":3,"skill-same:01M6C69QPMNPHS8714D6P3XEGC":142},{"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":47,"linkOnly":48,"markdownContent":49,"markdownBody":50,"frontMatter":51,"refName":57,"commitSha":58,"skillDirectory":59,"forksCount":60,"repositoryHtmlUrl":61,"repositoryHomepageUrl":6,"ownerHtmlUrl":62,"ownerBlogUrl":6,"ownerDescription":63,"updatedAt":64,"install":65,"resources":77},"01M6C69QPMNPHS8714D6P3XEGC","project-init",null,"Scaffold a new project with base structure (git, README, LICENSE, CI, pre-commit). Use when starting a new project, initializing a repo, or bootstrapping Python\u002FNode\u002FRust\u002FGo.","laurigates\u002Fclaude-plugins","laurigates","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F13014001?v=4","01M6C59YHWS9C7KMXKSRX1YXNP","Lauri Gates","01M6C59YP2APG9YAM4DWYQYGFJ",60,"MIT","https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fproject-plugin\u002Fskills\u002Fproject-init\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],"init","project","project init","node","new","2026","when","which","mkdir","2025","structure","use","write","README","repo","go","gh","Bash","pre-commit","ci","license","git","create","config","commit","rust","github","python","2026-11-10 10:12:30",false,"---\ncreated: 2025-12-16\nmodified: 2026-08-07\nreviewed: 2026-08-07\nallowed-tools: Write, Bash(mkdir *), Bash(git init *), Bash(gh repo create *), Bash(pwd *), Bash(git config *), Bash(which *), SlashCommand, TodoWrite\nargs: \u003Cproject-name> [project-type] [--github] [--private]\nargument-hint: \u003Cproject-name> [project-type] [--github] [--private]\ndisable-model-invocation: true\ndescription: Scaffold a new project with base structure (git, README, LICENSE, CI, pre-commit). Use when starting a new project, initializing a repo, or bootstrapping Python\u002FNode\u002FRust\u002FGo.\nname: project-init\n---\n\n# \u002Fproject:init\n\n## When to Use This Skill\n\n| Use this skill when... | Use project-discovery instead when... |\n|---|---|\n| Scaffolding a brand-new project from scratch (src\u002Ftests\u002Fdocs, README, CI) | Working in an existing repo that already has structure |\n| Bootstrapping a Python\u002FNode\u002FRust\u002FGo codebase with universal base layout | Use project-continue instead when picking up work in an established project |\n| Creating a matching GitHub repository alongside the local skeleton | Use project-distill instead when extracting patterns from existing work |\n\n## Context\n\n- Current directory: !`pwd`\n- Git user: !`git config user.name`\n\n`gh` availability is probed in the body, not here — see \"GitHub CLI Availability\".\n\n## Parameters\n\n- `$1`: Project name (required)\n- `$2`: Project type (python|node|rust|go|generic) - defaults to generic\n- `$3`: --github flag to create GitHub repository\n- `$4`: --private flag for private repository\n\n## GitHub CLI Availability\n\nRun this check first, via the **Bash tool** — `which gh`:\n\n| Result | Report to the user | Effect on `--github` |\n|---|---|---|\n| exit 0, prints a path | `GitHub CLI: available (\u003Cpath>)` | repo creation proceeds |\n| exit 1, no output | `GitHub CLI: not installed — install from https:\u002F\u002Fcli.github.com\u002F` | skip repo creation, scaffold locally, and say so |\n\nReport the outcome either way — the availability answer is part of the skill's\noutput, not an internal detail.\n\nThis probe deliberately lives in the body rather than in `## Context`. `which`\nexits 1 when the tool is absent (silently — it writes nothing to stderr), and a\nnon-zero exit from a Context backtick aborts the skill before its body runs, so\n`\u002Fproject:init` was unusable on exactly the fresh machine it exists for\n(issue #2145). Run through the Bash tool, a non-zero exit is survivable and the\nanswer is still reported. A `find` over a fixed set of bin directories was\nrejected as the alternative: it errors to stderr when a start directory is\nabsent (the #1482 class, so it just moves the abort) and it cannot see `gh`\ninstalled via mise\u002Fasdf\u002Fnix\u002Fcargo, which would report a false \"not installed\".\n\n## Base Project Structure\n\nCreate universal project structure that all projects need:\n\n### 1. Core Directories\n```bash\nmkdir -p $1\u002F{src,tests,docs,.github\u002Fworkflows}\ncd $1\n```\n\n### 2. Git Setup\n```bash\ngit init\n```\n\n### 3. Base Documentation\n\n**README.md:**\n```markdown\n# $1\n\n## Description\n[Project description]\n\n## Installation\nSee [Installation Guide](docs\u002Finstallation.md)\n\n## Usage\nSee [Usage Guide](docs\u002Fusage.md)\n\n## Development\nSee [Development Guide](docs\u002Fdevelopment.md)\n\n## License\nMIT\n```\n\n**LICENSE:**\nCreate standard MIT license file\n\n**.gitignore:**\nCreate with common patterns for all languages\n\n### 4. EditorConfig\n**.editorconfig:**\n```ini\nroot = true\n\n[*]\nindent_style = space\nindent_size = 2\nend_of_line = lf\ncharset = utf-8\ntrim_trailing_whitespace = true\ninsert_final_newline = true\n\n[*.{py,rs,go}]\nindent_size = 4\n\n[*.md]\ntrim_trailing_whitespace = false\n```\n\n### 5. Pre-commit Base Config\n**.pre-commit-config.yaml:**\n```yaml\nrepos:\n  - repo: https:\u002F\u002Fgithub.com\u002Fpre-commit\u002Fpre-commit-hooks\n    rev: v4.6.0\n    hooks:\n      - id: trailing-whitespace\n      - id: end-of-file-fixer\n      - id: check-yaml\n      - id: check-json\n      - id: check-merge-conflict\n      - id: detect-private-key\n```\n\n### 6. GitHub Actions Base\n\n**.github\u002Fworkflows\u002Fci.yml:**\n```yaml\nname: CI\n\non:\n  push:\n    branches: [main, develop]\n  pull_request:\n    branches: [main]\n\njobs:\n  lint:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions\u002Fcheckout@v4.4.0\n      - name: Run linters\n        run: echo \"Linting step - configure based on project type\"\n\n  test:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions\u002Fcheckout@v4.4.0\n      - name: Run tests\n        run: echo \"Testing step - configure based on project type\"\n```\n\n### 7. Makefile Base\n\nCreate universal Makefile with colored output:\n```makefile\n.PHONY: help install test lint format clean\n\nhelp:\n\t@echo \"Available commands:\"\n\t@echo \"  make install - Install dependencies\"\n\t@echo \"  make test    - Run tests\"\n\t@echo \"  make lint    - Run linters\"\n\t@echo \"  make format  - Format code\"\n\t@echo \"  make clean   - Clean build artifacts\"\n\ninstall:\n\t@echo \"Installing dependencies...\"\n\ntest:\n\t@echo \"Running tests...\"\n\nlint:\n\t@echo \"Running linters...\"\n\nformat:\n\t@echo \"Formatting code...\"\n\nclean:\n\t@echo \"Cleaning...\"\n```\n\n## Language-Specific Setup\n\nBase init creates the universal structure only. Language-specific tooling\n(package manager, linters\u002Fformatters, test framework, Dockerfile) is applied\nafterwards with the `configure-plugin` skills — see that plugin's README for the\ncurrent skill list. Do not rely on a single bootstrap command; layer the\nconfigure skills you actually need.\n\n## GitHub Repository Creation\n\n**Run this section only when the caller passed `--github` in `$ARGUMENTS`.** When\nthe flag is absent, skip to \"Final Steps\" — the scaffold stays local.\n\nRequires `gh` — check \"GitHub CLI Availability\" above first. When `gh` is\nunavailable, skip this section, finish the local scaffold, and report that repo\ncreation was skipped plus the install link.\n\nCreate GitHub repository. `${4:---public}` expands to `--private` when `$4` is\n`--private`, otherwise to `--public` — so exactly one visibility flag is passed\n(never both):\n```bash\ngh repo create $1 \"${4:---public}\" --clone\ngit remote add origin https:\u002F\u002Fgithub.com\u002F$(gh api user -q .login)\u002F$1.git\n```\n\n## Final Steps\n\n1. Initialize git hooks: `pre-commit install`\n2. Make initial commit: Use SlashCommand: `\u002Fgit:commit \"Initial project structure\"`\n3. Set up CI\u002FCD: Configure based on project type\n4. Install dependencies: Use SlashCommand: `\u002Fdeps:install`\n\n## Next Steps Suggestions\n\nSuggest relevant commands based on project type:\n- `\u002Ftest:setup` - Set up testing infrastructure\n- `\u002Fgit:pr` - Create first PR\n","# \u002Fproject:init\n\n## When to Use This Skill\n\n| Use this skill when... | Use project-discovery instead when... |\n|---|---|\n| Scaffolding a brand-new project from scratch (src\u002Ftests\u002Fdocs, README, CI) | Working in an existing repo that already has structure |\n| Bootstrapping a Python\u002FNode\u002FRust\u002FGo codebase with universal base layout | Use project-continue instead when picking up work in an established project |\n| Creating a matching GitHub repository alongside the local skeleton | Use project-distill instead when extracting patterns from existing work |\n\n## Context\n\n- Current directory: !`pwd`\n- Git user: !`git config user.name`\n\n`gh` availability is probed in the body, not here — see \"GitHub CLI Availability\".\n\n## Parameters\n\n- `$1`: Project name (required)\n- `$2`: Project type (python|node|rust|go|generic) - defaults to generic\n- `$3`: --github flag to create GitHub repository\n- `$4`: --private flag for private repository\n\n## GitHub CLI Availability\n\nRun this check first, via the **Bash tool** — `which gh`:\n\n| Result | Report to the user | Effect on `--github` |\n|---|---|---|\n| exit 0, prints a path | `GitHub CLI: available (\u003Cpath>)` | repo creation proceeds |\n| exit 1, no output | `GitHub CLI: not installed — install from https:\u002F\u002Fcli.github.com\u002F` | skip repo creation, scaffold locally, and say so |\n\nReport the outcome either way — the availability answer is part of the skill's\noutput, not an internal detail.\n\nThis probe deliberately lives in the body rather than in `## Context`. `which`\nexits 1 when the tool is absent (silently — it writes nothing to stderr), and a\nnon-zero exit from a Context backtick aborts the skill before its body runs, so\n`\u002Fproject:init` was unusable on exactly the fresh machine it exists for\n(issue #2145). Run through the Bash tool, a non-zero exit is survivable and the\nanswer is still reported. A `find` over a fixed set of bin directories was\nrejected as the alternative: it errors to stderr when a start directory is\nabsent (the #1482 class, so it just moves the abort) and it cannot see `gh`\ninstalled via mise\u002Fasdf\u002Fnix\u002Fcargo, which would report a false \"not installed\".\n\n## Base Project Structure\n\nCreate universal project structure that all projects need:\n\n### 1. Core Directories\n```bash\nmkdir -p $1\u002F{src,tests,docs,.github\u002Fworkflows}\ncd $1\n```\n\n### 2. Git Setup\n```bash\ngit init\n```\n\n### 3. Base Documentation\n\n**README.md:**\n```markdown\n# $1\n\n## Description\n[Project description]\n\n## Installation\nSee [Installation Guide](docs\u002Finstallation.md)\n\n## Usage\nSee [Usage Guide](docs\u002Fusage.md)\n\n## Development\nSee [Development Guide](docs\u002Fdevelopment.md)\n\n## License\nMIT\n```\n\n**LICENSE:**\nCreate standard MIT license file\n\n**.gitignore:**\nCreate with common patterns for all languages\n\n### 4. EditorConfig\n**.editorconfig:**\n```ini\nroot = true\n\n[*]\nindent_style = space\nindent_size = 2\nend_of_line = lf\ncharset = utf-8\ntrim_trailing_whitespace = true\ninsert_final_newline = true\n\n[*.{py,rs,go}]\nindent_size = 4\n\n[*.md]\ntrim_trailing_whitespace = false\n```\n\n### 5. Pre-commit Base Config\n**.pre-commit-config.yaml:**\n```yaml\nrepos:\n  - repo: https:\u002F\u002Fgithub.com\u002Fpre-commit\u002Fpre-commit-hooks\n    rev: v4.6.0\n    hooks:\n      - id: trailing-whitespace\n      - id: end-of-file-fixer\n      - id: check-yaml\n      - id: check-json\n      - id: check-merge-conflict\n      - id: detect-private-key\n```\n\n### 6. GitHub Actions Base\n\n**.github\u002Fworkflows\u002Fci.yml:**\n```yaml\nname: CI\n\non:\n  push:\n    branches: [main, develop]\n  pull_request:\n    branches: [main]\n\njobs:\n  lint:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions\u002Fcheckout@v4.4.0\n      - name: Run linters\n        run: echo \"Linting step - configure based on project type\"\n\n  test:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions\u002Fcheckout@v4.4.0\n      - name: Run tests\n        run: echo \"Testing step - configure based on project type\"\n```\n\n### 7. Makefile Base\n\nCreate universal Makefile with colored output:\n```makefile\n.PHONY: help install test lint format clean\n\nhelp:\n\t@echo \"Available commands:\"\n\t@echo \"  make install - Install dependencies\"\n\t@echo \"  make test    - Run tests\"\n\t@echo \"  make lint    - Run linters\"\n\t@echo \"  make format  - Format code\"\n\t@echo \"  make clean   - Clean build artifacts\"\n\ninstall:\n\t@echo \"Installing dependencies...\"\n\ntest:\n\t@echo \"Running tests...\"\n\nlint:\n\t@echo \"Running linters...\"\n\nformat:\n\t@echo \"Formatting code...\"\n\nclean:\n\t@echo \"Cleaning...\"\n```\n\n## Language-Specific Setup\n\nBase init creates the universal structure only. Language-specific tooling\n(package manager, linters\u002Fformatters, test framework, Dockerfile) is applied\nafterwards with the `configure-plugin` skills — see that plugin's README for the\ncurrent skill list. Do not rely on a single bootstrap command; layer the\nconfigure skills you actually need.\n\n## GitHub Repository Creation\n\n**Run this section only when the caller passed `--github` in `$ARGUMENTS`.** When\nthe flag is absent, skip to \"Final Steps\" — the scaffold stays local.\n\nRequires `gh` — check \"GitHub CLI Availability\" above first. When `gh` is\nunavailable, skip this section, finish the local scaffold, and report that repo\ncreation was skipped plus the install link.\n\nCreate GitHub repository. `${4:---public}` expands to `--private` when `$4` is\n`--private`, otherwise to `--public` — so exactly one visibility flag is passed\n(never both):\n```bash\ngh repo create $1 \"${4:---public}\" --clone\ngit remote add origin https:\u002F\u002Fgithub.com\u002F$(gh api user -q .login)\u002F$1.git\n```\n\n## Final Steps\n\n1. Initialize git hooks: `pre-commit install`\n2. Make initial commit: Use SlashCommand: `\u002Fgit:commit \"Initial project structure\"`\n3. Set up CI\u002FCD: Configure based on project type\n4. Install dependencies: Use SlashCommand: `\u002Fdeps:install`\n\n## Next Steps Suggestions\n\nSuggest relevant commands based on project type:\n- `\u002Ftest:setup` - Set up testing infrastructure\n- `\u002Fgit:pr` - Create first PR\n",{"args":52,"name":5,"created":53,"modified":54,"reviewed":54,"description":7,"allowed-tools":55,"argument-hint":52,"disable-model-invocation":56},"\u003Cproject-name> [project-type] [--github] [--private]",1765843200000,1786060800000,"Write, Bash(mkdir *), Bash(git init *), Bash(gh repo create *), Bash(pwd *), Bash(git config *), Bash(which *), SlashCommand, TodoWrite",true,"main","bdd0582f1a2ba53d21061835bfd72d45f2f954f4","project-plugin\u002Fskills\u002Fproject-init",6,"https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins","https:\u002F\u002Fgithub.com\u002Flaurigates","Linux enthusiast, cloud engineer, neovim addict, electronics hobbyist.","2026-11-13 20:24:11",{"source":8,"skillName":5,"commands":66,"prompt":76,"zipAvailable":56},[67,70,73],{"tool":68,"command":69},"npx","npx skills add laurigates\u002Fclaude-plugins --skill project-init",{"tool":71,"command":72},"bunx","bunx skills add laurigates\u002Fclaude-plugins --skill project-init",{"tool":74,"command":75},"pnpm","pnpm dlx skills add laurigates\u002Fclaude-plugins --skill project-init","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fproject-plugin\u002Fskills\u002Fproject-init\u002FSKILL.md",[78,84,90,96,102,106,110,114,118,122,126,130,134,138],{"path":79,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":82,"sourceHtmlUrl":83},"assets\u002Feval_review.html","ASSET","资产文件",7058,"https:\u002F\u002Fgithub.com\u002Fjapurcell\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fdefault\u002Fskill-creator\u002Fassets\u002Feval_review.html",{"path":85,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":88,"sourceHtmlUrl":89},"eval-viewer\u002Fgenerate_review.py","SCRIPT","脚本",16365,"https:\u002F\u002Fgithub.com\u002Fjapurcell\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fdefault\u002Fskill-creator\u002Feval-viewer\u002Fgenerate_review.py",{"path":91,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":94,"sourceHtmlUrl":95},"eval-viewer\u002Fviewer.html","REFERENCE","参考文档",44998,"https:\u002F\u002Fgithub.com\u002Fjapurcell\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fdefault\u002Fskill-creator\u002Feval-viewer\u002Fviewer.html",{"path":97,"resourceType":98,"resourceTypeDesc":99,"sizeBytes":100,"sourceHtmlUrl":101},"LICENSE.txt","LICENSE","许可证",11357,"https:\u002F\u002Fgithub.com\u002Fjapurcell\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fdefault\u002Fskill-creator\u002FLICENSE.txt",{"path":103,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":104,"sourceHtmlUrl":105},"references\u002Fschemas.md",12061,"https:\u002F\u002Fgithub.com\u002Fjapurcell\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fdefault\u002Fskill-creator\u002Freferences\u002Fschemas.md",{"path":107,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":108,"sourceHtmlUrl":109},"scripts\u002F__init__.py",0,"https:\u002F\u002Fgithub.com\u002Fjapurcell\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fdefault\u002Fskill-creator\u002Fscripts\u002F__init__.py",{"path":111,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":112,"sourceHtmlUrl":113},"scripts\u002Faggregate_benchmark.py",14386,"https:\u002F\u002Fgithub.com\u002Fjapurcell\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fdefault\u002Fskill-creator\u002Fscripts\u002Faggregate_benchmark.py",{"path":115,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":116,"sourceHtmlUrl":117},"scripts\u002Fgenerate_report.py",12847,"https:\u002F\u002Fgithub.com\u002Fjapurcell\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fdefault\u002Fskill-creator\u002Fscripts\u002Fgenerate_report.py",{"path":119,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":120,"sourceHtmlUrl":121},"scripts\u002Fimprove_description.py",11116,"https:\u002F\u002Fgithub.com\u002Fjapurcell\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fdefault\u002Fskill-creator\u002Fscripts\u002Fimprove_description.py",{"path":123,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":124,"sourceHtmlUrl":125},"scripts\u002Fpackage_skill.py",4234,"https:\u002F\u002Fgithub.com\u002Fjapurcell\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fdefault\u002Fskill-creator\u002Fscripts\u002Fpackage_skill.py",{"path":127,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":128,"sourceHtmlUrl":129},"scripts\u002Fquick_validate.py",4017,"https:\u002F\u002Fgithub.com\u002Fjapurcell\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fdefault\u002Fskill-creator\u002Fscripts\u002Fquick_validate.py",{"path":131,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":132,"sourceHtmlUrl":133},"scripts\u002Frun_eval.py",11464,"https:\u002F\u002Fgithub.com\u002Fjapurcell\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fdefault\u002Fskill-creator\u002Fscripts\u002Frun_eval.py",{"path":135,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":136,"sourceHtmlUrl":137},"scripts\u002Frun_loop.py",13605,"https:\u002F\u002Fgithub.com\u002Fjapurcell\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fdefault\u002Fskill-creator\u002Fscripts\u002Frun_loop.py",{"path":139,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":140,"sourceHtmlUrl":141},"scripts\u002Futils.py",1661,"https:\u002F\u002Fgithub.com\u002Fjapurcell\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fdefault\u002Fskill-creator\u002Fscripts\u002Futils.py",[143,171,191,207,229,259],{"skillNo":144,"name":145,"nameZh":6,"description":146,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":147,"categories":148,"keywords":154,"publishedAt":47},"01M70PFHMH9ADY0CRE6047Y4B2","kitty-show-image","Show the user an image with a note on what to judge, via a file send or a labelled kitty tab. Use when the user must see an image, or icat fails with no \u002Fdev\u002Ftty.","https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fkitty-plugin\u002Fskills\u002Fkitty-show-image\u002FSKILL.md",[149],{"categoryNo":150,"categoryName":151,"taxonomyType":152,"taxonomyTypeDesc":153},"01JBSEEDCAT000000000000016","图像与多媒体","SCENARIO","使用场景",[155,156,157,158,159,160,161,162,163,164,30,25,36,165,166,167,168,169,24,170],"show","kitty show image","image","kitty","show image","ls","get","send","open","dev","file","text","with","xdg","via","read",{"skillNo":172,"name":173,"nameZh":6,"description":174,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":175,"categories":176,"keywords":177,"publishedAt":47},"01M70PFEN18HKQ4RCQ1VPGMPTB","kitty-session-persistence","Snapshot and restore kitty terminal sessions on macOS. Use when surviving WindowServer hangs without losing tabs, configuring snapshots, or restoring after a force-reboot.","https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fkitty-plugin\u002Fskills\u002Fkitty-session-persistence\u002FSKILL.md",[],[158,178,179,180,181,182,25,36,183,184,185,24,170,31,186,187,188,189,190,30],"kitty session persistence","session","persistence","false","snapshots","uname","reboot","terminal","edit","snapshot","macos","sessions","restore",{"skillNo":192,"name":193,"nameZh":6,"description":194,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":195,"categories":196,"keywords":197,"publishedAt":47},"01M70PFC77XGXCVQ1543VGZHYR","kitty-remote-control","Safe kitty remote control from an agent — read panes with kitty @ ls\u002Fget-text, notify, and never mutate the live terminal unasked. Use when running inside kitty.","https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fkitty-plugin\u002Fskills\u002Fkitty-remote-control\u002FSKILL.md",[],[198,199,158,200,201,160,202,203,161,204,205,30,25,206,36,166,167,185,24,170],"kitty remote control","remote","control","remote control","running","never","panes","notify","query",{"skillNo":208,"name":209,"nameZh":6,"description":210,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":211,"categories":212,"keywords":213,"publishedAt":47},"01M70P6WVMCT5JG4SACTM69AF9","docs-reference-check","Dangling doc-reference gate: flag markdown naming repo paths or relative links that no longer exist. Use when docs cite moved\u002Fdeleted files, or wiring a doc-drift lint.","https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fdocumentation-plugin\u002Fskills\u002Fdocs-reference-check\u002FSKILL.md",[],[214,215,216,217,218,219,220,33,221,222,30,25,36,223,165,224,225,226,227,228],"docs reference check","check","reference check","reference","docs","links","python3","files","auto","drift","lint","wiring","chezmoi","references","cp",{"skillNo":230,"name":231,"nameZh":6,"description":232,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":233,"categories":234,"keywords":244,"publishedAt":47},"01M6C6NDE7DAQGNWSF22J5CJ0Z","youtube-upload","Upload a video to YouTube via the Data API v3 and edit its title, description, tags or thumbnail afterwards. Use when publishing or retitling a YouTube video.","https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fyoutube-plugin\u002Fskills\u002Fyoutube-upload\u002FSKILL.md",[235,238,239],{"categoryNo":236,"categoryName":237,"taxonomyType":152,"taxonomyTypeDesc":153},"01JBSEEDCAT000000000000010","后端与接口",{"categoryNo":150,"categoryName":151,"taxonomyType":152,"taxonomyTypeDesc":153},{"categoryNo":240,"categoryName":241,"taxonomyType":242,"taxonomyTypeDesc":243},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[245,246,247,248,220,249,170,250,186,251,252,253,30,36,165,254,255,25,256,257,258,169,24],"youtube upload","upload","youtube","Video","run","uv run","publishing","data","uv","api","v3","tags","id","title",{"skillNo":260,"name":261,"nameZh":6,"description":262,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":263,"categories":264,"keywords":268,"publishedAt":47},"01M6C6NABWW1X58KJJM4F6GQMQ","youtube-studio-share","Share a private YouTube video with a whole Google Workspace organization by scripting YouTube Studio in the browser. Use when a video must be org-only.","https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fyoutube-plugin\u002Fskills\u002Fyoutube-studio-share\u002FSKILL.md",[265],{"categoryNo":266,"categoryName":267,"taxonomyType":152,"taxonomyTypeDesc":153},"01JBSEEDCAT000000000000023","Skill与智能体开发",[269,270,271,272,247,248,273,274,275,276,277,170,278,279,280,281,30,282,25,167,283,24],"youtube studio share","share","youtube studio","studio","browser","javascript","scripting","google workspace","workspace","tool","google","only","MCP","chrome","organization"]