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

principle-boundary-discipline — скилл для Claude Code

Скилл-правило для ИИ-агента: проверки и обработка ошибок держатся на границах системы, внутри — доверие типам и чистые функции.

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

Что делает principle-boundary-discipline

Скилл задаёт одно правило: проверки, сужение типов и обработку ошибок держат на границах. Это аргументы CLI, конфиг, сеть, внешние API. Внутри системы код доверяет типам и не перепроверяет то, что уже проверили на входе. Бизнес-логика уезжает в чистые функции, а оболочка вокруг фреймворка остаётся тонкой и механической.

Поставляется он одним файлом SKILL.md с текстом принципа. Внутри список применений и два вопроса-теста. Первый: пересекает ли данные границу прямо сейчас? Если нет, валидация лишняя. Второй: можно ли вынести это в чистую функцию, которую оболочка просто вызывает? Там же названы типичные протечки: повторный экспорт wire- и storage-типов через публичный интерфейс, nil-проверки в глубине цепочек вызовов, проверка конфига уже после старта.

В frontmatter стоит disable-model-invocation: true. Значит, агент не подхватит скилл сам, вызывать его нужно вручную, когда вы уже пишете валидатор или адаптер к фреймворку. Если логика у вас размазана по обработчикам, правило потянет за собой переделку: придётся вынимать парсеры и чистые функции, а не латать пару мест.

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

  • свести проверки конфига в одну точку при разборе
  • вынести бизнес-логику из обработчиков фреймворка в чистые функции
  • убрать повторные nil-проверки в глубине цепочек вызовов
  • не тащить wire-типы в публичный интерфейс модуля
  • решить, где нужен guard, а где хватает типов

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

  • Примени скилл principle-boundary-discipline: посмотри, где в src/config.ts валидация разъехалась по бизнес-логике.
  • Возьми principle-boundary-discipline и вынеси разбор ответа API в чистую функцию-парсер.
  • Проверь новый адаптер по principle-boundary-discipline: что здесь граница, а что лишняя проверка внутри?

Как установить principle-boundary-discipline

1Через Skills CLI (Vercel)

npx skills add backnotprop/pstack --skill principle-boundary-discipline -a claude-code

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

~/.claude/skills/principle-boundary-discipline/SKILL.md

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

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

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

reflect Запускает трёх субагентов для анализа текущей сессии, вытягивает опыт решения задач и готовит правки для локальных скиллов. CX Codex +1 5 300установок recall Собирает из истории чатов, живого состояния репозитория и общего следа краткую сводку: где вы остановились и что делать дальше. CX Codex +1 5 000установок automate-me Превращает привычки и стиль разработки в персональный скилл вроде jay-mode, анализируя недавние сессии агента и ответы на вопросы. CX Codex +1 5 100установок principle-outcome-oriented-execution Правило для плановых переписываний и миграций: агент идёт к целевой архитектуре, а не латает промежуточные состояния совместимым кодом. CX Codex +1 5 100установок principle-sequence-verifiable-units Скилл учит агента разбивать миграции и массовые правки на мелкие шаги с проверкой каждого. Помогает собирать понятные цепочки коммитов для ревью. CX Codex +1 5 100установок principle-test-behavior-not-implementation Правило для тестов: проверять то, что видит вызывающий код, и не цепляться за внутренности. Помогает отличить тест, который ловит баг, от зелёной пустышки. CX Codex +1 5 200установок principle-minimize-reader-load Скилл помогает найти лишние слои абстракции и спрятанное состояние, которое замедляет понимание кода. Применяй при ревью сложных участков, когда трудно проследить логику. CX Codex +1 5 200установок principle-migrate-callers-then-delete-legacy-apis Скилл требует сразу переводить вызовы на новый внутренний API и удалять старый код без переходных слоёв совместимости. CX Codex +1 5 200установок

Похожие

fork-discipline jezweb Находит зашитые имена клиентов и условия в общем коде мультиклиентских репозиториев. Скилл строит карту границ платформы и готовит план рефакторинга. CX Codex +1 889установок n8n-validation-expert czlonkowski Разбирает ошибки и предупреждения валидации n8n, объясняет, какие из них критичны, а какие ложные срабатывания. Помогает понять, почему workflow не проходит проверку, и как исправить конфигурацию узла. CX Codex +1 6 800установок clanker-discipline gbasin Скилл устраняет раздувание состояния в коде от ИИ-агентов. Он помогает на код-ревью типов, опциональных полей и функций с мутациями. CX Codex +1 7 500установок golang-error-handling samber Скилл для идиоматичной обработки ошибок в Go: оборачивание с контекстом, проверка цепочек, структурированное логирование и интеграция с samber/oops. Применяется при создании, оборачивании, инспекции и логировании ошибок. CX Codex +1 43 400установок golang-samber-oops samber Скилл добавляет в Claude Code, Cursor и другие IDE знание о samber/oops — библиотеке для структурированной обработки ошибок в Go с контекстом, стек-трейсами, кодами ошибок и сообщениями для пользователя. CX Codex +1 38 200установок error-handling-patterns Seth Hobson Скилл помогает проектировать обработку ошибок: исключения, Result-типы, передачу контекста и graceful degradation. Пригодится для API и отладки сбоев. CX Codex 22 957установок

Рядом в теме «Код-ревью и рефакторинг»

Всё по теме «Код-ревью и рефакторинг» →

Вопросы о principle-boundary-discipline

Как установить principle-boundary-discipline в Claude Code?

Одной командой: npx skills add backnotprop/pstack --skill principle-boundary-discipline -a claude-code. Файл окажется по пути ~/.claude/skills/principle-boundary-discipline/SKILL.md.

Что делает principle-boundary-discipline?

Задаёт агенту правило: валидация, сужение типов и обработка ошибок стоят на границах системы, а внутренний код доверяет типам. Бизнес-логику он уводит в чистые функции, которые тестируются без фреймворка.

На каких платформах работает скилл?

Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI и OpenCode. Для Copilot команда другая: gh skill install backnotprop/pstack principle-boundary-discipline.

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

SKILL.md · MIT
---
name: principle-boundary-discipline
description: "Apply when wiring validation, error handling, or framework adapters. Concentrate guards at system boundaries (CLI, config, network, external APIs); trust internal types and keep business logic in pure functions."
disable-model-invocation: true
---

# Boundary Discipline

Place validation, type narrowing, and error handling at system boundaries. Trust internal code unconditionally. Business logic lives in pure functions. The shell is thin and mechanical.

**Why:** Scattered validation is noisy, redundant, and gives a false sense of safety. Keep logic out of framework wiring so it can be tested without the framework.

**The pattern:**
- **At boundaries** (CLI args, config files, external APIs, network protocols): validate, return errors, handle defensively.
- **Inside the system:** typed data, error propagation, no re-validation. Trust the types.
- **Across the boundary.** Expose domain concepts, not the boundary's private representation. Keep general-purpose mechanism inside and special-purpose policy at the edge.

**Applications:**

Validation and error handling:
- Validate config at parse time (the boundary), not inside business logic
- Parse raw data into domain types at the boundary
- Do not re-export transport, storage, framework, or wire types through the public surface
- No redundant nil checks deep in call chains if the boundary already validated

Code organization:
- Business logic in pure functions with no framework dependencies
- Parse functions: pure transforms from raw bytes to typed state
- Prompt construction: structured state in, string out
- Scoring and assessment: pure transforms from state to results

**The tests:**
- "Is this data crossing a system boundary right now?" If not, validation is redundant.
- "Can this be a pure function that the shell just calls?" If yes, extract it.

© backnotprop · MIT · backnotprop/pstack

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

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

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