Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion opc/scripts/setup/wizard.py
Original file line number Diff line number Diff line change
Expand Up @@ -407,19 +407,21 @@ async def prompt_api_keys() -> dict[str, str]:
"""Prompt user for optional API keys.

Returns:
dict with keys: perplexity, nia, braintrust
dict with keys: perplexity, nia, braintrust, morph
"""
console.print("\n[bold]API Keys (optional)[/bold]")
console.print("Press Enter to skip any key you don't have.\n")

perplexity = Prompt.ask("Perplexity API key (web search)", default="")
nia = Prompt.ask("Nia API key (documentation search)", default="")
braintrust = Prompt.ask("Braintrust API key (observability)", default="")
morph = Prompt.ask("Morph API key (fast code editing/search)", default="")

return {
"perplexity": perplexity,
"nia": nia,
"braintrust": braintrust,
"morph": morph,
}


Expand Down Expand Up @@ -500,6 +502,8 @@ def generate_env_file(config: dict[str, Any], env_path: Path) -> None:
lines.append(f"NIA_API_KEY={api_keys['nia']}")
if api_keys.get("braintrust"):
lines.append(f"BRAINTRUST_API_KEY={api_keys['braintrust']}")
if api_keys.get("morph"):
lines.append(f"MORPH_API_KEY={api_keys['morph']}")
lines.append("")

# Write file
Expand Down