> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.forboc.ai/ue/blueprint/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.forboc.ai/_mcp/server. # Blueprint Guide > Blueprint wrappers for the current UE SDK surface The implemented Blueprint-callable surface in the current plugin is `UForbocAIBlueprintLibrary`. These functions are thin wrappers over `SDKOps::*`. ```cpp #include "RuntimeBlueprintLibrary.h" ``` ## Available Blueprint Calls ### System and config * `CheckApiStatus() -> FString` * `ConfigSet(Key, Value)` * `ConfigGet(Key) -> FString` ### NPC * `CreateNpc(Persona) -> FString` * `ProcessNpc(NpcId, Text) -> FString` * `HasActiveNpc() -> bool` ### Memory * `MemoryStore(NpcId, Observation)` * `MemoryClear(NpcId)` ### Ghost * `GhostRun(TestSuite, Duration) -> FString` * `GhostStop(SessionId) -> FString` ### Soul * `ExportSoul(NpcId) -> FString` * `ImportSoul(TxId) -> FString` * `VerifySoul(TxId) -> bool` ### Bridge * `ValidateBridgeAction(ActionJson) -> bool` ## Minimal Blueprint Workflow 1. Call `ConfigSet("apiUrl", "https://api.forboc.ai")` 2. Call `ConfigSet("apiKey", "")` 3. Call `CreateNpc(Persona)` and keep the returned NPC id 4. Call `ProcessNpc(NpcId, Input)` to get dialogue text 5. Optionally call `ExportSoul(NpcId)` or `VerifySoul(TxId)` ## Important Limitation The Blueprint library is intentionally small. It does not expose the full store/thunk runtime, and it does not currently give you explicit Blueprint control over local cortex or node-memory initialization. If you need: * direct slice access * custom store instances * local cortex initialization * local node-memory initialization * direct async thunk composition use C++ with `createSDKStore()` and the `rtk::*Thunk` APIs instead. ## C++ Equivalent The Blueprint wrappers call the same synchronous helpers you can use in C++: ```cpp #include "RuntimeStore.h" #include "CLI/CliOperations.h" auto Store = createSDKStore(); FNPCInternalState Npc = SDKOps::CreateNpc(Store, TEXT("A cautious merchant")); FAgentResponse Response = SDKOps::ProcessNpc(Store, Npc.Id, TEXT("Hello")); ``` > Blueprint wrappers for the current UE SDK surface