# Setting Yourself Up for Success

Jason Liu, OpenAI | AI Engineer World's Fair 2026 | 1:15:02

Source: https://www.youtube.com/watch?v=il1c1a2FufU
Channel: AI Engineer (https://www.youtube.com/@aiDotEngineer). Summarised by AIE Talks.
Page: https://aietalks.com/talks/setting-yourself-up-for-success
Published: 2026-07-24
Tags: agent-skills, agents, computer-use, memory, workflows

## TL;DR
- Codex becomes more useful when a memory vault, pinned threads, skills, and plugins give it continuing context about your work.
- Heartbeats and goals let threads keep working after you leave, while thread-to-thread messaging lets one monitor create and manage other workstreams.
- Appshots and computer use give Codex richer context and access to real applications, but permissions, stopping criteria, and Agent.md instructions still matter.

## Summary
Jason Liu presents Codex as a general work system rather than only a coding assistant. His setup starts with a personal monorepo containing project and people records, skills, agent instructions, and a memory vault. Pinned threads then act like persistent teammates. They can read connectors, create subthreads, send messages to other threads, and wake up through heartbeat automations. Liu shows how this supports support triage, meeting follow-up, flight check-in, document work, slide editing, and long-running code migrations. Appshots provide both an image and the accessibility tree, which gives tools such as Slack more precise context than a screenshot alone. Computer use handles applications outside the connector system, including iMovie, browsers, and forms. Liu is candid about risks: models can take alternate routes when blocked, so permissions, Agent.md rules, and stopping conditions are needed. He also recommends low and medium reasoning for routine work instead of always using the most expensive setting.

## Key ideas
### A memory vault gives Codex the context needed for broad personal work
[03:04](https://www.youtube.com/watch?v=il1c1a2FufU&t=184s)
Liu says his work spans prototyping, coding, evaluations, video editing, meeting notes, partnerships, and operations, all handled through the Codex app. His personal monorepo stores project directories, people records, loose notes, agent summaries, and a maintained to-do list. He keeps it as a Git repository so he can review changes with git diff. Project files can include relevant Slack channel IDs, while people files contain email addresses and connector details. Over time, he relies less on explicit tagging because the accumulated history and memories let him ask broad questions such as what changed about a launch.

### Compaction lets one project thread stay useful for weeks
[03:37](https://www.youtube.com/watch?v=il1c1a2FufU&t=217s)
Liu says compaction now works well enough that he has threads five weeks old with around 400 subagents that still know their jobs. He contrasts this with older advice to start a new conversation after about 20 messages or to create a separate session for every feature. His current pattern is to pin a thread, rename it to the project ID, and let it delegate to subagents, create threads, communicate with them, and write to the memory vault. He describes this as a shift from an individual contributor using an IDE toward a manager coordinating persistent threads.

### Voice input makes messy context practical to give an AI
[07:51](https://www.youtube.com/watch?v=il1c1a2FufU&t=471s)
Liu recommends dictation because he says people generally talk about three times faster than they type. He is comfortable sending an AI a 15-minute voice memo with tangents, uncertainty, and partial names. As an example, he might say he had a meeting with Charlie about the Agents SDK sometime last week and ask Codex to find the relevant messages. Codex can search emails, Slack, and meeting records to identify the conversation and use it in a project tracker or memo. Liu uses a foot pedal with separate buttons for transcription and Enter, so he can speak while keeping his hands free for other work.

### Skills and plugins turn repeated personal work into shared team processes
[09:11](https://www.youtube.com/watch?v=il1c1a2FufU&t=551s)
Liu describes a skill as a few files and scripts, while a plugin is a library of skills. He recommends creating a skill whenever a task is repeated, then packaging related skills into a plugin. Codex can interview someone about their process and create a skill, or turn a documented one-time procedure into a reusable skill. His examples include finalizing the Codex app before review, reviewing code in the style of particular colleagues, triaging developer experience issues, and writing messages in his own style based on six months of email and Slack history. He argues that a skill used by teammates can matter more than the number of tokens one person consumes.

### Appshots give applications structured context beyond a screenshot
[16:09](https://www.youtube.com/watch?v=il1c1a2FufU&t=969s)
Liu says a normal screenshot forces the model to perform OCR and then infer which Slack channels and users are involved. An appshot includes the image plus the application's accessibility tree. For a Slack channel, that can include the channel ID and user IDs, allowing Codex to call the correct messaging function directly. He says an appshot can therefore reduce the number of tool-call hops while providing more context. The same workflow lets him ask Codex to fill forms, choose the browser extension or computer use based on the application, and act on the visible state of his computer.

### Heartbeats keep a pinned thread working over time
[34:34](https://www.youtube.com/watch?v=il1c1a2FufU&t=2074s)
Liu describes a heartbeat as a scheduled message sent back into an existing thread. Instead of creating a new thread for every automation, the system can keep adding work to the same persistent thread. His loop example watches a pull request, fixes feedback, keeps it rebased, and checks that CI passes. Other loops monitor support issues across Slack and Twitter, escalate them to the right people, and check for replies. A chief-of-staff thread can inspect connectors, report the most important items, include links, draft responses, and even prepare browser tabs while Liu is in meetings. The thread becomes a continuing workstream rather than a one-off prompt.

### Goals work when the system has a clear way to verify completion
[40:22](https://www.youtube.com/watch?v=il1c1a2FufU&t=2422s)
Liu presents slash goal as a task with a verification step. The system keeps working while the verifier says the task is incomplete. He used this pattern to migrate software back ends from Python to Rust while checking that unit tests passed. His ultra goal skill moves the goal into a goal.md file, where the scope can change during execution. A plan file, state file, or work log can record the evolving work, while another model summarizes long session data. Liu's examples show why verification matters for long-running work, although he warns that his large migrations were experiments rather than a recommendation for normal production work.

### Computer use expands capability while increasing the need for controls
[54:05](https://www.youtube.com/watch?v=il1c1a2FufU&t=3245s)
Liu uses computer use for native applications, websites, forms, checkout pages, and tasks that connectors cannot complete. He describes Codex editing an iMovie project, placing sound effects at the right timestamps, signing a document, and using a browser when a direct file upload was unavailable. He also warns that an agent can become determined: if a Slack connector cannot upload a file, it may open the application and use the file-upload control instead. Similarly, if Gmail cannot send a message through its connector, the model may open Chrome and click Send. Liu recommends permission settings, Agent.md instructions, and explicit stopping criteria. He is particularly wary of unrestricted full-auto behavior.

### Low and medium reasoning are often enough for background work
[1:12:04](https://www.youtube.com/watch?v=il1c1a2FufU&t=4324s)
Liu rejects the assumption that the highest reasoning setting always produces the best result. He says high reasoning can make a simple computer-use task spend minutes searching every available coupon site. For routine work, he recommends becoming comfortable with low and medium reasoning because the models remain capable while using fewer resources. His chief-of-staff thread runs at medium by default. He also suggests controlling how often heartbeats run, asking for a one-word response when there are no updates, and setting a stopping condition. A task can become more frequent as it gets close to completion, then stop when the stated condition is met.

## Notable quotes
- "The goal of this talk isn't just to waste all your tokens, but really help you avoid wasting your tokens by telling you what has actually worked." (02:00)
- "I basically use a foot pedal." (03:56)
- "A heartbeat is just a way of waking up your thread over time to take some actions." (40:04)
- "The biggest misconception here is that X high will give me the best results." (1:11:45)
- "You kind of have to just get really comfortable with asking." (15:13)

## Tools & references mentioned
- Codex
- OpenAI
- Agents SDK
- OpenAI API
- Instructor
- Slack
- Gmail
- Microsoft Teams
- Notion
- Linear
- Obsidian
- Chrome extension
- computer use
- appshots
- GitHub
- Playwright
- skillset.sh
- Vercel
- Rust
- UV
- TypeScript
- iMovie
- Google Drive
- DocuSign
- Amazon
- JetBlue
- OpenClaw
- Hermes agent
- Conductor

## Who should watch
- You are setting up Codex for more than code and want a concrete pattern for memory, plugins, skills, and persistent threads.
- You have recurring support, operations, research, or communication work that could run between meetings if it had clear context and verification.
- You are experimenting with computer use and need practical warnings about permissions, alternate routes, heartbeats, and stopping conditions.
