dify/dify-agent-runtime/internal/agentcli/connect.go
Yunlu Wen 302d7b1e1b
feat(agent): shellctl rewritten in go (#38841)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-07-15 01:58:36 +00:00

38 lines
761 B
Go

package agentcli
import (
"context"
"encoding/json"
"fmt"
)
const agentStubProtocolVersion = 1
// ConnectResponse is the JSON output for `dify-agent connect --json`.
type ConnectResponse struct {
ConnectionID string `json:"connection_id"`
Status string `json:"status"`
}
// RunConnect executes the connect command.
func RunConnect(env *Environment, argv []string, jsonOutput bool) error {
client, err := NewStubClient(env)
if err != nil {
return err
}
defer func() { _ = client.Close() }()
resp, err := client.Connect(context.Background(), argv, "{}")
if err != nil {
return err
}
if jsonOutput {
out, _ := json.Marshal(resp)
fmt.Println(string(out))
} else {
fmt.Printf("connected %s\n", resp.ConnectionID)
}
return nil
}