#447 by GitHub stars
majidmanzarpour/threejs-game-skills
Agent skills for building playable, polished Three.js browser games with gameplay, AAA-style graphics, UI, QA, and optional AI-generated 3D, image, and audio assets.
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
skills/threejs-3d-generator/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
8286774b22a2 → 8286774b22a2
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 8286774b22a2
No earlier version was observed for comparison.
skills/threejs-aaa-graphics-builder/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Network or broad shell
8286774b22a2 → 8286774b22a2
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 8286774b22a2
No earlier version was observed for comparison.
skills/threejs-audio-generator/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
8286774b22a2 → 8286774b22a2
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 8286774b22a2
No earlier version was observed for comparison.
skills/threejs-debug-profiler/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
8286774b22a2 → 8286774b22a2
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 8286774b22a2
No earlier version was observed for comparison.
skills/threejs-game-director/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Network or broad shell
8286774b22a2 → 8286774b22a2
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 8286774b22a2
No earlier version was observed for comparison.
skills/threejs-game-ui-designer/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
8286774b22a2 → 8286774b22a2
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 8286774b22a2
No earlier version was observed for comparison.
skills/threejs-gameplay-systems/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Network or broad shell
8286774b22a2 → 8286774b22a2
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 8286774b22a2
No earlier version was observed for comparison.
skills/threejs-image-generator/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Network or broad shell
8286774b22a2 → 8286774b22a2
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 8286774b22a2
No earlier version was observed for comparison.
skills/threejs-qa-release/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Network or broad shell
8286774b22a2 → 8286774b22a2
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 8286774b22a2
No earlier version was observed for comparison.
Verified commit 8286774b22a2566bf894dbc825825c16921866af
git clone --filter=blob:none --no-checkout https://github.com/majidmanzarpour/threejs-game-skills.git .hotskills/majidmanzarpour-threejs-game-skills && git -C .hotskills/majidmanzarpour-threejs-game-skills checkout --detach 8286774b22a2566bf894dbc825825c16921866af
# Copy each selected skill directory from .hotskills/majidmanzarpour-threejs-game-skills into .agents/skills/<skill-name>/Heat
5.9- Star growth, last 7 daysAhead of 91% of tracked repositories
- Star growth, last 24 hoursAhead of 91% of tracked repositories
- Rank movement, last 7 daysAhead of 42% of tracked repositories
- Commits, last 30 daysAhead of 0% of tracked repositories
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekAhead of 0% of tracked repositories
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
Individual skills in this repository
- threejs-3d-generator
skills/threejs-3d-generator - threejs-aaa-graphics-builder
skills/threejs-aaa-graphics-builder - threejs-audio-generator
skills/threejs-audio-generator - threejs-debug-profiler
skills/threejs-debug-profiler - threejs-game-director
skills/threejs-game-director - threejs-game-ui-designer
skills/threejs-game-ui-designer - threejs-gameplay-systems
skills/threejs-gameplay-systems - threejs-image-generator
skills/threejs-image-generator - threejs-qa-release
skills/threejs-qa-release
How it works
threejs-3d-generator
When your agent uses it
Generate, texture, rig, animate, stylize, convert, and download 3D assets for Three.js games via the Tripo API. Use for text-to-3D, image-to-3D, game-ready GLB/FBX, characters, creatures, buildings, props, weapons, terrain, auto-rigging, animation retargeting, model texturing, voxel/LEGO stylization, and low-poly conversion. Pair with threejs-image-generator for concept and texture references first.
What it loads into context
Frontmatter
114 tokensAlways available to the agent
SKILL.md
2,420 tokensWhen the skill is activated
Reference documents
5,614 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- References
- API key
- Commands
- Resuming and Recovery
- Rigging and animation
- Quality
Scripts executed separately
scripts/threejs_3d_asset.py
Files
SKILL.mdcore10,441 bytesSKILL.mdcore10,441 bytesSKILL.mdcore10,441 bytesSKILL.mdcore10,441 bytesSKILL.mdcore10,441 bytesSKILL.mdcore10,441 bytesSKILL.mdcore10,441 bytesagents/openai.yamlasset277 bytesreferences/api-notes.mddoc14,204 bytesreferences/image-generator-workflows.mddoc2,199 bytesreferences/threejs-integration.mddoc5,974 bytesscripts/threejs_3d_asset.pyruns72,710 bytes
Read SKILL.md
# Three.js 3D Generator
Production 3D assets for browser games, prepared for Three.js. Provider: Tripo.
Resolve `<this-skill-dir>` from the actual loaded skill file. Resolve sibling skills beside it first, then use the runner's discovered paths. Do not mix installed versions or assume a particular home directory.
## References
| File | Read it when |
| --- | --- |
| `references/api-notes.md` | endpoint and task decisions, model versions, polling, postprocess, conversion, rigging, animation, downloads |
| `references/threejs-integration.md` | importing outputs into a browser game, GLB/FBX loading, root motion, animation wiring |
| `references/image-generator-workflows.md` | pairing `threejs-image-generator` for concepts, textures, UI art, or image-to-3D inputs |
View the complete source on GitHubthreejs-aaa-graphics-builder
When your agent uses it
Upgrade Three.js games from prototype visuals to premium browser graphics: art-direction critique, procedural model building, material and texture libraries, world prop kits, shaders, VFX, lighting and render pipeline, LOD and instancing, render budgets, and a 10-category visual scorecard. Use when screenshots still look basic or the user asks for premium, AAA, high-fidelity, showcase, or less-basic graphics.
What it loads into context
Frontmatter
96 tokensAlways available to the agent
SKILL.md
915 tokensWhen the skill is activated
Reference documents
9,156 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- References
- Core rule
- Workflow
- Asset sourcing
- Report
Files
SKILL.mdcore4,468 bytesSKILL.mdcore4,468 bytesagents/openai.yamlasset268 bytesassets/scorecard-anchors/scene-1.jpgasset30,465 bytesassets/scorecard-anchors/scene-2.jpgasset62,757 bytesassets/scorecard-anchors/scene-3.jpgasset67,905 bytesreferences/authoring-recipes.mddoc10,889 bytesreferences/shader-cookbook.mddoc15,881 bytesreferences/technical-art.mddoc5,445 bytesreferences/visual-scorecard.mddoc5,972 bytes
Read SKILL.md
# Three.js AAA Graphics Builder
Own the production graphics pass: turn basic screenshots into authored, high-density, performance-aware visuals.
## References
| File | Read it when |
| --- | --- |
| `references/visual-scorecard.md` | scoring visuals or making any premium/AAA/showcase claim |
| `references/authoring-recipes.md` | building hero, obstacle, reward, world-kit, or prop models; changing lighting, tone mapping, shadows, fog, post, or graphics architecture |
| `references/technical-art.md` | render budgets, material kits, VFX systems, instancing/LOD, imported asset cleanup, anything that could affect browser performance |
| `references/shader-cookbook.md` | custom shaders, `onBeforeCompile`, skies, or post-processing; use recipes as tested starting points and verify them against the project's Three.js version |
For a broad "still looks basic" or premium pass, read all four before implementing. A narrow graphics edit loads only its relevant references and checks; the requested style and scope override recipe defaults.View the complete source on GitHubthreejs-audio-generator
When your agent uses it
Generate, convert, clean, and integrate audio for Three.js browser games with ElevenLabs: sound effects, looping ambience, music tracks and loops (menu, gameplay, boss, victory/defeat stingers), UI sounds, impact/weapon/vehicle audio, creature and boss stingers, announcer and dialogue TTS, voice conversion from a scratch performance, voice cleanup, audio manifests, and Web Audio integration.
What it loads into context
Frontmatter
94 tokensAlways available to the agent
SKILL.md
1,387 tokensWhen the skill is activated
Reference documents
1,408 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Reference
- When to use
- API key
- Commands
- Defaults
- Recovery and Coordination
- Report
Scripts executed separately
scripts/threejs_audio_asset.py
Files
SKILL.mdcore5,917 bytesSKILL.mdcore5,917 bytesSKILL.mdcore5,917 bytesSKILL.mdcore5,917 bytesagents/openai.yamlasset267 bytesreferences/audio-workflows.mddoc6,102 bytesscripts/threejs_audio_asset.pyruns12,721 bytes
Read SKILL.md
# Three.js Audio Generator
Game-ready audio for Three.js projects: SFX, music, voice work, cleanup, and runtime integration. Provider: ElevenLabs.
Resolve `<this-skill-dir>` from the actual loaded skill file. Resolve sibling skills beside it first, then use the runner's discovered paths. Do not mix installed versions or assume a particular home directory.
## Reference
`references/audio-workflows.md` — the audio matrix, prompt patterns, generation, music, and voice strategy, Web Audio manager shape, and runtime failure modes. Read it before planning a game's audio, generating a batch, wiring runtime playback, or converting voices.
## When to use
SFX (jumps, hits, weapons, explosions, pickups, collisions, UI clicks) · music (menu and gameplay loops, boss themes, intensity layers, win/lose stingers) · ambience (wind, rain, city bed, engine hum, room tone, arena beds) · voice (announcer barks, boss lines, tutorial prompts, menu narration) · voice conversion from a scratch performance when timing and acting matter · cleanup and isolation before conversion or final use · Web Audio integration with loading, looping, manifests, volume groups, pause/resume, and gesture unlock.
View the complete source on GitHubthreejs-debug-profiler
When your agent uses it
Debug and profile Three.js browser games: blank canvases, render and runtime bugs, asset and audio loading, animation, resize, mobile input, plus performance profiling of draw calls, triangles, textures, memory, shader and post-processing cost, and bundle size.
What it loads into context
Frontmatter
63 tokensAlways available to the agent
SKILL.md
425 tokensWhen the skill is activated
Reference documents
1,301 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Reference
- Debug
- Profile
- Report
Files
SKILL.mdcore2,050 bytesagents/openai.yamlasset240 bytesreferences/debug-playbook.mddoc6,362 bytes
Read SKILL.md
# Three.js Debug Profiler
Find root causes and optimize measured bottlenecks without breaking playability.
Follow the changed behavior's scope. Reuse the lead's existing reproduction and evidence; verify the affected path after a fix. A passing focused check only needs broader testing when shared behavior changed or an unresolved risk warrants it. Return measurements and defects to the lead for the consolidated verification pass.
## Reference
`references/debug-playbook.md` — ordered triage for blank canvas, asset and audio loading, loop/animation/physics, input and mobile, the profiling sequence, and the `__THREE_GAME_DIAGNOSTICS__` shape. Read it when debugging or profiling anything non-obvious.
## Debug
Reproduce first, with the same command and URL the user had, and read the console, page, and network errors. Find the module that owns the failure (renderer, loop, camera, scene, assets, audio, input, physics, UI, or base path), fix the root cause there, and retest the exact broken path. The playbook's triage order covers the common causes, such as more than one active loop, a canvas whose display size doesn't match its drawing buffer, and wrong delta units.
View the complete source on GitHubthreejs-game-director
When your agent uses it
Entrypoint for building, upgrading, and finishing Three.js browser games. Routes work across the sibling threejs-* skills for gameplay, graphics, UI, 3D/image/audio asset generation, debugging, and release. Use for any request to build, upgrade, polish, or ship a Three.js game as a whole, at any scope from a small arcade prototype to a premium release.
What it loads into context
Frontmatter
89 tokensAlways available to the agent
SKILL.md
1,831 tokensWhen the skill is activated
Reference documents
2,522 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Scope
- Working style
- Sibling skills
- Continuity and early quality
- The bar for premium work
- Asset sourcing
- Verification ownership
- Getting started and checking output
- Final response
Scripts executed separately
scripts/check_evidence.pyscripts/probe_asset_credentials.sh
Files
SKILL.mdcore8,968 bytesSKILL.mdcore8,968 bytesSKILL.mdcore8,968 bytesagents/openai.yamlasset258 bytesreferences/asset-recovery.mddoc5,229 bytesreferences/evidence-manifest.mddoc4,314 bytesreferences/workflow-evaluations.mddoc3,198 bytesscripts/check_evidence.pyruns15,507 bytesscripts/probe_asset_credentials.shruns894 bytes
Read SKILL.md
# Three.js Game Director
Own the end-to-end game outcome: a playable loop first, then the visual and interface depth the request actually asked for, then browser evidence that it works.
## Scope
The user's own words set the bar. "Make a small arcade game" is not a request for the full premium pipeline — build the good version of what was asked and stop. "Premium", "AAA", "polished", "high-fidelity", "showcase", "release-ready", or "less basic" *is* that request, and at that bar a first playable slice is not done. "Less basic" specifically means the current visual level was rejected; treat it as the premium bar.
The user's scope, art style, constraints, and prior decisions override skill defaults. A narrow edit to a premium game remains a narrow edit. Make routine implementation calls yourself and complete authorized work before seeking a decision that only affects a later step. Ask only when a missing choice materially changes the requested result; continue independent work meanwhile. Until the requested bar is met, don't end a turn with a summary that announces the next step, an offer to continue, or a list of decisions that don't block the work; take the next step instead. End the turn when the work is done, or when only the user can unblock it.
## Working style
Say in one sentence what you're about to do before your first tool call. While working, give a short update when you finish a phase, find something important, or change direction. Lead the final response with the outcome.
View the complete source on GitHubthreejs-game-ui-designer
When your agent uses it
Design premium Three.js game UI: HUDs, menus, overlays, pause/win/lose screens, settings, icon controls, touch UI, typography, responsive layout, safe areas, text fit, and UI/world cohesion.
What it loads into context
Frontmatter
57 tokensAlways available to the agent
SKILL.md
504 tokensWhen the skill is activated
Reference documents
1,077 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Reference
- Workflow
- What goes wrong
- Report
Files
SKILL.mdcore2,368 bytesagents/openai.yamlasset248 bytesreferences/ui-patterns.mddoc5,230 bytes
Read SKILL.md
# Three.js Game UI Designer
Make game UI intentional, readable, responsive, and specific to the genre.
Preserve the user's requested scope and style. For a narrow HUD fix, retain the existing design and check the changed state and target viewports. For a complete UI pass, use the full workflow below. Mobile input is required when mobile is a target, not because a desktop-only game has UI.
## Reference
`references/ui-patterns.md` — hierarchy and required states, HUD zones, menus, touch controls, responsive constraints, style cohesion, and state wiring. Read it before designing HUDs, menus, overlays, touch controls, or responsive layout.
Load `threejs-image-generator` when logos, icons, GUI art, faction marks, menu backgrounds, or 2D HUD assets would raise the quality. `threejs-3d-generator` only for genuine 3D menu objects and diegetic props, not flat HUD elements.
## Workflow
View the complete source on GitHubthreejs-gameplay-systems
When your agent uses it
Build and iterate playable Three.js game systems: starter scaffold, architecture, design briefs, core loops, level and encounter design, entities, input, camera, collision and physics, scoring, objectives, and game feel. Use for first playable slices, new Vite/TypeScript/Three.js setups, level/arena/track/wave/hole/puzzle design, combat encounters, difficulty tuning, and juice.
What it loads into context
Frontmatter
94 tokensAlways available to the agent
SKILL.md
1,141 tokensWhen the skill is activated
Reference documents
5,289 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- References
- Start here
- Design first
- Build
- Stack
- What goes wrong
- Report
Scripts executed separately
assets/threejs-vite-game/package.jsonassets/threejs-vite-game/playwright.config.tsassets/threejs-vite-game/scripts/inspect-threejs-canvas.mjsassets/threejs-vite-game/src/core/InputController.tsassets/threejs-vite-game/src/core/Loop.tsassets/threejs-vite-game/src/core/Renderer.tsassets/threejs-vite-game/src/entities/Pickup.tsassets/threejs-vite-game/src/entities/Player.tsassets/threejs-vite-game/src/game/Game.tsassets/threejs-vite-game/src/main.tsassets/threejs-vite-game/src/systems/AudioSystem.tsassets/threejs-vite-game/src/systems/CameraRig.tsassets/threejs-vite-game/src/systems/CollisionSystem.tsassets/threejs-vite-game/src/systems/DebugTools.tsassets/threejs-vite-game/src/systems/Hud.tsassets/threejs-vite-game/src/utils/dispose.tsassets/threejs-vite-game/src/utils/random.tsassets/threejs-vite-game/src/vite-env.d.tsassets/threejs-vite-game/tests/bot-playtest.template.tsassets/threejs-vite-game/tests/visual-regression.template.tsassets/threejs-vite-game/tests/visual.spec.tsassets/threejs-vite-game/vite.config.tsscripts/create_threejs_game.py
Files
SKILL.mdcore5,525 bytesSKILL.mdcore5,525 bytesagents/openai.yamlasset244 bytesassets/threejs-vite-game/.gitignoreasset61 bytesassets/threejs-vite-game/index.htmlasset1,119 bytesassets/threejs-vite-game/package-lock.jsonasset34,006 bytesassets/threejs-vite-game/package.jsonruns692 bytesassets/threejs-vite-game/playwright.config.tsruns1,723 bytesassets/threejs-vite-game/scripts/inspect-threejs-canvas.mjsruns24,769 bytesassets/threejs-vite-game/src/core/InputController.tsruns4,944 bytesassets/threejs-vite-game/src/core/Loop.tsruns800 bytesassets/threejs-vite-game/src/core/Renderer.tsruns1,243 bytesassets/threejs-vite-game/src/entities/Pickup.tsruns1,842 bytesassets/threejs-vite-game/src/entities/Player.tsruns2,803 bytesassets/threejs-vite-game/src/game/Game.tsruns11,504 bytesassets/threejs-vite-game/src/main.tsruns336 bytesassets/threejs-vite-game/src/styles.cssasset2,904 bytesassets/threejs-vite-game/src/systems/AudioSystem.tsruns1,595 bytesassets/threejs-vite-game/src/systems/CameraRig.tsruns940 bytesassets/threejs-vite-game/src/systems/CollisionSystem.tsruns669 bytesassets/threejs-vite-game/src/systems/DebugTools.tsruns1,023 bytesassets/threejs-vite-game/src/systems/Hud.tsruns1,407 bytesassets/threejs-vite-game/src/utils/dispose.tsruns870 bytesassets/threejs-vite-game/src/utils/random.tsruns549 bytesassets/threejs-vite-game/src/vite-env.d.tsruns1,342 bytesassets/threejs-vite-game/tests/bot-playtest.template.tsruns5,149 bytesassets/threejs-vite-game/tests/visual-regression.template.tsruns2,816 bytesassets/threejs-vite-game/tests/visual.spec.tsruns3,081 bytesassets/threejs-vite-game/tsconfig.jsonasset479 bytesassets/threejs-vite-game/vite.config.tsruns298 bytesreferences/game-feel.mddoc12,909 bytesreferences/genre-design.mddoc3,975 bytesreferences/physics-engine-selection.mddoc4,555 bytesscripts/create_threejs_game.pyruns2,576 bytes
Read SKILL.md
# Three.js Gameplay Systems
Create or evolve a playable browser game loop with clear ownership, responsive controls, deterministic update order, and a space that shapes player decisions.
Resolve `<this-skill-dir>` and local references from the actual loaded skill file; resolve sibling skills beside it before using runner-discovered alternatives.
## References
| File | Read it when |
| --- | --- |
| `references/game-feel.md` | tuning feel, juice, impact, hitstop, screenshake, or claiming polished gameplay |
| `references/genre-design.md` | designing levels, arenas, tracks, waves, holes, puzzles, encounters, or difficulty curves |
| `references/physics-engine-selection.md` | adding or changing physics, collision-heavy gameplay, vehicles, rolling balls, character controllers, sensors, moving platforms |
View the complete source on GitHubthreejs-image-generator
When your agent uses it
Generate and edit 2D image assets for Three.js games with Google's Gemini image API: concept sheets, image-to-3D inputs, texture and material references, sky and background plates, decals, logos, icons, GUI art, title and menu art, and marketing stills. Also use for direct image editing when the user supplies an image path.
What it loads into context
Frontmatter
81 tokensAlways available to the agent
SKILL.md
1,204 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to use
- API key
- Commands
- Prompt patterns
- Integration
- Recovery
- Report
Scripts executed separately
scripts/generate_image.py
Files
SKILL.mdcore5,412 bytesSKILL.mdcore5,412 bytesSKILL.mdcore5,412 bytesSKILL.mdcore5,412 bytesagents/openai.yamlasset272 bytesscripts/generate_image.pyruns6,843 bytes
Read SKILL.md
# Three.js Image Generator
The 2D layer for Three.js games: concepts, textures, decals, UI art, and the source images that feed `threejs-3d-generator` for image-to-3D.
Resolve `<this-skill-dir>` from the actual loaded skill file. Resolve sibling skills beside it first, then use the runner's discovered paths. Do not mix installed versions or assume a particular home directory.
## When to use
- Image-to-3D references: characters, creatures, buildings, ships, cars, weapons, props, pickups, terrain modules.
- Texture and material references: terrain, road, rock, sand, metal, sci-fi panels, trim sheets, decals, hazard labels, signs.
- Environment plates: skies, backdrops, city horizons, nebulas, menu backgrounds, parallax layers.
- UI art: logos, faction marks, icons, item cards, ability badges, cockpit decals, GUI panels, title art.
- Editing an existing image: style variants, cleanup, palette alignment, concept refinement.
View the complete source on GitHubthreejs-qa-release
When your agent uses it
Verify and release Three.js browser games: playtest QA, automated bot playtests, mobile and responsive checks, production builds, static-hosting base paths, debug gating, bundle review, screenshots, visual regression baselines, canvas-pixel inspection with measured metrics, and release risk reports.
What it loads into context
Frontmatter
68 tokensAlways available to the agent
SKILL.md
965 tokensWhen the skill is activated
Reference documents
2,454 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- References
- QA pass
- Canvas inspector
- Release pass
- Report
Scripts executed separately
scripts/inspect-threejs-canvas.mjs
Files
SKILL.mdcore4,610 bytesSKILL.mdcore4,610 bytesagents/openai.yamlasset247 bytesreferences/playtest-bot.mddoc3,957 bytesreferences/release-checks.mddoc2,658 bytesreferences/visual-test-harness.mddoc5,197 bytesscripts/inspect-threejs-canvas.mjsruns24,769 bytes
Read SKILL.md
# Three.js QA Release
Prove the game works the way a player will meet it, then prepare a shippable build with its known risks.
Resolve `<this-skill-dir>` and local references from the actual loaded skill file; resolve sibling skills beside it before using runner-discovered alternatives. Run the inspector from the game project with its npm dependencies installed.
## References
| File | Read it when |
| --- | --- |
| `references/release-checks.md` | mobile verification, production release, performance evidence, or release-failure traps |
| `references/visual-test-harness.md` | screenshot baselines, visual regression, UI or generated-asset regression protection |
| `references/playtest-bot.md` | release-ready gameplay claims, difficulty and fairness checks, or a loop never driven by scripted input |
View the complete source on GitHubSkills included
- threejs-3d-generator
- threejs-aaa-graphics-builder
- threejs-audio-generator
- threejs-debug-profiler
- threejs-game-director
- threejs-game-ui-designer
- threejs-gameplay-systems
- threejs-image-generator
- threejs-qa-release
Repository facts
- License
- MIT
- Created
- Jun 14, 2026
- Last pushed
- Sep 28, 2026
- Forks
- 268
- Open issues
- 2
- Project activity
- Active
Rank over the last 12 weeks
Now #447 · best #383 · down 47 in 30 days
- #438 on Nov 1
- #439 on Nov 2
- #442 from Nov 3 to Nov 4
- #443 on Nov 5
- #445 on Nov 6
- #447 since Nov 7
77 earlier periods
- #482 on Aug 2
- #480 on Aug 8
- #482 on Aug 9
- #499 on Aug 10
- #495 on Aug 11
- #492 on Aug 12
- #495 on Aug 13
- #496 on Aug 14
- #477 on Aug 15
- #484 on Aug 16
- #488 on Aug 17
- #499 on Aug 18
- #496 on Aug 19
- #495 on Aug 20
- #491 on Aug 21
- #476 on Aug 22
- #495 from Aug 23 to Aug 24
- #503 on Aug 25
- #490 on Aug 26
- #501 on Aug 27
- #497 on Aug 28
- #487 on Aug 29
- #475 on Aug 30
- #495 on Aug 31
- #502 on Sep 1
- #498 on Sep 2
- #505 on Sep 3
- #493 on Sep 4
- #457 on Sep 5
- #442 on Sep 6
- #437 on Sep 7
- #438 on Sep 8
- #431 on Sep 9
- #427 on Sep 10
- #426 on Sep 11
- #419 on Sep 12
- #416 on Sep 13
- #424 from Sep 14 to Sep 15
- #426 on Sep 16
- #420 on Sep 17
- #426 on Sep 18
- #417 on Sep 19
- #424 on Sep 20
- #425 on Sep 21
- #433 on Sep 22
- #422 on Sep 23
- #415 from Sep 24 to Sep 25
- #409 on Sep 26
- #421 on Sep 27
- #403 from Sep 28 to Sep 29
- #398 on Sep 30
- #396 on Oct 1
- #397 on Oct 2
- #386 on Oct 3
- #383 on Oct 4
- #390 from Oct 5 to Oct 6
- #394 on Oct 7
- #400 on Oct 8
- #411 on Oct 9
- #400 on Oct 10
- #402 on Oct 11
- #410 on Oct 12
- #405 on Oct 13
- #408 on Oct 14
- #410 on Oct 15
- #416 on Oct 16
- #408 on Oct 17
- #412 on Oct 18
- #415 on Oct 19
- #419 on Oct 20
- #424 on Oct 21
- #422 from Oct 22 to Oct 23
- #415 on Oct 24
- #434 on Oct 25
- #439 on Oct 28
- #438 on Oct 29
- #437 from Oct 30 to Oct 31
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 2, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 17 notes
skills/threejs-3d-generator/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/threejs-3d-generator/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/threejs-3d-generator/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/threejs-3d-generator/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/threejs-3d-generator/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/threejs-3d-generator/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/threejs-aaa-graphics-builder/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/threejs-audio-generator/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/threejs-audio-generator/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/threejs-audio-generator/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/threejs-game-director/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/threejs-game-director/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/threejs-gameplay-systems/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/threejs-image-generator/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/threejs-image-generator/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/threejs-image-generator/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/threejs-qa-release/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- No dangerous shell commands
- 282 network referencesin 12 files: threejs-gameplay-systems/assets/threejs-vite-game/package-lock.json:24 threejs-audio-generator/scripts/threejs_audio_asset.py:19 threejs-3d-generator/scripts/threejs_3d_asset.py:8 and 9 more
- 1 obfuscation signalin 1 file: threejs-image-generator/scripts/generate_image.py:153
- No instruction overrides
- 29 executable scriptsin 29 files: threejs-3d-generator/scripts/threejs_3d_asset.py:1 threejs-audio-generator/scripts/threejs_audio_asset.py:1 threejs-game-director/scripts/check_evidence.py:1 and 26 more
- 81 references to secretsin 8 files: threejs-3d-generator/scripts/threejs_3d_asset.py:107 threejs-audio-generator/scripts/threejs_audio_asset.py:32 threejs-image-generator/scripts/generate_image.py:14 and 5 more
- No requests to vote in Hot
Show all 393 signals by file
skills/threejs-3d-generator/SKILL.md
skills/threejs-3d-generator/references/api-notes.md
skills/threejs-3d-generator/references/threejs-integration.md
- Network accessline 57
- `FBXLoader` lives at `three/addons/loaders/FBXLoader.js` and imports `fflate`; bundler projects get it from npm automatically, but import-map/CDN pages must map it (e.g. `"fflate": "https://cdn.jsdelivr.net/npm/fflate@0.8.2/esm/browser.js
skills/threejs-3d-generator/scripts/threejs_3d_asset.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 8
from email.utils import parsedate_to_datetime import hashlib from http.client import IncompleteRead - Network accessline 9
import hashlib from http.client import IncompleteRead import json - Network accessline 10
from http.client import IncompleteRead - Network accessline 21
BASE_URL = "https://api.tripo3d.ai/v2/openapi" - Access to secretsline 107
[Credential-related source omitted] - Access to secretsline 109
[Credential-related source omitted] - Access to secretsline 178
[Credential-related source omitted] - Access to secretsline 181
[Credential-related source omitted] - Network accessline 185
def fetch() -> dict[str, Any]: - Network accessline 205
return safe_get(fetch) if method == "GET" else fetch() - Access to secretsline 322
[Credential-related source omitted] - Access to secretsline 343
[Credential-related source omitted] - Access to secretsline 365
[Credential-related source omitted] - Access to secretsline 372
[Credential-related source omitted] - Access to secretsline 383
[Credential-related source omitted] - Access to secretsline 401
[Credential-related source omitted] - Access to secretsline 426
[Credential-related source omitted] - Access to secretsline 445
[Credential-related source omitted] - Access to secretsline 446
[Credential-related source omitted] - Access to secretsline 457
[Credential-related source omitted] - Access to secretsline 458
[Credential-related source omitted] - Access to secretsline 467
[Credential-related source omitted] - Access to secretsline 470
[Credential-related source omitted] - Access to secretsline 694
[Credential-related source omitted] - Access to secretsline 698
[Credential-related source omitted] - Access to secretsline 700
[Credential-related source omitted] - Access to secretsline 709
[Credential-related source omitted] - Access to secretsline 717
[Credential-related source omitted] - Access to secretsline 718
[Credential-related source omitted] - Access to secretsline 722
[Credential-related source omitted] - Access to secretsline 731
[Credential-related source omitted] - Access to secretsline 744
[Credential-related source omitted] - Access to secretsline 745
[Credential-related source omitted] - Access to secretsline 749
[Credential-related source omitted] - Access to secretsline 750
[Credential-related source omitted] - Access to secretsline 754
[Credential-related source omitted] - Access to secretsline 755
[Credential-related source omitted] - Access to secretsline 775
[Credential-related source omitted] - Access to secretsline 901
[Credential-related source omitted] - Access to secretsline 902
[Credential-related source omitted] - Access to secretsline 928
[Credential-related source omitted] - Access to secretsline 943
[Credential-related source omitted] - Access to secretsline 946
[Credential-related source omitted] - Access to secretsline 974
[Credential-related source omitted] - Access to secretsline 975
[Credential-related source omitted] - Access to secretsline 985
[Credential-related source omitted] - Access to secretsline 989
[Credential-related source omitted] - Access to secretsline 1031
[Credential-related source omitted] - Access to secretsline 1040
[Credential-related source omitted] - Access to secretsline 1109
[Credential-related source omitted] - Access to secretsline 1111
[Credential-related source omitted] - Access to secretsline 1123
[Credential-related source omitted] - Access to secretsline 1144
[Credential-related source omitted] - Access to secretsline 1154
[Credential-related source omitted] - Access to secretsline 1380
[Credential-related source omitted] - Access to secretsline 1381
[Credential-related source omitted] - Access to secretsline 1398
[Credential-related source omitted]
skills/threejs-audio-generator/SKILL.md
skills/threejs-audio-generator/references/audio-workflows.md
skills/threejs-audio-generator/scripts/threejs_audio_asset.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 19
BASE_URL = "https://api.elevenlabs.io/v1" - Access to secretsline 32
[Credential-related source omitted] - Access to secretsline 33
[Credential-related source omitted] - Access to secretsline 35
[Credential-related source omitted] - Network accessline 54
timeout: int = 300, ) -> bytes: req = urllib.request.Request(build_url(path, query), data=body, method=method) - Network accessline 55
) -> bytes: req = urllib.request.Request(build_url(path, query), data=body, method=method) req.add_header("xi-api-key", key) - Network accessline 56
req = urllib.request.Request(build_url(path, query), data=body, method=method) - Network accessline 59
req.add_header(name, value) try: with urllib.request.urlopen(req, timeout=timeout) as resp: - Network accessline 60
try: with urllib.request.urlopen(req, timeout=timeout) as resp: return resp.read() - Network accessline 61
with urllib.request.urlopen(req, timeout=timeout) as resp: - Access to secretsline 77
[Credential-related source omitted] - Access to secretsline 128
[Credential-related source omitted] - Access to secretsline 154
[Credential-related source omitted] - Access to secretsline 155
[Credential-related source omitted] - Access to secretsline 157
[Credential-related source omitted] - Access to secretsline 259
[Credential-related source omitted] - Access to secretsline 277
[Credential-related source omitted]
skills/threejs-game-director/SKILL.md
- Network accessline 76
python3 <threejs-gameplay-systems-skill-dir>/scripts/create_threejs_game.py ./my-game node <threejs-qa-release-skill-dir>/scripts/inspect-threejs-canvas.mjs --manifest artifacts/evidence.json --url http://127.0.0.1:5188 - Network accessline 77
node <threejs-qa-release-skill-dir>/scripts/inspect-threejs-canvas.mjs --manifest artifacts/evidence.json --url http://127.0.0.1:5188
skills/threejs-game-director/references/evidence-manifest.md
skills/threejs-game-director/scripts/check_evidence.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/threejs-game-director/scripts/probe_asset_credentials.sh
skills/threejs-gameplay-systems/assets/threejs-vite-game/package-lock.json
- Network accessline 24
"node_modules/@dimforge/rapier3d-compat": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/@dimforge/rapier3d-compat/-/rapier3d-compat-0.12.0.tgz", - Network accessline 25
"version": "0.12.0", "resolved": "https://registry.npmjs.org/@dimforge/rapier3d-compat/-/rapier3d-compat-0.12.0.tgz", "integrity": "sha512-uekIGetywIgopfD97oDL5PfeezkFpNhwlzlaEYNOA0N6ghdsOvh/HYjSMek5Q2O1PYvRSDFcqFVJl4r4ZBwOow==" - Network accessline 26
"resolved": "https://registry.npmjs.org/@dimforge/rapier3d-compat/-/rapier3d-compat-0.12.0.tgz", - Network accessline 31
"node_modules/@emnapi/wasi-threads": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.1.tgz", - Network accessline 32
"version": "1.2.1", "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.1.tgz", "integrity": "sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==", - Network accessline 33
"resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.1.tgz", - Network accessline 42
"node_modules/@napi-rs/wasm-runtime": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.4.tgz", - Network accessline 43
"version": "1.1.4", "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.4.tgz", "integrity": "sha512-3NQNNgA1YSlJb/kMH1ildASP9HW7/7kYnRI2szWJaofaS1hWmbGI4H+d3+22aGzXXN9IJ+n+GiFVcGipJP18ow==", - Network accessline 44
"resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.4.tgz", - Network accessline 52
"funding": { "type": "github", "url": "https://github.com/sponsors/Brooooooklyn" - Network accessline 53
"type": "github", "url": "https://github.com/sponsors/Brooooooklyn" }, - Network accessline 54
"url": "https://github.com/sponsors/Brooooooklyn" - Network accessline 61
"node_modules/@oxc-project/types": { "version": "0.130.0", "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.130.0.tgz", - Network accessline 62
"version": "0.130.0", "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.130.0.tgz", "integrity": "sha512-ibD2usx9JRu7f5pu2tMKMI4cpA4NgXJQoYRP4pQ7Pxmn1l6k/53qWtQWZayhYy3X4QZkt90Ot+mJEaeXouio6Q==", - Network accessline 63
"resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.130.0.tgz", - Network accessline 66
"license": "MIT", "funding": { "url": "https://github.com/sponsors/Boshen" - Network accessline 67
"funding": { "url": "https://github.com/sponsors/Boshen" } - Network accessline 68
"url": "https://github.com/sponsors/Boshen" - Network accessline 71
"node_modules/@playwright/test": { "version": "1.60.0", "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.60.0.tgz", - Network accessline 72
"version": "1.60.0", "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.60.0.tgz", "integrity": "sha512-O71yZIbAh/PxDMNGns37GHBIfrVkEVyn+AXyIa5dOTfb4/xNvRWV+Vv/NMbNCtODB/pO7vLlF2OTmMVLhmr7Ag==", - Network accessline 73
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.60.0.tgz", - Network accessline 87
"node_modules/@rolldown/binding-android-arm64": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.1.tgz", - Network accessline 88
"version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.1.tgz", "integrity": "sha512-fJI3I0r3C3Oj/zdBCpaCmBRZYf07xpaq4yCfDDoSFm+beWNzbIl26puW8RraUdugoJw/95zerNOn6ja - Network accessline 89
"resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.1.tgz", - Network accessline 104
"node_modules/@rolldown/binding-darwin-arm64": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.1.tgz", - Network accessline 105
"version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.1.tgz", "integrity": "sha512-cKnAhWEsV7TPcA/5EAteDp6KcJZBQ2G+BqE7zayMMi7kMvwRsbv7WT9aOnn0WNl4SKEIf43vjS31iUPu8 - Network accessline 106
"resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.1.tgz", - Network accessline 121
"node_modules/@rolldown/binding-darwin-x64": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.1.tgz", - Network accessline 122
"version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.1.tgz", "integrity": "sha512-YKrVwQjIRBPo+5G/u03wGjbdy4q7pyzCe93DK9VJ7zkVmeg8LJ7GbgsiHWdR4xSoe4CAXRD7Bcjgbtr64bkXN - Network accessline 123
"resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.1.tgz", - Network accessline 138
"node_modules/@rolldown/binding-freebsd-x64": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.1.tgz", - Network accessline 139
"version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.1.tgz", "integrity": "sha512-z/oBsREo46SsFqBwYtFe0kpJeBijAT48O/WXLI4suiCLBkr03RTtTJMCzSdDd2znlh8VJizL09XVkQgk8IZ - Network accessline 140
"resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.1.tgz", - Network accessline 155
"node_modules/@rolldown/binding-linux-arm-gnueabihf": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.1.tgz", - Network accessline 156
"version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.1.tgz", "integrity": "sha512-ik8q7GM11zxvYxFc2PeDcT6TBvhCQMaUxfph/M5l9sKuTs/Sjg3L+Byw0F7w0ZVLBZm - Network accessline 157
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.1.tgz", - Network accessline 172
"node_modules/@rolldown/binding-linux-arm64-gnu": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.1.tgz", - Network accessline 173
"version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.1.tgz", "integrity": "sha512-QoSx2EkyrrdZ6kcyE8stqZ62t0Yra8Fs5ia9lOxJrh6TMQJK7gQKmscdTHf7pOXKREKrVwOtJcQ - Network accessline 174
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.1.tgz", - Network accessline 189
"node_modules/@rolldown/binding-linux-arm64-musl": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.1.tgz", - Network accessline 190
"version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.1.tgz", "integrity": "sha512-uwNwFpwKeNiZawfAWBgg0VIztPTV3ihhh1vV334h9ivnNLorxnQMU6Fz8wG1Zb4Qh9LC1/Mkc - Network accessline 191
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.1.tgz", - Network accessline 206
"node_modules/@rolldown/binding-linux-ppc64-gnu": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.1.tgz", - Network accessline 207
"version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.1.tgz", "integrity": "sha512-zY1bul7OWr7DFBiJ++wofXvnr8B45ce3QsQUhKrIhXsygAh7bTkwyeM1bi1a2g5C/yC/N8TZyGD - Network accessline 208
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.1.tgz", - Network accessline 223
"node_modules/@rolldown/binding-linux-s390x-gnu": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.1.tgz", - Network accessline 224
"version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.1.tgz", "integrity": "sha512-0frlsT/f4Ft6I7SMESTKnF3cZsdicQn1dCMkF/jT9wDLE+gGoiQfv1nmT9e+s7s/fekvvy6tZM2 - Network accessline 225
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.1.tgz", - Network accessline 240
"node_modules/@rolldown/binding-linux-x64-gnu": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.1.tgz", - Network accessline 241
"version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.1.tgz", "integrity": "sha512-XABVmGp9Tg0WspTVvwduTc4fpqy6JnAUrSQe6OuyqD/03nI7r0O9OWUkMIwFrjKAIqolvqoA4ZrJppg - Network accessline 242
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.1.tgz", - Network accessline 257
"node_modules/@rolldown/binding-linux-x64-musl": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.1.tgz", - Network accessline 258
"version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.1.tgz", "integrity": "sha512-bV4fzswuzVcKD90o/VM6QqKxnxlDq0g2BISDLNVmxrnhpv1DDbyPhCIjYfvzYLV+MvkKKnQt2Q6AO - Network accessline 259
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.1.tgz", - Network accessline 274
"node_modules/@rolldown/binding-openharmony-arm64": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.1.tgz", - Network accessline 275
"version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.1.tgz", "integrity": "sha512-/Mh0Zhq3OP7fVs0kcQHZP6lZEthMGTaSf8UBQYSFEZDWGXXlEC+nJ6EqenaK2t4LBXMe3A+ - Network accessline 276
"resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.1.tgz", - Network accessline 291
"node_modules/@rolldown/binding-wasm32-wasi": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.1.tgz", - Network accessline 292
"version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.1.tgz", "integrity": "sha512-+1xc9X45l8ufsBAm6Gjvx2qDRIY9lTVt0cgWNcJ+1gdhXvkbxePA60yRTwSTuXL09CMhyJmjpV7E3Noyxbq - Network accessline 293
"resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.1.tgz", - Network accessline 310
"node_modules/@rolldown/binding-win32-arm64-msvc": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.1.tgz", - Network accessline 311
"version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.1.tgz", "integrity": "sha512-1D+UqZdfnuR+Jy1GgMJwi85bD40H21uNmOPRWQhw4oRSuolZ/B5rixZ45DK2KXOTCvmVCecau - Network accessline 312
"resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.1.tgz", - Network accessline 327
"node_modules/@rolldown/binding-win32-x64-msvc": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.1.tgz", - Network accessline 328
"version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.1.tgz", "integrity": "sha512-INAycaWuhlOK3wk4mRHGsdgwYWmd9cChdPdE9bwWmy6rn9VqVNYNFGhOdXrofXUxwHIncSiPNb8tN - Network accessline 329
"resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.1.tgz", - Network accessline 344
"node_modules/@rolldown/pluginutils": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.1.tgz", - Network accessline 345
"version": "1.0.1", "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.1.tgz", "integrity": "sha512-2j9bGt5Jh8hj+vPtgzPtl72j0yRxHAyumoo6TNfAjsLB04UtpSvPbPcDcBMxz7n+9CYB0c1GxQFxYRg2jimqGw==", - Network accessline 346
"resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.1.tgz", - Network accessline 351
"node_modules/@tweenjs/tween.js": { "version": "23.1.3", "resolved": "https://registry.npmjs.org/@tweenjs/tween.js/-/tween.js-23.1.3.tgz", - Network accessline 352
"version": "23.1.3", "resolved": "https://registry.npmjs.org/@tweenjs/tween.js/-/tween.js-23.1.3.tgz", "integrity": "sha512-vJmvvwFxYuGnF2axRtPYocag6Clbb5YS7kLL+SO/TeVFzHqDIWrNKYtcsPMibjDx9O+bu+psAy9NKfWklassUA==", - Network accessline 353
"resolved": "https://registry.npmjs.org/@tweenjs/tween.js/-/tween.js-23.1.3.tgz", - Network accessline 358
"node_modules/@tybys/wasm-util": { "version": "0.10.2", "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.2.tgz", - Network accessline 359
"version": "0.10.2", "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.2.tgz", "integrity": "sha512-RoBvJ2X0wuKlWFIjrwffGw1IqZHKQqzIchKaadZZfnNpsAYp2mM0h36JtPCjNDAHGgYez/15uMBpfGwchhiMgg==", - Network accessline 360
"resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.2.tgz", - Network accessline 369
"node_modules/@types/node": { "version": "25.9.0", "resolved": "https://registry.npmjs.org/@types/node/-/node-25.9.0.tgz", - Network accessline 370
"version": "25.9.0", "resolved": "https://registry.npmjs.org/@types/node/-/node-25.9.0.tgz", "integrity": "sha512-AOQwYUNolgy3VosiRqXrACUXTN8nJUtPl7FJXMqZVyxiiCLhQuG3jXKvCS1ALr+Y2OmZhzzLVlYPEqJaiqkaJQ==", - Network accessline 371
"resolved": "https://registry.npmjs.org/@types/node/-/node-25.9.0.tgz", - Network accessline 379
"node_modules/@types/pngjs": { "version": "6.0.5", "resolved": "https://registry.npmjs.org/@types/pngjs/-/pngjs-6.0.5.tgz", - Network accessline 380
"version": "6.0.5", "resolved": "https://registry.npmjs.org/@types/pngjs/-/pngjs-6.0.5.tgz", "integrity": "sha512-0k5eKfrA83JOZPppLtS2C7OUtyNAl2wKNxfyYl9Q5g9lPkgBl/9hNyAu6HuEH2J4XmIv2znEpkDd0SaZVxW6iQ==", - Network accessline 381
"resolved": "https://registry.npmjs.org/@types/pngjs/-/pngjs-6.0.5.tgz", - Network accessline 389
"node_modules/@types/stats.js": { "version": "0.17.4", "resolved": "https://registry.npmjs.org/@types/stats.js/-/stats.js-0.17.4.tgz", - Network accessline 390
"version": "0.17.4", "resolved": "https://registry.npmjs.org/@types/stats.js/-/stats.js-0.17.4.tgz", "integrity": "sha512-jIBvWWShCvlBqBNIZt0KAshWpvSjhkwkEu4ZUcASoAvhmrgAUI2t1dXrjSL4xXVLB4FznPrIsX3nKXFl/Dt4vA==", - Network accessline 391
"resolved": "https://registry.npmjs.org/@types/stats.js/-/stats.js-0.17.4.tgz", - Network accessline 396
"node_modules/@types/three": { "version": "0.184.1", "resolved": "https://registry.npmjs.org/@types/three/-/three-0.184.1.tgz", - Network accessline 397
"version": "0.184.1", "resolved": "https://registry.npmjs.org/@types/three/-/three-0.184.1.tgz", "integrity": "sha512-6q4VdiqVsrTRqmk62/BnlcAvIrnDM0zf2ZDVKI5kZiniWrSaOHaQzmbp+BNzoggc/8tgW412pL//wZIxu2PPTA==", - Network accessline 398
"resolved": "https://registry.npmjs.org/@types/three/-/three-0.184.1.tgz", - Network accessline 411
"node_modules/@types/webxr": { "version": "0.5.24", "resolved": "https://registry.npmjs.org/@types/webxr/-/webxr-0.5.24.tgz", - Network accessline 412
"version": "0.5.24", "resolved": "https://registry.npmjs.org/@types/webxr/-/webxr-0.5.24.tgz", "integrity": "sha512-h8fgEd/DpoS9CBrjEQXR+dIDraopAEfu4wYVNY2tEPwk60stPWhvZMf4Foo5FakuQ7HFZoa8WceaWFervK2Ovg==", - Network accessline 413
"resolved": "https://registry.npmjs.org/@types/webxr/-/webxr-0.5.24.tgz", - Network accessline 418
"node_modules/detect-libc": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", - Network accessline 419
"version": "2.1.2", "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", - Network accessline 420
"resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", - Network accessline 428
"node_modules/fdir": { "version": "6.5.0", "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", - Network accessline 429
"version": "6.5.0", "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", - Network accessline 430
"resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", - Network accessline 446
"node_modules/fflate": { "version": "0.8.3", "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.8.3.tgz", - Network accessline 447
"version": "0.8.3", "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.8.3.tgz", "integrity": "sha512-tbZNuJrLwGUp3zshBtdy4W+ORxZuIh8a5ilyIEQDC5rY1f3U20JMry0Ll3WBzU58EZKsEuJFXhb5gwv8CsPvgA==", - Network accessline 448
"resolved": "https://registry.npmjs.org/fflate/-/fflate-0.8.3.tgz", - Network accessline 453
"node_modules/fsevents": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - Network accessline 454
"version": "2.3.2", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - Network accessline 455
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - Network accessline 468
"node_modules/lightningcss": { "version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.32.0.tgz", - Network accessline 469
"version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.32.0.tgz", "integrity": "sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==", - Network accessline 470
"resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.32.0.tgz", - Network accessline 480
"funding": { "type": "opencollective", "url": "https://opencollective.com/parcel" - Network accessline 481
"type": "opencollective", "url": "https://opencollective.com/parcel" }, - Network accessline 482
"url": "https://opencollective.com/parcel" - Network accessline 498
"node_modules/lightningcss-android-arm64": { "version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz", - Network accessline 499
"version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz", "integrity": "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgH - Network accessline 500
"resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz", - Network accessline 514
"funding": { "type": "opencollective", "url": "https://opencollective.com/parcel" - Network accessline 515
"type": "opencollective", "url": "https://opencollective.com/parcel" } - Network accessline 516
"url": "https://opencollective.com/parcel" - Network accessline 519
"node_modules/lightningcss-darwin-arm64": { "version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz", - Network accessline 520
"version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz", "integrity": "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc - Network accessline 521
"resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz", - Network accessline 535
"funding": { "type": "opencollective", "url": "https://opencollective.com/parcel" - Network accessline 536
"type": "opencollective", "url": "https://opencollective.com/parcel" } - Network accessline 537
"url": "https://opencollective.com/parcel" - Network accessline 540
"node_modules/lightningcss-darwin-x64": { "version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz", - Network accessline 541
"version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz", "integrity": "sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73 - Network accessline 542
"resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz", - Network accessline 556
"funding": { "type": "opencollective", "url": "https://opencollective.com/parcel" - Network accessline 557
"type": "opencollective", "url": "https://opencollective.com/parcel" } - Network accessline 558
"url": "https://opencollective.com/parcel" - Network accessline 561
"node_modules/lightningcss-freebsd-x64": { "version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz", - Network accessline 562
"version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz", "integrity": "sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK - Network accessline 563
"resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz", - Network accessline 577
"funding": { "type": "opencollective", "url": "https://opencollective.com/parcel" - Network accessline 578
"type": "opencollective", "url": "https://opencollective.com/parcel" } - Network accessline 579
"url": "https://opencollective.com/parcel" - Network accessline 582
"node_modules/lightningcss-linux-arm-gnueabihf": { "version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz", - Network accessline 583
"version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz", "integrity": "sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsP - Network accessline 584
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz", - Network accessline 598
"funding": { "type": "opencollective", "url": "https://opencollective.com/parcel" - Network accessline 599
"type": "opencollective", "url": "https://opencollective.com/parcel" } - Network accessline 600
"url": "https://opencollective.com/parcel" - Network accessline 603
"node_modules/lightningcss-linux-arm64-gnu": { "version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz", - Network accessline 604
"version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz", "integrity": "sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbeb - Network accessline 605
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz", - Network accessline 619
"funding": { "type": "opencollective", "url": "https://opencollective.com/parcel" - Network accessline 620
"type": "opencollective", "url": "https://opencollective.com/parcel" } - Network accessline 621
"url": "https://opencollective.com/parcel" - Network accessline 624
"node_modules/lightningcss-linux-arm64-musl": { "version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz", - Network accessline 625
"version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz", "integrity": "sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJ - Network accessline 626
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz", - Network accessline 640
"funding": { "type": "opencollective", "url": "https://opencollective.com/parcel" - Network accessline 641
"type": "opencollective", "url": "https://opencollective.com/parcel" } - Network accessline 642
"url": "https://opencollective.com/parcel" - Network accessline 645
"node_modules/lightningcss-linux-x64-gnu": { "version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz", - Network accessline 646
"version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz", "integrity": "sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI - Network accessline 647
"resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz", - Network accessline 661
"funding": { "type": "opencollective", "url": "https://opencollective.com/parcel" - Network accessline 662
"type": "opencollective", "url": "https://opencollective.com/parcel" } - Network accessline 663
"url": "https://opencollective.com/parcel" - Network accessline 666
"node_modules/lightningcss-linux-x64-musl": { "version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz", - Network accessline 667
"version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz", "integrity": "sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j - Network accessline 668
"resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz", - Network accessline 682
"funding": { "type": "opencollective", "url": "https://opencollective.com/parcel" - Network accessline 683
"type": "opencollective", "url": "https://opencollective.com/parcel" } - Network accessline 684
"url": "https://opencollective.com/parcel" - Network accessline 687
"node_modules/lightningcss-win32-arm64-msvc": { "version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz", - Network accessline 688
"version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz", "integrity": "sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx - Network accessline 689
"resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz", - Network accessline 703
"funding": { "type": "opencollective", "url": "https://opencollective.com/parcel" - Network accessline 704
"type": "opencollective", "url": "https://opencollective.com/parcel" } - Network accessline 705
"url": "https://opencollective.com/parcel" - Network accessline 708
"node_modules/lightningcss-win32-x64-msvc": { "version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz", - Network accessline 709
"version": "1.32.0", "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz", "integrity": "sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnj - Network accessline 710
"resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz", - Network accessline 724
"funding": { "type": "opencollective", "url": "https://opencollective.com/parcel" - Network accessline 725
"type": "opencollective", "url": "https://opencollective.com/parcel" } - Network accessline 726
"url": "https://opencollective.com/parcel" - Network accessline 729
"node_modules/lil-gui": { "version": "0.21.0", "resolved": "https://registry.npmjs.org/lil-gui/-/lil-gui-0.21.0.tgz", - Network accessline 730
"version": "0.21.0", "resolved": "https://registry.npmjs.org/lil-gui/-/lil-gui-0.21.0.tgz", "integrity": "sha512-tpvxN7v1GvE/Tv+GRopfOp0W7fVEjF4PltkuX8vOCIfim22rD1ztvfkoEMcv9lzQeuNUSeIrUmUjBwmlW/oUew==", - Network accessline 731
"resolved": "https://registry.npmjs.org/lil-gui/-/lil-gui-0.21.0.tgz", - Network accessline 735
"node_modules/meshoptimizer": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/meshoptimizer/-/meshoptimizer-1.1.1.tgz", - Network accessline 736
"version": "1.1.1", "resolved": "https://registry.npmjs.org/meshoptimizer/-/meshoptimizer-1.1.1.tgz", "integrity": "sha512-oRFNWJRDA/WTrVj7NWvqa5HqE1t9MYDj2VaWirQCzCCrAd2GHrqR/sQezCxiWATPNlKTcRaPRHPJwIRoPBAp5g==", - Network accessline 737
"resolved": "https://registry.npmjs.org/meshoptimizer/-/meshoptimizer-1.1.1.tgz", - Network accessline 742
"node_modules/nanoid": { "version": "3.3.12", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz", - Network accessline 743
"version": "3.3.12", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz", "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==", - Network accessline 744
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz", - Network accessline 748
{ "type": "github", "url": "https://github.com/sponsors/ai" - Network accessline 749
"type": "github", "url": "https://github.com/sponsors/ai" } - Network accessline 750
"url": "https://github.com/sponsors/ai" - Network accessline 761
"node_modules/picocolors": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - Network accessline 762
"version": "1.1.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - Network accessline 763
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - Network accessline 768
"node_modules/picomatch": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", - Network accessline 769
"version": "4.0.4", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", - Network accessline 770
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", - Network accessline 777
}, "funding": { "url": "https://github.com/sponsors/jonschlinkert" - Network accessline 778
"funding": { "url": "https://github.com/sponsors/jonschlinkert" } - Network accessline 779
"url": "https://github.com/sponsors/jonschlinkert" - Network accessline 782
"node_modules/playwright": { "version": "1.60.0", "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.60.0.tgz", - Network accessline 783
"version": "1.60.0", "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.60.0.tgz", "integrity": "sha512-hheHdokM8cdqCb0lcE3s+zT4t4W+vvjpGxsZlDnikarzx8tSzMebh3UiFtgqwFwnTnjYQcsyMF8ei2mCO/tpeA==", - Network accessline 784
"resolved": "https://registry.npmjs.org/playwright/-/playwright-1.60.0.tgz", - Network accessline 801
"node_modules/playwright-core": { "version": "1.60.0", "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.60.0.tgz", - Network accessline 802
"version": "1.60.0", "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.60.0.tgz", "integrity": "sha512-9bW6zvX/m0lEbgTKJ6YppOKx8H3VOPBMOCFh2irXFOT4BbHgrx5hPjwJYLT40Lu+4qtD36qKc/Hn56StUW57IA==", - Network accessline 803
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.60.0.tgz", - Network accessline 814
"node_modules/pngjs": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-7.0.0.tgz", - Network accessline 815
"version": "7.0.0", "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-7.0.0.tgz", "integrity": "sha512-LKWqWJRhstyYo9pGvgor/ivk2w94eSjE3RGVuzLGlr3NmD8bf7RcYGze1mNdEHRP6TRP6rMuDHk5t44hnTRyow==", - Network accessline 816
"resolved": "https://registry.npmjs.org/pngjs/-/pngjs-7.0.0.tgz", - Network accessline 824
"node_modules/postcss": { "version": "8.5.14", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.14.tgz", - Network accessline 825
"version": "8.5.14", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.14.tgz", "integrity": "sha512-SoSL4+OSEtR99LHFZQiJLkT59C5B1amGO1NzTwj7TT1qCUgUO6hxOvzkOYxD+vMrXBM3XJIKzokoERdqQq/Zmg==", - Network accessline 826
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.14.tgz", - Network accessline 830
{ "type": "opencollective", "url": "https://opencollective.com/postcss/" - Network accessline 831
"type": "opencollective", "url": "https://opencollective.com/postcss/" }, - Network accessline 832
"url": "https://opencollective.com/postcss/" - Network accessline 834
{ "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/postcss" - Network accessline 835
"type": "tidelift", "url": "https://tidelift.com/funding/github/npm/postcss" }, - Network accessline 836
"url": "https://tidelift.com/funding/github/npm/postcss" - Network accessline 838
{ "type": "github", "url": "https://github.com/sponsors/ai" - Network accessline 839
"type": "github", "url": "https://github.com/sponsors/ai" } - Network accessline 840
"url": "https://github.com/sponsors/ai" - Network accessline 853
"node_modules/rolldown": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.1.tgz", - Network accessline 854
"version": "1.0.1", "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.1.tgz", "integrity": "sha512-X0KQHljNnEkWNqqiz9zJrGunh1B0HgOxLXvnFpCOcadzcy5qohZ3tqMEUg00vncoRovXuK3ZqCT9KnnKzoInFQ==", - Network accessline 855
"resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.1.tgz", - Network accessline 887
"node_modules/source-map-js": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", - Network accessline 888
"version": "1.2.1", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", - Network accessline 889
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", - Network accessline 897
"node_modules/three": { "version": "0.184.0", "resolved": "https://registry.npmjs.org/three/-/three-0.184.0.tgz", - Network accessline 898
"version": "0.184.0", "resolved": "https://registry.npmjs.org/three/-/three-0.184.0.tgz", "integrity": "sha512-wtTRjG92pM5eUg/KuUnHsqSAlPM296brTOcLgMRqEeylYTh/CdtvKUvCyyCQTzFuStieWxvZb8mVTMvdPyUpxg==", - Network accessline 899
"resolved": "https://registry.npmjs.org/three/-/three-0.184.0.tgz", - Network accessline 903
"node_modules/tinyglobby": { "version": "0.2.16", "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.16.tgz", - Network accessline 904
"version": "0.2.16", "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.16.tgz", "integrity": "sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg==", - Network accessline 905
"resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.16.tgz", - Network accessline 915
}, "funding": { "url": "https://github.com/sponsors/SuperchupuDev" - Network accessline 916
"funding": { "url": "https://github.com/sponsors/SuperchupuDev" } - Network accessline 917
"url": "https://github.com/sponsors/SuperchupuDev" - Network accessline 920
"node_modules/tslib": { "version": "2.8.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - Network accessline 921
"version": "2.8.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - Network accessline 922
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - Network accessline 928
"node_modules/typescript": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", - Network accessline 929
"version": "6.0.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", - Network accessline 930
"resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", - Network accessline 942
"node_modules/undici-types": { "version": "7.24.6", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.24.6.tgz", - Network accessline 943
"version": "7.24.6", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.24.6.tgz", "integrity": "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg==", - Network accessline 944
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.24.6.tgz", - Network accessline 949
"node_modules/vite": { "version": "8.0.13", "resolved": "https://registry.npmjs.org/vite/-/vite-8.0.13.tgz", - Network accessline 950
"version": "8.0.13", "resolved": "https://registry.npmjs.org/vite/-/vite-8.0.13.tgz", "integrity": "sha512-MFtjBYgzmSxmgA4RAfjIyXWpGe1oALnjgUTzzV7QLx/TKxCzjtMH6Fd9/eVK+5Fg1qNoz5VAwsmMs/NofrmJvw==", - Network accessline 951
"resolved": "https://registry.npmjs.org/vite/-/vite-8.0.13.tgz", - Network accessline 967
}, "funding": { "url": "https://github.com/vitejs/vite?sponsor=1" - Network accessline 968
"funding": { "url": "https://github.com/vitejs/vite?sponsor=1" }, - Network accessline 969
"url": "https://github.com/vitejs/vite?sponsor=1" - Network accessline 1027
"node_modules/vite/node_modules/fsevents": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - Network accessline 1028
"version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - Network accessline 1029
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
skills/threejs-gameplay-systems/assets/threejs-vite-game/package.json
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/playwright.config.ts
- Executable scriptline 1
Executable file - Network accessline 12
}, use: { baseURL: 'http://127.0.0.1:5188', - Network accessline 13
use: { baseURL: 'http://127.0.0.1:5188', trace: 'retain-on-failure', - Network accessline 14
baseURL: 'http://127.0.0.1:5188', - Network accessline 18
webServer: { command: 'npm run dev', url: 'http://127.0.0.1:5188', - Network accessline 20
url: 'http://127.0.0.1:5188',
skills/threejs-gameplay-systems/assets/threejs-vite-game/scripts/inspect-threejs-canvas.mjs
skills/threejs-gameplay-systems/assets/threejs-vite-game/src/core/InputController.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/src/core/Loop.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/src/core/Renderer.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/src/entities/Pickup.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/src/entities/Player.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/src/game/Game.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/src/main.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/src/systems/AudioSystem.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/src/systems/CameraRig.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/src/systems/CollisionSystem.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/src/systems/DebugTools.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/src/systems/Hud.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/src/utils/dispose.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/src/utils/random.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/src/vite-env.d.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/tests/bot-playtest.template.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/tests/visual-regression.template.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/tests/visual.spec.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/assets/threejs-vite-game/vite.config.ts
- Executable scriptline 1
Executable file
skills/threejs-gameplay-systems/scripts/create_threejs_game.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/threejs-image-generator/SKILL.md
skills/threejs-image-generator/scripts/generate_image.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 14
[Credential-related source omitted] - Access to secretsline 23
[Credential-related source omitted] - Access to secretsline 27
[Credential-related source omitted] - Access to secretsline 32
[Credential-related source omitted] - Access to secretsline 33
[Credential-related source omitted] - Access to secretsline 67
[Credential-related source omitted] - Access to secretsline 73
[Credential-related source omitted] - Access to secretsline 74
[Credential-related source omitted] - Access to secretsline 78
[Credential-related source omitted] - Access to secretsline 87
[Credential-related source omitted] - Possible obfuscationline 153
image_data = base64.b64decode(image_data)
skills/threejs-qa-release/SKILL.md
- Network accessline 40
node <this-skill-dir>/scripts/inspect-threejs-canvas.mjs --manifest artifacts/evidence.json --url http://127.0.0.1:5188 --seed 42
skills/threejs-qa-release/scripts/inspect-threejs-canvas.mjs
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
Declared and executed: 2 facts
- Contacts api.tripo3d.ai, which SKILL.md, the README and the plugin manifest do not mentionthreejs-3d-generator/scripts/threejs_3d_asset.py:21High confidence
- Contacts api.elevenlabs.io, which SKILL.md, the README and the plugin manifest do not mentionthreejs-audio-generator/scripts/threejs_audio_asset.py:19High confidence
Signal confidence: 144 facts
- Access to secrets in prose of the SKILL.mdthreejs-3d-generator/SKILL.md:22Low confidence
- Access to secrets in code of the SKILL.md: a variable, placeholder or call, not a stored valuethreejs-3d-generator/SKILL.md:25Low confidence
- Network access in prose of documentationthreejs-3d-generator/references/api-notes.md:7Low confidence
- Access to secrets in prose of documentation: a variable, placeholder or call, not a stored valuethreejs-3d-generator/references/api-notes.md:8Low confidence
- Network access in prose of documentationthreejs-3d-generator/references/threejs-integration.md:57Low confidence
- Executable script in code of a file that runsthreejs-3d-generator/scripts/threejs_3d_asset.py:1High confidence
- Network access in code of a file that runsthreejs-3d-generator/scripts/threejs_3d_asset.py:8High confidence
- Network access in code of a file that runsthreejs-3d-generator/scripts/threejs_3d_asset.py:9High confidence
- Network access in code of a file that runsthreejs-3d-generator/scripts/threejs_3d_asset.py:10High confidence
- Network access in code of a file that runsthreejs-3d-generator/scripts/threejs_3d_asset.py:21High confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:107Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:109Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:178Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:181Low confidence
- Network access in code of a file that runsthreejs-3d-generator/scripts/threejs_3d_asset.py:185High confidence
- Network access in code of a file that runsthreejs-3d-generator/scripts/threejs_3d_asset.py:205High confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:322Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:343Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:365Low confidence
- Access to secrets in code of a file that runsthreejs-3d-generator/scripts/threejs_3d_asset.py:372High confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:383Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:401Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:426Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:445Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:446Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:457Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:458Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:467Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:470Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:694Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:698Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:700Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:709Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:717Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:718Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:722Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:731Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:744Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:745Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:749Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:750Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:754Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:755Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:775Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:901Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:902Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:928Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:943Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:946Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuethreejs-3d-generator/scripts/threejs_3d_asset.py:974Low confidence
and 94 more
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Compatible | Standard SKILL.md skills/threejs-3d-generator/SKILL.md | .claude/skills/<skill-name>/ |
| Codex | Native | Manifest AGENTS.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md skills/threejs-3d-generator/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md skills/threejs-3d-generator/SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md skills/threejs-3d-generator/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md skills/threejs-3d-generator/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.
Explore alternatives and comparisons
Add this badge to your README
It updates every night and links to this page.
[](https://hotskills.dev/skill/majidmanzarpour-threejs-game-skills/)