First-Principles Briefing Skill

SkillDocs & knowledge

First-principles briefing from technical documents. Use when: understanding why decisions were made, onboarding to feature reasoning, reviewing decision chains, explaining doc from first principles. Not for: PM/CTO summary (use project-brief), pre-doc analysis (use feasibility-study), code explanation (use codex-explain). Output: structured reasoning chain with sensitivity analysis.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the First-Principles Briefing Skill skill

What this skill tells your AI

The instructions your AI receives, as published by sd0xdev/sd0x-harness in skills/fp-brief/SKILL.md and read by ahel’s review.

Trigger

  • Keywords: first principles, fp brief, why was this decided, reasoning chain, decision sensitivity, explain decisions, assumption analysis, onboarding brief

When NOT to Use

ScenarioAlternative
PM/CTO executive summary (strip technical details)/project-brief
Pre-doc feasibility analysis (before writing spec)/feasibility-study
Code explanation at function/file level/codex-explain
Code architecture overview/code-explore
Simple document summaryAsk Claude directly

Command Signature

/fp-brief <doc-path> [--depth brief|normal|deep] [--verify off|codex] [--output <path>] [--no-save]
FlagDefaultDescription
<doc-path>RequiredSource markdown document path
--depthnormalOutput detail level
--verifyoffIndependent Codex reasoning verification
--outputSame dir, -fp-brief.md suffixCustom output path
--no-savefalsePrint to stdout instead of file

Workflow

sequenceDiagram
    participant U as User
    participant S as /fp-brief
    participant D as Source Doc
    participant O as Output File
    participant X as Codex (optional)

    U->>S: /fp-brief <doc-path> [--depth] [--verify]
    Note over S: Phase 1: Input Resolution
    S->>S: Validate path (repo boundary)
    S->>D: Read source document
    S->>S: Redaction scan (fail-safe)
    S->>S: Auto-detect format (hybrid)
    Note over S: Phase 2: First-Principles Extraction
    S->>S: Extract Root Problem (5-Why)
    S->>S: Build Assumptions Register
    S->>S: Build Reasoning Chain
    S->>S: Build Alternative Rejection Log
    S->>S: Build Decision Sensitivity
    S->>S: Identify Open Unknowns
    Note over S: Phase 3: Output Assembly
    S->>O: Write *-fp-brief.md
    alt --verify codex
        S->>X: Independent reasoning verification
        X-->>S: Verification Delta
        S->>O: Append Verification Delta
    end
    S-->>U: Report complete

Phase 1: Input Resolution

  1. Path validation: Normalize, reject .. traversal, enforce repo boundary
  2. Read source document
  3. Redaction scan: High-confidence secret patterns → abort; medium → mask [REDACTED]
  4. Format auto-detection: See references/detection-rules.md
  5. Select extraction template based on detected format

Phase 2: First-Principles Extraction

See references/extraction-guide.md for section-by-section heuristics.

SectionCore Question
Root ProblemWhat fundamental truth makes this problem unavoidable?
Assumptions RegisterWhat are we taking for granted, and why?
Reasoning ChainHow does each decision trace back to a principle?
Alternative Rejection LogWhy do other approaches violate our principles?
Decision SensitivityIf assumption X breaks, which decisions collapse?
Open UnknownsWhat don't we know, and what should we find out?

For long documents (>500 lines): split by ## headings, extract per-section, merge + dedup.

Phase 3: Output Assembly

  1. Apply depth filter (section inclusion matrix)
  2. Apply source citations (reference source doc section headings)
  3. Apply Evidence Insufficient Rule — never fabricate content for thin sections
  4. Write output file (or stdout if --no-save — which --verify codex rejects, see § Save Behavior)
  5. If --verify codex: dispatch verification per references/codex-verify-prompt.md

Depth Levels

LevelDescriptionSections Included
briefCore reasoning only (~500 words max)Root Problem (full), Assumptions (top 3), Reasoning Chain (key decisions), Sensitivity (top 3)
normalFull reasoning chain (~1500 words max)All 6 sections with citations
deepFull chain + analysis (~2500 words max)All 6 sections + challenge questions, evidence ratings, counterfactual analysis, risk-weighted unknowns

Verification Delta (section 7) appears only when --verify codex is used, at any depth level.

Length policy: These are upper bounds, not targets. If source doc is thin, output will be shorter. The Evidence Insufficient Rule applies: [Evidence insufficient — source doc lacks data for this section].

Output

See references/output-template.md for full template.

# First-Principles Briefing: <title>

> Source: <path> | Depth: <level> | Format: <type> | Generated: <timestamp>

## 1. Root Problem
## 2. Assumptions Register
## 3. Reasoning Chain
## 4. Alternative Rejection Log
## 5. Decision Sensitivity
## 6. Open Unknowns
## 7. Verification Delta (optional)

Save Behavior

ConditionOutput Path
DefaultSame directory as source, -fp-brief.md suffix
--output <path>Specified path
--no-savestdout only, no file written. Incompatible with --verify codex — refuse the combination and say why: the verification prompt is built around ${OUTPUT_PATH} and instructs Codex to cat that file, so with nothing on disk there is no subject to verify. Run them separately, or drop --no-save for the verified run

Example: docs/features/auth/2-tech-spec.mddocs/features/auth/2-tech-spec-fp-brief.md

Verification

  • Input path validated (repo boundary enforced)
  • Secret redaction scan executed
  • Format auto-detection result shown in output header
  • Each Reasoning Chain decision cites source section (Source: §<ref>)
  • Each Assumptions Register entry has confidence level
  • Decision Sensitivity maps assumptions to affected decisions
  • Evidence Insufficient markers used where source data is thin
  • Output length within depth-level upper bound
  • If --verify codex: Codex researched independently (per codex-invocation rules)

References

  • Output template: references/output-template.md
  • Detection rules: references/detection-rules.md
  • Extraction guide: references/extraction-guide.md
  • Codex verification: references/codex-verify-prompt.md

Examples

Input: /fp-brief docs/features/seek-verdict/2-tech-spec.md
Action: Read spec → detect tech-spec → extract 6 sections → write 2-tech-spec-fp-brief.md

Input: /fp-brief docs/features/auth/2-tech-spec.md --depth brief
Action: Read spec → extract Root Problem + top assumptions + key decisions + top sensitivity → brief output

Input: /fp-brief docs/features/auth/2-tech-spec.md --depth deep --verify codex
Action: Read spec → full extraction → Codex independent verification → write with Verification Delta

Input: /fp-brief notes/design-decisions.md --no-save
Action: Read doc → detect unknown format → generic extraction → print to stdout

Signals

GitHub stars
188
Forks
24
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
fp-brief
Source
github.com/sd0xdev/sd0x-harness