[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M7138WEH5ER2CS5PGVTJCKAT":3,"skill-same:01M7138WEH5ER2CS5PGVTJCKAT":559},{"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":26,"publishedAt":47,"linkOnly":48,"markdownContent":49,"markdownBody":50,"frontMatter":51,"refName":52,"commitSha":53,"skillDirectory":54,"forksCount":55,"repositoryHtmlUrl":56,"repositoryHomepageUrl":6,"ownerHtmlUrl":57,"ownerBlogUrl":58,"ownerDescription":59,"updatedAt":60,"install":61,"resources":74},"01M7138WEH5ER2CS5PGVTJCKAT","hyperframes-animation",null,"All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases \u002F Lottie player \u002F Three.js mixer). Also covers auditing an existing composition's choreography (animation map) and 24 named text-animation effects. HyperFrames-native: single paused timeline, seek-safe, deterministic.","EthanYoQ\u002FSkill-hub","EthanYoQ","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F257484394?v=4","01M70C9QKWR1YS0S7V26DNB18H","Ethan","01M70C9QMER047R5ANZZA6KC2P",11,"MIT","https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000015","视觉设计","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],"hyperframes","Animation","hyperframes animation","up","phase","effects","player","anime","web animations api","map","default","Blueprint","design","pick","text","knowledge","Lottie","Composition","api","css","2026-11-10 10:12:30",false,"---\nname: hyperframes-animation\ndescription: \"All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases \u002F Lottie player \u002F Three.js mixer). Also covers auditing an existing composition's choreography (animation map) and 24 named text-animation effects. HyperFrames-native: single paused timeline, seek-safe, deterministic.\"\n---\n\n# HyperFrames Animation\n\nAll motion knowledge in one skill: **rules** (atomic recipes), **blueprints** (multi-phase scene templates), **transitions** (scene-to-scene), **techniques** (broader motion-design patterns), and **adapters** (per-runtime APIs).\n\nFor the composition contract (data attributes, sub-compositions, determinism) see `hyperframes-core`.\n\n## Default: compose atomic rules\n\nPick 2-4 rules from `rules-index.md`, glue them together with a single paused GSAP timeline, done. This is faster and produces less code than starting from a blueprint.\n\n## Load a blueprint when\n\n- The scene matches an existing pre-designed multi-phase template (brand-reveal, social-proof, etc.) and reusing its phase pipeline saves real authoring time\n- You want runnable ground-truth code for a complex 4-5 phase choreography\n\nBlueprints live in `blueprints-index.md`. Each entry points to `blueprints\u002F\u003Cid>.md` (recipe). Do not read it speculatively; load it when you've already decided you need scene-level orchestration.\n\n## Routing\n\n| Want to…                                                                       | Read                                                |\n| ------------------------------------------------------------------------------ | --------------------------------------------------- |\n| Pick an atomic motion pattern by trigger \u002F tag                                 | `rules-index.md`                                    |\n| Read one rule's full HTML \u002F CSS \u002F GSAP recipe                                  | `rules\u002F\u003Cname>.md`                                   |\n| Pick a multi-phase scene template                                              | `blueprints-index.md`                               |\n| Read one blueprint's full recipe                                               | `blueprints\u002F\u003Cid>.md`                                |\n| Author a scene transition (CSS-driven, between two clips)                      | `transitions\u002Foverview.md`, `transitions\u002Fcatalog.md` |\n| Look up a broader motion-design technique                                      | `techniques.md`                                     |\n| Analyze an existing composition's animation map                                | `scripts\u002Fanimation-map.mjs`                         |\n| GSAP API — timeline \u002F tweens \u002F position parameters                             | `adapters\u002Fgsap.md`                                  |\n| GSAP — drop-in effect recipes                                                  | `rules\u002Fgsap-effects.md`                             |\n| GSAP — transforms \u002F perf                                                       | `adapters\u002Fgsap-transforms-and-perf.md`              |\n| GSAP — eases \u002F stagger                                                         | `adapters\u002Fgsap-easing-and-stagger.md`               |\n| GSAP — timeline \u002F labels                                                       | `adapters\u002Fgsap-timeline-and-labels.md`              |\n| Lottie \u002F dotLottie (After Effects exports, `window.__hfLottie`)                | `adapters\u002Flottie.md`                                |\n| Three.js \u002F WebGL (3D scenes, `AnimationMixer`, `hf-seek`)                      | `adapters\u002Fthree.md`                                 |\n| Anime.js (`window.__hfAnime`)                                                  | `adapters\u002Fanimejs.md`                               |\n| CSS keyframes (`animation-delay` \u002F `play-state` \u002F `fill-mode`)                 | `adapters\u002Fcss-animations.md`                        |\n| Web Animations API (`element.animate()`, `currentTime` seek)                   | `adapters\u002Fwaapi.md`                                 |\n| TypeGPU \u002F WebGPU (`navigator.gpu`, WGSL, compute pipelines)                    | `adapters\u002Ftypegpu.md`                               |\n| HTML-as-texture + WebGL\u002FGLSL post-fx (capture live DOM via `drawElementImage`) | `adapters\u002Fhtml-in-canvas-patterns.md`               |\n| Named text-animation effects (24 IDs via external `animate-text` skill)        | `adapters\u002Fanimate-text.md`                          |\n\n## Picking a runtime\n\n- **GSAP** is the default for 95% of motion work — covers timeline orchestration, transforms, easing, stagger. All atomic rules in this skill are GSAP-based.\n- **Lottie** when an asset has its own pre-baked timeline (typically After Effects exports).\n- **Three.js** for 3D scenes, camera motion, shader-driven visuals.\n- **Anime.js** for lightweight tweening when GSAP is overkill.\n- **CSS** for simple repeated motifs, decoration, shimmer — no JavaScript animation cost.\n- **WAAPI** for native browser keyframes without a GSAP dependency.\n- **TypeGPU \u002F WebGPU** for GPU-rendered canvases (particles, liquid glass, custom shaders).\n\nMultiple runtimes can coexist in one composition. Each registers its instances on the runtime-specific global so HyperFrames can seek all of them in one pass.\n\n## Critical Constraints\n\n**Prerequisite: `hyperframes-core` → Non-Negotiable Rules** (single paused timeline, `data-duration` governs length, no `Math.random` \u002F `Date.now` \u002F `performance.now`, no `repeat: -1`, no page-load `gsap.set` on later-scene clips, no `display` or raw `visibility` tweens, and no timeline construction inside `async` \u002F `setTimeout` \u002F `Promise`). GSAP `autoAlpha` and zero-duration visibility sets at explicit timeline boundaries remain allowed by core. Use those exceptions only on non-clip elements or wrappers inside a clip; the framework owns `.clip` lifecycle. Don't restate the full contract here.\n\nAnimation-craft additions on top of core's contract:\n\n- **Pre-calculated layout constants** — never derive positions from `getBoundingClientRect()` at tween time. Tween-time DOM measurements desync because the renderer samples in parallel; compute coordinates once at composition setup and reuse.\n- **Spatial motion uses GSAP transform aliases only** (`x`, `y`, `scale`, `rotation`). Core's allowlist also permits `opacity` \u002F `color` \u002F `backgroundColor` \u002F `borderRadius` for non-spatial property tweens — but never `width` \u002F `height` \u002F `top` \u002F `left` for layout changes.\n\n## Scripts\n\n```bash\nnode skills\u002Fhyperframes-animation\u002Fscripts\u002Fanimation-map.mjs \u003Ccomposition-dir> \\\n  --out \u003Ccomposition-dir>\u002F.hyperframes\u002Fanim-map\n```\n\nReads every GSAP timeline registered on `window.__timelines`, enumerates tweens, samples bboxes, computes flags, outputs `animation-map.json`. Use it to audit choreography (dead zones, stagger consistency, lifecycle warnings) after authoring.\n\n`animation-map.mjs` resolves helper packages from the current project first, then can bootstrap the bundled HyperFrames package version. Set `HYPERFRAMES_SKILL_PKG_VERSION=\u003Cversion>` only when running the skill outside the bundled CLI\u002Fskill install and you need to pin that bootstrap version explicitly.\n\n## See Also\n\n- `hyperframes-core` — composition structure, data attributes, sub-compositions, deterministic render contract\n- `hyperframes-creative` — palettes, typography, narration, beat planning (non-animation creative direction)\n- `hyperframes-cli` — `npx hyperframes lint \u002F check \u002F snapshot \u002F preview \u002F render`\n","# HyperFrames Animation\n\nAll motion knowledge in one skill: **rules** (atomic recipes), **blueprints** (multi-phase scene templates), **transitions** (scene-to-scene), **techniques** (broader motion-design patterns), and **adapters** (per-runtime APIs).\n\nFor the composition contract (data attributes, sub-compositions, determinism) see `hyperframes-core`.\n\n## Default: compose atomic rules\n\nPick 2-4 rules from `rules-index.md`, glue them together with a single paused GSAP timeline, done. This is faster and produces less code than starting from a blueprint.\n\n## Load a blueprint when\n\n- The scene matches an existing pre-designed multi-phase template (brand-reveal, social-proof, etc.) and reusing its phase pipeline saves real authoring time\n- You want runnable ground-truth code for a complex 4-5 phase choreography\n\nBlueprints live in `blueprints-index.md`. Each entry points to `blueprints\u002F\u003Cid>.md` (recipe). Do not read it speculatively; load it when you've already decided you need scene-level orchestration.\n\n## Routing\n\n| Want to…                                                                       | Read                                                |\n| ------------------------------------------------------------------------------ | --------------------------------------------------- |\n| Pick an atomic motion pattern by trigger \u002F tag                                 | `rules-index.md`                                    |\n| Read one rule's full HTML \u002F CSS \u002F GSAP recipe                                  | `rules\u002F\u003Cname>.md`                                   |\n| Pick a multi-phase scene template                                              | `blueprints-index.md`                               |\n| Read one blueprint's full recipe                                               | `blueprints\u002F\u003Cid>.md`                                |\n| Author a scene transition (CSS-driven, between two clips)                      | `transitions\u002Foverview.md`, `transitions\u002Fcatalog.md` |\n| Look up a broader motion-design technique                                      | `techniques.md`                                     |\n| Analyze an existing composition's animation map                                | `scripts\u002Fanimation-map.mjs`                         |\n| GSAP API — timeline \u002F tweens \u002F position parameters                             | `adapters\u002Fgsap.md`                                  |\n| GSAP — drop-in effect recipes                                                  | `rules\u002Fgsap-effects.md`                             |\n| GSAP — transforms \u002F perf                                                       | `adapters\u002Fgsap-transforms-and-perf.md`              |\n| GSAP — eases \u002F stagger                                                         | `adapters\u002Fgsap-easing-and-stagger.md`               |\n| GSAP — timeline \u002F labels                                                       | `adapters\u002Fgsap-timeline-and-labels.md`              |\n| Lottie \u002F dotLottie (After Effects exports, `window.__hfLottie`)                | `adapters\u002Flottie.md`                                |\n| Three.js \u002F WebGL (3D scenes, `AnimationMixer`, `hf-seek`)                      | `adapters\u002Fthree.md`                                 |\n| Anime.js (`window.__hfAnime`)                                                  | `adapters\u002Fanimejs.md`                               |\n| CSS keyframes (`animation-delay` \u002F `play-state` \u002F `fill-mode`)                 | `adapters\u002Fcss-animations.md`                        |\n| Web Animations API (`element.animate()`, `currentTime` seek)                   | `adapters\u002Fwaapi.md`                                 |\n| TypeGPU \u002F WebGPU (`navigator.gpu`, WGSL, compute pipelines)                    | `adapters\u002Ftypegpu.md`                               |\n| HTML-as-texture + WebGL\u002FGLSL post-fx (capture live DOM via `drawElementImage`) | `adapters\u002Fhtml-in-canvas-patterns.md`               |\n| Named text-animation effects (24 IDs via external `animate-text` skill)        | `adapters\u002Fanimate-text.md`                          |\n\n## Picking a runtime\n\n- **GSAP** is the default for 95% of motion work — covers timeline orchestration, transforms, easing, stagger. All atomic rules in this skill are GSAP-based.\n- **Lottie** when an asset has its own pre-baked timeline (typically After Effects exports).\n- **Three.js** for 3D scenes, camera motion, shader-driven visuals.\n- **Anime.js** for lightweight tweening when GSAP is overkill.\n- **CSS** for simple repeated motifs, decoration, shimmer — no JavaScript animation cost.\n- **WAAPI** for native browser keyframes without a GSAP dependency.\n- **TypeGPU \u002F WebGPU** for GPU-rendered canvases (particles, liquid glass, custom shaders).\n\nMultiple runtimes can coexist in one composition. Each registers its instances on the runtime-specific global so HyperFrames can seek all of them in one pass.\n\n## Critical Constraints\n\n**Prerequisite: `hyperframes-core` → Non-Negotiable Rules** (single paused timeline, `data-duration` governs length, no `Math.random` \u002F `Date.now` \u002F `performance.now`, no `repeat: -1`, no page-load `gsap.set` on later-scene clips, no `display` or raw `visibility` tweens, and no timeline construction inside `async` \u002F `setTimeout` \u002F `Promise`). GSAP `autoAlpha` and zero-duration visibility sets at explicit timeline boundaries remain allowed by core. Use those exceptions only on non-clip elements or wrappers inside a clip; the framework owns `.clip` lifecycle. Don't restate the full contract here.\n\nAnimation-craft additions on top of core's contract:\n\n- **Pre-calculated layout constants** — never derive positions from `getBoundingClientRect()` at tween time. Tween-time DOM measurements desync because the renderer samples in parallel; compute coordinates once at composition setup and reuse.\n- **Spatial motion uses GSAP transform aliases only** (`x`, `y`, `scale`, `rotation`). Core's allowlist also permits `opacity` \u002F `color` \u002F `backgroundColor` \u002F `borderRadius` for non-spatial property tweens — but never `width` \u002F `height` \u002F `top` \u002F `left` for layout changes.\n\n## Scripts\n\n```bash\nnode skills\u002Fhyperframes-animation\u002Fscripts\u002Fanimation-map.mjs \u003Ccomposition-dir> \\\n  --out \u003Ccomposition-dir>\u002F.hyperframes\u002Fanim-map\n```\n\nReads every GSAP timeline registered on `window.__timelines`, enumerates tweens, samples bboxes, computes flags, outputs `animation-map.json`. Use it to audit choreography (dead zones, stagger consistency, lifecycle warnings) after authoring.\n\n`animation-map.mjs` resolves helper packages from the current project first, then can bootstrap the bundled HyperFrames package version. Set `HYPERFRAMES_SKILL_PKG_VERSION=\u003Cversion>` only when running the skill outside the bundled CLI\u002Fskill install and you need to pin that bootstrap version explicitly.\n\n## See Also\n\n- `hyperframes-core` — composition structure, data attributes, sub-compositions, deterministic render contract\n- `hyperframes-creative` — palettes, typography, narration, beat planning (non-animation creative direction)\n- `hyperframes-cli` — `npx hyperframes lint \u002F check \u002F snapshot \u002F preview \u002F render`\n",{"name":5,"description":7},"mine","1e7390741dffd3d5041fca4ebc056071ee3ba137","skills\u002F07-media-content\u002Fhyperframes-animation",5,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub","https:\u002F\u002Fgithub.com\u002FEthanYoQ","www.orz.md","Part Marketer, Part AI Explorer.","2026-11-07 14:52:29",{"source":8,"skillName":5,"commands":62,"prompt":72,"zipAvailable":73},[63,66,69],{"tool":64,"command":65},"npx","npx skills add EthanYoQ\u002FSkill-hub --skill hyperframes-animation",{"tool":67,"command":68},"bunx","bunx skills add EthanYoQ\u002FSkill-hub --skill hyperframes-animation",{"tool":70,"command":71},"pnpm","pnpm dlx skills add EthanYoQ\u002FSkill-hub --skill hyperframes-animation","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002FSKILL.md",true,[75,81,85,89,93,97,101,105,109,113,117,121,125,129,133,137,141,145,149,153,157,161,165,169,173,177,181,185,189,193,197,201,205,209,213,217,221,225,229,233,237,241,245,249,253,257,261,265,269,273,277,281,285,289,293,297,301,305,309,313,317,321,325,329,333,337,341,345,349,353,357,361,365,369,373,377,381,385,389,393,397,401,405,409,413,417,421,425,429,433,437,441,445,449,453,457,461,465,471,475,479,483,487,491,495,499,503,507,511,515,519,523,527,531,535,539,543,547,551,555],{"path":76,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":79,"sourceHtmlUrl":80},"adapters\u002Fanimate-text.md","REFERENCE","参考文档",4069,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fadapters\u002Fanimate-text.md",{"path":82,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":83,"sourceHtmlUrl":84},"adapters\u002Fanimejs.md",6224,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fadapters\u002Fanimejs.md",{"path":86,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":87,"sourceHtmlUrl":88},"adapters\u002Fcss-animations.md",5407,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fadapters\u002Fcss-animations.md",{"path":90,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":91,"sourceHtmlUrl":92},"adapters\u002Fgsap-easing-and-stagger.md",13270,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fadapters\u002Fgsap-easing-and-stagger.md",{"path":94,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":95,"sourceHtmlUrl":96},"adapters\u002Fgsap-timeline-and-labels.md",3734,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fadapters\u002Fgsap-timeline-and-labels.md",{"path":98,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":99,"sourceHtmlUrl":100},"adapters\u002Fgsap-transforms-and-perf.md",8552,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fadapters\u002Fgsap-transforms-and-perf.md",{"path":102,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":103,"sourceHtmlUrl":104},"adapters\u002Fgsap.md",7627,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fadapters\u002Fgsap.md",{"path":106,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":107,"sourceHtmlUrl":108},"adapters\u002Fhtml-in-canvas-patterns.md",17166,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fadapters\u002Fhtml-in-canvas-patterns.md",{"path":110,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":111,"sourceHtmlUrl":112},"adapters\u002Flottie.md",4145,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fadapters\u002Flottie.md",{"path":114,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":115,"sourceHtmlUrl":116},"adapters\u002Fthree.md",5231,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fadapters\u002Fthree.md",{"path":118,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":119,"sourceHtmlUrl":120},"adapters\u002Ftypegpu.md",8100,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fadapters\u002Ftypegpu.md",{"path":122,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":123,"sourceHtmlUrl":124},"adapters\u002Fwaapi.md",4248,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fadapters\u002Fwaapi.md",{"path":126,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":127,"sourceHtmlUrl":128},"blueprints-index.md",26512,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints-index.md",{"path":130,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":131,"sourceHtmlUrl":132},"blueprints\u002Fagent-progress-theater.md",16091,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Fagent-progress-theater.md",{"path":134,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":135,"sourceHtmlUrl":136},"blueprints\u002Fcamera-journey.md",13648,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Fcamera-journey.md",{"path":138,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":139,"sourceHtmlUrl":140},"blueprints\u002Fcomparison-split.md",3316,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Fcomparison-split.md",{"path":142,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":143,"sourceHtmlUrl":144},"blueprints\u002Fconstellation-hub.md",7144,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Fconstellation-hub.md",{"path":146,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":147,"sourceHtmlUrl":148},"blueprints\u002Fcta-morph-press.md",6407,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Fcta-morph-press.md",{"path":150,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":151,"sourceHtmlUrl":152},"blueprints\u002Fcursor-ui-demo.md",20276,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Fcursor-ui-demo.md",{"path":154,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":155,"sourceHtmlUrl":156},"blueprints\u002Fdataviz-countup.md",14611,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Fdataviz-countup.md",{"path":158,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":159,"sourceHtmlUrl":160},"blueprints\u002Fdevice-surface-showcase.md",17151,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Fdevice-surface-showcase.md",{"path":162,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":163,"sourceHtmlUrl":164},"blueprints\u002Ffixed-anchor-cycle.md",9089,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Ffixed-anchor-cycle.md",{"path":166,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":167,"sourceHtmlUrl":168},"blueprints\u002Fgrid-card-assemble.md",15594,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Fgrid-card-assemble.md",{"path":170,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":171,"sourceHtmlUrl":172},"blueprints\u002Fkinetic-type-beats.md",29151,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Fkinetic-type-beats.md",{"path":174,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":175,"sourceHtmlUrl":176},"blueprints\u002Flogo-assemble-lockup.md",26609,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Flogo-assemble-lockup.md",{"path":178,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":179,"sourceHtmlUrl":180},"blueprints\u002Foverwhelm-surround.md",6140,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Foverwhelm-surround.md",{"path":182,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":183,"sourceHtmlUrl":184},"blueprints\u002Fpanel-edit-live-sync.md",13394,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Fpanel-edit-live-sync.md",{"path":186,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":187,"sourceHtmlUrl":188},"blueprints\u002Fprompt-type-submit-generate.md",18636,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Fprompt-type-submit-generate.md",{"path":190,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":191,"sourceHtmlUrl":192},"blueprints\u002Fspatial-pan-stations.md",4868,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Fspatial-pan-stations.md",{"path":194,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":195,"sourceHtmlUrl":196},"blueprints\u002Fticker-takeover.md",3052,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Fticker-takeover.md",{"path":198,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":199,"sourceHtmlUrl":200},"blueprints\u002Ftitlecard-reveal.md",7444,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Ftitlecard-reveal.md",{"path":202,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":203,"sourceHtmlUrl":204},"blueprints\u002Ftranscript-scroll-artifact-reveal.md",11666,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Ftranscript-scroll-artifact-reveal.md",{"path":206,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":207,"sourceHtmlUrl":208},"blueprints\u002Ftypewriter-reveal.md",6276,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Ftypewriter-reveal.md",{"path":210,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":211,"sourceHtmlUrl":212},"blueprints\u002Fvideo-text-pivot.md",3281,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Fvideo-text-pivot.md",{"path":214,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":215,"sourceHtmlUrl":216},"blueprints\u002Fzoom-out-workspace-reveal.md",14714,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fblueprints\u002Fzoom-out-workspace-reveal.md",{"path":218,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":219,"sourceHtmlUrl":220},"examples\u002Fbrand-reveal-assemble-zoom.html",12285,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fexamples\u002Fbrand-reveal-assemble-zoom.html",{"path":222,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":223,"sourceHtmlUrl":224},"examples\u002Fcomparison-split-cards.html",21754,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fexamples\u002Fcomparison-split-cards.html",{"path":226,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":227,"sourceHtmlUrl":228},"examples\u002Fconcept-demo-decode-pan.html",18382,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fexamples\u002Fconcept-demo-decode-pan.html",{"path":230,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":231,"sourceHtmlUrl":232},"examples\u002Fcta-morph-press.html",15192,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fexamples\u002Fcta-morph-press.html",{"path":234,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":235,"sourceHtmlUrl":236},"examples\u002Fcta-orbit-collapse.html",50646,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fexamples\u002Fcta-orbit-collapse.html",{"path":238,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":239,"sourceHtmlUrl":240},"examples\u002Fdemo-page-scroll-spotlight.html",25019,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fexamples\u002Fdemo-page-scroll-spotlight.html",{"path":242,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":243,"sourceHtmlUrl":244},"examples\u002Fhook-counter-burst.html",23004,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fexamples\u002Fhook-counter-burst.html",{"path":246,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":247,"sourceHtmlUrl":248},"examples\u002Fmessaging-multi-phrase.html",12223,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fexamples\u002Fmessaging-multi-phrase.html",{"path":250,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":251,"sourceHtmlUrl":252},"examples\u002Fmetric-video-text-pivot.html",25640,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fexamples\u002Fmetric-video-text-pivot.html",{"path":254,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":255,"sourceHtmlUrl":256},"examples\u002Fproblem-mockup-overwhelm.html",44482,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fexamples\u002Fproblem-mockup-overwhelm.html",{"path":258,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":259,"sourceHtmlUrl":260},"examples\u002Fproof-logo-chain.html",28911,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fexamples\u002Fproof-logo-chain.html",{"path":262,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":263,"sourceHtmlUrl":264},"examples\u002Ftakeover-ticker-displace.html",10947,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fexamples\u002Ftakeover-ticker-displace.html",{"path":266,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":267,"sourceHtmlUrl":268},"examples\u002Fworkflow-approve-press.html",20674,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fexamples\u002Fworkflow-approve-press.html",{"path":270,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":271,"sourceHtmlUrl":272},"rules-index.md",21204,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules-index.md",{"path":274,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":275,"sourceHtmlUrl":276},"rules\u002F3d-camera-flight.md",18137,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002F3d-camera-flight.md",{"path":278,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":279,"sourceHtmlUrl":280},"rules\u002F3d-page-scroll.md",7406,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002F3d-page-scroll.md",{"path":282,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":283,"sourceHtmlUrl":284},"rules\u002F3d-text-depth-layers.md",6708,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002F3d-text-depth-layers.md",{"path":286,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":287,"sourceHtmlUrl":288},"rules\u002Fai-tracking-box.md",6562,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fai-tracking-box.md",{"path":290,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":291,"sourceHtmlUrl":292},"rules\u002Fambient-glow-bloom.md",9840,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fambient-glow-bloom.md",{"path":294,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":295,"sourceHtmlUrl":296},"rules\u002Fanchored-layout-expand.md",10313,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fanchored-layout-expand.md",{"path":298,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":299,"sourceHtmlUrl":300},"rules\u002Fasr-keyword-glow.md",6762,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fasr-keyword-glow.md",{"path":302,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":303,"sourceHtmlUrl":304},"rules\u002Favatar-cloud-network.md",6578,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Favatar-cloud-network.md",{"path":306,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":307,"sourceHtmlUrl":308},"rules\u002Fcamera-cursor-tracking.md",7911,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fcamera-cursor-tracking.md",{"path":310,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":311,"sourceHtmlUrl":312},"rules\u002Fcard-morph-anchor.md",7411,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fcard-morph-anchor.md",{"path":314,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":315,"sourceHtmlUrl":316},"rules\u002Fcenter-outward-expansion.md",4263,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fcenter-outward-expansion.md",{"path":318,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":319,"sourceHtmlUrl":320},"rules\u002Fchart-scrub-readout.md",10348,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fchart-scrub-readout.md",{"path":322,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":323,"sourceHtmlUrl":324},"rules\u002Fchromatic-glitch.md",10339,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fchromatic-glitch.md",{"path":326,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":327,"sourceHtmlUrl":328},"rules\u002Fcontext-sensitive-cursor.md",6938,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fcontext-sensitive-cursor.md",{"path":330,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":331,"sourceHtmlUrl":332},"rules\u002Fcontrol-target-sync.md",10276,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fcontrol-target-sync.md",{"path":334,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":335,"sourceHtmlUrl":336},"rules\u002Fcoordinate-target-zoom.md",7607,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fcoordinate-target-zoom.md",{"path":338,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":339,"sourceHtmlUrl":340},"rules\u002Fcounting-dynamic-scale.md",5977,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fcounting-dynamic-scale.md",{"path":342,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":343,"sourceHtmlUrl":344},"rules\u002Fcss-marker-patterns.md",5702,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fcss-marker-patterns.md",{"path":346,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":347,"sourceHtmlUrl":348},"rules\u002Fcursor-click-ripple.md",6400,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fcursor-click-ripple.md",{"path":350,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":351,"sourceHtmlUrl":352},"rules\u002Fcursor-drag.md",10215,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fcursor-drag.md",{"path":354,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":355,"sourceHtmlUrl":356},"rules\u002Fdepth-of-field-blur.md",8876,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fdepth-of-field-blur.md",{"path":358,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":359,"sourceHtmlUrl":360},"rules\u002Fdepth-scatter-assemble.md",7054,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fdepth-scatter-assemble.md",{"path":362,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":363,"sourceHtmlUrl":364},"rules\u002Fdiscrete-text-sequence.md",6454,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fdiscrete-text-sequence.md",{"path":366,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":367,"sourceHtmlUrl":368},"rules\u002Fdynamic-content-sequencing.md",8561,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fdynamic-content-sequencing.md",{"path":370,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":371,"sourceHtmlUrl":372},"rules\u002Fgradient-text-sweep.md",8751,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fgradient-text-sweep.md",{"path":374,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":375,"sourceHtmlUrl":376},"rules\u002Fgsap-effects.md",6912,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fgsap-effects.md",{"path":378,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":379,"sourceHtmlUrl":380},"rules\u002Fhacker-flip-3d.md",5589,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fhacker-flip-3d.md",{"path":382,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":383,"sourceHtmlUrl":384},"rules\u002Fkinetic-beat-slam.md",6451,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fkinetic-beat-slam.md",{"path":386,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":387,"sourceHtmlUrl":388},"rules\u002Fmotion-blur-streak.md",10619,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fmotion-blur-streak.md",{"path":390,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":391,"sourceHtmlUrl":392},"rules\u002Fmulti-cursor-choreography.md",10520,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fmulti-cursor-choreography.md",{"path":394,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":395,"sourceHtmlUrl":396},"rules\u002Fmulti-phase-camera.md",7773,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fmulti-phase-camera.md",{"path":398,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":399,"sourceHtmlUrl":400},"rules\u002Fnudge-curve.md",2689,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fnudge-curve.md",{"path":402,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":403,"sourceHtmlUrl":404},"rules\u002Forbit-3d-entry.md",6628,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Forbit-3d-entry.md",{"path":406,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":407,"sourceHtmlUrl":408},"rules\u002Fparticle-burst.md",9956,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fparticle-burst.md",{"path":410,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":411,"sourceHtmlUrl":412},"rules\u002Fphysics-press-reaction.md",6687,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fphysics-press-reaction.md",{"path":414,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":415,"sourceHtmlUrl":416},"rules\u002Fpress-release-spring.md",7041,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fpress-release-spring.md",{"path":418,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":419,"sourceHtmlUrl":420},"rules\u002Freactive-displacement.md",6539,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Freactive-displacement.md",{"path":422,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":423,"sourceHtmlUrl":424},"rules\u002Fscale-swap-transition.md",5517,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fscale-swap-transition.md",{"path":426,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":427,"sourceHtmlUrl":428},"rules\u002Fsine-wave-loop.md",6163,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fsine-wave-loop.md",{"path":430,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":431,"sourceHtmlUrl":432},"rules\u002Fsplit-tilt-cards.md",5669,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fsplit-tilt-cards.md",{"path":434,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":435,"sourceHtmlUrl":436},"rules\u002Fspring-pop-entrance.md",6533,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fspring-pop-entrance.md",{"path":438,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":439,"sourceHtmlUrl":440},"rules\u002Fstat-bars-and-fills.md",5486,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fstat-bars-and-fills.md",{"path":442,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":443,"sourceHtmlUrl":444},"rules\u002Fsvg-icon-enrichment.md",7621,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fsvg-icon-enrichment.md",{"path":446,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":447,"sourceHtmlUrl":448},"rules\u002Fsvg-path-draw.md",5646,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fsvg-path-draw.md",{"path":450,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":451,"sourceHtmlUrl":452},"rules\u002Ftheme-crossfade-morph.md",9404,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Ftheme-crossfade-morph.md",{"path":454,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":455,"sourceHtmlUrl":456},"rules\u002Fvertical-spring-ticker.md",5498,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fvertical-spring-ticker.md",{"path":458,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":459,"sourceHtmlUrl":460},"rules\u002Fviewport-change.md",8974,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fviewport-change.md",{"path":462,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":463,"sourceHtmlUrl":464},"rules\u002Fwaterfall-entry.md",4582,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Frules\u002Fwaterfall-entry.md",{"path":466,"resourceType":467,"resourceTypeDesc":468,"sizeBytes":469,"sourceHtmlUrl":470},"scripts\u002Fanimation-map-sampling.mjs","SCRIPT","脚本",1400,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fscripts\u002Fanimation-map-sampling.mjs",{"path":472,"resourceType":467,"resourceTypeDesc":468,"sizeBytes":473,"sourceHtmlUrl":474},"scripts\u002Fanimation-map-sampling.test.mjs",1689,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fscripts\u002Fanimation-map-sampling.test.mjs",{"path":476,"resourceType":467,"resourceTypeDesc":468,"sizeBytes":477,"sourceHtmlUrl":478},"scripts\u002Fanimation-map.mjs",23340,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fscripts\u002Fanimation-map.mjs",{"path":480,"resourceType":467,"resourceTypeDesc":468,"sizeBytes":481,"sourceHtmlUrl":482},"scripts\u002Fanimation-map.test.mjs",19354,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fscripts\u002Fanimation-map.test.mjs",{"path":484,"resourceType":467,"resourceTypeDesc":468,"sizeBytes":485,"sourceHtmlUrl":486},"scripts\u002Fpackage-loader.mjs",13549,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fscripts\u002Fpackage-loader.mjs",{"path":488,"resourceType":467,"resourceTypeDesc":468,"sizeBytes":489,"sourceHtmlUrl":490},"scripts\u002Fpackage-loader.test.mjs",2575,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Fscripts\u002Fpackage-loader.test.mjs",{"path":492,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":493,"sourceHtmlUrl":494},"techniques.md",15772,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Ftechniques.md",{"path":496,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":497,"sourceHtmlUrl":498},"transitions\u002Fcatalog.md",6679,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Ftransitions\u002Fcatalog.md",{"path":500,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":501,"sourceHtmlUrl":502},"transitions\u002Fcss-3d.md",421,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Ftransitions\u002Fcss-3d.md",{"path":504,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":505,"sourceHtmlUrl":506},"transitions\u002Fcss-blur.md",1787,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Ftransitions\u002Fcss-blur.md",{"path":508,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":509,"sourceHtmlUrl":510},"transitions\u002Fcss-cover.md",1448,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Ftransitions\u002Fcss-cover.md",{"path":512,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":513,"sourceHtmlUrl":514},"transitions\u002Fcss-destruction.md",4484,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Ftransitions\u002Fcss-destruction.md",{"path":516,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":517,"sourceHtmlUrl":518},"transitions\u002Fcss-dissolve.md",2462,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Ftransitions\u002Fcss-dissolve.md",{"path":520,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":521,"sourceHtmlUrl":522},"transitions\u002Fcss-distortion.md",1803,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Ftransitions\u002Fcss-distortion.md",{"path":524,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":525,"sourceHtmlUrl":526},"transitions\u002Fcss-grid.md",370,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Ftransitions\u002Fcss-grid.md",{"path":528,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":529,"sourceHtmlUrl":530},"transitions\u002Fcss-light.md",2376,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Ftransitions\u002Fcss-light.md",{"path":532,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":533,"sourceHtmlUrl":534},"transitions\u002Fcss-mechanical.md",1613,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Ftransitions\u002Fcss-mechanical.md",{"path":536,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":537,"sourceHtmlUrl":538},"transitions\u002Fcss-other.md",838,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Ftransitions\u002Fcss-other.md",{"path":540,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":541,"sourceHtmlUrl":542},"transitions\u002Fcss-push.md",1195,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Ftransitions\u002Fcss-push.md",{"path":544,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":545,"sourceHtmlUrl":546},"transitions\u002Fcss-radial.md",1060,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Ftransitions\u002Fcss-radial.md",{"path":548,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":549,"sourceHtmlUrl":550},"transitions\u002Fcss-scale.md",715,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Ftransitions\u002Fcss-scale.md",{"path":552,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":553,"sourceHtmlUrl":554},"transitions\u002Foverview.md",13857,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Ftransitions\u002Foverview.md",{"path":556,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":557,"sourceHtmlUrl":558},"transitions\u002FTRANSITION-REGISTRY.md",8135,"https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F07-media-content\u002Fhyperframes-animation\u002Ftransitions\u002FTRANSITION-REGISTRY.md",[560,588,619,643,661,676],{"skillNo":561,"name":562,"nameZh":6,"description":563,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":564,"categories":565,"keywords":567,"publishedAt":47},"01M713CBDSYARG4PXFXK2R2NNN","xhs-pharma-social-listening","Run evidence-disciplined Xiaohongshu social listening for foreign pharma employee pain points. Use when the user asks to collect and analyze notes\u002Fcomments about pharma companies, aliases, roles, compliance, medical affairs, or AI topics, then produce a cited and scored sampled-insight report. Includes independent-evidence counting, MediaCrawler batch collection, and CAPTCHA\u002F461 fallback to Agent Reach\u002FOpenCLI.","https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F10-business-industry\u002Fxhs-pharma-social-listening\u002FSKILL.md",[566],{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},[568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587],"social","xhs pharma social listening","social listening","xhs","medical","counting","when","collection","batch","analyze","notes","run","opencli","fallback","captcha","agent reach","evidence","for","collect","produce",{"skillNo":589,"name":590,"nameZh":6,"description":591,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":592,"categories":593,"keywords":600,"publishedAt":47},"01M713C8Q76ZP0WXXBRAFKS6EE","healthcare-phi-compliance","Protected Health Information (PHI) and Personally Identifiable Information (PII) compliance patterns for healthcare applications. Covers data classification, access control, audit trails, encryption, and common leak vectors. Use when code touches PHI or PII in a healthcare system, or when auditing access control, audit trails, or leak vectors.","https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F10-business-industry\u002Fhealthcare-phi-compliance\u002FSKILL.md",[594,595],{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":596,"categoryName":597,"taxonomyType":598,"taxonomyTypeDesc":599},"01JBSEEDCAT000000000000037","律师与法务","PROFESSION","适用职业",[601,602,603,604,605,606,607,608,574,609,610,611,612,613,614,615,585,616,617,618],"healthcare","phi","compliance","healthcare phi compliance","pii","compliance patterns","information","access","encryption","code","common","audit","data","patterns","Access Control","system","applications","Auditing Access Control",{"skillNo":620,"name":621,"nameZh":6,"description":622,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":623,"categories":624,"keywords":626,"publishedAt":47},"01M713C5R2GE43X45T2K75TB76","healthcare-eval-harness","Patient safety evaluation harness for healthcare application deployments. Automated test suites for CDSS accuracy, PHI exposure, clinical workflow integrity, and integration compliance. Blocks deployments on safety failures. Use when a healthcare deployment must be gated on patient-safety tests for CDSS accuracy, PHI exposure, and workflow integrity.","https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F10-business-industry\u002Fhealthcare-eval-harness\u002FSKILL.md",[625],{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},[601,627,628,629,630,631,632,574,633,634,635,636,602,585,637,638,639,640,641,642],"eval","harness","healthcare eval harness","eval harness","clinical","patient","workflow","Evaluation","Safety","integrity","deployment","accuracy","tests","deployments","use","super",{"skillNo":644,"name":645,"nameZh":6,"description":646,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":647,"categories":648,"keywords":650,"publishedAt":47},"01M713C2J17S91VYR7A8M696VR","healthcare-emr-patterns","EMR\u002FEHR development patterns for healthcare applications. Clinical safety, encounter workflows, prescription generation, clinical decision support integration, and accessibility-first UI for medical data entry. Use when building EMR or EHR features such as encounter workflows, prescription generation, or clinical data entry UI.","https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F10-business-industry\u002Fhealthcare-emr-patterns\u002FSKILL.md",[649],{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},[601,651,614,652,653,572,631,654,574,655,656,657,635,613,658,659,660,585,617,641],"EMR","healthcare emr patterns","decision","workflows","support","clinical decision support","features","ui","as","development",{"skillNo":662,"name":663,"nameZh":6,"description":664,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":665,"categories":666,"keywords":668,"publishedAt":47},"01M713BZERTXV0N8X6SW9DDVWZ","healthcare-cdss-patterns","Clinical Decision Support System (CDSS) development patterns. Drug interaction checking, dose validation, clinical scoring (NEWS2, qSOFA), alert severity classification, and integration into EMR workflows. Use when building clinical decision support — drug interaction checks, dose validation, clinical scoring, or alert severity.","https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F10-business-industry\u002Fhealthcare-cdss-patterns\u002FSKILL.md",[667],{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},[601,614,669,653,631,651,654,574,670,671,655,656,672,660,616,673,641,674,642,675],"healthcare cdss patterns","scoring","interaction","severity","classification","alert","decision support",{"skillNo":677,"name":678,"nameZh":6,"description":679,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":680,"categories":681,"keywords":683,"publishedAt":47},"01M713BVK3PQR7V4ZKYGMWMXJD","dxy-task-clarify","用户的请求含糊、缺背景、缺资料说明、缺读者或用途时使用。先用少量带选项的追问把任务问清楚，写成任务卡，用户确认后再执行。尤其适用于医生、科研人员和药企各岗位的工作，例如「帮我分析一下这些数据」「帮我准备明天的拜访」「写个总结」「做个 PPT」「回一下这封邮件」「整理一下会议纪要」「整理一下这些文献」「帮我准备下周的讲课」「写个病例汇报」「帮我写个提示词」。用户说「先问我」「帮我理清需求」「我不知道怎么描述」「我不会问 AI」时也使用。用途、资料、读者都已说清的请求，纯翻译，以及写代码、改代码，不使用。","https:\u002F\u002Fgithub.com\u002FEthanYoQ\u002FSkill-hub\u002Fblob\u002Fmine\u002Fskills\u002F10-business-industry\u002Fdxy-task-clarify\u002FSKILL.md",[682],{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},[684,685,686,687,688,689,690,691],"clarify","dxy task clarify","task","pptx","整理","翻译","数据","总结"]