Set up the Client Release Agent end to end — clone the repo (or reuse an existing clone), verify required tools, create and fill in .env, and validate credentials. Use when the user asks to run the setup skill, or to set up, install, configure, or deploy the client release agent.
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Um comando direto ignora o prompt de revisão. Verifique a origem antes de executá-lo.
Instruções da origem · Visualização somente leitura
name
setup
description
Set up the Client Release Agent end to end — clone the repo (or reuse an existing clone), verify required tools, create and fill in .env, and validate credentials. Use when the user asks to run the setup skill, or to set up, install, configure, or deploy the client release agent.
setup
Get the Client Release Agent working from scratch. This skill is idempotent: it works whether the repo is already cloned or not, and never overwrites an existing .env.
If already inside the repo, use the current directory as AGENT_DIR and continue.
Otherwise, check the default location, then clone if needed:
AGENT_DIR="$HOME/client-release-agent-oss"if [ -d "$AGENT_DIR/.warp/skills" ]; thenecho"existing clone found at $AGENT_DIR"else
git clone https://github.com/warpdotdev/client-release-agent-oss.git "$AGENT_DIR"ficd
"$AGENT_DIR"
If the user wants the repo somewhere else, use their path instead. All later steps run from AGENT_DIR.
Step 2: Verify required tools
Check for each required tool:
for tool in git gh jq curl; docommand -v "$tool" >/dev/null || echo"MISSING: $tool"done
If anything is missing, offer to install it (e.g. brew install gh jq on macOS, or the appropriate package manager). Then verify GitHub CLI authentication:
gh auth status
If not authenticated, ask the user to run gh auth login (interactive — let them complete it) before continuing.
If the user plans to run these skills as Oz cloud or scheduled agents (skip for purely local use), also verify the Oz CLI:
oz whoami
Command not found → if the Warp app is already installed, the CLI ships with it. Otherwise, prefer the standalone Oz CLI — there is no need to install the full Warp app just for the CLI. See Installing the CLI; on macOS: brew tap warpdotdev/warp && brew install --cask oz.
Not authenticated → run oz login (interactive), or for CI/headless environments export WARP_API_KEY.
Step 3: Create .env
Never overwrite an existing .env:
if [ -f .env ]; thenecho".env already exists — will fill in missing values only"elsecp .env.example .envfi
Step 4: Fill in configuration
Ask the user which skills they plan to use so you only require the relevant variables:
The release-convention variables (RELEASE_CHANNELS, RELEASE_BRANCH_PREFIX, DEFAULT_BRANCH, CHERRYPICK_BRANCH_PREFIX, RC_WORKFLOW_NAME, SYNC_TRAILER_KEY, DIGEST_CHANNEL, status emoji) all have sensible defaults — only ask about them if the user says their conventions differ. See the repo README.md for the full variable reference.
Collect the non-secret values conversationally and write them into .env with edits. For secrets (SLACK_BOT_TOKEN, SENTRY_AUTH_TOKEN):
Never ask the user to paste a token into the chat, and never echo a token in a command.
Tell the user to edit .env themselves and paste the tokens in directly, then confirm when done.
Token guidance:
Slack: create a bot token (xoxb-…) at https://api.slack.com/apps with scopes channels:read, channels:history, chat:write, chat:update, usergroups:read, users:read, users:read.email. Install the app to the workspace and invite the bot to RELEASE_SLACK_CHANNEL.
Sentry: create an auth token with event:read and project:read at Sentry → Settings → Auth Tokens.
Step 5: Load the environment
set -a; source .env; set +a
Run this in the current session, and tell the user they'll need it in any future session that runs the skills (they can add it to their shell profile, CI, or scheduled-agent environment). Do not print the loaded values.
Step 6: Validate
Run only the checks relevant to the skills the user selected. Print pass/fail per check without revealing secrets.