docs: refresh Claude Codex and Gemini integration guides
This commit is contained in:
@@ -24,13 +24,13 @@
|
|||||||
|
|
||||||
В репозитории исходники skill лежат здесь:
|
В репозитории исходники skill лежат здесь:
|
||||||
|
|
||||||
- [SKILL.md](/home/code/CODING/server-manager/.codex/skills/server-manager/SKILL.md)
|
- [SKILL.md](/home/code/Desktop/CODING/server-manager/.codex/skills/server-manager/SKILL.md)
|
||||||
- [command-matrix.md](/home/code/CODING/server-manager/.codex/skills/server-manager/references/command-matrix.md)
|
- [command-matrix.md](/home/code/Desktop/CODING/server-manager/.codex/skills/server-manager/references/command-matrix.md)
|
||||||
- [project.md](/home/code/CODING/server-manager/.codex/skills/server-manager/references/project.md)
|
- [project.md](/home/code/Desktop/CODING/server-manager/.codex/skills/server-manager/references/project.md)
|
||||||
- [server-manager-doctor.sh](/home/code/CODING/server-manager/.codex/skills/server-manager/scripts/server-manager-doctor.sh)
|
- [server-manager-doctor.sh](/home/code/Desktop/CODING/server-manager/.codex/skills/server-manager/scripts/server-manager-doctor.sh)
|
||||||
- [server-manager-doctor.cmd](/home/code/CODING/server-manager/.codex/skills/server-manager/scripts/server-manager-doctor.cmd)
|
- [server-manager-doctor.cmd](/home/code/Desktop/CODING/server-manager/.codex/skills/server-manager/scripts/server-manager-doctor.cmd)
|
||||||
- [codex-ssh-wrapper.sh](/home/code/CODING/server-manager/.codex/skills/server-manager/scripts/codex-ssh-wrapper.sh)
|
- [codex-ssh-wrapper.sh](/home/code/Desktop/CODING/server-manager/.codex/skills/server-manager/scripts/codex-ssh-wrapper.sh)
|
||||||
- [codex-ssh-wrapper.cmd](/home/code/CODING/server-manager/.codex/skills/server-manager/scripts/codex-ssh-wrapper.cmd)
|
- [codex-ssh-wrapper.cmd](/home/code/Desktop/CODING/server-manager/.codex/skills/server-manager/scripts/codex-ssh-wrapper.cmd)
|
||||||
|
|
||||||
## Как это работает
|
## Как это работает
|
||||||
|
|
||||||
@@ -200,12 +200,12 @@ $HOME/.server-connections/codex-ssh --status
|
|||||||
|
|
||||||
Если меняется поведение интеграции, проверять нужно в таком порядке:
|
Если меняется поведение интеграции, проверять нужно в таком порядке:
|
||||||
|
|
||||||
1. [tools/ssh.py](/home/code/CODING/server-manager/tools/ssh.py)
|
1. [tools/ssh.py](/home/code/Desktop/CODING/server-manager/tools/ssh.py)
|
||||||
2. [tools/skill-ssh.md](/home/code/CODING/server-manager/tools/skill-ssh.md)
|
2. [tools/skill-ssh.md](/home/code/Desktop/CODING/server-manager/tools/skill-ssh.md)
|
||||||
3. [core/claude_setup.py](/home/code/CODING/server-manager/core/claude_setup.py)
|
3. [core/claude_setup.py](/home/code/Desktop/CODING/server-manager/core/claude_setup.py)
|
||||||
4. [build.py](/home/code/CODING/server-manager/build.py)
|
4. [build.py](/home/code/Desktop/CODING/server-manager/build.py)
|
||||||
5. [SKILL.md](/home/code/CODING/server-manager/.codex/skills/server-manager/SKILL.md)
|
5. [SKILL.md](/home/code/Desktop/CODING/server-manager/.codex/skills/server-manager/SKILL.md)
|
||||||
6. [command-matrix.md](/home/code/CODING/server-manager/.codex/skills/server-manager/references/command-matrix.md)
|
6. [command-matrix.md](/home/code/Desktop/CODING/server-manager/.codex/skills/server-manager/references/command-matrix.md)
|
||||||
|
|
||||||
Если меняется семантика `ssh.py`, нужно обновлять и Claude skill, и Codex skill.
|
Если меняется семантика `ssh.py`, нужно обновлять и Claude skill, и Codex skill.
|
||||||
|
|
||||||
|
|||||||
86
GEMINI_SKILL_SETUP.md
Normal file
86
GEMINI_SKILL_SETUP.md
Normal file
@@ -0,0 +1,86 @@
|
|||||||
|
# Развёртывание Gemini Skill Для ServerManager
|
||||||
|
|
||||||
|
Этот документ описывает, как ServerManager интегрируется с Gemini CLI.
|
||||||
|
|
||||||
|
## Что устанавливается
|
||||||
|
|
||||||
|
Для каждого target home устанавливаются:
|
||||||
|
|
||||||
|
1. Общий backend:
|
||||||
|
- `~/.server-connections/ssh.py`
|
||||||
|
- `~/.server-connections/encryption.py`
|
||||||
|
2. Gemini skill package:
|
||||||
|
- `~/.gemini/skills/server-manager/`
|
||||||
|
3. Безопасный runtime wrapper:
|
||||||
|
- `~/.server-connections/gemini-ssh`
|
||||||
|
4. Глобальный Gemini context:
|
||||||
|
- `~/.gemini/GEMINI.md`
|
||||||
|
|
||||||
|
## Skill workflow
|
||||||
|
|
||||||
|
Gemini должен начинать discovery так:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$HOME/.server-connections/gemini-ssh --list
|
||||||
|
```
|
||||||
|
|
||||||
|
Далее:
|
||||||
|
|
||||||
|
- определить `Type`
|
||||||
|
- выбрать команду строго по типу
|
||||||
|
- выполнить ровно одно действие
|
||||||
|
- не раскрывать IP, логины, пароли, порты
|
||||||
|
|
||||||
|
## Рекомендуемая установка
|
||||||
|
|
||||||
|
### Через GUI
|
||||||
|
|
||||||
|
Вкладка `Setup` теперь умеет ставить:
|
||||||
|
|
||||||
|
- Claude skill
|
||||||
|
- Codex skill
|
||||||
|
- Gemini skill
|
||||||
|
- shared backend и wrappers
|
||||||
|
|
||||||
|
### Через Python installer
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python3 tools/install_ai_integrations.py
|
||||||
|
python3 tools/install_ai_integrations.py --target-home /root
|
||||||
|
python3 tools/install_ai_integrations.py --all-users
|
||||||
|
```
|
||||||
|
|
||||||
|
### Через shell installer (Linux/macOS)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
bash tools/install.sh --source-dir /path/to/server-manager
|
||||||
|
bash tools/install.sh --source-dir /path/to/server-manager --target-home /root
|
||||||
|
bash tools/install.sh --source-dir /path/to/server-manager --all-users
|
||||||
|
```
|
||||||
|
|
||||||
|
## Проверка
|
||||||
|
|
||||||
|
### 1. Проверить skill discovery
|
||||||
|
|
||||||
|
```bash
|
||||||
|
gemini skills list
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. Проверить wrapper
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$HOME/.server-connections/gemini-ssh --list
|
||||||
|
```
|
||||||
|
|
||||||
|
### 3. Проверить doctor script
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$HOME/.gemini/skills/server-manager/scripts/server-manager-gemini-doctor.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
## Важные замечания
|
||||||
|
|
||||||
|
- `servers.json` не размножается автоматически в `--all-users` режиме — это сделано намеренно, чтобы не копировать credentials между пользователями.
|
||||||
|
- Для root / service accounts используйте отдельную установку в нужный `target home`.
|
||||||
|
- Gemini skill source в репозитории лежит в `.gemini/skills/server-manager/`.
|
||||||
|
- При необходимости можно дополнительно ставить mirror в `~/.agents/skills/server-manager/`, но по умолчанию это отключено, чтобы Gemini не ругался на duplicate skill conflict.
|
||||||
45
README.md
45
README.md
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
<strong>Desktop GUI for managing remote servers</strong><br>
|
<strong>Desktop GUI for managing remote servers</strong><br>
|
||||||
CustomTkinter + Paramiko | Dark Theme | Claude Code + Codex Integration
|
CustomTkinter + Paramiko | Dark Theme | Claude Code + Codex + Gemini Integration
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
@@ -22,7 +22,7 @@
|
|||||||
- **SFTP Transfer** — upload/download files with progress bar
|
- **SFTP Transfer** — upload/download files with progress bar
|
||||||
- **SSH Keys** — generate ed25519, install on server, copy to clipboard
|
- **SSH Keys** — generate ed25519, install on server, copy to clipboard
|
||||||
- **Status Monitor** — background check every 60 sec (online/offline badges)
|
- **Status Monitor** — background check every 60 sec (online/offline badges)
|
||||||
- **Claude Code + Codex Integration** — one-click setup, shared config with `/ssh` skill and Codex skill
|
- **Claude Code + Codex + Gemini Integration** — one-click setup, shared config with `/ssh`, Codex skill, and Gemini skill
|
||||||
- **TOTP / 2FA** — Google Authenticator compatible codes with live countdown, one-click copy
|
- **TOTP / 2FA** — Google Authenticator compatible codes with live countdown, one-click copy
|
||||||
- **Encryption** — servers.json encrypted with Fernet (passwords never stored in plaintext)
|
- **Encryption** — servers.json encrypted with Fernet (passwords never stored in plaintext)
|
||||||
- **Backups** — manual and automatic backups with one-click restore
|
- **Backups** — manual and automatic backups with one-click restore
|
||||||
@@ -62,10 +62,10 @@ Output goes to `releases/ServerManager-vX.Y.Z-{platform}.exe`
|
|||||||
3. **Terminal** — select server → Terminal tab → type command → Run
|
3. **Terminal** — select server → Terminal tab → type command → Run
|
||||||
4. **Files** — select server → Files tab → set paths → Upload/Download
|
4. **Files** — select server → Files tab → set paths → Upload/Download
|
||||||
5. **Keys** — Keys tab → Generate Key → Install on Server
|
5. **Keys** — Keys tab → Generate Key → Install on Server
|
||||||
6. **Setup** — Setup tab → "Install Everything" → Claude Code and Codex ready
|
6. **Setup** — Setup tab → "Install Everything" → Claude Code, Codex, and Gemini ready
|
||||||
7. Status badges update automatically (green = online, red = offline)
|
7. Status badges update automatically (green = online, red = offline)
|
||||||
|
|
||||||
### Claude Code + Codex Integration
|
### Claude Code + Codex + Gemini Integration
|
||||||
|
|
||||||
ServerManager, Claude Code, and Codex share the same config file: `~/.server-connections/servers.json`
|
ServerManager, Claude Code, and Codex share the same config file: `~/.server-connections/servers.json`
|
||||||
|
|
||||||
@@ -75,11 +75,11 @@ For Codex deployment and operational edge cases, see [`CODEX_SKILL_SETUP.md`](CO
|
|||||||
```
|
```
|
||||||
ServerManager GUI ←→ ~/.server-connections/servers.json ←→ ssh.py backend
|
ServerManager GUI ←→ ~/.server-connections/servers.json ←→ ssh.py backend
|
||||||
↕ ↕
|
↕ ↕
|
||||||
Add/edit/delete Claude /ssh + Codex skill
|
Add/edit/delete Claude /ssh + Codex + Gemini skill
|
||||||
servers in GUI execute commands
|
servers in GUI execute commands
|
||||||
```
|
```
|
||||||
|
|
||||||
- Add a server in GUI → Claude Code and Codex see it immediately
|
- Add a server in GUI → Claude Code, Codex, and Gemini see it immediately
|
||||||
- Both agents use the same `ssh.py` + `servers.json`
|
- Both agents use the same `ssh.py` + `servers.json`
|
||||||
- Passwords **never** pass through the AI API
|
- Passwords **never** pass through the AI API
|
||||||
|
|
||||||
@@ -95,14 +95,17 @@ ServerManager GUI ←→ ~/.server-connections/servers.json ←→ ssh.py ba
|
|||||||
**Setup on a new machine:**
|
**Setup on a new machine:**
|
||||||
1. Install ServerManager (clone repo or download binary)
|
1. Install ServerManager (clone repo or download binary)
|
||||||
2. Open Setup tab → click "Install Everything"
|
2. Open Setup tab → click "Install Everything"
|
||||||
3. Done. Claude Code now has `/ssh`, and Codex now has the `server-manager` skill with access to your servers
|
3. Done. Claude Code now has `/ssh`, Codex now has the `server-manager` skill, and Gemini now has the `server-manager` skill with access to your servers
|
||||||
|
|
||||||
The Setup tab installs:
|
The Setup tab installs:
|
||||||
- `ssh.py` → `~/.server-connections/` (SSH utility)
|
- `ssh.py` → `~/.server-connections/` (SSH utility)
|
||||||
- `encryption.py` → `~/.server-connections/` (encryption module for CLI)
|
- `encryption.py` → `~/.server-connections/` (encryption module for CLI)
|
||||||
- `/ssh` skill → `~/.claude/commands/ssh.md` (Claude Code skill)
|
- `/ssh` skill → `~/.claude/commands/ssh.md` (Claude Code skill)
|
||||||
- `server-manager` skill → `~/.codex/skills/server-manager/` (Codex skill package)
|
- `server-manager` skill → `~/.codex/skills/server-manager/` (Codex skill package)
|
||||||
|
- `server-manager` skill → `~/.gemini/skills/server-manager/` (Gemini skill package)
|
||||||
|
- optional mirror → `~/.agents/skills/server-manager/` (off by default to avoid Gemini duplicate-skill warnings)
|
||||||
- `codex-ssh` wrapper → `~/.server-connections/` (safe Codex entry point)
|
- `codex-ssh` wrapper → `~/.server-connections/` (safe Codex entry point)
|
||||||
|
- `gemini-ssh` wrapper → `~/.server-connections/` (safe Gemini entry point)
|
||||||
- SSH key (ed25519) — if not exists
|
- SSH key (ed25519) — if not exists
|
||||||
- Checks for duplicates — safe to run multiple times
|
- Checks for duplicates — safe to run multiple times
|
||||||
|
|
||||||
@@ -158,7 +161,7 @@ ServerManager/
|
|||||||
│ ├── server_store.py # CRUD + encrypted JSON + observer + backups
|
│ ├── server_store.py # CRUD + encrypted JSON + observer + backups
|
||||||
│ ├── encryption.py # Fernet encryption module
|
│ ├── encryption.py # Fernet encryption module
|
||||||
│ ├── ssh_client.py # Paramiko SSH/SFTP wrapper
|
│ ├── ssh_client.py # Paramiko SSH/SFTP wrapper
|
||||||
│ ├── claude_setup.py # Claude Code + Codex integration installer
|
│ ├── claude_setup.py # Claude Code + Codex + Gemini integration installer
|
||||||
│ ├── status_checker.py # Background monitoring
|
│ ├── status_checker.py # Background monitoring
|
||||||
│ ├── totp.py # TOTP/2FA module (pyotp)
|
│ ├── totp.py # TOTP/2FA module (pyotp)
|
||||||
│ ├── logger.py # Rotating file logger
|
│ ├── logger.py # Rotating file logger
|
||||||
@@ -205,7 +208,7 @@ python main.py
|
|||||||
- **SFTP** — загрузка и скачивание файлов с прогресс-баром
|
- **SFTP** — загрузка и скачивание файлов с прогресс-баром
|
||||||
- **SSH-ключи** — генерация ed25519, установка на сервер, копирование
|
- **SSH-ключи** — генерация ed25519, установка на сервер, копирование
|
||||||
- **Мониторинг** — фоновая проверка каждые 60 сек (бейджи online/offline)
|
- **Мониторинг** — фоновая проверка каждые 60 сек (бейджи online/offline)
|
||||||
- **Интеграция с Claude Code + Codex** — установка в один клик, общий конфиг со скиллом `/ssh` и Codex skill
|
- **Интеграция с Claude Code + Codex + Gemini** — установка в один клик, общий конфиг со скиллом `/ssh`, Codex skill и Gemini skill
|
||||||
- **TOTP / 2FA** — коды Google Authenticator с обратным отсчётом, копирование в один клик
|
- **TOTP / 2FA** — коды Google Authenticator с обратным отсчётом, копирование в один клик
|
||||||
- **Шифрование** — servers.json зашифрован Fernet (пароли не хранятся в открытом виде)
|
- **Шифрование** — servers.json зашифрован Fernet (пароли не хранятся в открытом виде)
|
||||||
- **Бэкапы** — ручные и автоматические с восстановлением в один клик
|
- **Бэкапы** — ручные и автоматические с восстановлением в один клик
|
||||||
@@ -245,22 +248,22 @@ python build.py
|
|||||||
3. **Терминал** — выберите сервер → вкладка Terminal → введите команду → Run
|
3. **Терминал** — выберите сервер → вкладка Terminal → введите команду → Run
|
||||||
4. **Файлы** — выберите сервер → вкладка Files → укажите пути → Upload/Download
|
4. **Файлы** — выберите сервер → вкладка Files → укажите пути → Upload/Download
|
||||||
5. **Ключи** — вкладка Keys → Generate Key → Install on Server
|
5. **Ключи** — вкладка Keys → Generate Key → Install on Server
|
||||||
6. **Настройка** — вкладка Setup → "Install Everything" → Claude Code и Codex готовы
|
6. **Настройка** — вкладка Setup → "Install Everything" → Claude Code, Codex и Gemini готовы
|
||||||
7. Бейджи статуса обновляются автоматически (зелёный = online, красный = offline)
|
7. Бейджи статуса обновляются автоматически (зелёный = online, красный = offline)
|
||||||
|
|
||||||
### Интеграция с Claude Code + Codex
|
### Интеграция с Claude Code + Codex + Gemini
|
||||||
|
|
||||||
ServerManager, Claude Code и Codex используют **один и тот же файл конфигурации**: `~/.server-connections/servers.json`
|
ServerManager, Claude Code, Codex и Gemini используют **один и тот же файл конфигурации**: `~/.server-connections/servers.json`
|
||||||
|
|
||||||
**Как это работает:**
|
**Как это работает:**
|
||||||
```
|
```
|
||||||
ServerManager GUI ←→ ~/.server-connections/servers.json ←→ backend ssh.py
|
ServerManager GUI ←→ ~/.server-connections/servers.json ←→ backend ssh.py
|
||||||
↕ ↕
|
↕ ↕
|
||||||
Добавил/изменил Claude /ssh + Codex skill
|
Добавил/изменил Claude /ssh + Codex + Gemini skill
|
||||||
серверы в GUI выполняют команды
|
серверы в GUI выполняют команды
|
||||||
```
|
```
|
||||||
|
|
||||||
- Добавил сервер в GUI → Claude Code и Codex сразу видят его
|
- Добавил сервер в GUI → Claude Code, Codex и Gemini сразу видят его
|
||||||
- Оба агента используют один `ssh.py` + `servers.json`
|
- Оба агента используют один `ssh.py` + `servers.json`
|
||||||
- Пароли **никогда** не проходят через API нейронки
|
- Пароли **никогда** не проходят через API нейронки
|
||||||
|
|
||||||
@@ -276,14 +279,16 @@ ServerManager GUI ←→ ~/.server-connections/servers.json ←→ backend s
|
|||||||
**Настройка на новой машине:**
|
**Настройка на новой машине:**
|
||||||
1. Установить ServerManager (клонировать репо или скачать бинарник)
|
1. Установить ServerManager (клонировать репо или скачать бинарник)
|
||||||
2. Открыть вкладку Setup → нажать "Install Everything"
|
2. Открыть вкладку Setup → нажать "Install Everything"
|
||||||
3. Готово. Claude Code получает скилл `/ssh`, а Codex получает skill `server-manager` и доступ к серверам
|
3. Готово. Claude Code получает скилл `/ssh`, а Codex и Gemini получают skill `server-manager` и доступ к серверам
|
||||||
|
|
||||||
Вкладка Setup устанавливает:
|
Вкладка Setup устанавливает:
|
||||||
- `ssh.py` → `~/.server-connections/` (SSH-утилита)
|
- `ssh.py` → `~/.server-connections/` (SSH-утилита)
|
||||||
- `encryption.py` → `~/.server-connections/` (модуль шифрования для CLI)
|
- `encryption.py` → `~/.server-connections/` (модуль шифрования для CLI)
|
||||||
- скилл `/ssh` → `~/.claude/commands/ssh.md` (скилл Claude Code)
|
- скилл `/ssh` → `~/.claude/commands/ssh.md` (скилл Claude Code)
|
||||||
- skill `server-manager` → `~/.codex/skills/server-manager/` (скилл Codex)
|
- skill `server-manager` → `~/.codex/skills/server-manager/` (скилл Codex)
|
||||||
|
- skill `server-manager` → `~/.gemini/skills/server-manager/` (скилл Gemini)
|
||||||
- wrapper `codex-ssh` → `~/.server-connections/` (безопасная точка входа для Codex)
|
- wrapper `codex-ssh` → `~/.server-connections/` (безопасная точка входа для Codex)
|
||||||
|
- wrapper `gemini-ssh` → `~/.server-connections/` (безопасная точка входа для Gemini)
|
||||||
- SSH-ключ (ed25519) — если ещё не создан
|
- SSH-ключ (ed25519) — если ещё не создан
|
||||||
- Проверяет дубли — безопасно запускать повторно
|
- Проверяет дубли — безопасно запускать повторно
|
||||||
|
|
||||||
@@ -342,7 +347,7 @@ pip install -r requirements.txt
|
|||||||
python main.py
|
python main.py
|
||||||
# → Вкладка Setup → Install Everything
|
# → Вкладка Setup → Install Everything
|
||||||
# → Добавить серверы через + Add
|
# → Добавить серверы через + Add
|
||||||
# → Готово! GUI, Claude Code и Codex работают с одним конфигом
|
# → Готово! GUI, Claude Code, Codex и Gemini работают с одним конфигом
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -356,7 +361,7 @@ python main.py
|
|||||||
- **SFTP传输** — 带进度条的文件上传/下载
|
- **SFTP传输** — 带进度条的文件上传/下载
|
||||||
- **SSH密钥** — 生成ed25519、安装到服务器、复制到剪贴板
|
- **SSH密钥** — 生成ed25519、安装到服务器、复制到剪贴板
|
||||||
- **状态监控** — 每60秒后台检查(在线/离线徽标)
|
- **状态监控** — 每60秒后台检查(在线/离线徽标)
|
||||||
- **Claude Code + Codex 集成** — 一键设置,与 `/ssh` 技能和 Codex skill 共享配置
|
- **Claude Code + Codex + Gemini 集成** — 一键设置,与 `/ssh` 技能、Codex skill 和 Gemini skill 共享配置
|
||||||
- **TOTP / 2FA** — 兼容Google Authenticator的验证码,实时倒计时,一键复制
|
- **TOTP / 2FA** — 兼容Google Authenticator的验证码,实时倒计时,一键复制
|
||||||
- **加密** — servers.json使用Fernet加密(密码不再以明文存储)
|
- **加密** — servers.json使用Fernet加密(密码不再以明文存储)
|
||||||
- **备份** — 手动和自动备份,一键恢复
|
- **备份** — 手动和自动备份,一键恢复
|
||||||
@@ -399,7 +404,7 @@ python build.py
|
|||||||
6. **设置** — Setup标签 → "Install Everything" → Claude Code 和 Codex 就绪
|
6. **设置** — Setup标签 → "Install Everything" → Claude Code 和 Codex 就绪
|
||||||
7. 状态徽标自动更新(绿色 = 在线,红色 = 离线)
|
7. 状态徽标自动更新(绿色 = 在线,红色 = 离线)
|
||||||
|
|
||||||
### Claude Code + Codex 集成
|
### Claude Code + Codex + Gemini 集成
|
||||||
|
|
||||||
ServerManager、Claude Code 和 Codex 共享**同一个配置文件**:`~/.server-connections/servers.json`
|
ServerManager、Claude Code 和 Codex 共享**同一个配置文件**:`~/.server-connections/servers.json`
|
||||||
|
|
||||||
@@ -407,12 +412,12 @@ ServerManager、Claude Code 和 Codex 共享**同一个配置文件**:`~/.serv
|
|||||||
```
|
```
|
||||||
ServerManager GUI ←→ ~/.server-connections/servers.json ←→ ssh.py 后端
|
ServerManager GUI ←→ ~/.server-connections/servers.json ←→ ssh.py 后端
|
||||||
↕ ↕
|
↕ ↕
|
||||||
在GUI中添加/编辑 Claude /ssh + Codex skill
|
在GUI中添加/编辑 Claude /ssh + Codex + Gemini skill
|
||||||
服务器 执行命令
|
服务器 执行命令
|
||||||
```
|
```
|
||||||
|
|
||||||
- 在GUI中添加服务器 → Claude Code 和 Codex 都会立即看到
|
- 在GUI中添加服务器 → Claude Code 和 Codex 都会立即看到
|
||||||
- 两个代理都使用同一个 `ssh.py` + `servers.json`
|
- Claude Code、Codex 和 Gemini 都使用同一个 `ssh.py` + `servers.json`
|
||||||
- 密码**绝不**通过AI API传递
|
- 密码**绝不**通过AI API传递
|
||||||
|
|
||||||
**在新机器上设置:**
|
**在新机器上设置:**
|
||||||
|
|||||||
Reference in New Issue
Block a user