design-npc SKILL.md skillA

design-npc from summerengine/summer is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.

Install it, pinned
mdr add summerengine/summer/design-npc@git:20261010.4ade947

Pins git:20261010.4ade947 in mdr.lock. Pin the fingerprint instead.

Audit grade
A, 17 of 17 checks passed
Kind
SKILL.md skill
Repository
summerengine/summer
Path
library/skills/design-npc/SKILL.md
Versions recorded
4
Latest version
git:20261010.4ade947, committed Oct 10, 2026
First version recorded
Sep 1, 2026
Size
25,778 bytes
Repository stars
86
License
MIT

Design enemy/NPC/boss/companion behavior — perception, personality, intent, action state machine, telegraphs — outputs a GDScript stub plus node tree.

Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.

What the file says

# /design-npc — Design an NPC's Behavior End-to-End

## Overview

A good NPC is legible and *alive*. The player can read its mood, predict its next move, and feel the consequence of theirs — and the four enemies in a patrol squad don't all behave like clones of one designer-authored script. This skill walks the canonical NPC AI pattern from the inside out: what the NPC perceives, what it *wants* (intent), what it *does* (action), what tells signal each state, and how it dies.

**Core principle:** behavior is what the player *sees*. Two layers separate doing from wanting: an action state machine the body runs, and an intent layer above it that reads perception + personality and tells the action SM what to aim at.

**Second principle:** identical NPCs are predictable, and predictable is boring. Every spawned instance jitters its personality knobs so a squad of four grunts produces emergent variety with zero designer authoring.

## Steps

### 1. Pick the NPC archetype

Open with the question. Wait.

> What's the NPC for? Pick the closest:
> - **Basic enemy** (melee/ranged grunt, dies in 1–3 hits)
> - **Boss** (named, scripted phases, 30–120 sec fight)
…

Read the whole file at its exact version.

How to install

The exact contents, by fingerprint
mdr add summerengine/summer/design-npc@sha256:9616771a22bb6e6f

The line at the top of this page pins the label git:20261010.4ade947, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.

Badge

mdr badge

[![mdr](https://markdownregistry.com/badge/art_rofzefv7lyrt6dq6.svg)](https://markdownregistry.com/a/art_rofzefv7lyrt6dq6)

2 badge image fetches in 30 days. What the badge shows.

Versions

The registry has recorded 4 versions of this file, between Sep 1, 2026 and Oct 10, 2026, about one every 13 days.

versioncommittedcommitsizeaudit
git:20261010.4ade947 latest2026-10-10 4ade947 25,778 BA view · diff
git:20260911.b4df3582026-09-11 b4df358 26,294 BA view · diff
git:20260903.8014feb2026-09-03 8014feb 26,544 BA view · diff
git:20260901.0837e7a2026-09-01 0837e7a 26,191 BA view

Audit of the latest version

A  17 of 17 checks passed. Fixed automatic checks with no AI involved, so the same checks give the same answer every run.
  • pass: Frontmatter block present
  • pass: Frontmatter declares a name
  • pass: Frontmatter declares a description
  • pass: Size between 200 bytes and 200 KB (25778 bytes)
  • pass: No zero-width or bidi control characters
  • pass: No instruction hidden inside an HTML comment
  • pass: No link to an exfiltration or paste host
  • pass: No credential-shaped string
  • pass: No instruction to send local credentials anywhere
  • pass: No text hidden with inline styles
  • pass: No prompt-injection phrasing
  • pass: No curl or wget piped into a shell
  • pass: No recursive delete of root, home or parent
  • pass: No instruction to read or print local credentials
  • pass: No base64 blob over 200 characters
  • pass: No link to a raw IP address
  • pass: No script tag

Source

GitHub

summerengine/summer · 86 stars · license MIT · pushed 2026-10-20 · branch main

API

GET https://markdownregistry.com/api/v1/artifacts/art_rofzefv7lyrt6dq6
GET https://markdownregistry.com/api/v1/resolve?ref=summerengine/summer/design-npc
GET https://markdownregistry.com/api/v1/blob/9616771a22bb6e6f1765e37a65989496b2b9b0f97b5a229f34ef6cd6ddc821a8

Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.

Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.

More from summerengine/summer

AGENTS.md AGENTS.md file
summerengine/summer · AGENTS.md
git:20261010.8edeb3f · audit A · 86 stars
3d-lighting SKILL.md skill
summerengine/summer · library/skills/3d-lighting/SKILL.md · Set up 3D scene lighting — DirectionalLight3D vs Omni vs Spot, WorldEnvironment, sky, shadow tuning, ambient — per…
git:20261010.4ade947 · audit A · 86 stars
adaptive-music SKILL.md skill
summerengine/summer · library/skills/adaptive-music/SKILL.md · Wire music stems to game state — combat/explore/boss/tension crossfades on a shared bus, paired with a state machine…
git:20261010.4ade947 · audit A · 86 stars
agent-playtesting SKILL.md skill
summerengine/summer · library/skills/agent-playtesting/SKILL.md · Playtest by driving the LIVE game — deterministic launch, frame-stamped probes before/after each action, exact frame…
git:20260911.b4df358 · audit A · 86 stars
ai-characters-in-games SKILL.md skill
summerengine/summer · library/skills/ai-characters-in-games/SKILL.md · Safe AI characters in published games: no keys in the build, replies via Summer's player AI gateway, moderation, spend…
git:20261010.4ade947 · audit A · 86 stars
ambient-bed SKILL.md skill
summerengine/summer · library/skills/ambient-bed/SKILL.md · Generate a long looping location ambience — forest, dungeon, city, spaceship, cave — a looping AudioStreamPlayer on the…
git:20261010.4ade947 · audit A · 86 stars
animated-loop SKILL.md skill
summerengine/summer · library/skills/animated-loop/SKILL.md · Generate a short seamlessly-looping video clip — splash background, animated logo backdrop, idle title-screen footage —…
git:20261010.4ade947 · audit A · 86 stars
animation-tree SKILL.md skill
summerengine/summer · library/skills/animation-tree/SKILL.md · Design and wire AnimationTree state machines and blend trees so clips respond to gameplay — locomotion blends, attack…
git:20261010.4ade947 · audit A · 86 stars
art-direction SKILL.md skill
summerengine/summer · library/skills/art-direction/SKILL.md · Define the game's visual style — references, palette, mood, lighting plan, post-processing, do/don't list — output as…
git:20261010.4ade947 · audit A · 86 stars
asset-strategy SKILL.md skill
summerengine/summer · library/skills/asset-strategy/SKILL.md · Route any 'I need a [thing]' asset request to the right specialist skill — disambiguates 2D / 3D / audio / video / VFX…
git:20261010.4ade947 · audit A · 86 stars
audio-direction SKILL.md skill
summerengine/summer · library/skills/audio-direction/SKILL.md · Define the game's sonic identity — music style, instruments, SFX vocabulary, dynamic music plan — output as an audio…
git:20261010.4ade947 · audit A · 86 stars
auto-fire-targeting SKILL.md skill
summerengine/summer · library/skills/auto-fire-targeting/SKILL.md · Design or fix auto-fire weapon targeting (survivors, top-down ARPG, tower defense) — the pending-damage pattern that…
git:20261010.4ade947 · audit A · 86 stars

Every file in summerengine/summer

Browse by kind, by grade A, or by owner.