Claude's web UI periodically updates, which can break our selector chains. This task is to verify the current send button selector still works, and if not, update it with a new selector.
What You'll Learn
- How to inspect web pages using Chrome DevTools
- How selector chains work in OpenAdapter
- How to test changes against the live Claude UI
Steps
- Open https://claude.ai in Chrome
- Start a new conversation
- Right-click the send button and select "Inspect" (F12)
- Find a stable selector (look for
data-testid, aria-label, or other semantic attributes)
- Update
SELECTOR_CHAINS.sendButton in both:
server.js (line ~40)
adapter.js (line ~30)
- Test by running:
npm run dev and sending a request
Testing
```bash
Start the server
npm run dev
In another terminal, send a test request
curl http://127.0.0.1:3000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"messages": [{"role": "user", "content": "Hello"}]}'
```
Files to Modify
server.js (SELECTOR_CHAINS.sendButton)
adapter.js (SELECTOR_CHAINS.sendButton)
Reference
See CONTRIBUTING.md section "Updating selectors" for more details.
Claude's web UI periodically updates, which can break our selector chains. This task is to verify the current send button selector still works, and if not, update it with a new selector.
What You'll Learn
Steps
data-testid,aria-label, or other semantic attributes)SELECTOR_CHAINS.sendButtonin both:server.js(line ~40)adapter.js(line ~30)npm run devand sending a requestTesting
```bash
Start the server
npm run dev
In another terminal, send a test request
curl http://127.0.0.1:3000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"messages": [{"role": "user", "content": "Hello"}]}'
```
Files to Modify
server.js(SELECTOR_CHAINS.sendButton)adapter.js(SELECTOR_CHAINS.sendButton)Reference
See CONTRIBUTING.md section "Updating selectors" for more details.