К основному содержанию
скилл CX Codex

12-factor-app — скилл для Claude Code: правила 12-факторного

Скилл с 51 правилом по методологии Twelve-Factor App. Пригодится, когда проектируешь бэкенд, API или микросервисы и хочешь свериться с проверенными практиками.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add pproenca/dot-skills --skill 12-factor-app -a claude-code
Открыть на GitHub

Что делает 12-factor-app

Скилл раскладывает методологию 12-факторного приложения на 51 правило в 12 категориях — от управления кодом до продакшен-операций. Каждое правило лежит отдельным файлом в references/ и вызывается по имени: code-single-codebase, config-use-env-vars, proc-stateless-processes, log- и так далее. Агент подтягивает нужное правило, когда ты обсуждаешь деплой, конфигурацию, архитектуру процессов или логирование.

Категории расставлены по приоритету. Критичные — кодовая база, зависимости и конфигурация. Высокий приоритет у backing services, стадий build/release/run, процессов, масштабирования и disposability. Средний — привязка к портам, паритет dev/prod, логи и админ-процессы. Такой порядок задаёт, на что смотреть первым при разборе сервиса.

Скилл ставится в шесть платформ, и для каждой свой путь к SKILL.md. Для Claude это ~/.claude/skills/12-factor-app/SKILL.md. Установщик — npx skills add из репозитория pproenca/dot-skills, лицензия MIT.

Какие задачи решает

  • разложить сервис по 12 факторам и найти слабые места
  • вынести конфигурацию из кода в переменные окружения
  • сделать сборку артефакта детерминированной через lockfile
  • перевести процессы в stateless и убрать sticky-сессии
  • описать graceful shutdown по SIGTERM

Примеры запросов агенту

  • проверь мой сервис по методологии 12-factor-app
  • какие правила из 12-factor-app нарушает эта конфигурация деплоя?
  • подскажи, как правильно вынести секреты из репозитория по 12-factor-app

Как установить 12-factor-app

1Через Skills CLI (Vercel)

npx skills add pproenca/dot-skills --skill 12-factor-app -a claude-code

2Вручную: положить файлы

~/.claude/skills/12-factor-app/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/12-factor-app/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Из того же набора45

mui-base Скилл с 48 правилами для сборки headless-библиотек React-компонентов по стилю MUI Base UI. Пригодится, когда логика и стили живут отдельно. CX Codex +1 328установок vhs Скилл с 47 правилами для .tape-файлов VHS: помогает агенту писать и проверять сценарии записи терминала в GIF и видео. CX Codex +1 323установок unix-cli Набор правил для ИИ-агента, который пишет или проверяет консольные утилиты: аргументы, коды выхода, потоки вывода. CX Codex +1 319установок python Скилл с 42 правилами оптимизации Python 3.11+: подсказывает агенту, как писать async-код, выбирать структуры данных и экономить память. CX Codex +1 315установок rust-refactor Скилл для рефакторинга Rust: убирает лишние абстракции, делит большие файлы на модули, помогает мигрировать типы постепенно. CX Codex +1 314установок js-google Скилл для ИИ-агентов с 47 правилами JavaScript из официального гайда Google. Пригодится при написании, ревью и рефакторинге JS-кода. CX Codex +1 310установок tailwind-refactor Скилл для рефакторинга классов Tailwind CSS: миграция с v3 на v4, замена устаревших утилит и чистка кода без изменения внешнего вида. CX Codex +1 308установок pulumi Скилл подкладывает агенту 46 правил по Pulumi: состояние, граф ресурсов, компоненты, секреты. Пригодится, когда инфраструктуру пишут вместе с моделью. CX Codex +1 304установок

Похожие

convex-explain-app convex Скилл строит понятную карту бэкенда Convex по схеме данных и функциям. Помогает быстро разобраться в незнакомом проекте перед правками или аудитом. CX Codex +1 35 900установок create-a-backend vercel Скилл подбирает архитектуру бэкенда на платформе Vercel под конкретные задачи проекта. Он помогает определиться с компонентами до написания кода реализации. CX Codex +1 651установок microservices-patterns Seth Hobson Помогает проектировать микросервисные системы: выделять границы сервисов, выбирать обмен сообщениями и добавлять паттерны устойчивости. CX Codex 13 176установок architecture-designer https://github.com/Jeffallan Проектирует архитектуру распределённых систем, составляет диаграммы Mermaid и оформляет решения через ADR. Помогает сопоставить требования с шаблонами вроде микросервисов или монолита. CX Codex +1 7 800установок architect-review sickn33 Скилл для случаев, когда агенту нужно оценить архитектуру целиком: риски, компромиссы, план проверки. CX Codex +1 1 300установок decomposition-planning-roadmap tech-leads-club Составляет пошаговый план декомпозиции монолита и роадмап миграции к сервисам. Пригодится, когда непонятно, в каком порядке выносить сервисы. CX Codex +1 308установок

Рядом в теме «Бэкенд и API»

Всё по теме «Бэкенд и API» →

Вопросы о 12-factor-app

Как установить 12-factor-app в Claude?

Выполни npx skills add pproenca/dot-skills --skill 12-factor-app -a claude-code. Скилл окажется в ~/.claude/skills/12-factor-app/SKILL.md.

Что делает 12-factor-app?

Даёт агенту набор из 51 правила по методологии Twelve-Factor App в 12 категориях. Агент обращается к ним при проектировании бэкенда, настройке деплоя, конфигурации и логирования.

Для каких платформ подходит скилл?

Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI и OpenCode. Для каждой платформы установщик кладёт SKILL.md в свой каталог.

Исходный текст

SKILL.md · MIT
---
name: 12-factor-app
description: The Twelve-Factor App methodology for building scalable, maintainable cloud-native applications. Use when designing backend services, APIs, microservices, or any software-as-a-service application. Triggers on deployment patterns, configuration management, process architecture, logging, and infrastructure decisions.
---

# Community Cloud-Native Applications Best Practices

Comprehensive methodology for building modern software-as-a-service applications that are portable, scalable, and maintainable. Contains 51 rules across 12 categories, covering the entire application lifecycle from codebase management to production operations.

## When to Apply

Reference these guidelines when:
- Designing new backend services or APIs
- Containerizing applications for Kubernetes or Docker
- Setting up CI/CD pipelines
- Managing configuration across environments
- Implementing logging and monitoring
- Planning application scaling strategy
- Debugging deployment or environment issues

## Rule Categories by Priority

| Priority | Category | Impact | Prefix |
|----------|----------|--------|--------|
| 1 | Codebase & Version Control | CRITICAL | `code-` |
| 2 | Dependencies | CRITICAL | `dep-` |
| 3 | Configuration | CRITICAL | `config-` |
| 4 | Backing Services | HIGH | `svc-` |
| 5 | Build, Release, Run | HIGH | `build-` |
| 6 | Processes & State | HIGH | `proc-` |
| 7 | Concurrency & Scaling | HIGH | `scale-` |
| 8 | Disposability | HIGH | `disp-` |
| 9 | Port Binding | MEDIUM | `port-` |
| 10 | Dev/Prod Parity | MEDIUM | `parity-` |
| 11 | Logging | MEDIUM | `log-` |
| 12 | Admin Processes | MEDIUM | `admin-` |

## Quick Reference

### 1. Codebase & Version Control (CRITICAL)

- [`code-single-codebase`](references/code-single-codebase.md) - Maintain one codebase per application in version control
- [`code-one-app-one-repo`](references/code-one-app-one-repo.md) - Enforce one-to-one correlation between codebase and application
- [`code-deploys-not-branches`](references/code-deploys-not-branches.md) - Use deploys not branches to represent environments
- [`code-shared-as-libraries`](references/code-shared-as-libraries.md) - Factor shared code into libraries managed by dependency manager

### 2. Dependencies (CRITICAL)

- [`dep-explicit-declaration`](references/dep-explicit-declaration.md) - Declare all dependencies explicitly in a manifest file
- [`dep-isolate-execution`](references/dep-isolate-execution.md) - Isolate dependencies to prevent system package leakage
- [`dep-no-system-tools`](references/dep-no-system-tools.md) - Never rely on implicit system tools being available
- [`dep-deterministic-builds`](references/dep-deterministic-builds.md) - Use lockfiles for deterministic dependency resolution

### 3. Configuration (CRITICAL)

- [`config-separate-from-code`](references/config-separate-from-code.md) - Strictly separate configuration from code
- [`config-use-env-vars`](references/config-use-env-vars.md) - Store configuration in environment variables
- [`config-no-env-groups`](references/config-no-env-groups.md) - Treat environment variables as granular controls not grouped environments
- [`config-validate-on-startup`](references/config-validate-on-startup.md) - Validate required configuration at application startup
- [`config-never-commit-secrets`](references/config-never-commit-secrets.md) - Never commit secrets or credentials to version control

### 4. Backing Services (HIGH)

- [`svc-as-attached-resources`](references/svc-as-attached-resources.md) - Treat backing services as attached resources
- [`svc-connection-strings`](references/svc-connection-strings.md) - Reference all backing services via connection URLs in config
- [`svc-no-local-vs-remote`](references/svc-no-local-vs-remote.md) - Make no distinction between local and third-party services
- [`svc-detach-attach-without-code`](references/svc-detach-attach-without-code.md) - Design services to be detachable and attachable without code changes

### 5. Build, Release, Run (HIGH)

- [`build-separate-stages`](references/build-separate-stages.md) - Strictly separate build, release, and run stages
- [`build-immutable-releases`](references/build-immutable-releases.md) - Create immutable releases with unique identifiers
- [`build-no-runtime-changes`](references/build-no-runtime-changes.md) - Never modify code at runtime - changes require new release
- [`build-complexity-in-build`](references/build-complexity-in-build.md) - Push complexity into build stage keep run stage minimal
- [`build-artifact-per-commit`](references/build-artifact-per-commit.md) - Generate one build artifact per commit deploy same artifact everywhere

### 6. Processes & State (HIGH)

- [`proc-stateless-processes`](references/proc-stateless-processes.md) - Execute the application as stateless processes
- [`proc-no-sticky-sessions`](references/proc-no-sticky-sessions.md) - Never use sticky sessions - store session data in backing services
- [`proc-no-local-filesystem`](references/proc-no-local-filesystem.md) - Never assume local filesystem persists between requests
- [`proc-compile-at-build`](references/proc-compile-at-build.md) - Perform asset compilation and bundling at build time not runtime
- [`proc-share-nothing`](references/proc-share-nothing.md) - Design processes to share nothing with each other

### 7. Concurrency & Scaling (HIGH)

- [`scale-process-model`](references/scale-process-model.md) - Scale out via the process model with multiple process types
- [`scale-process-types`](references/scale-process-types.md) - Assign workloads to appropriate process types
- [`scale-no-daemonize`](references/scale-no-daemonize.md) - Never daemonize or write PID files let process manager handle it
- [`scale-horizontal-not-vertical`](references/scale-horizontal-not-vertical.md) - Design for horizontal scaling over vertical scaling
- [`scale-process-formation`](references/scale-process-formation.md) - Define process formation as declarative configuration

### 8. Disposability (HIGH)

- [`disp-disposable-processes`](references/disp-disposable-processes.md) - Design processes to be disposable started or stopped at any moment
- [`disp-fast-startup`](references/disp-fast-startup.md) - Minimize startup time to enable rapid scaling and recovery
- [`disp-graceful-shutdown`](references/disp-graceful-shutdown.md) - Implement graceful shutdown on SIGTERM
- [`disp-crash-only`](references/disp-crash-only.md) - Design for crash-only software that recovers from sudden death
- [`disp-idempotent-operations`](references/disp-idempotent-operations.md) - Make operations idempotent to safely retry after failures

### 9. Port Binding (MEDIUM)

- [`port-self-contained`](references/port-self-contained.md) - Make the application completely self-contained with embedded server
- [`port-export-via-binding`](references/port-export-via-binding.md) - Export services via port binding using PORT environment variable
- [`port-any-protocol`](references/port-any-protocol.md) - Use port binding to export any protocol not just HTTP

### 10. Dev/Prod Parity (MEDIUM)

- [`parity-minimize-gaps`](references/parity-minimize-gaps.md) - Minimize gaps between development and production environments
- [`parity-same-backing-services`](references/parity-same-backing-services.md) - Use the same type and version of backing services in all environments
- [`parity-deploy-frequently`](references/parity-deploy-frequently.md) - Deploy frequently to minimize the time gap
- [`parity-developers-deploy`](references/parity-developers-deploy.md) - Involve developers in deployment to minimize personnel gap

### 11. Logging (MEDIUM)

- [`log-event-streams`](references/log-event-streams.md) - Treat logs as event streams not files
- [`log-no-routing`](references/log-no-routing.md) - Never route or store logs from within the application
- [`log-structured-format`](references/log-structured-format.md) - Use structured logging for machine-readable event streams
- [`log-unbuffered-stdout`](references/log-unbuffered-stdout.md) - Write logs unbuffered to stdout for real-time streaming

### 12. Admin Processes (MEDIUM)

- [`admin-one-off-processes`](references/admin-one-off-processes.md) - Run admin tasks as one-off processes not special scripts
- [`admin-same-environment`](references/admin-same-environment.md) - Run admin processes against a release with same codebase and config
- [`admin-repl-access`](references/admin-repl-access.md) - Provide REPL access for debugging and data inspection

## How to Use

Read individual reference files for detailed explanations and code examples:

- [Section definitions](references/_sections.md) - Category structure and impact levels
- [Rule template](assets/templates/_template.md) - Template for adding new rules

## Reference Files

| File | Description |
|------|-------------|
| [references/_sections.md](references/_sections.md) | Category definitions and ordering |
| [assets/templates/_template.md](assets/templates/_template.md) | Template for new rules |
| [metadata.json](metadata.json) | Version and reference information |

© pproenca · MIT · pproenca/dot-skills

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой