Channing Conger and GitHub
c9dc0f6338
code-mode: introduce durable session interface ( #24180 )
...
## Summary
Introduce a `CodeModeSession` interface for executing and managing
code-mode cells.
This moves cell lifecycle, callback delegation, termination, and
shutdown behind a session abstraction, while continuing to use the
existing in-process implementation, and the ability to implement an
external process one behind this interface.
A Codex session owns one `CodeModeSession`, which in turn owns its
running cells and stored code-mode state. Each cell is represented to
the caller as a `StartedCell`, exposing its cell ID and initial
response.
It also introduces a `CodeModeSessionDelegate` callback interface. A
session uses the delegate to invoke nested host tools and emit
notifications while a cell is running, allowing the runtime to
communicate with its owning Codex session without depending directly on
core turn handling.
<img width="2121" height="1001" alt="image"
src="https://github.com/user-attachments/assets/c349a819-2a59-485c-bda4-2caf68ac4c31 "
/>
2026-05-29 11:42:52 -07:00
..
2026-05-29 11:28:12 -07:00
2026-04-21 10:22:36 -07:00
2026-04-07 00:32:41 +00:00
2026-05-29 18:49:21 +02:00
2026-05-29 10:28:25 +02:00
2026-05-28 14:56:53 -07:00
2026-05-28 14:56:53 -07:00
2026-05-07 10:16:10 -07:00
2026-05-28 15:26:55 -07:00
2026-05-29 11:42:52 -07:00
2026-05-26 13:02:34 -07:00
2026-05-28 15:26:55 -07:00
2026-05-29 11:42:52 -07:00
2026-05-28 15:26:55 -07:00
2026-03-24 18:10:53 -07:00
2026-05-19 21:56:46 -07:00
2026-05-19 21:56:46 -07:00
2026-04-07 21:20:22 +00:00
2026-05-11 16:33:44 -07:00
2026-05-08 12:36:02 -07:00
2026-05-18 09:57:54 -07:00
2026-05-18 09:57:54 -07:00
2026-05-08 12:36:02 -07:00
2026-05-29 11:28:12 -07:00
2026-05-28 14:54:39 -07:00
2026-05-28 14:54:39 -07:00
2026-05-29 11:24:39 +02:00
2026-03-12 08:16:36 -07:00
2026-04-01 23:06:24 -07:00
2026-05-27 11:09:33 -07:00
2026-05-27 11:09:33 -07:00
2026-05-11 19:51:51 -07:00
2026-05-28 07:23:08 -07:00
2026-05-14 15:16:15 +02:00
2026-05-27 14:52:06 -07:00
2026-05-26 08:21:15 -07:00
2026-03-12 00:35:21 -07:00
2026-05-19 12:55:34 -07:00
2026-05-29 10:28:25 +02:00
2026-05-15 15:04:04 -07:00
2026-04-26 15:10:53 -07:00
2026-04-26 15:10:53 -07:00
2026-05-16 12:12:37 -07:00
2026-05-16 12:12:37 -07:00
2026-05-11 11:37:53 -07:00
2026-05-28 15:26:55 -07:00
2026-05-28 15:26:55 -07:00
2026-05-13 11:31:27 +02:00
2026-05-18 10:53:49 -07:00
2026-05-29 10:28:25 +02:00
2026-05-28 14:54:39 -07:00
2026-04-28 13:03:28 +02:00
2026-04-28 19:43:44 -07:00
2026-05-26 11:01:18 +02:00
2026-05-13 11:15:25 -07:00
2026-05-21 17:19:54 +02:00
2026-05-26 20:59:47 -07:00
2026-05-27 14:52:06 -07:00
2026-05-26 08:21:15 -07:00
2026-05-28 10:24:03 -07:00
2026-05-28 10:24:03 -07:00
2026-05-07 10:36:32 +02:00
2026-05-19 11:24:09 +02:00
2026-03-25 11:05:35 -07:00
2026-04-02 23:00:02 -07:00
2026-04-09 10:53:06 -07:00
2026-05-20 17:10:37 -07:00
2026-05-20 17:10:37 -07:00
2026-04-24 17:49:29 -07:00
2026-05-11 11:32:40 -07:00
2026-05-28 14:54:39 -07:00
2026-05-26 10:34:43 +02:00
2026-05-19 12:55:34 -07:00
2026-05-06 02:12:31 +00:00
2026-04-23 10:17:09 -07:00
2026-05-20 16:03:51 -07:00
2026-05-20 16:03:51 -07:00
2026-04-16 14:30:57 -07:00
2026-05-26 11:01:18 +02:00
2026-04-01 23:06:24 -07:00
2026-04-14 14:26:10 -07:00
2026-05-05 15:25:19 -07:00
2026-05-19 11:03:47 -07:00
2026-05-07 11:33:47 +02:00
2026-05-15 10:58:50 -07:00
2026-05-15 10:58:50 -07:00
2026-04-20 22:39:17 -07:00
2026-04-03 00:33:34 -07:00
2026-05-27 11:09:33 -07:00
2026-02-10 17:03:46 -08:00
2026-05-04 11:46:03 -07:00
2026-05-04 11:46:03 -07:00
2026-03-27 19:00:44 -07:00
2026-04-02 13:47:10 -07:00
2026-05-19 01:24:19 +00:00
2026-04-14 14:26:10 -07:00
2026-05-04 11:46:03 -07:00
2026-05-20 15:30:01 +02:00
2026-05-29 17:33:13 +00:00
2026-05-26 20:59:47 -07:00
2026-05-28 14:54:39 -07:00
2026-05-29 11:28:12 -07:00
2026-05-27 15:49:08 +02:00
2026-05-27 15:49:08 +02:00
2026-05-07 18:05:45 +02:00
2026-05-07 18:05:45 +02:00
2026-05-29 11:28:12 -07:00
2026-05-29 11:28:12 -07:00
2026-04-28 16:36:59 +00:00
2026-05-15 11:40:35 +02:00
2026-04-20 22:39:17 -07:00
2026-04-20 22:39:17 -07:00
2026-05-14 16:54:59 -07:00
2026-05-14 16:54:59 -07:00
2026-01-30 16:37:56 -08:00
2026-05-28 15:26:55 -07:00
2026-05-28 15:26:55 -07:00
2026-05-22 12:13:52 +02:00
2026-05-29 11:01:44 -07:00