Skip to content

Agent raise-hand: observe turns that may only propose (one-tap approve)Β #382

Description

@gbasin

Idea

When a session's thread gets new human messages while the agent is idle, give the agent a cheap observe turn: it may only emit a compact proposal chip β€” e.g. "πŸ’‘ I could fix this β€” run?" β€” which a human one-taps to approve (approve = real steer turn). It never acts or posts prose uninvited.

Why

  • Preserves the converged overhear + explicit address model (agents read everything via ~/context/channel/chat.md but only get turns when addressed) while adding consent-preserving proactivity.
  • Field research (2026-07): the winning proactive pattern everywhere is proposal object where the accept action already lives (incident.io "Code it up" button, Sentry Seer stopping-point dial, draft-in-drafts-folder). Nobody ships this inside team chat β€” unclaimed.

Sketch

  • Trigger: N new thread messages while session idle > X (debounced), budget-capped per hour (Devin-style rate caps).
  • Runtime: new turn kind ("observe") whose only allowed output is a structured proposal (title + one-liner + proposed steer text); rendered as a chip on the session's activity row, not a message.
  • Approve = sends the proposed steer as a normal turn (attributed "suggested by agent β€” accepted by "); dismiss teaches nothing in v1.
  • Guardrails: never fires in channels the session isn't bound to; per-session toggle default ON for spawner, mutable by driver.

Depends on

The agent-mode composer / thread-attached session work (steer-from-thread, activity ticker) currently in flight.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions