Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Manage Neon serverless Postgres databases. Create projects, branches, databases, and execute queries. Perfect for agent workflows needing persistent storage with branching (like git for databases), scale-to-zero, and instant provisioning.
Manage Neon serverless Postgres databases. Create projects, branches, databases, and execute queries. Perfect for agent workflows needing persistent storage with branching (like git for databases), scale-to-zero, and instant provisioning.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Neon is serverless Postgres โ scales to zero, branches like git, instant provisioning. Perfect for AI agents needing databases without ops overhead.
Instant databases โ Create in seconds, no server setup Branching โ Fork your database like git (test without affecting prod) Scale-to-zero โ Pay nothing when idle Connection pooling โ Built-in, no PgBouncer needed Generous free tier โ 0.5 GB storage, 190 compute hours/month
# Homebrew (recommended) brew install neonctl # Or npm npm i -g neonctl
# Interactive (opens browser) neonctl auth # Or with API key (get from console.neon.tech) export NEON_API_KEY=your_api_key_here
neonctl projects create --name "my-agent-db"
# List all projects neonctl projects list # Create project neonctl projects create --name "project-name" # Delete project neonctl projects delete <project-id> # Get project details neonctl projects get <project-id>
# List branches neonctl branches list --project-id <project-id> # Create branch (fork from main) neonctl branches create --project-id <project-id> --name "dev-branch" # Create branch from specific point neonctl branches create --project-id <project-id> --name "restore-test" --parent main --timestamp "2024-01-15T10:00:00Z" # Reset branch to parent neonctl branches reset <branch-id> --project-id <project-id> --parent # Delete branch neonctl branches delete <branch-id> --project-id <project-id> # Compare schemas neonctl branches schema-diff --project-id <project-id> --base-branch main --compare-branch dev
# List databases neonctl databases list --project-id <project-id> --branch <branch-name> # Create database neonctl databases create --project-id <project-id> --branch <branch-name> --name "mydb" # Delete database neonctl databases delete <db-name> --project-id <project-id> --branch <branch-name>
# Get connection string (default branch) neonctl connection-string --project-id <project-id> # Get connection string for specific branch neonctl connection-string <branch-name> --project-id <project-id> # Pooled connection (recommended for serverless) neonctl connection-string --project-id <project-id> --pooled # Extended format (with all details) neonctl connection-string --project-id <project-id> --extended
# List roles neonctl roles list --project-id <project-id> --branch <branch-name> # Create role neonctl roles create --project-id <project-id> --branch <branch-name> --name "app_user"
# Get connection string and connect neonctl connection-string --project-id <project-id> | xargs psql # Or direct psql "$(neonctl connection-string --project-id <project-id>)"
# Get the string CONNECTION_STRING=$(neonctl connection-string --project-id <project-id> --pooled) # Use in any Postgres client psql "$CONNECTION_STRING" -c "SELECT * FROM users LIMIT 5;"
Set context to avoid passing --project-id every time: # Set project context neonctl set-context --project-id <project-id> # Now commands use that project automatically neonctl branches list neonctl databases list neonctl connection-string
# Create project for org neonctl projects create --name "website-org-db" -o json # Create production branch (main is created by default) # Create dev branch for testing neonctl branches create --name "dev" --project-id <id> # Get connection strings neonctl connection-string main --project-id <id> --pooled # for prod neonctl connection-string dev --project-id <id> --pooled # for dev
# Connect and create schema psql "$(neonctl cs --project-id <id>)" <<EOF CREATE TABLE leads ( id SERIAL PRIMARY KEY, business_name VARCHAR(255) NOT NULL, category VARCHAR(100), location VARCHAR(255), phone VARCHAR(50), email VARCHAR(255), website VARCHAR(255), status VARCHAR(50) DEFAULT 'identified', priority VARCHAR(20) DEFAULT 'medium', notes TEXT, created_at TIMESTAMP DEFAULT NOW(), updated_at TIMESTAMP DEFAULT NOW() ); CREATE INDEX idx_leads_status ON leads(status); CREATE INDEX idx_leads_category ON leads(category); EOF
# Create a branch to test schema changes neonctl branches create --name "schema-experiment" --project-id <id> # Test your changes on the branch psql "$(neonctl cs schema-experiment --project-id <id>)" -c "ALTER TABLE leads ADD COLUMN score INT;" # If it works, apply to main. If not, just delete the branch neonctl branches delete schema-experiment --project-id <id>
# JSON (for parsing) neonctl projects list -o json # YAML neonctl projects list -o yaml # Table (default, human-readable) neonctl projects list -o table
# API key (required if not using `neonctl auth`) export NEON_API_KEY=your_key # Default project (alternative to set-context) export NEON_PROJECT_ID=your_project_id
neonctl me -o json 2>/dev/null && echo "Authenticated" || echo "Need to run: neonctl auth"
# One-liner query psql "$(neonctl cs)" -c "SELECT COUNT(*) FROM leads WHERE status='contacted';"
psql "$(neonctl cs)" -c "COPY (SELECT * FROM leads) TO STDOUT WITH CSV HEADER" > leads.csv
psql "$(neonctl cs)" -c "\COPY leads(business_name,category,location) FROM 'import.csv' WITH CSV HEADER"
Check if branch compute is active (scale-to-zero may have paused it) Use --pooled connection string for serverless workloads
Verify API key: neonctl me Re-authenticate: neonctl auth
Normal for scale-to-zero. First connection wakes the compute (~1-2 seconds) Use connection pooling to maintain warm connections
Neon Console โ Web dashboard API Docs โ REST API reference CLI Reference โ Full CLI docs GitHub โ CLI source code
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.