pmndrs
- 29 skills
- 0 followers
- 6 hours ago last updated
- ▌ Docs · pmndrsLook up the official pmndrs documentation before answering anything about react-three-fiber (R3F), drei or zustand — hooks, components, props, signatures, store patterns, migrations. Use it whenever code or an answer depends on one of these APIs, rather than recalling the API from memory.
- ▌ Examples · pmndrsFind a working pmndrs demo before writing a react-three-fiber scene from scratch — caustics, transmission, physics, postprocessing, scroll rigs, GLTF, portals, instancing. Use it whenever the question is how something is put together rather than what an API takes, and read the demo's source instead of reconstructing it.
- ▌ Pmndrs Viverse · pmndrs bundleBuild, modify, debug, or publish VIVERSE-ready web games and 3D apps with Three.js, React Three Fiber, @pmndrs/viverse, @react-three/viverse, VIVERSE SDK integrations, character controllers, physics, avatars, actions, animations, AR, or VR.
- ▌ Pmndrs Xr · pmndrs bundleBuild, modify, debug, or validate XR, AR, VR, spatial interaction, pointer, controller, hand-tracking, hit-test, teleportation, layer, anchor, uikit, and handle-based React Three Fiber apps using @react-three/xr, @react-three/handle, and @react-three/uikit. Use when working on immersive WebXR experiences, R3F-to-XR conversions, XR games, spatial tools, or XR validation/test harnesses.
- ▌ Tsl · pmndrs bundleImplement, migrate, review, debug, or verify Three.js Shading Language (TSL) materials, node graphs, WebGPU compute work, and post-processing. Use for `three/tsl`, `three/webgpu`, NodeMaterial, WebGPURenderer, storage buffers, shader-node typing, or GLSL-to-TSL work; verify every API against the repository's installed Three.js version.
- ▌ Codemod · pmndrs bundleAuthor, archive, apply, and verify TypeScript codemods with ts-morph for APIs that have reached the remote default branch or external users. Use for shipped public API migrations, symbol renames, call-signature rewrites, import moves, or requests to preserve a dated migration recipe. Do not use for unmerged work-in-progress APIs or global text replacement.
- ▌ Typegpu · pmndrs bundleTypeGPU is type-safe WebGPU in TypeScript. Use whenever the user writes, debugs, or designs TypeGPU code: 'use gpu' shader functions, tgpu.fn, buffers, textures, bind groups, compute and render pipelines, command encoders, render passes, render bundles, vertex layouts, slots, accessors, @typegpu/react hooks (useRoot, useFrame, useUniform), React Native worklet rendering, and any TypeGPU API. Shader logic and CPU-side resources are tightly coupled - handle both sides here even if the user only mentions one (e.g. "how do I write a shader", "how do I create a buffer"). Trigger on any mention of typegpu, tgpu, "use gpu", TypedGPU, or WebGPU code written using TypeGPU's schema API (d.*, tgpu.*, std.*). Do NOT trigger for raw WebGPU (using GPUDevice/GPURenderPipeline directly without tgpu), WGSL-only questions, Three.js, Babylon.js, or WebGL.
- ▌ Gh Stack · pmndrsManage dependent branches and pull requests with the gh-stack GitHub CLI extension. Use for stacked diffs, dependent pull requests, branch chains, stack navigation, rebasing, submission, synchronization, or merging.
- ▌ Agent Router · pmndrs bundleRoute resumable external-model work through the pinned ai-cli-mcp server. Use for adversarial reviews, implementation reviews, research, and one-off delegated tasks when the user names Claude, Opus, Fable, OpenCode, 0x Alpha, Codex, or asks for an external model.
- ▌ Diataxis Docs · pmndrs bundleDesign, classify, write, audit, or restructure technical documentation with the Diátaxis framework. Use for tutorials, how-to guides, reference material, explanations, documentation maps, README routing, documentation audits, or requests to separate mixed-purpose docs. Do not apply it automatically to internal plans, ADRs, research logs, or specifications unless the user wants those artifacts organized as product documentation.
- ▌ Evidence First · pmndrs bundleShape human-facing engineering communication—including chat updates and final answers, reports, reviews, handoffs, debugging or benchmark summaries, PR and issue prose, READMEs, and technical documentation—around clear claims, measured support, explicit gaps, and scoped decisions. Use whenever Codex presents engineering work, evidence, or findings to a human; let document-specific frameworks retain their purpose and structure.
- ▌ Engine Call Contract · pmndrsHow every call into the text engine is shaped, and where each entry point's names live. Use before adding, moving, or removing anything on a published surface, before adding an error path or a result type to an engine call, and when deciding whether a failure belongs to the caller or to this package.
- ▌ Open Knowledge Format · pmndrs bundleCreate, migrate, inspect, query, validate, or maintain Open Knowledge Format v0.2 bundles made from linked Markdown concepts with YAML provenance. Use when the user mentions OKF, Open Knowledge Format, knowledge bundles, LLM wikis, portable agent knowledge, OKF conformance, provenance, trust, lifecycle, attested computations, or asks to make repository knowledge interoperable across human and agent tools. Do not use for ordinary Markdown unless OKF compatibility or a knowledge bundle is requested.
- ▌ Maintainability Review · pmndrs bundleAudit and improve repository code milestone by milestone for correctness, clarity, local reasoning, DRY design, explicit state modeling, panic resistance, and trustworthy TypeScript boundaries. Use for deliberate cleanup passes, pre-release maintainability reviews, agent-assisted refactors, or requests invoking Jane Street-style algebraic data types, Rust newtypes, TypeScript discriminated unions, type guards, or evidence-backed simplification without public API churn.
- ▌ Speckit Plan · pmndrsExecute the implementation planning workflow using the plan template to generate design artifacts.
- ▌ Speckit Tasks · pmndrsGenerate an actionable, dependency-ordered tasks.md for the feature based on available design artifacts.
- ▌ Speckit Analyze · pmndrsPerform a non-destructive cross-artifact consistency and quality analysis across spec.md, plan.md, and tasks.md after task generation.
- ▌ Speckit Clarify · pmndrsIdentify underspecified areas in the current feature spec by asking up to 5 highly targeted clarification questions and encoding answers back into the spec.
- ▌ Speckit Specify · pmndrsCreate or update the feature specification from a natural language feature description.
- ▌ Speckit Checklist · pmndrsGenerate a custom checklist for the current feature based on user requirements.
- ▌
- ▌
- ▌
- ▌ Speckit Constitution · pmndrsCreate or update the project constitution from interactive or provided principle inputs, ensuring all dependent templates stay in sync.
- ▌ Speckit Taskstoissues · pmndrsConvert existing tasks into actionable, dependency-ordered GitHub issues for the feature based on available design artifacts.
- ▌ Koota · pmndrs bundleReal-time ECS state management for TypeScript and React. Use when the user mentions koota, ECS, entities, traits, queries, or building data-oriented applications.
- ▌ Math · pmndrsUse when writing or reviewing geometry, simulation, collision, navigation, culling, procedural generation, transforms, or other performance-sensitive algorithms with the npm `math` package, or when the user invokes /math. Not for routine arithmetic or textbook explanations.
- ▌ React Three Start · pmndrsBuild, explain, and modify @react-three/start apps that use file-based React Three Fiber scene and DOM composition. Use when working in a react-three-start project, when the user mentions @react-three/start, react-three-start, R3F app structure, .scene.tsx/.dom.tsx files, Scene/Dom slots, wrappers, start.config.ts, or the react-three-start/r3s CLI.
- ▌ Vitexec · pmndrs bundleUse this skill when an AI agent needs to inspect, verify, debug, or profile a live Vite app by running temporary snippets inside the browser page and reading browser logs or captured artifacts. Use for client state after interactions, imported app modules, DOM state, human-like input, canvas/WebGL/Three.js state, screenshots, videos, CPU/network/performance/heap analysis, WebXR/Three.js XR with IWER, and runtime-only behavior without editing app files.