{"skill":{"slug":"cesium","displayName":"cesium","summary":"Build, debug, and optimize CesiumJS 3D globe apps, including viewer setup, terrain/imagery, 3D Tiles, GeoJSON/CZML loading, camera control, picking, entity s...","description":"---\nname: cesium\ndescription: Build, debug, and optimize CesiumJS 3D globe apps, including viewer setup, terrain/imagery, 3D Tiles, GeoJSON/CZML loading, camera control, picking, entity styling, and performance tuning. Use when the user asks for Cesium code, Cesium architecture, Cesium bugs, or migration guidance in web projects.\nhomepage: https://cesium.com/platform/cesiumjs/\nmetadata:\n  {\n    \"openclaw\":\n      {\n        \"emoji\": \"🌍\",\n        \"homepage\": \"https://cesium.com/platform/cesiumjs/\",\n      },\n  }\n---\n\n# Cesium\n\nImplement CesiumJS solutions with minimal assumptions and production-safe defaults.\n\n## Workflow\n\n1. Confirm runtime assumptions first: framework (vanilla/Vite/React), CesiumJS version, and whether Cesium Ion is available.\n2. Start with the smallest runnable viewer setup before adding terrain, 3D Tiles, or heavy data layers.\n3. Keep token handling out of source code; use environment variables and project config wiring.\n4. Add data layers incrementally and verify camera framing after each step.\n5. For rendering/perf issues, reduce scene complexity first, then tune request/render settings.\n\n## Implementation guardrails\n\n- Prefer explicit imports from `cesium` and avoid hidden globals.\n- Use `requestRenderMode` for mostly static scenes to reduce GPU/CPU usage.\n- Dispose resources in teardown paths (`viewer.destroy()`) in SPA route changes/unmounts.\n- For large datasets, prefer 3D Tiles over huge entity collections when possible.\n- Keep picking logic resilient: handle `undefined` picks and mixed primitive/entity results.\n\n## Debugging checklist\n\n- Blank globe: verify CSS container height/width and render loop not blocked.\n- Missing terrain/tiles: verify network access, token, and dataset permissions.\n- Misplaced data: verify CRS and coordinate order (lon, lat, height).\n- Memory/GPU pressure: profile number of entities/primitives and texture-heavy layers.\n\n## Reference docs in this skill\n\n- Read `{baseDir}/references/patterns.md` when generating or fixing Cesium code.\n","tags":{"latest":"1.0.1"},"stats":{"comments":0,"downloads":617,"installsAllTime":0,"installsCurrent":0,"stars":0,"versions":2},"createdAt":1773494955426,"updatedAt":1778491905918},"latestVersion":{"version":"1.0.1","createdAt":1773495834791,"changelog":"- Skill now focuses on building, debugging, and optimizing CesiumJS 3D globe apps.\n- All email-related files and documentation removed.\n- Adds guidance for Cesium viewer setup, data layers, camera control, performance tuning, and debugging.\n- Includes new reference documentation at references/patterns.md for Cesium code patterns.","license":"MIT-0"},"metadata":{"setup":[],"os":null,"systems":null},"owner":{"handle":"jvy","userId":"s17drhqvqmrfz94tm5320kfgj983kf7m","displayName":"jvy","image":"https://avatars.githubusercontent.com/u/5337221?v=4"},"moderation":null}