browser-testing-with-s…
Use when testing web applications with visual verification - automates Chrome browser interactions, element selection, and…
Use when deploying changes to staging across relay, relay-dashboard, and relay-cloud repos - coordinates multi-repo branch syncing using git worktrees, automatically triggers staging deployments via GitHub Actions
Claude Code
$ npx -y skills add AgentWorkforce/relay --skill deploying-to-staging-environment --agent claude-code
Codex
$ npx skills add AgentWorkforce/relay --skill deploying-to-staging-environment -a codex -y
Cursor
$ npx skills add AgentWorkforce/relay --skill deploying-to-staging-environment -a cursor -y
Gemini CLI
$ npx skills add AgentWorkforce/relay --skill deploying-to-staging-environment -a gemini-cli -y
GitHub Copilot
$ npx skills add AgentWorkforce/relay --skill deploying-to-staging-environment -a github-copilot -y
OpenCode
$ npx skills add AgentWorkforce/relay --skill deploying-to-staging-environment -a opencode -y
Windsurf
$ npx skills add AgentWorkforce/relay --skill deploying-to-staging-environment -a windsurf -y
name: deploying-to-staging-environment description: Use when deploying changes to staging across relay, relay-dashboard, and relay-cloud repos - coordinates multi-repo branch syncing using git worktrees, automatically triggers staging deployments via GitHub Actions
The staging environment deployment is a coordinated multi-repo process that synchronizes code across three repositories (relay, relay-dashboard, relay-cloud) and automatically triggers deployment via GitHub Actions. Staging deployments ensure feature verification before production while keeping main branch clean during development.
**When NOT to use:**
The staging deployment system consists of:
Three Repos (relay, relay-dashboard, relay-cloud)
↓
Staging Branches (synced via git push)
↓
relay-cloud staging push triggers GitHub Actions
↓
Deploy-Staging Workflow (deploy-staging.yml)
↓
Fly.io Staging Environment (agent-relay-staging)
↓
Automatic health check verification**Key details:**
# 1. Create git worktree for staging work (BEST PRACTICE) cd /data/repos/relay git worktree add .worktrees/staging-push main cd .worktrees/staging-push # 2. Push latest main to staging (fetch fresh) git fetch origin main:main git push origin main:staging # 3. Or push current feature branch to staging (if desired) git fetch origin feature/your-branch:feature/your-branch git push origin feature/your-branch:staging # 4. Clean up worktree cd /data/repos/relay git worktree remove .worktrees/staging-push
cd /data/repos/relay-dashboard git worktree add .worktrees/staging-push main cd .worktrees/staging-push git fetch origin main:main git push origin main:staging cd /data/repos/relay-dashboard git worktree remove .worktrees/staging-push
cd /data/repos/relay-cloud git worktree add .worktrees/staging-push main cd .worktrees/staging-push git fetch origin main:main git push origin main:staging # ⚠️ This push triggers deploy-staging.yml workflow cd /data/repos/relay-cloud git worktree remove .worktrees/staging-push
Git worktrees provide several benefits for staging workflows:
1. **Isolation** - Work on staging without changing main working directory state 2. **Safety** - Feature branch checked out in worktree won't affect your current work 3. **Cleanliness** - No lingering state changes after pushing 4. **Best practice** - Standard DevOps approach for multi-branch operations
**Step 1: Relay**
cd /data/repos/relay git worktree add .worktrees/staging-push main cd .worktrees/staging-push git fetch origin main:main git push origin main:staging cd /data/repos/relay git worktree remove .worktrees/staging-push
Expected output:
Updated 'main' to 'origin/main' remote: Create pull request for staging... To github.com:AgentWorkforce/relay.git [new branch] main -> staging or * [up-to-date] main -> staging
**Step 2: Relay-Dashboard**
cd /data/repos/relay-dashboard git worktree add .worktrees/staging-push main cd .worktrees/staging-push git fetch origin main:main git push origin main:staging cd /data/repos/relay-dashboard git worktree remove .worktrees/staging-push
**Step 3: Relay-Cloud (Triggers Deployment)**
cd /data/repos/relay-cloud git worktree add .worktrees/staging-push main cd .worktrees/staging-push git fetch origin main:main git push origin main:staging # Deployment starts automatically! cd /data/repos/relay-cloud git worktree remove .worktrees/staging-push
After pushing relay-cloud, GitHub Actions starts automatically:
1. **Watch workflow progress:**
2. **Verify health check:**
3. **Check deployment summary:**
Instead of main, push a specific feature branch:
cd /data/repos/relay git worktree add .worktrees/staging-push main cd .worktrees/staging-push git fetch origin feature/your-feature:feature/your-feature git push origin feature/your-feature:staging cd /data/repos/relay git worktree remove .worktrees/staging-push
**For relay-
Tired of copy/pasting from Claude Code into Slack so your coworker can paste it into their agent? Ever put an important rule in a skill or AGENTS.md, only for the agent to completely ignore it? You and your teammates agents ever build the same thing?
Use when testing web applications with visual verification - automates Chrome browser interactions, element selection, and…
Use when coordinating multiple AI agents with Agent Relay's workflow engine and need to pick the right orchestration pattern -…
Use when creating or improving Claude Code agents. Expert guidance on agent file structure, frontmatter, persona definition, tool…
Use when creating or publishing Claude Code hooks - covers executable format, event types, JSON I/O, exit codes, security…
Use when creating or fixing .claude/rules/ files - provides correct paths frontmatter (not globs), glob patterns, and avoids…
Use when creating new Claude Code skills or improving existing ones - ensures skills are discoverable, scannable, and effective…
Direct browser control via CDP for web interaction: automation, scraping, testing, screenshots, and site/app work. Also covers…
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling…