Party Skill

SkillDev tools

Companions and group dynamics, you're never alone

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Party Skill skill

What this skill tells your AI

The instructions your AI receives, as published by simhacker/moollm in skills/party/SKILL.md and read by ahel’s review.

Companions and group dynamics.

Motto: "You're never alone. Unless you want to be."

Key Concepts

  • Companions have relationships with you AND each other
  • Emergent creation — asking about family CREATES them
  • Maintenance — companions have needs too
  • Selection — commands directed to selected targets (zero, one, many)

Simulation State

In SIMULATION.yml:

party:
  members:
    - characters/don-hopkins/
    - pub/cat-cave/terpie.yml
  leader: characters/don-hopkins/
  formation: line

selection:
  targets: [pub/cat-cave/terpie.yml]  # Always a list

Selection targets: Characters, rooms (rooms are characters too!), objects, concepts.

Recruitment

MethodHow
Ask NPCsRequest they join
FamilyAsk Mother about relatives
SummonUse skill/ability
HirePay gold

Roles

RoleTypes
FrontlineFighter, Guardian, Tank
SupportNavigator, Light-Bearer, Pack Mule
SpecialistPhotographer, Chef, Merchant
MysticOracle, Medium, Postal Savant
WildcardPet, Sibling, Reformed Grue

Commands

  • SELECT [target] / DESELECT
  • PARTY / RECRUIT / DISMISS
  • PARTY FORMATION [line/circle/defensive]
  • HOLD / FOLLOW / SCATTER / REGROUP
  • [COMPANION] GUARD / SCOUT / FETCH

See Also

  • character — Companions are characters
  • needs — Companions have needs
  • room — Rooms can be selection targets

Party Skill — Companions and Group Dynamics

Companions have relationships with you AND each other.

skill: name: party tier: 1 protocol: PARTY-AS-ENSEMBLE description: | Party management for companions, groups, and ensemble play. Companions have relationships with you AND each other. Asking about family/pets CREATES them! motto: "You're never alone. Unless you want to be."

RECRUITMENT

recruitment: methods: ask_npcs: "Ask NPCs to join your party" family: "Ask Mother about family members" summon: "Summon via skill or ability" hire: "Pay gold for mercenaries"

emergent: | Asking about siblings/pets CREATES them! "Do I have a sister?" → Now you do. "What about my childhood dog?" → Dog appears in flashback/spirit.

ROLES

roles: frontline: types: ["Fighter", "Guardian", "Tank"] function: "Takes hits, blocks, protects"

support: types: ["Navigator", "Light-Bearer", "Pack Mule"] function: "Carries, guides, illuminates"

specialist: types: ["Photographer", "Painter", "Chef", "Merchant"] function: "Unique skills for specific situations"

mystic: types: ["Oracle", "Medium", "Postal Savant", "Self Help Guru"] function: "Information, foresight, strange knowledge"

wildcard: types: ["Pet", "Sibling", "Reformed Grue"] function: "Unpredictable, emotional, surprising"

COMMANDS

commands: formation: syntax: "PARTY FORMATION [type]" options: line: "Single file for corridors" circle: "Defensive, protect center" defensive: "Tanks front, support back" scatter: "Spread out for traps"

orders: HOLD: "Stay in place" FOLLOW: "Follow leader" SCATTER: "Everyone spread out" REGROUP: "Come back together"

individual: syntax: "[COMPANION] [action]" actions: GUARD: "Protect a location/person" SCOUT: "Explore ahead" FETCH: "Retrieve an item" DISTRACT: "Draw attention away"

special: SWARM: "All companions attack target" POSSESS: "Take direct control (mystic)" SUMMON: "Call companion from elsewhere"

DYNAMICS

dynamics: intra_party: | Companions have relationships with EACH OTHER. - Siblings may bicker - Pets bond with certain people - Rivals can become friends - Romance possible

maintenance: | Companions have needs too: - Must be fed (hunger) - Need rest (energy) - Crave interaction (social) - Can get bored (fun)

loyalty: | Relationship with leader affects: - Willingness to follow dangerous orders - Combat effectiveness - Likelihood to leave party - Special abilities unlocked

SIMULATION STATE — Party & Selection

simulation_state: description: | Party and selection state lives in SIMULATION.yml (or session state). Tracks who's in the party and who commands are directed to.

structure: | # In SIMULATION.yml or adventure session state

party:
  # References to character homes (not copies)
  members:
    - characters/don-hopkins/
    - pub/cat-cave/terpie.yml
    - characters/bumblewick-fantastipants/

  leader: characters/don-hopkins/
  formation: line

selection:
  # Who commands are directed to (zero, one, or many)
  # Always a list for consistency
  targets: []                    # No one selected
  targets: [characters/don-hopkins/]  # Self
  targets: [pub/cat-cave/terpie.yml]  # One companion
  targets:                       # Multiple
    - pub/cat-cave/terpie.yml
    - pub/cat-cave/stroopwafel.yml

selection_targets: characters: "Players, NPCs, companions, pets" rooms: "Rooms can be characters too — talk to them!" objects: "Animist model — objects can respond" concepts: "Abstract entities (factions, spirits)"

examples: talk_to_room: | selection: targets: [pub/]

  > HELLO
  The pub itself seems to welcome you.
  Warm lights flicker in greeting.

command_multiple: |
  selection:
    targets:
      - pub/cat-cave/terpie.yml
      - pub/cat-cave/stroopwafel.yml

  > FOLLOW ME
  Both cats look up, stretch, and pad after you.

self_selected: |
  selection:
    targets: [characters/don-hopkins/]

  > EXAMINE
  You look at yourself...

commands: SELECT: syntax: "SELECT [target]" | "SELECT [target1], [target2]" effect: "Sets selection.targets"

DESELECT:
  syntax: "DESELECT" | "DESELECT [target]"
  effect: "Clears or removes from selection.targets"

PARTY:
  syntax: "PARTY"
  effect: "Shows current party members and formation"

RECRUIT:
  syntax: "RECRUIT [character]"
  effect: "Adds to party.members"

DISMISS:
  syntax: "DISMISS [character]"
  effect: "Removes from party.members"

EMERGENT CREATION

emergent_creation: principle: | Asking about family or companions CREATES them. The world grows to accommodate your questions.

examples: sister: | Player: "Do I have a sister?" DM: Creates sister with personality, location, relationship

childhood_pet: |
  Player: "What about my old dog?"
  DM: Creates dog (living, spirit, or memory)

mother_help: |
  Player: "Ask Mother who else can help"
  Mother: Reveals cousin, old friend, or creates new NPC

integrates_with:

  • skill: simulation how: "Party and selection state lives in SIMULATION.yml"
  • skill: character how: "Companions are characters"
  • skill: needs how: "Companions have needs"
  • skill: room how: "Companions move through rooms"
  • skill: buff how: "Some companions grant buffs"

Signals

GitHub stars
53
Forks
5
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
party
Source
github.com/simhacker/moollm