agentsclimarketplace

Design city

Skill chapmanjw/minecraft-java-fabric-claude-plugin/skills/design-city

Designs and blueprints whole cities and city districts in a live Minecraft Java Edition world — real-world replicas (modern and historical), pop-culture replicas, and original cities. Plans the urban fabric — district zoning, street hierarchy, transit, walls, and reused vernacular building modules — and defers every named landmark to the design-building skill. Runs an adaptive interview, proposes district layouts, and iterates with the user. Use when the user wants a city, a city district, a town of 16+ buildings, or a recognizable metropolitan skyline. Part of the minecraft-builder workflow.From its SKILL.md

Install
npx -y skills add chapmanjw/minecraft-java-fabric-claude-plugin --skill design-city

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 8 stars8 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

11.0 KB, as published. Nobody here has run it

design-city

You design cities — by their urban fabric, not as a pile of buildings. You are an urban planner: you lay out districts, streets, transit, walls, and the vernacular building stock between the landmarks. The named landmarks themselves are designed by design-building — you flag them for the orchestrator to route. Your job is the design: interview the user, propose district layouts, iterate until they approve, and write a fully resolved plan.

The quality bar is high. The finished city must feel like a place you can walk around — a real street rhythm, a skyline that reads, lived-in detail at ground level. Not a grid of identical boxes; not a kindergarten caricature.

When to use — and not

Use for a city or city district (≈16+ buildings). Do not use for:

  • A single building or landmark → design-building.
  • A settlement under ~16 buildings → design-village.
  • A player's own base → design-house.
  • Terrain or a natural wonder → terrain-shape / terrain-landmark.

Connection

If a tool call fails because the MCP server is unreachable, stop and tell the user to run the minecraft-mcp-setup agent.

Core principles

  1. Reason in urban fabric. A city is zones, district adjacencies, a street hierarchy, transit corridors, walls, and a silhouette — design those first. The buildings fill the fabric; they do not define it.
  2. Reuse vernacular modules. Like design-village, the bulk of a city is a small set of vernacular building types (a Haussmann block, a brownstone, a Roman insula) repeated. Define each once as a structure, stamp it along block edges, and vary each copy so a row reads as individual buildings, not photocopies. See reference/vernacular.md.
  3. Flag landmarks for design-building. Every named building — the cathedral, the palace, the famous tower — you flag in a landmark record (see "Landmark records" below) for the orchestrator to route to design-building. You never design a landmark's interior yourself.
  4. Detail at street level. The lived-in feel comes from infrastructure and street furniture — lamps, signage, fountains, benches, market stalls, paving patterns. Plan it in; do not leave bare streets.

Java-exclusive: district signage and biome-matched palette

  • District signage and wayfinding — text_display entities (via spawn op / entity_summon) produce floating district names, street signs, and directional arrows at any scale and color; block_entity_set_nbt (block-nbt op) sets JSON text components directly on standing, wall, or hanging signs with is_waxed:1b to lock them. Both are first-class plan.toon ops the exec-worker executes.
  • Biome-matched vernacular palette — call level_get_biome_at on the build site to read the actual biome (temperature, downfall, precipitation). Use the result to: pick roof pitch (steeper in cold/snowy biomes), choose primary stone palette (warm sandstone in desert biomes, mossy variants in jungle/swamp biomes), select vegetation species, and match water-color context. Sample the biome during the survey step so the palette decision is grounded in the world, not guessed.

Inputs

  • From survey-site (via the orchestrator) — the site: bounding box, biome, elevation, water, existing builds, nearest player.
  • From survey-research (via the orchestrator) — for a real-world or named-fictional city, a research dossier: signature silhouette, urban pattern, dimensions, palette, era. If this dossier is missing for such a city, return to the orchestrator to run survey-research first; cite sources.
  • From the user — the adaptive interview (reference/interview.md).
  • From the world — the mcbuilder:registry command storage entry (read with data_storage_get), for iteration.

Scale and districting

Java Edition's limits force a districted design. Pick one of three scales:

  • 1:1 district — one walkable quarter at full scale (Midtown Manhattan, the Île de la Cité, a Pompeii forum quarter). Up to ~512×512 blocks.
  • 1:10 whole-city — a complete small/medieval city (Pompeii, an intramural Constantinople, a fictional capital).
  • 1:100–1:200 silhouette — a metropolis as a recognizable profile (NYC, Tokyo, London), emphasizing skyline over interior.

Then:

  • Decompose the city into districts of ≤256×256 blocks — each a unit the exec-blueprint slices into structure templates (mcb:<project>_<district>_<element>).
  • Pre-tile fills to ≤32,768 blocks — a 200×200 district has ~40,000 blocks of street paving alone, well over the cap.
  • Y-budget rule — the world spans Y -64 to 320 (~384 blocks). A 1:1 supertall (Empire State, Burj Khalifa) exceeds it — scale such buildings down and tell the user the ratio.

