agentleFS
ccomkhjccomkhj/skills/first-principles/SKILL.md

first-principles

Skill10 starsChanged 19 days agoMITView on GitHub

Clarify a problem before planning through a brief, source-backed interview. Use when the user asks for first-principles thinking, wants to challenge assumptions, or wants to establish what actually needs solving before doing work. Produce an agreed problem frame and one next step, not an implementation plan.

30 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use second-order-thinking, inversion and 3 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • itzcullSkill

    second-order-thinking

    Use second-order thinking to examine consequences beyond immediate effects. Use when evaluating decisions across time horizons, asking what happens next, or avoiding short-sighted optimization.

    Also in 3 projects that use this

  • itzcullSkill

    inversion

    Use inversion to solve problems by reasoning backward from failure, bad outcomes, or the opposite of success. Use when identifying risks, running premortems, or escaping overly idealized thinking.

    Also in 3 projects that use this

  • Ingramradical235Skill

    pre-mortem

    Pre-mortem analysis, scenario planning, future state narratives, and contingency frameworks. Use before finalizing any Strategy Kernel, when planning major initiatives, or when preparing Plan B triggers.

    Also in 3 projects that use this

  • GoogleSkill

    tdd

    Test-driven development. Use when the user wants to build features or fix bugs test-first, mentions "red-green-refactor", or wants integration tests.

    Also in 3 projects that use this

  • MicrosoftSkill

    handoff

    Compact the current conversation into a handoff document for another agent to pick up.

    Also in 3 projects that use this

The file

We split this skill into the rules it gives an agent

7 rules. 0 are common, 7 are distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 21 edited versions we read keep these.

  • 7

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Read existing context first.

    line 13
  2. Distinctive:

    Ask one short, high-leverage question per turn, with at most one sentence of context.

    line 16
  3. Distinctive:

    Test the most consequential assumption: what supports it, what would disprove it, and what changes without it?

    line 17
  4. Distinctive:

    Update the frame after each answer.

    line 18
  5. Distinctive:

    Stop when the outcome, constraints, and consequential uncertainty are explicit, not when every design choice is settled.

    line 22
  6. Distinctive:

    Facts: Only source-supported claims.

    line 27
  7. Distinctive:

    Ask for one correction or confirmation of the frame before handing off.

    line 32

“Common” is measured: kept by at least 6 in 10 of the 21 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

First Principles

Establish the minimum justified premises needed to proceed. Challenge the frame, not every design decision.

Interview

  • Read existing context first. Separate the proposed solution from the beneficiary, desired outcome, and observable success. Do not invent targets.
  • Actively check factual premises against sources: connected documents, records, or code for internal claims; current primary web sources for external claims. Retrieve before asking questions that sources can answer. Keep confidential details out of public searches.
  • Cite evidence beside each factual claim. Never use model memory as verification. Check relevance and freshness; expose conflicting evidence. Label unsupported claims as user-reported, assumptions, or unknowns. Treat goals and preferences as user choices, not externally verifiable facts. Label deductions as inferences.
  • Ask one short, high-leverage question per turn, with at most one sentence of context. Ask only when the answer could change the outcome, a real constraint, or the next step. Do not repeat answered questions or ask the user to do retrievable research.
  • Test the most consequential assumption: what supports it, what would disprove it, and what changes without it? Distinguish hard constraints from preferences and inherited conventions. Offer tentative interpretations for correction without steering the user toward agreement.
  • Update the frame after each answer. Discard conclusions dependent on a corrected premise. Keep research focused on decision-changing claims; stop searching once adequately supported. When evidence is unavailable, state the gap rather than filling it.

Finish

Stop when the outcome, constraints, and consequential uncertainty are explicit, not when every design choice is settled. Keep unresolved items visible; uncertainty may make validation the next step.

Return about 100-150 words, excluding citations, using these labels:

  • Outcome: Who needs what change, and what would count as success?
  • Facts: Only source-supported claims; cite them, or state none verified.
  • Constraints: Genuine limits and their basis; distinguish preferences.
  • Assumptions / unknowns: Unsupported premises and decision-changing gaps.
  • Implication + next step: What follows from the premises, conditional where needed; exactly one proposed action or test.

Ask for one correction or confirmation of the frame before handing off. Never equate agreement with verification. Do not produce an implementation plan, execute the next step, or modify project files.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.