.squad/skills/architecture-documentation/SKILL.md
How to create reference documentation for complex coordinate systems and building constraints
npx skillsauth add csharpfritz/aspire-minecraft architecture-documentationInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
When a project involves complex spatial logic (coordinate systems, layout algorithms, size constraints) or technical constraints (rate limits, API boundaries), create two complementary reference documents:
This skill applies when:
Document 1: Visual Architecture (docs/architecture-diagram.md)
Document 2: Constraints Reference (docs/[domain]-constraints.md)
Both documents should include:
Architecture diagrams:
Constraints:
Y=-59: Air (player walking level)
↑ Players walk here
│
Y=-60: █████████████████████ ← BaseY (grass block surface)
│ Structures place floors here
Why this works: Visual hierarchy shows relationships. Annotations explain purpose, not just labels.
col = index % 2 // Alternates 0, 1, 0, 1, ...
row = index / 2 // Increments every 2 resources: 0, 0, 1, 1, 2, 2, ...
x = BaseX + (col × 10) // Result: 10, 20, 10, 20, 10, 20, ...
Why this works: Formula + concrete results + inline comments. Reader sees pattern immediately.
### ⚠️ Critical Y-Level Rules
1. **Never place fences at `BaseY + 1`** — they will float one block above the ground.
2. **Paths must be at `BaseY - 1`** with grass cleared at `BaseY` — this makes them flush with the surrounding terrain.
Why this works: Emoji draws attention. "Never" is unambiguous. Explanation shows consequence of violation.
| Operation | Command Count | Estimated Time (at 10 cmd/sec) |
|-----------|---------------|--------------------------------|
| Single structure | ~15-20 commands | 1.5-2 seconds |
| 50-resource village | ~800-900 commands | 80-90 seconds |
Why this works: Concrete numbers. Shows scaling behavior. Helps users understand cost.
❌ Single monolithic document — hard to navigate, mixes "how it works" with "how to use it"
❌ Diagrams without numbers — "structures are spaced apart" is vague; "Spacing=10 blocks center-to-center" is precise
❌ Constants without source references — reader can't verify or update; always cite source file and line
❌ Rules without rationale — "Don't place fences at Y+1" → why? Add consequence: "they will float in the air"
❌ Examples without scaling limits — show 4-resource village working fine, hide that 50+ resources break
❌ Missing cross-references — constraints doc should point to architecture doc for visual explanations
❌ Stale examples — if constants change in code, docs break. Use grep to verify constants match.
tools
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
tools
Techniques for visually connecting water bodies (canals, lakes, rivers) in Minecraft
development
# Static Configuration Pattern **Confidence:** low **Source:** earned ## When to Use When a class has compile-time constants (`const`) that need to become runtime-configurable without breaking existing consumers. ## Pattern 1. Convert `const` fields to `static T { get; private set; } = <original value>`. 2. Add a public `Configure*()` method that sets the new values. Call once at startup. 3. Add an `internal static Reset*()` method that restores defaults — needed for test isolation since `p
development
Core conventions and patterns used in the Squad codebase