Skip to content

Commit 452a055

Browse files
Add remote folder picker
1 parent fde67af commit 452a055

9 files changed

Lines changed: 479 additions & 12 deletions

File tree

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
# Changelog
22

3+
## 0.6.0
4+
5+
- Added an Apps-compatible visual folder picker resource for saved SSH hosts.
6+
- Added `remote_render_folder_picker`, `remote_browse_dir`, and `remote_select_workspace`.
7+
- Added `remote_connection_auth_check` to detect whether key/config authentication works or password setup is needed.
8+
- Workspace selection now saves `workspaceRoot` and adds the selected directory to `allowedPaths`.
9+
310
## 0.5.0
411

512
- Added `remote_connection_wizard`, a simple user-facing Add SSH Connection tool with only Name, SSH Host, SSH Port, and Identity File fields.

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,7 @@ The package publishing workflow lives at:
9898
## Key Features
9999

100100
- Local MCP server with no runtime npm dependencies
101+
- Apps-compatible remote folder picker for selecting and saving a workspace directory
101102
- SSH host aliases instead of arbitrary target selection
102103
- Path allowlists for file tools
103104
- Remote writes disabled by default

plugins/remote-ssh/.codex-plugin/plugin.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "remote-ssh",
3-
"version": "0.5.0",
3+
"version": "0.6.0",
44
"description": "Enterprise-grade Remote SSH tools for Codex with host policies, audit logging, and safe file operations.",
55
"author": {
66
"name": "Zain Technologies LTD",
@@ -22,7 +22,7 @@
2222
"interface": {
2323
"displayName": "Remote SSH",
2424
"shortDescription": "Enterprise Remote SSH operations for Codex",
25-
"longDescription": "Remote SSH by Zain Technologies LTD connects Codex to trusted servers, devboxes, and private infrastructure through a local MCP bridge. It supports a simple Add SSH Connection wizard, conversational connection setup, saved host aliases, remote workspace bootstrap checks, tree/search/git tools, path allowlists, write opt-in controls, blocked command policies, timeouts, output limits, and JSONL audit logs for professional remote development and operations workflows.",
25+
"longDescription": "Remote SSH by Zain Technologies LTD connects Codex to trusted servers, devboxes, and private infrastructure through a local MCP bridge. It supports a simple Add SSH Connection wizard, an Apps-compatible remote folder picker, conversational connection setup, saved host aliases, remote workspace bootstrap checks, tree/search/git tools, path allowlists, write opt-in controls, blocked command policies, timeouts, output limits, and JSONL audit logs for professional remote development and operations workflows.",
2626
"developerName": "Zain Technologies LTD",
2727
"category": "Development",
2828
"capabilities": [

plugins/remote-ssh/CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
# Changelog
22

3+
## 0.6.0
4+
5+
- Added an Apps-compatible visual folder picker resource for saved SSH hosts.
6+
- Added `remote_render_folder_picker`, `remote_browse_dir`, and `remote_select_workspace`.
7+
- Added `remote_connection_auth_check` to detect whether key/config authentication works or password setup is needed.
8+
- Workspace selection now saves `workspaceRoot` and adds the selected directory to `allowedPaths`.
9+
310
## 0.5.0
411

512
- Added `remote_connection_wizard`, a simple user-facing Add SSH Connection tool with only Name, SSH Host, SSH Port, and Identity File fields.

plugins/remote-ssh/README.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@ Modern teams often keep source code, logs, services, and deployment tools on rem
2121
This plugin exposes clear tools for common remote work:
2222

2323
- add and save SSH connections conversationally
24+
- browse remote directories visually when the host supports Apps-compatible plugin UI
25+
- select a remote folder once and save it as the default workspace
2426
- inspect whether a remote host is ready for development
2527
- browse bounded remote workspace trees
2628
- search text inside remote workspaces
@@ -110,6 +112,28 @@ The plugin saves profiles to:
110112

111113
Advanced users can still configure hosts through `REMOTE_SSH_HOSTS` or `REMOTE_SSH_CONFIG_FILE`.
112114

115+
## Visual Folder Picker
116+
117+
Remote SSH includes an Apps-compatible folder picker surface. The intended flow is:
118+
119+
```text
120+
Choose saved host -> browse remote folders -> select workspace -> work from saved alias
121+
```
122+
123+
The picker is backed by MCP tools, so the same flow can be used conversationally if the current Codex surface does not render native plugin UI yet:
124+
125+
```text
126+
Use Remote SSH to open the folder picker for my ubuntu host.
127+
```
128+
129+
```text
130+
Browse /home/mehedi/projects on ubuntu and select /home/mehedi/projects/ZAINGUARD as the workspace.
131+
```
132+
133+
Selecting a workspace saves the directory as `workspaceRoot` and adds it to `allowedPaths` for future file, tree, search, and Git tools.
134+
135+
Authentication remains key-first. If key or SSH config authentication fails, the plugin reports that password setup is needed, but it does not store plaintext passwords in the Remote SSH config.
136+
113137
PowerShell example:
114138

115139
```powershell
@@ -152,11 +176,15 @@ Use Remote SSH to tail the last 100 lines of /var/log/nginx/error.log on hms.
152176

153177
| Tool | Purpose |
154178
| --- | --- |
179+
| `remote_render_folder_picker` | Renders the Apps-compatible visual folder picker for saved hosts. |
155180
| `remote_connection_wizard` | Adds a connection with the simple Name, SSH Host, SSH Port, Identity File form. |
156181
| `remote_add_host` | Saves or updates an SSH connection profile. |
157182
| `remote_remove_host` | Removes a saved SSH connection profile. |
183+
| `remote_connection_auth_check` | Checks whether key/config auth works or password setup is needed. |
158184
| `remote_test_connection` | Validates a saved SSH connection. |
159185
| `remote_hosts` | Lists configured host aliases and non-secret policy metadata. |
186+
| `remote_browse_dir` | Lists child directories for a visual or conversational folder picker. |
187+
| `remote_select_workspace` | Saves a selected remote directory as `workspaceRoot` and an allowed path. |
160188
| `remote_run` | Runs a non-interactive command on a configured host. |
161189
| `remote_workspace_bootstrap` | Checks remote OS, user, shell, workspace path, and dev tools. |
162190
| `remote_tree` | Shows a bounded remote workspace tree. |

plugins/remote-ssh/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@zaintechnologiesltd/codex-remote-ssh",
3-
"version": "0.5.0",
3+
"version": "0.6.0",
44
"description": "Enterprise-grade Remote SSH MCP tools for OpenAI Codex.",
55
"license": "MIT",
66
"author": {

0 commit comments

Comments
 (0)