Claude
Skills
Sign in
โ† Back

warp

Included with Lifetime
$97 forever

Expert guidance for Warp, the modern terminal built for developer productivity. Helps developers create Warp Workflows (shareable command templates), configure Warp Drive for team knowledge sharing, and leverage Warp's AI features and block-based editing for efficient terminal usage.

General

What this skill does


# Warp โ€” Modern Terminal & Workflow Automation


## Overview


Warp, the modern terminal built for developer productivity. Helps developers create Warp Workflows (shareable command templates), configure Warp Drive for team knowledge sharing, and leverage Warp's AI features and block-based editing for efficient terminal usage.


## Instructions

### Warp Workflows

Create reusable, parameterized command templates:

```yaml
# ~/.warp/workflows/deploy-service.yaml โ€” Parameterized deployment workflow
name: Deploy Service
description: Build and deploy a service to production with health checks
author: DevOps Team
tags: [deploy, production, docker]
command: |-
  echo "๐Ÿš€ Deploying {{service_name}} to {{environment}}..." &&
  docker build -t {{registry}}/{{service_name}}:{{version}} . &&
  docker push {{registry}}/{{service_name}}:{{version}} &&
  kubectl set image deployment/{{service_name}} \
    {{service_name}}={{registry}}/{{service_name}}:{{version}} \
    -n {{namespace}} &&
  kubectl rollout status deployment/{{service_name}} -n {{namespace}} --timeout=300s &&
  echo "โœ… Deployment complete. Running health check..." &&
  curl -sf https://{{service_name}}.{{domain}}/health || \
    (echo "โŒ Health check failed! Rolling back..." && \
     kubectl rollout undo deployment/{{service_name}} -n {{namespace}} && exit 1)
arguments:
  - name: service_name
    description: Name of the service to deploy
    default_value: api-server
  - name: environment
    description: Target environment
    default_value: production
  - name: registry
    description: Container registry URL
    default_value: ghcr.io/myorg
  - name: version
    description: Image version tag
    default_value: latest
  - name: namespace
    description: Kubernetes namespace
    default_value: production
  - name: domain
    description: Base domain for health check
    default_value: api.example.com
```

```yaml
# ~/.warp/workflows/git-cleanup.yaml โ€” Clean up old git branches
name: Git Branch Cleanup
description: Delete merged branches locally and remotely
tags: [git, cleanup]
command: |-
  echo "๐Ÿงน Cleaning merged branches..." &&
  git fetch --prune &&
  echo "Local merged branches:" &&
  git branch --merged {{base_branch}} | grep -v "{{base_branch}}" | grep -v "^\*" &&
  echo "" &&
  read -p "Delete these local branches? (y/n) " confirm &&
  if [ "$confirm" = "y" ]; then
    git branch --merged {{base_branch}} | grep -v "{{base_branch}}" | grep -v "^\*" | xargs -r git branch -d &&
    echo "โœ… Local branches cleaned"
  fi &&
  if [ "{{clean_remote}}" = "true" ]; then
    echo "Remote merged branches:" &&
    git branch -r --merged {{base_branch}} | grep -v "{{base_branch}}" | grep "origin/" | sed 's/origin\///' &&
    read -p "Delete these remote branches? (y/n) " confirm2 &&
    if [ "$confirm2" = "y" ]; then
      git branch -r --merged {{base_branch}} | grep -v "{{base_branch}}" | grep "origin/" | sed 's/origin\///' | xargs -r -I{} git push origin --delete {} &&
      echo "โœ… Remote branches cleaned"
    fi
  fi
arguments:
  - name: base_branch
    description: Base branch to compare against
    default_value: main
  - name: clean_remote
    description: Also clean remote branches (true/false)
    default_value: "false"
```

