@wecode-ai/weibo-openclaw-plugin 1.0.7 → 1.0.8-beta.0

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.
@@ -0,0 +1,141 @@
1
+ ---
2
+ name: weibo-token
3
+ description: |
4
+ 微博 API 访问令牌工具。用于获取和管理微博 API 的访问 token。
5
+ 此工具为其他微博工具(热搜、搜索、用户微博等)提供统一的 token 管理服务。
6
+ token 有效期为 2 小时,工具会自动缓存和刷新。
7
+ ---
8
+
9
+ # 微博 Token 工具
10
+
11
+ 使用 `weibo_token` 工具获取微博 API 访问令牌。此工具提供统一的 token 管理服务,为其他微博工具提供认证支持。
12
+
13
+ ## 基本用法
14
+
15
+ ```json
16
+ {
17
+ "tool_calls": [
18
+ {
19
+ "name": "weibo_token",
20
+ "arguments": {}
21
+ }
22
+ ]
23
+ }
24
+ ```
25
+
26
+ 此工具不需要任何参数,直接调用即可获取当前有效的 token。
27
+
28
+ ## 参数说明
29
+
30
+ 此工具无需参数。
31
+
32
+ ## 返回结果
33
+
34
+ 成功时返回:
35
+
36
+ ```json
37
+ {
38
+ "success": true,
39
+ "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
40
+ "acquiredAt": "2026-03-12T15:30:00.000Z",
41
+ "expiresIn": 7200,
42
+ "expiresAt": "2026-03-12T17:30:00.000Z"
43
+ }
44
+ ```
45
+
46
+ 错误时返回:
47
+
48
+ ```json
49
+ {
50
+ "success": false,
51
+ "error": "获取微博 token 失败: 错误信息"
52
+ }
53
+ ```
54
+
55
+ ## 返回字段说明
56
+
57
+ | 字段 | 类型 | 说明 |
58
+ |------|------|------|
59
+ | `success` | boolean | 是否成功获取 token |
60
+ | `token` | string | 访问令牌 |
61
+ | `acquiredAt` | string | token 获取时间(ISO 8601 格式) |
62
+ | `expiresIn` | number | token 有效期(秒),默认 7200 秒(2小时) |
63
+ | `expiresAt` | string | token 过期时间(ISO 8601 格式) |
64
+
65
+ ## 配置(必填)
66
+
67
+ ```json
68
+ {
69
+ "channels": {
70
+ "weibo": {
71
+ "appId": "your_app_id",
72
+ "appSecret": "your_app_secret"
73
+ }
74
+ }
75
+ }
76
+ ```
77
+
78
+ ### 配置项说明
79
+
80
+ | 配置项 | 类型 | 必填 | 默认值 | 说明 |
81
+ |--------|------|------|--------|------|
82
+ | `appId` | string | 是 | - | 应用 ID,用于获取 token |
83
+ | `appSecret` | string | 是 | - | 应用密钥,用于获取 token |
84
+ | `tokenEndpoint` | string | 否 | `http://open-im.api.weibo.com/open/auth/ws_token` | Token 获取端点 |
85
+ | `weiboTokenEnabled` | boolean | 否 | `true` | 是否启用 token 工具 |
86
+
87
+ ## API 说明
88
+
89
+ 此工具使用微博开放平台的 token 接口:
90
+
91
+ ### 获取 Token
92
+ ```
93
+ POST http://open-im.api.weibo.com/open/auth/ws_token
94
+ Content-Type: application/json
95
+
96
+ {
97
+ "app_id": "your_app_id",
98
+ "app_secret": "your_app_secret"
99
+ }
100
+ ```
101
+
102
+ ### 响应示例
103
+ ```json
104
+ {
105
+ "data": {
106
+ "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
107
+ "expire_in": 7200
108
+ }
109
+ }
110
+ ```
111
+
112
+ ## Token 缓存机制
113
+
114
+ 1. **自动缓存**:首次获取的 token 会被缓存
115
+ 2. **自动刷新**:在 token 过期前 60 秒自动刷新
116
+ 3. **共享使用**:所有微博工具共享同一个 token 缓存
117
+
118
+ ## 使用场景
119
+
120
+ 此工具主要用于以下场景:
121
+
122
+ 1. **调试**:检查当前 token 状态和有效期
123
+ 2. **预热**:在使用其他微博工具前预先获取 token
124
+ 3. **监控**:监控 token 的获取和刷新情况
125
+
126
+ ## 与其他工具的关系
127
+
128
+ 以下微博工具依赖此 token 工具进行认证:
129
+
130
+ - `weibo_hot_search` - 微博热搜榜
131
+ - `weibo_search` - 微博智搜
132
+ - `weibo_status` - 用户微博
133
+
134
+ 这些工具会自动调用 token 管理功能,无需手动获取 token。
135
+
136
+ ## 注意事项
137
+
138
+ 1. 此工具需要配置 `appId` 和 `appSecret` 才能使用
139
+ 2. Token 有效期为 2 小时(7200 秒)
140
+ 3. 工具会在 token 过期前 60 秒自动刷新
141
+ 4. 所有微博工具共享同一个 token 缓存,避免重复获取
@@ -1 +1 @@
1
- {"version":3,"file":"weibo-hot-search.d.ts","sourceRoot":"","sources":["../../src/weibo-hot-search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAItD,eAAO,MAAM,oBAAoB;;;EAa/B,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAwBvE;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE;QACJ,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,kBAAkB,EAAE,CAAC;KAC5B,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAyMF,MAAM,MAAM,oBAAoB,GAAG;IACjC,0CAA0C;IAC1C,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wBAAwB;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAeF,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,iBAAiB,QA6DjE"}
1
+ {"version":3,"file":"weibo-hot-search.d.ts","sourceRoot":"","sources":["../../src/weibo-hot-search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAKtD,eAAO,MAAM,oBAAoB;;;EAa/B,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAwBvE;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE;QACJ,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,kBAAkB,EAAE,CAAC;KAC5B,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAyGF,MAAM,MAAM,oBAAoB,GAAG;IACjC,0CAA0C;IAC1C,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wBAAwB;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAeF,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,iBAAiB,QA6DjE"}
@@ -1,4 +1,5 @@
1
1
  import { Type } from "@sinclair/typebox";
2
+ import { getValidWeiboToken } from "./weibo-token-tool.js";
2
3
  // ============ Schema ============
3
4
  export const WeiboHotSearchSchema = Type.Object({
4
5
  category: Type.String({
@@ -41,65 +42,6 @@ const CATEGORY_MAP = {
41
42
  科技榜: "v_openclaw_tech",
42
43
  体育榜: "v_openclaw_sport",
43
44
  };
44
- // ============ Token Management ============
45
- // Token 过期时间:2小时(7200秒),提前60秒刷新
46
- const TOKEN_EXPIRE_SECONDS = 7200;
47
- const TOKEN_REFRESH_BUFFER_SECONDS = 60;
48
- // 默认 token 端点
49
- const DEFAULT_TOKEN_ENDPOINT = "http://open-im.api.weibo.com/open/auth/ws_token";
50
- // 热搜专用的 token 缓存
51
- let hotSearchTokenCache = null;
52
- /**
53
- * 获取热搜用的 token
54
- * 通过 http://open-im.api.weibo.com/open/auth/ws_token 获取
55
- * token 过期时间为 2 小时
56
- */
57
- async function fetchHotSearchToken(appId, appSecret, tokenEndpoint) {
58
- const endpoint = tokenEndpoint || DEFAULT_TOKEN_ENDPOINT;
59
- const response = await fetch(endpoint, {
60
- method: "POST",
61
- headers: {
62
- "Content-Type": "application/json",
63
- },
64
- body: JSON.stringify({
65
- app_id: appId,
66
- app_secret: appSecret,
67
- }),
68
- });
69
- if (!response.ok) {
70
- const errorText = await response.text().catch(() => "");
71
- throw new Error(`获取热搜 token 失败: ${response.status} ${response.statusText}${errorText ? ` - ${errorText}` : ""}`);
72
- }
73
- const result = (await response.json());
74
- if (!result.data?.token) {
75
- throw new Error("获取热搜 token 失败: 响应中缺少 token");
76
- }
77
- const tokenCache = {
78
- token: result.data.token,
79
- acquiredAt: Date.now(),
80
- expiresIn: result.data.expire_in || TOKEN_EXPIRE_SECONDS,
81
- };
82
- hotSearchTokenCache = tokenCache;
83
- return tokenCache;
84
- }
85
- /**
86
- * 获取有效的热搜 token
87
- * 如果缓存的 token 未过期则返回缓存,否则重新获取
88
- */
89
- async function getValidHotSearchToken(appId, appSecret, tokenEndpoint) {
90
- // 检查缓存的 token 是否有效
91
- if (hotSearchTokenCache) {
92
- const expiresAt = hotSearchTokenCache.acquiredAt +
93
- hotSearchTokenCache.expiresIn * 1000 -
94
- TOKEN_REFRESH_BUFFER_SECONDS * 1000;
95
- if (Date.now() < expiresAt) {
96
- return hotSearchTokenCache.token;
97
- }
98
- }
99
- // 获取新 token
100
- const tokenResult = await fetchHotSearchToken(appId, appSecret, tokenEndpoint);
101
- return tokenResult.token;
102
- }
103
45
  // ============ Core Functions ============
104
46
  // 默认热搜端点
105
47
  const DEFAULT_HOT_SEARCH_ENDPOINT = "http://open-im.api.weibo.com/open/weibo/hot_search";
@@ -208,8 +150,8 @@ export function registerWeiboHotSearchTools(api) {
208
150
  error: `无效的榜单类型: ${p.category}。支持的类型: ${Object.keys(CATEGORY_MAP).join("、")}`,
209
151
  });
210
152
  }
211
- // 获取有效的 token
212
- const token = await getValidHotSearchToken(appId, appSecret, cfg.tokenEndpoint);
153
+ // 获取有效的 token(使用共享的 token 工具)
154
+ const token = await getValidWeiboToken(appId, appSecret, cfg.tokenEndpoint);
213
155
  const result = await fetchHotSearch(token, p.category, p.count, cfg.weiboHotSearchEndpoint);
214
156
  return json(formatHotSearchResult(result, p.category));
215
157
  }
@@ -1 +1 @@
1
- {"version":3,"file":"weibo-hot-search.js","sourceRoot":"","sources":["../../src/weibo-hot-search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"weibo-hot-search.js","sourceRoot":"","sources":["../../src/weibo-hot-search.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"weibo-search.d.ts","sourceRoot":"","sources":["../../src/weibo-search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAyB7D;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE;QACJ,SAAS,EAAE,OAAO,CAAC;QACnB,SAAS,EAAE,OAAO,CAAC;QACnB,GAAG,EAAE,MAAM,CAAC;QACZ,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,OAAO,CAAC;QACnB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,aAAa,EAAE,MAAM,CAAC;QACtB,OAAO,EAAE,OAAO,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,CAAC;QACX,WAAW,EAAE,MAAM,CAAC;QACpB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,eAAe,EAAE,MAAM,CAAC;QACxB,aAAa,EAAE,MAAM,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,EAAE,OAAO,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,KAAK,CAAC;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5C,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,qBAAqB,EAAE,CAAC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAyLF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,0CAA0C;IAC1C,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wBAAwB;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAeF,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,iBAAiB,QAoD9D"}
1
+ {"version":3,"file":"weibo-search.d.ts","sourceRoot":"","sources":["../../src/weibo-search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AA0B7D;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE;QACJ,SAAS,EAAE,OAAO,CAAC;QACnB,SAAS,EAAE,OAAO,CAAC;QACnB,GAAG,EAAE,MAAM,CAAC;QACZ,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,OAAO,CAAC;QACnB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,aAAa,EAAE,MAAM,CAAC;QACtB,OAAO,EAAE,OAAO,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,CAAC;QACX,WAAW,EAAE,MAAM,CAAC;QACpB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,eAAe,EAAE,MAAM,CAAC;QACxB,aAAa,EAAE,MAAM,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,EAAE,OAAO,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,KAAK,CAAC;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5C,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,qBAAqB,EAAE,CAAC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAyFF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,0CAA0C;IAC1C,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wBAAwB;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAeF,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,iBAAiB,QAoD9D"}
@@ -1,4 +1,5 @@
1
1
  import { WeiboSearchSchema } from "./search-schema.js";
2
+ import { getValidWeiboToken } from "./weibo-token-tool.js";
2
3
  // ============ Helpers ============
3
4
  function json(data) {
4
5
  return {
@@ -16,65 +17,6 @@ function readOptionalNonBlankString(value) {
16
17
  const trimmed = value.trim();
17
18
  return trimmed ? trimmed : undefined;
18
19
  }
19
- // ============ Token Management ============
20
- // Token 过期时间:2小时(7200秒),提前60秒刷新
21
- const TOKEN_EXPIRE_SECONDS = 7200;
22
- const TOKEN_REFRESH_BUFFER_SECONDS = 60;
23
- // 默认 token 端点
24
- const DEFAULT_TOKEN_ENDPOINT = "http://open-im.api.weibo.com/open/auth/ws_token";
25
- // 搜索专用的 token 缓存
26
- let searchTokenCache = null;
27
- /**
28
- * 获取搜索用的 token
29
- * 通过 http://open-im.api.weibo.com/open/auth/ws_token 获取
30
- * token 过期时间为 2 小时
31
- */
32
- async function fetchSearchToken(appId, appSecret, tokenEndpoint) {
33
- const endpoint = tokenEndpoint || DEFAULT_TOKEN_ENDPOINT;
34
- const response = await fetch(endpoint, {
35
- method: "POST",
36
- headers: {
37
- "Content-Type": "application/json",
38
- },
39
- body: JSON.stringify({
40
- app_id: appId,
41
- app_secret: appSecret,
42
- }),
43
- });
44
- if (!response.ok) {
45
- const errorText = await response.text().catch(() => "");
46
- throw new Error(`获取搜索 token 失败: ${response.status} ${response.statusText}${errorText ? ` - ${errorText}` : ""}`);
47
- }
48
- const result = (await response.json());
49
- if (!result.data?.token) {
50
- throw new Error("获取搜索 token 失败: 响应中缺少 token");
51
- }
52
- const tokenCache = {
53
- token: result.data.token,
54
- acquiredAt: Date.now(),
55
- expiresIn: result.data.expire_in || TOKEN_EXPIRE_SECONDS,
56
- };
57
- searchTokenCache = tokenCache;
58
- return tokenCache;
59
- }
60
- /**
61
- * 获取有效的搜索 token
62
- * 如果缓存的 token 未过期则返回缓存,否则重新获取
63
- */
64
- async function getValidSearchToken(appId, appSecret, tokenEndpoint) {
65
- // 检查缓存的 token 是否有效
66
- if (searchTokenCache) {
67
- const expiresAt = searchTokenCache.acquiredAt +
68
- searchTokenCache.expiresIn * 1000 -
69
- TOKEN_REFRESH_BUFFER_SECONDS * 1000;
70
- if (Date.now() < expiresAt) {
71
- return searchTokenCache.token;
72
- }
73
- }
74
- // 获取新 token
75
- const tokenResult = await fetchSearchToken(appId, appSecret, tokenEndpoint);
76
- return tokenResult.token;
77
- }
78
20
  // ============ Core Functions ============
79
21
  // 默认搜索端点
80
22
  const DEFAULT_SEARCH_ENDPOINT = "http://open-im.api.weibo.com/open/wis/search_query";
@@ -175,8 +117,8 @@ export function registerWeiboSearchTools(api) {
175
117
  async execute(_toolCallId, params) {
176
118
  const p = params;
177
119
  try {
178
- // 获取有效的 token
179
- const token = await getValidSearchToken(appId, appSecret, searchCfg.tokenEndpoint);
120
+ // 获取有效的 token(使用共享的 token 工具)
121
+ const token = await getValidWeiboToken(appId, appSecret, searchCfg.tokenEndpoint);
180
122
  const result = await searchWeibo(p.query, token, searchCfg.weiboSearchEndpoint);
181
123
  return json(formatSearchResult(result));
182
124
  }
@@ -1 +1 @@
1
- {"version":3,"file":"weibo-search.js","sourceRoot":"","sources":["../../src/weibo-search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"weibo-search.js","sourceRoot":"","sources":["../../src/weibo-search.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"weibo-status.d.ts","sourceRoot":"","sources":["../../src/weibo-status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAItD,eAAO,MAAM,iBAAiB;;EAQ5B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAwBjE;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,aAAa;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY;IACZ,SAAS,EAAE,OAAO,CAAC;IACnB,mBAAmB;IACnB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU;IACV,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU;IACV,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU;IACV,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW;IACX,IAAI,EAAE,eAAe,CAAC;IACtB,aAAa;IACb,MAAM,CAAC,EAAE,eAAe,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE;QACJ,QAAQ,EAAE,eAAe,EAAE,CAAC;QAC5B,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH,CAAC;AAmMF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAgBF,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,iBAAiB,QAiD9D"}
1
+ {"version":3,"file":"weibo-status.d.ts","sourceRoot":"","sources":["../../src/weibo-status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAKtD,eAAO,MAAM,iBAAiB;;EAQ5B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAwBjE;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,aAAa;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY;IACZ,SAAS,EAAE,OAAO,CAAC;IACnB,mBAAmB;IACnB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU;IACV,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU;IACV,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU;IACV,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW;IACX,IAAI,EAAE,eAAe,CAAC;IACtB,aAAa;IACb,MAAM,CAAC,EAAE,eAAe,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE;QACJ,QAAQ,EAAE,eAAe,EAAE,CAAC;QAC5B,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH,CAAC;AAwGF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAgBF,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,iBAAiB,QAkD9D"}
@@ -1,4 +1,5 @@
1
1
  import { Type } from "@sinclair/typebox";
2
+ import { getValidWeiboToken } from "./weibo-token-tool.js";
2
3
  // ============ Schema ============
3
4
  export const WeiboStatusSchema = Type.Object({
4
5
  count: Type.Optional(Type.Number({
@@ -24,60 +25,6 @@ function readOptionalNonBlankString(value) {
24
25
  const trimmed = value.trim();
25
26
  return trimmed ? trimmed : undefined;
26
27
  }
27
- // ============ Token Management ============
28
- // Token 过期时间:2小时(7200秒),提前60秒刷新
29
- const TOKEN_EXPIRE_SECONDS = 7200;
30
- const TOKEN_REFRESH_BUFFER_SECONDS = 60;
31
- // 默认 token 端点
32
- const DEFAULT_TOKEN_ENDPOINT = "http://open-im.api.weibo.com/open/auth/ws_token";
33
- // 专用的 token 缓存
34
- let weiboStatusTokenCache = null;
35
- /**
36
- * 获取 token
37
- */
38
- async function fetchWeiboStatusToken(appId, appSecret, tokenEndpoint) {
39
- const endpoint = tokenEndpoint || DEFAULT_TOKEN_ENDPOINT;
40
- const response = await fetch(endpoint, {
41
- method: "POST",
42
- headers: {
43
- "Content-Type": "application/json",
44
- },
45
- body: JSON.stringify({
46
- app_id: appId,
47
- app_secret: appSecret,
48
- }),
49
- });
50
- if (!response.ok) {
51
- const errorText = await response.text().catch(() => "");
52
- throw new Error(`获取 token 失败: ${response.status} ${response.statusText}${errorText ? ` - ${errorText}` : ""}`);
53
- }
54
- const result = (await response.json());
55
- if (!result.data?.token) {
56
- throw new Error("获取 token 失败: 响应中缺少 token");
57
- }
58
- const tokenCache = {
59
- token: result.data.token,
60
- acquiredAt: Date.now(),
61
- expiresIn: result.data.expire_in || TOKEN_EXPIRE_SECONDS,
62
- };
63
- weiboStatusTokenCache = tokenCache;
64
- return tokenCache;
65
- }
66
- /**
67
- * 获取有效的 token
68
- */
69
- async function getValidWeiboStatusToken(appId, appSecret, tokenEndpoint) {
70
- if (weiboStatusTokenCache) {
71
- const expiresAt = weiboStatusTokenCache.acquiredAt +
72
- weiboStatusTokenCache.expiresIn * 1000 -
73
- TOKEN_REFRESH_BUFFER_SECONDS * 1000;
74
- if (Date.now() < expiresAt) {
75
- return weiboStatusTokenCache.token;
76
- }
77
- }
78
- const tokenResult = await fetchWeiboStatusToken(appId, appSecret, tokenEndpoint);
79
- return tokenResult.token;
80
- }
81
28
  // ============ Core Functions ============
82
29
  const DEFAULT_WEIBO_STATUS_ENDPOINT = "http://open-im.api.weibo.com/open/weibo/user_status";
83
30
  /**
@@ -184,7 +131,8 @@ export function registerWeiboStatusTools(api) {
184
131
  async execute(_toolCallId, params) {
185
132
  const p = params;
186
133
  try {
187
- const token = await getValidWeiboStatusToken(appId, appSecret, cfg.tokenEndpoint);
134
+ // 获取有效的 token(使用共享的 token 工具)
135
+ const token = await getValidWeiboToken(appId, appSecret, cfg.tokenEndpoint);
188
136
  const result = await fetchWeiboStatus({
189
137
  token,
190
138
  count: p.count,
@@ -1 +1 @@
1
- {"version":3,"file":"weibo-status.js","sourceRoot":"","sources":["../../src/weibo-status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"weibo-status.js","sourceRoot":"","sources":["../../src/weibo-status.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ import type { OpenClawPluginApi } from "openclaw/plugin-sdk";
2
+ import { type Static } from "@sinclair/typebox";
3
+ export declare const WeiboTokenSchema: import("@sinclair/typebox").TObject<{}>;
4
+ export type WeiboTokenParams = Static<typeof WeiboTokenSchema>;
5
+ export type WeiboTokenCache = {
6
+ token: string;
7
+ acquiredAt: number;
8
+ expiresIn: number;
9
+ };
10
+ /**
11
+ * 获取微博 API token
12
+ * 通过 http://open-im.api.weibo.com/open/auth/ws_token 获取
13
+ * token 过期时间为 2 小时
14
+ */
15
+ export declare function fetchWeiboToken(appId: string, appSecret: string, tokenEndpoint?: string): Promise<WeiboTokenCache>;
16
+ /**
17
+ * 检查 token 是否有效
18
+ */
19
+ export declare function isTokenValid(tokenCache: WeiboTokenCache | null): boolean;
20
+ /**
21
+ * 获取有效的微博 token
22
+ * 如果缓存的 token 未过期则返回缓存,否则重新获取
23
+ */
24
+ export declare function getValidWeiboToken(appId: string, appSecret: string, tokenEndpoint?: string): Promise<string>;
25
+ /**
26
+ * 获取当前缓存的 token 信息
27
+ */
28
+ export declare function getCachedToken(): WeiboTokenCache | null;
29
+ /**
30
+ * 清除 token 缓存
31
+ */
32
+ export declare function clearWeiboTokenCache(): void;
33
+ export type WeiboTokenConfig = {
34
+ /** App ID,用于获取 token */
35
+ appId?: string;
36
+ /** App Secret,用于获取 token */
37
+ appSecret?: string;
38
+ /** Token 端点,默认为 http://open-im.api.weibo.com/open/auth/ws_token */
39
+ tokenEndpoint?: string;
40
+ /** 是否启用 token 工具,默认为 true */
41
+ enabled?: boolean;
42
+ };
43
+ export declare function getWeiboTokenConfig(api: OpenClawPluginApi): WeiboTokenConfig;
44
+ export declare function registerWeiboTokenTools(api: OpenClawPluginApi): void;
45
+ //# sourceMappingURL=weibo-token-tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"weibo-token-tool.d.ts","sourceRoot":"","sources":["../../src/weibo-token-tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAItD,eAAO,MAAM,gBAAgB,yCAAkB,CAAC;AAEhD,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AA+B/D,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAYF;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,eAAe,CAAC,CAmC1B;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,eAAe,GAAG,IAAI,GAAG,OAAO,CASxE;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC,CASjB;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,eAAe,GAAG,IAAI,CAEvD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AAID,MAAM,MAAM,gBAAgB,GAAG;IAC7B,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6BAA6B;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,iBAAiB,GAAG,gBAAgB,CAQ5E;AAID,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,iBAAiB,QA0D7D"}