[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M79AEWF0GF2R950SMMP6THF5":3,"skill-same:01M79AEWF0GF2R950SMMP6THF5":81},{"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":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":24,"commitSha":25,"skillDirectory":26,"forksCount":27,"repositoryHtmlUrl":28,"repositoryHomepageUrl":6,"ownerHtmlUrl":29,"ownerBlogUrl":30,"ownerDescription":31,"updatedAt":32,"install":33,"resources":46},"01M79AEWF0GF2R950SMMP6THF5","grafana-oss",null,"Configure Grafana OSS — provisions dashboards from YAML, sets up data sources (Prometheus \u002F Loki \u002F Tempo \u002F Pyroscope), writes dashboard JSON with template variables, builds panel queries, assigns built-in roles (Viewer \u002F Editor \u002F Admin \u002F GrafanaAdmin), mints service-account tokens, edits grafana.ini server config, creates annotations, installs plugins via provisioning, and validates each step with a health-check curl. Use when building dashboards, configuring data sources, setting up provisioning YAML, picking a panel type, writing template variables, managing users and roles, configuring SMTP\u002FOAuth in grafana.ini, creating annotations via API, troubleshooting why a provisioned dashboard isn't showing up, or running Grafana OSS locally — even when the user says \"set up a Prometheus data source\", \"provision dashboards from git\", \"make a service account\", or \"configure SSO in OSS\" without saying \"Grafana OSS\".","yhyu13\u002FAgentSkillsVault","yhyu13","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F19365678?v=4","01M79A3XCF5M26GEWS60XQQRWW","俞航","01M79A3XD7YZ779GGWS41K367S",3,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fyhyu13\u002FAgentSkillsVault\u002Fblob\u002Fmain\u002FSKILL\u002Fdevops\u002Ftier1\u002Fgrafana-oss\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: grafana-oss\nlicense: Apache-2.0\ndescription: Configure Grafana OSS — provisions dashboards from YAML, sets up data sources (Prometheus \u002F Loki \u002F Tempo \u002F Pyroscope), writes dashboard JSON with template variables, builds panel queries, assigns built-in roles (Viewer \u002F Editor \u002F Admin \u002F GrafanaAdmin), mints service-account tokens, edits grafana.ini server config, creates annotations, installs plugins via provisioning, and validates each step with a health-check curl. Use when building dashboards, configuring data sources, setting up provisioning YAML, picking a panel type, writing template variables, managing users and roles, configuring SMTP\u002FOAuth in grafana.ini, creating annotations via API, troubleshooting why a provisioned dashboard isn't showing up, or running Grafana OSS locally — even when the user says \"set up a Prometheus data source\", \"provision dashboards from git\", \"make a service account\", or \"configure SSO in OSS\" without saying \"Grafana OSS\".\n---\n\n# Grafana OSS\n\n> **Docs**: https:\u002F\u002Fgrafana.com\u002Fdocs\u002Fgrafana\u002Flatest.md\n\n## Common Workflows\n\n### Provisioning dashboards from disk\n\n1. Drop dashboard JSON file(s) under `\u002Fvar\u002Flib\u002Fgrafana\u002Fdashboards\u002F`\n2. Add a provider in `provisioning\u002Fdashboards\u002Fdefault.yaml` (see [§ Dashboard provisioning](#dashboard-provisioning) below)\n3. Restart Grafana so the provider config is loaded\n4. **Verify the dashboard landed**:\n   ```bash\n   curl https:\u002F\u002Fgrafana.example.com\u002Fapi\u002Fdashboards\u002Fuid\u002F\u003Cuid> \\\n     -H \"Authorization: Bearer \u003Ctoken>\" | jq '.dashboard.title'\n   ```\n   Returns the title → success. 404 → provisioning didn't pick it up; check Grafana server logs (`journalctl -u grafana-server | grep -i provisioning`) for parse errors.\n\n### Provisioning data sources\n\n1. Write `provisioning\u002Fdatasources\u002Fdatasources.yaml` (see [§ Data source provisioning](#data-source-provisioning) below)\n2. Restart Grafana\n3. **Health-check the data source via API**:\n   ```bash\n   curl https:\u002F\u002Fgrafana.example.com\u002Fapi\u002Fdatasources\u002Fuid\u002F\u003Cuid>\u002Fhealth \\\n     -H \"Authorization: Bearer \u003Ctoken>\"\n   # { \"status\": \"OK\", \"message\": \"...\" } → working\n   # { \"status\": \"ERROR\", ... } → URL unreachable or auth misconfigured\n   ```\n\n### Creating a service account + token\n\n1. Provision via YAML or `POST \u002Fapi\u002Fserviceaccounts` (full API in [references\u002Fapi.md § Users + service accounts](references\u002Fapi.md#users--service-accounts))\n2. Mint a token via `POST \u002Fapi\u002Fserviceaccounts\u002F{id}\u002Ftokens`\n3. **Verify the token works**:\n   ```bash\n   curl https:\u002F\u002Fgrafana.example.com\u002Fapi\u002Forg \\\n     -H \"Authorization: Bearer \u003Cnew-token>\"\n   # 200 + org JSON → token + role assignment work\n   # 401 → token wrong; 403 → role wrong\n   ```\n\n## Dashboard provisioning\n\n```yaml\n# provisioning\u002Fdashboards\u002Fdefault.yaml\napiVersion: 1\nproviders:\n  - name: default\n    folder: MyFolder\n    type: file\n    disableDeletion: false\n    updateIntervalSeconds: 30\n    options:\n      path: \u002Fvar\u002Flib\u002Fgrafana\u002Fdashboards\n      foldersFromFilesStructure: true\n```\n\nFor the dashboard JSON shape itself (panels, queries, template variables), see [references\u002Fdashboard-json.md](references\u002Fdashboard-json.md).\n\n## Data source provisioning\n\n```yaml\n# provisioning\u002Fdatasources\u002Fdatasources.yaml\napiVersion: 1\ndatasources:\n  - name: Prometheus\n    type: prometheus\n    access: proxy\n    url: http:\u002F\u002Fprometheus:9090\n    isDefault: true\n    jsonData:\n      timeInterval: 15s\n      httpMethod: POST\n\n  - name: Loki\n    type: loki\n    access: proxy\n    url: http:\u002F\u002Floki:3100\n\n  - name: Tempo\n    type: tempo\n    access: proxy\n    url: http:\u002F\u002Ftempo:3200\n    jsonData:\n      tracesToLogsV2:\n        datasourceUid: loki_uid\n        tags: [{ key: \"service.name\", value: \"app\" }]\n      serviceMap:\n        datasourceUid: prometheus_uid\n      nodeGraph:\n        enabled: true\n\n  - name: Pyroscope\n    type: grafana-pyroscope-datasource\n    url: http:\u002F\u002Fpyroscope:4040\n```\n\n## RBAC (built-in roles)\n\n| Role | Permissions |\n|------|-------------|\n| **Viewer** | Read dashboards, alerts |\n| **Editor** | Create\u002Fedit dashboards, alerts |\n| **Admin** | Manage data sources, users, plugins |\n| **GrafanaAdmin** | Server-wide admin (superuser) |\n\nService-account provisioning:\n\n```yaml\n# provisioning\u002Faccess-control\u002Fservice_accounts.yaml\napiVersion: 1\nserviceAccounts:\n  - name: ci-reader\n    orgId: 1\n    role: Viewer\n    tokens:\n      - name: ci-token\n        # expires: optional ISO 8601 timestamp; omit for no-expiry tokens\n```\n\n(Custom RBAC roles with fine-grained permissions are Enterprise \u002F Cloud only — see the `grafana-cloud\u002Fadmin` skill if you need those.)\n\n## Plugin provisioning\n\n```yaml\n# provisioning\u002Fplugins\u002Fplugins.yaml\napiVersion: 1\napps:\n  - type: grafana-pyroscope-app\n    disabled: false\n    jsonData:\n      backendUrl: http:\u002F\u002Fpyroscope:4040\n```\n\nAfter restart, verify via `GET \u002Fapi\u002Fplugins\u002F\u003Cplugin-id>\u002Fhealth`.\n\n## References\n\n- [`references\u002Fdashboard-json.md`](references\u002Fdashboard-json.md) — full dashboard JSON model + template variables + common problems (uid uniqueness, gridPos arithmetic, datasource uid matching)\n- [`references\u002Fdashboards.md`](references\u002Fdashboards.md) — dashboard workflows, settings, variables, annotations, sharing, versions, playlists, and provisioning-as-code\n- [`references\u002Fdatasources.md`](references\u002Fdatasources.md) — data source setup and query examples for Prometheus, Loki, Tempo, SQL, CloudWatch, and plugins\n- [`references\u002Fpanel-types.md`](references\u002Fpanel-types.md) — panel-type table + decision guide for picking the right one\n- [`references\u002Fpanels.md`](references\u002Fpanels.md) — panel editor, visualization options, field config, transformations, query options, inspection, and performance tips\n- [`references\u002Falerting.md`](references\u002Falerting.md) — alerting concepts, contact points, notification policies, templates, silences, and common rule examples\n- [`references\u002Fapi.md`](references\u002Fapi.md) — full Grafana OSS API reference (dashboards, data sources, users, service accounts, annotations) with verification curls and common failure modes\n- [`references\u002Fconfig.md`](references\u002Fconfig.md) — `grafana.ini` server \u002F database \u002F SMTP \u002F auth \u002F security \u002F feature-toggle config + restart-required issues\n","# Grafana OSS\n\n> **Docs**: https:\u002F\u002Fgrafana.com\u002Fdocs\u002Fgrafana\u002Flatest.md\n\n## Common Workflows\n\n### Provisioning dashboards from disk\n\n1. Drop dashboard JSON file(s) under `\u002Fvar\u002Flib\u002Fgrafana\u002Fdashboards\u002F`\n2. Add a provider in `provisioning\u002Fdashboards\u002Fdefault.yaml` (see [§ Dashboard provisioning](#dashboard-provisioning) below)\n3. Restart Grafana so the provider config is loaded\n4. **Verify the dashboard landed**:\n   ```bash\n   curl https:\u002F\u002Fgrafana.example.com\u002Fapi\u002Fdashboards\u002Fuid\u002F\u003Cuid> \\\n     -H \"Authorization: Bearer \u003Ctoken>\" | jq '.dashboard.title'\n   ```\n   Returns the title → success. 404 → provisioning didn't pick it up; check Grafana server logs (`journalctl -u grafana-server | grep -i provisioning`) for parse errors.\n\n### Provisioning data sources\n\n1. Write `provisioning\u002Fdatasources\u002Fdatasources.yaml` (see [§ Data source provisioning](#data-source-provisioning) below)\n2. Restart Grafana\n3. **Health-check the data source via API**:\n   ```bash\n   curl https:\u002F\u002Fgrafana.example.com\u002Fapi\u002Fdatasources\u002Fuid\u002F\u003Cuid>\u002Fhealth \\\n     -H \"Authorization: Bearer \u003Ctoken>\"\n   # { \"status\": \"OK\", \"message\": \"...\" } → working\n   # { \"status\": \"ERROR\", ... } → URL unreachable or auth misconfigured\n   ```\n\n### Creating a service account + token\n\n1. Provision via YAML or `POST \u002Fapi\u002Fserviceaccounts` (full API in [references\u002Fapi.md § Users + service accounts](references\u002Fapi.md#users--service-accounts))\n2. Mint a token via `POST \u002Fapi\u002Fserviceaccounts\u002F{id}\u002Ftokens`\n3. **Verify the token works**:\n   ```bash\n   curl https:\u002F\u002Fgrafana.example.com\u002Fapi\u002Forg \\\n     -H \"Authorization: Bearer \u003Cnew-token>\"\n   # 200 + org JSON → token + role assignment work\n   # 401 → token wrong; 403 → role wrong\n   ```\n\n## Dashboard provisioning\n\n```yaml\n# provisioning\u002Fdashboards\u002Fdefault.yaml\napiVersion: 1\nproviders:\n  - name: default\n    folder: MyFolder\n    type: file\n    disableDeletion: false\n    updateIntervalSeconds: 30\n    options:\n      path: \u002Fvar\u002Flib\u002Fgrafana\u002Fdashboards\n      foldersFromFilesStructure: true\n```\n\nFor the dashboard JSON shape itself (panels, queries, template variables), see [references\u002Fdashboard-json.md](references\u002Fdashboard-json.md).\n\n## Data source provisioning\n\n```yaml\n# provisioning\u002Fdatasources\u002Fdatasources.yaml\napiVersion: 1\ndatasources:\n  - name: Prometheus\n    type: prometheus\n    access: proxy\n    url: http:\u002F\u002Fprometheus:9090\n    isDefault: true\n    jsonData:\n      timeInterval: 15s\n      httpMethod: POST\n\n  - name: Loki\n    type: loki\n    access: proxy\n    url: http:\u002F\u002Floki:3100\n\n  - name: Tempo\n    type: tempo\n    access: proxy\n    url: http:\u002F\u002Ftempo:3200\n    jsonData:\n      tracesToLogsV2:\n        datasourceUid: loki_uid\n        tags: [{ key: \"service.name\", value: \"app\" }]\n      serviceMap:\n        datasourceUid: prometheus_uid\n      nodeGraph:\n        enabled: true\n\n  - name: Pyroscope\n    type: grafana-pyroscope-datasource\n    url: http:\u002F\u002Fpyroscope:4040\n```\n\n## RBAC (built-in roles)\n\n| Role | Permissions |\n|------|-------------|\n| **Viewer** | Read dashboards, alerts |\n| **Editor** | Create\u002Fedit dashboards, alerts |\n| **Admin** | Manage data sources, users, plugins |\n| **GrafanaAdmin** | Server-wide admin (superuser) |\n\nService-account provisioning:\n\n```yaml\n# provisioning\u002Faccess-control\u002Fservice_accounts.yaml\napiVersion: 1\nserviceAccounts:\n  - name: ci-reader\n    orgId: 1\n    role: Viewer\n    tokens:\n      - name: ci-token\n        # expires: optional ISO 8601 timestamp; omit for no-expiry tokens\n```\n\n(Custom RBAC roles with fine-grained permissions are Enterprise \u002F Cloud only — see the `grafana-cloud\u002Fadmin` skill if you need those.)\n\n## Plugin provisioning\n\n```yaml\n# provisioning\u002Fplugins\u002Fplugins.yaml\napiVersion: 1\napps:\n  - type: grafana-pyroscope-app\n    disabled: false\n    jsonData:\n      backendUrl: http:\u002F\u002Fpyroscope:4040\n```\n\nAfter restart, verify via `GET \u002Fapi\u002Fplugins\u002F\u003Cplugin-id>\u002Fhealth`.\n\n## References\n\n- [`references\u002Fdashboard-json.md`](references\u002Fdashboard-json.md) — full dashboard JSON model + template variables + common problems (uid uniqueness, gridPos arithmetic, datasource uid matching)\n- [`references\u002Fdashboards.md`](references\u002Fdashboards.md) — dashboard workflows, settings, variables, annotations, sharing, versions, playlists, and provisioning-as-code\n- [`references\u002Fdatasources.md`](references\u002Fdatasources.md) — data source setup and query examples for Prometheus, Loki, Tempo, SQL, CloudWatch, and plugins\n- [`references\u002Fpanel-types.md`](references\u002Fpanel-types.md) — panel-type table + decision guide for picking the right one\n- [`references\u002Fpanels.md`](references\u002Fpanels.md) — panel editor, visualization options, field config, transformations, query options, inspection, and performance tips\n- [`references\u002Falerting.md`](references\u002Falerting.md) — alerting concepts, contact points, notification policies, templates, silences, and common rule examples\n- [`references\u002Fapi.md`](references\u002Fapi.md) — full Grafana OSS API reference (dashboards, data sources, users, service accounts, annotations) with verification curls and common failure modes\n- [`references\u002Fconfig.md`](references\u002Fconfig.md) — `grafana.ini` server \u002F database \u002F SMTP \u002F auth \u002F security \u002F feature-toggle config + restart-required issues\n",{"name":5,"license":15,"description":7},"main","3b63fa056f5de7956766fca020e9c71fdf2b0fab","SKILL\u002Fdevops\u002Ftier1\u002Fgrafana-oss",0,"https:\u002F\u002Fgithub.com\u002Fyhyu13\u002FAgentSkillsVault","https:\u002F\u002Fgithub.com\u002Fyhyu13","https:\u002F\u002Fyhyu13.github.io","大丈夫自立于天地之间，岂可郁郁久居于人下\r\nA zealot of AI.","2026-11-14 20:53:07",{"source":8,"skillName":5,"commands":34,"prompt":44,"zipAvailable":45},[35,38,41],{"tool":36,"command":37},"npx","npx skills add yhyu13\u002FAgentSkillsVault --skill grafana-oss",{"tool":39,"command":40},"bunx","bunx skills add yhyu13\u002FAgentSkillsVault --skill grafana-oss",{"tool":42,"command":43},"pnpm","pnpm dlx skills add yhyu13\u002FAgentSkillsVault --skill grafana-oss","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fyhyu13\u002FAgentSkillsVault\u002Fblob\u002Fmain\u002FSKILL\u002Fdevops\u002Ftier1\u002Fgrafana-oss\u002FSKILL.md",true,[47,53,57,61,65,69,73,77],{"path":48,"resourceType":49,"resourceTypeDesc":50,"sizeBytes":51,"sourceHtmlUrl":52},"references\u002Falerting.md","REFERENCE","参考文档",11507,"https:\u002F\u002Fgithub.com\u002Fyhyu13\u002FAgentSkillsVault\u002Fblob\u002Fmain\u002FSKILL\u002Fdevops\u002Ftier1\u002Fgrafana-oss\u002Freferences\u002Falerting.md",{"path":54,"resourceType":49,"resourceTypeDesc":50,"sizeBytes":55,"sourceHtmlUrl":56},"references\u002Fapi.md",2733,"https:\u002F\u002Fgithub.com\u002Fyhyu13\u002FAgentSkillsVault\u002Fblob\u002Fmain\u002FSKILL\u002Fdevops\u002Ftier1\u002Fgrafana-oss\u002Freferences\u002Fapi.md",{"path":58,"resourceType":49,"resourceTypeDesc":50,"sizeBytes":59,"sourceHtmlUrl":60},"references\u002Fconfig.md",2329,"https:\u002F\u002Fgithub.com\u002Fyhyu13\u002FAgentSkillsVault\u002Fblob\u002Fmain\u002FSKILL\u002Fdevops\u002Ftier1\u002Fgrafana-oss\u002Freferences\u002Fconfig.md",{"path":62,"resourceType":49,"resourceTypeDesc":50,"sizeBytes":63,"sourceHtmlUrl":64},"references\u002Fdashboard-json.md",2102,"https:\u002F\u002Fgithub.com\u002Fyhyu13\u002FAgentSkillsVault\u002Fblob\u002Fmain\u002FSKILL\u002Fdevops\u002Ftier1\u002Fgrafana-oss\u002Freferences\u002Fdashboard-json.md",{"path":66,"resourceType":49,"resourceTypeDesc":50,"sizeBytes":67,"sourceHtmlUrl":68},"references\u002Fdashboards.md",6295,"https:\u002F\u002Fgithub.com\u002Fyhyu13\u002FAgentSkillsVault\u002Fblob\u002Fmain\u002FSKILL\u002Fdevops\u002Ftier1\u002Fgrafana-oss\u002Freferences\u002Fdashboards.md",{"path":70,"resourceType":49,"resourceTypeDesc":50,"sizeBytes":71,"sourceHtmlUrl":72},"references\u002Fdatasources.md",9998,"https:\u002F\u002Fgithub.com\u002Fyhyu13\u002FAgentSkillsVault\u002Fblob\u002Fmain\u002FSKILL\u002Fdevops\u002Ftier1\u002Fgrafana-oss\u002Freferences\u002Fdatasources.md",{"path":74,"resourceType":49,"resourceTypeDesc":50,"sizeBytes":75,"sourceHtmlUrl":76},"references\u002Fpanel-types.md",1218,"https:\u002F\u002Fgithub.com\u002Fyhyu13\u002FAgentSkillsVault\u002Fblob\u002Fmain\u002FSKILL\u002Fdevops\u002Ftier1\u002Fgrafana-oss\u002Freferences\u002Fpanel-types.md",{"path":78,"resourceType":49,"resourceTypeDesc":50,"sizeBytes":79,"sourceHtmlUrl":80},"references\u002Fpanels.md",10577,"https:\u002F\u002Fgithub.com\u002Fyhyu13\u002FAgentSkillsVault\u002Fblob\u002Fmain\u002FSKILL\u002Fdevops\u002Ftier1\u002Fgrafana-oss\u002Freferences\u002Fpanels.md",[82,90,97,104,111,118],{"skillNo":83,"name":84,"nameZh":6,"description":85,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":86,"licenseFileUrl":6,"sourceHtmlUrl":87,"categories":88,"keywords":89,"publishedAt":19},"01M7DZJW3GMCBHNCC1J37K73T7","feishu-kdocs-cli","Office cloud CLIs for agents: install, authenticate, verify and troubleshoot Feishu `lark-cli` and Kingsoft\u002FWPS Docs `kdocs-cli`, plus the three China office MCP endpoints (Feishu, WPS SkillHub, Tencent Docs). Use when setting up or re-logging-in 飞书 CLI \u002F 金山文档 CLI, when a command fails with missing scope \u002F PATH \u002F token \u002F device-code errors, when a kdocs or lark command returns 400001 or unknown action, or when wiring 飞书 \u002F 金山文档 \u002F 腾讯文档 MCP into Cindy, Claude or another host. Not a per-command reference: domain commands live in the lark-* Skills and the kdocs Skill.","MIT","https:\u002F\u002Fgithub.com\u002Fyhyu13\u002FAgentSkillsVault\u002Fblob\u002Fmain\u002FSKILL\u002Fdevops\u002Ftier0\u002Ffeishu-kdocs-cli\u002FSKILL.md",[],[],{"skillNo":91,"name":92,"nameZh":6,"description":93,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":86,"licenseFileUrl":6,"sourceHtmlUrl":94,"categories":95,"keywords":96,"publishedAt":19},"01M7BE0VQF0T7ACMY3W9V27ZYG","vfx-fx","Cinematic and game VFX in Blender including smoke, fire, particles, trails, and Geometry Nodes FX setups via MCP.","https:\u002F\u002Fgithub.com\u002Fyhyu13\u002FAgentSkillsVault\u002Fblob\u002Fmain\u002FSKILL\u002Fgame-dev\u002Ftier2\u002Fvfx-fx\u002FSKILL.md",[],[],{"skillNo":98,"name":99,"nameZh":6,"description":100,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":86,"licenseFileUrl":6,"sourceHtmlUrl":101,"categories":102,"keywords":103,"publishedAt":19},"01M7BE0Q23SY6QAW24XEADEH0N","uv-workflow","Production UV unwrapping for seam placement, UV packing, texel density, UDIM, lightmap UVs, and modular UV layouts. Use when preparing meshes for texturing and engine export in Blender via MCP.","https:\u002F\u002Fgithub.com\u002Fyhyu13\u002FAgentSkillsVault\u002Fblob\u002Fmain\u002FSKILL\u002Fgame-dev\u002Ftier2\u002Fuv-workflow\u002FSKILL.md",[],[],{"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":86,"licenseFileUrl":6,"sourceHtmlUrl":108,"categories":109,"keywords":110,"publishedAt":19},"01M7BE0JAKENVJB4Z0SV3Q7QGR","texture-workflow","Production texture workflow for atlases, baking AO\u002Fcurvature\u002Fnormal\u002Froughness maps, decals, and texture memory optimization. Use for game-ready texture pipelines in Blender via MCP.","https:\u002F\u002Fgithub.com\u002Fyhyu13\u002FAgentSkillsVault\u002Fblob\u002Fmain\u002FSKILL\u002Fgame-dev\u002Ftier2\u002Ftexture-workflow\u002FSKILL.md",[],[],{"skillNo":112,"name":113,"nameZh":6,"description":114,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":86,"licenseFileUrl":6,"sourceHtmlUrl":115,"categories":116,"keywords":117,"publishedAt":19},"01M7BE0CYB7BDJP7HD5WTS2PJB","sculpting","Blender sculpting for organic and hard surface detail using Dyntopo, multiresolution, brushes, alpha workflow, wrinkles, and damage. Use when high-frequency surface detail is needed before retopology in Blender via MCP.","https:\u002F\u002Fgithub.com\u002Fyhyu13\u002FAgentSkillsVault\u002Fblob\u002Fmain\u002FSKILL\u002Fgame-dev\u002Ftier2\u002Fsculpting\u002FSKILL.md",[],[],{"skillNo":119,"name":120,"nameZh":6,"description":121,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":86,"licenseFileUrl":6,"sourceHtmlUrl":122,"categories":123,"keywords":124,"publishedAt":19},"01M7BE09TBX9NQ5EBHN4JZ9VXM","scene-assembly","Large scene layout in Blender with collections, linking, overrides, streaming-friendly organization, and set assembly via MCP.","https:\u002F\u002Fgithub.com\u002Fyhyu13\u002FAgentSkillsVault\u002Fblob\u002Fmain\u002FSKILL\u002Fgame-dev\u002Ftier2\u002Fscene-assembly\u002FSKILL.md",[],[]]