Skip to content

feat: add Morph API key to setup wizard#146

Open
udhaya10 wants to merge 1 commit intoparcadei:mainfrom
udhaya10:feat/wizard-morph-api-key
Open

feat: add Morph API key to setup wizard#146
udhaya10 wants to merge 1 commit intoparcadei:mainfrom
udhaya10:feat/wizard-morph-api-key

Conversation

@udhaya10
Copy link
Copy Markdown

@udhaya10 udhaya10 commented Feb 15, 2026

Summary

Add Morph API key prompt to the setup wizard's prompt_api_keys() function.

Currently the wizard prompts for Perplexity, Nia, and Braintrust but skips Morph, which is needed by 3 skills.

Changes

  • prompt_api_keys() — add Morph API key (fast code editing/search) prompt
  • generate_env_file() — write MORPH_API_KEY to .env

Skills unlocked

Skill Impact when Morph missing
morph-apply Broken — cannot use fast AI file editing (10,500 tokens/sec)
morph-search Broken — cannot use WarpGrep fast search (20x faster)
implement_task Degraded — falls back to native Edit tool

API key from: https://www.morphllm.com

Test plan

  • Run wizard → Step 4 now shows Morph prompt
  • Enter key → verify MORPH_API_KEY=xxx appears in .env
  • Skip (Enter) → verify no MORPH_API_KEY line in .env

Ref #141

Summary by CodeRabbit

  • New Features
    • Added Morph API key configuration to the setup wizard, enabling users to provide and store their Morph API key during the initial setup process.

- Add Morph API key prompt to prompt_api_keys()
- Write MORPH_API_KEY to .env via generate_env_file()
- Needed by: morph-apply, morph-search, implement_task skills

Ref parcadei#141
@greptile-apps
Copy link
Copy Markdown

greptile-apps bot commented Feb 15, 2026

PR author is not in the allowed authors list.

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Feb 15, 2026

📝 Walkthrough

Walkthrough

The setup wizard script now collects an additional "morph" API key during the API keys prompt and writes the corresponding MORPH_API_KEY to the environment file when present.

Changes

Cohort / File(s) Summary
API Key Collection in Setup Wizard
opc/scripts/setup/wizard.py
Added "morph" API key collection to prompt_api_keys function and MORPH_API_KEY environment variable generation to generate_env_file function.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Possibly related issues

  • Continuous-Claude-v3#141: Addresses the same objective of collecting the "morph" API key and writing MORPH_API_KEY to the environment configuration.
🚥 Pre-merge checks | ✅ 4
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely summarizes the main change: adding Morph API key support to the setup wizard, which aligns perfectly with the changeset.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
Merge Conflict Detection ✅ Passed ✅ No merge conflicts detected when merging into main

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

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.

❤️ Share

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

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
opc/scripts/setup/wizard.py (1)

623-623: ⚠️ Potential issue | 🟡 Minor

Missing "morph" key in the default api_keys dict when the user skips API key configuration.

When the user declines to configure API keys, the fallback dict omits "morph", making its shape inconsistent with prompt_api_keys(). Not a runtime bug (.get("morph") returns None), but worth keeping consistent.

Proposed fix
-        api_keys = {"perplexity": "", "nia": "", "braintrust": ""}
+        api_keys = {"perplexity": "", "nia": "", "braintrust": "", "morph": ""}

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