Skip to content

docs: reconcile README, /repi/docs, CLAUDE.md with config-only flow#42

Merged
VarunGitGood merged 1 commit into
mainfrom
docs/sync-install-flow
May 30, 2026
Merged

docs: reconcile README, /repi/docs, CLAUDE.md with config-only flow#42
VarunGitGood merged 1 commit into
mainfrom
docs/sync-install-flow

Conversation

@VarunGitGood
Copy link
Copy Markdown
Owner

Summary

The three install-facing docs disagreed with the code after PR #40 merged. This sweeps them so a new user lands on consistent instructions whether they read the README, hit `/repi/docs`, or pair with Claude Code via CLAUDE.md.

README

  • "Run with Docker (quickstart)": replaced the `--profile all-in-one` invocation (gone) with plain `docker compose up -d`. Documents the entrypoint-seeds-config-on-first-start flow, the volume persistence semantics (`down` keeps, `down -v` wipes), and the "supply key via UI" first-run experience.
  • "Configuration": dropped the misleading "shell env overrides config.json" line — `config.json` is the sole source now. Updated the legacy-checkout note to mention root `.env` too.
  • "Environment Variables" section renamed to "Configuration keys". Added a `LOG_LEVEL` row. Noted the docker-aware defaults for `DATABASE_URL` / `REDIS_URL`.

CLAUDE.md

  • "Commands": split into Path 1a (contributor, `uv run` flow) and Path 1b (docker compose up against the published image), each with a one-liner description.
  • Architecture tree: corrected `core/config.py` and `llm/factory.py` comments (no env reads anymore); called out lazy ST in `core/container.py`.
  • "Configuration": rewrote the precedence paragraph. Documents `settings_customise_sources`, the two ways the file gets seeded (host vs docker), the partial-merge semantics of `PUT /config`, and the PUT-as-PATCH TODO.

/repi/docs page (web/app/repi/docs/page.tsx)

  • Quickstart step 2: "writes .env" → "writes .repi/config.json".
  • Multi-LLM feature card: dropped "single environment variable", replaced with "one line of .repi/config.json (or one click in the UI)".
  • Configuration section subtitle: "Set via env vars or .env" → "All settings live in .repi/config.json; env / .env intentionally ignored."
  • Config table: added `LOG_LEVEL` row; renamed "Variable" column to "Key".
  • Navbar + footer link labels: "Env Vars" → "Config". Anchors stay `#env-vars` to keep external links working.

Test plan

  • `uv run pytest tests/ -q` — 74/74 pass
  • `tsc --noEmit` clean (web/)
  • Visually scanned all three docs for remaining `.env` / "env var" references; only the deliberately-ignored mentions remain (e.g. "env vars are intentionally ignored")

The three docs disagreed with the code after the PR #40 merge. Sweep
them so a new user lands on consistent instructions across the README,
the marketing/docs page, and the agent-facing CLAUDE.md.

README

- "Run with Docker (quickstart)": replace the all-in-one-profile
  invocation with plain `docker compose up -d`. Document the
  entrypoint-seeds-config-on-first-start flow, the volume persistence
  semantics (`down` keeps, `down -v` wipes), and the "supply key via
  UI" first-run experience.
- "Configuration": drop the "shell env overrides config.json" line.
  config.json is the sole source; `.env` is no longer read. Update the
  legacy-checkout note to mention root `.env` too.
- "Environment Variables" → "Configuration keys": rename the section
  to match reality, lead with "all keys live in .repi/config.json",
  add LOG_LEVEL row, add docker-default note on DATABASE_URL /
  REDIS_URL, fold the per-provider key names into one row.

CLAUDE.md

- "Commands": split into Path 1a (contributor) and Path 1b (docker
  compose up against the published image), each with a one-liner
  description.
- Architecture tree: correct the `core/config.py` and `llm/factory.py`
  comments (no env reads anymore); call out lazy ST in
  `core/container.py`.
- "Configuration": rewrite the precedence paragraph. config.json is
  the sole source via `settings_customise_sources`. Document the two
  ways the file gets seeded (host vs docker), the partial-merge
  semantics of `PUT /config`, and the PUT-as-PATCH TODO. Add LOG_LEVEL
  to the optional list, note the docker-aware DATABASE_URL/REDIS_URL
  defaults.

/repi/docs page (web/app/repi/docs/page.tsx)

- Quickstart step 2 note: "writes .env" → "writes .repi/config.json".
- Multi-LLM feature card: drop "single environment variable", replace
  with "one line of .repi/config.json (or one click in the UI)".
- Configuration section subtitle: replace "Set via env vars or .env"
  with "All settings live in .repi/config.json; env / .env intentionally
  ignored."
- Config table: add LOG_LEVEL row; rename "Variable" column to "Key".
- Navbar + footer link labels: "Env Vars" → "Config". Anchors stay
  `#env-vars` to keep external links working.

Verified: 74/74 tests still pass; `tsc --noEmit` clean.
@vercel
Copy link
Copy Markdown

vercel Bot commented May 30, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
repi Ready Ready Preview, Comment May 30, 2026 1:23pm

@VarunGitGood VarunGitGood merged commit 6309816 into main May 30, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant