Skip to content

core / Exports / Robota

Class: Robota

Main class for Robota (refactored version) Provides an interface for initializing and running agents

Example

ts
const robota = new Robota({
  aiProviders: { openai: openaiProvider },
  currentProvider: 'openai',
  currentModel: 'gpt-4',
  systemPrompt: 'You are a helpful AI assistant.'
});

const response = await robota.execute('Hello!');

Table of contents

Constructors

Methods

Constructors

constructor

new Robota(options): Robota

Create a Robota instance

Parameters

NameTypeDescription
optionsRobotaOptionsRobota initialization options

Returns

Robota

Defined in

robota.ts:116

Methods

addAIProvider

addAIProvider(name, aiProvider): void

Add an AI provider

Parameters

NameType
namestring
aiProviderAIProvider

Returns

void

Defined in

robota.ts:176


setCurrentAI

setCurrentAI(providerName, model): void

Set the current AI provider and model

Parameters

NameType
providerNamestring
modelstring

Returns

void

Defined in

robota.ts:183


getCurrentAI

getCurrentAI(): Object

Get the currently configured AI provider and model

Returns

Object

NameType
provider?string
model?string

Defined in

robota.ts:190


setSystemPrompt

setSystemPrompt(prompt): void

Set a single system prompt

Parameters

NameType
promptstring

Returns

void

Defined in

robota.ts:201


setSystemMessages

setSystemMessages(messages): void

Set multiple system messages

Parameters

NameType
messagesMessage[]

Returns

void

Defined in

robota.ts:208


addSystemMessage

addSystemMessage(content): void

Add a system message

Parameters

NameType
contentstring

Returns

void

Defined in

robota.ts:215


setFunctionCallMode

setFunctionCallMode(mode): void

Set function call mode

Parameters

NameType
modeFunctionCallMode

Returns

void

Defined in

robota.ts:226


configureFunctionCall

configureFunctionCall(config): void

Configure function call settings

Parameters

NameType
configObject
config.mode?FunctionCallMode
config.maxCalls?number
config.timeout?number
config.allowedFunctions?string[]

Returns

void

Defined in

robota.ts:233


setMaxTokenLimit

setMaxTokenLimit(limit): void

Set maximum token limit (0 = unlimited)

Parameters

NameType
limitnumber

Returns

void

Defined in

robota.ts:254


setMaxRequestLimit

setMaxRequestLimit(limit): void

Set maximum request limit (0 = unlimited)

Parameters

NameType
limitnumber

Returns

void

Defined in

robota.ts:261


getMaxTokenLimit

getMaxTokenLimit(): number

Get current maximum token limit

Returns

number

Defined in

robota.ts:268


getMaxRequestLimit

getMaxRequestLimit(): number

Get current maximum request limit

Returns

number

Defined in

robota.ts:275


getLimitInfo

getLimitInfo(): Object

Get comprehensive limit information

Returns

Object

NameType
maxTokensnumber
maxRequestsnumber
currentTokensUsednumber
currentRequestCountnumber
remainingTokens?number
remainingRequests?number
isTokensUnlimitedboolean
isRequestsUnlimitedboolean

Defined in

robota.ts:282


getRequestCount

getRequestCount(): number

Get total number of requests made

Returns

number

Defined in

robota.ts:293


getTotalTokensUsed

getTotalTokensUsed(): number

Get total number of tokens used

Returns

number

Defined in

robota.ts:300


getAnalytics

getAnalytics(): Object

Get detailed analytics data

Returns

Object

NameType
requestCountnumber
totalTokensUsednumber
averageTokensPerRequestnumber
tokenUsageHistory{ timestamp: Date ; tokens: number ; provider: string ; model: string }[]

Defined in

robota.ts:307


resetAnalytics

resetAnalytics(): void

Reset all analytics data

Returns

void

Defined in

robota.ts:314


getTokenUsageByPeriod

getTokenUsageByPeriod(startDate, endDate?): Object

Get token usage for a specific time period

Parameters

NameType
startDateDate
endDate?Date

Returns

Object

NameType
totalTokensnumber
requestCountnumber
usageHistory{ timestamp: Date ; tokens: number ; provider: string ; model: string }[]

Defined in

robota.ts:322


run

run(prompt, options?): Promise<string>

Execute a text prompt

Parameters

NameType
promptstring
optionsRunOptions

Returns

Promise<string>

Deprecated

Use execute() instead. This method will be removed in a future version.

Defined in

robota.ts:334


execute

execute(prompt, options?): Promise<string>

Execute a text prompt

Parameters

NameType
promptstring
optionsRunOptions

Returns

Promise<string>

Defined in

robota.ts:344


chat

chat(message, options?): Promise<string>

Process chat message and generate response

Parameters

NameType
messagestring
optionsRunOptions

Returns

Promise<string>

Defined in

robota.ts:405


runStream

runStream(prompt, options?): Promise<AsyncIterable<StreamingResponseChunk, any, any>>

Generate streaming response

Parameters

NameType
promptstring
optionsRunOptions

Returns

Promise<AsyncIterable<StreamingResponseChunk, any, any>>

Deprecated

Use executeStream() instead. This method will be removed in a future version.

Defined in

robota.ts:466


executeStream

executeStream(prompt, options?): Promise<AsyncIterable<StreamingResponseChunk, any, any>>

Generate streaming response

Parameters

NameType
promptstring
optionsRunOptions

Returns

Promise<AsyncIterable<StreamingResponseChunk, any, any>>

Defined in

robota.ts:476


addResponseToConversationHistory

addResponseToConversationHistory(response): void

Add response message to conversation history

Parameters

NameType
responseModelResponse

Returns

void

Defined in

robota.ts:494


clearConversationHistory

clearConversationHistory(): void

Clear conversation history

Returns

void

Defined in

robota.ts:501


callTool

callTool(toolName, parameters): Promise<any>

Call a tool (public API)

Parameters

NameType
toolNamestring
parametersRecord<string, any>

Returns

Promise<any>

Defined in

robota.ts:568


getAvailableTools

getAvailableTools(): any[]

Get list of available tools

Returns

any[]

Defined in

robota.ts:575


close

close(): Promise<void>

Release resources

Returns

Promise<void>

Defined in

robota.ts:582

Released under the MIT License.