[FEATURE]
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
Feature request: Claude should be able to introspect its own current capabilities and runtime surface
Problem
Claude has no reliable way to answer basic questions about itself:
- "What surface am I running in right now?" (desktop app / web / Claude Code CLI / Cowork / Chrome extension / Dispatch, etc.)
- "What features does [current product] currently have?"
Its only source for this is frozen training data, so newer or rebranded
features (e.g. Cowork) are either unknown or misremembered, even though
they've been live and documented for a while. The model has to be told
by the user, then go web-search Anthropic's own help docs to figure out
what Anthropic itself shipped.
This is a bad experience in two ways:
- It's embarrassing/confusing for users — asking your own assistant
"what am I using right now" and getting a wrong or blank answer.
- It undermines trust in permission-heavy features. If Claude can't
reliably identify what mode/surface it's in, it's hard to trust its
judgment about what it should or shouldn't be doing with file/folder
or computer access in that mode.
Proposed Solution
Proposed fix
Two small, separable tools/context injections:
- A "current capabilities" lookup — live, queryable, ideally sourced
from Anthropic's own help docs/changelog — so Claude can check
"what does this product currently do" instead of guessing from
training data.
- A "runtime surface" identifier injected into system context at
session start, e.g. surface: cowork-desktop / claude-code-cli /
web / chrome-extension, so Claude doesn't have to infer or guess
what it's running inside of.
Neither requires the model to have live access to arbitrary internal
Anthropic systems — just a documented, versioned source of truth about
the current product surface and feature set, exposed the same way any
other tool is.
Why it matters
This isn't cosmetic. As Claude is given more autonomy (Cowork,
computer use, file/folder access), users' trust depends partly on
Claude having an accurate model of what it currently is and what it's
currently allowed to touch. Right now that model is stale by default.
Alternative Solutions
Proposed fix
Two small, separable tools/context injections:
- A "current capabilities" lookup — live, queryable, ideally sourced
from Anthropic's own help docs/changelog — so Claude can check
"what does this product currently do" instead of guessing from
training data.
- A "runtime surface" identifier injected into system context at
session start, e.g. surface: cowork-desktop / claude-code-cli /
web / chrome-extension, so Claude doesn't have to infer or guess
what it's running inside of.
Neither requires the model to have live access to arbitrary internal
Anthropic systems — just a documented, versioned source of truth about
the current product surface and feature set, exposed the same way any
other tool is.
Why it matters
This isn't cosmetic. As Claude is given more autonomy (Cowork,
computer use, file/folder access), users' trust depends partly on
Claude having an accurate model of what it currently is and what it's
currently allowed to touch. Right now that model is stale by default.
Priority
Medium - Would be very helpful
Feature Category
Other
Use Case Example
I ask Claude say, "Am I in Cowork now?". It doesn't know about Cowork or what environment I'm using. It refers to its training data cutoff.
Additional Context
This is across all LLMs that I use so not Claude specific. It would be great if Anthropic were to come up with a feature first.