tabwright 1.0.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (568) hide show
  1. package/dist/agent-skills/tabwright/SKILL.md +3 -0
  2. package/dist/aria-snapshot.d.ts +0 -1
  3. package/dist/aria-snapshot.js +9 -1
  4. package/dist/assets/cursors/screen-studio/pointer-macos-tahoe-data-url.d.ts +0 -1
  5. package/dist/assets/cursors/screen-studio/pointer-macos-tahoe-data-url.js +0 -1
  6. package/dist/bippy.js +5 -5
  7. package/dist/browser-config.d.ts +0 -1
  8. package/dist/browser-config.js +0 -1
  9. package/dist/browser-install.d.ts +0 -1
  10. package/dist/browser-install.js +0 -1
  11. package/dist/browser-launch.d.ts +0 -1
  12. package/dist/browser-launch.js +0 -1
  13. package/dist/capability-agent-skill.d.ts +0 -1
  14. package/dist/capability-agent-skill.js +0 -1
  15. package/dist/capability-auth-state.d.ts +0 -1
  16. package/dist/capability-auth-state.js +0 -1
  17. package/dist/capability-auth.d.ts +0 -1
  18. package/dist/capability-auth.js +0 -1
  19. package/dist/capability-options.d.ts +0 -1
  20. package/dist/capability-options.js +0 -1
  21. package/dist/capability-package.d.ts +0 -1
  22. package/dist/capability-package.js +47 -2
  23. package/dist/capability-registry.d.ts +0 -1
  24. package/dist/capability-registry.js +0 -1
  25. package/dist/capability-runner.d.ts +0 -1
  26. package/dist/capability-runner.js +0 -1
  27. package/dist/capability-studio.d.ts +0 -1
  28. package/dist/capability-studio.js +0 -1
  29. package/dist/cdp-log.d.ts +0 -1
  30. package/dist/cdp-log.js +0 -1
  31. package/dist/cdp-relay.d.ts +0 -1
  32. package/dist/cdp-relay.js +0 -1
  33. package/dist/cdp-session.d.ts +0 -1
  34. package/dist/cdp-session.js +0 -1
  35. package/dist/cdp-types.d.ts +0 -1
  36. package/dist/cdp-types.js +0 -1
  37. package/dist/chrome-discovery.d.ts +0 -1
  38. package/dist/chrome-discovery.js +0 -1
  39. package/dist/clean-html.d.ts +0 -1
  40. package/dist/clean-html.js +0 -1
  41. package/dist/cli.d.ts +0 -1
  42. package/dist/cli.js +10 -56
  43. package/dist/cloud-client.d.ts +0 -1
  44. package/dist/cloud-client.js +0 -1
  45. package/dist/create-logger.d.ts +0 -1
  46. package/dist/create-logger.js +0 -1
  47. package/dist/debugger-examples-types.d.ts +0 -1
  48. package/dist/debugger-examples-types.js +0 -1
  49. package/dist/debugger-examples.d.ts +0 -1
  50. package/dist/debugger-examples.js +0 -1
  51. package/dist/debugger.d.ts +0 -1
  52. package/dist/debugger.js +0 -1
  53. package/dist/diff-utils.d.ts +0 -1
  54. package/dist/diff-utils.js +0 -1
  55. package/dist/doctor.d.ts +0 -1
  56. package/dist/doctor.js +5 -7
  57. package/dist/editor-examples.d.ts +0 -1
  58. package/dist/editor-examples.js +0 -1
  59. package/dist/editor.d.ts +0 -1
  60. package/dist/editor.js +0 -1
  61. package/dist/env-compat.d.ts +0 -1
  62. package/dist/env-compat.js +0 -1
  63. package/dist/executor.d.ts +0 -1
  64. package/dist/executor.js +1 -2
  65. package/dist/extension/background.js +10 -6
  66. package/dist/extension/manifest.json +1 -1
  67. package/dist/extension/options.js +1 -1
  68. package/dist/extension/rrweb-recorder.js +1 -1
  69. package/dist/ghost-browser.d.ts +0 -1
  70. package/dist/ghost-browser.js +0 -1
  71. package/dist/ghost-cursor-controller.d.ts +0 -1
  72. package/dist/ghost-cursor-controller.js +0 -1
  73. package/dist/ghost-cursor.d.ts +0 -1
  74. package/dist/ghost-cursor.js +0 -1
  75. package/dist/htmlrewrite.d.ts +0 -1
  76. package/dist/htmlrewrite.js +0 -1
  77. package/dist/index.d.ts +0 -1
  78. package/dist/index.js +0 -1
  79. package/dist/kill-port.d.ts +0 -1
  80. package/dist/kill-port.js +0 -1
  81. package/dist/kitty-graphics.d.ts +0 -1
  82. package/dist/kitty-graphics.js +0 -1
  83. package/dist/mcp.d.ts +0 -1
  84. package/dist/mcp.js +0 -1
  85. package/dist/package-paths.d.ts +0 -1
  86. package/dist/package-paths.js +0 -1
  87. package/dist/page-markdown.d.ts +0 -1
  88. package/dist/page-markdown.js +0 -1
  89. package/dist/performance-examples.d.ts +0 -1
  90. package/dist/performance-examples.js +0 -1
  91. package/dist/playwright-import.d.ts +0 -1
  92. package/dist/playwright-import.js +0 -1
  93. package/dist/product-paths.d.ts +0 -1
  94. package/dist/product-paths.js +0 -1
  95. package/dist/protocol.d.ts +0 -1
  96. package/dist/protocol.js +0 -1
  97. package/dist/react-source.d.ts +0 -1
  98. package/dist/react-source.js +0 -1
  99. package/dist/readability.js +4 -4
  100. package/dist/relay-client.d.ts +0 -1
  101. package/dist/relay-client.js +0 -1
  102. package/dist/relay-state.d.ts +0 -1
  103. package/dist/relay-state.js +0 -1
  104. package/dist/replay-ai-index.d.ts +0 -1
  105. package/dist/replay-ai-index.js +0 -1
  106. package/dist/replay-eval.d.ts +0 -1
  107. package/dist/replay-eval.js +0 -1
  108. package/dist/replay-handoff.d.ts +0 -1
  109. package/dist/replay-handoff.js +0 -1
  110. package/dist/replay-workflow-compiler.d.ts +0 -1
  111. package/dist/replay-workflow-compiler.js +0 -1
  112. package/dist/rrweb-recording-relay.d.ts +0 -1
  113. package/dist/rrweb-recording-relay.js +0 -1
  114. package/dist/rrweb-recording.d.ts +0 -1
  115. package/dist/rrweb-recording.js +0 -1
  116. package/dist/scoped-fs.d.ts +0 -1
  117. package/dist/scoped-fs.js +0 -1
  118. package/dist/selector-generator.js +2 -2
  119. package/dist/start-relay-server.d.ts +0 -1
  120. package/dist/start-relay-server.js +0 -1
  121. package/dist/styles-examples.d.ts +0 -1
  122. package/dist/styles-examples.js +0 -1
  123. package/dist/styles.d.ts +0 -1
  124. package/dist/styles.js +0 -1
  125. package/dist/tabwright-agent-skill.d.ts +0 -1
  126. package/dist/tabwright-agent-skill.js +0 -1
  127. package/dist/test-declarations.d.ts +0 -1
  128. package/dist/test-declarations.js +0 -1
  129. package/dist/utils.d.ts +0 -1
  130. package/dist/utils.js +2 -2
  131. package/dist/wait-for-page-load.d.ts +0 -1
  132. package/dist/wait-for-page-load.js +0 -1
  133. package/dist/workflow-capability.d.ts +0 -1
  134. package/dist/workflow-capability.js +0 -1
  135. package/package.json +8 -4
  136. package/readme.md +43 -0
  137. package/src/skill.md +5 -2
  138. package/dist/aria-snapshot.d.ts.map +0 -1
  139. package/dist/aria-snapshot.js.map +0 -1
  140. package/dist/aria-snapshot.test.d.ts +0 -2
  141. package/dist/aria-snapshot.test.d.ts.map +0 -1
  142. package/dist/aria-snapshot.test.js +0 -270
  143. package/dist/aria-snapshot.test.js.map +0 -1
  144. package/dist/aria-snapshot.unit.test.d.ts +0 -2
  145. package/dist/aria-snapshot.unit.test.d.ts.map +0 -1
  146. package/dist/aria-snapshot.unit.test.js +0 -542
  147. package/dist/aria-snapshot.unit.test.js.map +0 -1
  148. package/dist/assets/cursors/screen-studio/pointer-macos-tahoe-data-url.d.ts.map +0 -1
  149. package/dist/assets/cursors/screen-studio/pointer-macos-tahoe-data-url.js.map +0 -1
  150. package/dist/browser-config.d.ts.map +0 -1
  151. package/dist/browser-config.js.map +0 -1
  152. package/dist/browser-install.d.ts.map +0 -1
  153. package/dist/browser-install.js.map +0 -1
  154. package/dist/browser-launch.d.ts.map +0 -1
  155. package/dist/browser-launch.js.map +0 -1
  156. package/dist/builtin-capabilities.d.ts +0 -28
  157. package/dist/builtin-capabilities.d.ts.map +0 -1
  158. package/dist/builtin-capabilities.js +0 -2673
  159. package/dist/builtin-capabilities.js.map +0 -1
  160. package/dist/capability-agent-skill.d.ts.map +0 -1
  161. package/dist/capability-agent-skill.js.map +0 -1
  162. package/dist/capability-auth-state.d.ts.map +0 -1
  163. package/dist/capability-auth-state.js.map +0 -1
  164. package/dist/capability-auth.d.ts.map +0 -1
  165. package/dist/capability-auth.js.map +0 -1
  166. package/dist/capability-cli-confirmation.test.d.ts +0 -2
  167. package/dist/capability-cli-confirmation.test.d.ts.map +0 -1
  168. package/dist/capability-cli-confirmation.test.js +0 -79
  169. package/dist/capability-cli-confirmation.test.js.map +0 -1
  170. package/dist/capability-options.d.ts.map +0 -1
  171. package/dist/capability-options.js.map +0 -1
  172. package/dist/capability-options.test.d.ts +0 -2
  173. package/dist/capability-options.test.d.ts.map +0 -1
  174. package/dist/capability-options.test.js +0 -81
  175. package/dist/capability-options.test.js.map +0 -1
  176. package/dist/capability-package.d.ts.map +0 -1
  177. package/dist/capability-package.js.map +0 -1
  178. package/dist/capability-package.test.d.ts +0 -2
  179. package/dist/capability-package.test.d.ts.map +0 -1
  180. package/dist/capability-package.test.js +0 -179
  181. package/dist/capability-package.test.js.map +0 -1
  182. package/dist/capability-registry.d.ts.map +0 -1
  183. package/dist/capability-registry.js.map +0 -1
  184. package/dist/capability-registry.test.d.ts +0 -2
  185. package/dist/capability-registry.test.d.ts.map +0 -1
  186. package/dist/capability-registry.test.js +0 -1683
  187. package/dist/capability-registry.test.js.map +0 -1
  188. package/dist/capability-runner.d.ts.map +0 -1
  189. package/dist/capability-runner.js.map +0 -1
  190. package/dist/capability-search-relevance.test.d.ts +0 -2
  191. package/dist/capability-search-relevance.test.d.ts.map +0 -1
  192. package/dist/capability-search-relevance.test.js +0 -67
  193. package/dist/capability-search-relevance.test.js.map +0 -1
  194. package/dist/capability-studio.d.ts.map +0 -1
  195. package/dist/capability-studio.js.map +0 -1
  196. package/dist/capability-studio.test.d.ts +0 -2
  197. package/dist/capability-studio.test.d.ts.map +0 -1
  198. package/dist/capability-studio.test.js +0 -41
  199. package/dist/capability-studio.test.js.map +0 -1
  200. package/dist/cdp-log.d.ts.map +0 -1
  201. package/dist/cdp-log.js.map +0 -1
  202. package/dist/cdp-log.test.d.ts +0 -2
  203. package/dist/cdp-log.test.d.ts.map +0 -1
  204. package/dist/cdp-log.test.js +0 -109
  205. package/dist/cdp-log.test.js.map +0 -1
  206. package/dist/cdp-relay.d.ts.map +0 -1
  207. package/dist/cdp-relay.js.map +0 -1
  208. package/dist/cdp-session.d.ts.map +0 -1
  209. package/dist/cdp-session.js.map +0 -1
  210. package/dist/cdp-types.d.ts.map +0 -1
  211. package/dist/cdp-types.js.map +0 -1
  212. package/dist/channel-owner-inspect.test.d.ts +0 -2
  213. package/dist/channel-owner-inspect.test.d.ts.map +0 -1
  214. package/dist/channel-owner-inspect.test.js +0 -75
  215. package/dist/channel-owner-inspect.test.js.map +0 -1
  216. package/dist/chrome-discovery.d.ts.map +0 -1
  217. package/dist/chrome-discovery.js.map +0 -1
  218. package/dist/chrome-discovery.test.d.ts +0 -2
  219. package/dist/chrome-discovery.test.d.ts.map +0 -1
  220. package/dist/chrome-discovery.test.js +0 -41
  221. package/dist/chrome-discovery.test.js.map +0 -1
  222. package/dist/clean-html.d.ts.map +0 -1
  223. package/dist/clean-html.js.map +0 -1
  224. package/dist/cli-help.test.d.ts +0 -2
  225. package/dist/cli-help.test.d.ts.map +0 -1
  226. package/dist/cli-help.test.js +0 -98
  227. package/dist/cli-help.test.js.map +0 -1
  228. package/dist/cli.d.ts.map +0 -1
  229. package/dist/cli.js.map +0 -1
  230. package/dist/cloud-client.d.ts.map +0 -1
  231. package/dist/cloud-client.js.map +0 -1
  232. package/dist/create-logger.d.ts.map +0 -1
  233. package/dist/create-logger.js.map +0 -1
  234. package/dist/debugger-examples-types.d.ts.map +0 -1
  235. package/dist/debugger-examples-types.js.map +0 -1
  236. package/dist/debugger-examples.d.ts.map +0 -1
  237. package/dist/debugger-examples.js.map +0 -1
  238. package/dist/debugger.d.ts.map +0 -1
  239. package/dist/debugger.js.map +0 -1
  240. package/dist/diff-utils.d.ts.map +0 -1
  241. package/dist/diff-utils.js.map +0 -1
  242. package/dist/diff-utils.test.d.ts +0 -2
  243. package/dist/diff-utils.test.d.ts.map +0 -1
  244. package/dist/diff-utils.test.js +0 -137
  245. package/dist/diff-utils.test.js.map +0 -1
  246. package/dist/doctor.d.ts.map +0 -1
  247. package/dist/doctor.js.map +0 -1
  248. package/dist/doctor.test.d.ts +0 -2
  249. package/dist/doctor.test.d.ts.map +0 -1
  250. package/dist/doctor.test.js +0 -208
  251. package/dist/doctor.test.js.map +0 -1
  252. package/dist/editor-examples.d.ts.map +0 -1
  253. package/dist/editor-examples.js.map +0 -1
  254. package/dist/editor.d.ts.map +0 -1
  255. package/dist/editor.js.map +0 -1
  256. package/dist/env-compat.d.ts.map +0 -1
  257. package/dist/env-compat.js.map +0 -1
  258. package/dist/executor.d.ts.map +0 -1
  259. package/dist/executor.js.map +0 -1
  260. package/dist/executor.unit.test.d.ts +0 -2
  261. package/dist/executor.unit.test.d.ts.map +0 -1
  262. package/dist/executor.unit.test.js +0 -143
  263. package/dist/executor.unit.test.js.map +0 -1
  264. package/dist/extension-connection.test.d.ts +0 -2
  265. package/dist/extension-connection.test.d.ts.map +0 -1
  266. package/dist/extension-connection.test.js +0 -708
  267. package/dist/extension-connection.test.js.map +0 -1
  268. package/dist/extension-icon-warning.test.d.ts +0 -2
  269. package/dist/extension-icon-warning.test.d.ts.map +0 -1
  270. package/dist/extension-icon-warning.test.js +0 -33
  271. package/dist/extension-icon-warning.test.js.map +0 -1
  272. package/dist/ghost-browser.d.ts.map +0 -1
  273. package/dist/ghost-browser.js.map +0 -1
  274. package/dist/ghost-cursor-controller.d.ts.map +0 -1
  275. package/dist/ghost-cursor-controller.js.map +0 -1
  276. package/dist/ghost-cursor.d.ts.map +0 -1
  277. package/dist/ghost-cursor.js.map +0 -1
  278. package/dist/htmlrewrite.d.ts.map +0 -1
  279. package/dist/htmlrewrite.js.map +0 -1
  280. package/dist/htmlrewrite.test.d.ts +0 -2
  281. package/dist/htmlrewrite.test.d.ts.map +0 -1
  282. package/dist/htmlrewrite.test.js +0 -7975
  283. package/dist/htmlrewrite.test.js.map +0 -1
  284. package/dist/index.d.ts.map +0 -1
  285. package/dist/index.js.map +0 -1
  286. package/dist/kill-port.d.ts.map +0 -1
  287. package/dist/kill-port.js.map +0 -1
  288. package/dist/kitty-graphics.d.ts.map +0 -1
  289. package/dist/kitty-graphics.js.map +0 -1
  290. package/dist/kitty-graphics.test.d.ts +0 -2
  291. package/dist/kitty-graphics.test.d.ts.map +0 -1
  292. package/dist/kitty-graphics.test.js +0 -125
  293. package/dist/kitty-graphics.test.js.map +0 -1
  294. package/dist/locator-selector.test.d.ts +0 -2
  295. package/dist/locator-selector.test.d.ts.map +0 -1
  296. package/dist/locator-selector.test.js +0 -98
  297. package/dist/locator-selector.test.js.map +0 -1
  298. package/dist/mcp-client.d.ts +0 -20
  299. package/dist/mcp-client.d.ts.map +0 -1
  300. package/dist/mcp-client.js +0 -56
  301. package/dist/mcp-client.js.map +0 -1
  302. package/dist/mcp.d.ts.map +0 -1
  303. package/dist/mcp.js.map +0 -1
  304. package/dist/on-mouse-action.test.d.ts +0 -2
  305. package/dist/on-mouse-action.test.d.ts.map +0 -1
  306. package/dist/on-mouse-action.test.js +0 -180
  307. package/dist/on-mouse-action.test.js.map +0 -1
  308. package/dist/options-page.test.d.ts +0 -2
  309. package/dist/options-page.test.d.ts.map +0 -1
  310. package/dist/options-page.test.js +0 -773
  311. package/dist/options-page.test.js.map +0 -1
  312. package/dist/package-paths.d.ts.map +0 -1
  313. package/dist/package-paths.js.map +0 -1
  314. package/dist/page-markdown.d.ts.map +0 -1
  315. package/dist/page-markdown.js.map +0 -1
  316. package/dist/performance-examples.d.ts.map +0 -1
  317. package/dist/performance-examples.js.map +0 -1
  318. package/dist/playwright-import.d.ts.map +0 -1
  319. package/dist/playwright-import.js.map +0 -1
  320. package/dist/popup-relocation.test.d.ts +0 -7
  321. package/dist/popup-relocation.test.d.ts.map +0 -1
  322. package/dist/popup-relocation.test.js +0 -139
  323. package/dist/popup-relocation.test.js.map +0 -1
  324. package/dist/product-paths.d.ts.map +0 -1
  325. package/dist/product-paths.js.map +0 -1
  326. package/dist/product-paths.test.d.ts +0 -2
  327. package/dist/product-paths.test.d.ts.map +0 -1
  328. package/dist/product-paths.test.js +0 -39
  329. package/dist/product-paths.test.js.map +0 -1
  330. package/dist/protocol.d.ts.map +0 -1
  331. package/dist/protocol.js.map +0 -1
  332. package/dist/protocol.test.d.ts +0 -2
  333. package/dist/protocol.test.d.ts.map +0 -1
  334. package/dist/protocol.test.js +0 -31
  335. package/dist/protocol.test.js.map +0 -1
  336. package/dist/react-source.d.ts.map +0 -1
  337. package/dist/react-source.js.map +0 -1
  338. package/dist/relay-client.d.ts.map +0 -1
  339. package/dist/relay-client.js.map +0 -1
  340. package/dist/relay-client.test.d.ts +0 -2
  341. package/dist/relay-client.test.d.ts.map +0 -1
  342. package/dist/relay-client.test.js +0 -305
  343. package/dist/relay-client.test.js.map +0 -1
  344. package/dist/relay-core.test.d.ts +0 -2
  345. package/dist/relay-core.test.d.ts.map +0 -1
  346. package/dist/relay-core.test.js +0 -1427
  347. package/dist/relay-core.test.js.map +0 -1
  348. package/dist/relay-navigation.test.d.ts +0 -2
  349. package/dist/relay-navigation.test.d.ts.map +0 -1
  350. package/dist/relay-navigation.test.js +0 -661
  351. package/dist/relay-navigation.test.js.map +0 -1
  352. package/dist/relay-session.test.d.ts +0 -2
  353. package/dist/relay-session.test.d.ts.map +0 -1
  354. package/dist/relay-session.test.js +0 -1121
  355. package/dist/relay-session.test.js.map +0 -1
  356. package/dist/relay-state.d.ts.map +0 -1
  357. package/dist/relay-state.js.map +0 -1
  358. package/dist/relay-state.test.d.ts +0 -2
  359. package/dist/relay-state.test.d.ts.map +0 -1
  360. package/dist/relay-state.test.js +0 -594
  361. package/dist/relay-state.test.js.map +0 -1
  362. package/dist/replay-ai-index.d.ts.map +0 -1
  363. package/dist/replay-ai-index.js.map +0 -1
  364. package/dist/replay-ai-index.test.d.ts +0 -2
  365. package/dist/replay-ai-index.test.d.ts.map +0 -1
  366. package/dist/replay-ai-index.test.js +0 -255
  367. package/dist/replay-ai-index.test.js.map +0 -1
  368. package/dist/replay-cli.test.d.ts +0 -2
  369. package/dist/replay-cli.test.d.ts.map +0 -1
  370. package/dist/replay-cli.test.js +0 -275
  371. package/dist/replay-cli.test.js.map +0 -1
  372. package/dist/replay-eval.d.ts.map +0 -1
  373. package/dist/replay-eval.js.map +0 -1
  374. package/dist/replay-handoff.d.ts.map +0 -1
  375. package/dist/replay-handoff.js.map +0 -1
  376. package/dist/replay-handoff.test.d.ts +0 -2
  377. package/dist/replay-handoff.test.d.ts.map +0 -1
  378. package/dist/replay-handoff.test.js +0 -123
  379. package/dist/replay-handoff.test.js.map +0 -1
  380. package/dist/replay-workflow-compiler.d.ts.map +0 -1
  381. package/dist/replay-workflow-compiler.js.map +0 -1
  382. package/dist/replay-workflow-compiler.test.d.ts +0 -2
  383. package/dist/replay-workflow-compiler.test.d.ts.map +0 -1
  384. package/dist/replay-workflow-compiler.test.js +0 -223
  385. package/dist/replay-workflow-compiler.test.js.map +0 -1
  386. package/dist/rrweb-recording-relay.d.ts.map +0 -1
  387. package/dist/rrweb-recording-relay.js.map +0 -1
  388. package/dist/rrweb-recording-relay.test.d.ts +0 -2
  389. package/dist/rrweb-recording-relay.test.d.ts.map +0 -1
  390. package/dist/rrweb-recording-relay.test.js +0 -85
  391. package/dist/rrweb-recording-relay.test.js.map +0 -1
  392. package/dist/rrweb-recording.d.ts.map +0 -1
  393. package/dist/rrweb-recording.js.map +0 -1
  394. package/dist/scoped-fs.d.ts.map +0 -1
  395. package/dist/scoped-fs.js.map +0 -1
  396. package/dist/scoped-fs.test.d.ts +0 -5
  397. package/dist/scoped-fs.test.d.ts.map +0 -1
  398. package/dist/scoped-fs.test.js +0 -73
  399. package/dist/scoped-fs.test.js.map +0 -1
  400. package/dist/skill-stub.test.d.ts +0 -2
  401. package/dist/skill-stub.test.d.ts.map +0 -1
  402. package/dist/skill-stub.test.js +0 -22
  403. package/dist/skill-stub.test.js.map +0 -1
  404. package/dist/snapshot-tools.test.d.ts +0 -2
  405. package/dist/snapshot-tools.test.d.ts.map +0 -1
  406. package/dist/snapshot-tools.test.js +0 -856
  407. package/dist/snapshot-tools.test.js.map +0 -1
  408. package/dist/start-relay-server.d.ts.map +0 -1
  409. package/dist/start-relay-server.js.map +0 -1
  410. package/dist/styles-examples.d.ts.map +0 -1
  411. package/dist/styles-examples.js.map +0 -1
  412. package/dist/styles.d.ts.map +0 -1
  413. package/dist/styles.js.map +0 -1
  414. package/dist/tabwright-agent-skill.d.ts.map +0 -1
  415. package/dist/tabwright-agent-skill.js.map +0 -1
  416. package/dist/tabwright-agent-skill.test.d.ts +0 -2
  417. package/dist/tabwright-agent-skill.test.d.ts.map +0 -1
  418. package/dist/tabwright-agent-skill.test.js +0 -51
  419. package/dist/tabwright-agent-skill.test.js.map +0 -1
  420. package/dist/test-declarations.d.ts.map +0 -1
  421. package/dist/test-declarations.js.map +0 -1
  422. package/dist/test-utils.d.ts +0 -69
  423. package/dist/test-utils.d.ts.map +0 -1
  424. package/dist/test-utils.js +0 -448
  425. package/dist/test-utils.js.map +0 -1
  426. package/dist/test-utils.test.d.ts +0 -2
  427. package/dist/test-utils.test.d.ts.map +0 -1
  428. package/dist/test-utils.test.js +0 -55
  429. package/dist/test-utils.test.js.map +0 -1
  430. package/dist/utils.d.ts.map +0 -1
  431. package/dist/utils.js.map +0 -1
  432. package/dist/wait-for-page-load.d.ts.map +0 -1
  433. package/dist/wait-for-page-load.js.map +0 -1
  434. package/dist/workflow-capability.d.ts.map +0 -1
  435. package/dist/workflow-capability.js.map +0 -1
  436. package/dist/workflow-script-flow.test.d.ts +0 -2
  437. package/dist/workflow-script-flow.test.d.ts.map +0 -1
  438. package/dist/workflow-script-flow.test.js +0 -285
  439. package/dist/workflow-script-flow.test.js.map +0 -1
  440. package/src/__snapshots__/x.com.processed.html +0 -1003
  441. package/src/__snapshots__/x.com.processed.withStyles.html +0 -2720
  442. package/src/a11y-client.ts +0 -241
  443. package/src/agent-skills/conan-config/SKILL.md +0 -141
  444. package/src/agent-skills/conan-config/agents/openai.yaml +0 -4
  445. package/src/aria-snapshot.test.ts +0 -311
  446. package/src/aria-snapshot.ts +0 -1681
  447. package/src/aria-snapshot.unit.test.ts +0 -615
  448. package/src/aria-snapshots/github-interactive.txt +0 -193
  449. package/src/aria-snapshots/github-raw.txt +0 -309
  450. package/src/aria-snapshots/hackernews-interactive.txt +0 -477
  451. package/src/aria-snapshots/hackernews-raw.txt +0 -428
  452. package/src/aria-snapshots/prosemirror-interactive.txt +0 -66
  453. package/src/aria-snapshots/prosemirror-raw.txt +0 -145
  454. package/src/assets/aria-labels-hacker-news.png +0 -0
  455. package/src/assets/aria-labels-old-reddit.png +0 -0
  456. package/src/assets/cursors/screen-studio/pointer-macos-tahoe-data-url.ts +0 -5
  457. package/src/assets/cursors/screen-studio/pointer-macos-tahoe.svg +0 -18
  458. package/src/assets/x.com.html +0 -32946
  459. package/src/browser-config.ts +0 -179
  460. package/src/browser-install.ts +0 -284
  461. package/src/browser-launch.ts +0 -75
  462. package/src/builtin-capabilities.ts +0 -2765
  463. package/src/capability-agent-skill.ts +0 -305
  464. package/src/capability-auth-state.ts +0 -197
  465. package/src/capability-auth.ts +0 -249
  466. package/src/capability-cli-confirmation.test.ts +0 -90
  467. package/src/capability-options.test.ts +0 -89
  468. package/src/capability-options.ts +0 -57
  469. package/src/capability-package.test.ts +0 -204
  470. package/src/capability-package.ts +0 -555
  471. package/src/capability-registry.test.ts +0 -1905
  472. package/src/capability-registry.ts +0 -1234
  473. package/src/capability-runner.ts +0 -801
  474. package/src/capability-search-relevance.test.ts +0 -73
  475. package/src/capability-studio.test.ts +0 -45
  476. package/src/capability-studio.ts +0 -641
  477. package/src/cdp-log.test.ts +0 -131
  478. package/src/cdp-log.ts +0 -112
  479. package/src/cdp-relay.ts +0 -2944
  480. package/src/cdp-session.ts +0 -77
  481. package/src/cdp-types.ts +0 -158
  482. package/src/channel-owner-inspect.test.ts +0 -94
  483. package/src/chrome-discovery.test.ts +0 -50
  484. package/src/chrome-discovery.ts +0 -220
  485. package/src/clean-html.ts +0 -141
  486. package/src/cli-help.test.ts +0 -123
  487. package/src/cli.ts +0 -3181
  488. package/src/cloud-client.ts +0 -179
  489. package/src/create-logger.ts +0 -38
  490. package/src/debugger-examples-types.ts +0 -16
  491. package/src/debugger-examples.ts +0 -66
  492. package/src/debugger.ts +0 -708
  493. package/src/diff-utils.test.ts +0 -152
  494. package/src/diff-utils.ts +0 -70
  495. package/src/doctor.test.ts +0 -244
  496. package/src/doctor.ts +0 -321
  497. package/src/editor-examples.ts +0 -158
  498. package/src/editor.ts +0 -426
  499. package/src/env-compat.ts +0 -28
  500. package/src/executor.ts +0 -1824
  501. package/src/executor.unit.test.ts +0 -168
  502. package/src/extension-connection.test.ts +0 -855
  503. package/src/extension-icon-warning.test.ts +0 -45
  504. package/src/ghost-browser.ts +0 -149
  505. package/src/ghost-cursor-client.ts +0 -494
  506. package/src/ghost-cursor-controller.ts +0 -129
  507. package/src/ghost-cursor.ts +0 -123
  508. package/src/htmlrewrite.test.ts +0 -8008
  509. package/src/htmlrewrite.ts +0 -390
  510. package/src/index.ts +0 -53
  511. package/src/kill-port.ts +0 -219
  512. package/src/kitty-graphics.test.ts +0 -139
  513. package/src/kitty-graphics.ts +0 -79
  514. package/src/locator-selector.test.ts +0 -119
  515. package/src/mcp-client.ts +0 -78
  516. package/src/mcp.ts +0 -629
  517. package/src/on-mouse-action.test.ts +0 -226
  518. package/src/options-page.test.ts +0 -839
  519. package/src/package-paths.ts +0 -38
  520. package/src/page-markdown.ts +0 -240
  521. package/src/performance-examples.ts +0 -186
  522. package/src/playwright-import.ts +0 -59
  523. package/src/popup-relocation.test.ts +0 -163
  524. package/src/product-paths.test.ts +0 -47
  525. package/src/product-paths.ts +0 -28
  526. package/src/protocol.test.ts +0 -52
  527. package/src/protocol.ts +0 -351
  528. package/src/react-source.ts +0 -379
  529. package/src/relay-client.test.ts +0 -375
  530. package/src/relay-client.ts +0 -572
  531. package/src/relay-core.test.ts +0 -1603
  532. package/src/relay-navigation.test.ts +0 -790
  533. package/src/relay-session.test.ts +0 -1375
  534. package/src/relay-state.test.ts +0 -729
  535. package/src/relay-state.ts +0 -561
  536. package/src/replay-ai-index.test.ts +0 -278
  537. package/src/replay-ai-index.ts +0 -872
  538. package/src/replay-cli.test.ts +0 -325
  539. package/src/replay-eval.ts +0 -1039
  540. package/src/replay-handoff.test.ts +0 -163
  541. package/src/replay-handoff.ts +0 -109
  542. package/src/replay-workflow-compiler.test.ts +0 -250
  543. package/src/replay-workflow-compiler.ts +0 -700
  544. package/src/resource.md +0 -409
  545. package/src/rrweb-recording-relay.test.ts +0 -99
  546. package/src/rrweb-recording-relay.ts +0 -400
  547. package/src/rrweb-recording.ts +0 -322
  548. package/src/scoped-fs.test.ts +0 -80
  549. package/src/scoped-fs.ts +0 -420
  550. package/src/skill-stub.test.ts +0 -24
  551. package/src/snapshot-tools.test.ts +0 -1017
  552. package/src/snapshots/hacker-news-accessibility-full.md +0 -81
  553. package/src/snapshots/hacker-news-accessibility-interactive.md +0 -43
  554. package/src/snapshots/page-markdown-output.txt +0 -16
  555. package/src/snapshots/shadcn-ui-accessibility-full.md +0 -201
  556. package/src/snapshots/shadcn-ui-accessibility-interactive.md +0 -109
  557. package/src/start-relay-server.ts +0 -69
  558. package/src/styles-examples.ts +0 -84
  559. package/src/styles.ts +0 -343
  560. package/src/tabwright-agent-skill.test.ts +0 -61
  561. package/src/tabwright-agent-skill.ts +0 -105
  562. package/src/test-declarations.ts +0 -13
  563. package/src/test-utils.test.ts +0 -70
  564. package/src/test-utils.ts +0 -566
  565. package/src/utils.ts +0 -78
  566. package/src/wait-for-page-load.ts +0 -198
  567. package/src/workflow-capability.ts +0 -417
  568. package/src/workflow-script-flow.test.ts +0 -388
