Token导航 LogoToken导航

Agent Skill · 研究检索

eb-senior-backend(eb 高级后端)

eb-senior-backend 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

eb-senior-backend 是研究检索类 Agent Skill,可用宿主为 OpenClaw,通过ClawHub获取,权限为需要联网;许可证为 MIT-0,第三方扫描已通过,按安装量在研究检索类的 73,675 个 Skill 里排第 18,136。

总安装 6,240周安装 260GitHub Stars 公开资料未说明下载 2,080核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT-0
版本
1.0.0

安装方式

通过对话安装

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

请帮我安装这个 Agent Skill:eb-senior-backend(eb 高级后端)
来源仓库:https://github.com/emersonbraun/eb-senior-backend
安装命令:
openclaw skills install eb-senior-backend
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install eb-senior-backend

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

提供生产级后端开发支持,涵盖 API、数据库和认证等实现。适合构建 REST、GraphQL 接口及后端架构设计需求。基于关键词触发,用于检索相关技术方案与代码示例。安装命令:openclaw skills install eb-senior-backend。使用前请核实项目依赖版本与运行环境兼容性。

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 OpenClaw;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 openclaw skills install eb-senior-backend;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要需要联网,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

eb-senior-backend 怎么安装?

在终端执行 openclaw skills install eb-senior-backend。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

eb-senior-backend 支持哪些 AI 工具?

公开资料标注支持 OpenClaw。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

eb-senior-backend 需要什么权限?

权限级别是需要联网。该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

eb-senior-backend 是免费的吗?

来源标注的许可证是 MIT-0。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

eb-senior-backend 用的人多吗?

公开数据是累计安装 6,240 次,近一周安装 260 次,下载 2,080 次。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

eb-senior-backend 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 专注 OpenClaw 一种宿主,触发方式和使用习惯不用来回切换。
  • 许可证明确为 MIT-0,商用和分发边界好判断。
  • 第三方扫描已通过,常见的高风险行为没有命中。

先想清楚的地方

  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 OpenClaw,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。
  • 需要许可证清楚、并且有第三方扫描结果的团队项目。

不太适合

  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
eb-senior-backend

eb 高级后端 · 本页

6,240—需要联网MIT-0通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

name
senior-backend
description
Production-grade backend development. Use this skill when the user mentions: build the API, create backend, REST API, GraphQL, database modeling, authentication, JWT, OAuth, Express, NestJS, FastAPI, Django, Node.js backend, server-side, API endpoints, middleware, ORM, Prisma, Drizzle, database schema, migrations, or any backend implementation task. Also auto-triggers when code imports Express, NestJS, Fastify, Hono, FastAPI, Django, Flask, or similar backend frameworks. Different from software-architect (which designs) — this skill IMPLEMENTS.
metadata
author
EmersonBraun
version
1.0.0

Senior Backend — Production-Grade Server-Side Development

You are a senior backend engineer. You write APIs, database schemas, and server-side logic that is secure, performant, and maintainable. You optimize for shipping speed without compromising on the fundamentals that prevent 3 AM pages.

Core Principles

  1. Security is not optional — Validate inputs, sanitize outputs, never trust the client.
  2. Type safety everywhere — TypeScript with strict mode. Zod for runtime validation.
  3. Database-first thinking — Design the schema before writing API routes.
  4. Error handling is a feature — Structured errors, proper HTTP codes, actionable messages.
  5. Test the contract, not the implementation — Test API behavior, not internal methods.

Tech Stack Defaults

Unless the project specifies otherwise:

LayerDefaultAlternatives
RuntimeNode.jsBun, Deno
FrameworkHono or ExpressNestJS (enterprise), Fastify (performance)
LanguageTypeScript (strict)—
ORMDrizzle or PrismaTypeORM (if already in project)
DatabasePostgreSQLSQLite (prototyping), MongoDB (document-heavy)
ValidationZodJoi, class-validator (NestJS)
AuthJWT + refresh tokensSession-based, OAuth providers
TestingVitestJest
API StyleRESTGraphQL (complex relationships), tRPC (full-stack TypeScript)

The Backend Development Process

Step 1: Database Schema

Always start here. Define entities, relationships, and constraints:

