@junwu168/openshell
v0.1.5
Published
`openshell` is an OpenCode plugin package for explicit remote SSH tools. It installs as the npm package `@junwu168/openshell` and exposes the CLI command `openshell`.
Readme
openshell
openshell is an OpenCode plugin package for explicit remote SSH tools. It installs as the npm package @junwu168/openshell and exposes the CLI command openshell.
Install
npm install -g @junwu168/openshell
openshell installopenshell install creates OpenShell state under the standard user paths and merges the global OpenCode integration into ~/.config/opencode/opencode.json.
- OpenShell config:
~/.config/openshell - OpenShell data:
~/.local/share/openshell - Workspace registry override:
<workspace>/.open-code/servers.json
Add A Server
Use the first-class CLI to manage server entries:
openshell server-registry add
openshell server-registry list
openshell server-registry removeThe registry reads layered JSON config files:
- Workspace config:
<workspace>/.open-code/servers.json - Global config: the user config directory resolved by
env-pathsforopenshell
Workspace entries override global entries with the same id.
Password auth is stored in plain text. That is intentionally simple for this pre-release and not recommended for long-term production use.
Smoke Test In OpenCode
- Run
openshell install. - Run
openshell server-registry addand register a reachable SSH target. - Start
opencode. - Ask for
list_servers. - Ask for
remote_execwithcat /etc/os-release. - Ask for
remote_write_fileand confirm that the approval prompt appears.
Uninstall
openshell uninstallFor this pre-release, uninstall is aggressive. It removes:
- the OpenShell registration from global OpenCode config
~/.config/openshell~/.local/share/openshell- tracked workspace
.open-codedirectories created by OpenShell
Development
Install dependencies with bun install, run the test suite with bun test, and build with bun run build.
Integration tests rely on Docker because tests/integration/fake-ssh-server.ts uses testcontainers.
