Lifestyle
Write a clear task request
A useful request explains the outcome, available context, boundaries and acceptance checks. 'Improve the page' could mean speed, appearance or accessibility. Convert it into observable behavior before adding more instructions.
About 12 min read · Practice 20 min

Beginner · Desktop / mobile / CLI / VS Code / JetBrains / cloud
Before you start
On this page
- What you will be able to do
- Prepare a repeatable starting point
- Step 1: find what the vague request omits
- Step 2: write a complete actionable request
- Step 3: judge evidence rather than answer length
- When results differ, add a reproducible case
- Three common problems and corrections
- Practice, restoration and sources
Back to the Codex learning hubCodex learning hub: tutorial directoryA planned 60-lesson, ten-unit Codex curriculum, from setup and your first task to MD instructions and advanced integrations. Find your next lesson by experience, platform, goal or command; unpublished entries show their status.Read the full article
What you will be able to do
Prepare a repeatable starting point
Copy expected from the exercise download into a fresh codex-prompt-lab folder, rather than reusing an edited copy. Confirm its five files, then find the New task label, Add task button and Read the project README placeholder in index.html. Those three visible strings are the relevant source; you do not need to paste the whole project into chat.
Use the preview procedure from your first projectFinish your first small projectUse an independent copy of the Small Steps todo website to change its heading and background. Identify the five practice files and compare the diff, core tests and two viewport widths while preserving behavior and data.Read the full article: py -m http.server 4173 --bind 127.0.0.1 on Windows, or python3 -m http.server 4173 --bind 127.0.0.1 on macOS/Linux, then open http://127.0.0.1:4173. Git is not required for this lesson, but retain the original so that you can compare or restore edited files.
Step 1: find what the vague request omits
“Make the form better” does not identify its audience, problem, allowed scope or completion criteria. Codex could change colors, fields, buttons or data structures, or add a package you did not need. That may reflect an underspecified request rather than a mistake. Start with a user outcome, such as “A new visitor can understand how to add one small task.”
Then supply goal, current-state evidence, constraints and acceptance criteria. These are checks for missing information, not four compulsory headings for every request. A wording change may need only a few lines; a multi-file feature may need background and a staged plan. Do not add irrelevant role instructions, tool inventories or falsely precise time estimates merely to sound professional.
Step 2: write a complete actionable request
Send the complete prompt below to the Codex task for codex-prompt-lab, not the operating-system shell. It names one HTML file and two string changes, preserves accessibility labels, event bindings and data format, and requests actual checks. New task remains the visible field label; not every piece of text should be forced into the same wording.
Goal: make the existing todo form wording clearer for a first-time visitor.
Context: this folder is the unchanged Small Steps expected practice version.
In index.html only:
- Change the submit button text from "Add task" to "Save task".
- Change the input placeholder to "Plan one small step".
Keep the visible "New task" label, input id/name, maxlength, required attribute,
button type, JavaScript behavior, stored data and all other files unchanged.
Do not install packages or deploy anything.
Validate by adding Read, completing it, checking Completed, and refreshing.
Check that whitespace-only input does not create a task.
Run node --test core.test.mjs. If browser checks are unavailable, list them as not run.
Report the exact changed strings, files and evidence.
Let Codex read background already present in files; an exact filename is more useful than pasting the entire history. If the actual page has no Add task, first check whether you used the original version. Do not force mismatched instructions onto a different starting state or replace every similar string across the project. Reproducibility starts with a known baseline.
Step 3: judge evidence rather than answer length
Open index.html after completion. Only button text and placeholder should change. New task remains associated with the input, and type="submit", id, name, maxlength and required remain intact. Compare the other four files with the original to rule out incidental restructuring. A concise reply with the right diff and complete verification is a good delivery; a long explanation does not replace missing changes or results.
In the HTTP preview, add Read, complete it, check the Completed filter and refresh to verify persistence. Whitespace must not add an item, and Tab must still reach the input and submit button. These behaviors should match the baseline. Correct wording with a broken submit button fails acceptance; describe the actual symptom in the next request instead of saying only “it is bad.”
When results differ, add a reproducible case
Suppose Save task is correct but the placeholder is unchanged. Verify saving and browser refresh, then send the follow-up below. It distinguishes the already-correct part from the actual and expected result without requesting a whole-page rewrite. If you changed the requirement midway, explicitly state which condition supersedes the previous one so that contradictory instructions do not remain active.
The button text is correct; preserve that change.
After saving and refreshing, the placeholder still reads "Read the project README".
Expected placeholder: "Plan one small step".
Inspect index.html and correct only the remaining placeholder mismatch.
Report the relevant diff and any verification you can actually perform.
For a larger task, use Plan modePlan mode: agree on the work firstPlan mode is useful when scope or approach still needs decisions. It produces an implementation plan, not finished code. Define the questions to resolve and check that the plan includes inputs, outputs, constraints and verification.Read the full article to identify steps and uncertainties, but planning is not verification. A promise to run tests is not a test result, and a promise to retain data still needs code and data checks. Resolve architecture-changing gaps, such as whether sign-in or synchronization is required, before dependent implementation to reduce rework.
Three common problems and corrections
Too many edits: remove scope-expanding phrases such as “optimize everything,” name the permitted files and preserved behavior, then restore unrelated changes individually. Endless questions: answer conditions that affect the decision and allow routine font or filename choices to follow the existing style. Completion without evidence: request actual command results and checks not run, not another paraphrase of “done.”
For repeated failures, retain the smallest reproduction, error text and last known working state, then isolate one problem instead of repasting unrelated history. Use context handoffContext and task handoffLong work needs durable decisions and evidence, not just a long conversation. README explains use, design documents explain choices, handoffs record current progress and AGENTS.md holds ongoing instructions. Do not turn all temporary progress into permanent rules.Read the full article for longer tasks. Put recurring project conventions in AGENTS.mdProject instructions with AGENTS.mdAGENTS.md supplies project instructions before Codex starts work. Global guidance and files along the project-root-to-working-directory path form an instruction chain. At the same level, AGENTS.override.md takes precedence. Keep rules concrete and verify what was actually loaded.Read the full article, leaving the individual prompt focused on this change.
Practice, restoration and sources
Start the extra exercise from another fresh expected copy. Confirm that the button says Add task and the placeholder says Read the project README; do not continue in the copy you just edited. Write a prompt that changes only the button to Create task and preserves this copy's original placeholder. Identify the single changed string in index.html and repeat the add, empty-input and refresh checks. Afterward, restore index.html in each practice copy from the retained expected original; other files need no replacement. Stop Python with Ctrl+C. Closing a Codex conversation does not undo file changes.
Prompting principles were checked against official documentation on 2026-09-14. The form request, examples and acceptance procedure are original to this series. Shared English prompts stay identical across locales; model wording can vary, while acceptance concerns actual results. Continue with implementing a featureImplementing the todo filtersImplement Active and Completed filters from start, preserving data and verifying normal and boundary cases.Read the full article or debuggingA complete debugging workflowDebugging starts with a reproducible symptom, narrows causes with evidence and verifies the fix. Give the input, exact step, expected behavior and observed failure instead of only saying the site is broken.Read the full article using reproducible inputs and expected behavior.
| Request component | Concrete content here |
|---|---|
| Goal | Help a new visitor understand the form |
| Source | index.html from expected |
| Constraints | Two strings only; preserve data and behavior |
| Acceptance | Add, complete, empty input, refresh |
Back to the Codex learning hubCodex learning hub: tutorial directoryA planned 60-lesson, ten-unit Codex curriculum, from setup and your first task to MD instructions and advanced integrations. Find your next lesson by experience, platform, goal or command; unpublished entries show their status.Read the full article
Read the full description
Goal to Constraints to Acceptance


Lifestyle
Codex learning hub: tutorial directory
A planned 60-lesson, ten-unit Codex curriculum, from setup and your first task to MD instructions and advanced integrations. Find your next lesson by experience, platform, goal or command; unpublished entries show their status.
Lifestyle
Worktrees and isolated tasks
A Git worktree gives one repository multiple working directories on different branches. It isolates file edits, but databases, ports and external services may still be shared. File isolation is not full resource isolation.
Lifestyle
Workshop: build a small website
Plan and build the Small Steps task website from brief.md, with adding, completing, deleting, filtering and local persistence. Separate HTML, CSS, data functions, UI events and tests, verify with Node and browser checks, and document restart and recovery steps.
Lifestyle
Usage and efficiency: reducing rework
Record task conditions, model options, time and outcomes to reduce unnecessary retries and excess context.
Articles that cite this one
Latest travel guides

GuideTokyo
Where to Stay in Tokyo: Comparing Shinjuku, Ueno, Tokyo Station, Shibuya, Asakusa, Ikebukuro, and Ginza, Plus Airport Access, Accommodation Tax, and Luggage Delivery
Where should you stay in Tokyo? Compare Shinjuku, Ueno, Tokyo Station, Shibuya, Asakusa, Ikebukuro, and Ginza by the same criteria: access from Narita and Haneda, transit routes, nearby attractions, neighborhood character, and who each area suits. Includes a comparison table, a Yamanote Line diagram, Tokyo’s accommodation tax as verified in 2026/9 (changing to 3% in 2027/4), and Airport TA-Q-BIN luggage shipping rules.
- Budget
- Hotels

GuideTokyo
How to Choose Tokyo Transit Passes: Are Suica, Welcome Suica, the Tokyo Subway Ticket, and the JR Pass Worth It?
On a first Tokyo trip, start with an IC card and pay per ride (Welcome Suica has no deposit and is valid for 28 days). If you take four or more subway rides in a day, add a 72-hour Tokyo Subway Ticket for 2,000 yen; a JR Pass is never worthwhile if you stay in Tokyo and do not go to Kansai. See what TOURIST PASMO, Suica on iPhone, and the Tokyo Metro day pass do and do not cover, with a decision chart. Prices verified in September 2026.
- Transport
- Budget

GuideTokyo
Tokyo Disneyland and DisneySea Guide: Ticket Prices, Fantasy Springs, Disney Premier Access (DPA), Standby Pass, and Which Park to Choose for Your First Visit
Tokyo Disney one-day Passport prices vary: most weekdays in 9/2026 cost ¥9,900 and weekends ¥10,900. At 14:00 daily, tickets go on sale for the same date two months later. Free Priority Pass is no longer on the official service list; only paid Disney Premier Access (¥1,000–3,500 per person per use) shortens waits. Covers hours, the 25th anniversary, Standby Pass, Entry Request, Fantasy Springs access and first-visit park choice; checked on the official site in 9/2026.
- Itineraries
- Family
Sources
- Prompting · Checked: