Dismiss Party Member
Context: The
skill-contexthook injects NPC state when this skill is invoked. Use theProject dirvalue as$PROJECT_DIRin bash commands below. The active party name is available directly from hook context.
Remove a character's membership from a party. The character bead itself survives — only the party link is removed.
Arguments
$ARGUMENTS
Parse Arguments
- •identifier (required): One of:
- •A 1-based index number (position in roster)
- •A character name (matched against child bead titles)
- •A role label (matched against
role:*labels on child beads)
- •--party name: Target party. If omitted, uses the active party.
Steps
- •
Resolve target party. If
--partyprovided, resolve viaresolve-party.sh. Otherwise use active party from hook context and resolve. If no active party, error: "No active party. Use/party active <name>or specify--party <name>." - •
Get party members:
bashbd children "$PARTY_ID" --json
- •
Resolve the member:
- •If identifier is a number (1-N), use it as a 1-based index into the children array.
- •If identifier is a string, match case-insensitively against:
- •Child bead titles (character names)
- •
role:*labels on child beads
- •If no match found, error: "No member matching '<identifier>' in party."
- •
Show the member to be dismissed:
codeDismissing **<character name>** from **<party-name>**.
- •
Confirm with the user before removing.
- •
Remove the parent-child dependency (character stays, link removed):
bashbd dep remove "$CHAR_ID" "$PARTY_ID"
- •
Announce:
codeDismissed **<character name>** from **<party-name>**. The character bead is preserved — they can be recruited to another party. Party now has <N> members.
- •
Show updated roster. If the party is now empty, note: "Party is empty. Use
/recruitto add members."