Skip to content

Prompts typed while Claude is working (queued_command) are missing from transcripts #113

Description

@deepworion

When you type a message while Claude Code is still working, Claude Code does not write a separate "type": "user" line for it. It stores the message as an attachment of type queued_command and absorbs it into the running turn:

{"type": "attachment", "timestamp": "...", "attachment": {"type": "queued_command", "prompt": "I just created it", "commandMode": "prompt", "origin": {"kind": "human"}, "source_uuid": "...", "timestamp": "..."}}

_parse_jsonl_file skips every line whose type is not user or assistant, so these prompts never reach the transcript. In practice they are often course corrections ("stop, not that file"), so the rendered transcript shows Claude changing direction with no visible reason.

How often this happens: in two long sessions of mine, 19 of 246 human messages (7.7%) were sent mid-turn and would be dropped.

Minimal reproduction: a JSONL file with one user line, one assistant line and the attachment line above. The queued prompt is missing from the output.

Task notifications use the same attachment with commandMode: "task-notification". Those are not human input and should stay out.

Activity

  1. deepworion commented on Sep 25, 2026

    @deepworion
    Author

    Duplicate of #115, opened from my main account. Sorry for the noise.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions