1# Codex
2
3Use your ChatGPT plan or an existing Codex CLI login to code in T3 Code.
4
5## Connect with ChatGPT
6
7Connect in **Settings → Providers**. For a remote machine,
8select that environment first. T3 Code handles Codex installation; sign in on
9OpenAI and allow sharing of your ChatGPT plan.
10
11Manage shared usage and credits in ChatGPT through **Manage usage** in T3 Code.
12If a request uses a feature that ChatGPT sharing does not support, use another
13provider for that request.
14
15Fast and Ultrafast speeds are unavailable with this connection. To use the speed
16options your account supports, [use an existing Codex login](#use-an-existing-codex-login).
17
18When reconnecting, choose the same account in T3 Code and on OpenAI's sign-in
19page. Disconnecting stops running threads but keeps their history and lets you
20reconnect later.
21
22If remote sign-in cannot return automatically, paste the full URL from the final
23localhost page into the sign-in panel, even if that page could not load.
24
25## Use an existing Codex login
26
27T3 Code can use your installed Codex and its existing login. Run `codex login`
28on the environment's machine to sign in. [Provider setup](./install.md#providers)
29covers installation and custom configuration.
30
31Running `codex login` does not change a managed ChatGPT connection. In
32**Settings > Providers**, add a Codex instance, choose **Configure manually**,
33and complete the wizard. Then select that instance from the thread's model
34picker. See [Use multiple accounts](#use-multiple-accounts).
35
36## Use multiple accounts
37
38Add another ChatGPT account in **Settings → Providers**, then select the account
39from the thread's model picker. Compatible accounts can continue the same thread.
40Connecting accounts through T3 Code leaves your CLI login unchanged.
41
42### Multiple CLI logins
43
44A shared Codex home with a shadow home lets work and personal accounts continue
45the same threads. The accounts share Codex sessions and configuration while keeping
46their own login and available models.
47
48Keep your first account in `~/.codex`. On the environment's machine, sign the
49second account into a fresh directory:
50
51```bash
52mkdir -p ~/.codex_personal
53CODEX_HOME=~/.codex_personal codex login
54```
55
56Then add a second Codex instance in **Settings > Providers**:
57
58| Instance | CODEX_HOME path | Shadow home path |
59| -------------- | --------------- | ------------------- |
60| Codex Work | `~/.codex` | Leave empty |
61| Codex Personal | `~/.codex` | `~/.codex_personal` |
62
63Both instances must use the same **CODEX_HOME path**. T3 Code prepares the shared
64state in the shadow directory; do not populate it by copying your whole Codex
65home.
66
67The shadow account needs its own `auth.json` file. If Codex uses an OS credential
68store, configure file storage for this setup. See
69[OpenAI's credential storage guide](https://learn.chatgpt.com/docs/auth#credential-storage).
70
71Use a completely separate **CODEX_HOME path**, with no shadow home, when you want
72separate Codex sessions and configuration. That instance cannot continue threads
73from the other home.
74
75## Switch accounts in an existing thread
76
77Choose the other account from the thread's model picker. T3 Code offers compatible
78Codex instances that share the thread's **CODEX_HOME path**. Changing accounts does
79not move the conversation into a separate Codex home.
80
81If the account is missing from the picker, compare the home paths in provider
82settings. If two instances show the same unexpected account or models, check their
83reported accounts, refresh provider status, and confirm the second instance has
84its own shadow path and login. A shadow-home conflict usually means the directory
85contains a copied Codex setup. Use a fresh shadow directory and sign in again.
86
87## Answer questions while Codex works
88
89Codex can ask a question and keep working. Answer it in the thread's question
90panel. The answer becomes a new message: it reaches the active turn, or starts
91another turn if Codex has finished. Unanswered questions survive reconnects.
92If you do not want to answer, dismiss the question from its panel. Dismissing
93closes it without sending anything to Codex. This requires a Codex version that
94supports async questions.
95
96## Approve app access
97
98Codex tools can request access to another app. Respond to the named app's request
99in the thread on web, desktop, or mobile. Some tools offer access for one request,
100the current session, or permanently. See [Permission modes](./permission-modes.md)
101for command and file approvals.
102
103## Codex says I hit a usage limit
104
105When Codex stops on a usage limit, the thread names the window that ran out and
106when it resets, when Codex reports them. Send the message again after the reset. On a workspace plan the
107message also says whether your workspace owner needs to add credits or raise the
108spend limit to continue sooner.
109
110## Send feedback to OpenAI
111
112In an existing Codex thread, send `/feedback` with an optional description, for
113example `/feedback The agent stopped before finishing the tests`. This uploads
114the conversation and Codex logs to OpenAI. The returned thread ID can be shared
115with OpenAI support.