memories/chronicle.md +0 −201 deleted
File Deleted View Diff
1# Chronicle
2
3> For the complete documentation index, see [llms.txt](https://learn.chatgpt.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to the page URL.
4
5Chronicle is in an **opt-in research preview**. It is only available for
6 ChatGPT Pro subscribers on macOS. Please review the [Privacy and
7 Security](#privacy-and-security) section for details and to understand the
8 current risks before enabling.
9
10Chronicle augments Codex memories with context from your screen. When you prompt
11Codex, those memories can help it understand what you’ve been working on with
12less need for you to restate context.
13
14Chronicle is available as an opt-in research preview in the ChatGPT desktop app on macOS.
15It requires macOS Screen Recording and Accessibility permissions. Before
16enabling, be aware that Chronicle uses rate limits quickly, increases risk of
17prompt injection, and stores memories unencrypted on your device.
18
19## How Chronicle helps
20
21We’ve designed Chronicle to reduce the amount of context you have to restate
22when you work with Codex. By using recent screen context to improve memory
23building, Chronicle can help Codex understand what you’re referring to, identify
24the right source to use, and pick up on the tools and workflows you rely on.
25
26<section class="feature-grid mt-4">
27
28
29
30
31### Use what’s on screen
32
33With Chronicle Codex can understand what you are currently looking at, saving
34you time and context switching.
35
36
37
38
39<ChronicleThreadDemo client:load scenario="screen" />
40
41</section>
42
43<section class="feature-grid inverse">
44
45
46
47
48### Fill in missing context
49
50No need to carefully craft your context and start from zero. Chronicle lets
51Codex fill in the gaps in your context.
52
53
54
55
56<ChronicleThreadDemo client:load scenario="project" />
57
58</section>
59
60<section class="feature-grid">
61
62
63
64
65### Remember tools and workflows
66
67No need to explain to Codex which tools to use to perform your work. Codex
68learns as you work to save you time in the long run.
69
70
71
72
73<ChronicleThreadDemo client:load scenario="tools" />
74
75</section>
76
77In these cases, Codex uses Chronicle to provide additional context. When another
78source is better for the job, such as reading the specific file, Slack thread,
79Google Doc, dashboard, or pull request, Codex uses Chronicle to identify the
80source and then use that source directly.
81
82## Enable Chronicle
83
841. Open Settings in the ChatGPT desktop app.
852. Go to **Personalization** and make sure **Memories** is enabled.
863. Turn on **Chronicle** below the Memories setting.
874. Review the consent dialog and choose **Continue**.
885. Grant macOS Screen Recording and Accessibility permissions when prompted.
896. When setup completes, choose **Try it out** or start a new chat.
90
91If macOS reports that Screen Recording or Accessibility permission is denied,
92open System Settings > Privacy & Security > Screen Recording or
93Accessibility and enable ChatGPT. If a permission is restricted by macOS or
94your organization, Chronicle will start after the restriction is removed and
95ChatGPT receives the required permission.
96
97## Pause or disable Chronicle at any time
98
99You control when Chronicle generates memories using screen context. Use the
100ChatGPT menu bar icon to choose **Pause Chronicle** or **Resume Chronicle**. Pause
101Chronicle before meetings or when viewing sensitive content that you do not want
102Codex to use as context. To disable Chronicle, return to **Settings >
103Personalization > Memories** and turn off **Chronicle**.
104
105You can also control whether memories are used in a given chat. [Learn
106more](https://learn.chatgpt.com/docs/customization/memories#control-memories-per-chat).
107
108## Rate limits
109
110Chronicle works by running sandboxed agents in the background to generate
111memories from captured screen images. These agents currently consume rate limits
112quickly.
113
114## Privacy and security
115
116Chronicle uses screen captures, which can include sensitive information visible
117on your screen. It does not have access to your microphone or system audio.
118Don’t use Chronicle to record meetings or communications with others without
119their consent. Pause Chronicle when viewing content you do not want remembered
120in memories.
121
122### Where does Chronicle store my data?
123
124Screen captures are ephemeral and will only be saved temporarily on your
125computer. Temporary screen capture files may appear under
126`$TMPDIR/chronicle/screen_recording/` while Chronicle is running. Screen captures
127that are older than 6 hours will be deleted while Chronicle is running.
128
129The memories that Chronicle generates are just like other Codex memories:
130unencrypted markdown files that you can read and modify if needed. You can also
131ask Codex to search them. If you want to have Codex forget something you can
132delete the respective file inside the folder or selectively edit the markdown
133files to remove the information you’d like to remove. You should not manually
134add new information. The generated Chronicle memories are stored locally on your
135computer under `$CODEX_HOME/memories_extensions/chronicle/` (typically
136`~/.codex/memories_extensions/chronicle`).
137
138
139
140 <Alert
141 client:load
142 color="danger"
143 variant="soft"
144 description="Both directories for your screen captures and memories might contain sensitive information. Make sure you do not share content with others, and be aware that other programs on your computer can also access these files."
145 />
146
147
148
149### What data gets shared with OpenAI?
150
151Chronicle captures screen context locally, then periodically uses Codex to
152summarize recent activity into memories. To generate those memories, Chronicle
153starts an ephemeral Codex session with access to this screen context. That
154session may process selected screenshot frames, OCR text extracted from
155screenshots, timing information, and local file paths for the relevant time
156window.
157
158Screen captures used for memory generation are stored temporarily on your device. They are processed on our
159servers to generate memories, which are then stored locally on device. We do not
160store the screenshots on our servers after processing unless required by law,
161and do not use them for training.
162
163The generated memories are Markdown files stored locally under
164`$CODEX_HOME/memories_extensions/chronicle/`. When Codex uses memories in a
165future session, relevant memory contents may be included as context for that
166session, and may be used to improve our models if allowed in your ChatGPT
167settings. [Learn more](https://help.openai.com/en/articles/7730893-data-controls-faq).
168
169## Prompt injection risk
170
171Using Chronicle increases risk to prompt injection attacks from screen content.
172For instance, if you browse a site with malicious agent instructions, Codex may
173follow those instructions.
174
175## Troubleshooting
176
177### How do I enable Chronicle?
178
179If you do not see the Chronicle setting, make sure you are using a ChatGPT desktop app
180build that includes Chronicle and that you have Memories enabled inside Settings
181> Personalization.
182
183Chronicle is currently only available for ChatGPT Pro subscribers on macOS.
184
185If setup does not complete:
186
1871. Confirm that ChatGPT has Screen Recording and Accessibility permissions.
1882. Quit and reopen the ChatGPT desktop app.
1893. Open **Settings > Personalization** and check the Chronicle status.
190
191### Which model is used for generating the Chronicle memories?
192
193Chronicle uses the same model as your other [Memories](https://learn.chatgpt.com/docs/customization/memories). If you
194did not configure a specific model it uses your default Codex model. To choose a
195specific model, update the `consolidation_model` in your
196[configuration](https://learn.chatgpt.com/docs/config-file/config-basic).
197
198```toml
199[memories]
200consolidation_model = "gpt-5.6-luna"
201```