Mastra client SDK
Mastra Client SDK 提供类型安全的接口,用于从客户端环境与 Mastra Server 交互。
使用示例使用示例的直接链接
lib/mastra/mastra-client.ts
import { MastraClient } from '@mastra/client-js'
export const mastraClient = new MastraClient({
baseUrl: 'http://localhost:4111/',
})
RequestContextrequestcontext的直接链接
在 client SDK 中使用 RequestContext 时,请从 @mastra/client-js 导入。
import { MastraClient, RequestContext } from '@mastra/client-js'
const client = new MastraClient({
baseUrl: 'http://localhost:4111/',
})
const requestContext = new RequestContext()
requestContext.set('userId', 'user-123')
const agent = client.getAgent('support-agent')
const response = await agent.generate('Summarize this ticket', {
requestContext,
})
你也可以将 requestContext 作为 Record<string, any> 传入。
参数参数的直接链接
baseUrl:
string
Mastra API 的基础 URL。所有请求都将相对于此 URL 发送。
retries?:
number
= 3
请求失败后、抛出错误前的重试次数。
backoffMs?:
number
= 300
重试失败请求前的初始延迟(以毫秒为单位)。每次重试时,此值都会加倍(指数退避)。
maxBackoffMs?:
number
= 5000
最大退避时间(以毫秒为单位)。防止两次尝试之间等待过久。
headers?:
Record<string, string>
包含自定义 HTTP 标头的对象,这些标头会随每个请求一起发送。
credentials?:
"omit" | "same-origin" | "include"
请求的凭据模式。更多信息请参阅 https://developer.mozilla.org/en-US/docs/Web/API/Request/credentials。
方法方法的直接链接
listAgents():
Promise<Record<string, GetAgentResponse>>
返回所有可用的 Agent 实例。
getAgent(agentId):
Agent
通过 ID 检索特定 Agent 实例。
listMemoryThreads(params):
Promise<StorageThreadType[]>
检索指定资源和 Agent 的 memory thread。需要
resourceId 和 agentId。createMemoryThread(params):
Promise<MemoryThread>
使用给定参数创建新的 memory thread。
getMemoryThread({ threadId, agentId }):
MemoryThread
通过 ID 获取特定 memory thread。
saveMessageToMemory(params):
Promise<{ messages: (MastraMessageV1 | MastraDBMessage)[] }>
将一条或多条消息保存到 memory 系统。返回已保存的消息。
getMemoryStatus():
Promise<MemoryStatus>
返回 memory 系统的当前状态。
listTools():
Record<string, Tool>
返回所有可用的 Tool。
getTool(toolId):
Tool
通过 ID 检索特定 Tool 实例。
listWorkflows():
Record<string, Workflow>
返回所有可用的 Workflow 实例。
getWorkflow(workflowId):
Workflow
通过 ID 检索特定 Workflow 实例。
getAgentBuilderActions():
Promise<Record<string, WorkflowInfo>>
返回所有可用的 Agent Builder action。请参阅 Agent Builder API。
getAgentBuilderAction(actionId):
AgentBuilder
通过 ID 检索 Agent Builder action。请参阅 Agent Builder API。
responses:
Responses
提供 OpenAI 风格的 Responses API 辅助方法,包括
create()、retrieve()、stream() 和 delete()。conversations:
Conversations
提供对话辅助方法,包括
create()、retrieve()、delete() 和 items.list()。getVector(vectorName):
MastraVector
按名称返回向量存储实例。
listLogs(params):
Promise<LogEntry[]>
获取与所提供筛选条件匹配的系统日志。
getLog(params):
Promise<LogEntry>
通过 ID 或筛选条件检索特定日志条目。
listLogTransports():
string[]
返回已配置日志 transport 类型的列表。
getTrace(traceId):
Promise<TraceRecord>
通过 ID 检索特定 Trace,包括其所有 span 和详细信息。
getTraces(params):
Promise<GetTracesResponse>
检索可选筛选的 Trace 根 span 分页列表。使用 getTrace() 获取包含所有 span 的完整 Trace。