> Discover all available pages from the documentation index: https://mastra.zisheng.pro/ko/llms.txt # 마스트라 클라이언트 SDK Mastra Client SDK는 사용자와 상호 작용하기 위한 유형이 안전한 인터페이스를 제공합니다.[Mastra Server](https://mastra.zisheng.pro/ko/docs/deployment/mastra-server)클라이언트 환경에서. ## 사용예 ```typescript import { MastraClient } from '@mastra/client-js' export const mastraClient = new MastraClient({ baseUrl: 'http://localhost:4111/', }) ``` ## `RequestContext` 클라이언트 SDK에서 `RequestContext`를 사용할 때는 `@mastra/client-js`에서 가져오세요. ```typescript 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`로 전달할 수도 있습니다. ## 매개변수 **baseUrl** (`string`): Mastra API의 기본 URL입니다. 모든 요청은 이 URL을 기준으로 전송됩니다. **retries** (`number`): 오류를 발생시키기 전에 실패한 요청을 재시도할 횟수입니다. (Default: `3`) **backoffMs** (`number`): 실패한 요청을 재시도하기 전의 초기 지연 시간(밀리초)입니다. 재시도할 때마다 값이 두 배로 증가합니다(지수 백오프). (Default: `300`) **maxBackoffMs** (`number`): 최대 백오프 시간(밀리초)입니다. 재시도 사이의 대기 시간이 지나치게 길어지는 것을 방지합니다. (Default: `5000`) **headers** (`Record`): 모든 요청에 포함할 사용자 지정 HTTP 헤더가 담긴 객체입니다. **credentials** (`"omit" | "same-origin" | "include"`): 요청의 자격 증명 모드입니다. 자세한 내용은 https\://developer.mozilla.org/en-US/docs/Web/API/Request/credentials 를 참조하세요. ## 행동 양식 **listAgents()** (`Promise>`): 사용 가능한 모든 Agent 인스턴스를 반환합니다. **getAgent(agentId)** (`Agent`): ID로 특정 Agent 인스턴스를 가져옵니다. **listMemoryThreads(params)** (`Promise`): 지정된 리소스와 Agent의 Memory 스레드를 가져옵니다. resourceId와 agentId가 필요합니다. **createMemoryThread(params)** (`Promise`): 주어진 매개변수로 새 Memory 스레드를 생성합니다. **getMemoryThread({ threadId, agentId })** (`MemoryThread`): ID로 특정 Memory 스레드를 가져옵니다. **saveMessageToMemory(params)** (`Promise<{ messages: (MastraMessageV1 | MastraDBMessage)[] }>`): 하나 이상의 메시지를 Memory 시스템에 저장합니다. 저장된 메시지를 반환합니다. **getMemoryStatus()** (`Promise`): Memory 시스템의 현재 상태를 반환합니다. **listTools()** (`Record`): 사용 가능한 모든 Tool을 반환합니다. **getTool(toolId)** (`Tool`): ID로 특정 Tool 인스턴스를 가져옵니다. **listWorkflows()** (`Record`): 사용 가능한 모든 Workflow 인스턴스를 반환합니다. **getWorkflow(workflowId)** (`Workflow`): ID로 특정 Workflow 인스턴스를 가져옵니다. **getAgentBuilderActions()** (`Promise>`): 사용 가능한 모든 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`): 제공된 필터와 일치하는 시스템 로그를 가져옵니다. **getLog(params)** (`Promise`): ID 또는 필터로 특정 로그 항목을 가져옵니다. **listLogTransports()** (`string[]`): 구성된 로그 전송 유형 목록을 반환합니다. **getTrace(traceId)** (`Promise`): 모든 span과 세부 정보를 포함하여 ID로 특정 Trace를 가져옵니다. **getTraces(params)** (`Promise`): 선택적으로 필터링하여 Trace 루트 span의 페이지가 매겨진 목록을 가져옵니다. 모든 span이 포함된 완전한 Trace를 가져오려면 getTrace()를 사용하세요.