INNER CODE UNIT · Go
func
k1LoW/runn · agent_claude.go:80
func (p *claudeProvider) Run(ctx context.Context, req *agentRunRequest) (*AgentResponse, error) {
if req.clearContext && p.client != nil {
if err := p.client.Close(); err != nil {
p.client = nil
return nil, fmt.Errorf("claude agent close for context reset: %w", err)
}
p.client = nil
}
if p.client == nil {
c := agent.NewClient(p.opts...)
if err := c.Connect(ctx); err != nil {
return nil, fmt.Errorf("claude agent connect: %w", err)
}
p.client = c
}
if err := p.client.Send(ctx, req.prompt); err != nil {