SK

sky-engine-dev

Handles stargazing engine lifecycle, math, rendering, and testing configurations.

Install

mkdir -p .claude/skills/sky-engine-dev && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/17297" && unzip -o skill.zip -d .claude/skills/sky-engine-dev && rm skill.zip

Installs to .claude/skills/sky-engine-dev

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Use when changing the stargazing engine, math, rendering, lifecycle, tests, or Vite wiring.
91 chars✓ has a “when” trigger
Advanced

Key capabilities

  • →Manage structural or behavioral changes in the canvas background
  • →Orchestrate lifecycle and canvas operations in `src/sky/createSky.js`
  • →Handle screen-space math in `src/sky/projection.js`
  • →Manage drawing operations in `src/sky/renderer.js`
  • →Generate stars in `src/sky/stars.js`

How it works

The skill guides changes to the sky engine by enforcing module boundaries for specific functionalities like lifecycle orchestration, screen-space math, and star generation. It requires updating Vitest coverage and running build processes.

Inputs & outputs

You give it
Code changes related to the sky engine, math, rendering, lifecycle, tests, or Vite wiring
You get back
Updated sky engine functionality, with Vitest coverage and successful build

When to use sky-engine-dev

  • →Changing rendering math
  • →Updating sky lifecycle
  • →Configuring Vite for sky rendering

About this skill

Sky Engine Dev

Use this skill for structural or behavioural changes to the WebGL sky.

Core Rules

  • Modern ES modules and arrow functions; no runtime dependencies.
  • Keep src/main.js as bootstrap only and src/ui/ DOM-only.
  • Pure, deterministic logic lives in astro.js, projection.js, stars.js, camera.js and events.js, and is unit tested.
  • createSky.js owns lifecycle, input, time and per-frame state; render/ owns GPU resources (created up front) and draw passes.
  • The GLSL projection in render/shaders/common.glsl mirrors projection.js; change both.

Workflow

  1. Check the module map in references/module-map.md.
  2. Change the smallest module that owns the behaviour.
  3. Add or update Vitest coverage for deterministic logic.
  4. Run npm test and npm run build (plus npm run build:embed for shared code).
  5. Check shaders visually on the real GPU (see AGENTS.md, "Testing Expectations").

Validation Focus

  • Frame conversions (equatorial, galactic, horizontal) and sidereal time.
  • Projection round trips and composition (altitudeForHorizon).
  • Catalogue decoding, generation invariants and determinism.
  • Camera limits and inertia; meteor and satellite lifecycles.

Constraints

  • No per-frame allocations in the render path.
  • One-off heavy work is sliced across frames (generators, tiled bakes).
  • Point-like light goes through the tone-mapped screen-blend star pass; diffuse light goes through the composite.

When not to use it

  • →When changes are not related to the stargazing engine, math, rendering, lifecycle, tests, or Vite wiring
  • →When the task involves CSS or a dedicated overlay for atmosphere effects

Limitations

  • →Must keep the effect lightweight on desktop and mobile
  • →Must cap device pixel ratio where needed
  • →Must avoid extra allocations in hot loops

How it compares

This skill provides a structured approach to modifying the sky engine by adhering to strict module boundaries and testing requirements, which helps maintain determinism and performance compared to ad-hoc code changes.

Compared to similar skills

sky-engine-dev side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
sky-engine-dev (this skill)06moNo flagsAdvanced
3d-web-experience359moReviewIntermediate
web-games119moNo flagsIntermediate
pwa-development96moCautionIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

Search skills

Search the agent skills registry