⏳ This skill is pending AI review.

Scores will appear once the review pipeline completes.

version unknown

perch

@lakeday-org⭐ 347 stars

Choose how to use this skill

You do not need every option. Choose the path your AI client supports. The stable page stays the same; versioned files are immutable.

1. Native installer

This listing has no registered native installer command. Use the complete package or source fallback below, depending on what your client supports.

Do not guess an installer command or replace an existing version without reviewing the diff.

2. Complete package recommended

Download the ZIP when available. It includes SKILL.md plus the references, security notes and version metadata.

No complete ProSkills package is published for this listing yet.

3. Prompt-only

Copy the prompt above when the agent can read the stable page or when you want to adopt the workflow without installing a skill.

Need only the instruction file?

Download SKILL.md only if your client requires a single file. The complete ZIP is safer for a full installation because it preserves the references and release context.

No path installs or executes anything by itself. Your agent still needs access to the project files. Before updating, compare the installed version and review the diff.

—/10

// RATINGS

⭐GitHub Stars
⭐⭐⭐ 347 on GitHubGitHub ↗

Popular

🟢ProSkills Score
—
📍

Not yet listed on ClawHub or SkillsMP

// README

Semantic code linting with decision models.

Writing a rule, and perch catching this README with it

Getting started

npm install -g @lakeday/perch
perch login
perch scan

Run perch login to sign in to Perch Cloud. The first $5 is free. Since decisions are cached, running perch again on unchanged code is free. Perch Cloud also scans pull requests in CI, without writing any workflows.

$ perch scan
checkout.py
  ID        Line  Severity  Type    Confidence  Problem                     Method
  bdc67421    14  P1 (0.8)  defect         81%  wrong_order                 place_order
  ddc5c917    24  P1 (0.8)  defect         92%  inverted_condition          can_fulfil

cart.py
  ID        Line  Severity  Type    Confidence  Problem             Method
  287bfb9d     9  P1 (1.0)  defect         90%  off_by_one          subtotal
  80d6ebbb    29  P1 (1.4)  defect         89%  unhandled_null      cheapest

✖ 20 problems in 5 files, all failing

Run perch issues to see them worst first, and perch issues <id> to view one.

perch check <id> asks again after you think you've fixed it. It doesn't record anything.

Agent skills

perch setup claude-code   # .claude/skills/perch/SKILL.md
perch setup codex         # .codex/skills/perch/SKILL.md
perch setup pi            # .pi/skills/perch/SKILL.md
perch setup cursor        # .cursor/rules/perch.mdc

Semantic linting

You can extend perch with your own linting rules by adding them to perch.yaml:

- name: private-logs
  where: "src/**/*.ts"
  each: method
  ensure: >
    Keep passwords and access tokens out of logs.

Models

By default, Perch Cloud routes your questions to the best model for answering them. To ask a specific decision model, override the endpoint, key, and model:

export PERCH_BASE_URL=https://api.typesafe.ai/v1/systemone
export PERCH_API_KEY='paste-your-TypeSafe-key-here'
export PERCH_MODEL_ID=jev-latest
ModelPERCH_BASE_URLPERCH_MODEL_ID
Jevhttps://api.typesafe.ai/v1/systemonejev-latest
Liquid AI d1https://api.liquid.ai/decisions/v1/systemoned1:free
DiffusionGemma Jev on Beamhttps://app.beam.cloud/v1/models/jev/diffusiongemma/invokejev/diffusiongemma
SemiF on Beamhttps://app.beam.cloud/v1/models/jev/semif/invokejev/semif

Any endpoint that supports the System One format will work. Each model gets as many questions per request as it says it takes. For a model that doesn't say, set PERCH_MAX_QUESTIONS. See the benchmarks for a comparison.

Documentation

Getting startedInstall, sign in, the first scan.
Reading issuesThe list, the filters, closing what does not matter.
Semantic lintingwhere, each, sees, min, gate, and the longhand grammar.
Checking a changeperch check on work in progress.
perch in CIWhat a build can gate on, and what it cannot.
Command referenceEvery command, its flags, and what each exit code means.
Inside a scanThe graph walk, the questions, and how probabilities turn into a ranking.

Perch files

LocationContents
.perch/Generated scan results and cache files, alongside the committed files below. Use --out <directory> to choose another results location.
.perch/rules/Custom rules split across .yaml and .yml files. Commit these files.
.perch/closed.jsonlDismissed findings and their reasons. Commit this file.
perch.yamlCustom rules. Updated by perch rules add, edit, and remove.
.claude/, .codex/, .pi/, .cursor/Instructions installed for the selected assistant by perch setup <assistant>.

Development

npm run check     # lint, typecheck, test
npm run build     # bundle src/cli.js into dist/cli.mjs

To install perch from a checkout, run npm install && npm run build && npm link.

// HOW IT'S BUILT

KEY FILES

README.md

// REPO STATS

347 stars