@muvon/octofs 0.13.0 → 0.14.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
**Give your AI assistant filesystem superpowers**
|
|
6
6
|
|
|
7
7
|
[](https://github.com/muvon/octofs/actions/workflows/ci.yml)
|
|
8
|
+
[](https://github.com/muvon/octofs/actions/workflows/ci.yml)
|
|
8
9
|
[](https://www.rust-lang.org)
|
|
9
10
|
[](LICENSE)
|
|
10
11
|
[](https://modelcontextprotocol.io)
|
|
@@ -300,7 +301,8 @@ octofs mcp --path ssh://deploy@example.com/var/www/app --ssh-key ~/.ssh/id_ed255
|
|
|
300
301
|
view path="ssh://deploy@example.com/etc/nginx/nginx.conf"
|
|
301
302
|
```
|
|
302
303
|
|
|
303
|
-
- **
|
|
304
|
+
- **OpenSSH config** — host aliases are resolved through the local OpenSSH config (including `Include` and `Match`) and honor `HostName`, `User`, `Port`, and a single `ProxyJump`. Explicit URL values win, so both `ssh://dev/path` and `ssh://user@example.com:2222/path` work as expected. Multi-hop `ProxyJump` and `ProxyCommand` routing are rejected with a clear error.
|
|
305
|
+
- **Authentication** — uses the host's `IdentityAgent` (e.g. 1Password) or `$SSH_AUTH_SOCK`, then key files — `--ssh-key` if given, the host's `IdentityFile` entries, then the defaults in `~/.ssh` (`id_ed25519`, `id_ecdsa`). Passphrase-protected key files are not supported directly; use an agent instead.
|
|
304
306
|
- **RSA keys are not supported** — the Rust `rsa` crate has an unfixed timing side-channel (Marvin attack, [RUSTSEC-2023-0071](https://rustsec.org/advisories/RUSTSEC-2023-0071)), so octofs is built without RSA entirely. Use an ed25519 key instead (`ssh-keygen -t ed25519`); ecdsa also works. RSA-only setups fail with a clear error naming the key.
|
|
305
307
|
- **Host keys** — verified against `~/.ssh/known_hosts` with the OpenSSH `accept-new` policy: unknown hosts are recorded on first use, a changed key fails closed.
|
|
306
308
|
- **`--ssh-timeout SECS`** — connection timeout (default 30). Connections are pooled per host, kept alive with transport keepalives, and reconnected automatically if they drop.
|
|
@@ -482,7 +484,10 @@ finish within about 10 seconds:
|
|
|
482
484
|
If a command is still running at that boundary, the same process continues in
|
|
483
485
|
the background. The response returns its PID and linked output resource, and a
|
|
484
486
|
completion notification arrives when it exits. There is no `background` flag
|
|
485
|
-
and the command is never killed or restarted during the handoff.
|
|
487
|
+
and the command is never killed or restarted during the handoff. Multiple
|
|
488
|
+
distinct commands may run concurrently, including from the same working
|
|
489
|
+
directory. An exact duplicate command in the same working directory is rejected
|
|
490
|
+
while the first copy is still running.
|
|
486
491
|
|
|
487
492
|
> On Windows, shutdown cleanup terminates only direct child processes (no Unix
|
|
488
493
|
> process-group semantics); use `taskkill /PID <pid> /T` for process trees.
|