tabby-bianbu-mcp 0.3.2 → 0.4.0

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/CHANGELOG.md ADDED
@@ -0,0 +1,19 @@
1
+ # Changelog
2
+
3
+ All notable changes to `tabby-bianbu-mcp` will be documented in this file.
4
+
5
+ ## [0.4.0] - 2026-03-19
6
+
7
+ ### Added
8
+ - release asset sync pipeline for the remote installer script
9
+ - remote diagnostics and push-upgrade workflow from the settings page
10
+ - persistent MCP shell session support with fallback for older servers
11
+ - packaged remote installer metadata for version comparison and release verification
12
+ - node-based release tests and verification scripts
13
+ - remote backup restore command via `restore-latest`
14
+
15
+ ### Changed
16
+ - file rename now prefers remote atomic rename support when available
17
+ - build pipeline now emits declaration files into `dist/`
18
+ - README expanded with release and remote maintenance guidance
19
+ - remote installer upgraded with richer health/version metadata, hash verification, safer backup behavior, and a secure default for passwordless sudo
package/LICENSE CHANGED
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2026
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2026 niver2002
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,82 +1,108 @@
1
- # tabby-bianbu-mcp
2
-
3
- A Tabby plugin that adds polished Bianbu Cloud remote tabs backed by your MCP endpoint.
4
-
5
- What it provides:
6
- - a dedicated `Bianbu MCP` settings page inside Tabby
7
- - `Bianbu Cloud Shell` and `Bianbu Cloud Files` entries integrated into Tabby's tab/profile flow
8
- - a terminal-based shell experience backed by MCP `run_command`
9
- - an explorer-like file manager backed by MCP file tools
10
- - connection fields for MCP URL, `X-API-KEY`, pacing, retries, and notes
11
- - quick actions and copyable config snippets
12
-
13
- Important:
14
- - this plugin does **not** implement native SSH or native SFTP transport
15
- - instead, it uses your Bianbu Cloud MCP endpoint at `https://<domain>/mcp`
16
- - `Bianbu Cloud Shell` is backed by MCP `run_command`
17
- - `Bianbu Cloud Files` is backed by MCP file tools such as `list_directory`, `read_text_file`, `write_text_file`, `upload_binary_file`, and `download_binary_file`
18
-
19
- ## UI overview
20
-
21
- Inside Tabby, the plugin adds:
22
-
23
- ### 1. Bianbu MCP settings page
24
- Fields:
25
- - enable integration
26
- - profile name
27
- - MCP URL
28
- - X-API-KEY
29
- - request interval (ms)
30
- - max retries
31
- - retry base delay (ms)
32
- - notes
33
-
34
- ### 2. Bianbu Cloud Shell tab
35
- Features:
36
- - command input
37
- - working directory input
38
- - timeout input
39
- - `as_root` toggle
40
- - output history with stdout/stderr blocks
41
-
42
- ### 3. Bianbu Cloud Files tab
43
- Features:
44
- - directory browser
45
- - open text files
46
- - edit and save text files
47
- - create directories and files
48
- - upload files
49
- - download files
50
- - delete files/directories
51
- - `as_root` toggle
52
-
53
- ## Package
54
-
55
- - npm: `tabby-bianbu-mcp`
56
- - keyword: `tabby-plugin`
57
-
58
- ## Build
59
-
60
- ```bash
61
- npm install
62
- npm run build
63
- ```
64
-
65
- ## Publish
66
-
67
- ```bash
68
- npm publish --access public
69
- ```
70
-
71
- ## Installability in Tabby
72
-
73
- This package is intended to be discoverable by Tabby's plugin manager through npm publication.
74
- Because Tabby's plugin discovery behavior can lag behind npm indexing, it may take a bit of time before search results update.
75
-
76
- ## Source repository
77
-
78
- https://github.com/niver2002/tabby-bianbu-mcp
79
-
80
- ## License
81
-
82
- MIT
1
+ # tabby-bianbu-mcp
2
+
3
+ A Tabby plugin for Bianbu Cloud remote shell and file operations over MCP.
4
+
5
+ It adds a dedicated Bianbu MCP settings page, a shell-like terminal tab, a file manager tab, remote health diagnostics, and a bundled installer push-upgrade flow for the matching Bianbu Cloud MCP server.
6
+
7
+ ## Features
8
+
9
+ - Bianbu MCP settings page inside Tabby
10
+ - Bianbu Cloud Shell and Bianbu Cloud Files profiles
11
+ - shell experience backed by MCP `run_command` and logical shell sessions
12
+ - file explorer backed by MCP file tools
13
+ - remote diagnostics: health, versions, capabilities, FILE_ROOT, transport mode
14
+ - packaged remote installer asset with SHA-256 metadata and integrity verification
15
+ - push latest installer to the remote host and trigger `up` or `repair`
16
+ - chunked upload and download support for larger files
17
+ - atomic rename support through MCP `rename_path`
18
+ - remote backup and `restore-latest` recovery support in the installer
19
+
20
+ ## What this plugin is not
21
+
22
+ - not native SSH
23
+ - not native SFTP
24
+ - not a replacement for the upstream Bianbu Cloud gateway authentication layer
25
+
26
+ The plugin talks to a Bianbu Cloud MCP endpoint such as:
27
+
28
+ `https://<domain>/mcp`
29
+
30
+ Authentication relies on the existing upstream `X-API-KEY` layer. The plugin does not add a second proxy token layer.
31
+
32
+ ## Settings
33
+
34
+ The plugin stores these main settings under `bianbuMcp`:
35
+
36
+ - `enabled`
37
+ - `name`
38
+ - `url`
39
+ - `apiKey`
40
+ - `minIntervalMs`
41
+ - `maxRetries`
42
+ - `retryBaseMs`
43
+ - `notes`
44
+ - `installerRemotePath`
45
+ - `maintenanceAsRoot`
46
+ - `reconnectPollMs`
47
+ - `upgradeHealthTimeoutMs`
48
+
49
+ ## Remote maintenance flow
50
+
51
+ The plugin package contains a bundled copy of `bianbu_agent_proxy.sh` plus release metadata.
52
+
53
+ When you click `Push latest installer + upgrade`:
54
+
55
+ 1. the plugin uploads the bundled installer to `installerRemotePath`
56
+ 2. it makes the script executable remotely
57
+ 3. it starts the installer in the background with `up` or `repair`
58
+ 4. it polls the MCP endpoint until health returns
59
+ 5. it shows the reported remote script version and server version
60
+
61
+ This is the intended commercial-release upgrade path because the client and remote installer ship together.
62
+
63
+ The remote installer now defaults `ENABLE_PASSWORDLESS_SUDO=false`. If you want unattended `as_root=true` maintenance through MCP, opt in explicitly and understand the security trade-off.
64
+
65
+ ## Build
66
+
67
+ ```bash
68
+ npm install
69
+ npm run build
70
+ ```
71
+
72
+ ## Test
73
+
74
+ ```bash
75
+ npm test
76
+ ```
77
+
78
+ ## Release verification
79
+
80
+ ```bash
81
+ npm run sync:remote-assets
82
+ npm test
83
+ npm run build
84
+ npm pack --dry-run
85
+ ```
86
+
87
+ ## Publish
88
+
89
+ ```bash
90
+ npm publish --access public
91
+ ```
92
+
93
+ ## Files included in the package
94
+
95
+ - `dist/`
96
+ - `assets/bianbu_agent_proxy.sh`
97
+ - `assets/bianbu_agent_proxy.meta.json`
98
+ - `README.md`
99
+ - `LICENSE`
100
+ - `CHANGELOG.md`
101
+
102
+ ## Source repository
103
+
104
+ https://github.com/niver2002/tabby-bianbu-mcp
105
+
106
+ ## License
107
+
108
+ MIT
@@ -0,0 +1,9 @@
1
+ {
2
+ "fileName": "bianbu_agent_proxy.sh",
3
+ "sourceFile": "bianbu_agent_proxy.sh",
4
+ "scriptVersion": "1.2.0",
5
+ "serverVersion": "1.2.0",
6
+ "sha256": "d4f21b824acf3f73356977706da8c5917ec7832903ba1d2312322cead4f8c69f",
7
+ "bytes": 56914,
8
+ "generatedAt": "2026-03-19T06:19:56.738Z"
9
+ }