Skip to content

Latest commit

 

History

History
14 lines (10 loc) · 1.4 KB

AGENTS.md

File metadata and controls

14 lines (10 loc) · 1.4 KB

Working in this repository

Branches: use lane

Every change happens in a lane, never in the main checkout and never in a bare git worktree add.

  1. lane new <name>, then work in the tree it prints (.lane/trees/<name>). lane clones ignored files by reflink, so node_modules and the native build scratch in native2/.build come along without a reinstall or refetch.
  2. lane why <path> before editing a file, and keep what its notes say still true.
  3. Commit. Record a constraint another agent would otherwise rediscover with a Why: <path> | <note> trailer (see .agents/skills/lane/SKILL.md). Don't use trailers to summarize the change.
  4. lane check, and confirm, replace or retire every stale note.
  5. lane push, then gh pr create, and squash-merge the PR.
  6. In the main checkout: git pull --ff-only, then lane prune --dry-run. Prune misses lanes whose PRs were squash-merged, so remove a merged lane with lane rm <name>.

npm run dev-app builds and launches the one dev copy of the app; see docs/build.md. All native code is the Swift package in native2/ (see native2/README.md); swift test --package-path native2 runs its tests without the desktop. A tool's description and schema live in native2/Sources/DesktopProtocol/ContractTools.swift: run npm run contract after changing them, which regenerates src/contract.ts, what embedders import as /tools.