Skip to content

feat(onboard): add missing LLM providers and channels#99

Closed
thieung wants to merge 1 commit intonextlevelbuilder:mainfrom
thieung:feat/onboard-missing-providers-channels
Closed

feat(onboard): add missing LLM providers and channels#99
thieung wants to merge 1 commit intonextlevelbuilder:mainfrom
thieung:feat/onboard-missing-providers-channels

Conversation

@thieung
Copy link
Contributor

@thieung thieung commented Mar 9, 2026

Summary

  • Add DashScope (Alibaba Cloud Coding Plan — Qwen API) and Bailian (Alibaba Cloud Model Studio) to onboard wizard with API key handling, env file export, and provider resolution
  • Add Discord, Slack, WhatsApp, and Zalo Personal channels to onboard with credential prompts, validation, config application, and secret management
  • Rename Feishu/Lark → Larksuite in channel options
  • Bump filterThreshold from 5 → 10 so the 7-item channel list renders normally without type-to-filter mode

Changes

cmd/onboard.go: Add 2 providers to providerMap + providerOptions, add 4 channels to selection/pre-fill/validation/config/secrets/summary
cmd/onboard_helpers.go: Add dashscope/bailian cases in applyProviderAPIKey(), add Discord/Slack env vars in onboardWriteEnvFile()
cmd/onboard_resolve.go: Add dashscope/bailian cases in resolveProviderAPIKey() + resolveProviderAPIBase()
cmd/prompt.go: Bump filterThreshold 5 → 10

Test plan

  • Run ./goclaw onboard and verify all 15 providers appear in selection
  • Verify all 7 channels appear and can be toggled with space/x
  • Select Discord/Slack/WhatsApp and verify credential prompts appear
  • Verify .env.local contains correct env vars for new providers/channels
  • Verify config.json does not contain secrets for new channels

Add DashScope (Alibaba Cloud Coding Plan) and Bailian (Alibaba Cloud Model Studio)
to onboard provider selection, API key handling, and env file generation.

Add Discord, Slack, WhatsApp, and Zalo Personal to onboard channel selection
with appropriate credential prompts, validation, config application, and
secret management.

Rename Feishu/Lark to Larksuite in channel options.
Bump filterThreshold from 5 to 10 so channels list renders without
type-to-filter mode.
Copy link
Contributor

@viettranx viettranx left a comment

Choose a reason for hiding this comment

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

Review: Request Changes

Critical: PR is unmergeable — stale branch

This PR was branched before 3187196 (refactor(onboard): simplify to DB + keys only, delegate setup to web UI), which removed the full onboard wizard. Current main has a simplified onboard.go (~177 lines, DB+keys only) and delegates provider/channel setup to the web UI.

Files affected:

  • cmd/onboard.go — completely rewritten on main (old wizard removed)
  • cmd/onboard_resolve.godeleted on main
  • cmd/onboard_helpers.go — signature changed (onboardWriteEnvFile now takes (path, dsn, token, key))

Recommended approach: Instead of the full wizard, add new providers/channels to cmd/onboard_managed.godefaultPlaceholderProviders (same pattern as PR #102 for Z.ai). Channel config is now handled via the web UI.


Bug: DashScope API base URL wrong region

In resolveProviderAPIBase():

case "dashscope":
    return "https://dashscope.aliyuncs.com/compatible-mode/v1"

Should be https://dashscope-intl.aliyuncs.com/compatible-mode/v1 (with -intl), matching gateway_providers.go and onboard_managed.go.


Minor issues

  1. Zalo Personal — no credential prompt, no validation. Every other channel has both. If it needs credentials at runtime, this silently fails.

  2. WhatsApp bridge URL not exported to .env.local — Discord/Slack tokens are written to env file, but WhatsApp's BridgeURL is not. Inconsistent.


Please rebase onto current main and adapt to the new onboard architecture. Happy to help if you have questions about the new structure!

@thieung
Copy link
Contributor Author

thieung commented Mar 10, 2026

New refactor PR #126

@thieung thieung closed this Mar 10, 2026
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.

2 participants