@runchr/gstack-antigravity 0.1.0 → 0.1.2

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.

Potentially problematic release.


This version of @runchr/gstack-antigravity might be problematic. Click here for more details.

Files changed (231) hide show
  1. package/.agents/skills/gstack/.agents/skills/gstack/SKILL.md +651 -0
  2. package/.agents/skills/gstack/.agents/skills/gstack-autoplan/SKILL.md +678 -0
  3. package/.agents/skills/gstack/.agents/skills/gstack-benchmark/SKILL.md +482 -0
  4. package/.agents/skills/gstack/.agents/skills/gstack-browse/SKILL.md +511 -0
  5. package/.agents/skills/gstack/.agents/skills/gstack-canary/SKILL.md +486 -0
  6. package/.agents/skills/gstack/.agents/skills/gstack-careful/SKILL.md +50 -0
  7. package/.agents/skills/gstack/.agents/skills/gstack-cso/SKILL.md +607 -0
  8. package/.agents/skills/gstack/.agents/skills/gstack-design-consultation/SKILL.md +615 -0
  9. package/.agents/skills/gstack/.agents/skills/gstack-design-review/SKILL.md +988 -0
  10. package/.agents/skills/gstack/.agents/skills/gstack-document-release/SKILL.md +604 -0
  11. package/.agents/skills/gstack/.agents/skills/gstack-freeze/SKILL.md +67 -0
  12. package/.agents/skills/gstack/.agents/skills/gstack-guard/SKILL.md +62 -0
  13. package/.agents/skills/gstack/.agents/skills/gstack-investigate/SKILL.md +415 -0
  14. package/.agents/skills/gstack/.agents/skills/gstack-land-and-deploy/SKILL.md +873 -0
  15. package/.agents/skills/gstack/.agents/skills/gstack-office-hours/SKILL.md +986 -0
  16. package/.agents/skills/gstack/.agents/skills/gstack-plan-ceo-review/SKILL.md +1268 -0
  17. package/.agents/skills/gstack/.agents/skills/gstack-plan-design-review/SKILL.md +668 -0
  18. package/.agents/skills/gstack/.agents/skills/gstack-plan-eng-review/SKILL.md +826 -0
  19. package/.agents/skills/gstack/.agents/skills/gstack-qa/SKILL.md +1006 -0
  20. package/.agents/skills/gstack/.agents/skills/gstack-qa-only/SKILL.md +626 -0
  21. package/.agents/skills/gstack/.agents/skills/gstack-retro/SKILL.md +1065 -0
  22. package/.agents/skills/gstack/.agents/skills/gstack-review/SKILL.md +704 -0
  23. package/.agents/skills/gstack/.agents/skills/gstack-setup-browser-cookies/SKILL.md +325 -0
  24. package/.agents/skills/gstack/.agents/skills/gstack-setup-deploy/SKILL.md +450 -0
  25. package/.agents/skills/gstack/.agents/skills/gstack-ship/SKILL.md +1312 -0
  26. package/.agents/skills/gstack/.agents/skills/gstack-unfreeze/SKILL.md +36 -0
  27. package/.agents/skills/gstack/.agents/skills/gstack-upgrade/SKILL.md +220 -0
  28. package/.agents/skills/gstack/.env.example +5 -0
  29. package/.agents/skills/gstack/.github/workflows/skill-docs.yml +17 -0
  30. package/.agents/skills/gstack/AGENTS.md +49 -0
  31. package/.agents/skills/gstack/ARCHITECTURE.md +359 -0
  32. package/.agents/skills/gstack/BROWSER.md +271 -0
  33. package/.agents/skills/gstack/CHANGELOG.md +800 -0
  34. package/.agents/skills/gstack/CLAUDE.md +284 -0
  35. package/.agents/skills/gstack/CONTRIBUTING.md +370 -0
  36. package/.agents/skills/gstack/ETHOS.md +129 -0
  37. package/.agents/skills/gstack/LICENSE +21 -0
  38. package/.agents/skills/gstack/README.md +228 -0
  39. package/.agents/skills/gstack/SKILL.md +657 -0
  40. package/.agents/skills/gstack/SKILL.md.tmpl +281 -0
  41. package/.agents/skills/gstack/TODOS.md +564 -0
  42. package/.agents/skills/gstack/VERSION +1 -0
  43. package/.agents/skills/gstack/autoplan/SKILL.md +689 -0
  44. package/.agents/skills/gstack/autoplan/SKILL.md.tmpl +416 -0
  45. package/.agents/skills/gstack/benchmark/SKILL.md +489 -0
  46. package/.agents/skills/gstack/benchmark/SKILL.md.tmpl +233 -0
  47. package/.agents/skills/gstack/bin/dev-setup +68 -0
  48. package/.agents/skills/gstack/bin/dev-teardown +56 -0
  49. package/.agents/skills/gstack/bin/gstack-analytics +191 -0
  50. package/.agents/skills/gstack/bin/gstack-community-dashboard +113 -0
  51. package/.agents/skills/gstack/bin/gstack-config +38 -0
  52. package/.agents/skills/gstack/bin/gstack-diff-scope +71 -0
  53. package/.agents/skills/gstack/bin/gstack-global-discover.ts +591 -0
  54. package/.agents/skills/gstack/bin/gstack-repo-mode +93 -0
  55. package/.agents/skills/gstack/bin/gstack-review-log +9 -0
  56. package/.agents/skills/gstack/bin/gstack-review-read +12 -0
  57. package/.agents/skills/gstack/bin/gstack-slug +15 -0
  58. package/.agents/skills/gstack/bin/gstack-telemetry-log +158 -0
  59. package/.agents/skills/gstack/bin/gstack-telemetry-sync +127 -0
  60. package/.agents/skills/gstack/bin/gstack-update-check +196 -0
  61. package/.agents/skills/gstack/browse/SKILL.md +517 -0
  62. package/.agents/skills/gstack/browse/SKILL.md.tmpl +141 -0
  63. package/.agents/skills/gstack/browse/bin/find-browse +21 -0
  64. package/.agents/skills/gstack/browse/bin/remote-slug +14 -0
  65. package/.agents/skills/gstack/browse/scripts/build-node-server.sh +48 -0
  66. package/.agents/skills/gstack/browse/src/browser-manager.ts +634 -0
  67. package/.agents/skills/gstack/browse/src/buffers.ts +137 -0
  68. package/.agents/skills/gstack/browse/src/bun-polyfill.cjs +109 -0
  69. package/.agents/skills/gstack/browse/src/cli.ts +420 -0
  70. package/.agents/skills/gstack/browse/src/commands.ts +111 -0
  71. package/.agents/skills/gstack/browse/src/config.ts +150 -0
  72. package/.agents/skills/gstack/browse/src/cookie-import-browser.ts +417 -0
  73. package/.agents/skills/gstack/browse/src/cookie-picker-routes.ts +207 -0
  74. package/.agents/skills/gstack/browse/src/cookie-picker-ui.ts +541 -0
  75. package/.agents/skills/gstack/browse/src/find-browse.ts +61 -0
  76. package/.agents/skills/gstack/browse/src/meta-commands.ts +269 -0
  77. package/.agents/skills/gstack/browse/src/platform.ts +17 -0
  78. package/.agents/skills/gstack/browse/src/read-commands.ts +335 -0
  79. package/.agents/skills/gstack/browse/src/server.ts +369 -0
  80. package/.agents/skills/gstack/browse/src/snapshot.ts +398 -0
  81. package/.agents/skills/gstack/browse/src/url-validation.ts +91 -0
  82. package/.agents/skills/gstack/browse/src/write-commands.ts +352 -0
  83. package/.agents/skills/gstack/browse/test/bun-polyfill.test.ts +72 -0
  84. package/.agents/skills/gstack/browse/test/commands.test.ts +1836 -0
  85. package/.agents/skills/gstack/browse/test/config.test.ts +250 -0
  86. package/.agents/skills/gstack/browse/test/cookie-import-browser.test.ts +397 -0
  87. package/.agents/skills/gstack/browse/test/cookie-picker-routes.test.ts +205 -0
  88. package/.agents/skills/gstack/browse/test/find-browse.test.ts +50 -0
  89. package/.agents/skills/gstack/browse/test/fixtures/basic.html +33 -0
  90. package/.agents/skills/gstack/browse/test/fixtures/cursor-interactive.html +22 -0
  91. package/.agents/skills/gstack/browse/test/fixtures/dialog.html +15 -0
  92. package/.agents/skills/gstack/browse/test/fixtures/empty.html +2 -0
  93. package/.agents/skills/gstack/browse/test/fixtures/forms.html +55 -0
  94. package/.agents/skills/gstack/browse/test/fixtures/qa-eval-checkout.html +108 -0
  95. package/.agents/skills/gstack/browse/test/fixtures/qa-eval-spa.html +98 -0
  96. package/.agents/skills/gstack/browse/test/fixtures/qa-eval.html +51 -0
  97. package/.agents/skills/gstack/browse/test/fixtures/responsive.html +49 -0
  98. package/.agents/skills/gstack/browse/test/fixtures/snapshot.html +55 -0
  99. package/.agents/skills/gstack/browse/test/fixtures/spa.html +24 -0
  100. package/.agents/skills/gstack/browse/test/fixtures/states.html +17 -0
  101. package/.agents/skills/gstack/browse/test/fixtures/upload.html +25 -0
  102. package/.agents/skills/gstack/browse/test/gstack-config.test.ts +125 -0
  103. package/.agents/skills/gstack/browse/test/gstack-update-check.test.ts +467 -0
  104. package/.agents/skills/gstack/browse/test/handoff.test.ts +235 -0
  105. package/.agents/skills/gstack/browse/test/path-validation.test.ts +63 -0
  106. package/.agents/skills/gstack/browse/test/platform.test.ts +37 -0
  107. package/.agents/skills/gstack/browse/test/snapshot.test.ts +467 -0
  108. package/.agents/skills/gstack/browse/test/test-server.ts +57 -0
  109. package/.agents/skills/gstack/browse/test/url-validation.test.ts +72 -0
  110. package/.agents/skills/gstack/canary/SKILL.md +493 -0
  111. package/.agents/skills/gstack/canary/SKILL.md.tmpl +220 -0
  112. package/.agents/skills/gstack/careful/SKILL.md +59 -0
  113. package/.agents/skills/gstack/careful/SKILL.md.tmpl +57 -0
  114. package/.agents/skills/gstack/careful/bin/check-careful.sh +112 -0
  115. package/.agents/skills/gstack/codex/SKILL.md +677 -0
  116. package/.agents/skills/gstack/codex/SKILL.md.tmpl +356 -0
  117. package/.agents/skills/gstack/conductor.json +6 -0
  118. package/.agents/skills/gstack/cso/SKILL.md +615 -0
  119. package/.agents/skills/gstack/cso/SKILL.md.tmpl +376 -0
  120. package/.agents/skills/gstack/design-consultation/SKILL.md +625 -0
  121. package/.agents/skills/gstack/design-consultation/SKILL.md.tmpl +369 -0
  122. package/.agents/skills/gstack/design-review/SKILL.md +998 -0
  123. package/.agents/skills/gstack/design-review/SKILL.md.tmpl +262 -0
  124. package/.agents/skills/gstack/docs/images/github-2013.png +0 -0
  125. package/.agents/skills/gstack/docs/images/github-2026.png +0 -0
  126. package/.agents/skills/gstack/docs/skills.md +877 -0
  127. package/.agents/skills/gstack/document-release/SKILL.md +613 -0
  128. package/.agents/skills/gstack/document-release/SKILL.md.tmpl +357 -0
  129. package/.agents/skills/gstack/freeze/SKILL.md +82 -0
  130. package/.agents/skills/gstack/freeze/SKILL.md.tmpl +80 -0
  131. package/.agents/skills/gstack/freeze/bin/check-freeze.sh +68 -0
  132. package/.agents/skills/gstack/gstack-upgrade/SKILL.md +226 -0
  133. package/.agents/skills/gstack/gstack-upgrade/SKILL.md.tmpl +224 -0
  134. package/.agents/skills/gstack/guard/SKILL.md +82 -0
  135. package/.agents/skills/gstack/guard/SKILL.md.tmpl +80 -0
  136. package/.agents/skills/gstack/investigate/SKILL.md +435 -0
  137. package/.agents/skills/gstack/investigate/SKILL.md.tmpl +196 -0
  138. package/.agents/skills/gstack/land-and-deploy/SKILL.md +880 -0
  139. package/.agents/skills/gstack/land-and-deploy/SKILL.md.tmpl +575 -0
  140. package/.agents/skills/gstack/office-hours/SKILL.md +996 -0
  141. package/.agents/skills/gstack/office-hours/SKILL.md.tmpl +624 -0
  142. package/.agents/skills/gstack/package.json +55 -0
  143. package/.agents/skills/gstack/plan-ceo-review/SKILL.md +1277 -0
  144. package/.agents/skills/gstack/plan-ceo-review/SKILL.md.tmpl +838 -0
  145. package/.agents/skills/gstack/plan-design-review/SKILL.md +676 -0
  146. package/.agents/skills/gstack/plan-design-review/SKILL.md.tmpl +314 -0
  147. package/.agents/skills/gstack/plan-eng-review/SKILL.md +836 -0
  148. package/.agents/skills/gstack/plan-eng-review/SKILL.md.tmpl +279 -0
  149. package/.agents/skills/gstack/qa/SKILL.md +1016 -0
  150. package/.agents/skills/gstack/qa/SKILL.md.tmpl +316 -0
  151. package/.agents/skills/gstack/qa/references/issue-taxonomy.md +85 -0
  152. package/.agents/skills/gstack/qa/templates/qa-report-template.md +126 -0
  153. package/.agents/skills/gstack/qa-only/SKILL.md +633 -0
  154. package/.agents/skills/gstack/qa-only/SKILL.md.tmpl +101 -0
  155. package/.agents/skills/gstack/retro/SKILL.md +1072 -0
  156. package/.agents/skills/gstack/retro/SKILL.md.tmpl +833 -0
  157. package/.agents/skills/gstack/review/SKILL.md +849 -0
  158. package/.agents/skills/gstack/review/SKILL.md.tmpl +259 -0
  159. package/.agents/skills/gstack/review/TODOS-format.md +62 -0
  160. package/.agents/skills/gstack/review/checklist.md +190 -0
  161. package/.agents/skills/gstack/review/design-checklist.md +132 -0
  162. package/.agents/skills/gstack/review/greptile-triage.md +220 -0
  163. package/.agents/skills/gstack/scripts/analytics.ts +190 -0
  164. package/.agents/skills/gstack/scripts/dev-skill.ts +82 -0
  165. package/.agents/skills/gstack/scripts/eval-compare.ts +96 -0
  166. package/.agents/skills/gstack/scripts/eval-list.ts +116 -0
  167. package/.agents/skills/gstack/scripts/eval-select.ts +86 -0
  168. package/.agents/skills/gstack/scripts/eval-summary.ts +187 -0
  169. package/.agents/skills/gstack/scripts/eval-watch.ts +172 -0
  170. package/.agents/skills/gstack/scripts/gen-skill-docs.ts +2414 -0
  171. package/.agents/skills/gstack/scripts/skill-check.ts +167 -0
  172. package/.agents/skills/gstack/setup +269 -0
  173. package/.agents/skills/gstack/setup-browser-cookies/SKILL.md +330 -0
  174. package/.agents/skills/gstack/setup-browser-cookies/SKILL.md.tmpl +74 -0
  175. package/.agents/skills/gstack/setup-deploy/SKILL.md +459 -0
  176. package/.agents/skills/gstack/setup-deploy/SKILL.md.tmpl +220 -0
  177. package/.agents/skills/gstack/ship/SKILL.md +1457 -0
  178. package/.agents/skills/gstack/ship/SKILL.md.tmpl +528 -0
  179. package/.agents/skills/gstack/supabase/config.sh +10 -0
  180. package/.agents/skills/gstack/supabase/functions/community-pulse/index.ts +59 -0
  181. package/.agents/skills/gstack/supabase/functions/telemetry-ingest/index.ts +135 -0
  182. package/.agents/skills/gstack/supabase/functions/update-check/index.ts +37 -0
  183. package/.agents/skills/gstack/supabase/migrations/001_telemetry.sql +89 -0
  184. package/.agents/skills/gstack/test/analytics.test.ts +277 -0
  185. package/.agents/skills/gstack/test/codex-e2e.test.ts +197 -0
  186. package/.agents/skills/gstack/test/fixtures/coverage-audit-fixture.ts +76 -0
  187. package/.agents/skills/gstack/test/fixtures/eval-baselines.json +7 -0
  188. package/.agents/skills/gstack/test/fixtures/qa-eval-checkout-ground-truth.json +43 -0
  189. package/.agents/skills/gstack/test/fixtures/qa-eval-ground-truth.json +43 -0
  190. package/.agents/skills/gstack/test/fixtures/qa-eval-spa-ground-truth.json +43 -0
  191. package/.agents/skills/gstack/test/fixtures/review-eval-design-slop.css +86 -0
  192. package/.agents/skills/gstack/test/fixtures/review-eval-design-slop.html +41 -0
  193. package/.agents/skills/gstack/test/fixtures/review-eval-enum-diff.rb +30 -0
  194. package/.agents/skills/gstack/test/fixtures/review-eval-enum.rb +27 -0
  195. package/.agents/skills/gstack/test/fixtures/review-eval-vuln.rb +14 -0
  196. package/.agents/skills/gstack/test/gemini-e2e.test.ts +173 -0
  197. package/.agents/skills/gstack/test/gen-skill-docs.test.ts +1049 -0
  198. package/.agents/skills/gstack/test/global-discover.test.ts +187 -0
  199. package/.agents/skills/gstack/test/helpers/codex-session-runner.ts +282 -0
  200. package/.agents/skills/gstack/test/helpers/e2e-helpers.ts +239 -0
  201. package/.agents/skills/gstack/test/helpers/eval-store.test.ts +548 -0
  202. package/.agents/skills/gstack/test/helpers/eval-store.ts +689 -0
  203. package/.agents/skills/gstack/test/helpers/gemini-session-runner.test.ts +104 -0
  204. package/.agents/skills/gstack/test/helpers/gemini-session-runner.ts +201 -0
  205. package/.agents/skills/gstack/test/helpers/llm-judge.ts +130 -0
  206. package/.agents/skills/gstack/test/helpers/observability.test.ts +283 -0
  207. package/.agents/skills/gstack/test/helpers/session-runner.test.ts +96 -0
  208. package/.agents/skills/gstack/test/helpers/session-runner.ts +357 -0
  209. package/.agents/skills/gstack/test/helpers/skill-parser.ts +206 -0
  210. package/.agents/skills/gstack/test/helpers/touchfiles.ts +260 -0
  211. package/.agents/skills/gstack/test/hook-scripts.test.ts +373 -0
  212. package/.agents/skills/gstack/test/skill-e2e-browse.test.ts +293 -0
  213. package/.agents/skills/gstack/test/skill-e2e-deploy.test.ts +279 -0
  214. package/.agents/skills/gstack/test/skill-e2e-design.test.ts +614 -0
  215. package/.agents/skills/gstack/test/skill-e2e-plan.test.ts +538 -0
  216. package/.agents/skills/gstack/test/skill-e2e-qa-bugs.test.ts +194 -0
  217. package/.agents/skills/gstack/test/skill-e2e-qa-workflow.test.ts +412 -0
  218. package/.agents/skills/gstack/test/skill-e2e-review.test.ts +535 -0
  219. package/.agents/skills/gstack/test/skill-e2e-workflow.test.ts +586 -0
  220. package/.agents/skills/gstack/test/skill-e2e.test.ts +3325 -0
  221. package/.agents/skills/gstack/test/skill-llm-eval.test.ts +787 -0
  222. package/.agents/skills/gstack/test/skill-parser.test.ts +179 -0
  223. package/.agents/skills/gstack/test/skill-routing-e2e.test.ts +605 -0
  224. package/.agents/skills/gstack/test/skill-validation.test.ts +1520 -0
  225. package/.agents/skills/gstack/test/telemetry.test.ts +278 -0
  226. package/.agents/skills/gstack/test/touchfiles.test.ts +262 -0
  227. package/.agents/skills/gstack/unfreeze/SKILL.md +40 -0
  228. package/.agents/skills/gstack/unfreeze/SKILL.md.tmpl +38 -0
  229. package/README.md +12 -7
  230. package/README_KO.md +12 -6
  231. package/package.json +3 -2
