SoulFire TypeScript SDK 2.10.3
    Preparing search index...

    Class SoulFireInstance

    An instance handle that groups bot accounts and configuration.

    Obtain it from SoulFireClient.instance or SoulFireClient.getOrCreateInstance. Use getOrCreateBot for provisioning and bot for an existing bot UUID. The instance persists after the client scope closes.

    Index
    • Parameters

      • id: string
      • botClient: Client<typeof BotService>
      • botLiveClient: Client<typeof BotLiveService>
      • instanceClient: Client<typeof InstanceService>
      • OptionalmcAuthClient: Client<
            GenService<
                {
                    loginCredentials: {
                        input: GenMessage<CredentialsAuthRequest>;
                        methodKind: "server_streaming";
                        output: GenMessage<CredentialsAuthResponse>;
                    };
                    loginDeviceCode: {
                        input: GenMessage<DeviceCodeAuthRequest>;
                        methodKind: "server_streaming";
                        output: GenMessage<DeviceCodeAuthResponse>;
                    };
                    refresh: {
                        input: GenMessage<RefreshRequest>;
                        methodKind: "unary";
                        output: GenMessage<RefreshResponse>;
                    };
                },
            >,
        >
      • OptionaltaskClient: Client<
            GenService<
                {
                    cancelBotTask: {
                        input: GenMessage<CancelBotTaskRequest>;
                        methodKind: "unary";
                        output: GenMessage<BotTask>;
                    };
                    getBotTask: {
                        input: GenMessage<GetBotTaskRequest>;
                        methodKind: "unary";
                        output: GenMessage<BotTask>;
                    };
                    listBotTasks: {
                        input: GenMessage<ListBotTasksRequest>;
                        methodKind: "unary";
                        output: GenMessage<ListBotTasksResponse>;
                    };
                    runBotTask: {
                        input: GenMessage<StartBotTaskRequest>;
                        methodKind: "server_streaming";
                        output: GenMessage<BotTaskEvent>;
                    };
                    startBotTask: {
                        input: GenMessage<StartBotTaskRequest>;
                        methodKind: "unary";
                        output: GenMessage<BotTask>;
                    };
                    watchBotTask: {
                        input: GenMessage<WatchBotTaskRequest>;
                        methodKind: "server_streaming";
                        output: GenMessage<BotTaskEvent>;
                    };
                    watchBotTasks: {
                        input: GenMessage<WatchBotTasksRequest>;
                        methodKind: "server_streaming";
                        output: GenMessage<BotTaskEvent>;
                    };
                },
            >,
        >
      • OptionalpathfinderClient: Client<
            GenService<
                {
                    planPath: {
                        input: GenMessage<PlanPathRequest>;
                        methodKind: "unary";
                        output: GenMessage<PlanPathResponse>;
                    };
                },
            >,
        >
      • OptionalchatClient: Client<
            GenService<
                {
                    sendCommand: {
                        input: GenMessage<SendCommandRequest>;
                        methodKind: "unary";
                        output: GenMessage<ChatActionResponse>;
                    };
                    sendPublicChat: {
                        input: GenMessage<SendPublicChatRequest>;
                        methodKind: "unary";
                        output: GenMessage<ChatActionResponse>;
                    };
                    sendWhisper: {
                        input: GenMessage<SendWhisperRequest>;
                        methodKind: "unary";
                        output: GenMessage<ChatActionResponse>;
                    };
                    tabComplete: {
                        input: GenMessage<TabCompleteRequest>;
                        methodKind: "unary";
                        output: GenMessage<TabCompleteResponse>;
                    };
                },
            >,
        >
      • OptionalinventoryClient: Client<
            GenService<
                {
                    closeSemanticContainer: {
                        input: GenMessage<CloseSemanticContainerRequest>;
                        methodKind: "unary";
                        output: GenMessage<InventoryMutationResponse>;
                    };
                    countItems: {
                        input: GenMessage<CountItemsRequest>;
                        methodKind: "unary";
                        output: GenMessage<CountItemsResponse>;
                    };
                    equipItem: {
                        input: GenMessage<EquipItemRequest>;
                        methodKind: "unary";
                        output: GenMessage<InventoryMutationResponse>;
                    };
                    findInventorySlots: {
                        input: GenMessage<FindInventorySlotsRequest>;
                        methodKind: "unary";
                        output: GenMessage<FindInventorySlotsResponse>;
                    };
                    getContainerSnapshot: {
                        input: GenMessage<GetContainerSnapshotRequest>;
                        methodKind: "unary";
                        output: GenMessage<GetContainerSnapshotResponse>;
                    };
                    moveInventoryItem: {
                        input: GenMessage<MoveInventoryItemRequest>;
                        methodKind: "unary";
                        output: GenMessage<InventoryMutationResponse>;
                    };
                    openBlockContainer: {
                        input: GenMessage<OpenBlockContainerRequest>;
                        methodKind: "unary";
                        output: GenMessage<InventoryMutationResponse>;
                    };
                    rankInventoryItems: {
                        input: GenMessage<RankInventoryItemsRequest>;
                        methodKind: "unary";
                        output: GenMessage<RankInventoryItemsResponse>;
                    };
                    selectHotbarItem: {
                        input: GenMessage<SelectHotbarItemRequest>;
                        methodKind: "unary";
                        output: GenMessage<InventoryMutationResponse>;
                    };
                    tossItems: {
                        input: GenMessage<TossItemsRequest>;
                        methodKind: "unary";
                        output: GenMessage<InventoryMutationResponse>;
                    };
                    transferItems: {
                        input: GenMessage<TransferItemsRequest>;
                        methodKind: "unary";
                        output: GenMessage<InventoryMutationResponse>;
                    };
                    unequipItem: {
                        input: GenMessage<UnequipItemRequest>;
                        methodKind: "unary";
                        output: GenMessage<InventoryMutationResponse>;
                    };
                },
            >,
        >
      • OptionalrecipeClient: Client<
            GenService<
                {
                    canCraft: {
                        input: GenMessage<CanCraftRequest>;
                        methodKind: "unary";
                        output: GenMessage<CanCraftResponse>;
                    };
                    listRecipes: {
                        input: GenMessage<ListRecipesRequest>;
                        methodKind: "unary";
                        output: GenMessage<ListRecipesResponse>;
                    };
                    listVillagerTrades: {
                        input: GenMessage<ListVillagerTradesRequest>;
                        methodKind: "unary";
                        output: GenMessage<ListVillagerTradesResponse>;
                    };
                },
            >,
        >
      • OptionalregistryClient: Client<
            GenService<
                {
                    getRegistryEntry: {
                        input: GenMessage<GetRegistryEntryRequest>;
                        methodKind: "unary";
                        output: GenMessage<GetRegistryEntryResponse>;
                    };
                    getRegistryIdentity: {
                        input: GenMessage<GetRegistryIdentityRequest>;
                        methodKind: "unary";
                        output: GenMessage<GetRegistryIdentityResponse>;
                    };
                    listRegistryEntries: {
                        input: GenMessage<ListRegistryEntriesRequest>;
                        methodKind: "unary";
                        output: GenMessage<ListRegistryEntriesResponse>;
                    };
                    listRegistryTags: {
                        input: GenMessage<ListRegistryTagsRequest>;
                        methodKind: "unary";
                        output: GenMessage<ListRegistryTagsResponse>;
                    };
                },
            >,
        >
      • OptionalworldClient: Client<
            GenService<
                {
                    canSeeBlock: {
                        input: GenMessage<CanSeeBlockRequest>;
                        methodKind: "unary";
                        output: GenMessage<CanSeeBlockResponse>;
                    };
                    estimateDigTime: {
                        input: GenMessage<EstimateDigTimeRequest>;
                        methodKind: "unary";
                        output: GenMessage<EstimateDigTimeResponse>;
                    };
                    estimateExplosionDamage: {
                        input: GenMessage<EstimateExplosionDamageRequest>;
                        methodKind: "unary";
                        output: GenMessage<EstimateExplosionDamageResponse>;
                    };
                    getPlayerSnapshot: {
                        input: GenMessage<GetPlayerSnapshotRequest>;
                        methodKind: "unary";
                        output: GenMessage<GetPlayerSnapshotResponse>;
                    };
                    getWorldBlock: {
                        input: GenMessage<GetWorldBlockRequest>;
                        methodKind: "unary";
                        output: GenMessage<GetWorldBlockResponse>;
                    };
                    getWorldEntity: {
                        input: GenMessage<GetWorldEntityRequest>;
                        methodKind: "unary";
                        output: GenMessage<GetWorldEntityResponse>;
                    };
                    queryBlocks: {
                        input: GenMessage<QueryBlocksRequest>;
                        methodKind: "unary";
                        output: GenMessage<QueryBlocksResponse>;
                    };
                    queryEntities: {
                        input: GenMessage<QueryEntitiesRequest>;
                        methodKind: "unary";
                        output: GenMessage<QueryEntitiesResponse>;
                    };
                    raycast: {
                        input: GenMessage<RaycastRequest>;
                        methodKind: "unary";
                        output: GenMessage<RaycastResponse>;
                    };
                },
            >,
        >
      • OptionalprotocolClient: Client<
            GenService<
                {
                    getProtocolInfo: {
                        input: GenMessage<BotProtocolRequest>;
                        methodKind: "unary";
                        output: GenMessage<BotProtocolInfo>;
                    };
                    listPacketSchemas: {
                        input: GenMessage<ListPacketSchemasRequest>;
                        methodKind: "unary";
                        output: GenMessage<ListPacketSchemasResponse>;
                    };
                    sendRawPacket: {
                        input: GenMessage<SendRawPacketRequest>;
                        methodKind: "unary";
                        output: GenMessage<SendRawPacketResponse>;
                    };
                    watchPackets: {
                        input: GenMessage<WatchPacketsRequest>;
                        methodKind: "server_streaming";
                        output: GenMessage<RawPacketEvent>;
                    };
                },
            >,
        >
      • Optionalcapabilities: CapabilitySet
      • OptionalinstanceLiveClient: Client<
            GenService<
                {
                    watchInstanceEvents: {
                        input: GenMessage<WatchInstanceEventsRequest>;
                        methodKind: "server_streaming";
                        output: GenMessage<InstanceEvent>;
                    };
                },
            >,
        >

      Returns SoulFireInstance

    id: string
    • Provision a named account and return a bot, ready by default.

      Parameters

      • name: string

        Stable bot name within this instance.

      • options: GetOrCreateBotOptions = {}

        Authentication, username, startup, and readiness configuration.

      Returns Effect<SoulFireBot, SoulFireOperationError, Scope>

      An Effect that produces a bot handle and requires Scope.

      Names belong to this instance. Repeated calls reuse accounts; conflicting usernames or authentication methods fail. Microsoft accounts use device-code login when no matching account exists. By default, the SDK logs the sign-in code.

      With start: false, this method returns before connection for account configuration. Otherwise it calls SoulFireBot.connect. Cleanup stops an SDK-started bot and preserves a previously running bot. The account persists.