{"id":15501153,"url":"https://github.com/thingalon/pony-ssh","last_synced_at":"2025-06-14T23:31:51.164Z","repository":{"id":37920533,"uuid":"177260859","full_name":"thingalon/pony-ssh","owner":"thingalon","description":"vscode plugin for fast remote editing over ssh","archived":false,"fork":false,"pushed_at":"2024-08-10T03:22:59.000Z","size":680,"stargazers_count":31,"open_issues_count":13,"forks_count":4,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-10-19T16:26:31.363Z","etag":null,"topics":["caching","fast","ssh","ssh-client","vscode","vscode-exten"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","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/thingalon.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-03-23T07:56:36.000Z","updated_at":"2024-07-10T12:51:44.000Z","dependencies_parsed_at":"2024-08-07T17:07:33.983Z","dependency_job_id":null,"html_url":"https://github.com/thingalon/pony-ssh","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thingalon%2Fpony-ssh","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thingalon%2Fpony-ssh/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thingalon%2Fpony-ssh/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thingalon%2Fpony-ssh/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thingalon","download_url":"https://codeload.github.com/thingalon/pony-ssh/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248670515,"owners_count":21142899,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["caching","fast","ssh","ssh-client","vscode","vscode-exten"],"created_at":"2024-10-02T09:02:38.353Z","updated_at":"2025-04-13T05:40:34.480Z","avatar_url":"https://github.com/thingalon.png","language":"TypeScript","readme":"# Pony SSH\n\nPony SSH is a Visual Studio Code plugin which offers extremely fast file editing and remote filesystem watching via SSH.\n\n## Features\n\nPony SSH makes editing files over SSH fast and painless. It features:\n\n- **Blazingly fast** remote SSH editing\n- Automatic remote **filesystem watching**; changes to your remote filesystem are reflected locally automatically\n- **Encrypted local caching** for extremely fast and secure file access\n\n## Requirements\n\nPony SSH requires an SSH server with Python \u003e= 2.7 installed. Almost all Linux/Unix/OSX systems meet the requirements.\n\n## Setup\n\nSimply add a new `ponyssh.hosts` section to your `Settings.json` file, describing each remote system you would like to connect to. \n\nFor example:\n```\n  \"ponyssh.hosts\": { \n    \"my-host\": {\n       \"host\": \"my-host.example.com\",\n       \"username\": \"my-login\",\n       \"password\": true\n    },\n    \"another-host\": {\n       \"host\": \"another-host.example.com\",\n       \"username\": \"my-login\",\n       \"agent\": true\n    }\n  }\n```\n\nEach host can be configured with the following options: \n- `host` - **(Required)** Hostname or IP address to connect to.\n- `username` - **(Required)** Username for authentication.\n- `port` - Remote port to connect to. *Default: `22`*\n- `path` - Default path to open when connecting to this host. *Default: `~` (home dir)*\n- `password` - Specify your password, or set to `true` (without quotes) to prompt you for your password each time you connect. **Note:** Storing passwords in plaintext in your Settings file is insecure.\n- `agent` - Specify which SSH agent to use for connection, or enter `true` (without quotes) to use a sensible default. (see below)\n- `privateKey` - Your private key for authentication.\n- `privateKeyFile` - Specify a file containing your private key for authentication. eg: `~/.ssh/id_rsa`.\n- `passphrase` - Enter a passphrase for decrypting your private key. If left blank, Pony SSH will prompt you for a passphrase if needed. Set to `true` to force Pony SSH to always prompt for the passphrase.  **Note:** Storing passphrases in plaintext in your Settings file is insecure.\n- `python` - Specify the full path to your python installation on your remote host. *Default: Your system default python installation*\n- `shell` - Specify a shell to use when executing remote commands. Include any command line arguments needed to pass your shell a command to execute. Each command to execute will get appended to your shell string. eg: `sh -c` or `sudo sh -c`. *Default: `sh -c`*\n\n### About SSH Agents\n\nIn most cases, you can set the `agent` field to `true`, and let Pony SSH pick a sensible default value for you. On Windows, Pony SSH will auto-select Pageant, and on Linux/Unix/OSX systems it will select `$SSH_AUTH_SOCK`.\n\nYou can manually configure Pony SSH to use Pageant on Windows by setting your `agent` to `pageant`. Alternately, you can specify the path to your SSH auth socket, or the environment variable in which your SSH auth socket can be found. eg: `/foo/bar/my-socket`, or `$SSH_AUTH_SOCK`.\n\n### Example setups\n\nAuthentication using an SSH agent, opening `/var/www` by default:\n```\n \"ponyssh.hosts\": { \n    \"example-agent-auth\": {\n       \"host\": \"example.com\",\n       \"username\": \"my-login\",\n       \"agent\": true,\n       \"path\": \"/var/www\"\n    }\n  }\n```\n\nAsk for a password each time you connect:\n```\n \"ponyssh.hosts\": { \n    \"example-password-ask\": {\n       \"host\": \"example.com\",\n       \"username\": \"my-login\",\n       \"password\": true\n    }\n  }\n```\n\nLoad a private key from a file:\n```\n \"ponyssh.hosts\": { \n    \"example-private-key\": {\n       \"host\": \"example.com\",\n       \"username\": \"my-login\",\n       \"privateKeyFile\": \"~/.ssh/my_key\"\n    }\n  }\n```\n\nConnect to a host and use `sudo`:\n```\n \"ponyssh.hosts\": {\n    \"example-sudo\": {\n       \"host\": \"example.com\",\n       \"username\": \"my-login\",\n       \"agent\": true,\n       \"shell\": \"sudo sh -c\"\n    }\n  }\n```\n(Note: This setup assumes your user is allowed to sudo without a password)\n\n## Usage\n\nAfter adding a host to your `settings.json` file, Pony SSH is ready to use! To open a remote folder:\n\n- Open the Command Palette (`⌘` + `shift` + `P` on OSX, or `Ctrl` + `shift` + `P` on Windows)\n- Run the command \"`Pony SSH: Open Remote Folder`\"\n- Select the remote host you would like to use (based on your configured list in `settings.json`)\n- Enter the remote path you would like to enter, or leave it blank to open the default folder. ","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthingalon%2Fpony-ssh","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthingalon%2Fpony-ssh","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthingalon%2Fpony-ssh/lists"}