Skip to content

Update CLI to communicate with daemon via gRPC #5

@andhijeannot

Description

@andhijeannot

Overview

Refactor the CLI to communicate with maestrod daemon via gRPC instead of direct AppleScript execution.

Scope

Update the existing CLI implementation to use client-server architecture while maintaining the same user interface.

Implementation Requirements

CLI Client Updates (presentation/cli/)

  • Refactor command implementations to use gRPC client
  • Add daemon connection management
  • Implement automatic daemon discovery and connection
  • Add connection retry and fallback logic
  • Maintain existing command interface and output formats

Connection Management

  • Automatic daemon startup if not running
  • Connection pooling and reuse
  • Health check before command execution
  • Graceful degradation when daemon unavailable
  • Certificate-based authentication

Success Criteria

  • All existing CLI commands work via daemon
  • Performance meets <100ms target for basic commands
  • Connection handling is robust and automatic
  • Error messages are clear and actionable
  • Certificate authentication works seamlessly
  • Session management integrates properly
  • Backward compatibility maintained
  • JSON output format preserved

Metadata

Metadata

Assignees

No one assigned

    Labels

    cliCLI implementationenhancementNew feature or requestv0.2.0Version 0.2.0 milestone issues

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions