Files
zalbot/scripts/lore-archetypes.ts
Kaysser Kayyali b884a13d98
Some checks failed
tests / Unit tests (Node 22) (push) Failing after 28s
fix wizard for new stories
2026-06-20 06:52:19 +00:00

25 lines
1.1 KiB
TypeScript

// npcs section — surface canon flavor for the kinds of figures who fit the
// encounter (how such a figure talks, wants, acts, and is seen), contextual to
// the vibe. For a RANDOM encounter these are archetypes only ("a blood mage
// at a rite", "a bound sacrifice", "a cult acolyte") — never named canon NPCs.
// The wizard names the top ~3-4 as AskUserQuestion "which archetype?" options.
//
// Usage: GRAPHMCP_URL=http://localhost:9000 npx tsx scripts/lore-archetypes.ts "<vibe>" [limit]
// Exit 0 with results / 1 on fetch failure / 2 on usage error.
import { printOptions, sectionQuery } from './loreShared.js';
const vibe = process.argv[2];
const limit = Number(process.argv[3] ?? 8);
if (!vibe) {
console.error('Usage: npx tsx scripts/lore-archetypes.ts "<vibe>" [limit]');
process.exit(2);
}
try {
await printOptions(sectionQuery('Mardonar people by role and archetype — behavior, appearance, reputation, wants, and voice', vibe), limit);
} catch (err) {
console.error(`GraphMCP lookup failed: ${String((err as Error)?.message ?? err)}`);
process.exit(1);
}