anthropics / anthropics/claude-code
[BUG] Claude in Chrome: character keystrokes silently dropped — clicks, modifier combos and paste all work
- Dominant language
- Python
- Stars
- 145k
- Forks
- 23.1k
- PR merge metrics
- PR metrics pending
Description
### Preflight Checklist
- [x] I have searched [existing issues](https://github.com/anthropics/claude-code/issues?q=is%3Aissue%20state%3Aopen%20label%3Abug) and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
### What's Wrong?
Claude in Chrome computer actions `type` and single-character `key` return success but
never reach the page. Non-character keys and modifier combinations work normally.
Not site-specific and not iframe-specific.
Environment: Claude in Chrome extension v1.0.93 · Windows 10 Pro 19045 ·
extension site access "On all sites" · used from Claude desktop (Cowork)
(Note: this is the Chrome extension, not the Claude Code CLI.)
REPRODUCTION (plain same-origin page, no iframe):
1. Navigate to https://duckduckgo.com
2. left_click the search box — click lands; document.activeElement is TEXTAREA[name=q]
3. type with text "hello typing test" → returns "Typed hello typing test"
4. Read textarea.value via javascript_tool → "" (length 0)
5. key press "a" → returns success → value still ""
WORKS: left_click · navigate · javascript_tool · Ctrl+V · Ctrl+Z · Escape · arrow keys
FAILS SILENTLY: type (any text) · key with a character such as "a"
ADDITIONAL NOTES:
- Also reproduces in Google Sheets. Typing a multi-character string there opened the
cell editor but inserted no characters, consistent with the first keystroke being
consumed as focus and the remainder dropped.
- Persisted through page reload, Chrome restart, full PC restart, and extension
toggle off/on.
- Every call returned success. No error at any point.
IMPACT: any browser task requiring text entry fails silently while reporting success.
In my case this caused data loss in a Google Sheet — pastes appeared to apply, Ctrl+Z
appeared to undo, and neither actually took effect, which was only discoverable by
reading the document back through a separate channel.
### What Should Happen?
Characters sent via `type` and via `key` should appear in the focused input, exactly as
they do when typed by a person. If they cannot be delivered, the call should return an
error rather than reporting success.
### Error Messages/Logs
```shell
Troubleshooting already performed, none of which changed the behaviour:
- Page reload and hard navigation
- Closing and reopening the browser tab
- Full Chrome restart
- Full PC restart
- Extension toggled off and back on (service worker restart)
- Verified extension permissions were not downgraded
Ruled out: issue #85779 (keyboard input not reaching cross-origin iframes). That one is
specific to OOPIFs; this reproduces on a plain same-origin textarea with no iframe involved.
Impact note: because the calls report success, an agent cannot detect the failure from the
tool response. In my case this caused real data loss — spreadsheet pastes appeared to
apply and Ctrl+Z appeared to undo them, but neither took effect. The damage was only
visible by reading the document back through a separate channel (the sheet's CSV export)
rather than through the browser tools themselves.
```
### Steps to Reproduce
1. Open a new tab and navigate to https://duckduckgo.com
2. Use computer left_click on the search box.
Confirm focus via javascript_tool: document.activeElement is TEXTAREA[name="q"]
3. Use computer type with text: hello typing test
The call returns successfully: 'Typed "hello typing test"'
4. Read the field back via javascript_tool:
document.querySelector('textarea[name="q"]').value
Result: "" (empty string, length 0)
5. Use computer key with text: a
The call returns successfully: 'Pressed 1 key: a'
6. Read the field again — still "" (empty)
Same result in Google Sheets: clicking a cell works, typing a cell reference into the
name box does nothing, and typing into a cell opens the editor but inserts no characters.
### Claude Model
None
### Is this a regression?
Yes, this worked in a previous version
### Last Working Version
_No response_
### Claude Code Version
N/A — this is the Claude in Chrome extension v1.0.93, used from the Claude desktop app in Cowork mode, not the Claude Code CLI.
### Platform
Anthropic API
### Operating System
Windows
### Terminal/Shell
Terminal.app (macOS)
### Additional Information
_No response_
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by checking the computer type and single-character key entry points, using the reported DuckDuckGo textarea reproduction and javascript_tool readback. Confirm whether the Claude in Chrome extension implementation is present in this repository rather than the Claude Code CLI. Done means characters reach the focused input or the action reports an error instead of success.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- frontend, web-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100