@lansenger-pm/openclaw-lansenger-channel 3.1.6 → 3.1.8

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.fr.md CHANGED
@@ -59,15 +59,15 @@ openclaw plugins install @lansenger-pm/openclaw-lansenger-channel
59
59
  openclaw config set plugins.entries.lansenger.enabled true
60
60
 
61
61
  # 3. Configurer le canal (assistant interactif)
62
- openclaw channels add --channel lansenger
63
- # OU non-interactif :
64
- openclaw channels add --channel lansenger --token "appId:appSecret"
62
+ openclaw channels add
63
+ # OU ajout rapide (crée une config vide, puis lancez l'assistant ci-dessus) :
64
+ # openclaw channels add --channel lansenger
65
65
 
66
66
  # 4. Redémarrer la passerelle
67
67
  openclaw gateway restart
68
68
  ```
69
69
 
70
- Les métadonnées `openclaw.install` dans `package.json` (`npmSpec`, `localPath`, `defaultChoice`) permettent l'**installation à la demande** : si un utilisateur exécute `openclaw channels add --channel lansenger` avant que le plugin soit installé, OpenClaw peut l'installer automatiquement.
70
+ Les métadonnées `openclaw.install` dans `package.json` (`npmSpec`, `localPath`, `defaultChoice`) permettent l'**installation à la demande** : si un utilisateur sélectionne Lansenger dans l'assistant `openclaw channels add` avant que le plugin soit installé, OpenClaw peut l'installer automatiquement.
71
71
 
72
72
  > **Passerelle personnalisée** : pour les déploiements entreprise (ex. 奇安信), configurez `apiGatewayUrl` dans `openclaw.json` ou via les variables d'environnement après la configuration — voir [Configuration optionnelle](#configuration-optionnelle).
73
73
 
@@ -126,7 +126,7 @@ Les identifiants peuvent aussi être fournis via la configuration `openclaw.json
126
126
  "homeChannel": "lansenger",
127
127
  "enabled": true,
128
128
  "allowFrom": ["your-appid"],
129
- "dmSecurity": "paired",
129
+ "dmPolicy": "pairing",
130
130
  "accounts": {
131
131
  "your-appid": {
132
132
  "appId": "your-appid",
@@ -147,7 +147,7 @@ Les identifiants peuvent aussi être fournis via la configuration `openclaw.json
147
147
  | `homeChannel` | Canal par défaut pour le routage de l'agent | `lansenger` |
148
148
  | `enabled` | Activer/désactiver le canal | `true` |
149
149
  | `allowFrom` | IDs d'utilisateurs autorisés en DM | `[]` |
150
- | `dmSecurity` | Politique DM : `paired`, `allowlist`, `open` | `paired` |
150
+ | `dmPolicy` | Politique DM : `pairing`, `allowlist`, `open`, `disabled` | `pairing` |
151
151
  | `accounts` | Configuration multi-bot | — |
152
152
  | `groupPolicy` | Politique de groupe : `open` (tous les groupes), `allowlist` (groupes autorisés uniquement), `disabled` (messages de groupe désactivés) | `allowlist` |
153
153
  | `groupAllowFrom` | IDs de groupes autorisés à déclencher le bot | `[]` |
@@ -175,7 +175,7 @@ Structure de configuration résultante :
175
175
  "lansenger": {
176
176
  "appId": "your-appid-2",
177
177
  "appSecret": "...",
178
- "dmSecurity": "paired",
178
+ "dmPolicy": "pairing",
179
179
  "accounts": {
180
180
  "your-appid-2": {
181
181
  "appId": "your-appid-2",
@@ -372,20 +372,18 @@ Les mises à jour de statut d'approbation utilisent le format DynamicMsg appCard
372
372
 
373
373
  ## Journal des modifications
374
374
 
375
- - **v3.0.0** — Ajout de `lansenger_send_format_text` (Markdown + @mention) ; réécriture SKILL.md (format arbre de décision, correction headStatusInfo description+colour description supporte div-style pour couleur, couleur est la couleur du point) ; suppression du code de debug ; mise à jour manifest contracts
376
- - **v2.10.0** — Conversion automatique px→pt pour appCard ; classification erreurs sendImageUrl ; journalisation info pour inscription outils
377
- - **v2.9.12** — Suppression `defaultAccount` ; uiHints (labels chinois) ; nettoyage README (5 langues)
378
- - **v2.9.11** — Adaptateur de statut ; repli sur variables d'environnement ; `channels status --probe` affiche « configured » et « works »
379
- - **v2.8.1** — Correction README : flux d'installation 4 étapes ; SKILL.md frontmatter (spec AgentSkills) ; identifiant de canal en minuscules `lansenger`
380
- - **v2.8.0** — Routage multi-agent OpenClaw `bindings[]` ; groupPolicy/groupAllowFrom/groups contrôle d'accès groupe
381
- - **v2.7.0** — Enregistrement outils comme objets simples ; état runtime pour client/target
382
- - **v2.6.0** — Enregistrement inconditionnel des outils ; suppression du ghost delete_message
383
- - **v2.5.2** — formatText reminder ; AppArticles champ `summary` ; suppression delete_message
384
- - **v2.5.1** — Retour sysMsg/deleteMessage (API non fonctionnel) ; revoke chatType bot/group uniquement
385
- - **v2.4.0** — Correction assemblage message : wrap() exclut msgType ; corrections appArticles/linkCard
386
- - **v2.3.0** — Suppression envoi groupe/privé legacy ; routage via msgTarget
387
- - **v2.2.0** — Ajout 9 outils agent
388
- - **v2.0.0** — Version initiale
375
+ - **v3.1** — Wizard multi-compte ; alignement dmPolicy (dmSecurity→dmPolicy + paired→pairing) ; prompts bilingues ; shouldPrompt skip steps configurés ; migration config multi-compte
376
+ - **v3.0** — Ajout `lansenger_send_format_text` (Markdown + @mention) ; réécriture SKILL.md ; correction headStatusInfo description+colour
377
+ - **v2.10** — Conversion px→pt appCard ; classification erreurs sendImageUrl ; journalisation outils
378
+ - **v2.9** — Adaptateur statut ; repli env vars ; uiHints chinois ; README nettoyage (5 langues)
379
+ - **v2.8** — Routage multi-agent OpenClaw `bindings[]` ; groupPolicy/groupAllowFrom/groups ; SKILL.md AgentSkills
380
+ - **v2.7** — Enregistrement outils objets simples ; état runtime client/target
381
+ - **v2.6** — Enregistrement inconditionnel ; suppression ghost delete_message
382
+ - **v2.5** — formatText reminder ; AppArticles `summary` ; revoke bot/group uniquement
383
+ - **v2.4** — Correction assemblage message ; corrections appArticles/linkCard
384
+ - **v2.3** — Suppression envoi groupe/privé legacy ; routage via msgTarget
385
+ - **v2.2** — Ajout 9 outils agent
386
+ - **v2.0** — Version initiale
389
387
 
390
388
  ## Licence
391
389
 
package/README.md CHANGED
@@ -57,15 +57,15 @@ openclaw plugins install @lansenger-pm/openclaw-lansenger-channel
57
57
  openclaw config set plugins.entries.lansenger.enabled true
58
58
 
59
59
  # 3. Configure the channel (interactive wizard)
60
- openclaw channels add --channel lansenger
61
- # OR non-interactive:
62
- openclaw channels add --channel lansenger --token "appId:appSecret"
60
+ openclaw channels add
61
+ # OR quick add (creates empty config, then run wizard above):
62
+ # openclaw channels add --channel lansenger
63
63
 
64
64
  # 4. Restart the gateway
65
65
  openclaw gateway restart
66
66
  ```
67
67
 
68
- The `openclaw.install` metadata in `package.json` (`npmSpec`, `localPath`, `defaultChoice`) enables **install-on-demand**: if a user runs `openclaw channels add --channel lansenger` before the plugin is installed, OpenClaw can automatically install it using this metadata.
68
+ The `openclaw.install` metadata in `package.json` (`npmSpec`, `localPath`, `defaultChoice`) enables **install-on-demand**: if a user selects Lansenger in the `openclaw channels add` wizard before the plugin is installed, OpenClaw can automatically install it using this metadata.
69
69
 
70
70
  > **Custom gateway**: For enterprise deployments (e.g. 奇安信), set `apiGatewayUrl` in `openclaw.json` or environment after configuration — see [Optional Configuration](#optional-configuration).
71
71
 
@@ -118,7 +118,7 @@ Credentials can also be provided via `openclaw.json` config (see Optional Config
118
118
  "homeChannel": "lansenger",
119
119
  "enabled": true,
120
120
  "allowFrom": ["your-appid"],
121
- "dmSecurity": "paired",
121
+ "dmPolicy": "pairing",
122
122
  "accounts": {
123
123
  "your-appid": {
124
124
  "appId": "your-appid",
@@ -139,7 +139,7 @@ Credentials can also be provided via `openclaw.json` config (see Optional Config
139
139
  | `homeChannel` | Default channel for agent routing | `lansenger` |
140
140
  | `enabled` | Enable/disable the channel | `true` |
141
141
  | `allowFrom` | User IDs allowed to DM the bot | `[]` |
142
- | `dmSecurity` | DM policy: `paired`, `allowlist`, `open` | `paired` |
142
+ | `dmPolicy` | DM policy: `pairing`, `allowlist`, `open`, `disabled` | `pairing` |
143
143
  | `accounts` | Multi-bot configuration | — |
144
144
  | `groupPolicy` | Group policy: `open`, `allowlist`, `disabled` | `allowlist` |
145
145
  | `groupAllowFrom` | Group IDs allowed to trigger the bot | `[]` |
@@ -167,7 +167,7 @@ The resulting config structure:
167
167
  "lansenger": {
168
168
  "appId": "your-appid-2",
169
169
  "appSecret": "...",
170
- "dmSecurity": "paired",
170
+ "dmPolicy": "pairing",
171
171
  "accounts": {
172
172
  "your-appid-2": {
173
173
  "appId": "your-appid-2",
@@ -364,20 +364,18 @@ Approval status updates use the DynamicMsg appCard format. The `updateCardStatus
364
364
 
365
365
  ## Changelog
366
366
 
367
- - **v3.0.0** — Add `lansenger_send_format_text` tool (Markdown + @mention); rewrite SKILL.md (decision tree format, fix headStatusInfo description+colour semantics — description supports div-style for color, colour is dot color); remove debug code; update manifest contracts
368
- - **v2.10.0** — font-size px→pt auto-conversion in appCard; sendImageUrl error classification; tool registration info-level logging
369
- - **v2.9.12** — Removed `defaultAccount`; uiHints (Chinese labels); README cleanup (5 locales)
370
- - **v2.9.11** — Add status adapter; env var fallback for credentials; `channels status --probe` shows "configured" and "works"
371
- - **v2.8.1** — Fix README: proper 4-step install flow; SKILL.md frontmatter (AgentSkills spec); channel identifier to lowercase `lansenger`
372
- - **v2.8.0** — OpenClaw `bindings[]` multi-agent routing; groupPolicy/groupAllowFrom/groups access control
373
- - **v2.7.0** — Plain-object tool registration; runtime state for client/target
374
- - **v2.6.0** — Register tools unconditionally; removed phantom delete_message
375
- - **v2.5.2** — formatText reminder support; AppArticles `summary` field; remove delete_message from tools.allow
376
- - **v2.5.1** — Rollback sysMsg/deleteMessage (API non-functional); revoke chatType bot/group only
377
- - **v2.4.0** — Fix message body assembly: wrap() excludes msgType; appArticles/linkCard field fixes
378
- - **v2.3.0** — Remove legacy group/private send; all routing via msgTarget
379
- - **v2.2.0** — Add 9 agent tools
380
- - **v2.0.0** — Initial release
367
+ - **v3.1** — Multi-account setup wizard; dmPolicy/dmSecurity→dmPolicy+pairing (OpenClaw standard); bilingual prompts; credential shouldPrompt skips configured steps; clean multi-account config migration
368
+ - **v3.0** — Add `lansenger_send_format_text` tool (Markdown + @mention); rewrite SKILL.md; fix headStatusInfo description+colour semantics
369
+ - **v2.10** — font-size px→pt auto-conversion; sendImageUrl error classification; tool registration logging
370
+ - **v2.9** — Status adapter; env var fallback; uiHints; README cleanup (5 locales)
371
+ - **v2.8** — OpenClaw `bindings[]` multi-agent routing; groupPolicy/groupAllowFrom/groups access control; SKILL.md AgentSkills spec
372
+ - **v2.7** — Plain-object tool registration; runtime state for client/target
373
+ - **v2.6** — Register tools unconditionally; removed phantom delete_message
374
+ - **v2.5** — formatText reminder; appArticles `summary`; revoke chatType bot/group only
375
+ - **v2.4** — Fix message body assembly; appArticles/linkCard field fixes
376
+ - **v2.3** — Remove legacy group/private send; all routing via msgTarget
377
+ - **v2.2** — Add 9 agent tools
378
+ - **v2.0** — Initial release
381
379
 
382
380
  ## License
383
381
 
package/README.zhHans.md CHANGED
@@ -59,15 +59,15 @@ openclaw plugins install @lansenger-pm/openclaw-lansenger-channel
59
59
  openclaw config set plugins.entries.lansenger.enabled true
60
60
 
61
61
  # 3. 配置频道(交互式向导)
62
- openclaw channels add --channel lansenger
63
- # 或非交互式:
64
- openclaw channels add --channel lansenger --token "appId:appSecret"
62
+ openclaw channels add
63
+ # 或者快速添加(创建空配置,再运行上面的向导):
64
+ # openclaw channels add --channel lansenger
65
65
 
66
66
  # 4. 重启网关
67
67
  openclaw gateway restart
68
68
  ```
69
69
 
70
- `package.json` 中的 `openclaw.install` 元数据(`npmSpec`、`localPath`、`defaultChoice`)支持**按需安装**:如果用户在插件安装前运行 `openclaw channels add --channel lansenger`,OpenClaw 可自动安装该插件。
70
+ `package.json` 中的 `openclaw.install` 元数据(`npmSpec`、`localPath`、`defaultChoice`)支持**按需安装**:如果用户在 `openclaw channels add` 向导中选择 Lansenger 但插件未安装,OpenClaw 可自动安装该插件。
71
71
 
72
72
  > **自定义网关**:企业私有化部署(如奇安信)需在配置后通过 `openclaw.json` 或环境变量设置 `apiGatewayUrl` — 见[可选配置](#可选配置)。
73
73
 
@@ -126,7 +126,7 @@ openclaw pairing approve lansenger <配对码>
126
126
  "homeChannel": "lansenger",
127
127
  "enabled": true,
128
128
  "allowFrom": ["your-appid"],
129
- "dmSecurity": "paired",
129
+ "dmPolicy": "pairing",
130
130
  "accounts": {
131
131
  "your-appid": {
132
132
  "appId": "your-appid",
@@ -147,7 +147,7 @@ openclaw pairing approve lansenger <配对码>
147
147
  | `homeChannel` | 代理路由的默认频道 | `lansenger` |
148
148
  | `enabled` | 启用/禁用频道 | `true` |
149
149
  | `allowFrom` | 允许私聊的用户 ID | `[]` |
150
- | `dmSecurity` | 私聊策略:`paired`、`allowlist`、`open` | `paired` |
150
+ | `dmPolicy` | 私聊策略:`pairing`、`allowlist`、`open`、`disabled` | `pairing` |
151
151
  | `accounts` | 多机器人配置 | — |
152
152
  | `groupPolicy` | 群聊策略:`open`(所有群)、`allowlist`(仅允许列表群)、`disabled`(禁止群消息) | `allowlist` |
153
153
  | `groupAllowFrom` | 允许触发机器人的群 ID | `[]` |
@@ -175,7 +175,7 @@ openclaw gateway restart
175
175
  "lansenger": {
176
176
  "appId": "your-appid-2",
177
177
  "appSecret": "...",
178
- "dmSecurity": "paired",
178
+ "dmPolicy": "pairing",
179
179
  "accounts": {
180
180
  "your-appid-2": {
181
181
  "appId": "your-appid-2",
@@ -372,20 +372,18 @@ Agent 路由由 OpenClaw 的 `bindings[]` 配置管理——见[多 Agent 路由
372
372
 
373
373
  ## 更新日志
374
374
 
375
- - **v3.0.0** — 新增 `lansenger_send_format_text` 工具(Markdown + @提及);重写 SKILL.md(决策树格式,修正 headStatusInfo description+colour 语义——description 支持 div-style 标颜色,colour 是圆点颜色);移除调试代码;更新 manifest contracts
376
- - **v2.10.0** — appCard font-size px→pt 自动转换;sendImageUrl 错误分类;工具注册 info 级别日志
377
- - **v2.9.12** — 移除 `defaultAccount`;uiHints(中文标签);README 精简(5 语言)
378
- - **v2.9.11** — 新增状态适配器;环境变量回退支持凭证;`channels status --probe` 显示"configured"和"works"
379
- - **v2.8.1** — 修复 README:4 步安装流程;SKILL.md frontmatter(AgentSkills 规范);频道标识符改为小写 `lansenger`
380
- - **v2.8.0** — OpenClaw `bindings[]` 多 Agent 路由;groupPolicy/groupAllowFrom/groups 群聊准入控制
381
- - **v2.7.0** — 纯对象工具注册;运行时状态获取 client/target
382
- - **v2.6.0** — 无条件注册工具;移除幽灵 delete_message
383
- - **v2.5.2** — formatText reminder 支持;AppArticles `summary` 字段;移除 delete_message
384
- - **v2.5.1** — 回滚 sysMsg/deleteMessage(API 不可用);撤回 chatType 仅 bot/group
385
- - **v2.4.0** — 修复消息体组装:wrap() 剥离 msgType;appArticles/linkCard 字段修复
386
- - **v2.3.0** — 移除遗留群聊/私聊发送;全部通过 msgTarget 路由
387
- - **v2.2.0** — 添加 9 个 agent 工具
388
- - **v2.0.0** — 初始发布
375
+ - **v3.1** — 多账号设置向导;dmPolicy 对齐 OpenClaw 标准(dmSecurity→dmPolicy + paired→pairing);中英双语提示文案;凭证 shouldPrompt 跳过已配置步骤;多账号配置迁移清理
376
+ - **v3.0** — 新增 `lansenger_send_format_text` 工具(Markdown + @提及);重写 SKILL.md;修正 headStatusInfo description+colour 语义
377
+ - **v2.10** — appCard font-size px→pt 自动转换;sendImageUrl 错误分类;工具注册日志
378
+ - **v2.9** — 状态适配器;环境变量回退;uiHints 中文标签;README 精简(5 语言)
379
+ - **v2.8** — OpenClaw `bindings[]` 多 Agent 路由;groupPolicy/groupAllowFrom/groups 群聊准入;SKILL.md AgentSkills 规范
380
+ - **v2.7** — 纯对象工具注册;运行时状态获取 client/target
381
+ - **v2.6** — 无条件注册工具;移除幽灵 delete_message
382
+ - **v2.5** — formatText reminder;AppArticles `summary`;撤回仅 bot/group
383
+ - **v2.4** — 修复消息体组装;appArticles/linkCard 字段修复
384
+ - **v2.3** — 移除遗留群聊/私聊发送;全部通过 msgTarget 路由
385
+ - **v2.2** — 添加 9 agent 工具
386
+ - **v2.0** — 初始发布
389
387
 
390
388
  ## 许可证
391
389
 
package/README.zhHant.md CHANGED
@@ -58,16 +58,16 @@ openclaw plugins install @lansenger-pm/openclaw-lansenger-channel
58
58
  # 2. 啟用插件(如未自動啟用)
59
59
  openclaw config set plugins.entries.lansenger.enabled true
60
60
 
61
- # 3. 配置頻道(互動式向導)
62
- openclaw channels add --channel lansenger
63
- # 或非互動式:
64
- openclaw channels add --channel lansenger --token "appId:appSecret"
61
+ # 3. 配置頻道(互動式精靈)
62
+ openclaw channels add
63
+ # 或快速新增(建立空設定,再執行上面的精靈):
64
+ # openclaw channels add --channel lansenger
65
65
 
66
66
  # 4. 重啟閘道
67
67
  openclaw gateway restart
68
68
  ```
69
69
 
70
- `package.json` 中的 `openclaw.install` 元資料(`npmSpec`、`localPath`、`defaultChoice`)支援**按需安裝**:如果使用者在插件安裝前執行 `openclaw channels add --channel lansenger`,OpenClaw 可自動安裝該插件。
70
+ `package.json` 中的 `openclaw.install` 元資料(`npmSpec`、`localPath`、`defaultChoice`)支援**按需安裝**:如果使用者在 `openclaw channels add` 精靈中選擇 Lansenger 但插件未安裝,OpenClaw 可自動安裝該插件。
71
71
 
72
72
  > **自訂閘道**:企業私有化部署(如奇安信)需在設定後透過 `openclaw.json` 或環境變數設定 `apiGatewayUrl` — 見[可選設定](#可選設定)。
73
73
 
@@ -126,7 +126,7 @@ openclaw pairing approve lansenger <配對碼>
126
126
  "homeChannel": "lansenger",
127
127
  "enabled": true,
128
128
  "allowFrom": ["your-appid"],
129
- "dmSecurity": "paired",
129
+ "dmPolicy": "pairing",
130
130
  "accounts": {
131
131
  "your-appid": {
132
132
  "appId": "your-appid",
@@ -147,7 +147,7 @@ openclaw pairing approve lansenger <配對碼>
147
147
  | `homeChannel` | 代理路由的預設頻道 | `lansenger` |
148
148
  | `enabled` | 啟用/禁用頻道 | `true` |
149
149
  | `allowFrom` | 允許私聊的使用者 ID | `[]` |
150
- | `dmSecurity` | 私聊策略:`paired`、`allowlist`、`open` | `paired` |
150
+ | `dmPolicy` | 私聊策略:`pairing`、`allowlist`、`open`、`disabled` | `pairing` |
151
151
  | `accounts` | 多機器人設定 | — |
152
152
  | `groupPolicy` | 群聊策略:`open`(所有群)、`allowlist`(僅允許列表群)、`disabled`(禁止群訊息) | `allowlist` |
153
153
  | `groupAllowFrom` | 允許觸發機器人的群 ID | `[]` |
@@ -175,7 +175,7 @@ openclaw gateway restart
175
175
  "lansenger": {
176
176
  "appId": "your-appid-2",
177
177
  "appSecret": "...",
178
- "dmSecurity": "paired",
178
+ "dmPolicy": "pairing",
179
179
  "accounts": {
180
180
  "your-appid-2": {
181
181
  "appId": "your-appid-2",
@@ -372,20 +372,18 @@ Agent 路由由 OpenClaw 的 `bindings[]` 設定管理——見[多 Agent 路由
372
372
 
373
373
  ## 更新日誌
374
374
 
375
- - **v3.0.0** — 新增 `lansenger_send_format_text` 工具(Markdown + @提及);重寫 SKILL.md(決策樹格式,修正 headStatusInfo description+colour 語義——description 支援 div-style 標顏色,colour 是圓點顏色);移除除錯代碼;更新 manifest contracts
376
- - **v2.10.0** — appCard font-size px→pt 自動轉換;sendImageUrl 錯誤分類;工具註冊 info 級別日誌
377
- - **v2.9.12** — 移除 `defaultAccount`;uiHints(中文標籤);README 精簡(5 語言)
378
- - **v2.9.11** — 新增狀態適配器;環境變數回退支援憑證;`channels status --probe` 顯示「configured」和「works」
379
- - **v2.8.1** — 修復 README:4 步安裝流程;SKILL.md frontmatter(AgentSkills 規範);頻道識別符改為小寫 `lansenger`
380
- - **v2.8.0** — OpenClaw `bindings[]` 多 Agent 路由;groupPolicy/groupAllowFrom/groups 羣聊准入控制
381
- - **v2.7.0** — 純物件工具註冊;運行時狀態取得 client/target
382
- - **v2.6.0** — 無條件註冊工具;移除幽靈 delete_message
383
- - **v2.5.2** — formatText reminder 支援;AppArticles `summary` 欄位;移除 delete_message
384
- - **v2.5.1** — 回滾 sysMsg/deleteMessage(API 不可用);撤回 chatType 僅 bot/group
385
- - **v2.4.0** — 修復訊息體組裝:wrap() 剝離 msgType;appArticles/linkCard欄位修復
386
- - **v2.3.0** — 移除遺留群組/私聊傳送;全部透過 msgTarget 路由
387
- - **v2.2.0** — 新增 9 個 agent 工具
388
- - **v2.0.0** — 初始發佈
375
+ - **v3.1** — 多帳號設定精靈;dmPolicy 對齊 OpenClaw 標準(dmSecurity→dmPolicy + paired→pairing);中英雙語提示文案;憑證 shouldPrompt 跳過已設定步驟;多帳號設定遷移清理
376
+ - **v3.0** — 新增 `lansenger_send_format_text` 工具(Markdown + @提及);重寫 SKILL.md;修正 headStatusInfo description+colour 語義
377
+ - **v2.10** — appCard font-size px→pt 自動轉換;sendImageUrl 錯誤分類;工具註冊日誌
378
+ - **v2.9** — 狀態適配器;環境變數回退;uiHints 中文標籤;README 精簡(5 語言)
379
+ - **v2.8** — OpenClaw `bindings[]` 多 Agent 路由;groupPolicy/groupAllowFrom/groups 羣聊准入;SKILL.md AgentSkills 規範
380
+ - **v2.7** — 純物件工具註冊;運行時狀態取得 client/target
381
+ - **v2.6** — 無條件註冊工具;移除幽靈 delete_message
382
+ - **v2.5** — formatText reminder;AppArticles `summary`;撤回僅 bot/group
383
+ - **v2.4** — 修復訊息體組裝;appArticles/linkCard 欄位修復
384
+ - **v2.3** — 移除遺留群組/私聊傳送;全部透過 msgTarget 路由
385
+ - **v2.2** — 新增 9 個 agent 工具
386
+ - **v2.0** — 初始發佈
389
387
 
390
388
  ## 授權條款
391
389
 
@@ -58,16 +58,16 @@ openclaw plugins install @lansenger-pm/openclaw-lansenger-channel
58
58
  # 2. 啟用插件(如未自動啟用)
59
59
  openclaw config set plugins.entries.lansenger.enabled true
60
60
 
61
- # 3. 配置頻道(互動式向導)
62
- openclaw channels add --channel lansenger
63
- # 或非互動式:
64
- openclaw channels add --channel lansenger --token "appId:appSecret"
61
+ # 3. 配置頻道(互動式精靈)
62
+ openclaw channels add
63
+ # 或快速新增(建立空設定,再執行上面的精靈):
64
+ # openclaw channels add --channel lansenger
65
65
 
66
66
  # 4. 重啟網關
67
67
  openclaw gateway restart
68
68
  ```
69
69
 
70
- `package.json` 中的 `openclaw.install` 元資料(`npmSpec`、`localPath`、`defaultChoice`)支援**按需安裝**:如果使用者在插件安裝前執行 `openclaw channels add --channel lansenger`,OpenClaw 可自動安裝該插件。
70
+ `package.json` 中的 `openclaw.install` 元資料(`npmSpec`、`localPath`、`defaultChoice`)支援**按需安裝**:如果使用者在 `openclaw channels add` 靈中選擇 Lansenger 但插件未安裝,OpenClaw 可自動安裝該插件。
71
71
 
72
72
  > **自訂閘道**:企業私有化部署(如奇安信)需在設定後透過 `openclaw.json` 或環境變數設定 `apiGatewayUrl` — 見[可選設定](#可選設定)。
73
73
 
@@ -126,7 +126,7 @@ openclaw pairing approve lansenger <配對碼>
126
126
  "homeChannel": "lansenger",
127
127
  "enabled": true,
128
128
  "allowFrom": ["your-appid"],
129
- "dmSecurity": "paired",
129
+ "dmPolicy": "pairing",
130
130
  "accounts": {
131
131
  "your-appid": {
132
132
  "appId": "your-appid",
@@ -147,7 +147,7 @@ openclaw pairing approve lansenger <配對碼>
147
147
  | `homeChannel` | 代理路由的預設頻道 | `lansenger` |
148
148
  | `enabled` | 啟用/禁用頻道 | `true` |
149
149
  | `allowFrom` | 允許私聊的使用者 ID | `[]` |
150
- | `dmSecurity` | 私聊策略:`paired`、`allowlist`、`open` | `paired` |
150
+ | `dmPolicy` | 私聊策略:`pairing`、`allowlist`、`open`、`disabled` | `pairing` |
151
151
  | `accounts` | 多機械人設定 | — |
152
152
  | `groupPolicy` | 羣聊策略:`open`(所有羣)、`allowlist`(僅允許列表羣)、`disabled`(禁止羣訊息) | `allowlist` |
153
153
  | `groupAllowFrom` | 允許觸發機械人的羣 ID | `[]` |
@@ -177,7 +177,7 @@ openclaw gateway restart
177
177
  "lansenger": {
178
178
  "appId": "your-appid-2",
179
179
  "appSecret": "...",
180
- "dmSecurity": "paired",
180
+ "dmPolicy": "pairing",
181
181
  "accounts": {
182
182
  "your-appid-2": {
183
183
  "appId": "your-appid-2",
@@ -374,20 +374,18 @@ Agent 路由由 OpenClaw 的 `bindings[]` 設定管理——見[多 Agent 路由
374
374
 
375
375
  ## 更新日誌
376
376
 
377
- - **v3.0.0** — 新增 `lansenger_send_format_text` 工具(Markdown + @提及);重寫 SKILL.md(決策樹格式,修正 headStatusInfo description+colour 語義——description 支援 div-style 標顏色,colour 是圓點顏色);移除除錯代碼;更新 manifest contracts
378
- - **v2.10.0** — appCard font-size px→pt 自動轉換;sendImageUrl 錯誤分類;工具註冊 info 級別日誌
379
- - **v2.9.12** — 移除 `defaultAccount`;uiHints(中文標籤);README 精簡(5 語言)
380
- - **v2.9.11** — 新增狀態適配器;環境變數回退支援憑證;`channels status --probe` 顯示「configured」和「works」
381
- - **v2.8.1** — 修復 README:4 步安裝流程;SKILL.md frontmatter(AgentSkills 規範);頻道識別符改為小寫 `lansenger`
382
- - **v2.8.0** — OpenClaw `bindings[]` 多 Agent 路由;groupPolicy/groupAllowFrom/groups 羣聊准入控制
383
- - **v2.7.0** — 純物件工具註冊;運行時狀態取得 client/target
384
- - **v2.6.0** — 無條件註冊工具;移除幽靈 delete_message
385
- - **v2.5.2** — formatText reminder 支援;AppArticles `summary` 欄位;移除 delete_message
386
- - **v2.5.1** — 回滾 sysMsg/deleteMessage(API 不可用);撤回 chatType 僅 bot/group
387
- - **v2.4.0** — 修復訊息體組裝:wrap() 剝離 msgType;appArticles/linkCard欄位修復
388
- - **v2.3.0** — 移除遺留羣組/私聊發送;全部透過 msgTarget 路由
389
- - **v2.2.0** — 新增 9 個 agent 工具
390
- - **v2.0.0** — 初始發佈
377
+ - **v3.1** — 多帳號設定精靈;dmPolicy 對齊 OpenClaw 標準(dmSecurity→dmPolicy + paired→pairing);中英雙語提示文案;憑證 shouldPrompt 跳過已設定步驟;多帳號設定遷移清理
378
+ - **v3.0** — 新增 `lansenger_send_format_text` 工具(Markdown + @提及);重寫 SKILL.md;修正 headStatusInfo description+colour 語義
379
+ - **v2.10** — appCard font-size px→pt 自動轉換;sendImageUrl 錯誤分類;工具註冊日誌
380
+ - **v2.9** — 狀態適配器;環境變數回退;uiHints 中文標籤;README 精簡(5 語言)
381
+ - **v2.8** — OpenClaw `bindings[]` 多 Agent 路由;groupPolicy/groupAllowFrom/groups 羣聊准入;SKILL.md AgentSkills 規範
382
+ - **v2.7** — 純物件工具註冊;運行時狀態取得 client/target
383
+ - **v2.6** — 無條件註冊工具;移除幽靈 delete_message
384
+ - **v2.5** — formatText reminder;AppArticles `summary`;撤回僅 bot/group
385
+ - **v2.4** — 修復訊息體組裝;appArticles/linkCard 欄位修復
386
+ - **v2.3** — 移除遺留羣組/私聊發送;全部透過 msgTarget 路由
387
+ - **v2.2** — 新增 9 個 agent 工具
388
+ - **v2.0** — 初始發佈
391
389
 
392
390
  ## 授權條款
393
391
 
@@ -103,11 +103,6 @@
103
103
  "default": "pairing",
104
104
  "description": "DM security policy / 私聊安全策略:pairing (配对验证,推荐), allowlist (仅列表用户), open (任何人), disabled (禁用私聊)"
105
105
  },
106
- "dmSecurity": {
107
- "type": "string",
108
- "enum": ["paired", "allowlist", "open"],
109
- "description": "Legacy DM policy field (deprecated, use dmPolicy) / 旧版私聊策略字段(已弃用,请使用 dmPolicy)"
110
- },
111
106
  "groupPolicy": {
112
107
  "type": "string",
113
108
  "enum": ["open", "allowlist", "disabled"],
@@ -147,8 +142,9 @@
147
142
  "appSecret": { "type": "string", "description": "Bot App Secret / 机器人 App Secret" },
148
143
  "apiGatewayUrl": { "type": "string", "description": "API Gateway URL / API 网关地址" },
149
144
  "allowFrom": { "type": "array", "items": { "type": "string" }, "description": "Allowed user IDs / 允许的用户 ID 列表" },
150
- "dmPolicy": { "type": "string", "description": "DM security policy / 私聊安全策略" },
151
- "dmSecurity": { "type": "string", "description": "Legacy DM policy (deprecated, use dmPolicy) / 旧版私聊策略(已弃用)" }
145
+ "dmPolicy": { "type": "string", "enum": ["pairing", "allowlist", "open", "disabled"], "default": "pairing", "description": "DM security policy / 私聊安全策略" },
146
+ "groupPolicy": { "type": "string", "enum": ["open", "allowlist", "disabled"], "default": "allowlist", "description": "Group chat policy / 群聊策略" },
147
+ "groupAllowFrom": { "type": "array", "items": { "type": "string" }, "description": "Group IDs allowed to trigger the bot / 允许触发机器人的群聊 ID 列表" }
152
148
  }
153
149
  }
154
150
  }
@@ -198,15 +194,6 @@
198
194
  },
199
195
  "help": "Recommended: pairing — first DM triggers pairing code, approve with 'openclaw pairing approve lansenger <code>'. Personal bots only receive DMs from their owner. / 推荐:pairing — 首次私聊触发配对码,用 'openclaw pairing approve lansenger <配对码>' 审批。个人机器人仅接收归属人的私聊消息。"
200
196
  },
201
- "dmSecurity": {
202
- "label": "DM Security (Legacy) / 私聊安全策略(旧版)",
203
- "enumLabels": {
204
- "paired": "Paired (Legacy) / 配对验证(旧版)",
205
- "allowlist": "Allowlist Only / 仅允许列表用户",
206
- "open": "Open to All / 对所有人开放"
207
- },
208
- "help": "Deprecated — use dmPolicy instead. / 已弃用,请使用 dmPolicy。"
209
- },
210
197
  "homeChannel": {
211
198
  "label": "Home Channel / 主聊天窗口",
212
199
  "placeholder": "Auto-detected from first DM / 自动从第一条私聊消息检测",
@@ -276,9 +263,20 @@
276
263
  },
277
264
  "help": "DM security policy for this bot / 该机器人的私聊安全策略"
278
265
  },
279
- "accounts.*.dmSecurity": {
280
- "label": "DM Security (Legacy) / 私聊安全策略(旧版)",
281
- "help": "Deprecated — use dmPolicy instead / 已弃用,请使用 dmPolicy"
266
+ "accounts.*.groupPolicy": {
267
+ "label": "Group Policy / 群聊策略",
268
+ "enumLabels": {
269
+ "open": "Open (All Groups) / 所有群",
270
+ "allowlist": "Allowlist (Selected Groups) / 仅允许列表中的群",
271
+ "disabled": "Disabled / 禁止群消息"
272
+ },
273
+ "help": "Group chat policy for this bot / 该机器人的群聊策略"
274
+ },
275
+ "accounts.*.groupAllowFrom": {
276
+ "label": "Group Allow From / 允许的群聊",
277
+ "placeholder": "添加群聊 chatId / Add group chatId",
278
+ "sensitive": false,
279
+ "help": "Group chat IDs allowed to trigger this bot / 允许触发该机器人的群聊 ID"
282
280
  }
283
281
  }
284
282
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lansenger-pm/openclaw-lansenger-channel",
3
- "version": "3.1.6",
3
+ "version": "3.1.8",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "files": [