todo: urgent — an affordance for scope, and for the request that assumes another chat's context
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
---
|
||||
id: affordances/an-affordance-a-scoped-agent-warns-on-the
|
||||
title: 'An affordance: a scoped agent warns when a request lands outside its scope'
|
||||
theme: affordances
|
||||
status: open
|
||||
priority: urgent
|
||||
created: 2026-08-25
|
||||
date_source: stated
|
||||
order: 2
|
||||
---
|
||||
|
||||
**An affordance: a scoped agent warns when a request lands outside its scope.** Wanted 2026-08-25,
|
||||
urgent. Born from a real miss the same day: a commander-coordination thread landed in the standing todo
|
||||
chat, and the agent acted on it instead of noticing it was not its job. The owner keeps many sessions
|
||||
open with different roles, and a message in the wrong one currently gets executed by whoever receives
|
||||
it.
|
||||
|
||||
One affordance, two triggers, both ending in the same move — **one line, "this may be meant for another
|
||||
chat?", then wait for the confirm; on a confirm, do it without further protest**:
|
||||
|
||||
1. **Named scope.** The session has been named or tasked with a specific thing — a commander's task, a
|
||||
chat the owner titled, a role stated in conversation ("you are my todo guy"). A request outside that
|
||||
scope gets the warning first. Filing or noting something ABOUT another subject stays in scope;
|
||||
DOING the other subject does not.
|
||||
|
||||
2. **No name, but the request assumes a context this conversation does not hold.** Mid-work, a message
|
||||
arrives about something the agent has never heard of — and the phrasing assumes it knows exactly
|
||||
what is meant ("as I explained", "the change we agreed", a "he" with no referent here). That
|
||||
assumption is the signal: the context exists in SOME chat, and it is not this one. Warn the same
|
||||
way.
|
||||
|
||||
The second trigger is the one that earns the affordance: it needs no configuration at all, only the
|
||||
observation that the owner is speaking to a shared history the transcript does not contain.
|
||||
|
||||
Notes for whoever writes it: affordances live in `capabilities/affordances/` and reach every Claude
|
||||
session per turn via `affordanceBlock` — hot, no restart. "What am I named or tasked with" already has
|
||||
partial answers — a commander gets its identity in the `commanderBlock` preamble, and a chat's title
|
||||
lives in the transcript's own `summary` entries — but trigger 2 deliberately works without either.
|
||||
Keep the warning cheap and single-shot: a wrongly-suspicious agent costs one line; a wrongly-obedient
|
||||
one costs what the todo chat paid on 2026-08-25 — work done in the wrong place by the wrong agent.
|
||||
Reference in New Issue
Block a user