Skip to content

Feature: Multi-Profile Selectionย #49

@yimsk

Description

@yimsk

Multi-Profile Selection ๐Ÿ‘ค

Enable selecting multiple AWS profiles for simultaneous querying across accounts.

Current Behavior

  • P key opens profile browser
  • Single selection only
  • Switches to selected profile

Proposed Behavior

โ”Œ Select Profiles โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ โ˜‘ SDK Default                          โ”‚
โ”‚ โ˜ Env/IMDS Only                        โ”‚
โ”‚ โ˜‘ production      (111111111111)       โ”‚
โ”‚ โ˜ staging         (222222222222)       โ”‚
โ”‚ โ˜ development     (333333333333)       โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
Space: Toggle | Enter: Apply | a: All | n: None

Features

  1. Multi-select UI: Space to toggle, checkboxes
  2. Parallel Fetch: Query selected profiles concurrently
  3. Profile/Account Column: Add columns to resource lists (ๆœซๅฐพใ€ใƒžใƒซใƒใƒ—ใƒญใƒ•ใ‚กใ‚คใƒซๆ™‚ใฎใฟ)

UX Flow

  1. Press P โ†’ Profile selector opens
  2. Space to toggle profiles (multi-select)
  3. Enter to apply
  4. Resources from all selected profiles displayed with Profile/Account columns

Implementation Tasks

  • ProfileSelector: single โ†’ multi-select
  • App state: selection ProfileSelection โ†’ selections []ProfileSelection
  • DAO: parallel fetch across profiles (handle different credentials)
  • Render: add Profile/Account columns (conditional)
  • Handle SSO/MFA considerations for multiple profiles

Security Considerations

  • Different profiles may have different auth mechanisms (SSO, MFA, IAM keys)
  • Need to handle credential refresh for each profile independently
  • Consider rate limiting across multiple accounts

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions