본문으로 건너뛰기

마스트라 클라이언트 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/',
})

RequestContext
requestcontext에 대한 직접 링크

클라이언트 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,
})

requestContextRecord<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 스레드를 가져옵니다. resourceIdagentId가 필요합니다.

createMemoryThread(params):

Promise<MemoryThread>
주어진 매개변수로 새 Memory 스레드를 생성합니다.

getMemoryThread({ threadId, agentId }):

MemoryThread
ID로 특정 Memory 스레드를 가져옵니다.

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 액션을 반환합니다. Agent Builder API를 참조하세요.

getAgentBuilderAction(actionId):

AgentBuilder
ID로 Agent Builder 액션을 가져옵니다. Agent Builder API를 참조하세요.

responses:

Responses
create(), retrieve(), stream(), delete()을 포함하는 OpenAI 스타일 Responses API 도우미를 제공합니다.

conversations:

Conversations
create(), retrieve(), delete(), items.list()을 포함하는 대화 도우미를 제공합니다.

getVector(vectorName):

MastraVector
이름으로 벡터 저장소 인스턴스를 반환합니다.

listLogs(params):

Promise<LogEntry[]>
제공된 필터와 일치하는 시스템 로그를 가져옵니다.

getLog(params):

Promise<LogEntry>
ID 또는 필터로 특정 로그 항목을 가져옵니다.

listLogTransports():

string[]
구성된 로그 전송 유형 목록을 반환합니다.

getTrace(traceId):

Promise<TraceRecord>
모든 span과 세부 정보를 포함하여 ID로 특정 Trace를 가져옵니다.

getTraces(params):

Promise<GetTracesResponse>
선택적으로 필터링하여 Trace 루트 span의 페이지가 매겨진 목록을 가져옵니다. 모든 span이 포함된 완전한 Trace를 가져오려면 getTrace()를 사용하세요.