codeburn/docs/providers/omp.md
Resham Joshi 6746ecc22f
Add CONTRIBUTING.md, docs/architecture.md, and per-provider docs (#284)
Document the contributor onboarding path:
- CONTRIBUTING.md: setup, npm scripts, coding conventions, PR process,
  the block-claude-coauthor enforcement, and the five providers without
  test coverage today (claude, gemini, goose, qwen, antigravity).
- docs/architecture.md: 12-command CLI surface, parser pipeline, three
  cache layers, 14 optimize detectors, and the mac / gnome / build
  layouts with cited line numbers.
- docs/providers/: one file per provider (17 providers plus the shared
  vscode-cline-parser helper). Each covers data path, storage format,
  caching, dedup key, quirks, and a "when fixing a bug here" checklist.

Also fix two pre-existing documentation issues surfaced while writing
the new docs:
- RELEASING.md claimed GitHub Actions auto-publishes the CLI when a
  v* tag is pushed. There is no such workflow; CLI publishing is
  manual via npm publish. Updated the CLI section to reflect reality
  and kept the menubar (mac-v* tag) automation accurate.
- .gitignore had CLAUDE.md unanchored, which on case-insensitive
  filesystems also matched docs/providers/claude.md. Anchored to
  /CLAUDE.md so the root-level memory file stays ignored without
  affecting subdirectory docs.

All cited file paths, line numbers, function names, and test counts
were verified against current code (41 test files, 558 tests passing).
2026-05-09 18:39:41 -07:00

1 KiB

OMP

OMP CLI. Same parser as Pi, different data directory.

  • Source: src/providers/pi.ts (the omp export)
  • Loading: eager (src/providers/index.ts:9)
  • Test: tests/providers/omp.test.ts (225 lines)

Where it reads from

~/.omp/agent/sessions/ (pi.ts:59-61).

Storage format

JSONL, identical schema to Pi.

Caching

None.

Deduplication

Identical to Pi: <provider>:<path>:<responseId> with timestamp / line-index fallbacks (pi.ts:164).

Quirks

  • OMP and Pi share the same createParser function. The provider object differs only in name, displayName, and the discovery directory.
  • If OMP and Pi diverge in a future release, do not copy-paste the parser. Add a discriminator to createParser and branch.

When fixing a bug here

  1. Check if the bug also reproduces against Pi. If yes, fix both with one change; the parser is shared.
  2. If the bug is OMP-specific, the right fix is usually to pass an option into createParser rather than to fork the file.
  3. Read pi.md for the parser-level details.