feat(web-test): add navigateLink() for direct 1C navigation links

- navigateLink(url): opens form via Shift+F11 dialog with clipboard paste
- Grant clipboard-read/write permissions on browser context creation
- Register navigateLink in ACTION_FNS for auto-error detection
- Document in SKILL.md with examples (e1cib/list/...)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Nick Shirokov
2026-02-28 15:37:58 +03:00
co-authored by Claude Opus 4.6
parent 0fbdd298ca
commit e58f5c1f82
3 changed files with 46 additions and 3 deletions
+12
View File
@@ -98,6 +98,7 @@ In `exec` sandbox, all browser.mjs functions are available as globals — no `im
|----------|-------------|
| `navigateSection(name)` | Go to section (fuzzy match). Returns `{ sections, commands }` |
| `openCommand(name)` | Open command from function panel (fuzzy). Returns form state |
| `navigateLink(url)` | Open 1C navigation link via Shift+F11 dialog. Returns form state |
| `switchTab(name)` | Switch to open tab/window (fuzzy). Returns form state |
### Reading
@@ -214,6 +215,17 @@ Hint: if `readTable()` returns `hierarchical: true`, the list has groups.
| `F4` | Reference field focused | Open selection form |
| `Alt+F` | List/table form | Open advanced search dialog |
### Navigation links
```js
// Open any form directly by 1C navigation link (e1cib/...)
await navigateLink('e1cib/list/РегистрНакопления.ЗаказыКлиентов');
await navigateLink('e1cib/list/Документ.ЗаказКлиента');
await navigateLink('e1cib/list/Справочник.Контрагенты');
```
Bypasses section/command navigation. Useful for registers, journals, and any form with a known path.
### Submenu navigation
```js