docs: update README and CHANGELOG with stable SSH tunnel architecture
Co-authored-by: Junie <junie@jetbrains.com>
This commit is contained in:
@@ -4,6 +4,22 @@ All notable changes to this repository are documented in this file.
|
|||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
|
## 2026-03-22
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Stabilized OpenClaw node connectivity by implementing an external SSH tunnel managed via `ai.openclaw.node` LaunchAgent.
|
||||||
|
- Resolved `token_mismatch` errors in `OpenClaw.app` and CLI by synchronizing gateway tokens across all local and remote configurations.
|
||||||
|
- Fixed `ai.openclaw.node` launch script to correctly handle port conflicts and automated tunnel re-establishment.
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Upgraded local OpenClaw CLI and macOS Companion App to v2026.3.13.
|
||||||
|
- Updated remote gateway configuration to `mode: remote` and `bind: lan` for stable tunnel termination.
|
||||||
|
- Reconfigured local node to use `ws://127.0.0.1:18789` (SSH tunnel) instead of direct Tailscale IP.
|
||||||
|
|
||||||
|
### Added
|
||||||
|
- Created `scripts/openclaw-check.sh` for quick local health and log diagnostics.
|
||||||
|
- Updated `luca` project documentation on remote host to reflect the new tunnel architecture.
|
||||||
|
|
||||||
## 2026-03-11
|
## 2026-03-11
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|||||||
@@ -17,9 +17,8 @@ This repository documents the OpenClaw gateway integration for the satware AG Ma
|
|||||||
| **OS** | macOS 26.3.1 (Tahoe) |
|
| **OS** | macOS 26.3.1 (Tahoe) |
|
||||||
| **Kernel** | Darwin 25.3.0 (x86_64) |
|
| **Kernel** | Darwin 25.3.0 (x86_64) |
|
||||||
| **User** | MWsatwareAG |
|
| **User** | MWsatwareAG |
|
||||||
| **Local IP** | 10.11.206.26 (en0) |
|
| **Local IP** | 100.64.0.12 (Tailscale) |
|
||||||
| **Tailscale IP** | 100.64.0.12 |
|
| **OpenClaw Version** | core v2026.3.13 |
|
||||||
| **OpenClaw Version** | core v2026.3.8 |
|
|
||||||
|
|
||||||
## Node Configuration
|
## Node Configuration
|
||||||
|
|
||||||
@@ -37,10 +36,10 @@ This repository documents the OpenClaw gateway integration for the satware AG Ma
|
|||||||
│ │ │ │
|
│ │ │ │
|
||||||
│ OpenClaw Node │ WebSocket │ OpenClaw Gateway │
|
│ OpenClaw Node │ WebSocket │ OpenClaw Gateway │
|
||||||
│ (remote mode) │◄──────────────────►│ (100.64.0.39) │
|
│ (remote mode) │◄──────────────────►│ (100.64.0.39) │
|
||||||
│ v2026.3.8 │ Port 18789 │ Port 18789 │
|
│ v2026.3.13 │ Port 18789 │ Port 18789 │
|
||||||
│ │ │ │
|
│ │ │ │
|
||||||
│ SSH Client │ SSH Tunnel │ SSH Server │
|
│ SSH Client │ SSH Tunnel │ SSH Server │
|
||||||
│ │──────────────────►│ Port 2222 │
|
│ (LaunchAgent) │──────────────────►│ Port 2222 │
|
||||||
└─────────────────────┘ └─────────────────────┘
|
└─────────────────────┘ └─────────────────────┘
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -48,15 +47,11 @@ This repository documents the OpenClaw gateway integration for the satware AG Ma
|
|||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"meta": {
|
"meta": {
|
||||||
"lastTouchedVersion": "2026.3.8"
|
"lastTouchedVersion": "2026.3.13"
|
||||||
},
|
},
|
||||||
"gateway": {
|
"gateway": {
|
||||||
"mode": "remote",
|
|
||||||
"remote": {
|
"remote": {
|
||||||
"url": "ws://100.64.0.39:18789",
|
"url": "ws://127.0.0.1:18789"
|
||||||
"token": "skt3_W8A5AVp...",
|
|
||||||
"sshTarget": "root@100.64.0.39:2222",
|
|
||||||
"sshIdentity": "/Users/MWsatwareAG/.ssh/id_ed25519"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -342,34 +337,35 @@ glab auth login --hostname gitlab.satware.com --token <TOKEN>
|
|||||||
|
|
||||||
## Verification Status
|
## Verification Status
|
||||||
|
|
||||||
**Last Verified**: 2026-03-11 23:15 CET
|
**Last Verified**: 2026-03-22 11:30 CET
|
||||||
|
|
||||||
| Component | Status |
|
| Component | Status |
|
||||||
|-----------|--------|
|
|-----------|--------|
|
||||||
| **Node Connection** | ✅ Paired & Connected |
|
| **Node Connection** | ✅ Paired & Connected (Headless + App) |
|
||||||
| **Gateway Health** | ✅ OK (158ms via Tailscale) |
|
| **Gateway Health** | ✅ OK (Transparent via SSH Tunnel) |
|
||||||
| **system.run** | ✅ Working |
|
| **system.run** | ✅ Working |
|
||||||
| **Vision (Peekaboo)**| ✅ Active |
|
| **Vision (Peekaboo)**| ✅ Active |
|
||||||
| **iMessage (imsg)** | ✅ Active |
|
| **iMessage (imsg)** | ✅ Active |
|
||||||
| **Capabilities** | `browser`, `system`, `peekaboo`, `imsg`, `apple-notes` |
|
| **Capabilities** | `browser`, `system`, `camera`, `canvas`, `screen`, `location` |
|
||||||
|
|
||||||
### MacBook launchd Services
|
### MacBook launchd Services
|
||||||
|
|
||||||
| Service | Status | Purpose |
|
| Service | Status | Purpose |
|
||||||
|---------|--------|---------|
|
|---------|--------|---------|
|
||||||
| `ai.openclaw.node` | Running | Primary Node service (v2026.3.8) |
|
| `ai.openclaw.node` | Running | Manages SSH Tunnel and Headless Node (v2026.3.13) |
|
||||||
| `ai.openclaw.gateway` | Unloaded | Disabled (remote node role) |
|
| `ai.openclaw.gateway` | Unloaded | Disabled (remote node role) |
|
||||||
| `com.satware.openclaw-tunnel` | Running | SSH tunnel to gateway |
|
| `OpenClaw.app` | Running | macOS Companion App (v2026.3.13) |
|
||||||
|
|
||||||
### Management Commands (on MacBook)
|
### Management Commands (on MacBook)
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Check service status
|
# Check service status
|
||||||
launchctl list | grep openclaw
|
launchctl list | grep ai.openclaw
|
||||||
|
ps aux | grep openclaw
|
||||||
|
|
||||||
# Restart SSH tunnel
|
# Restart Node and Tunnel
|
||||||
launchctl unload ~/Library/LaunchAgents/com.satware.openclaw-tunnel.plist
|
launchctl unload ~/Library/LaunchAgents/ai.openclaw.node.plist
|
||||||
launchctl load ~/Library/LaunchAgents/com.satware.openclaw-tunnel.plist
|
launchctl load ~/Library/LaunchAgents/ai.openclaw.node.plist
|
||||||
```
|
```
|
||||||
|
|
||||||
### Verify from Gateway
|
### Verify from Gateway
|
||||||
|
|||||||
Reference in New Issue
Block a user