This guide walks through practical usage examples of gstack's core skills to get you productive quickly. It assumes you have already completed installation as described in 2.1 Installation. For detailed technical documentation of the browse infrastructure, see 4. Browse Infrastructure. For comprehensive skill documentation, see 3. Skills.
Before using any skill, verify that gstack is properly installed. Claude Code discovers skills via symlinks or direct file access in the .claude/skills directory. The preamble of every skill checks for updates and configuration before execution.
The preamble logic in every SKILL.md performs several environment checks, including update availability and "proactive" mode settings SKILL.md31-42 It also initializes session tracking in ~/.gstack/sessions/ to manage lifecycle SKILL.md33-36
Sources: SKILL.md27-48 browse/SKILL.md32-50
The first time you use /browse, the system checks for the compiled binary. If it's missing, the setup script (which executes bun run build) must be run to compile the TypeScript source into a standalone executable in browse/dist/.
Title: "gstack Binary and Skill Registration Flow"
Sources: SKILL.md31-35 browse/SKILL.md32-36 CLAUDE.md16 ARCHITECTURE.md38-51
The /browse skill enables automated web interaction using a persistent Chromium instance managed by a long-lived daemon ARCHITECTURE.md52-63
Output:
@e1 button "Sign in with Google"
@e2 textbox "Email"
@e3 textbox "Password"
@e4 button "Sign In"
The snapshot command is the primary read path, emitting an ARIA tree with @ref tokens for element selection browse/src/commands.ts75-76
Sources: browse/SKILL.md6-14 browse/src/commands.ts74-76 ARCHITECTURE.md52-63
The browse CLI dispatches commands to a persistent Bun HTTP server. The server routes these to specific handlers based on the registry in commands.ts ARCHITECTURE.md11-34
Title: "Browse Infrastructure Command Dispatch"
Sources: ARCHITECTURE.md11-34 browse/src/commands.ts74-76
The snapshot system uses Playwright's accessibility tree to assign short @ref identifiers (like @e1) to elements. These are stored in a state file to maintain persistence across command invocations ARCHITECTURE.md64-73
Title: "Natural Language Refs to Code Locators"
Sources: browse/src/snapshot.ts74-76 ARCHITECTURE.md52-63
Use the snapshot command with flags to identify accessibility issues or verify UI state browse/SKILL.md22-27
Batch commands for speed using the chain meta-command.
Import cookies from your real browser to bypass login screens using the /setup-browser-cookies skill setup-browser-cookies/SKILL.md5-9
Sources: browse/SKILL.md20-27 setup-browser-cookies/SKILL.md5-13 docs/skills.md31
Start here. Six forcing questions that reframe your product before you write code. It challenges premises and generates implementation alternatives docs/skills.md7
Sources: docs/skills.md7 README.md37
Find the bugs that pass CI but blow up in production. Auto-fixes the obvious ones and flags completeness gaps docs/skills.md13
Sources: docs/skills.md13 README.md39
Test your app, find bugs, fix them with atomic commits, and re-verify. It auto-generates regression tests for every fix docs/skills.md18
Sources: docs/skills.md18 README.md40
| Feature | Detail | Source |
|---|---|---|
| Startup | ~100-200ms per command after cold start | ARCHITECTURE.md36-37 |
| Telemetry | Local logging to ~/.gstack/analytics/skill-usage.jsonl | SKILL.md61-64 |
| Cleanup | Auto-removes session files older than 120 minutes | SKILL.md35-36 |
| Auto-Shutdown | Server shuts down after 30 minutes of inactivity | ARCHITECTURE.md32 |
Sources: SKILL.md31-64 ARCHITECTURE.md32-37
Refresh this wiki