Skills cursor plugins pstack

principle-boundary-discipline

Use it when:
Wiring validation, error handling or framework adapters.
It does:
Validates and handles errors defensively at CLI arguments, config files, external APIs and network protocols, then trusts typed data inside with no re-checks.
Two tests:
Is this data crossing a boundary right now? If not, validation is redundant. Can this be a pure function the shell calls? Then extract it.
Runs:
Only when you call it.

Skill 9 of 14 in the pstack bundle, after unslop and before principle-type-system-discipline.

TL;DR

One of pstack's principle skills, in Cursor's plugin repo. Scattered validation is noisy and redundant and gives a false sense of safety, and logic kept out of framework wiring can be tested without the framework. Config is validated when it's parsed, raw data becomes domain types at the boundary, and nil checks deep in call chains go when the boundary already checked. Across a boundary it exposes domain concepts, not the boundary's private representation: no transport, storage, framework or wire types re-exported through the public surface, general mechanism inside and special-purpose policy at the edge. Parsing, prompt construction and scoring are each pure transforms: raw bytes to typed state, structured state to a string, state to results.

Summarizes the skill at 8ecfb19.

npx skills add https://github.com/cursor/plugins --skill principle-boundary-discipline
Total Downloads
5,100 on skills.sh, Nov 9, 2026
Repo stars
15,776 cursor/plugins
First seen
May 24, 2026 on skills.sh
Weekly Downloads
320
-1% over the 8 weeks to Nov 9
Weekly values
Week toInstalls
Sep 21324
Sep 28360
Oct 5423
Oct 12334
Oct 19360
Oct 26470
Nov 2360
Nov 9320
Category

Test-first work, implementation from specs, git hygiene and scope control.

Everything for building software: planning, coding, debugging, design, frameworks, cloud, agents and skills.

Type

Knowledge and rules the agent applies while it works: best practices, design principles, API references.

Effect

Adds no side effects of its own. It shapes how the agent thinks, writes or reviews. Guidelines and routers are always effect:none, even when the task they support edits code.

Needs

Instructions only. Works in any agent that supports skills.

Publisher

Everyone else. Unverified vendor claims default to community.

Topics

SKILL.md

From cursor/plugins at 8ecfb19. Checked daily, last changed Nov 6, 2026.

Frontmatter
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.