@clowder-ai/connector-wecom-agent 0.0.0-stage → 0.1.0-alpha.7

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.
Files changed (58) hide show
  1. package/README.en.md +56 -0
  2. package/README.md +24 -2
  3. package/assets/icon.svg +6 -0
  4. package/dist/WeComAgentAdapter.d.ts +149 -0
  5. package/dist/WeComAgentAdapter.d.ts.map +1 -0
  6. package/dist/WeComAgentAdapter.js +525 -0
  7. package/dist/WeComAgentAdapter.js.map +1 -0
  8. package/dist/collect-media.d.ts +12 -0
  9. package/dist/collect-media.d.ts.map +1 -0
  10. package/dist/collect-media.js +27 -0
  11. package/dist/collect-media.js.map +1 -0
  12. package/dist/command-ingress.d.ts +10 -0
  13. package/dist/command-ingress.d.ts.map +1 -0
  14. package/dist/command-ingress.js +13 -0
  15. package/dist/command-ingress.js.map +1 -0
  16. package/dist/inbound-download.d.ts +13 -0
  17. package/dist/inbound-download.d.ts.map +1 -0
  18. package/dist/inbound-download.js +70 -0
  19. package/dist/inbound-download.js.map +1 -0
  20. package/dist/inbound-media-source.d.ts +25 -0
  21. package/dist/inbound-media-source.d.ts.map +1 -0
  22. package/dist/inbound-media-source.js +111 -0
  23. package/dist/inbound-media-source.js.map +1 -0
  24. package/dist/index.d.ts +4 -0
  25. package/dist/index.d.ts.map +1 -0
  26. package/dist/index.js +2 -0
  27. package/dist/index.js.map +1 -0
  28. package/dist/media-notice.d.ts +6 -0
  29. package/dist/media-notice.d.ts.map +1 -0
  30. package/dist/media-notice.js +50 -0
  31. package/dist/media-notice.js.map +1 -0
  32. package/dist/plugin-entrypoint.d.ts +7 -0
  33. package/dist/plugin-entrypoint.d.ts.map +1 -0
  34. package/dist/plugin-entrypoint.js +292 -0
  35. package/dist/plugin-entrypoint.js.map +1 -0
  36. package/dist/reply-sender-map.d.ts +10 -0
  37. package/dist/reply-sender-map.d.ts.map +1 -0
  38. package/dist/reply-sender-map.js +123 -0
  39. package/dist/reply-sender-map.js.map +1 -0
  40. package/dist/rich-block-plaintext.d.ts +5 -0
  41. package/dist/rich-block-plaintext.d.ts.map +1 -0
  42. package/dist/rich-block-plaintext.js +45 -0
  43. package/dist/rich-block-plaintext.js.map +1 -0
  44. package/dist/runtime.d.ts +65 -0
  45. package/dist/runtime.d.ts.map +1 -0
  46. package/dist/runtime.js +84 -0
  47. package/dist/runtime.js.map +1 -0
  48. package/dist/thread-mappings.d.ts +46 -0
  49. package/dist/thread-mappings.d.ts.map +1 -0
  50. package/dist/thread-mappings.js +62 -0
  51. package/dist/thread-mappings.js.map +1 -0
  52. package/dist/types.d.ts +15 -0
  53. package/dist/types.d.ts.map +1 -0
  54. package/dist/types.js +2 -0
  55. package/dist/types.js.map +1 -0
  56. package/npm-shrinkwrap.json +215 -0
  57. package/package.json +55 -4
  58. package/plugin.yaml +83 -0
@@ -0,0 +1,215 @@
1
+ {
2
+ "name": "@clowder-ai/connector-wecom-agent",
3
+ "version": "0.1.0-alpha.7",
4
+ "lockfileVersion": 3,
5
+ "requires": true,
6
+ "packages": {
7
+ "": {
8
+ "name": "@clowder-ai/connector-wecom-agent",
9
+ "version": "0.1.0-alpha.7",
10
+ "license": "MIT",
11
+ "dependencies": {
12
+ "@clowder-ai/plugin-sdk": "0.2.0-beta.23",
13
+ "fast-xml-parser": "5.5.9",
14
+ "@clowder-ai/plugin-contract": "0.1.0-beta.37"
15
+ },
16
+ "engines": {
17
+ "node": ">=20.0.0"
18
+ },
19
+ "devDependencies": {
20
+ "@types/node": "^20.17.0",
21
+ "tsx": "^4.19.0",
22
+ "typescript": "^5.7.0",
23
+ "yaml": "2.9.0"
24
+ }
25
+ },
26
+ "node_modules/@clowder-ai/plugin-contract": {
27
+ "version": "0.1.0-beta.37",
28
+ "resolved": "https://registry.npmjs.org/@clowder-ai/plugin-contract/-/plugin-contract-0.1.0-beta.37.tgz",
29
+ "integrity": "sha512-6J4XPbWRWHRd7IkvZuITm/zGy8/ZxZfZiSGiEBXbeDDABhOzPcbHwxf7krcF5NIfDtUwdHNHA5kd6blb2apgbw==",
30
+ "license": "MIT",
31
+ "dependencies": {
32
+ "ajv": "^8.17.0",
33
+ "ajv-formats": "^3.0.0"
34
+ },
35
+ "engines": {
36
+ "node": ">=20.0.0"
37
+ }
38
+ },
39
+ "node_modules/@clowder-ai/plugin-sdk": {
40
+ "version": "0.2.0-beta.23",
41
+ "resolved": "https://registry.npmjs.org/@clowder-ai/plugin-sdk/-/plugin-sdk-0.2.0-beta.23.tgz",
42
+ "integrity": "sha512-aotIxaNXscJLS6bUPkHp39erh2kTasJUOCJAOUzKIgCBWqy71AKY2Mdb75U9ucrnTeA76/9Z3JYOaZ1sFx0KRA==",
43
+ "license": "MIT",
44
+ "dependencies": {
45
+ "@clowder-ai/plugin-contract": "0.1.0-beta.37"
46
+ },
47
+ "engines": {
48
+ "node": ">=20.0.0"
49
+ }
50
+ },
51
+ "node_modules/ajv": {
52
+ "version": "8.20.0",
53
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz",
54
+ "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==",
55
+ "license": "MIT",
56
+ "dependencies": {
57
+ "fast-deep-equal": "^3.1.3",
58
+ "fast-uri": "^3.0.1",
59
+ "json-schema-traverse": "^1.0.0",
60
+ "require-from-string": "^2.0.2"
61
+ },
62
+ "funding": {
63
+ "type": "github",
64
+ "url": "https://github.com/sponsors/epoberezkin"
65
+ }
66
+ },
67
+ "node_modules/ajv-formats": {
68
+ "version": "3.0.1",
69
+ "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz",
70
+ "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==",
71
+ "license": "MIT",
72
+ "dependencies": {
73
+ "ajv": "^8.0.0"
74
+ },
75
+ "peerDependencies": {
76
+ "ajv": "^8.0.0"
77
+ },
78
+ "peerDependenciesMeta": {
79
+ "ajv": {
80
+ "optional": true
81
+ }
82
+ }
83
+ },
84
+ "node_modules/anynum": {
85
+ "version": "1.0.1",
86
+ "resolved": "https://registry.npmjs.org/anynum/-/anynum-1.0.1.tgz",
87
+ "integrity": "sha512-N6//FLET/tXYNM/F6ABca1oH6fWB+KlTt909Le28WMDBk8oaT4vY17DCrwg2MvmuqUKt3Ni4N5dGJ/EoBgcO6A==",
88
+ "funding": [
89
+ {
90
+ "type": "github",
91
+ "url": "https://github.com/sponsors/NaturalIntelligence"
92
+ }
93
+ ],
94
+ "license": "MIT"
95
+ },
96
+ "node_modules/fast-deep-equal": {
97
+ "version": "3.1.3",
98
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
99
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
100
+ "license": "MIT"
101
+ },
102
+ "node_modules/fast-uri": {
103
+ "version": "3.1.8",
104
+ "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.8.tgz",
105
+ "integrity": "sha512-GZMtZUTNRpOVIECoXwLNZS5xUGE+mVNbTB8h/7Rwh2TFWcBQiPzTgyZi05BF9UMZKkLJv8XBRJTlU7zg8+ZfMg==",
106
+ "funding": [
107
+ {
108
+ "type": "github",
109
+ "url": "https://github.com/sponsors/fastify"
110
+ },
111
+ {
112
+ "type": "opencollective",
113
+ "url": "https://opencollective.com/fastify"
114
+ }
115
+ ],
116
+ "license": "BSD-3-Clause"
117
+ },
118
+ "node_modules/fast-xml-builder": {
119
+ "version": "1.3.1",
120
+ "resolved": "https://registry.npmjs.org/fast-xml-builder/-/fast-xml-builder-1.3.1.tgz",
121
+ "integrity": "sha512-pIM/1n3ntFXKYrUZwW7QCK0gAW7XY+wzj1YMIV3tLDvPj/V+zTGJK5e3/4WJfwj0qWw2ElNXiTixda/R+3YSug==",
122
+ "funding": [
123
+ {
124
+ "type": "github",
125
+ "url": "https://github.com/sponsors/NaturalIntelligence"
126
+ }
127
+ ],
128
+ "license": "MIT",
129
+ "dependencies": {
130
+ "path-expression-matcher": "^1.6.2",
131
+ "xml-naming": "^0.3.0"
132
+ }
133
+ },
134
+ "node_modules/fast-xml-parser": {
135
+ "version": "5.5.9",
136
+ "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.5.9.tgz",
137
+ "integrity": "sha512-jldvxr1MC6rtiZKgrFnDSvT8xuH+eJqxqOBThUVjYrxssYTo1avZLGql5l0a0BAERR01CadYzZ83kVEkbyDg+g==",
138
+ "funding": [
139
+ {
140
+ "type": "github",
141
+ "url": "https://github.com/sponsors/NaturalIntelligence"
142
+ }
143
+ ],
144
+ "license": "MIT",
145
+ "dependencies": {
146
+ "fast-xml-builder": "^1.1.4",
147
+ "path-expression-matcher": "^1.2.0",
148
+ "strnum": "^2.2.2"
149
+ },
150
+ "bin": {
151
+ "fxparser": "src/cli/cli.js"
152
+ }
153
+ },
154
+ "node_modules/json-schema-traverse": {
155
+ "version": "1.0.0",
156
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
157
+ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
158
+ "license": "MIT"
159
+ },
160
+ "node_modules/path-expression-matcher": {
161
+ "version": "1.6.2",
162
+ "resolved": "https://registry.npmjs.org/path-expression-matcher/-/path-expression-matcher-1.6.2.tgz",
163
+ "integrity": "sha512-enSlaiat05iasnzmgNxRj8reFdj3puY2QpNgP1aPIaVfT6nn9ICuPoFlKHk8EN22HcwewshO+mN2DGbkCEOtqQ==",
164
+ "funding": [
165
+ {
166
+ "type": "github",
167
+ "url": "https://github.com/sponsors/NaturalIntelligence"
168
+ }
169
+ ],
170
+ "license": "MIT",
171
+ "engines": {
172
+ "node": ">=14.0.0"
173
+ }
174
+ },
175
+ "node_modules/require-from-string": {
176
+ "version": "2.0.2",
177
+ "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
178
+ "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
179
+ "license": "MIT",
180
+ "engines": {
181
+ "node": ">=0.10.0"
182
+ }
183
+ },
184
+ "node_modules/strnum": {
185
+ "version": "2.4.2",
186
+ "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.4.2.tgz",
187
+ "integrity": "sha512-rDG3Ah4TV0k1hWvLSzkZtMmLN9+eS+h3knq4MP6A42Y3Yh5qGNnOUs1jJkoSr8FG5dsL28c7KgkIBzSEykqtuw==",
188
+ "funding": [
189
+ {
190
+ "type": "github",
191
+ "url": "https://github.com/sponsors/NaturalIntelligence"
192
+ }
193
+ ],
194
+ "license": "MIT",
195
+ "dependencies": {
196
+ "anynum": "^1.0.1"
197
+ }
198
+ },
199
+ "node_modules/xml-naming": {
200
+ "version": "0.3.0",
201
+ "resolved": "https://registry.npmjs.org/xml-naming/-/xml-naming-0.3.0.tgz",
202
+ "integrity": "sha512-ghig2TBE/H11aOVgmahA3MhimvkBr6JIYknH/Dhdk10nXwdbIqBJsbfMxpvFPG8bAw77gN29aQWvKpmVoPlvPQ==",
203
+ "funding": [
204
+ {
205
+ "type": "github",
206
+ "url": "https://github.com/sponsors/NaturalIntelligence"
207
+ }
208
+ ],
209
+ "license": "MIT",
210
+ "engines": {
211
+ "node": ">=16.0.0"
212
+ }
213
+ }
214
+ }
215
+ }
package/package.json CHANGED
@@ -1,6 +1,57 @@
1
1
  {
2
2
  "name": "@clowder-ai/connector-wecom-agent",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
6
- }
3
+ "version": "0.1.0-alpha.7",
4
+ "description": "WeCom custom-application messaging connector for Clowder AI hosts",
5
+ "license": "MIT",
6
+ "type": "module",
7
+ "exports": {
8
+ ".": {
9
+ "types": "./dist/index.d.ts",
10
+ "import": "./dist/index.js"
11
+ },
12
+ "./manifest": "./plugin.yaml"
13
+ },
14
+ "main": "./dist/index.js",
15
+ "types": "./dist/index.d.ts",
16
+ "files": [
17
+ "dist",
18
+ "plugin.yaml",
19
+ "README.md",
20
+ "assets",
21
+ "npm-shrinkwrap.json",
22
+ "README.en.md"
23
+ ],
24
+ "engines": {
25
+ "node": ">=20.0.0"
26
+ },
27
+ "scripts": {
28
+ "build": "pnpm clean && tsc -p tsconfig.build.json",
29
+ "typecheck": "tsc -p tsconfig.build.json --noEmit && tsc -p tsconfig.test.json",
30
+ "test": "node --import tsx --test src/**/*.test.ts",
31
+ "lint": "tsc -p tsconfig.build.json --noEmit && tsc -p tsconfig.test.json",
32
+ "clean": "rm -rf dist",
33
+ "prepack": "pnpm build"
34
+ },
35
+ "dependencies": {
36
+ "@clowder-ai/plugin-sdk": "0.2.0-beta.23",
37
+ "fast-xml-parser": "5.5.9",
38
+ "@clowder-ai/plugin-contract": "0.1.0-beta.37"
39
+ },
40
+ "devDependencies": {
41
+ "@types/node": "^20.17.0",
42
+ "tsx": "^4.19.0",
43
+ "typescript": "^5.7.0",
44
+ "yaml": "2.9.0"
45
+ },
46
+ "keywords": [
47
+ "clowder-ai",
48
+ "connector",
49
+ "wecom",
50
+ "messaging"
51
+ ],
52
+ "repository": {
53
+ "type": "git",
54
+ "url": "https://github.com/zts212653/clowder-ai-plugins.git",
55
+ "directory": "packages/connector-wecom-agent"
56
+ }
57
+ }
package/plugin.yaml ADDED
@@ -0,0 +1,83 @@
1
+ pluginId: official.connector.wecom-agent
2
+ version: 0.1.0-alpha.7
3
+ contractVersion: 0.1.0
4
+ name: WeCom Agent Connector
5
+ description:
6
+ default: Receive encrypted WeCom callbacks and send replies through a Host-owned connector binding.
7
+ translations:
8
+ zh-CN: 通过宿主所有的连接器绑定接收企微加密回调并发送回复。
9
+ icon:
10
+ type: svg
11
+ src: assets/icon.svg
12
+ configuration:
13
+ - key: corpId
14
+ label: Corp ID (企业 ID)
15
+ kind: string
16
+ required: true
17
+ - key: agentId
18
+ label: Agent ID (应用 ID)
19
+ kind: string
20
+ required: true
21
+ - key: agentSecret
22
+ label: Agent Secret
23
+ kind: secret
24
+ required: true
25
+ - key: callbackToken
26
+ label: 回调 Token
27
+ kind: secret
28
+ required: true
29
+ - key: encodingAesKey
30
+ label: EncodingAESKey (43 字符)
31
+ kind: secret
32
+ required: true
33
+ steps:
34
+ - text: 点击上方链接登录企微管理后台 → 创建自建应用,获取 AgentId 和 Secret
35
+ - text: 在「API 接收消息」中设置回调 URL、Token 和 EncodingAESKey
36
+ - text: 回调 URL 需通过公网访问(可使用 Cloudflare Tunnel)
37
+ contributions:
38
+ - type: identity
39
+ id: wecom-agent
40
+ displayName: WeCom custom application
41
+ - type: message-subscription
42
+ id: wecom-agent
43
+ binding: wecom-agent
44
+ action:
45
+ method: wecom-agent.outbound
46
+ presentation: v1
47
+ - type: media-source
48
+ id: wecom-agent-media
49
+ binding: wecom-agent
50
+ - type: webhook
51
+ id: wecom-agent-callback
52
+ path: connectors/wecom-agent
53
+ methods: [GET, POST]
54
+ action:
55
+ method: wecom-agent.webhook
56
+ verificationSecretRef: callbackToken
57
+ features:
58
+ - id: wecom-agent-messaging
59
+ name: WeCom agent messaging
60
+ resources: []
61
+ contributions:
62
+ - type: identity
63
+ id: wecom-agent
64
+ - type: message-subscription
65
+ id: wecom-agent
66
+ - type: media-source
67
+ id: wecom-agent-media
68
+ - type: webhook
69
+ id: wecom-agent-callback
70
+ capabilities:
71
+ - plugin.config.read
72
+ - plugin.state.get
73
+ - plugin.state.set
74
+ - streams.read
75
+ - message.event.subscribe
76
+ - messaging.send
77
+ - secret.read
78
+ - thread.listMetadata
79
+ - thread.readContent
80
+ - thread.write
81
+ runtime:
82
+ transport: builtin
83
+ entrypoint: dist/plugin-entrypoint.js