closing rituals
analysis of final user messages in 2,375 successfully closed threads (2,070 RESOLVED + 305 COMMITTED).
tl;dr
threads don’t “close” — they STOP. the signal for ‘done’ is almost never explicit gratitude or celebration. it’s either a command to ship, or the user simply stops talking.
key findings
COMMITTED threads (305) — clearest signal
the “done” signal is explicit and ritualistic:
| phrase | count | % of committed |
|---|---|---|
| ”ship it” | 36 | 12% |
| “commit and push” | 21 | 7% |
| “commit” | 13 | 4% |
| “push” | 4 | 1% |
| “lgtm” | 1 | <1% |
55% of final messages are <50 chars. committed threads close with terse imperatives, not discussion.
RESOLVED threads (2,070) — messier signal
no single ritual dominates. final message distribution:
| pattern | count | % |
|---|---|---|
| other (unclassified) | 990 | 48% |
| questions | 408 | 20% |
| imperatives (“please do X”) | 311 | 15% |
| short approvals (“ok”, “yes”) | 263 | 13% |
| corrections (“no”, “wait”) | 66 | 3% |
| thanks | 10 | <1% |
35% of final messages are <50 chars. resolution is more often a gentle fade than a hard stop.
what signals ‘done’?
explicit closing signals (rare)
- “ship it” / “lgtm” / “merge”
- “commit and push”
- “thanks” (surprisingly rare — only 10 instances)
- “done” (2 instances)
implicit closing signals (common)
- very short approval: “ok”, “yes”, “Go on”, “Do it”
- task confirmation: “please do that”, “ok lets do that”
- retry request satisfied: “try again” → (agent succeeds) → silence
NOT closing signals (trap)
- questions at end: 20% of RESOLVED threads end with ”?” — suggests the assistant answered and user was satisfied, but the thread could easily have continued
- corrections (“no”, “wait”): 3% — these suggest the thread resolved after steering
top opening words in final messages
| word | count | interpretation |
|---|---|---|
| please | 208 | polite imperative |
| i | 112 | user providing context |
| ok | 103 | approval signal |
| can | 76 | question/request |
| commit | 74 | ship ritual |
| the | 60 | continuing discussion |
| yes | 51 | approval signal |
| what | 47 | question |
| ship | 43 | ship ritual |
| do | 39 | imperative |
“please” dominates — final messages often delegate remaining work to the agent.
length patterns
| status | median | avg | <50 chars | <20 chars |
|---|---|---|---|---|
| RESOLVED | 77 | 115 | 35% | 14% |
| COMMITTED | 42 | 130 | 55% | 32% |
COMMITTED closings are shorter — the ship ritual is terse.
RESOLVED closings are longer on average (though median is similar) — more “continuing work” that just doesn’t continue.
notable patterns
the “brother” closures
9 threads ended with “brother,” — a term of affection/solidarity from one user (concise_commander). this appears to be user-specific ritual.
”exit” as closure
10 RESOLVED threads ended with just “exit” — suggests the user was signaling end-of-session, possibly in a terminal context.
gratitude is RARE
only 10/2,375 threads (~0.4%) ended with explicit thanks. users don’t celebrate completion — they move on.
questions that resolve
20% of RESOLVED threads end with a question mark. this seems paradoxical but makes sense: user asks, agent answers, user is satisfied, silence = done.
implications for agent design
- don’t wait for “thank you” — it almost never comes
- recognize ship rituals — “ship it”, “commit and push”, “lgtm” are hard signals
- treat silence after short approval as done — “ok”, “yes”, “do it” followed by agent action, then nothing = resolution
- questions don’t mean continuation — a question answered well often ends the thread
- “please” is not politeness — it’s delegation. “please do X” is often the FINAL instruction before the user checks out