Skip to content

Improvement: Make kdm config setup the Default Configuration Flow #24

@utkarsh232005

Description

@utkarsh232005

Summary

Currently, KDM provides two different configuration methods:

  1. Interactive configuration flow:

    kdm config setup
  2. Direct credential configuration:

    kdm config set <credentials>

Having multiple configuration approaches is creating confusion among users, especially new users who are unsure which method should be used for proper setup.

To simplify the onboarding experience and maintain consistency, the default configuration workflow should be migrated entirely to the interactive kdm config setup flow.


Problem

Users currently face confusion because:

  • There are multiple ways to configure the same service
  • The direct config set command requires users to already know:
    • Required credentials
    • Correct key names
    • Input formats
  • Interactive guidance is missing in direct configuration mode
  • Documentation becomes harder to maintain due to multiple setup approaches
  • Support requests increase because users misconfigure credentials

Example confusion:

kdm config set discord webhook_url=...

vs

kdm config setup

Users are unclear about:

  • Which command is recommended
  • Which flow is officially supported
  • Which method stores credentials correctly

Proposed Solution

Make the interactive setup flow the primary and default configuration experience.

Recommended Changes

  • Deprecate manual credential-based setup commands
  • Redirect users toward:
    kdm config setup
  • Add guided prompts for all supported services
  • Provide credential generation instructions during setup
  • Standardize configuration storage and validation logic

Suggested CLI Behavior

Current

kdm config set discord webhook_url=...

Proposed

kdm config setup

Interactive flow:

Select Service:
> Discord

Then:

Discord Setup Instructions:

1. Open Discord
2. Go to Server Settings
3. Navigate to Integrations → Webhooks
4. Create a new webhook
5. Copy the webhook URL

Then:

Enter Discord Webhook URL:

Benefits

  • Cleaner and more beginner-friendly UX
  • Reduces setup-related confusion
  • Prevents invalid credential formatting
  • Easier documentation and maintenance
  • Consistent onboarding experience
  • Better scalability for future integrations

Additional Suggestions

  • Keep config set internally for advanced/debug usage only
  • Add validation during interactive input
  • Add support for reconfiguration/edit mode
  • Add setup completion confirmation messages

Expected Outcome

Users should have a single, guided, and consistent configuration experience using:

kdm config setup

This should become the officially recommended and default setup workflow across the project.

Metadata

Metadata

Type

No fields configured for Task.

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions