send()/stream() separado. A superfície da API se reduzia a criar uma sessão, enviar uma mensagem e transmitir a resposta:
createSession()/resumeSession(): Iniciar ou continuar uma conversasession.send(): Enviar uma mensagemsession.stream(): Obter a resposta
Instalação
Agent SDK 0.2.x é a última versão que inclui a interface V2. A versão do pacote saltou de 0.2.x diretamente para 0.3.142, portanto a versão de remoção acima e o pin de instalação abaixo descrevem o mesmo limite. Para instalar a última versão compatível com V2, fixe a versão principal e secundária:O SDK agrupa um binário nativo do Claude Code para sua plataforma como uma dependência opcional, portanto a maioria das instalações não precisa de uma instalação separada do Claude Code. Consulte a nota de instalação do quickstart para as instalações que precisam de uma.
Início rápido
Prompt único
Para consultas simples de turno único onde você não precisa manter uma sessão, useunstable_v2_prompt(). Este exemplo envia uma pergunta de matemática e registra a resposta:
Sessão básica
Para interações além de um único prompt, crie uma sessão. V2 separa envio e streaming em etapas distintas:send()envia sua mensagemstream()transmite a resposta
await using (TypeScript 5.2+) para fechar automaticamente a sessão quando o bloco sai. Você também pode chamar session.close() manualmente.
Conversa multi-turno
As sessões persistem contexto em múltiplas trocas. Para continuar uma conversa, chamesend() novamente na mesma sessão. Claude se lembra dos turnos anteriores.
Este exemplo faz uma pergunta de matemática e depois faz um acompanhamento que referencia a resposta anterior:
Retomada de sessão
Se você tiver um ID de sessão de uma interação anterior, poderá retomá-lo mais tarde. Isso é útil para fluxos de trabalho de longa duração ou quando você precisa persistir conversas entre reinicializações de aplicativo. Este exemplo cria uma sessão, armazena seu ID, a fecha e depois retoma a conversa:Limpeza
As sessões podem ser fechadas manualmente ou automaticamente usandoawait using, um recurso do TypeScript 5.2+ para limpeza automática de recursos. Se você estiver usando uma versão mais antiga do TypeScript ou encontrar problemas de compatibilidade, use limpeza manual em seu lugar.
Os exemplos abaixo mostram apenas o padrão de limpeza e não enviam nenhuma mensagem, portanto, executá-los não produz nenhuma saída.
Limpeza automática (TypeScript 5.2+):
Referência da API
unstable_v2_createSession()
Cria uma nova sessão para conversas multi-turno.
unstable_v2_resumeSession()
Retoma uma sessão existente por ID.
unstable_v2_prompt()
Função de conveniência única para consultas de turno único.
Interface SDKSession
Disponibilidade de recursos
A API de sessão V2 não suporta todos os recursos V1. Os seguintes requerem o SDK V1:- Bifurcação de sessão (opção
forkSession) - Alguns padrões avançados de entrada de streaming
Veja também
- Referência do SDK TypeScript (V1) - Documentação completa do SDK V1
- Visão geral do SDK - Conceitos gerais do SDK
- Exemplos V2 no GitHub - Exemplos de código funcionando