import ArgumentParser import CliClient import Dependencies struct EncryptCommand: AsyncParsableCommand { static let commandName = "encrypt" static let configuration = CommandConfiguration( commandName: commandName, abstract: createAbstract("Encrypt a vault file.") ) @OptionGroup var options: VaultOptions @Option( name: .shortAndLong, help: "Output file." ) var output: String? // FIX: mutating func run() async throws { @Dependency(\.cliClient) var cliClient var args = ["encrypt"] if let output { args.append(contentsOf: ["--output", output]) } try await cliClient.runVaultCommand( options.vaultOptions(arguments: args, configuration: nil) ) // try await runVault( // commandName: Self.commandName, // options: options, // args // ) } }