```yaml
# ~/.warp/workflows/db-ops.yaml โ€” Database operations workflow
name: Database Operations
description: Common database tasks with safety checks
tags: [database, postgres, backup]
command: |-
  {{#if (eq operation "backup")}}
    echo "๐Ÿ“ฆ Backing up {{db_name}} on {{host}}..." &&
    pg_dump -h {{host}} -U {{user}} -d {{db_name}} \
      --format=custom --compress=9 \
      -f "backup_{{db_name}}_$(date +%Y%m%d_%H%M%S).dump" &&
    echo "โœ… Backup complete: backup_{{db_name}}_$(date +%Y%m%d_%H%M%S).dump"
  {{else if (eq operation "restore")}}
    echo "โš ๏ธ  Restoring {{db_name}} from {{backup_file}}..." &&
    echo "This will OVERWRITE the current database!" &&
    read -p "Continue? (yes/no) " confirm &&
    if [ "$confirm" = "yes" ]; then
      pg_restore -h {{host}} -U {{user}} -d {{db_name}} \
        --clean --if-exists {{backup_file}} &&
      echo "โœ… Restore complete"
    fi
  {{else if (eq operation "stats")}}
    psql -h {{host}} -U {{user}} -d {{db_name}} -c "
      SELECT schemaname, relname, n_tup_ins, n_tup_upd, n_tup_del,
             pg_size_pretty(pg_total_relation_size(relid)) as total_size
      FROM pg_stat_user_tables ORDER BY pg_total_relation_size(relid) DESC LIMIT 20;"
  {{/if}}
arguments:
  - name: operation
    description: "Operation: backup, restore, or stats"
    default_value: backup
  - name: db_name
    description: Database name
  - name: host
    description: Database host
    default_value: localhost
  - name: user
    description: Database user
    default_value: postgres
  - name: backup_file
    description: Backup file path (for restore)
    default_value: ""
```

### Warp Drive โ€” Team Knowledge Base

Share workflows and snippets with your team:

```yaml
# Team-shared workflow: New Developer Onboarding
# Stored in Warp Drive, accessible to all team members
name: New Dev Environment Setup
description: Set up local development environment from scratch
tags: [onboarding, setup]
command: |-
  echo "๐Ÿ”ง Setting up development environment..." &&

  # Clone all required repositories
  echo "๐Ÿ“ฅ Cloning repositories..." &&
  mkdir -p ~/projects &&
  cd ~/projects &&
  git clone [email protected]:{{org}}/api.git &&
  git clone [email protected]:{{org}}/frontend.git &&
  git clone [email protected]:{{org}}/infrastructure.git &&

  # Install dependencies
  echo "๐Ÿ“ฆ Installing dependencies..." &&
  cd api && npm install && cd .. &&
  cd frontend && npm install && cd .. &&

  # Set up local services
  echo "๐Ÿณ Starting Docker services..." &&
  cd infrastructure &&
  docker compose -f docker-compose.local.yml up -d &&

  # Run database migrations
  echo "๐Ÿ—„๏ธ Running migrations..." &&
  cd ../api &&
  npm run db:migrate &&
  npm run db:seed &&

  # Verify everything works
  echo "๐Ÿงช Running smoke tests..." &&
  npm run test:smoke &&

  echo "โœ… Environment ready! Start the API: cd api && npm run dev"
arguments:
  - name: org
    description: GitHub organization
    default_value: mycompany
```

### Custom Themes

```yaml
# ~/.warp/themes/custom-theme.yaml โ€” Custom terminal theme
name: Midnight Dev
accent: "#7c3aed"
background: "#0f172a"
foreground: "#e2e8f0"
details: darker
terminal_colors:
  normal:
    black: "#1e293b"
    red: "#ef4444"
    green: "#22c55e"
    yellow: "#eab308"
    blue: "#3b82f6"
    magenta: "#a855f7"
    cyan: "#06b6d4"
    white: "#f1f5f9"
  bright:
    black: "#475569"
    red: "#f87171"
    green: "#4ade80"
    yellow: "#facc15"
    blue: "#60a5fa"
    magenta: "#c084fc"
    cyan: "#22d3ee"
    white: "#f8fafc"
```

### Launch Configurations

Configure how Warp starts and behaves:

```yaml
# ~/.warp/launch_configurations.yaml โ€” Startup configurations
configurations:
  - name: Full Stack Dev
    tabs:
      - title: API Server
        directory: ~/projects/api
        command: npm run dev
      - title: Frontend
        directory: ~/projects/frontend
        command: npm run dev
      - title: Logs
        directory: ~/projects
        command: docker compose logs -f
      - title: Shell
        directory: ~/projects

  - name: DevOps
    tabs:
      - title: Cluster
        command: kubectl get pods -w --all-namespaces
      - title: Monitoring
        command: watch -n 5 'kubectl top pods'
      - title: Logs
        command: stern -n production "api-*" --tail 100
      - title: Shell
        directory: ~/infrastructure
```

## Warp Features for Developers

### Block-Based Editing
Warp treats each command and its output as a "block." This means you can:
- Select and copy just the output of a command (not the prompt)
- Share a block with teammates (includes command + output)
- Navigate between blocks with Ctrl+Shift+โ†‘/โ†“
- Search command output with Cmd+F within a block

### AI Command Search
Type `#` in Warp to search for c
Files: 2
Size: 12.7 KB
Complexity: 24/100
Category: General

Related in General