diff --git a/loop/server/loophttp.go b/loop/server/loophttp.go
index cc183d3..dcb315f 100644
--- a/loop/server/loophttp.go
+++ b/loop/server/loophttp.go
@@ -159,6 +159,7 @@
 	DiffLinesRemoved     int                           `json:"diff_lines_removed"`              // Lines removed from sketch-base to HEAD
 	OpenPorts            []Port                        `json:"open_ports,omitempty"`            // Currently open TCP ports
 	TokenContextWindow   int                           `json:"token_context_window,omitempty"`
+	Model                string                        `json:"model,omitempty"` // Name of the model being used
 	SessionEnded         bool                          `json:"session_ended,omitempty"`
 	CanSendMessages      bool                          `json:"can_send_messages,omitempty"`
 	EndedAt              time.Time                     `json:"ended_at,omitempty"`
@@ -1386,6 +1387,7 @@
 		DiffLinesRemoved:     diffRemoved,
 		OpenPorts:            s.getOpenPorts(),
 		TokenContextWindow:   s.agent.TokenContextWindow(),
+		Model:                s.agent.ModelName(),
 	}
 }
 
diff --git a/loop/server/loophttp_test.go b/loop/server/loophttp_test.go
index 04a18ba..fa591b2 100644
--- a/loop/server/loophttp_test.go
+++ b/loop/server/loophttp_test.go
@@ -35,6 +35,7 @@
 	slug                     string
 	retryNumber              int
 	skabandAddr              string
+	model                    string
 }
 
 // TokenContextWindow implements loop.CodingAgent.
@@ -42,6 +43,11 @@
 	return 200000
 }
 
+// ModelName implements loop.CodingAgent.
+func (m *mockAgent) ModelName() string {
+	return m.model
+}
+
 func (m *mockAgent) NewIterator(ctx context.Context, nextMessageIdx int) loop.MessageIterator {
 	m.mu.RLock()
 	// Send existing messages that should be available immediately
@@ -293,6 +299,7 @@
 		branchName:               "sketch/test-branch",
 		branchPrefix:             "sketch/",
 		slug:                     "test-slug",
+		model:                    "fake-model",
 	}
 
 	// Add the initial messages before creating the server
@@ -428,6 +435,7 @@
 	mockAgent := &mockAgent{
 		workingDir:   t.TempDir(), // Use a temp directory
 		branchPrefix: "sketch/",
+		model:        "fake-model",
 	}
 
 	// Create the server with the mock agent
@@ -475,6 +483,7 @@
 	mockAgent := &mockAgent{
 		workingDir:   t.TempDir(), // Use a temp directory
 		branchPrefix: "sketch/",
+		model:        "fake-model",
 	}
 
 	// Create the server with the mock agent
@@ -514,6 +523,7 @@
 		messageCount: 0,
 		sessionID:    "test-session",
 		branchPrefix: "sketch/",
+		model:        "fake-model",
 	}
 
 	ctx := context.Background()
@@ -618,6 +628,7 @@
 		branchPrefix:  "test-",
 		workingDir:    "/tmp/test",
 		sessionID:     "test-session",
+		model:         "fake-model",
 		slug:          "test-slug",
 		skabandAddr:   "http://localhost:8080",
 	}
@@ -686,6 +697,7 @@
 	mockAgent := &mockAgent{
 		workingDir:   t.TempDir(),
 		branchPrefix: "sketch/",
+		model:        "fake-model",
 	}
 
 	// Create the server with the mock agent
@@ -771,6 +783,7 @@
 	mockAgent := &mockAgent{
 		workingDir:   t.TempDir(),
 		branchPrefix: "sketch/",
+		model:        "fake-model",
 	}
 
 	// Create the server with the mock agent