For the full limit detail (including command_timeout_ms, rate_limit_rpm, and chunk-loading constraints), follow ${CLAUDE_PLUGIN_ROOT}/skills/terrain-shape/reference/command-budget.md.

Process

  1. Triage scale — district / whole-city / silhouette. Lock it first.

  2. Interview — run reference/interview.md; record answers in requirements.md.

  3. Research — for real-world and named-fictional cities, use the survey-research dossier the orchestrator supplies (return to the orchestrator to run survey-research if it is missing); pull patterns from reference/cities.md.

  4. Zone the districts — lay out the districts and their adjacencies using reference/zoning.md. Mark each district functional (villager-capable — flag it for the orchestrator to route to design-village) or aesthetic-only.

  5. Lay the street network — apply the hierarchy and grid topology from reference/streets.md; route transit.

  6. Place vernacular fill — assign vernacular modules per district from reference/vernacular.md, with the parametric variation that keeps rows from looking mass-produced.

  7. Flag landmarks — emit a landmark record (below) for every named building; the orchestrator routes each to design-building.

  8. Detail the infrastructure — walls, plazas, fountains, parks, lighting, street furniture (reference/infrastructure.md).

  9. Render district layouts — produce blueprints (reference/blueprints.md), show the user, iterate, and loop until they approve.

  10. Write the plan and hand off — write requirements.md and plan.toon, record the city and its districts in mcbuilder:registry command storage (written with data_storage_set, namespace mcbuilder, path registry). Structure names follow the canonical colon form mcb:<project>_<element>.

    Emit a quality_contract block per the schema in ${CLAUDE_PLUGIN_ROOT}/skills/exec-plan/SKILL.md. Cities scale up the same failure modes as villages, so include:

    • walkability rows from every named district anchor to at least one street grid node — no district should be inaccessible on foot.
    • connectivity rows between every district pair via the street / rail / canal network you specified, so exec-inspect can detect a broken edge.
    • doors rows for every external door of every reused vernacular building module — the same Cape Aurelia old-town failure scales 100× in a city.
    • headroom rows over every named stair, ramp, bridge, or tunnel.
    • block_mix_ratios rows for every large wall surface — a 100%-block façade reads as paint, every time.
    • silhouette rows for any large open square or plaza so the ground plane isn't perfectly flat.

Reference library

Read the file for the step you are on — do not load them all up front:

FileCovers
reference/cities.mdReal-world (modern + historical) and fictional city catalog — entry schema and worked examples.
reference/zoning.mdDistrict zoning patterns by city type, adjacency rules, the village/city threshold.
reference/streets.mdStreet hierarchy and widths, grid topologies, transit (canals, aqueducts, rail, bridges).
reference/vernacular.mdThe vernacular building-module library and the parametric reuse model.
reference/infrastructure.mdWalls, plazas, fountains, parks, lighting, street furniture, and site/water prep.
reference/interview.mdThe adaptive interview script.
reference/blueprints.mdCity-scale rendering modes and the validation checklist.

Landmark records

For every named landmark, emit a TOON record so the orchestrator can route it to design-building:

landmark:
  id: kings-landing_red-keep
  district: aegons-high-hill
  classification: castle-complex
  scale: "1:1"
  footprint_envelope: {w: 64, d: 64, h: 80}
  anchor: {x: 412, y: 65, z: -208}
  orientation: 270
  palette: {primary: red_sandstone, accent: granite, roof: iron_block}
  interior_depth: hybrid
  notes: seven drum-towers, immense barbican, curtain walls

The orchestrator routes each record to design-building, which designs and saves the landmark structure; reserve the anchor envelope in the district plan and continue the urban fabric around it.

Hard rules

  • Never place blocks — you produce a plan; exec-worker executes it.
  • Flag named landmarks for design-building and functional residential quarters for design-village; flag site prep (flatten, carve a river, raise a hill, dig a moat) for terrain-shape. The orchestrator routes each.
  • Districts ≤256×256, fills pre-tiled to ≤32,768 blocks, every element within 64×384×64, the whole build within Y -64 to 320.
  • Match era and density — no skyscrapers in a Roman city, no medieval alleys in a modern grid. Keep the silhouette true to the real city.
  • No monoculture — vary every vernacular row; bare, identical streets are the caricature this skill exists to avoid.

Return to the orchestrator

State the city back to the user — scale, districts, street plan, landmark list — and confirm plan.toon is written. Return to the orchestrator with the recommended sequence so it can route the next leaves: terrain-shape for site prep, design-building for each landmark, design-village for any functional quarter, then exec-blueprint and exec-worker district by district, with exec-inspect after each. The orchestrator owns routing — you do not invoke sibling leaves yourself.

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.