[P1] Add Saved Connection Profiles
- Dominant language
- C#
- Stars
- 3
- Forks
- 7
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 18
Description
## Feature Request
**Priority:** P1 (High)
### Description
CosmosDB Shell has no way to save, list, or switch between named connection profiles. Power users managing multiple accounts/environments must re-type connection strings each time.
### Comparable Features in Other Shells
- **sqlcmd**: `sqlcmd config` subcommands (`config view`, `config use-context`)
### Proposed Behavior
Add a `profile` or `config` command:
- `profile save ` — Save current connection as a named profile
- `profile list` — List saved profiles
- `profile use ` — Connect using a saved profile
- `profile delete ` — Remove a saved profile
- Store profiles securely (credential store integration or encrypted file)
### Example Usage
```
connect --connect "AccountEndpoint=..." --connect-mode direct
profile save prod-account
profile list
profile use dev-account
```
Contributor guide
Research direction
Start by reviewing the existing connect command and the shell's command-handling entry points, then compare the proposed profile save, list, use, and delete flows. Resolve how secure credential storage should work before implementation. Done means named profiles can be saved, listed, selected, and deleted without retyping connection strings.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- cli, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100