[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71GV1HTHWS17MZVQSMP78J6":3,"skill-same:01M71GV1HTHWS17MZVQSMP78J6":78},{"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":23,"publishedAt":34,"linkOnly":35,"markdownContent":36,"markdownBody":37,"frontMatter":38,"refName":49,"commitSha":50,"skillDirectory":51,"forksCount":52,"repositoryHtmlUrl":53,"repositoryHomepageUrl":6,"ownerHtmlUrl":54,"ownerBlogUrl":55,"ownerDescription":56,"updatedAt":57,"install":58,"resources":71},"01M71GV1HTHWS17MZVQSMP78J6","vibe",null,"Router for the vibestack skills: name the task and it picks the right skill, also where there is no \u002F picker.","timurgaleev\u002Fvibestack","timurgaleev","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F32696429?v=4","01M71GMS53Z9B4JQTCQEFXAE9E","Timur Galeev","01M71GMS5S1Q7BEYB3Z7GY3E85",8,"MIT","https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack\u002Fblob\u002Fmain\u002Fskills\u002Fvibe\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[5,24,25,26,27,28,29,30,31,32,33],"which","for","Bash","task","router","help","name","read","list","it","2026-11-10 10:12:30",false,"---\nname: vibe\ndescription: |\n  Router for the vibestack skills: name the task and it picks the right skill, also where there is no \u002F picker.\nallowed-tools:\n  - Bash\n  - Read\n  - Skill\ntriggers:\n  - which vibestack skill\n  - what vibestack skills are there\n  - list vibestack skills\n  - vibestack help\n  - vibe help\n---\n\nIf this session was compacted, the copy of this skill in context may be cut off.\nRead `${CLAUDE_SKILL_DIR}\u002FSKILL.md` from disk and resume at the step you are on.\n\n## When to invoke\n\nUse when the task clearly wants a vibestack workflow but the right one is not\nobvious, or when the host has no slash-command picker and the pack has to be\nfound by name. In Claude Code, Cursor, Kiro and Copilot CLI, skills are\n`\u002Fname`. In Codex there is no `\u002F` picker — reference a skill as `$name` inside an ordinary\nmessage (`Use $office-hours to shape this idea`).\n\n# \u002Fvibe — pick the right skill\n\nThe router is named `vibe`, not `vibestack`: the pack's own checkout is\nsometimes parked at `~\u002F.claude\u002Fskills\u002Fvibestack`, and a skill installing to that\npath would collide with it — the installer's own integration test asserts that\ncheckout survives.\n\nRoute on intent. Process skills come first: brainstorm or plan before\nimplementing, investigate before fixing, review before shipping.\n\n| When the task is… | Use |\n|---|---|\n| Shape a rough idea into a design doc | `office-hours` |\n| Turn intent into a precise, executable spec | `spec` |\n| Plan a feature, refactor, or architecture change | `plan-eng-review`, `autoplan` |\n| Execute an approved multi-step plan | an installed plan-execution skill if present; otherwise the `plan-eng-review` cold-start briefs lane by lane, then `review` and `ship` |\n| Weigh product scope or the bigger problem | `plan-ceo-review` |\n| Plan a UI change, or review a design before it is built | `plan-design-review` |\n| Pressure-test the developer experience of a plan | `plan-devex-review` |\n| Audit the live developer experience of a shipped product | `devex-review` |\n| Debug an error, test failure, or odd behavior | `investigate` (see **Failures** below) |\n| Review a diff before merge | `review` |\n| Rewrite a PR description from its actual changes | `pr-summary` |\n| Get a second opinion from a different model | `codex` or `claude` — by host, see below |\n| Audit security | `cso` |\n| QA a running web app | `qa` (fixes), `qa-only` (report) |\n| Drive a browser, scrape a page, pair a remote agent | `browse`, `scrape`, `open-browser`, `pair-agent` |\n| Test logged-in pages with your real browser's cookies | `connect-chrome`, `setup-browser-cookies` |\n| Turn a browse or scrape flow that worked into a skill | `skillify` |\n| Read, transcribe or send Telegram messages as yourself | `telegram` |\n| Review a shipped UI, or explore design directions | `design-review`, `design-shotgun`, `design-consultation` |\n| Turn an approved mockup into production HTML\u002FCSS | `design-html` |\n| Render a Mermaid diagram to HTML and PNG | `diagram` |\n| Render markdown or HTML to a polished PDF | `make-pdf` |\n| Ship: tests, version, changelog, PR | `ship` |\n| See which VERSION slots open PRs already claim | `landing-report` |\n| Address PR review threads and failing CI | `address-pr-review` |\n| Merge, deploy, and confirm production health | `land-and-deploy` when the user explicitly asks to land a specific PR, then `canary` (`setup-deploy` configures it once) |\n| Measure page performance against a baseline | `benchmark` |\n| Update docs after shipping | `document-release`, `document-generate` |\n| Strip machine-sounding prose | `unslop` |\n| Check code-quality health or find refactors | `health`, `improve-arch` |\n| Make the build, lint and tests pass without editing a test | `health` as `\u002Fhealth --fix` |\n| Review AWS spend, or price a change before it deploys | `aws-cost` (`--estimate \u003Cplan>`) |\n| Review a Terraform plan, `cdk diff` or EKS config before apply | `iac-review` |\n| Cap paid-inference spend | `ai-cost-guard` |\n| Audit Bedrock guardrails, region and tenant isolation | `bedrock-guardrails` |\n| Review a knowledge base or RAG pipeline | `kb-review` |\n| Review an Amazon Connect, Lex or voice solution | `connect-review` |\n| Evaluate an agent or prompt | `agent-eval` |\n| Review an MCP server | `mcp-review` |\n| Save or restore working context across sessions | `context-save`, `context-restore` |\n| Review, search or prune what the pack has learned | `learn` |\n| Run a retrospective from git history | `retro` |\n| Tune which questions the skills ask you | `plan-tune` |\n| Guard a risky session | `careful`, `freeze`, `guard` (and `unfreeze` to release) |\n| Update the pack itself | type `\u002Fvibe-upgrade` (typed-only) |\n| Find and retire unused skills, hooks, permissions and caches | `vibe-gc` |\n\nAnything not listed here is in the full index — read it rather than guessing at\na skill name:\n\n```bash\n_found=\"\"\nfor _d in \"${CLAUDE_SKILL_DIR:-}\" \"$HOME\u002F.agents\u002Fskills\u002Fvibe\" \"$HOME\u002F.claude\u002Fskills\u002Fvibe\" \\\n          \"$HOME\u002F.cursor\u002Fskills\u002Fvibe\" \"$HOME\u002F.kiro\u002Fskills\u002Fvibe\" \"${COPILOT_HOME:-$HOME\u002F.copilot}\u002Fskills\u002Fvibe\" \\\n          \".agents\u002Fskills\u002Fvibe\" \".claude\u002Fskills\u002Fvibe\" \".cursor\u002Fskills\u002Fvibe\" \".kiro\u002Fskills\u002Fvibe\" \".github\u002Fskills\u002Fvibe\"; do\n  if [ -n \"$_d\" ] && [ -r \"$_d\u002Fskills-index.md\" ]; then\n    cat \"$_d\u002Fskills-index.md\"; _found=1; break\n  fi\ndone\nif [ -z \"$_found\" ]; then\n  for _r in \"$HOME\u002F.agents\u002Fskills\" \"$HOME\u002F.claude\u002Fskills\" \"$HOME\u002F.cursor\u002Fskills\" \"$HOME\u002F.kiro\u002Fskills\" \\\n            \"${COPILOT_HOME:-$HOME\u002F.copilot}\u002Fskills\"; do\n    [ -d \"$_r\" ] && { echo \"$_r:\"; ls \"$_r\"; }\n  done\nfi\n```\n\nThe index sits next to this file, so if none of those paths resolve, read\n`skills-index.md` from the directory this `SKILL.md` was loaded from.\n\n**Second opinion — route by host.** The outside voice has to be a different\nmodel from the one already running:\n\n```bash\nif [ -n \"${CODEX_THREAD_ID:-}\" ] || [ -n \"${CODEX_SANDBOX:-}\" ]; then echo \"HOST: codex\"\nelif [ -n \"${CLAUDECODE:-}\" ]; then echo \"HOST: claude\"\nelse echo \"HOST: other\"; fi\n```\n\n`HOST: claude` → `codex`. `HOST: codex` → `claude` (`codex` refuses to run\nnested under Codex, and would be the same model anyway).\n`HOST: other` (Cursor, Kiro, Copilot CLI) → `codex`, unless the session's own\nmodel is GPT, then `claude`. Copilot CLI sets no documented session variable,\nso it always reports `HOST: other`.\n\nRules when routing:\n\n- **Invoke it, don't describe it.** Once a skill fits, hand off: invoke it\n  through the Skill tool (Claude Code, Cursor, Kiro, Copilot CLI), or on Codex load that\n  skill's `SKILL.md` and follow it (users invoke it there as `Use $\u003Cname>`). Do not answer with a list of\n  options, and do not do the skill's work freehand when the skill exists.\n  Except: never invoke a typed-only skill (a row that says \"type `\u002Fname`\") —\n  tell the user to type it (on Codex, `Use $name`) and do not do its work yourself.\n- **Failures.** When the user names the cause and a narrow fix, make\n  one read-only check of the file, test or log it rests on; if it holds, fix\n  it and run the focused test, otherwise invoke `investigate`. When the cause\n  is unknown, make one read-only triage pass, with no reproduction and no wider search,\n  over the supplied evidence and the code it implicates; fix only if that\n  pass alone proves the root cause, otherwise invoke `investigate`.\n- **Answer directly instead** when the request is a quick factual question\n  (including \"which skills are there?\" — show the table), a small edit the user\n  scoped themselves, or the user asked for a direct answer rather than a\n  workflow.\n- **Pick one.** Don't stack skills; each carries its own full workflow, and a\n  skill's own instructions take precedence once invoked.\n- **Only route to a skill that is installed.** Don't guess a name: if the table\n  or the index has nothing that fits, or the skill is not present on this host,\n  say so and proceed normally — these are workflows, not dependencies.\n","If this session was compacted, the copy of this skill in context may be cut off.\nRead `${CLAUDE_SKILL_DIR}\u002FSKILL.md` from disk and resume at the step you are on.\n\n## When to invoke\n\nUse when the task clearly wants a vibestack workflow but the right one is not\nobvious, or when the host has no slash-command picker and the pack has to be\nfound by name. In Claude Code, Cursor, Kiro and Copilot CLI, skills are\n`\u002Fname`. In Codex there is no `\u002F` picker — reference a skill as `$name` inside an ordinary\nmessage (`Use $office-hours to shape this idea`).\n\n# \u002Fvibe — pick the right skill\n\nThe router is named `vibe`, not `vibestack`: the pack's own checkout is\nsometimes parked at `~\u002F.claude\u002Fskills\u002Fvibestack`, and a skill installing to that\npath would collide with it — the installer's own integration test asserts that\ncheckout survives.\n\nRoute on intent. Process skills come first: brainstorm or plan before\nimplementing, investigate before fixing, review before shipping.\n\n| When the task is… | Use |\n|---|---|\n| Shape a rough idea into a design doc | `office-hours` |\n| Turn intent into a precise, executable spec | `spec` |\n| Plan a feature, refactor, or architecture change | `plan-eng-review`, `autoplan` |\n| Execute an approved multi-step plan | an installed plan-execution skill if present; otherwise the `plan-eng-review` cold-start briefs lane by lane, then `review` and `ship` |\n| Weigh product scope or the bigger problem | `plan-ceo-review` |\n| Plan a UI change, or review a design before it is built | `plan-design-review` |\n| Pressure-test the developer experience of a plan | `plan-devex-review` |\n| Audit the live developer experience of a shipped product | `devex-review` |\n| Debug an error, test failure, or odd behavior | `investigate` (see **Failures** below) |\n| Review a diff before merge | `review` |\n| Rewrite a PR description from its actual changes | `pr-summary` |\n| Get a second opinion from a different model | `codex` or `claude` — by host, see below |\n| Audit security | `cso` |\n| QA a running web app | `qa` (fixes), `qa-only` (report) |\n| Drive a browser, scrape a page, pair a remote agent | `browse`, `scrape`, `open-browser`, `pair-agent` |\n| Test logged-in pages with your real browser's cookies | `connect-chrome`, `setup-browser-cookies` |\n| Turn a browse or scrape flow that worked into a skill | `skillify` |\n| Read, transcribe or send Telegram messages as yourself | `telegram` |\n| Review a shipped UI, or explore design directions | `design-review`, `design-shotgun`, `design-consultation` |\n| Turn an approved mockup into production HTML\u002FCSS | `design-html` |\n| Render a Mermaid diagram to HTML and PNG | `diagram` |\n| Render markdown or HTML to a polished PDF | `make-pdf` |\n| Ship: tests, version, changelog, PR | `ship` |\n| See which VERSION slots open PRs already claim | `landing-report` |\n| Address PR review threads and failing CI | `address-pr-review` |\n| Merge, deploy, and confirm production health | `land-and-deploy` when the user explicitly asks to land a specific PR, then `canary` (`setup-deploy` configures it once) |\n| Measure page performance against a baseline | `benchmark` |\n| Update docs after shipping | `document-release`, `document-generate` |\n| Strip machine-sounding prose | `unslop` |\n| Check code-quality health or find refactors | `health`, `improve-arch` |\n| Make the build, lint and tests pass without editing a test | `health` as `\u002Fhealth --fix` |\n| Review AWS spend, or price a change before it deploys | `aws-cost` (`--estimate \u003Cplan>`) |\n| Review a Terraform plan, `cdk diff` or EKS config before apply | `iac-review` |\n| Cap paid-inference spend | `ai-cost-guard` |\n| Audit Bedrock guardrails, region and tenant isolation | `bedrock-guardrails` |\n| Review a knowledge base or RAG pipeline | `kb-review` |\n| Review an Amazon Connect, Lex or voice solution | `connect-review` |\n| Evaluate an agent or prompt | `agent-eval` |\n| Review an MCP server | `mcp-review` |\n| Save or restore working context across sessions | `context-save`, `context-restore` |\n| Review, search or prune what the pack has learned | `learn` |\n| Run a retrospective from git history | `retro` |\n| Tune which questions the skills ask you | `plan-tune` |\n| Guard a risky session | `careful`, `freeze`, `guard` (and `unfreeze` to release) |\n| Update the pack itself | type `\u002Fvibe-upgrade` (typed-only) |\n| Find and retire unused skills, hooks, permissions and caches | `vibe-gc` |\n\nAnything not listed here is in the full index — read it rather than guessing at\na skill name:\n\n```bash\n_found=\"\"\nfor _d in \"${CLAUDE_SKILL_DIR:-}\" \"$HOME\u002F.agents\u002Fskills\u002Fvibe\" \"$HOME\u002F.claude\u002Fskills\u002Fvibe\" \\\n          \"$HOME\u002F.cursor\u002Fskills\u002Fvibe\" \"$HOME\u002F.kiro\u002Fskills\u002Fvibe\" \"${COPILOT_HOME:-$HOME\u002F.copilot}\u002Fskills\u002Fvibe\" \\\n          \".agents\u002Fskills\u002Fvibe\" \".claude\u002Fskills\u002Fvibe\" \".cursor\u002Fskills\u002Fvibe\" \".kiro\u002Fskills\u002Fvibe\" \".github\u002Fskills\u002Fvibe\"; do\n  if [ -n \"$_d\" ] && [ -r \"$_d\u002Fskills-index.md\" ]; then\n    cat \"$_d\u002Fskills-index.md\"; _found=1; break\n  fi\ndone\nif [ -z \"$_found\" ]; then\n  for _r in \"$HOME\u002F.agents\u002Fskills\" \"$HOME\u002F.claude\u002Fskills\" \"$HOME\u002F.cursor\u002Fskills\" \"$HOME\u002F.kiro\u002Fskills\" \\\n            \"${COPILOT_HOME:-$HOME\u002F.copilot}\u002Fskills\"; do\n    [ -d \"$_r\" ] && { echo \"$_r:\"; ls \"$_r\"; }\n  done\nfi\n```\n\nThe index sits next to this file, so if none of those paths resolve, read\n`skills-index.md` from the directory this `SKILL.md` was loaded from.\n\n**Second opinion — route by host.** The outside voice has to be a different\nmodel from the one already running:\n\n```bash\nif [ -n \"${CODEX_THREAD_ID:-}\" ] || [ -n \"${CODEX_SANDBOX:-}\" ]; then echo \"HOST: codex\"\nelif [ -n \"${CLAUDECODE:-}\" ]; then echo \"HOST: claude\"\nelse echo \"HOST: other\"; fi\n```\n\n`HOST: claude` → `codex`. `HOST: codex` → `claude` (`codex` refuses to run\nnested under Codex, and would be the same model anyway).\n`HOST: other` (Cursor, Kiro, Copilot CLI) → `codex`, unless the session's own\nmodel is GPT, then `claude`. Copilot CLI sets no documented session variable,\nso it always reports `HOST: other`.\n\nRules when routing:\n\n- **Invoke it, don't describe it.** Once a skill fits, hand off: invoke it\n  through the Skill tool (Claude Code, Cursor, Kiro, Copilot CLI), or on Codex load that\n  skill's `SKILL.md` and follow it (users invoke it there as `Use $\u003Cname>`). Do not answer with a list of\n  options, and do not do the skill's work freehand when the skill exists.\n  Except: never invoke a typed-only skill (a row that says \"type `\u002Fname`\") —\n  tell the user to type it (on Codex, `Use $name`) and do not do its work yourself.\n- **Failures.** When the user names the cause and a narrow fix, make\n  one read-only check of the file, test or log it rests on; if it holds, fix\n  it and run the focused test, otherwise invoke `investigate`. When the cause\n  is unknown, make one read-only triage pass, with no reproduction and no wider search,\n  over the supplied evidence and the code it implicates; fix only if that\n  pass alone proves the root cause, otherwise invoke `investigate`.\n- **Answer directly instead** when the request is a quick factual question\n  (including \"which skills are there?\" — show the table), a small edit the user\n  scoped themselves, or the user asked for a direct answer rather than a\n  workflow.\n- **Pick one.** Don't stack skills; each carries its own full workflow, and a\n  skill's own instructions take precedence once invoked.\n- **Only route to a skill that is installed.** Don't guess a name: if the table\n  or the index has nothing that fits, or the skill is not present on this host,\n  say so and proceed normally — these are workflows, not dependencies.\n",{"name":5,"triggers":39,"description":45,"allowed-tools":46},[40,41,42,43,44],"which vibestack skill","what vibestack skills are there","list vibestack skills","vibestack help","vibe help","Router for the vibestack skills: name the task and it picks the right skill, also where there is no \u002F picker.\n",[26,47,48],"Read","Skill","main","e7390dc0f5edeb49b41fb6daa4d321e927f62660","skills\u002Fvibe",0,"https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack","https:\u002F\u002Fgithub.com\u002Ftimurgaleev","https:\u002F\u002Ftgaleev.com\u002F","Forward Deployed Engineer \u002F\r\nAWS Community Builder \u002F Cloud Architect ","2026-11-11 15:42:25",{"source":8,"skillName":5,"commands":59,"prompt":69,"zipAvailable":70},[60,63,66],{"tool":61,"command":62},"npx","npx skills add timurgaleev\u002Fvibestack --skill vibe",{"tool":64,"command":65},"bunx","bunx skills add timurgaleev\u002Fvibestack --skill vibe",{"tool":67,"command":68},"pnpm","pnpm dlx skills add timurgaleev\u002Fvibestack --skill vibe","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack\u002Fblob\u002Fmain\u002Fskills\u002Fvibe\u002FSKILL.md",true,[72],{"path":73,"resourceType":74,"resourceTypeDesc":75,"sizeBytes":76,"sourceHtmlUrl":77},"skills-index.md","REFERENCE","参考文档",20,"https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack\u002Fblob\u002Fmain\u002Fskills\u002Fvibe\u002Fskills-index.md",[79,85,91,97,103,109],{"skillNo":80,"name":81,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":82,"categories":83,"keywords":84,"publishedAt":34},"01M71GVHCCSQCCPVM8XPSPTA73","docs","https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Frender\u002F15-backtick-info-string\u002Fskills\u002Fdocs\u002FSKILL.md",[],[81],{"skillNo":86,"name":87,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":88,"categories":89,"keywords":90,"publishedAt":34},"01M71GVFT1S5MRNM0AYRT2E6VQ","fences","https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Frender\u002F14-indented-tilde-fence\u002Fskills\u002Ffences\u002FSKILL.md",[],[87],{"skillNo":92,"name":93,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":94,"categories":95,"keywords":96,"publishedAt":34},"01M71GVEYB54K1S83FGRNKN8CF","dirty","https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Frender\u002F10-check-with-drift\u002Fskills\u002Fdirty\u002FSKILL.md",[],[93],{"skillNo":98,"name":99,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":100,"categories":101,"keywords":102,"publishedAt":34},"01M71GVDX9PMND1337C4388DK4","clean","https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Frender\u002F09-check-no-drift\u002Fskills\u002Fclean\u002FSKILL.md",[],[99],{"skillNo":104,"name":105,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":106,"categories":107,"keywords":108,"publishedAt":34},"01M71GVC3VM66F1ZQT2G8JXDR0","bare","https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Frender\u002F08-no-frontmatter\u002Fskills\u002Fbare\u002FSKILL.md",[],[105],{"skillNo":110,"name":111,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":112,"categories":113,"keywords":114,"publishedAt":34},"01M71GV9T8DAYZT0PX52QX0TE1","idem","https:\u002F\u002Fgithub.com\u002Ftimurgaleev\u002Fvibestack\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Frender\u002F07-idempotent-rerender\u002Fskills\u002Fidem\u002FSKILL.md",[],[111]]