Projects

Conceptual

Attaching repositories, learning conventions and scoping changes.

A project binds a repository, an environment definition and a convention profile so every run starts from the same understanding of how your codebase works.

Convention discovery#

On first attachment, Pimsy performs a read-only survey and writes the result into project memory. The survey is refreshed when it detects drift.

  • Package manager, lockfile, runtime versions and scripts.
  • Test framework, how the suite is invoked, and how long it takes.
  • Lint and formatting configuration, including rules that are enforced in CI.
  • Directory conventions, module boundaries and naming patterns inferred from existing code.
  • Error-handling, logging and dependency-injection patterns actually used in the codebase.
ts
const project = await pimsy.projects.create({
  name: class="tok-str">"checkout-service",
  repository: { provider: class="tok-str">"github", slug: class="tok-str">"acme/checkout", defaultBranch: class="tok-str">"main" },
  environment: { class: class="tok-str">"standard", runtime: class="tok-str">"node@class="tok-num">22", setup: [class="tok-str">"pnpm install --frozen-lockfile"] },
  policy: {
    protectedPaths: [class="tok-str">"infra/**", class="tok-str">".github/workflows/**"],
    requireTests: true,
    maxDiffLines: class="tok-num">600
  }
});

Last updated 2026-09-02