Skip to content

Review existing commands under agent-first composability philosophy #5

@menor

Description

@menor

Context

Sol should be an agent CLI - optimized for AI agents to consume and orchestrate. Humans can use the existing upsun CLI which is already optimized for human interaction.

Philosophy Shift

Instead of replicating the Upsun CLI, Sol should:

  1. Prioritize machine-readable output - JSON by default, no interactive prompts
  2. Keep commands minimal and composable - agents orchestrate multiple calls
  3. Optimize for speed - only fetch data the command directly needs
  4. Return IDs, not names - agents can resolve names via separate commands if needed
  5. No "convenience" flags - avoid --with-X patterns that fetch extra data

Review Checklist

Review existing commands against these principles:

  • auth:login - Is browser flow appropriate for agents? Consider API token as primary
  • auth:info - Good, returns structured data
  • project:list - Good after HAL link changes
  • project:info - Good
  • environment:list - Review if fetching extra data
  • environment:info - Review
  • ssh - Is this needed for agents? Or should agents use API endpoints?

Questions to Consider

  1. Should Sol support interactive browser login at all, or only API tokens?
  2. Should Sol implement commands that require user interaction (confirmations, prompts)?
  3. What commands do agents actually need vs what humans need?
  4. Should we remove/simplify commands that don't fit the agent-first model?

Related

  • Design philosophy documented in CLAUDE.md

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions