{"id":37075464,"url":"https://github.com/sergey-trukhin/sshcld","last_synced_at":"2026-01-14T08:52:55.598Z","repository":{"id":61043248,"uuid":"538035828","full_name":"sergey-trukhin/sshcld","owner":"sergey-trukhin","description":"Get cloud servers list for your SSH client","archived":false,"fork":false,"pushed_at":"2022-11-05T08:34:44.000Z","size":48,"stargazers_count":2,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-27T10:50:02.841Z","etag":null,"topics":["aws","cloud","ssh"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sergey-trukhin.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-09-18T07:38:13.000Z","updated_at":"2023-02-19T12:15:55.000Z","dependencies_parsed_at":"2023-01-22T02:45:26.648Z","dependency_job_id":null,"html_url":"https://github.com/sergey-trukhin/sshcld","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/sergey-trukhin/sshcld","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sergey-trukhin%2Fsshcld","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sergey-trukhin%2Fsshcld/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sergey-trukhin%2Fsshcld/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sergey-trukhin%2Fsshcld/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sergey-trukhin","download_url":"https://codeload.github.com/sergey-trukhin/sshcld/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sergey-trukhin%2Fsshcld/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28414706,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T08:38:59.149Z","status":"ssl_error","status_checked_at":"2026-01-14T08:38:43.588Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws","cloud","ssh"],"created_at":"2026-01-14T08:52:54.884Z","updated_at":"2026-01-14T08:52:55.587Z","avatar_url":"https://github.com/sergey-trukhin.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# sshcld\nGet cloud servers list for your SSH client\n\nCurrently, the tool supports AWS cloud only. Support for other clouds is planned for future releases.\n\n## Installation\n```commandline\npip install sshcld\n```\n\n## Usage\n### Basic usage\nShow all cloud servers using default credentials and region\n```commandline\nsshcld\n```\n\n### Other options\n```commandline\nsshcld -r us-east-1,eu-central-1 -p prod -f department=marketing,application=nginx \\\n    -n webserver01 -i i-123456789 --aws --azure --ssh --ssm\n```\n- `-r`, `--region` : specify cloud region or comma-separated list of regions. Optionally, you can use \"all\" for checking all cloud regions.\n- `-p`, `--profile` : specify cloud config profile.\n- `-f`, `--filter` : show only cloud servers whose tags match the specified filter. Use comma to separate several tags. Can not be used with `--name` and `--id` options.\n- `-n`, `--name` : show only cloud servers matching the specified name. Can not be used with `--filter` and `--id` options.\n- `-i`, `--id` : show only cloud servers matching the specified name. Can not be used with `--filter` and `--name` options.\n- `--aws` : use AWS cloud. Can not be used with `--azure`.\n- `--azure` : use Azure cloud. Can not be used with `--aws`.\n- `--ssh` : show SSH connection string.\n- `--ssm` : show AWS SSM connection string.\n- `-h`, `--help` : show help message and exit.\n\n## Configuration\nCreate `sshcld.yaml` file in your home directory and override any default parameters\n```yaml\n---\n\n# What cloud server's tags should be displayed\n#printable_tags:\n#  - environment\n#  - department\n\n# What cloud should be used by default\ndefault_cloud: aws\n\n# Default region to gather cloud servers list\n#cloud_region: us-east-1\n\n# Default region to gather cloud servers list (can be one region or comma-separated list of regions)\n# Use 'all' to retrieve details from all cloud regions\n#cloud_profile: default\n\n# Change if you want to enable/disable SSH connection string column\n# Or if you want to change connection string's format\nssh_connection_string_enabled: True\nssh_connection_string: ssh %private_ip_address%\n\n# Change if you want to enable/disable AWS SSM connection string column\n# Or if you want to change connection string's format\naws_ssm_connection_string_enabled: False\naws_ssm_connection_string: aws ssm start-session --target %instance_id% --profile %cloud_profile%\n\n# Default filter if \"-f\" argument is not defined\n#filters: application=nginx,department=marketing,environment=prod\n```\n\nFor `ssh_connection_string` and `aws_ssm_connection_string` parameters you can use placeholders.\n- Several other parameters from this YAML file: `%cloud_region%`, `%cloud_profile%`\n- Several properties of the cloud server: `%instance_id%`, `%instance_name%`, `%private_ip_address%`, `%public_ip_address%`\n- Values of any tags assigned to the cloud server: `%tag_\u003ctag_name\u003e%`\n\n## Development\nAll tool's code is located in the `sshcld` directory.\nIn addition, tests for pytest are located in the `tests` directory.\n\nYou can test your code locally in a Docker container:\n```commandline\ncd tests\ndocker build -t sshcld_tests .\ncd ..\ndocker run -t --rm -v ${PWD}/:/app/ sshcld_tests\n```\n\n## Contribution\nYour contribution is very welcome. You can help in a variety of different ways:\n1. Create your pull request with bug fix or new feature\n2. Create an issue reporting any unexpected behavior in asking some new feature\n3. Test the tool in real live scenarios and provide your feedback via Issues\n4. Update/fix documentation via pull requests\n\n### Bug fixes and new features\nIt's strongly recommended to include tests for your changes to increase chances for the pull request to be reviewed and merged.\n\n### Issues\nPlease use the following format for reporting bugs:\n```text\n**Type**: bug\n**Version**: X.Y.Z\n**OS**: \u003cOS version\u003e\n**Python**: X.Y.Z\n\n**Prerequisites**:\n1. This should be enabled\n2. That should be disabled\n3. And one more prerequisite\n\n**Steps to reproduce**:\n1. Do something\n2. Do something else\n3. Check results\n\n**Expected results**:\n3. Results should contain something\n\n**Actual results**:\n3. Error message:\n\u003cpaste complete error message here\u003e\n\n**Additional details**:\nAnything else you want to add that may help to fix the issue.\n```\n\nPlease use the following format for asking new features:\n```text\n**Type**: feature request\n\n**Feature description**:\nAdd your detailed explanation about desired feature. You can include as much details as you want.\n\nWell explained features have more chances to be implemented.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsergey-trukhin%2Fsshcld","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsergey-trukhin%2Fsshcld","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsergey-trukhin%2Fsshcld/lists"}