Please make Claude Code follow and mark off tasks on task lists step by step, one by one.

Status Fixed / completed
Maintainer reply ✓ Yes — bcherny
Activity 11 comments · opened Apr 17, 2025 · closed May 8, 2025
💡 Likely answer: A maintainer (bcherny, collaborator) responded on this thread — see the highlighted reply below.

As per this Discord comment:

My most desired feature by far that would solve all the other issues is if there was a way that Claude Code could ensure it actually goes through the task list task by task, one by one, without grouping/skipping tasks.

Cause that's where it always ends up going wonky, And almost ALL the other problems with Claude Code would be fixed if it just did the tasks one by one, because then I can just make sure that every other task is clobbering it over the head with claude.md so the instructions there are always fresh in its mind.

But since it frequently (50+% of the time) fails to follow the clear and repeated instructions to do tasks one by one and mark them as complete one by one... it also quite frequently goes off the rails.

So PLEASE find a way to tweak Claude Code's thinking so it actually goes through the (editable) task list, one task at a time!...

I believe this would be a "50% reliable to 95% reliable" jump in value if it can just do that one thing... of doing one thing at a time and following the task list.

As it is, even when I give it task lists like this:

## Test Plan Tasks

- [x] **1. Create the basic test file structure**

Complete tasks step by step, marking them as done one by one.

   - [x] 1.0. Re-read CLAUDE.md to ensure compliance with project requirements
   - [x] 1.1. Create `/test/integration/loa_aml_identity_integration_test.rb`
   - [x] 1.2. Set up the test class with proper inheritance from ActionDispatch::IntegrationTest
   - [x] 1.3. Create setup method to log in as an admin and prepare test data
   - [x] 1.4. Re-read CLAUDE.md and verify the instructions have been applied correctly

- [x] **2. Test initialization and document creation**

Complete tasks step by step, marking them as done one by one.

   - [x] 2.0. Re-read CLAUDE.md to ensure compliance with project requirements
   - [x] 2.1. Create test for navigating to a client/claim page
   - [x] 2.2. Create test for filling out and submitting the LOA/AML form with recipient details
   - [x] 2.3. Re-read CLAUDE.md to ensure compliance with project requirements
   - [x] 2.4. Verify the DocuSeal API is called to create a document template
   - [x] 2.5. Verify a DocusealDoc record is created with the correct status
   - [x] 2.6. Verify a WorkflowEvent is created for the document creation
   - [x] 2.7. Run the test with `rails test /path/to/test.rb:123` to verify it passes
   - [x] 2.8. Re-read CLAUDE.md and verify the instructions have been applied correctly

- [x] **3. Test email submission and workflow state update**

Complete tasks step by step, marking them as done one by one.

   - [x] 3.0. Re-read CLAUDE.md to ensure compliance with project requirements
   - [x] 3.1. Create test for submitting the document to DocuSeal for email delivery
   - [x] 3.2. Re-read CLAUDE.md to ensure compliance with project requirements
   - [x] 3.3. Verify the DocusealDoc record is updated with submission information
   - [x] 3.4. Verify a WorkflowEvent is created for the document submission
   - [x] 3.5. Verify the UI displays the correct status for the document (sent)
   - [x] 3.6. Run the test with `rails test /path/to/test.rb:123` to verify it passes
   - [x] 3.7. Re-read CLAUDE.md and verify the instructions have been applied correctly

- [x] **4. Test webhook handling for document viewing**

Complete tasks step by step, marking them as done one by one.

   - [x] 4.0. Re-read CLAUDE.md to ensure compliance with project requirements
   - [x] 4.1. Create test that simulates the DocuSeal webhook callback for document viewing
   - [x] 4.2. Re-read CLAUDE.md to ensure compliance with project requirements
   - [x] 4.3. Verify the DocusealDoc record is updated with the viewed status
   - [x] 4.4. Verify a WorkflowEvent is created for the document viewing
   - [x] 4.5. Verify the UI displays the correct status for the document (viewed)
   - [x] 4.6. Run the test with `rails test /path/to/test.rb:123` to verify it passes
   - [x] 4.7. Re-read CLAUDE.md and verify the instructions have been applied correctly

It still often fails to go through the steps one by one. And as soon as it starts marking tasks as done in groups, the risk of it going off the rails gets a lot higher, very quickly.

PLEASE: help Claude with his ADHD 😅 Teach him to follow a task list.

View original on GitHub ↗

11 Comments

bcherny collaborator · 1 year ago

Coming soon!

swombat · 1 year ago

Wonderful! I am so looking forward to this!

swombat · 1 year ago

This is my life until then...

<img width="1047" alt="Image" src="https://github.com/user-attachments/assets/7bdccbbf-8d77-4cd2-9bb5-d85670b682f8" />

kevnk · 1 year ago

There was a new release today where you can queue messages. Just enter another prompt while it's running to add it to the queue. (Not that you'd _want_ to do that with how many steps you have and you probably are creating this file with AI in the first place so that's doubly not helpful... but you do have a pseudo workaround.)

benny-yamagata · 1 year ago

Sounds like this was just released.

danieldeusing · 1 year ago
Sounds like this was just released.

Yeah, currently updating all my prompts to use TodoWrite instead of creating tmp/ folders with progress-tracking :)

bcherny collaborator · 1 year ago

This is shipped

swombat · 1 year ago

I can confirm that Claude Code works about a bajillion times better since the addition of this feature.

Thanks team!! :-)

swombat · 1 year ago

My new happier life:

<img width="820" alt="Image" src="https://github.com/user-attachments/assets/95d043ec-3955-4e10-82a9-c55caa037333" />

trilliamn · 1 year ago
There was a new release today where you can queue messages. Just enter another prompt while it's running to add it to the queue. (Not that you'd _want_ to do that with how many steps you have and you probably are creating this file with AI in the first place so that's doubly not helpful... but you do have a pseudo workaround.)

Question for @bcherny (and others) about message queueing and whether I should worry about "confusing" Claude by sending messages while it's working on something given those messages are unrelated to current work.

I often want to tell Claude what to do after it finishes its current tasks, and these follow-up requests are sometimes completely unrelated to what it's currently working on. I've noticed that when I send a message while Claude is mid-task, it interrupts whatever flow it had going and tries to incorporate my new message right away. Sometimes this works fine and just gets added to the todo list, but other times it seems to mess with the context of what it was already doing.

This interruption behavior is actually useful when my message relates to the current task, but I'm wondering if it's distracting when it doesn't. If claude is working through a complex multi-step UI refactor that was planned out, and I want to ask it to do something totally different afterward, would it be better to wait rather than interrupt its current process?

I'm thinking it might be helpful to have some way to distinguish between messages that should interrupt immediately versus ones that should wait until Claude is completely done with everything it's currently working on. Right now my workaround is just typing out the next task but not hitting send until Claude has fully finished what it's doing.

Does this kind of message timing distinction make sense, or is there a better way to handle this workflow? Or should I not be concerned about this and just let the messages queue up continuously.

Edit: Just experimented with submitting message mid-task. Rather than slot my request at the end of its to do list, Claude placed it _immediately_ after its next task. Which is useful given this request is related to the other tasks at hand, however, not so much if the task is totally unrelated. Is Claude making the decision of where to place this task in the to do list? Would love to be able to deterministically force this task to be planned _after_ what is already being executed.

github-actions[bot] · 1 year ago

This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.