Skepsis

Explore the codebase. Question the complexity.

Skepsis helps you understand the structure of an existing project, inspect the evidence behind every finding, and make changes with confidence.

See how it works

Five steps, in the order you actually need them

  1. Understand the project's structure and important flows

    Start from a folder or from a flow like checkout and reach the same code either way. The file inventory and the architecture overview are two views of one versioned model, so you never have to reconcile them.

  2. Find code that is harder to change safely than necessary

    Findings point at places where a small edit has wide reach, such as a controller that writes to three tables or a store that nine components mutate, so you know which edits need a wider test before you make them.

  3. Inspect the source evidence and the legitimate reasons for the design

    Read the exact lines a finding was built from, with what was measured kept apart from what a model judged, so you can tell a deliberate design from an accident before you touch it.

  4. Decide whether to simplify, investigate, accept, or defer

    Mark each finding accepted, intentional design or not a finding. Route findings to whoever owns that part of the code, ten files at a time with three borrowed from a neighbouring reviewer, so nobody only reviews their own work.

  5. Compare later scans to see what improved or regressed

    skepsis diff 12 14 lists what a later scan resolved, introduced or moved, so you can show that your change helped and catch what it disturbed.

then scan again

What a finding contains

Every sentence carries a provenance label, so you can see which claims were measured from source, which a model judged, and which are explanatory prose, before you act on any of them.

src/Services/OrderSync.phphighlines 41 to 63

Sync path branches on 14 configuration flags

measured
The method reads 14 distinct keys from config('sync.*') and branches on each of them.
judged
Eleven of the flags appear to toggle behaviour for retired marketplace integrations.
generated
A change to the default sync path has to be checked against every flag combination that still runs in production.

Start on your own machine

Two commands. The first builds the project model, the second opens this UI at a local address. Nothing is uploaded.

$ skepsis scan /path/to/project
scanned 1,284 files, 27 candidates, model #14
$ skepsis serve
serving storefront @ 3f9a2c1 on http://localhost:4174