User Stories
Behavior-driven stories aligned to current SDK runtime
NPC Processing
Feature: NPC protocol executionScenario: Process one player input with API-directed protocolGiven an SDK store with an NPC registered via setNPCInfoAnd a local cortex runtime is initializedWhen I dispatch processNPC with npcId, text, apiUrl, and cortexThen the SDK runs the `/npcs/{npcId}/process` continuation loopAnd compatibility integrations may use directive/context/verdict sequenceAnd I receive dialogue and optional action in the thunk result
Memory Operations
Feature: Remote memory operationsScenario: List and recall memories by npcIdGiven a valid API URL and keyWhen I dispatch listMemoryRemoteThunk for an npcIdAnd I dispatch recallMemoryRemoteThunk with a queryThen memory entries are returned from API-backed memory endpoints
Bridge Validation
Feature: Bridge rule validationScenario: Validate an action payloadGiven a candidate NPC action and validation contextWhen I dispatch validateBridgeThunkThen I receive a validation result containing valid/reason fields
Soul Portability
Feature: Soul export and importScenario: Export and re-import an NPC soulGiven an active NPC in store stateWhen I dispatch remoteExportSoulThunkAnd I dispatch importSoulFromArweaveThunk with the txIdThen I can retrieve the soul payload for reuse
CLI Operations
Feature: Node CLI operationsScenario: Verify runtime and execute npc turnGiven API config is set using config setWhen I run forbocai statusAnd I run forbocai npc process <npcId> <input>Then the CLI prints protocol output or actionable errors
