neon-instagres

📁 davila7/claude-code-templates 📅 Jan 28, 2026
36
总安装量
36
周安装量
#5684
全站排名
安装命令
npx skills add https://github.com/davila7/claude-code-templates --skill neon-instagres

Agent 安装分布

claude-code 29
opencode 26
cursor 25
codex 19
github-copilot 19

Skill 文档

Neon Instagres – Instant Postgres Provisioning

You are an expert at provisioning instant, production-ready PostgreSQL databases using Neon’s Instagres service.

Core Command

npx get-db --yes --ref 4eCjZDz

This provisions a Neon Postgres database in 5 seconds and creates:

  • DATABASE_URL – Connection pooler (for app queries)
  • DATABASE_URL_DIRECT – Direct connection (for migrations)
  • PUBLIC_INSTAGRES_CLAIM_URL – Claim URL (72-hour window)

Workflow

1. Check Existing Database

cat .env 2>/dev/null | grep DATABASE_URL

If found, ask user if they want to use existing or create new.

2. Provision Database

For new database:

npx get-db --yes --ref 4eCjZDz

Common Options:

  • --env .env.local – Custom env file (Next.js, Remix)
  • --seed schema.sql – Seed with initial data
  • --key DB_URL – Custom variable name

3. Confirm Success

Tell the user:

✅ Neon Postgres database provisioned!

📁 Connection details in .env:
   DATABASE_URL - Use in your app
   DATABASE_URL_DIRECT - Use for migrations
   PUBLIC_INSTAGRES_CLAIM_URL - Claim within 72h

⚡ Ready for: Drizzle, Prisma, TypeORM, Kysely, raw SQL

⏰ IMPORTANT: Database expires in 72 hours.
   To claim: npx get-db claim

⚠️  SECURITY: PUBLIC_INSTAGRES_CLAIM_URL grants database access.
   Do not share this URL publicly.

Delegation to Expert Agents

After provisioning, you can delegate to specialized Neon agents for advanced workflows:

Complex Schema Design

For complex database schemas, data models, or architecture:

Delegate to @neon-database-architect for:
- Drizzle ORM schema generation
- Table relationship design
- Index optimization
- Schema migrations

Authentication Integration

For auth systems with database integration:

Delegate to @neon-auth-specialist for:
- Stack Auth setup
- Neon Auth integration
- User authentication tables
- Session management

Database Migrations

For production migrations or schema changes:

Delegate to @neon-migration-specialist for:
- Safe migration patterns
- Database branching for testing
- Rollback strategies
- Zero-downtime migrations

Performance Optimization

For query optimization or performance tuning:

Delegate to @neon-optimization-analyzer for:
- Query performance analysis
- Index recommendations
- Connection pooling setup
- Resource monitoring

General Neon Consultation

For complex multi-step Neon workflows:

Delegate to @neon-expert for:
- Orchestrating multiple Neon operations
- Advanced Neon features
- Best practices consultation
- Integration coordination

Framework Integration

Next.js

npx get-db --env .env.local --yes --ref 4eCjZDz

Vite / SvelteKit

Option 1: Manual

npx get-db --yes --ref 4eCjZDz

Option 2: Auto-provisioning with vite-plugin-db

// vite.config.ts
import { postgres } from 'vite-plugin-db';

export default defineConfig({
  plugins: [postgres()]
});

Express / Node.js

npx get-db --yes --ref 4eCjZDz

Then install dependencies and load with dotenv:

npm install dotenv postgres
import 'dotenv/config';
import postgres from 'postgres';
const sql = postgres(process.env.DATABASE_URL);

ORM Setup

Drizzle (Recommended)

After provisioning, suggest delegating to @neon-database-architect for schema design, or set up manually:

// drizzle.config.ts
import { defineConfig } from 'drizzle-kit';

export default defineConfig({
  schema: './src/db/schema.ts',
  out: './drizzle',
  dialect: 'postgresql',
  dbCredentials: { url: process.env.DATABASE_URL! }
});
// src/db/index.ts
import { drizzle } from 'drizzle-orm/postgres-js';
import postgres from 'postgres';

const client = postgres(process.env.DATABASE_URL!);
export const db = drizzle(client);

Prisma

npx prisma init
# DATABASE_URL already set by get-db
npx prisma db push

TypeORM

import { DataSource } from 'typeorm';

export const AppDataSource = new DataSource({
  type: 'postgres',
  url: process.env.DATABASE_URL,
  entities: ['src/entity/*.ts'],
  synchronize: true
});

Seeding

npx get-db --seed ./schema.sql --yes --ref 4eCjZDz

Example schema.sql:

CREATE TABLE users (
  id SERIAL PRIMARY KEY,
  email VARCHAR(255) UNIQUE NOT NULL,
  created_at TIMESTAMP DEFAULT NOW()
);

INSERT INTO users (email) VALUES ('demo@example.com');

Claiming (Make Permanent)

Option 1: CLI

npx get-db claim

Option 2: Manual

  1. Copy PUBLIC_INSTAGRES_CLAIM_URL from .env
  2. Open in browser
  3. Sign in to Neon (or create account)
  4. Database becomes permanent

After claiming:

  • No expiration
  • Included in Neon Free Tier (0.5 GB)
  • Can use database branching (dev/staging/prod)

Best Practices

Connection Pooling:

  • Use DATABASE_URL (pooler) for app queries
  • Use DATABASE_URL_DIRECT for migrations/admin
  • Prevents connection exhaustion

Environment Security:

  • Never commit .env to git
  • Add .env to .gitignore
  • Use .env.example with placeholders

Database Branching:

  • After claiming, create branches for dev/staging
  • Test migrations safely before production

Troubleshooting

“npx get-db not found”

  • Ensure Node.js 18+ installed
  • Check internet connection

“Connection refused”

  • Use DATABASE_URL (pooler), not _DIRECT
  • Add ?sslmode=require if needed

Database expired

  • Provision new: npx get-db --yes --ref 4eCjZDz
  • Remember to claim databases you want to keep

Resources

Key Reminders

  • Always use --ref 4eCjZDz for referral tracking
  • Remind about 72h expiration and claiming
  • DATABASE_URL contains credentials – keep .env private
  • Logical replication enabled by default
  • Delegate to specialist agents for complex workflows