@@ -0,0 +1,281 @@
1
+ ---
2
+ name: gstack
3
+ version: 1.1.0
4
+ description: |
5
+ Fast headless browser for QA testing and site dogfooding. Navigate any URL, interact with
6
+ elements, verify page state, diff before/after actions, take annotated screenshots, check
7
+ responsive layouts, test forms and uploads, handle dialogs, and assert element states.
8
+ ~100ms per command. Use when you need to test a feature, verify a deployment, dogfood a
9
+ user flow, or file a bug with evidence.
10
+
11
+ gstack also includes development workflow skills. When you notice the user is at
12
+ these stages, suggest the appropriate skill:
13
+ - Brainstorming a new idea → suggest /office-hours
14
+ - Reviewing a plan (strategy) → suggest /plan-ceo-review
15
+ - Reviewing a plan (architecture) → suggest /plan-eng-review
16
+ - Reviewing a plan (design) → suggest /plan-design-review
17
+ - Auto-reviewing a plan (all reviews at once) → suggest /autoplan
18
+ - Creating a design system → suggest /design-consultation
19
+ - Debugging errors → suggest /investigate
20
+ - Testing the app → suggest /qa
21
+ - Code review before merge → suggest /review
22
+ - Visual design audit → suggest /design-review
23
+ - Ready to deploy / create PR → suggest /ship
24
+ - Post-ship doc updates → suggest /document-release
25
+ - Weekly retrospective → suggest /retro
26
+ - Wanting a second opinion or adversarial code review → suggest /codex
27
+ - Working with production or live systems → suggest /careful
28
+ - Want to scope edits to one module/directory → suggest /freeze
29
+ - Maximum safety mode (destructive warnings + edit restrictions) → suggest /guard
30
+ - Removing edit restrictions → suggest /unfreeze
31
+ - Upgrading gstack to latest version → suggest /gstack-upgrade
32
+
33
+ If the user pushes back on skill suggestions ("stop suggesting things",
34
+ "I don't need suggestions", "too aggressive"):
35
+ 1. Stop suggesting for the rest of this session
36
+ 2. Run: gstack-config set proactive false
37
+ 3. Say: "Got it — I'll stop suggesting skills. Just tell me to be proactive
38
+ again if you change your mind."
39
+
40
+ If the user says "be proactive again" or "turn on suggestions":
41
+ 1. Run: gstack-config set proactive true
42
+ 2. Say: "Proactive suggestions are back on."
43
+ allowed-tools:
44
+ - Bash
45
+ - Read
46
+ - AskUserQuestion
47
+
48
+ ---
49
+
50
+ {{PREAMBLE}}
51
+
52
+ If `PROACTIVE` is `false`: do NOT proactively suggest other gstack skills during this session.
53
+ Only run skills the user explicitly invokes. This preference persists across sessions via
54
+ `gstack-config`.
55
+
56
+ # gstack browse: QA Testing & Dogfooding
57
+
58
+ Persistent headless Chromium. First call auto-starts (~3s), then ~100-200ms per command.
59
+ Auto-shuts down after 30 min idle. State persists between calls (cookies, tabs, sessions).
60
+
61
+ {{BROWSE_SETUP}}
62
+
63
+ ## IMPORTANT
64
+
65
+ - Use the compiled binary via Bash: `$B <command>`
66
+ - NEVER use `mcp__claude-in-chrome__*` tools. They are slow and unreliable.
67
+ - Browser persists between calls — cookies, login sessions, and tabs carry over.
68
+ - Dialogs (alert/confirm/prompt) are auto-accepted by default — no browser lockup.
69
+ - **Show screenshots:** After `$B screenshot`, `$B snapshot -a -o`, or `$B responsive`, always use the Read tool on the output PNG(s) so the user can see them. Without this, screenshots are invisible.
70
+
71
+ ## QA Workflows
72
+
73
+ ### Test a user flow (login, signup, checkout, etc.)
74
+
75
+ ```bash
76
+ # 1. Go to the page
77
+ $B goto https://app.example.com/login
78
+
79
+ # 2. See what's interactive
80
+ $B snapshot -i
81
+
82
+ # 3. Fill the form using refs
83
+ $B fill @e3 "test@example.com"
84
+ $B fill @e4 "password123"
85
+ $B click @e5
86
+
87
+ # 4. Verify it worked
88
+ $B snapshot -D # diff shows what changed after clicking
89
+ $B is visible ".dashboard" # assert the dashboard appeared
90
+ $B screenshot /tmp/after-login.png
91
+ ```
92
+
93
+ ### Verify a deployment / check prod
94
+
95
+ ```bash
96
+ $B goto https://yourapp.com
97
+ $B text # read the page — does it load?
98
+ $B console # any JS errors?
99
+ $B network # any failed requests?
100
+ $B js "document.title" # correct title?
101
+ $B is visible ".hero-section" # key elements present?
102
+ $B screenshot /tmp/prod-check.png
103
+ ```
104
+
105
+ ### Dogfood a feature end-to-end
106
+
107
+ ```bash
108
+ # Navigate to the feature
109
+ $B goto https://app.example.com/new-feature
110
+
111
+ # Take annotated screenshot — shows every interactive element with labels
112
+ $B snapshot -i -a -o /tmp/feature-annotated.png
113
+
114
+ # Find ALL clickable things (including divs with cursor:pointer)
115
+ $B snapshot -C
116
+
117
+ # Walk through the flow
118
+ $B snapshot -i # baseline
119
+ $B click @e3 # interact
120
+ $B snapshot -D # what changed? (unified diff)
121
+
122
+ # Check element states
123
+ $B is visible ".success-toast"
124
+ $B is enabled "#next-step-btn"
125
+ $B is checked "#agree-checkbox"
126
+
127
+ # Check console for errors after interactions
128
+ $B console
129
+ ```
130
+
131
+ ### Test responsive layouts
132
+
133
+ ```bash
134
+ # Quick: 3 screenshots at mobile/tablet/desktop
135
+ $B goto https://yourapp.com
136
+ $B responsive /tmp/layout
137
+
138
+ # Manual: specific viewport
139
+ $B viewport 375x812 # iPhone
140
+ $B screenshot /tmp/mobile.png
141
+ $B viewport 1440x900 # Desktop
142
+ $B screenshot /tmp/desktop.png
143
+
144
+ # Element screenshot (crop to specific element)
145
+ $B screenshot "#hero-banner" /tmp/hero.png
146
+ $B snapshot -i
147
+ $B screenshot @e3 /tmp/button.png
148
+
149
+ # Region crop
150
+ $B screenshot --clip 0,0,800,600 /tmp/above-fold.png
151
+
152
+ # Viewport only (no scroll)
153
+ $B screenshot --viewport /tmp/viewport.png
154
+ ```
155
+
156
+ ### Test file upload
157
+
158
+ ```bash
159
+ $B goto https://app.example.com/upload
160
+ $B snapshot -i
161
+ $B upload @e3 /path/to/test-file.pdf
162
+ $B is visible ".upload-success"
163
+ $B screenshot /tmp/upload-result.png
164
+ ```
165
+
166
+ ### Test forms with validation
167
+
168
+ ```bash
169
+ $B goto https://app.example.com/form
170
+ $B snapshot -i
171
+
172
+ # Submit empty — check validation errors appear
173
+ $B click @e10 # submit button
174
+ $B snapshot -D # diff shows error messages appeared
175
+ $B is visible ".error-message"
176
+
177
+ # Fill and resubmit
178
+ $B fill @e3 "valid input"
179
+ $B click @e10
180
+ $B snapshot -D # diff shows errors gone, success state
181
+ ```
182
+
183
+ ### Test dialogs (delete confirmations, prompts)
184
+
185
+ ```bash
186
+ # Set up dialog handling BEFORE triggering
187
+ $B dialog-accept # will auto-accept next alert/confirm
188
+ $B click "#delete-button" # triggers confirmation dialog
189
+ $B dialog # see what dialog appeared
190
+ $B snapshot -D # verify the item was deleted
191
+
192
+ # For prompts that need input
193
+ $B dialog-accept "my answer" # accept with text
194
+ $B click "#rename-button" # triggers prompt
195
+ ```
196
+
197
+ ### Test authenticated pages (import real browser cookies)
198
+
199
+ ```bash
200
+ # Import cookies from your real browser (opens interactive picker)
201
+ $B cookie-import-browser
202
+
203
+ # Or import a specific domain directly
204
+ $B cookie-import-browser comet --domain .github.com
205
+
206
+ # Now test authenticated pages
207
+ $B goto https://github.com/settings/profile
208
+ $B snapshot -i
209
+ $B screenshot /tmp/github-profile.png
210
+ ```
211
+
212
+ ### Compare two pages / environments
213
+
214
+ ```bash
215
+ $B diff https://staging.app.com https://prod.app.com
216
+ ```
217
+
218
+ ### Multi-step chain (efficient for long flows)
219
+
220
+ ```bash
221
+ echo '[
222
+ ["goto","https://app.example.com"],
223
+ ["snapshot","-i"],
224
+ ["fill","@e3","test@test.com"],
225
+ ["fill","@e4","password"],
226
+ ["click","@e5"],
227
+ ["snapshot","-D"],
228
+ ["screenshot","/tmp/result.png"]
229
+ ]' | $B chain
230
+ ```
231
+
232
+ ## Quick Assertion Patterns
233
+
234
+ ```bash
235
+ # Element exists and is visible
236
+ $B is visible ".modal"
237
+
238
+ # Button is enabled/disabled
239
+ $B is enabled "#submit-btn"
240
+ $B is disabled "#submit-btn"
241
+
242
+ # Checkbox state
243
+ $B is checked "#agree"
244
+
245
+ # Input is editable
246
+ $B is editable "#name-field"
247
+
248
+ # Element has focus
249
+ $B is focused "#search-input"
250
+
251
+ # Page contains text
252
+ $B js "document.body.textContent.includes('Success')"
253
+
254
+ # Element count
255
+ $B js "document.querySelectorAll('.list-item').length"
256
+
257
+ # Specific attribute value
258
+ $B attrs "#logo" # returns all attributes as JSON
259
+
260
+ # CSS property
261
+ $B css ".button" "background-color"
262
+ ```
263
+
264
+ ## Snapshot System
265
+
266
+ {{SNAPSHOT_FLAGS}}
267
+
268
+ ## Command Reference
269
+
270
+ {{COMMAND_REFERENCE}}
271
+
272
+ ## Tips
273
+
274
+ 1. **Navigate once, query many times.** `goto` loads the page; then `text`, `js`, `screenshot` all hit the loaded page instantly.
275
+ 2. **Use `snapshot -i` first.** See all interactive elements, then click/fill by ref. No CSS selector guessing.
276
+ 3. **Use `snapshot -D` to verify.** Baseline → action → diff. See exactly what changed.
277
+ 4. **Use `is` for assertions.** `is visible .modal` is faster and more reliable than parsing page text.
278
+ 5. **Use `snapshot -a` for evidence.** Annotated screenshots are great for bug reports.
279
+ 6. **Use `snapshot -C` for tricky UIs.** Finds clickable divs that the accessibility tree misses.
280
+ 7. **Check `console` after actions.** Catch JS errors that don't surface visually.
281
+ 8. **Use `chain` for long flows.** Single command, no per-step CLI overhead.