Back

gstack Tutorial 1: Install & Setup (Claude Code / Codex / Cursor / OpenClaw)

Step-by-step installation and setup of gstack on Claude Code, Codex, Cursor, and OpenClaw—covering how it works, how to verify it's active, and how to troubleshoot common issues. Includes safety guardrails: /careful, /freeze, /guard.

Tutorial Overview

Series index: gstack Tutorial Series

This is the first tutorial in the gstack series. It walks you through installation and setup on all supported platforms.

What you’ll learn

  • ✅ How gstack works at a high level
  • ✅ How to install gstack on 4 mainstream platforms
  • ✅ How to verify the installation
  • ✅ How to use safety guardrails: /careful, /freeze, /guard
  • ✅ How to troubleshoot common issues

What is gstack?

gstack is an agentic skills framework. In practice, it’s a curated set of prompts and workflow rules that guide AI coding assistants to follow proven engineering practices.

Key characteristics

  1. Virtual team — 23 specialists and 8 power tools acting as CEO, Eng Manager, Designer, QA, Security, Release Engineer
  2. Sprint workflow — Think → Plan → Build → Review → Test → Ship → Reflect
  3. Cross-platform — supports Claude Code, Codex, Cursor, OpenCode, OpenClaw, and more
  4. Open source — MIT licensed, free forever

Workflow at a glance

flowchart TD
    A[User request] --> B{/office-hours}
    B --> C[Product interrogation]
    C --> D{/plan-ceo-review}
    D --> E[Strategic scope challenge]
    E --> F{/plan-eng-review}
    F --> G[Architecture lock]
    G --> H[Implementation]
    H --> I{/review}
    I --> J[Find bugs, auto-fix]
    J --> K{/qa}
    K --> L[Live browser testing]
    L --> M{/ship}
    M --> N[Release]

    style B fill:#e1f5ff
    style D fill:#e1f5ff
    style F fill:#e1f5ff
    style I fill:#e1f5ff
    style K fill:#e1f5ff
    style M fill:#e1f5ff

Before You Install

System requirements

Platform Requirements
Claude Code An active Claude subscription
Codex CLI OpenAI Codex access
Cursor Cursor IDE v0.40+
OpenClaw OpenClaw installed

Required tools

# Git must be configured
git config --global user.name "Your Name"
git config --global user.email "[email protected]"

# Bun v1.0+ must be installed
bun --version

# Node.js (Windows only, for Playwright)
node --version

Platform 1: Install on Claude Code

Step 1: Clone and setup

Run this in Claude Code:

git clone --single-branch --depth 1 https://github.com/garrytan/gstack.git ~/.claude/skills/gstack && cd ~/.claude/skills/gstack && ./setup

Step 2: Add to CLAUDE.md

Add a “gstack” section to your project’s CLAUDE.md:

## gstack
Use /browse from gstack for all web browsing. Never use mcp__claude-in-chrome__* tools.
Available skills: /office-hours, /plan-ceo-review, /plan-eng-review, /plan-design-review, /design-consultation, /design-shotgun, /design-html, /review, /ship, /land-and-deploy, /canary, /benchmark, /browse, /open-gstack-browser, /qa, /qa-only, /design-review, /setup-browser-cookies, /setup-deploy, /retro, /investigate, /document-release, /codex, /cso, /autoplan, /pair-agent, /careful, /freeze, /guard, /unfreeze, /gstack-upgrade, /learn.

Step 3: Verify

Start a new session and ask:

Help me plan a new feature

If the AI starts with /office-hours asking clarifying questions instead of jumping straight into code, the installation worked.

Team mode — auto-update for shared repos

Every developer installs globally, updates happen automatically:

cd ~/.claude/skills/gstack && ./setup --team

Then bootstrap your repo so teammates get it:

cd <your-repo>
~/.claude/skills/gstack/bin/gstack-team-init required
git add .claude/ CLAUDE.md && git commit -m "require gstack for AI-assisted work"

Platform 2: Install on Codex CLI

Installation prompt:

Tell Codex:

Fetch and follow instructions from https://raw.githubusercontent.com/garrytan/gstack/refs/heads/main/.codex/INSTALL.md

Or run directly:

git clone --single-branch --depth 1 https://github.com/garrytan/gstack.git ~/.codex/skills/gstack
cd ~/.codex/skills/gstack && ./setup --host codex

Platform 3: Install on Cursor

Installation:

git clone --single-branch --depth 1 https://github.com/garrytan/gstack.git ~/.cursor/skills/gstack
cd ~/.cursor/skills/gstack && ./setup --host cursor

Then restart Cursor and load the project.

Platform 4: Install on OpenClaw

Option A: Claude Code sessions

OpenClaw spawns Claude Code sessions via ACP, so gstack works when Claude Code has it installed. Paste this to your OpenClaw agent:

Install gstack: run `git clone --single-branch --depth 1 https://github.com/garrytan/gstack.git ~/.claude/skills/gstack && cd ~/.claude/skills/gstack && ./setup`

