Token导航 LogoToken导航TokenDH.com
开发规范敏感数据unknown未标认证来源可访问许可证需确认审计未展示

backend-dev-guidelines后端开发指南

Agent Skill

backend-dev-guidelines 用于辅助前端页面、组件、样式和交互逻辑开发,适合在 Local Agent 中需要维护前端项目、生成组件或检查界面实现时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

343

周安装

14

下载量

110
Local Agent

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:backend-dev-guidelines(后端开发指南)
来源仓库:https://smithery.ai
仓库路径:backend-dev-guidelines
安装命令:
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。当前暂无明确安装命令,请以来源页面说明为准。

简介

backend-dev-guidelines 用于辅助前端页面、组件和样式开发,适合在维护前端项目时使用。

  • 它适用于界面实现检查、组件生成和视觉规范整理等场景,可帮助改进交互逻辑。
  • 使用时应结合现有品牌和设计系统,避免堆砌装饰元素;涉及真实页面改动时需通过预览检查表现。
  • 安装前需确认权限范围和维护状态,注意是否会触发联网、命令执行或文件读写操作。
  • 适用宿主包括 Local Agent,接入前应确认版本、权限和运行环境要求。

SKILL.md

📋 OPINIONATED SCAFFOLD: Modern Supabase + Edge Functions stack Default Stack: - Backend: Supabase Edge Functions (Deno runtime) - Database: Supabase PostgreSQL + Row-Level Security - Auth: Supabase Auth (JWT-based) - Storage: Supabase Storage - Email: Resend (transactional emails) - Payments: Stripe (subscriptions + one-time) - Language: TypeScript - Deployment: Git push to Supabase To customize: Run /customize-scaffold backend or use the scaffold-customizer agent to adapt for Express, NestJS, Fastify, Django, Rails, Go, or other frameworks.

Backend Development Guidelines

Purpose

Establish consistency and best practices for Supabase-powered backends using Edge Functions, PostgreSQL with Row-Level Security, and TypeScript. This skill covers database design, authentication flows, API patterns, email integration, and payment processing.

When to Use This Skill

Automatically activates when working on:

  • Creating or modifying Supabase Edge Functions
  • Designing PostgreSQL database schemas
  • Implementing Row-Level Security (RLS) policies
  • Building authentication flows with Supabase Auth
  • Integrating Supabase Storage for file uploads
  • Sending transactional emails with Resend
  • Processing payments with Stripe
  • Input validation with Zod
  • Testing with Supabase CLI
  • Backend deployment and configuration

Quick Start

New Edge Function Checklist

  • Function: Create in supabase/functions/[name]/index.ts
  • Validation: Zod schema for input
  • Auth: JWT verification with Supabase client
  • Database: Use Supabase client with RLS
  • Error handling: Try/catch with proper responses
  • CORS: Configure allowed origins
  • Tests: Local testing with Supabase CLI
  • Deploy: supabase functions deploy [name]

New Feature Checklist

  • Database: Create migration with schema changes
  • RLS: Add appropriate security policies
  • Edge Function: Implement API endpoint
  • Frontend Integration: Update Supabase client calls
  • Testing: Test locally before deploy
  • Monitoring: Check logs after deployment

Architecture Overview

Supabase Stack Architecture

HTTP Request
    ↓
Edge Function (Deno runtime)
    ↓
Supabase Client (Auth + validation)
    ↓
PostgreSQL Database (with RLS)
    ↓
Response with JSON

Key Principle: Edge Functions are stateless, RLS enforces data security.

Integrations:

  • Supabase Auth → JWT-based authentication
  • Supabase Storage → File uploads and CDN
  • Supabase Realtime → WebSocket subscriptions
  • Resend → Transactional emails
  • Stripe → Payment processing

See architecture-overview.md for complete details.


Directory Structure

project/
├── supabase/
│   ├── functions/           # Edge Functions
│   │   ├── create-user/
│   │   │   └── index.ts
│   │   ├── send-email/
│   │   │   └── index.ts
│   │   └── process-payment/
│   │       └── index.ts
│   ├── migrations/          # Database migrations
│   │   ├── 001_initial_schema.sql
│   │   ├── 002_add_rls.sql
│   │   └── 003_add_indexes.sql
│   ├── seed.sql             # Test data
│   └── config.toml          # Supabase config
├── lib/
│   └── supabase/
│       ├── client.ts        # Supabase client setup
│       ├── auth.ts          # Auth utilities
│       └── types.ts         # Database types
└── types/
    └── database.types.ts    # Generated from schema

Naming Conventions:

  • Edge Functions: kebab-case - create-user, send-email
  • Database tables: snake_case - user_profiles, subscription_plans
  • RLS policies: snake_case - users_select_own, posts_insert_authenticated
  • TypeScript types: PascalCase - UserProfile, SubscriptionPlan

Core Principles (7 Key Rules)

1. Edge Functions are Simple and Focused

// ❌ NEVER: 500-line Edge Function
Deno.serve(async (req) => {
    // Massive logic...
});

// ✅ ALWAYS: Focused, single-purpose functions
Deno.serve(async (req) => {
    const user = await getUserFromRequest(req);
    const result = await createPost(user.id, req);
    return new Response(JSON.stringify(result), { status: 201 });
});

2. Always Verify JWT Tokens

import { createClient } from '@supabase/supabase-js';

const supabase = createClient(
    Deno.env.get('SUPABASE_URL')!,
    Deno.env.get('SUPABASE_ANON_KEY')!,
    {
        global: {
            headers: { Authorization: req.headers.get('Authorization')! }
        }
    }
);

const { data: { user }, error } = await supabase.auth.getUser();
if (error || !user) {
    return new Response('Unauthorized', { status: 401 });
}

3. Use RLS for Data Security

-- Enable RLS on all tables
ALTER TABLE posts ENABLE ROW LEVEL SECURITY;

-- Users can only read their own data
CREATE POLICY "users_select_own" ON posts
    FOR SELECT
    USING (auth.uid() = user_id);

-- Users can only insert their own data
CREATE POLICY "posts_insert_own" ON posts
    FOR INSERT
    WITH CHECK (auth.uid() = user_id);

4. Validate All Input with Zod

import { z } from 'zod';

const CreatePostSchema = z.object({
    title: z.string().min(1).max(200),
    content: z.string().min(1),
    tags: z.array(z.string()).optional()
});

const body = await req.json();
const validated = CreatePostSchema.parse(body); // Throws if invalid

5. Use Environment Variables via Deno.env

// ❌ NEVER: Hardcode secrets
const apiKey = 'sk_live_abc123';

// ✅ ALWAYS: Use environment variables
const apiKey = Deno.env.get('STRIPE_API_KEY')!;
const resendKey = Deno.env.get('RESEND_API_KEY')!;

6. Handle Errors Gracefully

try {
    const result = await performOperation();
    return new Response(JSON.stringify({ success: true, data: result }), {
        status: 200,
        headers: { 'Content-Type': 'application/json' }
    });
} catch (error) {
    console.error('Operation failed:', error);
    return new Response(JSON.stringify({
        success: false,
        error: error.message
    }), {
        status: 500,
        headers: { 'Content-Type': 'application/json' }
    });
}

7. Test Locally Before Deploying

# Start Supabase locally
supabase start

# Test Edge Function locally
supabase functions serve create-user --env-file .env.local

# Run tests
curl -i http://localhost:54321/functions/v1/create-user \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -d '{"email":"test@example.com"}'

Common Imports

// Supabase
import { createClient } from '@supabase/supabase-js';
import type { Database } from '../types/database.types.ts';

// Validation
import { z } from 'zod';

// Email (Resend)
import { Resend } from 'resend';

// Payments (Stripe)
import Stripe from 'stripe';

// CORS helper
import { corsHeaders } from '../_shared/cors.ts';

Quick Reference

HTTP Status Codes

CodeUse Case
200Success
201Created
204No Content (DELETE success)
400Bad Request (validation error)
401Unauthorized (no/invalid token)
403Forbidden (valid token, no permission)
404Not Found
500Server Error

Common Edge Function Patterns

Auth Check → Verify JWT, get user CRUD Operations → Create, Read, Update, Delete with RLS Email Sending → Resend integration Payment Processing → Stripe webhooks and charges File Upload → Supabase Storage integration


Anti-Patterns to Avoid

❌ Skipping JWT verification ❌ Querying database without RLS ❌ No input validation ❌ Exposing secrets in code ❌ Missing error handling ❌ Deploying without local testing ❌ Direct database access (bypassing RLS) ❌ console.log for production errors (use proper logging)


Example Resource Files

📝 Note: This is a scaffold skill with example resources. The provided resources demonstrate the pattern - you should generate additional resources as needed for your specific project.

✅ Provided Examples

architecture-overview.md - Complete Supabase stack architecture edge-functions-guide.md - Edge Function patterns and deployment database-and-rls.md - Database design and RLS policies

📋 Generate On-Demand

When you need guidance on a specific topic, ask Claude to generate a resource file following the same pattern as the examples above. Common topics:

  • Validation patterns - Zod schemas and error handling
  • Auth patterns - JWT verification, session management
  • Storage patterns - File uploads, CDN, signed URLs
  • Email integration - Resend templates and sending
  • Stripe integration - Payments, subscriptions, webhooks
  • Testing guide - Local testing, integration tests
  • Complete examples - Full working Edge Function examples

How to request: "Generate a resource file for [topic] following the pattern in architecture-overview.md"


Customization Instructions

For Your Tech Stack

Not using Supabase? Use the scaffold-customizer agent or manual replacement:

# Option 1: Automated
# Claude will detect your stack and offer to customize

# Option 2: Manual find-and-replace
Supabase → Your database (Prisma, TypeORM, etc.)
Edge Functions → Your backend (Express, NestJS, etc.)
PostgreSQL → Your database (MySQL, MongoDB, etc.)
RLS → Your auth strategy

For Your Domain

Replace the generic examples with your domain:

  • Update "posts" table → your entities
  • Update "users" → your user model
  • Update business logic examples

For Your Patterns

Adapt the principles to your architecture:

  • Keep security-first approach
  • Keep validation patterns
  • Keep error handling patterns
  • Adjust structure to your needs

Related Skills

  • frontend-dev-guidelines - Next.js + React patterns for Supabase integration
  • memory-management - Track architectural decisions
  • skill-developer - Meta-skill for creating and managing skills

Skill Status: SCAFFOLD ✅ Line Count: < 500 ✅ Progressive Disclosure: Example resources + generation instructions ✅

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Local Agent

78.68%
按下载量换算87

安全审计

暂无安全审计结果可展示。

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills