Overview
Kape Desktop CLI Integration
Overview
The Lightway CLI can establish VPN connections and is controlled through a command line interface. In order to establish connections additional information is needed - connection token and location information - which can be retrieved via the Kape Client SDK and needs to be handed over to the Lightway CLI.
The Lightway CLI needs elevated rights to perform its tasks (e.g. establish network connections, maintain routes, etc) and therefore needs to be controlled from a service that runs with elevated rights.


Implementation responsibilities
Feature
3rd Party Client
Lightway CLI
Kape Client SDK / kp_client_sdk
Setup tun device
✅
Connect to VPN server
✅
Disconnect from VPN server
✅
Maintain VPN connection
✅
Reconnect on network change (or no network)
The client has to implement reconnection logic and detection of network changes and availability.
Reconnect on initial connection issue
The client has to monitor Lightway CLI statuses and implement reconnection logic if needed.
Retrieval and fetching of VPN locations/endpoints
The client has to implement the integration between Kape Client SDK and Lightway CLI.
✅
Determine the “best” VPN location for the user
Optional, implemented by the client.
Display the IP when connected to the VPN
Implemented by the client. As lightway uses multiple outgoing IPs and the server switches seamlessly between them for different services only one of the outgoing IPs can be determined and displayed.
User Authorization
Integration with Kape Client API. Handover of access token between Kape Client SDK and Lightway CLI.
✅
Connection Authentication
✅ via access token
Handle routing
✅
Handle DNS
✅
Min OS Support
macOS 10.13 / Windows 10
macOS 10.13 / Windows 10
Last updated