The repository on disk has four distinct layers. Understanding them separately is the prerequisite for understanding how a single contributor can claim 810x the throughput of a 2013 baseline.Documentation Index
Fetch the complete documentation index at: https://zikun.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
The four layers
47 SKILL.md files
Markdown prompts with YAML frontmatter that Claude Code loads as native slash-commands. The substantive intelligence of the system. See the runtime.
A compiled browser daemon
browse/dist/browse is a 58 MB Bun-compiled Playwright Chromium server that persists between calls. First invocation costs roughly 3 seconds. Every call after that runs in about 100 milliseconds.A GPT-Image designer
design/dist/design is a CLI that drives the GPT Image API for mockup generation. Used by /design-shotgun, /design-consultation, /design-html, and the design review skills.Per-AI-agent host configs
hosts/*.ts defines installation paths and tool-name aliases for Claude Code, Codex, Cursor, OpenCode, Factory, Slate, Kiro, Hermes, GBrain, and OpenClaw.Repository tree
gstack/ (top level)
Why every skill ships both
SKILL.md and SKILL.md.tmpl. The template is the source of truth. The rendered .md is generated by bun run gen:skill-docs and committed alongside so that hosts without the build toolchain still get a working file. CI checks freshness on every PR.The browser daemon
Thebrowse/ binary is the largest single component by line count and the most clever piece of engineering in the repo. It is a Playwright Chromium server compiled to a standalone executable through bun build --compile. Skills invoke it through a shell alias $B that the preamble resolves to the binary path.
Persistence
The browser stays alive across calls. Cookies, localStorage, and tabs carry over. Auto-shuts down after 30 minutes idle.
Roughly 70 commands
goto, snapshot, click, fill, screenshot, console, network, js, responsive, cookie-import-browser, handoff, cdp, and dozens more.Headed escape hatch
$B handoff transfers to a visible Chrome at the same URL, preserving session, for CAPTCHA or MFA. $B resume returns to headless.Prompt-injection defense
A 22 MB ONNX classifier scans every page output. A Haiku classifier votes on the full transcript. A canary token catches session exfiltration attempts. BLOCK requires 2-of-N agreement.
Multi-host support
The sameSKILL.md files are installed into different paths depending on which AI coding agent the user runs. The setup script reads hosts/*.ts to know where each agent expects skills.
| AI agent | Install path | Detection flag |
|---|---|---|
| Claude Code | ~/.claude/skills/gstack-*/ | default |
| Codex CLI | ~/.codex/skills/gstack-*/ | --host codex |
| OpenCode | ~/.config/opencode/skills/gstack-*/ | --host opencode |
| Cursor | ~/.cursor/skills/gstack-*/ | --host cursor |
| Factory Droid | ~/.factory/skills/gstack-*/ | --host factory |
| Slate | ~/.slate/skills/gstack-*/ | --host slate |
| Kiro | ~/.kiro/skills/gstack-*/ | --host kiro |
| Hermes | ~/.hermes/skills/gstack-*/ | --host hermes |
| GBrain (mod) | ~/.gbrain/skills/gstack-*/ | --host gbrain |
| OpenClaw | openclaw/skills/, published via ClawHub | n/a |
hosts/.
The build pipeline
scripts/gen-skill-docs.ts is the single entry point for converting templates to rendered skills.
Read every SKILL.md.tmpl
The script walks the skill directories and locates each template by convention.
Resolve placeholders
Each
{{PLACEHOLDER}} is replaced by output from a module in scripts/resolvers/. Twenty top-level resolvers plus over twenty preamble sub-generators expand forty-eight distinct placeholder patterns. {{PREAMBLE}}, {{BROWSE_SETUP}}, {{REVIEW_DASHBOARD}}, {{LEARNINGS_SEARCH}}, {{QA_METHODOLOGY}}, and so on.Apply host-specific transforms
For Claude Code the frontmatter passes through. For Factory the
sensitive field is preserved. For Codex the description is condensed to fit a 120-character limit. All host-specific logic lives in scripts/host-adapters/.