MCPcopy Create free account
hub / github.com/tiann/hapi / CodexSession

Class CodexSession

cli/src/codex/session.ts:14–150  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

12};
13
14export class CodexSession extends AgentSessionBase<EnhancedMode> {
15 transcriptPath: string | null = null;
16 readonly codexArgs?: string[];
17 readonly codexCliOverrides?: CodexCliOverrides;
18 readonly startedBy: 'runner' | 'terminal';
19 readonly startingMode: 'local' | 'remote';
20 readonly replayTranscriptHistoryOnStart: boolean;
21 localLaunchFailure: LocalLaunchFailure | null = null;
22
23 private transcriptPathCallbacks: Array<(path: string) => void> = [];
24
25 constructor(opts: {
26 api: ApiClient;
27 client: ApiSessionClient;
28 path: string;
29 logPath: string;
30 sessionId: string | null;
31 messageQueue: MessageQueue2<EnhancedMode>;
32 onModeChange: (mode: 'local' | 'remote') => void;
33 mode?: 'local' | 'remote';
34 startedBy: 'runner' | 'terminal';
35 startingMode: 'local' | 'remote';
36 codexArgs?: string[];
37 codexCliOverrides?: CodexCliOverrides;
38 permissionMode?: PermissionMode;
39 model?: SessionModel;
40 modelReasoningEffort?: SessionModelReasoningEffort;
41 collaborationMode?: EnhancedMode['collaborationMode'];
42 replayTranscriptHistoryOnStart?: boolean;
43 }) {
44 super({
45 api: opts.api,
46 client: opts.client,
47 path: opts.path,
48 logPath: opts.logPath,
49 sessionId: opts.sessionId,
50 messageQueue: opts.messageQueue,
51 onModeChange: opts.onModeChange,
52 mode: opts.mode,
53 sessionLabel: 'CodexSession',
54 sessionIdLabel: 'Codex',
55 applySessionIdToMetadata: (metadata, sessionId) => ({
56 ...metadata,
57 codexSessionId: sessionId
58 }),
59 permissionMode: opts.permissionMode,
60 model: opts.model,
61 modelReasoningEffort: opts.modelReasoningEffort,
62 collaborationMode: opts.collaborationMode
63 });
64
65 this.codexArgs = opts.codexArgs;
66 this.codexCliOverrides = opts.codexCliOverrides;
67 this.startedBy = opts.startedBy;
68 this.startingMode = opts.startingMode;
69 this.replayTranscriptHistoryOnStart = opts.replayTranscriptHistoryOnStart ?? false;
70 this.permissionMode = opts.permissionMode;
71 this.model = opts.model;

Callers

nothing calls this directly

Calls 3

sendAgentMessageMethod · 0.80
sendUserMessageMethod · 0.80
sendSessionEventMethod · 0.80

Tested by

no test coverage detected