Repository navigation
Conversation
baxen
force-pushed
the
baxen/agent-local-typing
branch
from
October 11, 2026 18:17
8d2bcec to
687c8e7
Compare
baxen
force-pushed
the
baxen/agent-working-reactions
branch
from
October 11, 2026 23:11
71f044f to
737b32d
Compare
Collaborator
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
STOPGAP, to be deleted once agents' typing pulses reach the relay (#792 plus block/buzz#8207). While an Agents2 agent works on a mention (the same lifetime as #860's reactions,
Agents2Service.working()), this device shows the agent typing in the mention's thread. Nothing is published, so other devices don't see it.agents2/local-typing.tsbuilds a kind 20002 pulse every 3 s. It uses the tags feat(agents2): show agents as typing while they work on a mention #792 would publish:h, the thread root, and the mention asreply.typing.local(event)inrelay/typing.tsfeeds that pulse into the session's existing typing store as if it came live. The store's expiry (8 s), the end-on-reply rule (the agent's kind 9 hides the indicator, then a 2 s quiet period) and the existing indicators all work unchanged.communities.open→acquire). Agents2 agents are already inagentChoicesthroughlocalAgents.bind(agents2.local), so the floating indicator and the thread rows show them.relay/session.tsalready exposestyping.capability.Removal
Every piece is tagged
STOPGAP(agent-local-typing). Rungrep -rn "STOPGAP(agent-local-typing)" srcand delete what it marks. #860's reactions are taggedSTOPGAP(agent-working-reactions)the same way.Notes
finalsend, so its indicator can stay about 3 s past its reply.typing.localsits on the session's typing capability, so code that can see the session could show fake typing for any pubkey. It only affects this device.Validation
vitest runacross agents2, relay typing and activity-typing, Codex, Claude Code and TypingIndicator: 22 files / 244 tests pass.tsc --noEmitis clean.🤖 Generated with Claude Code