Skip to content

chore: lower the bar for local and agentic onboarding - #123

Merged
j-cadena-g merged 2 commits into
mainfrom
chore/dev-friendly-onboarding
Aug 11, 2026
Merged

chore: lower the bar for local and agentic onboarding#123
j-cadena-g merged 2 commits into
mainfrom
chore/dev-friendly-onboarding

Conversation

@j-cadena-g

Copy link
Copy Markdown
Owner

Summary

  • Make local first-run require only APP_ENV, APP_ORIGIN, and Clerk keys; Cloudflare IDs and VAPID are optional (dev:verify / run-vite-dev)
  • Document personal Clerk setup, 1Password soft-path (shell env fallback), invite-email limits, and operator-only Cursor Cloud Agents / Workers Builds
  • Add optional AGENT_LOGIN_EMAIL / AGENT_LOGIN_PASSWORD for agentic Clerk login via each developer’s 1Password Environment (never commit passwords)

Test plan

  • APP_ENV + APP_ORIGIN + Clerk only → pnpm run dev:verify passes (optional keys noted, not failed)
  • Missing Clerk key → dev:verify fails clearly
  • With AGENT_LOGIN_* in Environment: agent can sign in via Clerk UI and reach the app
  • Skim README Quick Start as a new contributor; confirm Cloud Agents section reads operator-only
  • pnpm exec vitest run scripts/lib/local-dev-secrets.test.ts

Require only Clerk + APP_* for first-run, document personal Environments and agent login vars, and fence operator-only Cursor/Workers paths.
@coderabbitai

coderabbitai Bot commented Aug 11, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: a9a0aacf-b3d3-4fb1-bdbf-f732c3c67a63

📥 Commits

Reviewing files that changed from the base of the PR and between ffa13d4 and 4a1166a.

📒 Files selected for processing (1)
  • README.md
📜 Recent review details
⏰ Context from checks skipped due to timeout. (3)
  • GitHub Check: Analyze (javascript-typescript)
  • GitHub Check: test
  • GitHub Check: lint-and-typecheck
🔇 Additional comments (5)
README.md (5)

103-129: LGTM!


139-151: LGTM!


173-173: LGTM!


241-241: LGTM!


270-305: LGTM!


📝 Walkthrough

Summary by CodeRabbit

  • Documentation

    • Clarified local development prerequisites and setup steps.
    • Documented required versus optional environment variables, including Clerk credentials.
    • Added guidance for Cursor Cloud Agents, invite codes, verification, and local shell configuration.
    • Updated security guidance for handling agent login credentials.
  • Bug Fixes

    • Improved development environment checks with clearer reporting for missing, optional, and unknown settings.
  • Tests

    • Added coverage for required, optional, and agent-login configuration validation.

Walkthrough

The pull request updates local development documentation, environment examples, secret classification, Vite startup checks, and environment verification. Required Clerk and application keys are separated from optional infrastructure and agent-login keys.

Changes

Local development environment

Layer / File(s) Summary
Secret classification contract
scripts/lib/local-dev-secrets.mjs, scripts/lib/local-dev-secrets.test.ts
Adds shared classification for required, optional, agentic, unknown, missing, and present secrets. Tests cover the main classifications.
Development validation integration
scripts/run-vite-dev.mjs, scripts/verify-dev-environment.mjs
Vite startup and environment verification reject unknown or missing required keys and report optional omissions separately.
Contributor setup guidance
CONTRIBUTING.md, README.md, SECURITY.md, apps/web/.dev.vars.example, apps/web/.op/refs.env.example
Documents Clerk setup, optional infrastructure values, shell variables, 1Password usage, Cursor Cloud Agent credentials, and secret-handling rules.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

Poem

A rabbit checks each secret key,
Required first, optional three.
Clerk opens the local door,
Agents keep their passwords secure.
Vite hops when checks are bright—
Local builds are set just right.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 33.33% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the main change: reducing local and agentic onboarding requirements.
Description check ✅ Passed The description directly explains the reduced onboarding requirements, documentation updates, optional agent credentials, and test plan.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/dev-friendly-onboarding
✨ Simplify code
  • Create PR with simplified code
  • Commit simplified code in branch chore/dev-friendly-onboarding

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@README.md`:
- Line 298: Update the ordered-list item in the README section to use the
configured `1.` prefix instead of `3.`, preserving the existing list content and
numbering behavior.
- Around line 300-304: Remove the README example that uses `op run --no-masking
-- printenv AGENT_LOGIN_EMAIL`; replace it with a safe browser-automation
invocation that passes both required credentials directly within `op run`,
without printing or disabling masking for secrets.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 5296c8d7-4165-4724-9234-9368a0627c11

📥 Commits

Reviewing files that changed from the base of the PR and between 6586b46 and ffa13d4.

📒 Files selected for processing (9)
  • CONTRIBUTING.md
  • README.md
  • SECURITY.md
  • apps/web/.dev.vars.example
  • apps/web/.op/refs.env.example
  • scripts/lib/local-dev-secrets.mjs
  • scripts/lib/local-dev-secrets.test.ts
  • scripts/run-vite-dev.mjs
  • scripts/verify-dev-environment.mjs
📜 Review details
⏰ Context from checks skipped due to timeout. (1)
  • GitHub Check: test
🧰 Additional context used
🪛 markdownlint-cli2 (0.23.2)
README.md

[warning] 298-298: Ordered list item prefix
Expected: 1; Actual: 3; Style: 1/1/1

(MD029, ol-prefix)

🔇 Additional comments (9)
scripts/lib/local-dev-secrets.mjs (1)

1-53: LGTM!

scripts/lib/local-dev-secrets.test.ts (1)

1-72: LGTM!

scripts/run-vite-dev.mjs (1)

15-15: LGTM!

Also applies to: 25-47

scripts/verify-dev-environment.mjs (1)

7-61: LGTM!

CONTRIBUTING.md (1)

19-59: LGTM!

README.md (1)

101-173: LGTM!

Also applies to: 241-241, 270-297, 306-310

SECURITY.md (1)

50-51: LGTM!

apps/web/.dev.vars.example (1)

6-46: LGTM!

apps/web/.op/refs.env.example (1)

9-11: LGTM!

Comment thread README.md Outdated
Comment thread README.md Outdated
Use markdownlint-compliant list prefixes and drop the unmasked printenv example.
@j-cadena-g
j-cadena-g merged commit acb6478 into main Aug 11, 2026
8 checks passed
@j-cadena-g
j-cadena-g deleted the chore/dev-friendly-onboarding branch August 11, 2026 22:39
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