Repository navigation
installer: detect AI provider keys; docs: add Cloud API key page - #123
Conversation
install.sh / install.ps1: after the interactive flow, check whether FINALRUN_API_KEY, ANTHROPIC_API_KEY, OPENAI_API_KEY, or GOOGLE_API_KEY is set in the shell environment. If any is set, print one "✓ <NAME> detected" line per key. If none is set, print a short block pointing to FinalRun Cloud (cloud.finalrun.app) and the BYOK env vars. CI mode is unchanged — the check only runs on the interactive path. mintlify-docs: add configuration/cloud-api-key.mdx with an embedded YouTube walkthrough (https://youtu.be/XDPef_yIbCU) and steps to grab a key and set FINALRUN_API_KEY. Cross-link from ai-providers.mdx. Add the new page to docs.json under the Configuration group. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
Warning Rate limit exceeded
To keep reviews running without waiting, you can enable usage-based add-on for your organization. This allows additional reviews beyond the hourly cap. Account admins can enable it under billing. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughDocumentation and installer enhancements were added to guide users through FinalRun Cloud API key configuration. A new docs page explains obtaining and configuring the API key, an informational note was added to the AI providers page, navigation was updated, and both installation scripts now include API key detection helpers that report configured provider keys and surface setup links. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
scripts/install.ps1 (1)
338-338: Optional: rename to satisfyPSUseSingularNouns.PSScriptAnalyzer flags
Test-ApiKeysbecause PowerShell convention prefers singular nouns for cmdlet/function names. Renaming toTest-ApiKey(and updating the call site at line 481) is a one-line change that clears the warning without altering behavior. Feel free to defer if you prefer the plural name for readability — the function does inspect a set of keys.♻️ Proposed rename
-function Test-ApiKeys { +function Test-ApiKey {Read-SkillsPrompt - Test-ApiKeys + Test-ApiKey Show-Summary -BinPath $binPath -RuntimeDir $runtimeDir -AndroidOk $androidOk -FinalRunDir $finalRunDir🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@scripts/install.ps1` at line 338, Rename the function Test-ApiKeys to the singular Test-ApiKey to satisfy PSUseSingularNouns; update the function declaration name and all call sites (e.g., the invocation referenced later in the script) to Test-ApiKey so behavior is unchanged; ensure any references in help, comments, or exports are also updated to avoid dangling references.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In `@scripts/install.ps1`:
- Line 338: Rename the function Test-ApiKeys to the singular Test-ApiKey to
satisfy PSUseSingularNouns; update the function declaration name and all call
sites (e.g., the invocation referenced later in the script) to Test-ApiKey so
behavior is unchanged; ensure any references in help, comments, or exports are
also updated to avoid dangling references.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 2d76b9ef-29ba-4e1e-80eb-79b502e22d26
📒 Files selected for processing (5)
mintlify-docs/configuration/ai-providers.mdxmintlify-docs/configuration/cloud-api-key.mdxmintlify-docs/docs.jsonscripts/install.ps1scripts/install.sh
Wrap the cloud signup URL and both docs URLs in OSC 8 hyperlink escapes so they're single-click in modern terminals (iTerm2, Terminal.app, Windows Terminal, kitty, alacritty, WezTerm, gnome-terminal). Older terminals strip the escapes and show the bare URL, so the change degrades cleanly. Also adds a Docs: link under the FinalRun Cloud option (mirrors the existing one for BYOK), and aligns "Sign up at" -> "Sign up:" so the two labels line up. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
OSC 8 hyperlinks aren't supported by macOS Terminal.app, which is the most common terminal for the target audience. Plain URL text is auto-detected as clickable (cmd-click on macOS, ctrl-click on Windows/Linux) by every modern terminal — Terminal.app, iTerm2, VS Code, Windows Terminal, gnome-terminal, kitty, alacritty, WezTerm — so dropping the OSC 8 wrapping is universally compatible at the cost of a minor styling difference in iTerm2/etc. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Wrap each URL in ANSI underline (ESC[4m / ESC[24m). Universally supported by Terminal.app, iTerm2, VS Code, Windows Terminal, and conhost — much wider than OSC 8. Click activation still works via each terminal's native URL detection (cmd-click on macOS, ctrl-click on Win/Linux). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Summary
After the interactive install path, the installer now checks the shell environment for
FINALRUN_API_KEY,ANTHROPIC_API_KEY,OPENAI_API_KEY, andGOOGLE_API_KEYand prints one of two outcomes:✓ <NAME> detectedline per key.cloud.finalrun.app, $5 starting credit) and listing the three BYOK provider env vars with example model prefixes, plus a docs link.CI mode (
--ci/-CI/CI=1/FINALRUN_NON_INTERACTIVE) is unchanged; the check only runs on the interactive path. The check never echoes a key value, never validates against the provider, and never blocks install.Also adds a new docs page covering how to obtain a FinalRun Cloud key, with the walkthrough video embedded.
Changes
scripts/install.sh— newcheck_api_keysstep betweenprompt_skillsandprint_summary. Reuses existinginfo/ok/warnhelpers.scripts/install.ps1— equivalentTest-ApiKeysstep betweenRead-SkillsPromptandShow-Summary. Uses[Environment]::GetEnvironmentVariableso it works on PS 5.1 and 7.mintlify-docs/configuration/cloud-api-key.mdx(new) — sign-up steps, embedded YouTube walkthrough (https://youtu.be/XDPef_yIbCU), and the three ways to setFINALRUN_API_KEY.mintlify-docs/configuration/ai-providers.mdx— adds a<Note>cross-linking to the new page.mintlify-docs/docs.json— addsconfiguration/cloud-api-keyto the Configuration nav group.Test plan
bash scripts/install.shinteractively with no keys set → "No API key detected" block prints with the cloud + BYOK guidance.ANTHROPIC_API_KEYset → single✓ ANTHROPIC_API_KEY detectedline.FINALRUN_API_KEYandGOOGLE_API_KEYboth set → both detected lines.--ci(or underCI=1) → installer exits before the check; output unchanged.install.ps1interactively on Windows for the same three states.🤖 Generated with Claude Code
Summary by CodeRabbit
Documentation
New Features