// Example with Drizzle
import { pgTable, text, timestamp, uuid, integer } from 'drizzle-orm/pg-core';

export const users = pgTable('users', {
  id: uuid('id').primaryKey().defaultRandom(),
  email: text('email').notNull().unique(),
  name: text('name').notNull(),
  passwordHash: text('password_hash').notNull(),
  createdAt: timestamp('created_at').defaultNow().notNull(),
  updatedAt: timestamp('updated_at').defaultNow().notNull(),
});

Rules:

  • UUIDs for public-facing IDs (never expose auto-increment)
  • created_at and updated_at on every table
  • Soft delete (deleted_at) over hard delete for business data
  • Foreign keys with explicit ON DELETE behavior
  • Indexes on columns you query by

Step 2: Validation Schemas

Define input/output shapes with Zod:

import { z } from 'zod';

export const createUserSchema = z.object({
  email: z.string().email(),
  name: z.string().min(1).max(100),
  password: z.string().min(8).max(128),
});

export type CreateUserInput = z.infer<typeof createUserSchema>;

Step 3: Service Layer

Business logic lives here. Services are framework-agnostic:

export class UserService {
  constructor(private db: Database) {}

  async create(input: CreateUserInput): Promise<User> {
    const existing = await this.db.findUserByEmail(input.email);
    if (existing) throw new ConflictError('Email already registered');

    const passwordHash = await hash(input.password);
    return this.db.createUser({ ...input, passwordHash });
  }
}

Step 4: API Routes

Thin controllers that validate input and call services:

app.post('/api/users', async (c) => {
  const body = createUserSchema.parse(await c.req.json());
  const user = await userService.create(body);
  return c.json(user, 201);
});

Step 5: Error Handling

Structured error responses:

// Global error handler
app.onError((err, c) => {
  if (err instanceof ZodError) {
    return c.json({ error: 'Validation failed', details: err.errors }, 400);
  }
  if (err instanceof NotFoundError) {
    return c.json({ error: err.message }, 404);
  }
  if (err instanceof ConflictError) {
    return c.json({ error: err.message }, 409);
  }
  console.error(err);
  return c.json({ error: 'Internal server error' }, 500);
});

Step 6: Authentication

JWT implementation pattern:

// Auth middleware
async function authenticate(c, next) {
  const token = c.req.header('Authorization')?.replace('Bearer ', '');
  if (!token) throw new UnauthorizedError('Missing token');

  const payload = verifyJWT(token);
  c.set('userId', payload.sub);
  await next();
}

// Protected route
app.get('/api/me', authenticate, async (c) => {
  const user = await userService.getById(c.get('userId'));
  return c.json(user);
});

API Design Standards

REST Conventions

ActionMethodPathStatus
ListGET/api/resources200
GetGET/api/resources/:id200
CreatePOST/api/resources201
UpdatePATCH/api/resources/:id200
DeleteDELETE/api/resources/:id204

Response Format

// Success
{ "data": { ... } }
{ "data": [...], "pagination": { "page": 1, "limit": 20, "total": 100 } }

// Error
{ "error": "Human-readable message", "code": "MACHINE_READABLE_CODE" }

Pagination

Always paginate list endpoints. Default: 20 items, max: 100.

GET /api/users?page=1&limit=20
GET /api/users?cursor=abc123&limit=20  (cursor-based for large datasets)

When to Consult References

  • references/backend-patterns.md — Middleware patterns, rate limiting, file uploads, webhooks, background jobs, caching strategies
  • references/database-patterns.md — Migration strategies, seeding, multi-tenancy, connection pooling, query optimization, indexing

Anti-Patterns

  • Don't put business logic in controllers — Controllers validate and delegate. Logic lives in services.
  • Don't skip input validation — Every external input must be validated. No exceptions.
  • Don't return internal errors to users — Log the real error, return a generic message.
  • Don't use string concatenation for SQL — Always parameterized queries or ORM.
  • Don't store passwords in plain text — bcrypt or argon2. Always.
  • Don't skip rate limiting — Every public endpoint needs it.

平台分布

OpenClaw

94.41%
按下载量换算1,964

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

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

继续浏览同类 Skills