aicq-chat-plugin 2.5.3 → 2.5.5
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/SKILL.md +1 -1
- package/cli.js +11 -2
- package/openclaw.plugin.json +17 -5
- package/package.json +10 -2
- package/postinstall.js +9 -1
package/SKILL.md
CHANGED
package/cli.js
CHANGED
|
@@ -123,6 +123,7 @@ function findOpenClawWorkspace() {
|
|
|
123
123
|
}
|
|
124
124
|
|
|
125
125
|
// Try to find workspace from clawhub or common locations
|
|
126
|
+
// Prefer directories that already have a skills/ directory
|
|
126
127
|
const home = os.homedir();
|
|
127
128
|
const candidates = [
|
|
128
129
|
// Current working directory (most common for clawhub)
|
|
@@ -133,7 +134,7 @@ function findOpenClawWorkspace() {
|
|
|
133
134
|
path.join(home, '.openclaw'),
|
|
134
135
|
];
|
|
135
136
|
|
|
136
|
-
// Check if any candidate has a skills/ directory
|
|
137
|
+
// Check if any candidate has a skills/ directory (existing)
|
|
137
138
|
for (const dir of candidates) {
|
|
138
139
|
const skillsDir = path.join(dir, 'skills');
|
|
139
140
|
if (fs.existsSync(skillsDir)) {
|
|
@@ -151,6 +152,14 @@ function findOpenClawWorkspace() {
|
|
|
151
152
|
current = path.dirname(current);
|
|
152
153
|
}
|
|
153
154
|
|
|
155
|
+
// If no existing skills/ found, fall back to the OpenClaw directory itself.
|
|
156
|
+
// This handles the case where ~/.openclaw/ exists but has no skills/ yet.
|
|
157
|
+
// We'll auto-create skills/ inside it during installation.
|
|
158
|
+
const openclawDir = findOpenClawDir();
|
|
159
|
+
if (openclawDir) {
|
|
160
|
+
return openclawDir;
|
|
161
|
+
}
|
|
162
|
+
|
|
154
163
|
return null;
|
|
155
164
|
}
|
|
156
165
|
|
|
@@ -214,7 +223,7 @@ function installToDir(sourceDir, targetDir, version) {
|
|
|
214
223
|
function installToOpenClaw() {
|
|
215
224
|
const PLUGIN_ID = 'aicq-chat';
|
|
216
225
|
const sourceDir = path.resolve(__dirname);
|
|
217
|
-
let version = '2.5.
|
|
226
|
+
let version = '2.5.5';
|
|
218
227
|
|
|
219
228
|
// Read version from package.json
|
|
220
229
|
try {
|
package/openclaw.plugin.json
CHANGED
|
@@ -1,15 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"id": "aicq-chat",
|
|
3
3
|
"name": "AICQ Encrypted Chat",
|
|
4
|
-
"version": "2.5.
|
|
5
|
-
"description": "End-to-end encrypted chat plugin for OpenClaw agents
|
|
4
|
+
"version": "2.5.5",
|
|
5
|
+
"description": "End-to-end encrypted chat plugin for OpenClaw agents \u2014 Node.js implementation with full UI",
|
|
6
6
|
"entry": "index.js",
|
|
7
7
|
"activation": {
|
|
8
8
|
"onStartup": true
|
|
9
9
|
},
|
|
10
10
|
"enabledByDefault": true,
|
|
11
11
|
"contracts": {
|
|
12
|
-
"tools": [
|
|
12
|
+
"tools": [
|
|
13
|
+
"chat-friend",
|
|
14
|
+
"chat-send",
|
|
15
|
+
"chat-export-key"
|
|
16
|
+
],
|
|
13
17
|
"gateway": [
|
|
14
18
|
"aicq.status",
|
|
15
19
|
"aicq.friends.list",
|
|
@@ -36,12 +40,20 @@
|
|
|
36
40
|
},
|
|
37
41
|
"sidecar": {
|
|
38
42
|
"command": "node",
|
|
39
|
-
"args": [
|
|
43
|
+
"args": [
|
|
44
|
+
"index.js"
|
|
45
|
+
],
|
|
40
46
|
"port": 6109
|
|
41
47
|
},
|
|
42
48
|
"runtime": "node",
|
|
43
49
|
"requires": {
|
|
44
50
|
"node": ">=18.0.0",
|
|
45
|
-
"packages": [
|
|
51
|
+
"packages": [
|
|
52
|
+
"better-sqlite3",
|
|
53
|
+
"tweetnacl",
|
|
54
|
+
"ws",
|
|
55
|
+
"qrcode",
|
|
56
|
+
"express"
|
|
57
|
+
]
|
|
46
58
|
}
|
|
47
59
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "aicq-chat-plugin",
|
|
3
|
-
"version": "2.5.
|
|
4
|
-
"description": "AICQ End-to-end Encrypted Chat Plugin for OpenClaw
|
|
3
|
+
"version": "2.5.5",
|
|
4
|
+
"description": "AICQ End-to-end Encrypted Chat Plugin for OpenClaw \u2014 Full UI with friend management, group chat, file transfer, and AI agent communication",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"bin": {
|
|
7
7
|
"aicq-plugin": "cli.js"
|
|
@@ -56,5 +56,13 @@
|
|
|
56
56
|
},
|
|
57
57
|
"engines": {
|
|
58
58
|
"node": ">=18.0.0"
|
|
59
|
+
},
|
|
60
|
+
"openclaw": {
|
|
61
|
+
"extensions": [
|
|
62
|
+
"./index.js"
|
|
63
|
+
],
|
|
64
|
+
"compat": {
|
|
65
|
+
"pluginApi": ">=2026.3.24-beta.2"
|
|
66
|
+
}
|
|
59
67
|
}
|
|
60
68
|
}
|
package/postinstall.js
CHANGED
|
@@ -125,6 +125,14 @@ function findOpenClawWorkspace() {
|
|
|
125
125
|
current = path.dirname(current);
|
|
126
126
|
}
|
|
127
127
|
|
|
128
|
+
// If no existing skills/ found, fall back to the OpenClaw directory itself.
|
|
129
|
+
// This handles the case where ~/.openclaw/ exists but has no skills/ yet.
|
|
130
|
+
// We'll auto-create skills/ inside it during installation.
|
|
131
|
+
const openclawDir = findOpenClawDir();
|
|
132
|
+
if (openclawDir) {
|
|
133
|
+
return openclawDir;
|
|
134
|
+
}
|
|
135
|
+
|
|
128
136
|
return null;
|
|
129
137
|
}
|
|
130
138
|
|
|
@@ -261,7 +269,7 @@ console.log(' ╚════════════════════
|
|
|
261
269
|
console.log('');
|
|
262
270
|
|
|
263
271
|
// Read version from package.json
|
|
264
|
-
let version = '2.5.
|
|
272
|
+
let version = '2.5.5';
|
|
265
273
|
try {
|
|
266
274
|
const pkg = JSON.parse(fs.readFileSync(path.join(PLUGIN_DIR, 'package.json'), 'utf8'));
|
|
267
275
|
version = pkg.version;
|