Summary
Create an interactive CLI onboarding funnel that guides users through initial setup and configuration.
Description
When users first run ClawSwarm, they should be guided through an interactive setup process that collects necessary configuration and validates their environment.
Requirements
Interactive Prompts
Environment Validation
Configuration Management
CLI Command
Add new command: clawswarm init or clawswarm onboard
User Flow
$ clawswarm init
Welcome to ClawSwarm! 🦞
Let's get you set up.
Agent Name [ClawSwarm]: MyAgent
Agent Description: My custom AI agent for automation
Select Model:
1. gpt-4o
2. gpt-4o-mini (recommended)
3. claude-3-5-sonnet-20241022
4. claude-3-opus-20240229
5. Other
Choice [2]: 2
Checking environment variables...
✓ OPENAI_API_KEY: Set
✗ ANTHROPIC_API_KEY: Not set (optional)
✗ TELEGRAM_BOT_TOKEN: Not set (optional)
✓ GATEWAY_HOST: Set to [::]
✓ GATEWAY_PORT: Set to 50051
Configuration saved to .env
Setup complete! Run 'clawswarm run' to start your agent.
Benefits
- Improved first-time user experience
- Reduced setup friction
- Better validation of environment
- Clear guidance on missing requirements
- Saves time and reduces configuration errors
Acceptance Criteria
Technical Notes
- Use Python's
input() for prompts
- Consider using a library like
questionary or click for better UX
- Store config in
.env using python-dotenv
- Provide option to skip onboarding for CI/CD environments
Summary
Create an interactive CLI onboarding funnel that guides users through initial setup and configuration.
Description
When users first run ClawSwarm, they should be guided through an interactive setup process that collects necessary configuration and validates their environment.
Requirements
Interactive Prompts
Environment Validation
Configuration Management
.envfile.envfrom template if missingCLI Command
Add new command:
clawswarm initorclawswarm onboardUser Flow
Benefits
Acceptance Criteria
.envTechnical Notes
input()for promptsquestionaryorclickfor better UX.envusingpython-dotenv