@@ -53,8 +53,11 @@ When the user asks to package, share, export, or install a saved capability, use
53
53
  tabwright capability pack <capability-id>
54
54
  tabwright capability install ./<capability-id>.tgz
55
55
  tabwright capability install https://example.com/<capability-id>.tgz
56
+ tabwright capability install 'git@example.com:team/capabilities.git#v1.0.0:capabilities/<capability-id>'
56
57
  ```
57
58
 
59
+ Git sources use `<remote>#<ref>:<capability-path>` and read only that directory with `git archive`, so private SSH repositories do not need to be cloned. Prefer a release tag over a moving branch.
60
+
58
61
  `capability pack` includes only the manifest, entry script, optional README, and optional agent skills. It excludes `secrets.json`, `runs.jsonl`, and `artifacts/`. Shared capabilities always install as `draft`. Do not trust one until its contract and script have been inspected and it has passed a `capability run --force` validation. Authentication must be refreshed from the recipient's own browser. Packaged agent skills are not installed unless the user explicitly passes `--with-agent-skill` or later runs `capability skill install <capability-id>`.
59
62
 
60
63
  ## Replay-to-Capability Handoff
@@ -259,4 +259,3 @@ export declare function screenshotWithAccessibilityLabels({ page, locator, inter
259
259
  };
260
260
  }): Promise<void>;
261
261
  export { getAriaSnapshot as getAriaSnapshotWithRefs };
262
- //# sourceMappingURL=aria-snapshot.d.ts.map
@@ -298,6 +298,9 @@ export function buildRawSnapshotTree(options) {
298
298
  };
299
299
  }
300
300
  export function filterInteractiveSnapshotTree(options) {
301
+ if (isTabwrightToolbarNode(options.node)) {
302
+ return { nodes: [], names: new Set() };
303
+ }
301
304
  const role = options.node.role;
302
305
  const name = options.node.name;
303
306
  const hasName = name.length > 0;
@@ -393,6 +396,9 @@ export function filterInteractiveSnapshotTree(options) {
393
396
  return { nodes: [nodeEntry], names };
394
397
  }
395
398
  export function filterFullSnapshotTree(options) {
399
+ if (isTabwrightToolbarNode(options.node)) {
400
+ return { nodes: [], names: new Set() };
401
+ }
396
402
  const role = options.node.role;
397
403
  const name = options.node.name;
398
404
  const hasName = name.length > 0;
@@ -474,6 +480,9 @@ export function filterFullSnapshotTree(options) {
474
480
  }
475
481
  return { nodes: [nodeEntry], names };
476
482
  }
483
+ function isTabwrightToolbarNode(node) {
484
+ return node.role === 'toolbar' && node.name === 'Tabwright tools';
485
+ }
477
486
  function buildLocatorLineText({ line, locator }) {
478
487
  const prefix = ' '.repeat(line.indent ?? 0);
479
488
  const role = line.role ?? '';
@@ -1253,4 +1262,3 @@ export async function screenshotWithAccessibilityLabels({ page, locator, interac
1253
1262
  }
1254
1263
  // Re-export for backward compatibility
1255
1264
  export { getAriaSnapshot as getAriaSnapshotWithRefs };
1256
- //# sourceMappingURL=aria-snapshot.js.map
@@ -2,4 +2,3 @@
2
2
  * Generated from pointer-macos-tahoe.svg via scripts/encode-screenstudio-cursor.ts.
3
3
  */
4
4
  export declare const SCREENSTUDIO_POINTER_MACOS_TAHOE_DATA_URL = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjE4IiBoZWlnaHQ9Ijk1OCIgdmlld0JveD0iMCAwIDYxOCA5NTgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGZpbHRlcj0idXJsKCNmaWx0ZXIwX2RfMzg0XzI3KSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTI3LjA2MiAzNy4wMzMxTDU0MC42OTYgNDUxLjU1NUM1OTIuNjUzIDUwMy42NiA1NTUuNzk0IDU5Mi41NzQgNDgyLjIyNiA1OTIuNTc0TDQyMS44MzEgNTkyLjU2OUw0ODEuODIxIDczNS4wNTRDNDkyLjMzMSA3NjAuMDIxIDQ5Mi40NzkgNzg3LjY1MiA0ODIuMjY1IDgxMi43NjdDNDcyLjAwMiA4MzcuOTMyIDQ1Mi41NjEgODU3LjU3IDQyNy40OTYgODY4LjA4QzQxNC44NjQgODczLjM1OSA0MDEuNjQgODc2LjAyNCAzODguMTIxIDg3Ni4wMjRDMzQ3LjExNyA4NzYuMDI0IDMxMC4zNTggODUxLjYgMjk0LjQ3IDgxMy44MDRMMjMxLjQyIDY2My45MThMMTkwLjM2OCA3MDAuMzM3QzEzNy4wMjkgNzQ3LjUwOCA1MyA3MDkuNjYzIDUzIDYzOC40MTNWNjcuNjc0NEM1MyAyOC45OTAzIDk5LjcyNjggOS42NDgyOCAxMjcuMDYyIDM3LjAzMzFaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEwMi4zMTYgOTkuNjUyQzEwMi4zMTYgOTMuMTg4MiAxMTAuMTYyIDg5LjkzMTYgMTE0LjcwMSA5NC41MjA0TDUwNC44OTcgNDg1LjU1NUM1MjYuMTY0IDUwNi44NzEgNTExLjA2NSA1NDMuMjM2IDQ4MC45NjcgNTQzLjIzNkwzNDcuNTQ2IDU0My4xNjFMNDM2LjM0MiA3NTQuMTQzQzQ0Ny41NDIgNzgwLjc4OCA0MzUuMDA5IDgxMS40MjkgNDA4LjQxNCA4MjIuNTgxQzM4MS43MiA4MzMuNzgxIDM1MS4xMjggODIxLjI5OCAzMzkuOTc3IDc5NC43MDJMMjUwLjI5MyA1ODEuMzUyTDE1OC41MTcgNjYyLjY0NEMxMzcuOTkxIDY4MC44MDEgMTA2LjMxOSA2NjguMTQ1IDEwMi42NjQgNjQyLjMyM0wxMDIuMzE2IDYzNy4zMzFWOTkuNjUyWiIgZmlsbD0iYmxhY2siLz4KPC9nPgo8ZGVmcz4KPGZpbHRlciBpZD0iZmlsdGVyMF9kXzM4NF8yNyIgeD0iMC4zNCIgeT0iMC43OTkyMTkiIHdpZHRoPSI2MTcuMzIiIGhlaWdodD0iOTU3LjE0NCIgZmlsdGVyVW5pdHM9InVzZXJTcGFjZU9uVXNlIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiPgo8ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PSIwIiByZXN1bHQ9IkJhY2tncm91bmRJbWFnZUZpeCIvPgo8ZmVDb2xvck1hdHJpeCBpbj0iU291cmNlQWxwaGEiIHR5cGU9Im1hdHJpeCIgdmFsdWVzPSIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxMjcgMCIgcmVzdWx0PSJoYXJkQWxwaGEiLz4KPGZlT2Zmc2V0IGR5PSIyOS4yNiIvPgo8ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSIyNi4zMyIvPgo8ZmVDb21wb3NpdGUgaW4yPSJoYXJkQWxwaGEiIG9wZXJhdG9yPSJvdXQiLz4KPGZlQ29sb3JNYXRyaXggdHlwZT0ibWF0cml4IiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAuNjUgMCIvPgo8ZmVCbGVuZCBtb2RlPSJub3JtYWwiIGluMj0iQmFja2dyb3VuZEltYWdlRml4IiByZXN1bHQ9ImVmZmVjdDFfZHJvcFNoYWRvd18zODRfMjciLz4KPGZlQmxlbmQgbW9kZT0ibm9ybWFsIiBpbj0iU291cmNlR3JhcGhpYyIgaW4yPSJlZmZlY3QxX2Ryb3BTaGFkb3dfMzg0XzI3IiByZXN1bHQ9InNoYXBlIi8+CjwvZmlsdGVyPgo8L2RlZnM+Cjwvc3ZnPg==";
5
- //# sourceMappingURL=pointer-macos-tahoe-data-url.d.ts.map
@@ -2,4 +2,3 @@
2
2
  * Generated from pointer-macos-tahoe.svg via scripts/encode-screenstudio-cursor.ts.
3
3
  */
4
4
  export const SCREENSTUDIO_POINTER_MACOS_TAHOE_DATA_URL = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjE4IiBoZWlnaHQ9Ijk1OCIgdmlld0JveD0iMCAwIDYxOCA5NTgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGZpbHRlcj0idXJsKCNmaWx0ZXIwX2RfMzg0XzI3KSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTI3LjA2MiAzNy4wMzMxTDU0MC42OTYgNDUxLjU1NUM1OTIuNjUzIDUwMy42NiA1NTUuNzk0IDU5Mi41NzQgNDgyLjIyNiA1OTIuNTc0TDQyMS44MzEgNTkyLjU2OUw0ODEuODIxIDczNS4wNTRDNDkyLjMzMSA3NjAuMDIxIDQ5Mi40NzkgNzg3LjY1MiA0ODIuMjY1IDgxMi43NjdDNDcyLjAwMiA4MzcuOTMyIDQ1Mi41NjEgODU3LjU3IDQyNy40OTYgODY4LjA4QzQxNC44NjQgODczLjM1OSA0MDEuNjQgODc2LjAyNCAzODguMTIxIDg3Ni4wMjRDMzQ3LjExNyA4NzYuMDI0IDMxMC4zNTggODUxLjYgMjk0LjQ3IDgxMy44MDRMMjMxLjQyIDY2My45MThMMTkwLjM2OCA3MDAuMzM3QzEzNy4wMjkgNzQ3LjUwOCA1MyA3MDkuNjYzIDUzIDYzOC40MTNWNjcuNjc0NEM1MyAyOC45OTAzIDk5LjcyNjggOS42NDgyOCAxMjcuMDYyIDM3LjAzMzFaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEwMi4zMTYgOTkuNjUyQzEwMi4zMTYgOTMuMTg4MiAxMTAuMTYyIDg5LjkzMTYgMTE0LjcwMSA5NC41MjA0TDUwNC44OTcgNDg1LjU1NUM1MjYuMTY0IDUwNi44NzEgNTExLjA2NSA1NDMuMjM2IDQ4MC45NjcgNTQzLjIzNkwzNDcuNTQ2IDU0My4xNjFMNDM2LjM0MiA3NTQuMTQzQzQ0Ny41NDIgNzgwLjc4OCA0MzUuMDA5IDgxMS40MjkgNDA4LjQxNCA4MjIuNTgxQzM4MS43MiA4MzMuNzgxIDM1MS4xMjggODIxLjI5OCAzMzkuOTc3IDc5NC43MDJMMjUwLjI5MyA1ODEuMzUyTDE1OC41MTcgNjYyLjY0NEMxMzcuOTkxIDY4MC44MDEgMTA2LjMxOSA2NjguMTQ1IDEwMi42NjQgNjQyLjMyM0wxMDIuMzE2IDYzNy4zMzFWOTkuNjUyWiIgZmlsbD0iYmxhY2siLz4KPC9nPgo8ZGVmcz4KPGZpbHRlciBpZD0iZmlsdGVyMF9kXzM4NF8yNyIgeD0iMC4zNCIgeT0iMC43OTkyMTkiIHdpZHRoPSI2MTcuMzIiIGhlaWdodD0iOTU3LjE0NCIgZmlsdGVyVW5pdHM9InVzZXJTcGFjZU9uVXNlIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiPgo8ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PSIwIiByZXN1bHQ9IkJhY2tncm91bmRJbWFnZUZpeCIvPgo8ZmVDb2xvck1hdHJpeCBpbj0iU291cmNlQWxwaGEiIHR5cGU9Im1hdHJpeCIgdmFsdWVzPSIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxMjcgMCIgcmVzdWx0PSJoYXJkQWxwaGEiLz4KPGZlT2Zmc2V0IGR5PSIyOS4yNiIvPgo8ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSIyNi4zMyIvPgo8ZmVDb21wb3NpdGUgaW4yPSJoYXJkQWxwaGEiIG9wZXJhdG9yPSJvdXQiLz4KPGZlQ29sb3JNYXRyaXggdHlwZT0ibWF0cml4IiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAuNjUgMCIvPgo8ZmVCbGVuZCBtb2RlPSJub3JtYWwiIGluMj0iQmFja2dyb3VuZEltYWdlRml4IiByZXN1bHQ9ImVmZmVjdDFfZHJvcFNoYWRvd18zODRfMjciLz4KPGZlQmxlbmQgbW9kZT0ibm9ybWFsIiBpbj0iU291cmNlR3JhcGhpYyIgaW4yPSJlZmZlY3QxX2Ryb3BTaGFkb3dfMzg0XzI3IiByZXN1bHQ9InNoYXBlIi8+CjwvZmlsdGVyPgo8L2RlZnM+Cjwvc3ZnPg==';
5
- //# sourceMappingURL=pointer-macos-tahoe-data-url.js.map
package/dist/bippy.js CHANGED
@@ -1,5 +1,5 @@
1
1
  (() => {
2
- // ../node_modules/.pnpm/bippy@0.5.43_react@19.2.7/node_modules/bippy/dist/rdt-hook.js
2
+ // ../../playwriter/node_modules/.pnpm/bippy@0.5.43_react@19.2.7/node_modules/bippy/dist/rdt-hook.js
3
3
  var e = `0.5.43`;
4
4
  var t = `bippy-${e}`;
5
5
  var n = Object.defineProperty;
@@ -78,10 +78,10 @@
78
78
  } catch {}
79
79
  };
80
80
 
81
- // ../node_modules/.pnpm/bippy@0.5.43_react@19.2.7/node_modules/bippy/dist/install-hook-only.js
81
+ // ../../playwriter/node_modules/.pnpm/bippy@0.5.43_react@19.2.7/node_modules/bippy/dist/install-hook-only.js
82
82
  _();
83
83
 
84
- // ../node_modules/.pnpm/bippy@0.5.43_react@19.2.7/node_modules/bippy/dist/core.js
84
+ // ../../playwriter/node_modules/.pnpm/bippy@0.5.43_react@19.2.7/node_modules/bippy/dist/core.js
85
85
  var b = (e2) => {
86
86
  switch (e2.tag) {
87
87
  case 5:
@@ -199,7 +199,7 @@
199
199
  var Z = Error();
200
200
  var Q = new Set;
201
201
 
202
- // ../node_modules/.pnpm/bippy@0.5.43_react@19.2.7/node_modules/bippy/dist/source.js
202
+ // ../../playwriter/node_modules/.pnpm/bippy@0.5.43_react@19.2.7/node_modules/bippy/dist/source.js
203
203
  var i2 = /^[a-zA-Z][a-zA-Z\d+\-.]*:/;
204
204
  var a2 = [`rsc://`, `file:///`, `webpack-internal://`, `webpack://`, `node:`, `turbopack://`, `metro://`, `/app-pages-browser/`, `/(app-pages-browser)/`];
205
205
  var o2 = [`<anonymous>`, `eval`, ``];
@@ -879,7 +879,7 @@ ${e3.stack}` : ``;
879
879
  var gt = new Set([`Context`, `Context (use)`, `DebugValue`, `Promise`, `Unresolved`, `HostTransitionStatus`]);
880
880
  var kt = new Set([`Effect`, `LayoutEffect`, `InsertionEffect`, `ImperativeHandle`, `DebugValue`]);
881
881
 
882
- // dist/_bippy-entry-68953-1784086938398.js
882
+ // dist/_bippy-entry-53465-1784102736730.js
883
883
  globalThis.__bippy = {
884
884
  getFiberFromHostInstance: Pe,
885
885
  getDisplayName: Ee,
@@ -10,4 +10,3 @@ export declare function resolveBrowserExecutablePath({ browserPath, env, platfor
10
10
  export declare function shouldUseHeadlessByDefault({ platform, env, }?: Omit<BrowserLookupOptions, 'browserPath' | 'homeDir' | 'existsSync'>): boolean;
11
11
  export declare function getBrowserExecutablePath(browserPath?: string): string;
12
12
  export {};
13
- //# sourceMappingURL=browser-config.d.ts.map
@@ -123,4 +123,3 @@ export function shouldUseHeadlessByDefault({ platform = os.platform(), env = pro
123
123
  export function getBrowserExecutablePath(browserPath) {
124
124
  return resolveBrowserExecutablePath({ browserPath });
125
125
  }
126
- //# sourceMappingURL=browser-config.js.map
@@ -13,4 +13,3 @@ export declare function installChrome(): Promise<{
13
13
  version: string;
14
14
  binaryPath: string;
15
15
  }>;
16
- //# sourceMappingURL=browser-install.d.ts.map
@@ -235,4 +235,3 @@ export async function installChrome() {
235
235
  console.log(` Location: ${binaryPath}`);
236
236
  return { version, binaryPath };
237
237
  }
238
- //# sourceMappingURL=browser-install.js.map
@@ -14,4 +14,3 @@ export declare function startBrowserProcess({ browserPath, args, userDataDir, }:
14
14
  }): {
15
15
  pid: number;
16
16
  };
17
- //# sourceMappingURL=browser-launch.d.ts.map
@@ -41,4 +41,3 @@ export function startBrowserProcess({ browserPath, args, userDataDir, }) {
41
41
  }
42
42
  return { pid: browserProcess.pid };
43
43
  }
44
- //# sourceMappingURL=browser-launch.js.map
@@ -57,4 +57,3 @@ export declare function getCapabilityAgentSkillStatus(options: {
57
57
  target?: AgentSkillTarget;
58
58
  codexHome?: string;
59
59
  }): CapabilityAgentSkillStatus;
60
- //# sourceMappingURL=capability-agent-skill.d.ts.map
@@ -222,4 +222,3 @@ function buildOpenAiAgentTemplate(capability) {
222
222
  function quoteYamlString(value) {
223
223
  return JSON.stringify(value);
224
224
  }
225
- //# sourceMappingURL=capability-agent-skill.js.map
@@ -31,4 +31,3 @@ export declare function getCapabilityAuthState(options: {
31
31
  capability: CapabilityRecord;
32
32
  now?: Date;
33
33
  }): CapabilityAuthState;
34
- //# sourceMappingURL=capability-auth-state.d.ts.map
@@ -154,4 +154,3 @@ function latestAuthFailure(options) {
154
154
  function isRecord(value) {
155
155
  return typeof value === 'object' && value !== null && !Array.isArray(value);
156
156
  }
157
- //# sourceMappingURL=capability-auth-state.js.map
@@ -33,4 +33,3 @@ export declare function refreshCapabilityAuthFromCookies(options: {
33
33
  cwd?: string;
34
34
  browserKey?: string;
35
35
  }): CapabilityAuthRefreshResult;
36
- //# sourceMappingURL=capability-auth.d.ts.map
@@ -195,4 +195,3 @@ function requireBrowserRefreshableCookieCapability(options) {
195
195
  function isRecord(value) {
196
196
  return typeof value === 'object' && value !== null && !Array.isArray(value);
197
197
  }
198
- //# sourceMappingURL=capability-auth.js.map
@@ -17,4 +17,3 @@ export declare function getCapabilityOptionsDetail(options: {
17
17
  cwd: string;
18
18
  id: string;
19
19
  }): CapabilityOptionsDetailResponse | null;
20
- //# sourceMappingURL=capability-options.d.ts.map
@@ -28,4 +28,3 @@ function toCapabilityOptionsItem(capability) {
28
28
  agentSkill: getCapabilityAgentSkillStatus({ capability }),
29
29
  };
30
30
  }
31
- //# sourceMappingURL=capability-options.js.map
@@ -24,4 +24,3 @@ export declare function installCapabilityPackage(options: {
24
24
  location?: CapabilityLocation;
25
25
  overwrite?: boolean;
26
26
  }): Promise<InstalledCapabilityPackage>;
27
- //# sourceMappingURL=capability-package.d.ts.map
@@ -1,4 +1,5 @@
1
1
  import crypto from 'node:crypto';
2
+ import childProcess from 'node:child_process';
2
3
  import fs from 'node:fs';
3
4
  import path from 'node:path';
4
5
  import { Readable } from 'node:stream';
@@ -214,6 +215,10 @@ async function readPackageSource(options) {
214
215
  integrity: bufferIntegrity(archive),
215
216
  };
216
217
  }
218
+ const gitSource = parseGitCapabilitySource(options.source);
219
+ if (gitSource) {
220
+ return readGitCapabilitySource({ source: options.source, gitSource });
221
+ }
217
222
  if (!/^https?:\/\//.test(options.source)) {
218
223
  throw new Error(`Capability source not found: ${options.source}`);
219
224
  }
@@ -233,6 +238,47 @@ async function readPackageSource(options) {
233
238
  integrity: bufferIntegrity(archive),
234
239
  };
235
240
  }
241
+ function parseGitCapabilitySource(source) {
242
+ const fragmentIndex = source.indexOf('#');
243
+ if (fragmentIndex <= 0) {
244
+ return null;
245
+ }
246
+ const remote = source.slice(0, fragmentIndex);
247
+ const isSupportedRemote = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+:.+/.test(remote) || remote.startsWith('ssh://') || remote.startsWith('file://');
248
+ if (!isSupportedRemote) {
249
+ return null;
250
+ }
251
+ const selector = source.slice(fragmentIndex + 1);
252
+ const pathSeparatorIndex = selector.indexOf(':');
253
+ if (pathSeparatorIndex <= 0 || pathSeparatorIndex === selector.length - 1) {
254
+ throw new Error('Git capability source must use <remote>#<ref>:<capability-path>');
255
+ }
256
+ const ref = selector.slice(0, pathSeparatorIndex);
257
+ if (!/^[a-zA-Z0-9][a-zA-Z0-9._/@-]*$/.test(ref)) {
258
+ throw new Error(`Git capability source has an invalid ref: ${ref}`);
259
+ }
260
+ const capabilityPath = normalizeRelativePath(selector.slice(pathSeparatorIndex + 1));
261
+ return { remote, ref, capabilityPath };
262
+ }
263
+ async function readGitCapabilitySource(options) {
264
+ const treeish = `${options.gitSource.ref}:${options.gitSource.capabilityPath}`;
265
+ const archive = await new Promise((resolve, reject) => {
266
+ childProcess.execFile('git', ['archive', '--format=tar.gz', '--prefix=package/', `--remote=${options.gitSource.remote}`, treeish], { encoding: 'buffer', maxBuffer: MAX_ARCHIVE_BYTES }, (error, stdout, stderr) => {
267
+ if (error) {
268
+ const detail = stderr.toString('utf-8').trim();
269
+ reject(new Error(detail || `Failed to read Git capability source: ${options.source}`, { cause: error }));
270
+ return;
271
+ }
272
+ resolve(stdout);
273
+ });
274
+ });
275
+ assertArchiveSize({ size: archive.length, label: options.source });
276
+ return {
277
+ label: options.source,
278
+ files: await extractArchiveFiles(archive),
279
+ integrity: bufferIntegrity(archive),
280
+ };
281
+ }
236
282
  async function readArchive(archive) {
237
283
  const extracted = await extractArchiveFiles(archive);
238
284
  const metadataFile = extracted.find((file) => {
@@ -249,12 +295,12 @@ async function extractArchiveFiles(archive) {
249
295
  let totalBytes = 0;
250
296
  const extraction = new Promise((resolve, reject) => {
251
297
  extractor.on('entry', (header, stream, next) => {
252
- const relativePath = normalizeArchiveEntryPath(header.name);
253
298
  if (header.type === 'directory') {
254
299
  stream.resume();
255
300
  next();
256
301
  return;
257
302
  }
303
+ const relativePath = normalizeArchiveEntryPath(header.name);
258
304
  if (header.type !== 'file' && header.type !== null && header.type !== undefined) {
259
305
  stream.resume();
260
306
  next(new Error(`Capability archives cannot contain ${header.type} entries: ${header.name}`));
@@ -441,4 +487,3 @@ function filesIntegrity(files) {
441
487
  });
442
488
  return `sha256-${hash.digest('base64')}`;
443
489
  }
444
- //# sourceMappingURL=capability-package.js.map
@@ -259,4 +259,3 @@ export declare function buildCapabilityRunCommand(options: {
259
259
  input: Record<string, unknown>;
260
260
  }): string;
261
261
  export declare function toCapabilitySummary(capability: CapabilityRecord): Record<string, unknown>;
262
- //# sourceMappingURL=capability-registry.d.ts.map
@@ -928,4 +928,3 @@ function getDefaultCapabilityScript(options) {
928
928
  }
929
929
  return ['const currentUrl = page.url()', '', 'return {', ' currentUrl,', ' input,', '}', ''].join('\n');
930
930
  }
931
- //# sourceMappingURL=capability-registry.js.map
@@ -96,4 +96,3 @@ export declare function validateCapabilityUrl(options: {
96
96
  url: string;
97
97
  force?: boolean;
98
98
  }): void;
99
- //# sourceMappingURL=capability-runner.d.ts.map
@@ -605,4 +605,3 @@ function hashInput(input) {
605
605
  .update(JSON.stringify(input) || 'undefined')
606
606
  .digest('hex');
607
607
  }
608
- //# sourceMappingURL=capability-runner.js.map
@@ -8,4 +8,3 @@ export declare function startCapabilityStudio(options: {
8
8
  port: number;
9
9
  cwd: string;
10
10
  }): Promise<CapabilityStudioServer>;
11
- //# sourceMappingURL=capability-studio.d.ts.map
@@ -590,4 +590,3 @@ function renderStudioHtml() {
590
590
  </body>
591
591
  </html>`;
592
592
  }
593
- //# sourceMappingURL=capability-studio.js.map
package/dist/cdp-log.d.ts CHANGED
@@ -16,4 +16,3 @@ export declare function createCdpLogger({ logFilePath, maxStringLength, maxEntri
16
16
  maxStringLength?: number;
17
17
  maxEntries?: number;
18
18
  }): CdpLogger;
19
- //# sourceMappingURL=cdp-log.d.ts.map
package/dist/cdp-log.js CHANGED
@@ -80,4 +80,3 @@ export function createCdpLogger({ logFilePath, maxStringLength, maxEntries, } =
80
80
  logFilePath: resolvedLogFilePath,
81
81
  };
82
82
  }
83
- //# sourceMappingURL=cdp-log.js.map
@@ -16,4 +16,3 @@ export declare function startTabwrightCDPRelayServer({ port, host, token, logger
16
16
  cdpLogger?: CdpLogger;
17
17
  }): Promise<RelayServer>;
18
18
  export declare const startPlayWriterCDPRelayServer: typeof startTabwrightCDPRelayServer;
19
- //# sourceMappingURL=cdp-relay.d.ts.map
package/dist/cdp-relay.js CHANGED
@@ -2372,4 +2372,3 @@ export async function startTabwrightCDPRelayServer({ port = 19988, host = '127.0
2372
2372
  }
2373
2373
  // Kept so extensions and library consumers can upgrade independently during the rename.
2374
2374
  export const startPlayWriterCDPRelayServer = startTabwrightCDPRelayServer;
2375
- //# sourceMappingURL=cdp-relay.js.map
@@ -34,4 +34,3 @@ export declare class PlaywrightCDPSessionAdapter implements ICDPSession {
34
34
  export declare function getCDPSessionForPage({ page }: {
35
35
  page: Page;
36
36
  }): Promise<PlaywrightCDPSessionAdapter>;
37
- //# sourceMappingURL=cdp-session.d.ts.map
@@ -33,4 +33,3 @@ export async function getCDPSessionForPage({ page }) {
33
33
  const playwrightSession = await context.getExistingCDPSession(page);
34
34
  return new PlaywrightCDPSessionAdapter(playwrightSession);
35
35
  }
36
- //# sourceMappingURL=cdp-session.js.map
@@ -62,4 +62,3 @@ export type RelayServerEvents = {
62
62
  }) => void;
63
63
  };
64
64
  export { Protocol, ProtocolMapping };
65
- //# sourceMappingURL=cdp-types.d.ts.map
package/dist/cdp-types.js CHANGED
@@ -88,4 +88,3 @@ if (false) {
88
88
  };
89
89
  }
90
90
  export {};
91
- //# sourceMappingURL=cdp-types.js.map
@@ -62,4 +62,3 @@ export declare function appendSessionToWsUrl(wsUrl: string, sessionId: string):
62
62
  * Throws with a clear message if the endpoint can't be resolved.
63
63
  */
64
64
  export declare function resolveDirectInput(input: string): Promise<string>;
65
- //# sourceMappingURL=chrome-discovery.d.ts.map
@@ -170,4 +170,3 @@ function parseBrowserVersion(browserString) {
170
170
  }
171
171
  return browserString;
172
172
  }
173
- //# sourceMappingURL=chrome-discovery.js.map
@@ -8,4 +8,3 @@ export interface GetCleanHTMLOptions {
8
8
  maxContentLen?: number;
9
9
  }
10
10
  export declare function getCleanHTML(options: GetCleanHTMLOptions): Promise<string>;
11
- //# sourceMappingURL=clean-html.d.ts.map
@@ -103,4 +103,3 @@ export async function getCleanHTML(options) {
103
103
  }
104
104
  return htmlStr;
105
105
  }
