用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/starsector-shipmaker/editor --skill starsector-architecture命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
| name | starsector-architecture |
| description | Teaches agents the starsector-shipmaker editor's internal architecture |
communication/events/. Subscribe via EventBus.subscribe(owner, listener). Always clean up with cleanupListeners().EditDispatch posts edits. PointEdits, SlotEdits handle undoable actions. All mutations go through EditDispatch.ViewerLayer → ShipLayer / WeaponLayer. Each has a LayerPainter for canvas rendering.ShipPainter owns sub-painters: WeaponSlotPainter, LaunchBayPainter, EngineSlotPainter, BoundPointsPainter, CenterPointPainter, ShieldPointPainter.LaunchBay: Data model (id, arc, angle, size, mount, renderOrderMod, portPoints list)LaunchPortPoint: Physical spawn coordinate. Extends BaseWorldPoint, implements SlotPoint. Delegates properties to parent LaunchBay.LaunchBayPainter: Manages both baysList (LaunchBay objects) and portsIndex (LaunchPortPoint objects). Hotkeys: Shift=add port to selected bay, Ctrl=create new bay.BayDataControlPane: UI panel for editing bay properties (angle, arc, size, mount, ID).LaunchBaysTree: Tree view where bays are parent nodes, ports are draggable children.JsonSpecLoader.loadHullFile() → Jackson deserializes to HullSpecFileShipPainterInitialization.loadHullData() → converts JSON data to canvas entitiesinitSlots() → iterates weaponSlots[], creates WeaponSlotPoint or LaunchBay+LaunchPortPointrotatePointByCenter() → transforms JSON coords to canvas coords (90° CCW rotation)SaveHullAction.rebuildHullFile() → collects all editor staterebuildWeaponSlots() → merges weapon slots + launch baystransformSlotsFromBays() → converts LaunchPortPoint canvas positions back to JSON coords via SHIP_CENTER modeSlotLocationsSerializer → writes Point2D.Double[] as flat [x1, y1, x2, y2] array| Direction | Method | Formula |
|---|---|---|
| Load (JSON→Canvas) | rotatePointByCenter(input, tc) | canvasX = -input.Y + tc.X, canvasY = -input.X + tc.Y |
| Save (Canvas→JSON) | SHIP_CENTER mode | jsonX = -(canvasY - centerY), jsonY = -(canvasX - centerX) |
These are exact mathematical inverses.
Check the resources/ and examples/ directories in this skill folder for supplementary materials, reference files, or example implementations (if they exist).