@@ -38,13 +38,6 @@ func WithRemoteAgentFilename(filename string) RemoteRuntimeOption {
3838 }
3939}
4040
41- // WithRemoteSessionID sets the session ID for the remote runtime
42- func WithRemoteSessionID (sessionID string ) RemoteRuntimeOption {
43- return func (r * RemoteRuntime ) {
44- r .sessionID = sessionID
45- }
46- }
47-
4841// NewRemoteRuntime creates a new remote runtime that implements the Interface
4942func NewRemoteRuntime (client * Client , opts ... RemoteRuntimeOption ) (* RemoteRuntime , error ) {
5043 if client == nil {
@@ -83,31 +76,16 @@ func (r *RemoteRuntime) RunStream(ctx context.Context, sess *session.Session) <-
8376 // Convert session messages to remote.Message format
8477 messages := r .convertSessionMessages (sess )
8578
86- // Use the session ID if available, otherwise try to create one
87- sessionID := r .sessionID
88- if sessionID == "" && sess .ID != "" {
89- sessionID = sess .ID
90- }
91- if sessionID == "" {
92- // Create a new session if none exists
93- newSess , err := r .client .CreateSession (ctx , nil )
94- if err != nil {
95- events <- Error (fmt .Sprintf ("failed to create remote session: %v" , err ))
96- return
97- }
98- sessionID = newSess .ID
99- r .sessionID = sessionID
100- slog .Debug ("Created new remote session" , "session_id" , sessionID )
101- }
79+ r .sessionID = sess .ID
10280
10381 // Start streaming from remote client
10482 var streamChan <- chan Event
10583 var err error
10684
10785 if r .currentAgent != "" && r .currentAgent != "root" {
108- streamChan , err = r .client .RunAgentWithAgentName (ctx , sessionID , r .agentFilename , r .currentAgent , messages )
86+ streamChan , err = r .client .RunAgentWithAgentName (ctx , r . sessionID , r .agentFilename , r .currentAgent , messages )
10987 } else {
110- streamChan , err = r .client .RunAgent (ctx , sessionID , r .agentFilename , messages )
88+ streamChan , err = r .client .RunAgent (ctx , r . sessionID , r .agentFilename , messages )
11189 }
11290
11391 if err != nil {
0 commit comments