principle-foundational-thinking

Guides structural decisions on data structures, scaffolding order, and concurrency before writing logic.

Updated Sep 2, 2026
One-click install
npx skills add https://github.com/jnyross/pstack-muse --skill principle-foundational-thinking-jnyross
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: principle-foundational-thinking
Source: https://github.com/jnyross/pstack-muse/tree/main/skills/principle-foundational-thinking
Command: npx skills add https://github.com/jnyross/pstack-muse --skill principle-foundational-thinking-jnyross

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Engineers often write logic before settling core data structures, leading to late-stage rewrites, premature abstractions, and unsafe shared state. This Skill provides a decision framework for getting foundations right before implementation begins. ## Core Features & Use Cases - Data Structures First: Prompts you to define core types early, trace access patterns, and choose structures matching dominant code paths. - Scaffold Sequencing: Orders work so CI, linting, test infrastructure, and shared types land before features, keeping commits small and single-purpose. - Concurrency Check: Asks what happens when another actor modifies shared state, and isolates state when the answer is not "nothing". - Use Case: Before starting a new service, apply this Skill to decide the core data model, sequence setup work before features, and identify shared state that needs isolation. ## Quick Start Ask the AI to apply foundational thinking to review the data structures and work sequencing for your next feature before writing any logic.

Frequently Asked Questions about principle-foundational-thinking

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I choose the right data structure before writing code?▼

Define core types early, trace every access pattern, and pick structures matching the dominant paths. A data-structure change late in a project is a rewrite, while early it is often a one-line diff.

What is scaffold-first development in software projects?▼

Scaffold-first means doing work that benefits every later phase first: CI, linting, test infrastructure, and shared types. Sequence setup before features and tests before fixes, keeping commits small and single-purpose.

When should I avoid creating an abstraction in code?▼

Avoid abstractions when you only have a few similar statements; three similar lines beat a premature abstraction. DRY the structure and data models, not every line, and prefer explicit code over clever code.

How do I decide if shared state is safe for concurrent actors?▼

Ask what happens if another actor modifies the state concurrently. If the answer is not "nothing", isolate the state so concurrent actors cannot interfere with each other.

When should I remove code before adding new foundations?▼

Subtraction comes before scaffolding: remove dead weight first, then lay foundations. Each increment should land a coherent abstraction or deepen an existing one rather than spreading special-case coordination across callers.