106
- //# sourceMappingURL=clean-html.js.map
package/dist/cli.d.ts CHANGED
@@ -1,3 +1,2 @@
1
1
  #!/usr/bin/env node
2
2
  import './env-compat.js';
3
- //# sourceMappingURL=cli.d.ts.map
package/dist/cli.js CHANGED
@@ -23,7 +23,6 @@ import { getTabwrightAgentSkillStatus, installTabwrightAgentSkill, } from './tab
23
23
  import { installCapabilityPackage, packCapability } from './capability-package.js';
24
24
  import { refreshCapabilityAuthWithExecutor } from './capability-auth.js';
25
25
  import { finalizeCapabilityRun, normalizeCapabilityExecutionText, prepareCapabilityRun, readCapabilityExecutionObservation, runNodeCapability, } from './capability-runner.js';
26
- import { installBuiltinCapabilitySuite, isBuiltinCapabilitySuite } from './builtin-capabilities.js';
27
26
  import { createReplayAiIndexFromRecording, saveReplayAiIndex } from './replay-ai-index.js';
28
27
  import { listSavedRrwebRecordings } from './rrweb-recording-relay.js';
29
28
  import { compileReplayWorkflow, UnsupportedReplayWorkflowError, } from './replay-workflow-compiler.js';
@@ -121,6 +120,7 @@ cli
121
120
  });
122
121
  cli
123
122
  .command('', 'Start the MCP server or controls the browser with -e')
123
+ .hidden()
124
124
  .option('--host <host>', 'Remote relay server host to connect to (or use TABWRIGHT_HOST env var)')
125
125
  .option('--token <token>', 'Authentication token (or use TABWRIGHT_TOKEN env var)')
126
126
  .option('-s, --session <name>', 'Session ID (required for -e, get one with `tabwright session new`)')
@@ -1215,65 +1215,13 @@ cli
1215
1215
  }
1216
1216
  });
1217
1217
  cli
1218
- .command('capability install <source>', 'Install a built-in suite, capability directory, local .tgz, or .tgz URL')
1218
+ .command('capability install <source>', 'Install a capability directory, Git source, local .tgz, or .tgz URL')
1219
1219
  .option('--project', 'Install under .tabwright/capabilities in the current project')
1220
1220
  .option('--force', 'Overwrite existing installed capabilities')
1221
- .option('--draft', 'Install a built-in suite as draft instead of trusted')
1222
- .option('--skip-agent-skills', 'Do not install bundled agent skills such as Codex skills')
1223
1221
  .option('--with-agent-skill', 'Install a shared package agent skill after reviewing the source')
1224
1222
  .option('--json', 'Print JSON')
1225
1223
  .action(async (source, options) => {
1226
1224
  try {
1227
- if (isBuiltinCapabilitySuite(source)) {
1228
- const installed = installBuiltinCapabilitySuite({
1229
- suite: source,
1230
- cwd: process.cwd(),
1231
- location: options.project ? 'project' : 'user',
1232
- overwrite: options.force,
1233
- trust: options.draft ? false : true,
1234
- installAgentSkills: options.skipAgentSkills ? false : true,
1235
- });
1236
- const summary = {
1237
- type: 'builtin',
1238
- suite: installed.suite,
1239
- capabilities: installed.capabilities.map((capability) => {
1240
- return toCapabilitySummary(capability);
1241
- }),
1242
- agentSkills: installed.agentSkills,
1243
- next: installed.capabilities.flatMap((capability) => {
1244
- if (capability.manifest.auth.refresh !== 'from-browser') {
1245
- return [];
1246
- }
1247
- return [`tabwright capability refresh-auth ${capability.manifest.id} --browser user --json`];
1248
- }),
1249
- };
1250
- if (options.json) {
1251
- console.log(JSON.stringify(summary, null, 2));
1252
- return;
1253
- }
1254
- console.log(`Installed ${installed.suite}:`);
1255
- installed.capabilities.map((capability) => {
1256
- console.log(`- ${capability.manifest.id} (${capability.location}, ${capability.manifest.status})`);
1257
- return capability.manifest.id;
1258
- });
1259
- if (installed.agentSkills.length > 0) {
1260
- console.log('');
1261
- console.log('Installed agent skills:');
1262
- installed.agentSkills.map((agentSkill) => {
1263
- console.log(`- ${agentSkill.target}:${agentSkill.name} at ${agentSkill.dir}`);
1264
- return agentSkill.name;
1265
- });
1266
- }
1267
- if (summary.next.length > 0) {
1268
- console.log('');
1269
- console.log('Refresh auth with:');
1270
- summary.next.map((command) => {
1271
- console.log(` ${command}`);
1272
- return command;
1273
- });
1274
- }
1275
- return;
1276
- }
1277
1225
  const installed = await installCapabilityPackage({
1278
1226
  source,
1279
1227
  cwd: process.cwd(),
@@ -2705,5 +2653,11 @@ function parseTabwrightAgentSkillTarget(value) {
2705
2653
  cli.help();
2706
2654
  cli.completions();
2707
2655
  cli.version(VERSION);
2708
- await cli.parse();
2709
- //# sourceMappingURL=cli.js.map
2656
+ const commandLineArgs = process.argv.slice(2);
2657
+ const isVersionOnly = commandLineArgs.length === 1 && ['-v', '--version'].includes(commandLineArgs[0] || '');
2658
+ if (isVersionOnly) {
2659
+ cli.outputVersion();
2660
+ }
2661
+ else {
2662
+ await cli.parse();
2663
+ }
@@ -53,4 +53,3 @@ export declare class CloudClient {
53
53
  }
54
54
  /** Create a CloudClient from saved auth, or null if not logged in. */
55
55
  export declare function getCloudClient(): CloudClient | null;
56
- //# sourceMappingURL=cloud-client.d.ts.map
@@ -124,4 +124,3 @@ export function getCloudClient() {
124
124
  return null;
125
125
  return new CloudClient(auth);
126
126
  }
127
- //# sourceMappingURL=cloud-client.js.map
@@ -6,4 +6,3 @@ export type Logger = {
6
6
  export declare function createFileLogger({ logFilePath }?: {
7
7
  logFilePath?: string;
8
8
  }): Logger;
9
- //# sourceMappingURL=create-logger.d.ts.map
@@ -24,4 +24,3 @@ export function createFileLogger({ logFilePath } = {}) {
24
24
  logFilePath: resolvedLogFilePath,
25
25
  };
26
26
  }
27
- //# sourceMappingURL=create-logger.js.map
@@ -21,4 +21,3 @@ export declare const formatStylesAsText: (styles: StylesResult) => string;
21
21
  export declare const console: {
22
22
  log: (...args: unknown[]) => void;
23
23
  };
24
- //# sourceMappingURL=debugger-examples-types.d.ts.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=debugger-examples-types.js.map
@@ -3,4 +3,3 @@ declare function inspectWhenPaused(): Promise<void>;
3
3
  declare function stepThroughCode(): Promise<void>;
4
4
  declare function cleanupBreakpoints(): Promise<void>;
5
5
  export { listScriptsAndSetBreakpoint, inspectWhenPaused, stepThroughCode, cleanupBreakpoints };
6
- //# sourceMappingURL=debugger-examples.d.ts.map
@@ -50,4 +50,3 @@ async function cleanupBreakpoints() {
50
50
  }
51
51
  }
52
52
  export { listScriptsAndSetBreakpoint, inspectWhenPaused, stepThroughCode, cleanupBreakpoints };
53
- //# sourceMappingURL=debugger-examples.js.map
@@ -378,4 +378,3 @@ export declare class Debugger {
378
378
  private formatPropertyValue;
379
379
  private processRemoteObject;
380
380
  }
381
- //# sourceMappingURL=debugger.d.ts.map
package/dist/debugger.js CHANGED
@@ -627,4 +627,3 @@ export class Debugger {
627
627
  return obj.description || `[${obj.type}]`;
628
628
  }
629
629
  }
630
- //# sourceMappingURL=debugger.js.map
@@ -17,4 +17,3 @@ export interface CreateSmartDiffOptions {
17
17
  * is not useful - we return the full new content instead.
18
18
  */
19
19
  export declare function createSmartDiff(options: CreateSmartDiffOptions): SmartDiffResult;
20
- //# sourceMappingURL=diff-utils.d.ts.map
@@ -47,4 +47,3 @@ export function createSmartDiff(options) {
47
47
  }
48
48
  return { type: 'diff', content: diffString };
49
49
  }
50
- //# sourceMappingURL=diff-utils.js.map
package/dist/doctor.d.ts CHANGED
@@ -41,4 +41,3 @@ export declare function buildDoctorReport(options: {
41
41
  skillStatus?: TabwrightAgentSkillStatus;
42
42
  }): DoctorReport;
43
43
  export declare function formatDoctorReport(report: DoctorReport): string;
44
- //# sourceMappingURL=doctor.d.ts.map
package/dist/doctor.js CHANGED
@@ -186,6 +186,11 @@ export function buildDoctorReport(options) {
186
186
  command: options.skillStatus.installCommand,
187
187
  };
188
188
  }
189
+ if (usableSessions.length > 0) {
190
+ return {
191
+ title: 'Tabwright is ready. Use the healthy session only if you created it for this task.',
192
+ };
193
+ }
189
194
  const enabledExtension = options.extensions.find((extension) => {
190
195
  return extension.activeTargets > 0;
191
196
  });
@@ -197,12 +202,6 @@ export function buildDoctorReport(options) {
197
202
  : 'tabwright session new',
198
203
  };
199
204
  }
200
- if (usableSessions.length > 0) {
201
- return {
202
- title: 'Create a task-owned headless session instead of reusing another agent session.',
203
- command: 'tabwright session new --browser headless',
204
- };
205
- }
206
205
  if (options.extensions.length > 0) {
207
206
  return {
208
207
  title: 'Open the target tab and click the Tabwright extension icon until it turns green.',
@@ -243,4 +242,3 @@ export function formatDoctorReport(report) {
243
242
  ...(report.next.fallbackCommand ? [`Fallback: ${report.next.fallbackCommand}`] : []),
244
243
  ].join('\n');
245
244
  }
246
- //# sourceMappingURL=doctor.js.map
@@ -8,4 +8,3 @@ declare function readStylesheet(): Promise<void>;
8
8
  declare function editStylesheet(): Promise<void>;
9
9
  declare function searchStyles(): Promise<void>;
10
10
  export { listScripts, readScript, editScript, searchScripts, writeScript, editInlineScript, readStylesheet, editStylesheet, searchStyles, };
11
- //# sourceMappingURL=editor-examples.d.ts.map
@@ -121,4 +121,3 @@ async function searchStyles() {
121
121
  console.log(matches);
122
122
  }
123
123
  export { listScripts, readScript, editScript, searchScripts, writeScript, editInlineScript, readStylesheet, editStylesheet, searchStyles, };
124
- //# sourceMappingURL=editor-examples.js.map