testdriver:right-click
SkillDev toolsPerform a right-click action to open context menus
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the testdriver:right-click skill
What this skill tells your AI
The instructions your AI receives, as published by testdriverai/testdriverai in ai/skills/testdriver-right-click/SKILL.md and read by ahel’s review.
Overview
The rightClick() method does a right-click action on an element. It usually opens context menus. You can call it on an Element instance. Or you can use it with a selector.
Syntax
// Right-click on an element
await element.rightClick();
// Right-click using a selector
await ai.rightClick('selector');
Parameters
When called on an Element, no parameters are required.
When called directly on the AI client:
| Parameter | Type | Description |
|---|---|---|
selector | string | The selector describing the element to right-click |
Returns
It returns a Promise<void>. The promise resolves when the right-click action completes.
Examples
Right-Click to Open Context Menu
const fileItem = await ai.find('README.md file');
await fileItem.rightClick();
// Select menu option
await ai.click('Delete from context menu');
Direct Right-Click with Selector
await ai.rightClick('image in the gallery');
await ai.click('Save image as');
VS Code Context Menu
import { test } from 'vitest';
import { vscode } from '@testdriver/sdk';
test('renames a file via context menu', async () => {
const { ai } = await vscode();
// Right-click on a file
await ai.rightClick('test.js in the file explorer');
// Click rename option
await ai.click('Rename');
// Type new name
await ai.type('test.spec.js');
await ai.pressKeys('Enter');
// Verify rename
const renamedFile = await ai.find('test.spec.js in the file explorer');
expect(renamedFile).toBeTruthy();
});
Browser Context Menu
import { test } from 'vitest';
import { chrome } from '@testdriver/sdk';
test('opens link in new tab', async () => {
const { ai } = await chrome('https://example.com');
// Right-click on a link
await ai.rightClick('Documentation link');
// Select "Open in new tab"
await ai.click('Open link in new tab');
});
Custom Context Menu in Web App
test('uses custom context menu', async () => {
const { ai } = await chrome('https://app.example.com');
// Right-click on custom element
await ai.rightClick('project item in the list');
// Wait for custom menu to appear
await ai.find('custom context menu');
// Click menu option
await ai.click('Duplicate project');
// Verify duplication
const duplicatedProject = await ai.find('project item (copy)');
expect(duplicatedProject).toBeTruthy();
});
Related Methods
click()- Single click on an elementdoubleClick()- Double-click on an elementmouseDown()- Press mouse button without releasingmouseUp()- Release mouse buttonhover()- Move mouse over element without clicking
Signals
- GitHub stars
- 242
- Forks
- 35
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
testdriver-right-click- Source
- github.com/testdriverai/testdriverai