Option B: Native OpenClaw skills (via ClawHub)

Four methodology skills work directly in OpenClaw agents:

clawhub install gstack-openclaw-office-hours gstack-openclaw-ceo-review gstack-openclaw-investigate gstack-openclaw-retro
Skill What it does
gstack-openclaw-office-hours Product interrogation with 6 forcing questions
gstack-openclaw-ceo-review Strategic challenge with 4 scope modes
gstack-openclaw-investigate Root cause debugging methodology
gstack-openclaw-retro Weekly engineering retrospective

Platform-Specific Differences

Feature Claude Code Codex CLI Cursor OpenClaw
Install location ~/.claude/skills/gstack ~/.codex/skills/gstack ~/.cursor/skills/gstack ClawHub marketplace
Setup command ./setup ./setup --host codex ./setup --host cursor clawhub install gstack-*
Browse support Full (Playwright) Partial (requires Claude Code) Partial Via Claude Code session
Native conversational skills No No No 4 ClawHub skills
Auto-update Built-in (/gstack-upgrade) Manual git pull Manual ClawHub auto-update

Safety Guardrails

gstack includes safety features to prevent accidental damage.

/careful — Destructive command warnings

/careful

Warns before any destructive command:

  • rm -rf
  • DROP TABLE
  • git push --force
  • git reset --hard

Example:

You: rm -rf node_modules
AI: ⚠️ DESTRUCTIVE COMMAND WARNING
    This will permanently delete node_modules/
    Type "proceed" to confirm, or describe what you want to achieve for a safer alternative.

/freeze — Edit lock to one directory

/freeze src/components/

Restricts file edits to the specified directory. Prevents accidental changes outside scope while debugging or implementing focused features.

Example:

You: /freeze src/auth/
AI: 🔒 EDIT LOCK ACTIVE
    Edits restricted to: src/auth/
    Attempt to edit src/utils/helper.ts will be BLOCKED
    Use /unfreeze to remove this restriction

/guard — Full safety

/guard

Combines /careful + /freeze. Maximum safety for production work.

flowchart TD
    A[/guard] --> B[/careful]
    A --> C[/freeze]
    B --> D[Warn on destructive commands]
    C --> E[Restrict edits to directory]
    D --> F[Maximum safety]
    E --> F

/unfreeze — Remove edit lock

/unfreeze

Removes the /freeze boundary, allowing edits anywhere again.

Verify Your Installation

Test case 1: /office-hours triggers

Input:

I want to add a comment system to my blog

Expected behavior:

  • ❌ Immediately starts writing comment UI code → Fail
  • ✅ Starts asking clarifying questions (provider choice, moderation policy, storage) → Pass

Test case 2: /careful warns

Input:

/careful
rm -rf build/

Expected behavior:

  • ❌ Deletes immediately → Fail
  • ✅ Shows warning, asks for confirmation → Pass

Test case 3: /browse works

Input:

/browse https://example.com

Expected behavior:

  • ❌ Error about missing browser → Fail
  • ✅ Opens Chromium, navigates, shows screenshot → Pass

Troubleshooting

Issue 1: Skills don’t show up

Symptom: The AI doesn’t recognize /office-hours or other gstack skills.

Fix:

  1. Confirm the plugin is loaded:

    ls ~/.claude/skills/gstack/SKILL.md
    
  2. Confirm CLAUDE.md has the gstack section.

  3. Restart the Claude Code session.

Issue 2: /browse fails

Symptom: Browser errors when running /browse.

Fix:

cd ~/.claude/skills/gstack && bun install && bun run build

Issue 3: Stale install

Symptom: Skills behave differently from documentation.

Fix:

/gstack-upgrade

Or set auto-upgrade in config:

# ~/.gstack/config.yaml
auto_upgrade: true

Issue 4: Codex skill loading fails

Symptom: “Skipped loading skill(s) due to invalid SKILL.md”

Fix:

cd ~/.codex/skills/gstack && git pull && ./setup --host codex

Configuration

Prefix vs no-prefix modes

By default, gstack skills use short names (/office-hours). You can namespace them:

# Namespaced: /gstack-office-hours
cd ~/.claude/skills/gstack && ./setup --prefix

# Short: /office-hours
cd ~/.claude/skills/gstack && ./setup --no-prefix

Telemetry

gstack includes opt-in usage telemetry:

  • Default is off — nothing is sent unless you say yes
  • What’s sent: skill name, duration, success/fail, gstack version, OS
  • What’s never sent: code, file paths, repo names, prompts

Change anytime:

gstack-config set telemetry off  # Disable
gstack-config set telemetry on   # Enable

Best Practices

1. Start with safety

For production work:

/guard

This prevents accidental damage while you focus on the task.

2. Use team mode for shared repos

Every developer gets the same gstack version automatically. No version drift.

3. Keep CLAUDE.md updated

When gstack adds new skills, update your CLAUDE.md gstack section.

Next Up

After installation, continue with:

References


Running into issues? Leave a comment or check GitHub Issues!

Series navigation: