Craig saas improvements - #1511
Merged
Merged
Conversation
- Modified SSL certificate detection to prefer system CA store over certifi bundle - Added support for KEEPER_SSL_CERT_FILE environment variable for configuration - Enables compatibility with corporate SSL inspection proxies like Zscaler - Maintains backward compatibility with existing installations - Includes automatic detection of system certificate paths on macOS and Linux This resolves issues where GitHub API calls (and other HTTPS requests) would fail in corporate environments that use SSL inspection proxies.
- Added ssl_aware_get() utility function that uses system CA certificates - Updated all PAM SaaS direct requests.get() calls to use SSL-aware requests - Fixes SSL errors with corporate proxies like Zscaler when downloading plugins - Ensures consistent SSL certificate handling across all HTTP requests This resolves SSL certificate verification errors when downloading SaaS catalog and plugin files from GitHub objects.githubusercontent.com in corporate environments with SSL inspection proxies.
- Updated SSL certificate selection to prefer Homebrew CA bundle on macOS - Homebrew certificates (/opt/homebrew/etc/ca-certificates/cert.pem) work better with corporate SSL inspection proxies like Zscaler - Fixes objects.githubusercontent.com SSL verification errors - Maintains fallback to system certificates for non-Homebrew environments This resolves the specific SSL certificate verification issues with GitHub asset downloads in corporate environments using SSL inspection.
- Removed logging calls from utils.py that were interfering with main logging config - Moved SSL certificate logging to after logging configuration is set up - Changed warning messages to use stderr print instead of logging - Prevents INFO:root messages from appearing in normal command output - SSL certificate functionality remains unchanged This resolves the issue where SSL certificate changes were causing unwanted debug output to appear in normal command execution.
Features added: - Line continuation support using backslash (\) in CLI commands - Enhanced argument parsing with whitespace normalization - Empty field filtering to handle copy-paste issues gracefully - Comprehensive unit tests for line continuation functionality Documentation improvements: - Complete record-add command documentation with 200+ examples - Covers all record types (login, contact, bankCard, etc.) - Shows correct syntax: dot notation, $JSON:, $GEN, file attachments - Includes record-update comparison and self-destruct features - Provides troubleshooting and best practices Technical details: - Enhanced read_command_with_continuation() function in cli.py - Added empty string filtering in record_edit.py commands - Comprehensive test coverage for edge cases - Handles trailing spaces and formatting issues from copy-paste Fixes user experience issues with multi-line commands and provides complete reference documentation for record management.
sk-keeper
approved these changes
Jul 1, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overview
This PR adds line continuation support to Keeper Commander CLI and provides comprehensive documentation for the
record-addcommand.Features Added
🔗 Line Continuation Support
\) line continuation in CLI commands...to indicate multi-line mode📚 Comprehensive Documentation
record-adddocumentation with 200+ examples$JSON:,$GEN, file attachmentsrecord-updatecommandTechnical Changes
keepercommander/cli.pyread_command_with_continuation()functionkeepercommander/commands/record_edit.pyrecord-addandrecord-updateunit-tests/test_cli.pyRECORD_ADD_DOCUMENTATION.mdUser Experience Improvements
✅ Fixed: Multi-line commands now work reliably
✅ Fixed: Copy-paste from documentation no longer fails
✅ Added: Clear visual feedback with continuation prompts
✅ Added: Complete reference documentation
✅ Added: Troubleshooting guide for common issues
Testing
Examples
Before (would fail):
After (works perfectly):
record-add -t "Gmail Account" -rt login \ login=john.doe@gmail.com \ password=SecurePass123 \ url=https://accounts.google.comDocumentation Coverage