AgentSkillsCN

sails

在“枯燥的 JavaScript 技术栈”中,运用 Sails.js 框架模式——动作、辅助函数、路由、策略、钩子、配置、安全、中间件、文件上传、部署等。在 Sails.js 应用程序中构建、审查或调试任何服务器端代码时,可使用此技能。

SKILL.md
--- frontmatter
name: sails
description: >
  Sails.js framework patterns for The Boring JavaScript Stack - actions, helpers, routes, policies, hooks,
  configuration, security, middleware, file uploads, deployment, and more. Use this skill when building,
  reviewing, or debugging any server-side code in a Sails.js application.
metadata:
  author: sailscastshq
  version: '2.1.0'
  tags: sails, sailsjs, backend, mvc, actions, helpers, routes, policies, hooks, middleware, deployment, boring-stack

Sails.js

Sails.js is the MVC backend framework in The Boring JavaScript Stack. It provides convention-over-configuration server-side architecture with actions, helpers, models, policies, hooks, and a powerful routing system. The Boring Stack defaults to the actions2 format for all controllers and helpers.

Sails is built on Express and uses the Waterline ORM for database access. It pairs with Inertia.js to render React, Vue, or Svelte frontends without building a separate API.

Rules

Getting Started

  • getting-started - App anatomy, project structure, file conventions, .sailsrc, globals, bootstrap

Core Concepts

  • actions - Actions2 format, inputs, exits, response types, and action patterns
  • helpers - Reusable helpers with inputs, exits, sync/async, error handling
  • routes - Route configuration, dynamic parameters, wildcards, route targets
  • policies - Request guards, policy configuration, authentication patterns
  • hooks - App-level hooks, lifecycle, shared data, custom hook patterns

Request Pipeline

  • request-lifecycle - How requests flow through hooks, middleware, policies, actions, and responses
  • middleware - HTTP middleware pipeline, config/http.js, Express middleware, custom middleware

Configuration & Infrastructure

  • configuration - Config files, environment variables, custom settings, datastores
  • responses - Custom response types, the Inertia response flow, error responses
  • security - CORS, CSRF, sessions, cookies, security best practices
  • deployment - Production config, Redis sessions, environment setup, scaling

Framework Reference

  • sails-object - The global sails object: sails.config, sails.helpers, sails.models, sails.log, sails.inertia
  • file-uploads - File upload patterns with sails.uploadOne, Skipper, cloud storage
  • shell-scripts - Background tasks, data migrations, maintenance scripts
  • blueprints - Auto-generated REST API, blueprint configuration, when to use
  • generators - Scaffolding with sails generate, custom generators, the page generator