数据库迁移
- 作者仓库星标 977
- 叉子 74
- 许可证 MIT
- 作者更新于 2026年6月15日 03:09
- 作者仓库 Axiom
- 领域
- 通用
- 兼容 Agent
-
- Claude Code
- Cursor
- Cline
- Codex
- Windsurf
- Gemini CLI
- +20
- 信任分
- 94 / 100 · 已通过审计
- 作者 / 版本 / 许可
- @CharlesWiltgen · MIT
- Token 消耗评级
- 低消耗
- 接入复杂程度
- 需简单配置
- 是否需要外部 API Key
- 不需要
- 兼容的系统
- Windows
- 底层运行要求
- Node.js
- 文件与系统权限
-
- 只读
- 允许写入 / 修改
- Shell 执行
- 网络行为
- 仅限本地
- 安装命令数
- 26 条
档案由构建时根据 SKILL.md 与安装命令自动衍生,可能与作者实际意图存在差异。
需要注意: 未限定 allowed-tools,默认拥有全部工具权限。
---
name: axiom-games
description: Use when building ANY 2D or 3D game with SpriteKit, SceneKit, or RealityKit, or adding touch con…
category: 通用
runtime: Node.js
---
# axiom-games 输出预览
## PART A: 任务判断
- 适用问题:通用任务拆解、检查和交付。
- 输入要求:目标材料、限制条件、期望输出和验收方式。
- 证据边界:围绕“Quick Reference / External Routes / Decision Tree”读取原文规则,不把推断写成作者承诺。
## PART B: 执行结果
- **01** 任务判断:确认你的需求是否属于通用任务拆解、检查和交付,并标出输入、限制和预期结果。
- **02** 执行计划:优先按“Quick Reference / External Routes / Decision Tree”拆成步骤,说明每一步会读取什么、修改什么、产出什么。
- **03** 交付结果:给出可复制的命令、文件改动、检查清单或内容草稿,并说明如何继续迭代。
- **04** 风险边界:结合 读取文件、写入/修改文件、执行终端命令、主要在本地完成、通常不需要额外 API Key 给出执行前确认项。
## Running Rules
- 读取文件、写入/修改文件、执行终端命令;主要在本地完成;通常不需要额外 API Key。
- 先小样例验证,再放大到真实任务。
- 交付时同时给结果、检查口径和下一步迭代建议。 原文出现了 `/axiom` 这类斜杠命令;如果你的 Agent 支持命令触发,优先用命令开场,再补充目标和边界。
告诉 Agent 目标文件或材料、期望结果、不可改范围、是否允许联网或执行命令。本 Skill 的权限画像是:读取文件、写入/修改文件、执行终端命令。
先用一个小任务确认它会围绕“Quick Reference / External Routes / Decision Tree”工作;涉及文件或命令时,先看 diff、日志、预览或测试结果。
检查最终产物是否包含明确结果、必要证据和下一步动作;如果输出泛泛而谈,就补充输入、边界和验收标准后重跑。
---
name: axiom-games
description: Use when building ANY 2D or 3D game with SpriteKit, SceneKit, or RealityKit, or adding touch con…
category: 通用
source: CharlesWiltgen/Axiom
---
# axiom-games
## 什么时候使用
- 开发苹果平台游戏时快速定位框架用法与故障 覆盖 SpriteKit 场景、物理、动作、循环、渲染与 SwiftUI 集成 构建、查 API 或排查碰撞、帧率、触控、内存问题时触发 本地 Node 适合处理通用任务拆解、检查、交付和复盘…
- 面向通用任务拆解、检查和交付,优先处理能明确输入、步骤和验收标准的工作。
## 需要提供什么
- 目标材料、目录范围、期望结果和不可改动内容。
- 是否允许联网、执行命令、读写文件或调用外部服务。
## 执行规则
- 围绕「Quick Reference / External Routes / Decision Tree」组织步骤,不把推断写成作者事实。
- 读取文件、写入/修改文件、执行终端命令;主要在本地完成;通常不需要额外 API Key。
- 先跑小样例,确认结果可检查后再扩大任务范围。
## 输出要求
- 给出最终产物、关键证据、验证方式和下一步动作。
- 信息不足时标记 unknown,不编造命令、平台或依赖。 作者原文负责流程事实;仓库文件负责来源和命令;流狐只补充适用场景、限制和质量判断。
skill "axiom-games" {
输入层 -> 用户目标 + 目标文件 + 禁止范围 + 验收标准
上下文层 -> Quick Reference / External Routes / Decision Tree
规则层 -> SKILL.md 触发条件 / 执行顺序 / 输出格式
运行层 -> Node.js | 读取文件、写入/修改文件、执行终端命令 | 主要在本地完成
安全层 -> 通常不需要额外 API Key + 小任务验证 + diff / 日志复核
输出层 -> 可复制结果 + 检查清单 + 下一步迭代
} Games
You MUST use this skill for ANY game development, SpriteKit, SceneKit, RealityKit, touch controls, game controller, or interactive simulation work.
Quick Reference
| Symptom / Task | Reference |
|---|---|
| Building a SpriteKit game | See skills/spritekit.md |
| Adding touch controls to a game (TouchController) | See skills/game-input.md |
| Game controller input (GCController, polling vs handlers) | See skills/game-input.md |
Controller Home button settings, spatial accessories OS27 |
See skills/game-input.md |
| SpriteKit API lookup | See skills/spritekit-ref.md |
| Physics contacts not firing | See skills/spritekit-diag.md |
| Frame rate drops (SpriteKit) | See skills/spritekit-diag.md |
| Touches not registering | See skills/spritekit-diag.md |
| Memory spikes in gameplay | See skills/spritekit-diag.md |
| Coordinate confusion | See skills/spritekit-diag.md |
| Scene transition crashes | See skills/spritekit-diag.md |
| Objects tunneling through walls | See skills/spritekit-diag.md |
| SpriteKit node/action reference | See skills/spritekit-ref.md |
| SceneKit maintenance/migration | See axiom-graphics (skills/scenekit.md) |
| SceneKit API / migration mapping | See axiom-graphics (skills/scenekit-ref.md) |
| RealityKit (3D, ECS, AR) | See axiom-graphics (skills/realitykit.md) |
| RealityKit API reference | See axiom-graphics (skills/realitykit-ref.md) |
| RealityKit diagnostics | See axiom-graphics (skills/realitykit-diag.md) |
| RealityKit 27 game features (navmesh, LOD, splats) | See axiom-graphics (skills/realitykit-ref.md Part 10) |
| Long-session game performance tracing (metalperftrace) | See axiom-graphics (skills/display-performance.md Part 12) |
| Porting a Mac/Windows game to Metal | See axiom-graphics (skills/metal-migration.md) |
| In-game content, asset packs, IAP | See axiom-integration (skills/background-assets.md, skills/in-app-purchases.md) |
External Routes
These topics are part of the broader games/3D domain but live in separate skill suites:
SceneKit (3D — soft-deprecated iOS 26):
- Maintenance and migration planning → See axiom-graphics (skills/scenekit.md)
- API reference and migration mapping → See axiom-graphics (skills/scenekit-ref.md)
RealityKit (3D — modern):
- ECS architecture, AR, SwiftUI integration → See axiom-graphics (skills/realitykit.md)
- API reference → See axiom-graphics (skills/realitykit-ref.md)
- Troubleshooting → See axiom-graphics (skills/realitykit-diag.md)
- 27-cycle game-engine layer: navigation mesh + pathfinding, behavior trees, animation graphs, LOD, Gaussian splats → See axiom-graphics (skills/realitykit-ref.md Part 10)
Game performance and porting:
- Long-session game traces, metalperftrace CLI, Game Performance Overview template → See axiom-graphics (skills/display-performance.md Part 12)
- Metal migration, shader conversion → See axiom-graphics (skills/metal-migration.md)
In-game content and monetization:
- Apple-Hosted Background Assets, asset packs, Steam depot conversion → See axiom-integration (skills/background-assets.md)
- In-app purchase, StoreKit views → See axiom-integration (skills/in-app-purchases.md)
Decision Tree
digraph games {
start [label="Game development" shape=ellipse];
what [label="Which framework?" shape=diamond];
sprite_what [label="SpriteKit need?" shape=diamond];
start -> what;
what -> sprite_what [label="SpriteKit (2D)"];
what -> "skills/game-input.md" [label="touch controls / game controllers"];
what -> "axiom-graphics/scenekit" [label="SceneKit (3D legacy)"];
what -> "axiom-graphics/realitykit" [label="RealityKit (3D modern)"];
what -> "axiom-graphics/metal-migration" [label="porting (Metal)"];
sprite_what -> "skills/spritekit.md" [label="architecture/patterns"];
sprite_what -> "skills/spritekit-ref.md" [label="API lookup"];
sprite_what -> "skills/spritekit-diag.md" [label="broken/slow"];
}
- Building/designing a 2D SpriteKit game? →
skills/spritekit.md - How to use a specific SpriteKit API? →
skills/spritekit-ref.md - SpriteKit broken or performing badly? →
skills/spritekit-diag.md - Adding touch controls, or handling game controller input? →
skills/game-input.md - Maintaining existing SceneKit code? → See axiom-graphics (skills/scenekit.md)
- SceneKit API reference or migration mapping? → See axiom-graphics (skills/scenekit-ref.md)
- Building new 3D game or experience? → See axiom-graphics (skills/realitykit.md)
- How to use a specific RealityKit API? → See axiom-graphics (skills/realitykit-ref.md)
- RealityKit entity not visible, gestures broken, performance? → See axiom-graphics (skills/realitykit-diag.md)
- Migrating SceneKit to RealityKit? → See axiom-graphics (skills/scenekit.md) (migration tree) + See axiom-graphics (skills/scenekit-ref.md) (mapping table)
- Building AR game? → See axiom-graphics (skills/realitykit.md)
- Porting a Mac/Windows game to Apple platforms? → See axiom-graphics (skills/metal-migration.md)
- Unlocking in-game content (asset packs, IAP)? → See axiom-integration (skills/background-assets.md, skills/in-app-purchases.md)
- Want automated SpriteKit code scan? →
spritekit-auditoragent
Automated Scanning
SpriteKit audit → Launch spritekit-auditor agent or /axiom:audit spritekit
Detects anti-patterns AND architectural gaps:
- Physics bitmask issues (default
0xFFFFFFFF, missingcontactTestBitMask, magic numbers) - Draw call waste (
SKShapeNodein gameplay, missing texture atlases) - Node accumulation and runaway spawn-in-
update()without cleanup - Action memory leaks (strong
self,.repeatForeverwithoutwithKey:) - Coordinate confusion (
touch.location(in: self.view)instead ofin: self) - Silent input dead zones (custom
touchesBeganwithoutisUserInteractionEnabled) - Missing object pooling for hot spawns
- Missing/ungated debug overlays
- Leaked scenes (transition without
removeAllActions()and child cleanup) - Missing time-step clamping → spiral-of-death teleports bodies through walls
- HUD attached to scene root instead of camera (drifts with scrolling)
- Fast bodies without
usesPreciseCollisionDetection(tunneling)
Scores: PERFORMANT / DEGRADED / UNPLAYABLE
Critical Patterns
SpriteKit (skills/spritekit.md):
- PhysicsCategory struct with explicit bitmasks (default
0xFFFFFFFFcauses phantom collisions) - Camera node pattern for viewport + HUD separation
- SKShapeNode pre-render-to-texture conversion
[weak self]in allSKAction.runclosures- Delta time with spiral-of-death clamping
SpriteKit diagnostics (skills/spritekit-diag.md):
- 5-step bitmask checklist (2 min vs 30-120 min guessing)
- Debug overlays as mandatory first diagnostic step
- Tunneling prevention flowchart
- Memory growth diagnosis via
showsNodeCounttrending
Game input (skills/game-input.md):
- One GCController pipeline — touch controls surface as a
GCController, existing logic unchanged TCTouchController.isSupportedgate + connect/render/touch-routing setup- Half-screen collider shapes for movement and camera (never small circles)
- Safe-area-adjusted anchor offsets for fullscreen games
- Controller Home button settings + visionOS spatial accessories
OS27
Anti-Rationalization
| Thought | Reality |
|---|---|
| "SpriteKit is simple, I don't need a skill" | Physics bitmasks default to 0xFFFFFFFF and cause phantom collisions. The bitmask checklist catches this in 2 min. |
| "I'll just use SKShapeNode, it's quick" | Each SKShapeNode is a separate draw call. 50 of them = 50 draw calls. spritekit.md has the pre-render-to-texture pattern. |
| "I can figure out the coordinate system" | SpriteKit uses bottom-left origin (opposite of UIKit). Anchor points add another layer. spritekit-diag.md Symptom 6 resolves in 5 min. |
| "Physics is straightforward" | Three different bitmask properties, modification rules inside callbacks, and tunneling edge cases. spritekit.md Section 3 covers all gotchas. |
| "The performance is fine on my device" | Performance varies dramatically across devices. spritekit.md Section 6 has the debug overlay checklist. |
| "SceneKit is fine for our new project" | SceneKit is soft-deprecated iOS 26. No new features, only security patches. axiom-graphics (skills/scenekit.md) has the migration decision tree. |
| "ECS is overkill for a simple 3D app" | You're already using ECS — Entity + ModelComponent. axiom-graphics (skills/realitykit.md) shows how to scale from simple to complex. |
| "I don't need collision shapes for taps" | RealityKit gestures require CollisionComponent. axiom-graphics (skills/realitykit-diag.md) diagnoses this in 2 min vs 30 min guessing. |
| "I'll overlay UIButtons for touch controls" | TouchController renders in your Metal pass and surfaces as a GCController — existing controller logic just works. UIButton overlays mean a second input path and per-frame UIKit cost. game-input.md Section 2. |
| "Touch controls = put every controller button on screen" | A 1:1 mapping clutters the play area and demands 3+ fingers. game-input.md Section 5 has the redesign patterns (context icons, hide unused, collapse combos). |
Example Invocations
User: "I'm building a SpriteKit game"
→ See skills/spritekit.md
User: "My physics contacts aren't firing"
→ See skills/spritekit-diag.md
User: "How do I create a physics body from a texture?"
→ See skills/spritekit-ref.md
User: "Frame rate is dropping in my game"
→ See skills/spritekit-diag.md
User: "What action types are available?"
→ See skills/spritekit-ref.md
User: "Objects pass through walls"
→ See skills/spritekit-diag.md
User: "I'm porting my controller game to iPhone and need touch controls"
→ See skills/game-input.md
User: "How do I handle game controller input?"
→ See skills/game-input.md
User: "How do I read spatial accessory input on visionOS?"
→ See skills/game-input.md
User: "I need to build a 3D game" → Invoke: See axiom-graphics (skills/realitykit.md)
User: "I'm migrating from SceneKit to RealityKit" → Invoke: See axiom-graphics (skills/scenekit.md) + See axiom-graphics (skills/scenekit-ref.md)
User: "Can you scan my SpriteKit code for common issues?"
→ Launch spritekit-auditor agent
先判断是否适合
作者设计意图
作者的方法与取舍
边界和复核