[PR #14] [CLOSED] feature: interactive setup wizard #9495

Closed
opened 2026-02-16 18:13:39 -05:00 by yindo · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/anomalyco/opencode/pull/14
Author: @l0gicgate
Created: 5/15/2025
Status: Closed

Base: devHead: feature/setup-dialog


📝 Commits (10+)

  • 6fad2f6 fix: typo
  • 25bac47 fix: add initialization logic for setup dialog
  • 92fac03 fix: split out bedrock models
  • 1a99269 feat: add setup complete and update logic
  • eff2322 feat: add setup dialog
  • d4648c2 fix: sort models by alphabetical order
  • 735ddc5 fix: add api key validation & blinking
  • 98de5ba refactor: extract setup in module
  • 08df5ec fix: tweak styles
  • 63d45c4 refactor: render help

📊 Changes

10 files changed (+994 additions, -29 deletions)

View changed files

📝 internal/app/app.go (+27 -4)
📝 internal/config/config.go (+12 -0)
internal/llm/agent/setup-agent.go (+57 -0)
📝 internal/llm/models/models.go (+84 -1)
internal/setup/setup.go (+69 -0)
📝 internal/tui/components/chat/editor.go (+12 -3)
internal/tui/components/dialog/setup.go (+427 -0)
internal/tui/components/llm/model-list.go (+113 -0)
internal/tui/components/llm/provider-list.go (+101 -0)
📝 internal/tui/tui.go (+92 -21)

📄 Description

Description

On first start, when .opencode.json does not exist, we prompt the user with the setup wizard:
CleanShot 2025-05-15 at 17 27 37@2x

Step 1: Select Provider
CleanShot 2025-05-15 at 17 28 00@2x

Step 2: Select Model
CleanShot 2025-05-15 at 17 28 15@2x

Step 3: Enter API Key
CleanShot 2025-05-15 at 17 28 27@2x

Demo

  1. Remove .opencode and .opencode.json from your home directory
  2. Run the app

Closes #7


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/anomalyco/opencode/pull/14 **Author:** [@l0gicgate](https://github.com/l0gicgate) **Created:** 5/15/2025 **Status:** ❌ Closed **Base:** `dev` ← **Head:** `feature/setup-dialog` --- ### 📝 Commits (10+) - [`6fad2f6`](https://github.com/anomalyco/opencode/commit/6fad2f61e8294f8e4ac9222e0af06ca27889118d) fix: typo - [`25bac47`](https://github.com/anomalyco/opencode/commit/25bac4722eae2156c4e52dee8e646f0539a98181) fix: add initialization logic for setup dialog - [`92fac03`](https://github.com/anomalyco/opencode/commit/92fac03830b71e4bd96df33ee2a1b464b02601ae) fix: split out bedrock models - [`1a99269`](https://github.com/anomalyco/opencode/commit/1a99269562582e1c25531e2230955ece4bb3e649) feat: add setup complete and update logic - [`eff2322`](https://github.com/anomalyco/opencode/commit/eff23225a83ab4e3389765fb9e1fd3beb35b6cfe) feat: add setup dialog - [`d4648c2`](https://github.com/anomalyco/opencode/commit/d4648c21cd281a899e1b4f6521b0e7a1db23bfb6) fix: sort models by alphabetical order - [`735ddc5`](https://github.com/anomalyco/opencode/commit/735ddc5d5411f6bb825a2a512b4777ffc4654e94) fix: add api key validation & blinking - [`98de5ba`](https://github.com/anomalyco/opencode/commit/98de5ba936848619fc763ec90e958d242f91260d) refactor: extract setup in module - [`08df5ec`](https://github.com/anomalyco/opencode/commit/08df5ec2599bbe4265d4cf5d4223ef07e5e5c1ea) fix: tweak styles - [`63d45c4`](https://github.com/anomalyco/opencode/commit/63d45c41170636a3b20f41778ecfef4f79df17d7) refactor: render help ### 📊 Changes **10 files changed** (+994 additions, -29 deletions) <details> <summary>View changed files</summary> 📝 `internal/app/app.go` (+27 -4) 📝 `internal/config/config.go` (+12 -0) ➕ `internal/llm/agent/setup-agent.go` (+57 -0) 📝 `internal/llm/models/models.go` (+84 -1) ➕ `internal/setup/setup.go` (+69 -0) 📝 `internal/tui/components/chat/editor.go` (+12 -3) ➕ `internal/tui/components/dialog/setup.go` (+427 -0) ➕ `internal/tui/components/llm/model-list.go` (+113 -0) ➕ `internal/tui/components/llm/provider-list.go` (+101 -0) 📝 `internal/tui/tui.go` (+92 -21) </details> ### 📄 Description ## Description On first start, when `.opencode.json` does not exist, we prompt the user with the setup wizard: ![CleanShot 2025-05-15 at 17 27 37@2x](https://github.com/user-attachments/assets/7a061661-35f8-4198-b6df-768d55df88dc) Step 1: Select Provider ![CleanShot 2025-05-15 at 17 28 00@2x](https://github.com/user-attachments/assets/eee52708-0587-449a-aa05-d7a2fd7507c3) Step 2: Select Model ![CleanShot 2025-05-15 at 17 28 15@2x](https://github.com/user-attachments/assets/e9eed7c9-7586-475a-a77d-6083b56e9a6c) Step 3: Enter API Key ![CleanShot 2025-05-15 at 17 28 27@2x](https://github.com/user-attachments/assets/e52ffc06-2cc1-4aed-a17f-31d87c2bdad1) ## Demo 1. Remove `.opencode` and `.opencode.json` from your home directory 2. Run the app Closes #7 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
yindo added the pull-request label 2026-02-16 18:13:39 -05:00
yindo closed this issue 2026-02-16 18:13:39 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: anomalyco/opencode#9495