openclaw-rocketchat 0.7.7 → 0.7.9
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.en.md +184 -184
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +32 -23
- package/dist/cli/setup.js.map +1 -1
- package/install-rc.sh +23 -0
- package/package.json +1 -1
package/README.en.md
CHANGED
|
@@ -1,184 +1,184 @@
|
|
|
1
|
-
<div align="center">
|
|
2
|
-
|
|
3
|
-
# 🦞 openclaw-rocketchat
|
|
4
|
-
|
|
5
|
-
**The Missing Channel for OpenClaw Users in China**
|
|
6
|
-
|
|
7
|
-
[](https://www.npmjs.com/package/openclaw-rocketchat)
|
|
8
|
-
[](LICENSE)
|
|
9
|
-
[](https://github.com/Kxiandaoyan/openclaw-rocketchat)
|
|
10
|
-
[](https://nodejs.org/)
|
|
11
|
-
[](https://www.typescriptlang.org/)
|
|
12
|
-
|
|
13
|
-
[中文](./README.md) | **English**
|
|
14
|
-
|
|
15
|
-
---
|
|
16
|
-
|
|
17
|
-
**Chat with your OpenClaw AI via Rocket.Chat App**
|
|
18
|
-
**Dedicated Space · Dedicated Notifications · Self-Hosted · No VPN Required**
|
|
19
|
-
|
|
20
|
-
</div>
|
|
21
|
-
|
|
22
|
-
> **📖 Docs:** [Guide](docs/GUIDE.en.md) · [FAQ](docs/FAQ.en.md) · [Configuration](docs/CONFIGURATION.en.md) · [Architecture](docs/ARCHITECTURE.en.md) · [Security](docs/SECURITY.en.md)
|
|
23
|
-
|
|
24
|
-
---
|
|
25
|
-
|
|
26
|
-
## The Problem
|
|
27
|
-
|
|
28
|
-
OpenClaw supports Telegram, WhatsApp, Discord, and 10+ other messaging platforms. Users worldwide can chat with their AI assistants through their favorite apps.
|
|
29
|
-
|
|
30
|
-
**But what about users in mainland China?**
|
|
31
|
-
|
|
32
|
-
- Telegram — blocked by the Great Firewall
|
|
33
|
-
- WhatsApp — requires a foreign phone number
|
|
34
|
-
- Discord — completely inaccessible
|
|
35
|
-
- Feishu (Lark) — complex setup, requires enterprise account
|
|
36
|
-
|
|
37
|
-
And there's a deeper problem: **even if these platforms work, your AI conversations get buried in social noise** — friend messages, group chats, channel updates. Important AI responses disappear in the flood.
|
|
38
|
-
|
|
39
|
-
## The Solution
|
|
40
|
-
|
|
41
|
-
> **What is Rocket.Chat?** [Rocket.Chat](https://www.rocket.chat/) is the world's largest open-source enterprise messaging platform, used by 12M+ users globally. Think of it as a self-hosted Slack/Teams you can run on your own server — polished UI, full-featured, multi-platform (phone/desktop/web), and downloadable from China's App Store.
|
|
42
|
-
|
|
43
|
-
This plugin connects OpenClaw to **Rocket.Chat**. One command to deploy. Three steps to start chatting. **Your AI data never passes through third parties.**
|
|
44
|
-
|
|
45
|
-
## Ten Advantages
|
|
46
|
-
|
|
47
|
-
- 🏠 **Dedicated AI Workspace** — Open Rocket.Chat and see only your AI assistants, no social noise
|
|
48
|
-
- 🔔 **Dedicated Push Notifications** — AI messages aren't buried in other app notifications
|
|
49
|
-
- 🔐 **Complete Data Sovereignty** — Messages stay on your server, never touch third parties
|
|
50
|
-
- 🇨🇳 **Works Perfectly in China** — Direct App Store download, no VPN, auto free domain + HTTPS cert
|
|
51
|
-
- ⚡ **One-Command Deployment** — Interactive wizard handles Docker, accounts, and config in one go
|
|
52
|
-
- 🤖 **Multi-Agent, Multi-Bot** — Each Agent maps to a dedicated Rocket.Chat bot
|
|
53
|
-
- 👥 **Team Collaboration** — Share AI across your whole team in the same group
|
|
54
|
-
- 🔒 **Fine-Grained Permissions** — Full access / read-only roles for different team members
|
|
55
|
-
- 📱 **Cross-Platform** — iOS, Android, macOS, Windows, Linux, Web — real-time sync across all devices
|
|
56
|
-
- 🆓 **Free & Open Source** — MIT license, no subscriptions, no message limits, no vendor lock-in
|
|
57
|
-
|
|
58
|
-
### Technical Features (v0.7.1)
|
|
59
|
-
|
|
60
|
-
| Feature | Description |
|
|
61
|
-
|---------|-------------|
|
|
62
|
-
| Typing Indicator | Shows "typing..." on phone while the Agent is thinking |
|
|
63
|
-
| Threaded Replies | Agent replies are linked to the corresponding message thread |
|
|
64
|
-
| Group History Context | When @mentioned, Agent sees recent group conversation for context |
|
|
65
|
-
| Sender Identity | Agent distinguishes who is speaking in group chats |
|
|
66
|
-
| Media File Upload | Agent-sent images/files are actually uploaded to Rocket.Chat |
|
|
67
|
-
| @Mention State | Correctly passes `WasMentioned` field, matching official channel behavior |
|
|
68
|
-
| authToken Compat | Auto-compatible with legacy credential format, no re-add needed |
|
|
69
|
-
| One-Click Upgrade | `openclaw rocketchat upgrade` auto backup/restore config |
|
|
70
|
-
| Security Hardening | Install script auto-generates strong random admin password, eliminating `admin/admin` risk |
|
|
71
|
-
| Install Info Persistence | Install info saved to `.rc-info`, setup auto-reads it — zero manual input |
|
|
72
|
-
|
|
73
|
-
## Comparison
|
|
74
|
-
|
|
75
|
-
| | Feishu | Telegram | WhatsApp | This Plugin |
|
|
76
|
-
|---|---|---|---|---|
|
|
77
|
-
| **China Available** | ✅ | ❌ VPN needed | ❌ Foreign # needed | ✅ |
|
|
78
|
-
| **Setup Complexity** | 🔴 High | 🔴 High | 🔴 High | 🟢 One command |
|
|
79
|
-
| **Data Privacy** | 🟡 Via 3rd party | 🟡 Via 3rd party | 🟡 Via 3rd party | 🟢 Fully local |
|
|
80
|
-
| **Multi-User Team** | Enterprise only | ❌ | ❌ | ✅ One deploy for all |
|
|
81
|
-
| **Free & Open Source** | ❌ | ❌ | ❌ | ✅ MIT |
|
|
82
|
-
|
|
83
|
-
> Full comparison table at [docs/ARCHITECTURE.en.md](docs/ARCHITECTURE.en.md)
|
|
84
|
-
|
|
85
|
-
## Quick Start (3 Steps)
|
|
86
|
-
|
|
87
|
-
> **Full walkthrough with terminal output examples: [Usage Guide](docs/GUIDE.en.md)**
|
|
88
|
-
|
|
89
|
-
### Step 1: Deploy Rocket.Chat
|
|
90
|
-
|
|
91
|
-
```bash
|
|
92
|
-
curl -fsSL https://raw.githubusercontent.com/Kxiandaoyan/openclaw-rocketchat/master/install-rc.sh | bash
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
The script auto-handles Docker deployment, free domain, and HTTPS certificate.
|
|
96
|
-
|
|
97
|
-
### Step 2: Install Plugin + Configure
|
|
98
|
-
|
|
99
|
-
```bash
|
|
100
|
-
openclaw plugins install openclaw-rocketchat
|
|
101
|
-
openclaw rocketchat setup
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
Interactive wizard guides you through connection and account creation. On the same machine, it auto-detects install info.
|
|
105
|
-
|
|
106
|
-
### Step 3: Add an AI Bot
|
|
107
|
-
|
|
108
|
-
```bash
|
|
109
|
-
openclaw rocketchat add-bot
|
|
110
|
-
```
|
|
111
|
-
|
|
112
|
-
Type a bot name, pick an Agent, done.
|
|
113
|
-
|
|
114
|
-
### Step 4: Download Rocket.Chat on Your Phone, Start Chatting
|
|
115
|
-
|
|
116
|
-
1. Search **"Rocket.Chat"** on App Store / Google Play
|
|
117
|
-
2. Open the app, enter server address (e.g. `https://123-45-67-89.sslip.io`)
|
|
118
|
-
3. Login with your credentials from Step 2
|
|
119
|
-
4. Find your bot and start chatting!
|
|
120
|
-
|
|
121
|
-
### 📱 Mobile App Screenshots
|
|
122
|
-
|
|
123
|
-
| Step | Screenshot |
|
|
124
|
-
|------|-----------|
|
|
125
|
-
| Open App, enter server URL | <img src="images/1.jpg" width="280"> |
|
|
126
|
-
| Tap Connect to reach login | <img src="images/2.jpg" width="280"> |
|
|
127
|
-
| Conversation list after login | <img src="images/3.jpg" width="280"> |
|
|
128
|
-
| Chat with your AI bot | <img src="images/4.jpg" width="280"> |
|
|
129
|
-
|
|
130
|
-
> **Highlight**: Code blocks in AI replies are **automatically syntax-highlighted and beautifully formatted** in Rocket.Chat App — unlike WeChat/DingTalk/Slack where code gets squished into unreadable blobs. A much better experience for developers and technical users.
|
|
131
|
-
|
|
132
|
-
## Commands
|
|
133
|
-
|
|
134
|
-
| Command | Description |
|
|
135
|
-
|---|---|
|
|
136
|
-
| `openclaw rocketchat setup` | Connect to Rocket.Chat + create admin + create phone account |
|
|
137
|
-
| `openclaw rocketchat add-bot` | Add bot + bind Agent + create DM |
|
|
138
|
-
| `openclaw rocketchat add-group` | Create private channel (multi-bot group) |
|
|
139
|
-
| `openclaw rocketchat add-user` | Add phone login user |
|
|
140
|
-
| `openclaw rocketchat remove-user` | Remove phone login user |
|
|
141
|
-
| `openclaw rocketchat invite` | Manage group members |
|
|
142
|
-
| `openclaw rocketchat status` | View running status |
|
|
143
|
-
| `openclaw rocketchat upgrade` | **One-click upgrade (auto backup/restore config)** |
|
|
144
|
-
| `openclaw rocketchat uninstall` | Uninstall |
|
|
145
|
-
|
|
146
|
-
All commands are **interactive** — no flags to memorize, just follow the prompts.
|
|
147
|
-
|
|
148
|
-
## Documentation
|
|
149
|
-
|
|
150
|
-
| Document | Content |
|
|
151
|
-
|----------|---------|
|
|
152
|
-
| [Usage Guide](docs/GUIDE.en.md) | Full step-by-step walkthrough, terminal output examples, remote deployment, user management |
|
|
153
|
-
| [FAQ](docs/FAQ.en.md) | Registration disabled, upgrades, reset, Docker commands, certificates, push notifications |
|
|
154
|
-
| [Configuration](docs/CONFIGURATION.en.md) | Full parameter tables, JSON example, manual editing, full reset |
|
|
155
|
-
| [Architecture](docs/ARCHITECTURE.en.md) | Full comparison table, architecture diagrams, tech stack |
|
|
156
|
-
| [Security](docs/SECURITY.en.md) | Password security, credential storage, backup/restore, file permissions |
|
|
157
|
-
|
|
158
|
-
## Contributing
|
|
159
|
-
|
|
160
|
-
Contributions welcome! Whether it's bug reports, feature suggestions, or code:
|
|
161
|
-
|
|
162
|
-
1. Fork this repository
|
|
163
|
-
2. Create your branch (`git checkout -b feature/amazing`)
|
|
164
|
-
3. Commit changes (`git commit -m 'Add amazing feature'`)
|
|
165
|
-
4. Push to remote (`git push origin feature/amazing`)
|
|
166
|
-
5. Create a Pull Request
|
|
167
|
-
|
|
168
|
-
## License
|
|
169
|
-
|
|
170
|
-
[MIT](LICENSE) — Free to use, free to modify.
|
|
171
|
-
|
|
172
|
-
---
|
|
173
|
-
|
|
174
|
-
<div align="center">
|
|
175
|
-
|
|
176
|
-
**If this plugin helps you, please give it a Star ⭐**
|
|
177
|
-
|
|
178
|
-
**Every Star shows support for the Chinese developer community 🇨🇳**
|
|
179
|
-
|
|
180
|
-
[](https://star-history.com/#Kxiandaoyan/openclaw-rocketchat&Date)
|
|
181
|
-
|
|
182
|
-
*Making AI assistants accessible to every user in China*
|
|
183
|
-
|
|
184
|
-
</div>
|
|
1
|
+
<div align="center">
|
|
2
|
+
|
|
3
|
+
# 🦞 openclaw-rocketchat
|
|
4
|
+
|
|
5
|
+
**The Missing Channel for OpenClaw Users in China**
|
|
6
|
+
|
|
7
|
+
[](https://www.npmjs.com/package/openclaw-rocketchat)
|
|
8
|
+
[](LICENSE)
|
|
9
|
+
[](https://github.com/Kxiandaoyan/openclaw-rocketchat)
|
|
10
|
+
[](https://nodejs.org/)
|
|
11
|
+
[](https://www.typescriptlang.org/)
|
|
12
|
+
|
|
13
|
+
[中文](./README.md) | **English**
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
**Chat with your OpenClaw AI via Rocket.Chat App**
|
|
18
|
+
**Dedicated Space · Dedicated Notifications · Self-Hosted · No VPN Required**
|
|
19
|
+
|
|
20
|
+
</div>
|
|
21
|
+
|
|
22
|
+
> **📖 Docs:** [Guide](docs/GUIDE.en.md) · [FAQ](docs/FAQ.en.md) · [Configuration](docs/CONFIGURATION.en.md) · [Architecture](docs/ARCHITECTURE.en.md) · [Security](docs/SECURITY.en.md)
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## The Problem
|
|
27
|
+
|
|
28
|
+
OpenClaw supports Telegram, WhatsApp, Discord, and 10+ other messaging platforms. Users worldwide can chat with their AI assistants through their favorite apps.
|
|
29
|
+
|
|
30
|
+
**But what about users in mainland China?**
|
|
31
|
+
|
|
32
|
+
- Telegram — blocked by the Great Firewall
|
|
33
|
+
- WhatsApp — requires a foreign phone number
|
|
34
|
+
- Discord — completely inaccessible
|
|
35
|
+
- Feishu (Lark) — complex setup, requires enterprise account
|
|
36
|
+
|
|
37
|
+
And there's a deeper problem: **even if these platforms work, your AI conversations get buried in social noise** — friend messages, group chats, channel updates. Important AI responses disappear in the flood.
|
|
38
|
+
|
|
39
|
+
## The Solution
|
|
40
|
+
|
|
41
|
+
> **What is Rocket.Chat?** [Rocket.Chat](https://www.rocket.chat/) is the world's largest open-source enterprise messaging platform, used by 12M+ users globally. Think of it as a self-hosted Slack/Teams you can run on your own server — polished UI, full-featured, multi-platform (phone/desktop/web), and downloadable from China's App Store.
|
|
42
|
+
|
|
43
|
+
This plugin connects OpenClaw to **Rocket.Chat**. One command to deploy. Three steps to start chatting. **Your AI data never passes through third parties.**
|
|
44
|
+
|
|
45
|
+
## Ten Advantages
|
|
46
|
+
|
|
47
|
+
- 🏠 **Dedicated AI Workspace** — Open Rocket.Chat and see only your AI assistants, no social noise
|
|
48
|
+
- 🔔 **Dedicated Push Notifications** — AI messages aren't buried in other app notifications
|
|
49
|
+
- 🔐 **Complete Data Sovereignty** — Messages stay on your server, never touch third parties
|
|
50
|
+
- 🇨🇳 **Works Perfectly in China** — Direct App Store download, no VPN, auto free domain + HTTPS cert
|
|
51
|
+
- ⚡ **One-Command Deployment** — Interactive wizard handles Docker, accounts, and config in one go
|
|
52
|
+
- 🤖 **Multi-Agent, Multi-Bot** — Each Agent maps to a dedicated Rocket.Chat bot
|
|
53
|
+
- 👥 **Team Collaboration** — Share AI across your whole team in the same group
|
|
54
|
+
- 🔒 **Fine-Grained Permissions** — Full access / read-only roles for different team members
|
|
55
|
+
- 📱 **Cross-Platform** — iOS, Android, macOS, Windows, Linux, Web — real-time sync across all devices
|
|
56
|
+
- 🆓 **Free & Open Source** — MIT license, no subscriptions, no message limits, no vendor lock-in
|
|
57
|
+
|
|
58
|
+
### Technical Features (v0.7.1)
|
|
59
|
+
|
|
60
|
+
| Feature | Description |
|
|
61
|
+
|---------|-------------|
|
|
62
|
+
| Typing Indicator | Shows "typing..." on phone while the Agent is thinking |
|
|
63
|
+
| Threaded Replies | Agent replies are linked to the corresponding message thread |
|
|
64
|
+
| Group History Context | When @mentioned, Agent sees recent group conversation for context |
|
|
65
|
+
| Sender Identity | Agent distinguishes who is speaking in group chats |
|
|
66
|
+
| Media File Upload | Agent-sent images/files are actually uploaded to Rocket.Chat |
|
|
67
|
+
| @Mention State | Correctly passes `WasMentioned` field, matching official channel behavior |
|
|
68
|
+
| authToken Compat | Auto-compatible with legacy credential format, no re-add needed |
|
|
69
|
+
| One-Click Upgrade | `openclaw rocketchat upgrade` auto backup/restore config |
|
|
70
|
+
| Security Hardening | Install script auto-generates strong random admin password, eliminating `admin/admin` risk |
|
|
71
|
+
| Install Info Persistence | Install info saved to `.rc-info`, setup auto-reads it — zero manual input |
|
|
72
|
+
|
|
73
|
+
## Comparison
|
|
74
|
+
|
|
75
|
+
| | Feishu | Telegram | WhatsApp | This Plugin |
|
|
76
|
+
|---|---|---|---|---|
|
|
77
|
+
| **China Available** | ✅ | ❌ VPN needed | ❌ Foreign # needed | ✅ |
|
|
78
|
+
| **Setup Complexity** | 🔴 High | 🔴 High | 🔴 High | 🟢 One command |
|
|
79
|
+
| **Data Privacy** | 🟡 Via 3rd party | 🟡 Via 3rd party | 🟡 Via 3rd party | 🟢 Fully local |
|
|
80
|
+
| **Multi-User Team** | Enterprise only | ❌ | ❌ | ✅ One deploy for all |
|
|
81
|
+
| **Free & Open Source** | ❌ | ❌ | ❌ | ✅ MIT |
|
|
82
|
+
|
|
83
|
+
> Full comparison table at [docs/ARCHITECTURE.en.md](docs/ARCHITECTURE.en.md)
|
|
84
|
+
|
|
85
|
+
## Quick Start (3 Steps)
|
|
86
|
+
|
|
87
|
+
> **Full walkthrough with terminal output examples: [Usage Guide](docs/GUIDE.en.md)**
|
|
88
|
+
|
|
89
|
+
### Step 1: Deploy Rocket.Chat
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
curl -fsSL https://raw.githubusercontent.com/Kxiandaoyan/openclaw-rocketchat/master/install-rc.sh | bash
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
The script auto-handles Docker deployment, free domain, and HTTPS certificate.
|
|
96
|
+
|
|
97
|
+
### Step 2: Install Plugin + Configure
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
openclaw plugins install openclaw-rocketchat
|
|
101
|
+
openclaw rocketchat setup
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
Interactive wizard guides you through connection and account creation. On the same machine, it auto-detects install info.
|
|
105
|
+
|
|
106
|
+
### Step 3: Add an AI Bot
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
openclaw rocketchat add-bot
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
Type a bot name, pick an Agent, done.
|
|
113
|
+
|
|
114
|
+
### Step 4: Download Rocket.Chat on Your Phone, Start Chatting
|
|
115
|
+
|
|
116
|
+
1. Search **"Rocket.Chat"** on App Store / Google Play
|
|
117
|
+
2. Open the app, enter server address (e.g. `https://123-45-67-89.sslip.io`)
|
|
118
|
+
3. Login with your credentials from Step 2
|
|
119
|
+
4. Find your bot and start chatting!
|
|
120
|
+
|
|
121
|
+
### 📱 Mobile App Screenshots
|
|
122
|
+
|
|
123
|
+
| Step | Screenshot |
|
|
124
|
+
|------|-----------|
|
|
125
|
+
| Open App, enter server URL | <img src="images/1.jpg" width="280"> |
|
|
126
|
+
| Tap Connect to reach login | <img src="images/2.jpg" width="280"> |
|
|
127
|
+
| Conversation list after login | <img src="images/3.jpg" width="280"> |
|
|
128
|
+
| Chat with your AI bot | <img src="images/4.jpg" width="280"> |
|
|
129
|
+
|
|
130
|
+
> **Highlight**: Code blocks in AI replies are **automatically syntax-highlighted and beautifully formatted** in Rocket.Chat App — unlike WeChat/DingTalk/Slack where code gets squished into unreadable blobs. A much better experience for developers and technical users.
|
|
131
|
+
|
|
132
|
+
## Commands
|
|
133
|
+
|
|
134
|
+
| Command | Description |
|
|
135
|
+
|---|---|
|
|
136
|
+
| `openclaw rocketchat setup` | Connect to Rocket.Chat + create admin + create phone account |
|
|
137
|
+
| `openclaw rocketchat add-bot` | Add bot + bind Agent + create DM |
|
|
138
|
+
| `openclaw rocketchat add-group` | Create private channel (multi-bot group) |
|
|
139
|
+
| `openclaw rocketchat add-user` | Add phone login user |
|
|
140
|
+
| `openclaw rocketchat remove-user` | Remove phone login user |
|
|
141
|
+
| `openclaw rocketchat invite` | Manage group members |
|
|
142
|
+
| `openclaw rocketchat status` | View running status |
|
|
143
|
+
| `openclaw rocketchat upgrade` | **One-click upgrade (auto backup/restore config)** |
|
|
144
|
+
| `openclaw rocketchat uninstall` | Uninstall |
|
|
145
|
+
|
|
146
|
+
All commands are **interactive** — no flags to memorize, just follow the prompts.
|
|
147
|
+
|
|
148
|
+
## Documentation
|
|
149
|
+
|
|
150
|
+
| Document | Content |
|
|
151
|
+
|----------|---------|
|
|
152
|
+
| [Usage Guide](docs/GUIDE.en.md) | Full step-by-step walkthrough, terminal output examples, remote deployment, user management |
|
|
153
|
+
| [FAQ](docs/FAQ.en.md) | Registration disabled, upgrades, reset, Docker commands, certificates, push notifications |
|
|
154
|
+
| [Configuration](docs/CONFIGURATION.en.md) | Full parameter tables, JSON example, manual editing, full reset |
|
|
155
|
+
| [Architecture](docs/ARCHITECTURE.en.md) | Full comparison table, architecture diagrams, tech stack |
|
|
156
|
+
| [Security](docs/SECURITY.en.md) | Password security, credential storage, backup/restore, file permissions |
|
|
157
|
+
|
|
158
|
+
## Contributing
|
|
159
|
+
|
|
160
|
+
Contributions welcome! Whether it's bug reports, feature suggestions, or code:
|
|
161
|
+
|
|
162
|
+
1. Fork this repository
|
|
163
|
+
2. Create your branch (`git checkout -b feature/amazing`)
|
|
164
|
+
3. Commit changes (`git commit -m 'Add amazing feature'`)
|
|
165
|
+
4. Push to remote (`git push origin feature/amazing`)
|
|
166
|
+
5. Create a Pull Request
|
|
167
|
+
|
|
168
|
+
## License
|
|
169
|
+
|
|
170
|
+
[MIT](LICENSE) — Free to use, free to modify.
|
|
171
|
+
|
|
172
|
+
---
|
|
173
|
+
|
|
174
|
+
<div align="center">
|
|
175
|
+
|
|
176
|
+
**If this plugin helps you, please give it a Star ⭐**
|
|
177
|
+
|
|
178
|
+
**Every Star shows support for the Chinese developer community 🇨🇳**
|
|
179
|
+
|
|
180
|
+
[](https://star-history.com/#Kxiandaoyan/openclaw-rocketchat&Date)
|
|
181
|
+
|
|
182
|
+
*Making AI assistants accessible to every user in China*
|
|
183
|
+
|
|
184
|
+
</div>
|
package/dist/cli/setup.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"AAqFA,wBAAsB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"AAqFA,wBAAsB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAyMpE"}
|
package/dist/cli/setup.js
CHANGED
|
@@ -81,20 +81,27 @@ export async function setupCommand(configPath) {
|
|
|
81
81
|
// ----------------------------------------------------------
|
|
82
82
|
const rcInfo = tryLoadRcInfo();
|
|
83
83
|
let autoMode = false;
|
|
84
|
+
/** 外部域名(sslip.io),用于最终提示手机连接地址 */
|
|
85
|
+
let externalDomain;
|
|
86
|
+
// ----------------------------------------------------------
|
|
87
|
+
// 1. 确定连接方式 + 服务器地址
|
|
88
|
+
// ----------------------------------------------------------
|
|
89
|
+
let serverUrl;
|
|
84
90
|
if (rcInfo) {
|
|
85
|
-
|
|
86
|
-
|
|
91
|
+
// 能读到 .rc-info → 一定是本机部署
|
|
92
|
+
success("检测到本机 Rocket.Chat 安装信息");
|
|
87
93
|
if (rcInfo.domain)
|
|
88
94
|
info(` 域名: ${rcInfo.domain}`);
|
|
89
95
|
if (rcInfo.adminUser)
|
|
90
96
|
info(` 管理员: ${rcInfo.adminUser}`);
|
|
91
97
|
console.log("");
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
}
|
|
98
|
+
autoMode = true;
|
|
99
|
+
serverUrl = "https://127.0.0.1";
|
|
100
|
+
externalDomain = rcInfo.domain;
|
|
101
|
+
info(`本机部署,使用 ${serverUrl} 连接`);
|
|
96
102
|
}
|
|
97
|
-
|
|
103
|
+
else {
|
|
104
|
+
// 未检测到本地安装 → 让用户选择连接方式
|
|
98
105
|
console.log("");
|
|
99
106
|
info("本命令用于连接 Rocket.Chat 服务器并配置插件。");
|
|
100
107
|
info("如果还没有部署 Rocket.Chat,请先运行 install-rc.sh:");
|
|
@@ -102,18 +109,17 @@ export async function setupCommand(configPath) {
|
|
|
102
109
|
info(" 本机部署: bash install-rc.sh");
|
|
103
110
|
info(" 远程 VPS: SSH 到 VPS 上运行 bash install-rc.sh");
|
|
104
111
|
console.log("");
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
serverUrl = await ask("Rocket.Chat 服务器地址\n (本机部署填 https://127.0.0.1,远程填 install-rc.sh 输出的 https://xxx.sslip.io 地址)", defaultUrl) || "";
|
|
112
|
+
const deployMode = await select("连接方式", [
|
|
113
|
+
{ label: "本机部署(Rocket.Chat 在当前服务器上)", value: "local" },
|
|
114
|
+
{ label: "远程连接(Rocket.Chat 在其他服务器上)", value: "remote" },
|
|
115
|
+
]);
|
|
116
|
+
if (deployMode === "local") {
|
|
117
|
+
serverUrl = "https://127.0.0.1";
|
|
118
|
+
info(`本机部署,使用 ${serverUrl} 连接`);
|
|
119
|
+
}
|
|
120
|
+
else {
|
|
121
|
+
serverUrl = await ask("Rocket.Chat 服务器地址\n (填 install-rc.sh 输出的 https://xxx.sslip.io 地址)", "https://") || "";
|
|
122
|
+
}
|
|
117
123
|
}
|
|
118
124
|
if (!serverUrl) {
|
|
119
125
|
error("地址不能为空!");
|
|
@@ -247,7 +253,7 @@ export async function setupCommand(configPath) {
|
|
|
247
253
|
// ----------------------------------------------------------
|
|
248
254
|
// 6. 完成提示
|
|
249
255
|
// ----------------------------------------------------------
|
|
250
|
-
printFinishBanner(cleanUrl, username, port);
|
|
256
|
+
printFinishBanner(cleanUrl, username, port, externalDomain);
|
|
251
257
|
}
|
|
252
258
|
// ==============================================================
|
|
253
259
|
// 辅助函数
|
|
@@ -500,10 +506,9 @@ async function createPersonalAccount(rc, username, password) {
|
|
|
500
506
|
}
|
|
501
507
|
}
|
|
502
508
|
/** 打印完成横幅 */
|
|
503
|
-
function printFinishBanner(serverUrl, username, _port) {
|
|
509
|
+
function printFinishBanner(serverUrl, username, _port, externalDomain) {
|
|
504
510
|
// 如果是 localhost/127.0.0.1,提醒用户手机要用公网 IP
|
|
505
511
|
const isLocal = /localhost|127\.0\.0\.1/.test(serverUrl);
|
|
506
|
-
const isHttps = serverUrl.startsWith("https://");
|
|
507
512
|
console.log("");
|
|
508
513
|
console.log("╔══════════════════════════════════════════╗");
|
|
509
514
|
console.log("║ 🎉 配置完成! ║");
|
|
@@ -511,7 +516,11 @@ function printFinishBanner(serverUrl, username, _port) {
|
|
|
511
516
|
console.log("");
|
|
512
517
|
info("📱 手机操作:");
|
|
513
518
|
info(` 1. App Store 搜索下载 "Rocket.Chat"`);
|
|
514
|
-
if (isLocal) {
|
|
519
|
+
if (isLocal && externalDomain) {
|
|
520
|
+
info(` 2. 打开 App,服务器填: https://${externalDomain}`);
|
|
521
|
+
info(" (手机不能用 127.0.0.1,需要填 sslip.io 域名)");
|
|
522
|
+
}
|
|
523
|
+
else if (isLocal) {
|
|
515
524
|
info(` 2. 打开 App,服务器填: install-rc.sh 输出的 https://xxx.sslip.io 地址`);
|
|
516
525
|
info(" (手机不能用 127.0.0.1,需要填 sslip.io 域名或服务器公网 IP)");
|
|
517
526
|
}
|
package/dist/cli/setup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"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"}
|
package/install-rc.sh
CHANGED
|
@@ -352,6 +352,22 @@ CERT_ISSUED=false
|
|
|
352
352
|
step "申请 Let's Encrypt 证书..."
|
|
353
353
|
info "策略 1: HTTP-01 验证(standalone 模式,使用 80 端口)"
|
|
354
354
|
|
|
355
|
+
# 辅助函数:检查 acme.sh 是否已有此域名的有效证书
|
|
356
|
+
check_existing_cert() {
|
|
357
|
+
local domain="$1"
|
|
358
|
+
local cert_dir
|
|
359
|
+
# acme.sh 证书目录可能是 domain 或 domain_ecc
|
|
360
|
+
for cert_dir in "$HOME/.acme.sh/${domain}" "$HOME/.acme.sh/${domain}_ecc"; do
|
|
361
|
+
if [ -f "${cert_dir}/fullchain.cer" ] && [ -f "${cert_dir}/${domain}.key" ]; then
|
|
362
|
+
# 检查证书是否未过期
|
|
363
|
+
if openssl x509 -checkend 86400 -noout -in "${cert_dir}/fullchain.cer" 2>/dev/null; then
|
|
364
|
+
return 0 # 有效证书存在
|
|
365
|
+
fi
|
|
366
|
+
fi
|
|
367
|
+
done
|
|
368
|
+
return 1 # 没有有效证书
|
|
369
|
+
}
|
|
370
|
+
|
|
355
371
|
if "$ACME_SH" --issue --standalone -d "${RC_DOMAIN}" \
|
|
356
372
|
--server letsencrypt \
|
|
357
373
|
--keylength 2048 \
|
|
@@ -360,6 +376,10 @@ if "$ACME_SH" --issue --standalone -d "${RC_DOMAIN}" \
|
|
|
360
376
|
--post-hook "cd ${INSTALL_DIR} && ${COMPOSE_CMD} start nginx 2>/dev/null || true"; then
|
|
361
377
|
CERT_ISSUED=true
|
|
362
378
|
success "证书获取成功!(HTTP-01 验证)"
|
|
379
|
+
elif check_existing_cert "${RC_DOMAIN}"; then
|
|
380
|
+
# acme.sh 返回非零是因为证书已存在且未到期,无需续期
|
|
381
|
+
CERT_ISSUED=true
|
|
382
|
+
success "证书已存在且有效(未到期,无需续期)"
|
|
363
383
|
else
|
|
364
384
|
warn "HTTP-01 验证失败(80 端口可能不可用),自动切换后备方案..."
|
|
365
385
|
echo ""
|
|
@@ -374,6 +394,9 @@ else
|
|
|
374
394
|
--post-hook "cd ${INSTALL_DIR} && ${COMPOSE_CMD} start nginx 2>/dev/null || true"; then
|
|
375
395
|
CERT_ISSUED=true
|
|
376
396
|
success "证书获取成功!(TLS-ALPN-01 验证)"
|
|
397
|
+
elif check_existing_cert "${RC_DOMAIN}"; then
|
|
398
|
+
CERT_ISSUED=true
|
|
399
|
+
success "证书已存在且有效(未到期,无需续期)"
|
|
377
400
|
fi
|
|
378
401
|
fi
|
|
379
402
|
|
package/package.json
CHANGED