@zhin.js/adapter-github 0.1.0 → 0.1.2

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.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  把 GitHub 当聊天通道 — Issue/PR 评论区即群聊,通过 GitHub App 认证,纯 REST API 对接,零 CLI 依赖。
4
4
 
5
- 查询 · 管理 · 通知 三合一。
5
+ 查询 · 管理 · 通知 · OAuth 用户绑定 四合一。
6
6
 
7
7
  ## 功能特性
8
8
 
@@ -11,8 +11,9 @@
11
11
  - ✅ **信息查询**:Star、Branch、Release、CI Workflow 等
12
12
  - ✅ **事件通知**:Webhook 订阅,跨平台推送到任意聊天
13
13
  - ✅ **GitHub App 认证**:JWT → Installation Token,自动刷新
14
+ - ✅ **OAuth 用户绑定**:用户可绑定自己的 GitHub 账号,star/fork 以个人身份执行
14
15
  - ✅ **AI Skill**:所有工具自动暴露给 AI 调用
15
- - ✅ **无 router 也能运行**:核心功能不依赖 HTTP 服务,有 router 时自动注册 Webhook 路由
16
+ - ✅ **无 router 也能运行**:核心功能不依赖 HTTP 服务,有 router 时自动注册 Webhook 和 OAuth 路由
16
17
 
17
18
  ## 安装
18
19
 
@@ -43,7 +44,9 @@ pnpm add @zhin.js/adapter-github
43
44
  - Issue comment、Pull request、Pull request review、Pull request review comment
44
45
  - Push、Star、Fork(用于通知)
45
46
  6. 创建后记录 **App ID**,点击 **Generate a private key** 下载 `.pem` 文件
46
- 7. 安装 App 到目标仓库/组织
47
+ 7. 如需 OAuth 用户绑定功能,记录 **Client ID** 和 **Client Secret**(在 App 设置页的 General 中)
48
+ 8. 在 App 设置页配置 **Callback URL**: `https://your-domain/github/oauth/callback`
49
+ 9. 安装 App 到目标仓库/组织
47
50
 
48
51
  ## 配置
49
52
 
@@ -56,10 +59,20 @@ bots:
56
59
  private_key: ./data/github-app.pem # PEM 文件路径或直接粘贴内容
57
60
  # installation_id: 78901234 # 可选,不填则自动获取第一个
58
61
  # webhook_secret: your-secret # 可选,Webhook 签名验证
62
+ # client_id: Iv1.xxxxxxxxxx # 可选,OAuth 用户绑定
63
+ # client_secret: xxxxxxxxxxxx # 可选,配合 client_id 使用
59
64
 
60
65
  plugins:
61
66
  - "@zhin.js/adapter-github"
62
- - "@zhin.js/http" # 可选,提供 Webhook 能力
67
+ - "@zhin.js/http" # 可选,提供 Webhook + OAuth 能力
68
+ ```
69
+
70
+ `.env` 文件:
71
+ ```env
72
+ GITHUB_APP_ID=123456
73
+ GITHUB_WEBHOOK_SECRET=your-secret
74
+ GITHUB_CLIENT_ID=Iv1.xxxxxxxxxx
75
+ GITHUB_CLIENT_SECRET=xxxxxxxxxxxx
63
76
  ```
64
77
 
65
78
  `private_key` 支持两种写法:
@@ -87,6 +100,11 @@ GitHub adapter 将 Issue/PR 映射为聊天频道:
87
100
  | `github.subscribe` | 订阅事件通知 | 订阅仓库的 push/issue/star/fork/pr 事件 |
88
101
  | `github.unsubscribe` | 取消订阅 | — |
89
102
  | `github.subscriptions` | 查看订阅列表 | — |
103
+ | `github.bind` | 绑定 GitHub 账号 | 生成 OAuth 授权链接 |
104
+ | `github.unbind` | 解除绑定 | — |
105
+ | `github.whoami` | 查看绑定信息 | — |
106
+ | `github.star` | Star / Unstar 仓库 | 需要用户绑定 OAuth |
107
+ | `github.fork` | Fork 仓库 | 需要用户绑定 OAuth |
90
108
 
91
109
  ### 使用示例
92
110
 
@@ -95,6 +113,9 @@ AI: 列出 zhinjs/zhin 的 PR
95
113
  AI: 合并 zhinjs/zhin 的 PR #108
96
114
  AI: 查看 zhinjs/zhin 的 star 数
97
115
  AI: 订阅 zhinjs/zhin 的 push 和 pr 事件
116
+ AI: 绑定我的 GitHub 账号
117
+ AI: star zhinjs/zhin
118
+ AI: fork zhinjs/zhin
98
119
  ```
99
120
 
100
121
  ## Webhook 事件通知
@@ -120,6 +141,44 @@ Headers:
120
141
  - `X-GitHub-Event`: 事件类型
121
142
  - `X-Hub-Signature-256`: 签名(配置了 secret 时)
122
143
 
144
+ ## OAuth 用户绑定
145
+
146
+ 支持聊天平台用户绑定自己的 GitHub 账号。绑定后,star/fork 等个人操作将以用户自己的身份执行。
147
+
148
+ ### 认证策略
149
+
150
+ | 操作类型 | 使用的 Token | 原因 |
151
+ |---------|------------|------|
152
+ | 读取 issue/PR/repo 信息 | App JWT | 不涉及用户身份 |
153
+ | 评论(bot 发言) | App JWT | 以机器人身份发言 |
154
+ | star / unstar | User OAuth | 个人行为 |
155
+ | fork | User OAuth | 个人行为 |
156
+ | 创建 issue / PR | 视场景选择 | 已绑定用用户 token,未绑定用 App |
157
+
158
+ ### 绑定流程
159
+
160
+ 1. 用户在聊天中发送"绑定 GitHub 账号"或触发 `github.bind` 工具
161
+ 2. Bot 返回一个带有 `state` 的 OAuth 授权链接
162
+ 3. 用户点击链接 → 浏览器跳转到 GitHub 授权页面
163
+ 4. 用户授权后 → GitHub 回调到 `/api/github/oauth/callback`
164
+ 5. 服务端交换 code → access_token,获取用户信息,存入数据库
165
+ 6. 用户看到"绑定成功"页面
166
+
167
+ ### OAuth 端点
168
+
169
+ | 路由 | 说明 |
170
+ |------|------|
171
+ | `GET /github/oauth?state=xxx` | 发起 GitHub 授权重定向 |
172
+ | `GET /github/oauth/callback?code=xxx&state=xxx` | GitHub 回调,完成绑定 |
173
+
174
+ > OAuth 路由注册在 `/github/` 而非 `/api/` 下,因此不受 API Token 认证限制,用户浏览器可直接访问。
175
+
176
+ ### 前置条件
177
+
178
+ - 需要配置 `client_id` 和 `client_secret`
179
+ - 需要 `@zhin.js/http` 插件(提供 HTTP 路由)
180
+ - GitHub App 设置页中的 Callback URL 须指向 `https://your-domain/github/oauth/callback`
181
+
123
182
  ## 数据库表
124
183
 
125
184
  ### github_subscriptions
@@ -143,6 +202,20 @@ Headers:
143
202
  | event_type | text | 事件类型 |
144
203
  | payload | json | 事件载荷 |
145
204
 
205
+ ### github_oauth_users
206
+
207
+ | 字段 | 类型 | 说明 |
208
+ |------|------|------|
209
+ | id | integer | 主键 |
210
+ | platform | text | 聊天平台 (icqq / kook / discord) |
211
+ | platform_uid | text | 聊天平台用户 ID |
212
+ | github_login | text | GitHub 用户名 |
213
+ | github_id | integer | GitHub 用户 ID |
214
+ | access_token | text | OAuth access_token |
215
+ | scope | text | 授权范围 |
216
+ | created_at | date | 创建时间 |
217
+ | updated_at | date | 更新时间 |
218
+
146
219
  ## 架构说明
147
220
 
148
221
  ```
@@ -155,8 +228,8 @@ adapter-github/
155
228
  └── README.md
156
229
  ```
157
230
 
158
- - **无 `@zhin.js/http` 时**:适配器正常运行,可使用所有 API 工具(PR/Issue/Repo 管理),但无法接收 Webhook 推送
159
- - **有 `@zhin.js/http` 时**:通过 `useContext('router')` 自动注册 Webhook 路由,获得事件通知和聊天消息接收能力
231
+ - **无 `@zhin.js/http` 时**:适配器正常运行,可使用所有 API 工具(PR/Issue/Repo 管理),但无法接收 Webhook 推送和 OAuth 绑定
232
+ - **有 `@zhin.js/http` 时**:通过 `useContext('router')` 自动注册 Webhook 路由 + OAuth 路由,获得事件通知、聊天消息接收和用户绑定能力
160
233
 
161
234
  ## 许可证
162
235
 
package/lib/api.d.ts CHANGED
@@ -1,7 +1,10 @@
1
1
  /**
2
2
  * GitHub REST API 客户端
3
3
  *
4
- * GitHub App 认证: app_id + private_key → JWT → Installation Access Token
4
+ * 两种认证方式:
5
+ * 1. GitHub App (JWT): app_id + private_key → JWT → Installation Access Token
6
+ * 2. OAuth User: access_token → 以用户身份调用 API
7
+ *
5
8
  * 零外部依赖,使用 Node.js 原生 crypto + fetch
6
9
  */
7
10
  export declare class GitHubAPI {
@@ -133,4 +136,32 @@ export declare class GitHubAPI {
133
136
  };
134
137
  }>;
135
138
  }
139
+ export declare function exchangeOAuthCode(clientId: string, clientSecret: string, code: string): Promise<{
140
+ access_token: string;
141
+ scope: string;
142
+ token_type: string;
143
+ }>;
144
+ type ApiResult<T = any> = {
145
+ ok: boolean;
146
+ status: number;
147
+ data: T;
148
+ };
149
+ export declare class GitHubOAuthClient {
150
+ private accessToken;
151
+ constructor(accessToken: string);
152
+ request<T = any>(method: string, path: string, body?: any): Promise<ApiResult<T>>;
153
+ getUser(): Promise<ApiResult<{
154
+ login: string;
155
+ id: number;
156
+ name: string | null;
157
+ avatar_url: string;
158
+ }>>;
159
+ starRepo(repo: string): Promise<ApiResult>;
160
+ unstarRepo(repo: string): Promise<ApiResult>;
161
+ isStarred(repo: string): Promise<boolean>;
162
+ forkRepo(repo: string): Promise<ApiResult>;
163
+ createIssue(repo: string, title: string, body?: string, labels?: string[]): Promise<ApiResult>;
164
+ createPR(repo: string, title: string, body: string, head: string, base?: string): Promise<ApiResult>;
165
+ }
166
+ export {};
136
167
  //# sourceMappingURL=api.d.ts.map
package/lib/api.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
package/lib/api.js CHANGED
@@ -1,7 +1,10 @@
1
1
  /**
2
2
  * GitHub REST API 客户端
3
3
  *
4
- * GitHub App 认证: app_id + private_key → JWT → Installation Access Token
4
+ * 两种认证方式:
5
+ * 1. GitHub App (JWT): app_id + private_key → JWT → Installation Access Token
6
+ * 2. OAuth User: access_token → 以用户身份调用 API
7
+ *
5
8
  * 零外部依赖,使用 Node.js 原生 crypto + fetch
6
9
  */
7
10
  import crypto from 'node:crypto';
@@ -179,4 +182,68 @@ export class GitHubAPI {
179
182
  return this.get(`/repos/${repo}/actions/runs?per_page=${limit}`);
180
183
  }
181
184
  }
185
+ // ── OAuth Token Exchange ─────────────────────────────────────────────
186
+ export async function exchangeOAuthCode(clientId, clientSecret, code) {
187
+ const res = await fetch('https://github.com/login/oauth/access_token', {
188
+ method: 'POST',
189
+ headers: { Accept: 'application/json', 'Content-Type': 'application/json' },
190
+ body: JSON.stringify({ client_id: clientId, client_secret: clientSecret, code }),
191
+ });
192
+ if (!res.ok)
193
+ throw new Error(`OAuth token exchange failed: ${res.status}`);
194
+ const data = await res.json();
195
+ if (data.error)
196
+ throw new Error(`OAuth error: ${data.error_description || data.error}`);
197
+ return data;
198
+ }
199
+ export class GitHubOAuthClient {
200
+ accessToken;
201
+ constructor(accessToken) {
202
+ this.accessToken = accessToken;
203
+ }
204
+ async request(method, path, body) {
205
+ const url = path.startsWith('http') ? path : `${API_BASE}${path}`;
206
+ const res = await fetch(url, {
207
+ method,
208
+ headers: {
209
+ Authorization: `Bearer ${this.accessToken}`,
210
+ Accept: ACCEPT,
211
+ 'X-GitHub-Api-Version': API_VERSION,
212
+ ...(body ? { 'Content-Type': 'application/json' } : {}),
213
+ },
214
+ body: body ? JSON.stringify(body) : undefined,
215
+ });
216
+ const text = await res.text();
217
+ let data;
218
+ try {
219
+ data = JSON.parse(text);
220
+ }
221
+ catch {
222
+ data = text;
223
+ }
224
+ return { ok: res.ok, status: res.status, data };
225
+ }
226
+ async getUser() {
227
+ return this.request('GET', '/user');
228
+ }
229
+ async starRepo(repo) {
230
+ return this.request('PUT', `/user/starred/${repo}`);
231
+ }
232
+ async unstarRepo(repo) {
233
+ return this.request('DELETE', `/user/starred/${repo}`);
234
+ }
235
+ async isStarred(repo) {
236
+ const res = await this.request('GET', `/user/starred/${repo}`);
237
+ return res.status === 204;
238
+ }
239
+ async forkRepo(repo) {
240
+ return this.request('POST', `/repos/${repo}/forks`);
241
+ }
242
+ async createIssue(repo, title, body, labels) {
243
+ return this.request('POST', `/repos/${repo}/issues`, { title, body, labels });
244
+ }
245
+ async createPR(repo, title, body, head, base = 'main') {
246
+ return this.request('POST', `/repos/${repo}/pulls`, { title, body, head, base });
247
+ }
248
+ }
182
249
  //# sourceMappingURL=api.js.map
package/lib/api.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -8,7 +8,8 @@
8
8
  */
9
9
  import { Bot, Adapter, Plugin, Message, SendOptions } from 'zhin.js';
10
10
  import type { GitHubBotConfig, IssueCommentPayload, PRReviewCommentPayload, PRReviewPayload, GenericWebhookPayload, EventType } from './types.js';
11
- import { GitHubAPI } from './api.js';
11
+ import type { GitHubOAuthUser } from './types.js';
12
+ import { GitHubAPI, GitHubOAuthClient } from './api.js';
12
13
  declare module 'zhin.js' {
13
14
  namespace Plugin {
14
15
  interface Contexts {
@@ -34,6 +35,7 @@ declare module 'zhin.js' {
34
35
  event_type: string;
35
36
  payload: any;
36
37
  };
38
+ github_oauth_users: GitHubOAuthUser;
37
39
  }
38
40
  }
39
41
  export declare class GitHubBot implements Bot<GitHubBotConfig, IssueCommentPayload> {
@@ -52,11 +54,14 @@ export declare class GitHubBot implements Bot<GitHubBotConfig, IssueCommentPaylo
52
54
  $recallMessage(id: string): Promise<void>;
53
55
  }
54
56
  declare class GitHubAdapter extends Adapter<GitHubBot> {
57
+ oauthBaseUrl: string | null;
55
58
  constructor(plugin: Plugin);
56
59
  createBot(config: GitHubBotConfig): GitHubBot;
57
60
  start(): Promise<void>;
58
61
  /** 获取第一个可用 bot 的 API (工具用) */
59
62
  private getAPI;
63
+ getOAuthClient(platform: string, platformUid: string): Promise<GitHubOAuthClient | null>;
64
+ setupOAuth(router: import('@zhin.js/http').Router): void;
60
65
  setupWebhook(router: import('@zhin.js/http').Router): void;
61
66
  private registerGitHubTools;
62
67
  dispatchNotification(eventName: string, payload: GenericWebhookPayload): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,GAAG,EACH,OAAO,EACP,MAAM,EACN,OAAO,EACP,WAAW,EAMZ,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EACV,eAAe,EACf,mBAAmB,EACnB,sBAAsB,EACtB,eAAe,EACf,qBAAqB,EACrB,SAAS,EAKV,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AASrC,OAAO,QAAQ,SAAS,CAAC;IACvB,UAAU,MAAM,CAAC;QACf,UAAU,QAAQ;YAChB,MAAM,EAAE,OAAO,eAAe,EAAE,MAAM,CAAC;SACxC;KACF;IACD,UAAU,QAAQ;QAChB,MAAM,EAAE,aAAa,CAAC;KACvB;IACD,UAAU,MAAM;QACd,oBAAoB,EAAE;YACpB,EAAE,EAAE,MAAM,CAAC;YACX,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,SAAS,EAAE,CAAC;YACpB,SAAS,EAAE,MAAM,CAAC;YAClB,WAAW,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;YAC7C,OAAO,EAAE,MAAM,CAAC;YAChB,GAAG,EAAE,MAAM,CAAC;SACb,CAAC;QACF,aAAa,EAAE;YACb,EAAE,EAAE,MAAM,CAAC;YACX,IAAI,EAAE,MAAM,CAAC;YACb,UAAU,EAAE,MAAM,CAAC;YACnB,OAAO,EAAE,GAAG,CAAC;SACd,CAAC;KACH;CACF;AAuCD,qBAAa,SAAU,YAAW,GAAG,CAAC,eAAe,EAAE,mBAAmB,CAAC;IAMtD,OAAO,EAAE,aAAa;IAAS,OAAO,EAAE,eAAe;IAL1E,UAAU,UAAS;IACnB,GAAG,EAAE,SAAS,CAAC;IAEf,IAAI,GAAG,WAAgC;gBAEpB,OAAO,EAAE,aAAa,EAAS,OAAO,EAAE,eAAe;IAKpE,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAOzB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAOlC,cAAc,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA2B1E,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IA2BvF,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI;IAgCnE,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAcnD,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGhD;AAMD,cAAM,aAAc,SAAQ,OAAO,CAAC,SAAS,CAAC;gBAChC,MAAM,EAAE,MAAM;IAI1B,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS;IAIvC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAe5B,8BAA8B;IAC9B,OAAO,CAAC,MAAM;IAOd,YAAY,CAAC,MAAM,EAAE,OAAO,eAAe,EAAE,MAAM,GAAG,IAAI;IA+E1D,OAAO,CAAC,mBAAmB;IAqSrB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;CAiC7F"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,GAAG,EACH,OAAO,EACP,MAAM,EACN,OAAO,EACP,WAAW,EAMZ,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EACV,eAAe,EACf,mBAAmB,EACnB,sBAAsB,EACtB,eAAe,EACf,qBAAqB,EACrB,SAAS,EAKV,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAqB,MAAM,UAAU,CAAC;AAS3E,OAAO,QAAQ,SAAS,CAAC;IACvB,UAAU,MAAM,CAAC;QACf,UAAU,QAAQ;YAChB,MAAM,EAAE,OAAO,eAAe,EAAE,MAAM,CAAC;SACxC;KACF;IACD,UAAU,QAAQ;QAChB,MAAM,EAAE,aAAa,CAAC;KACvB;IACD,UAAU,MAAM;QACd,oBAAoB,EAAE;YACpB,EAAE,EAAE,MAAM,CAAC;YACX,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,SAAS,EAAE,CAAC;YACpB,SAAS,EAAE,MAAM,CAAC;YAClB,WAAW,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;YAC7C,OAAO,EAAE,MAAM,CAAC;YAChB,GAAG,EAAE,MAAM,CAAC;SACb,CAAC;QACF,aAAa,EAAE;YACb,EAAE,EAAE,MAAM,CAAC;YACX,IAAI,EAAE,MAAM,CAAC;YACb,UAAU,EAAE,MAAM,CAAC;YACnB,OAAO,EAAE,GAAG,CAAC;SACd,CAAC;QACF,kBAAkB,EAAE,eAAe,CAAC;KACrC;CACF;AAuDD,qBAAa,SAAU,YAAW,GAAG,CAAC,eAAe,EAAE,mBAAmB,CAAC;IAMtD,OAAO,EAAE,aAAa;IAAS,OAAO,EAAE,eAAe;IAL1E,UAAU,UAAS;IACnB,GAAG,EAAE,SAAS,CAAC;IAEf,IAAI,GAAG,WAAgC;gBAEpB,OAAO,EAAE,aAAa,EAAS,OAAO,EAAE,eAAe;IAKpE,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAOzB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAOlC,cAAc,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA2B1E,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IA2BvF,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI;IAgCnE,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAcnD,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGhD;AAMD,cAAM,aAAc,SAAQ,OAAO,CAAC,SAAS,CAAC;IAC5C,YAAY,EAAE,MAAM,GAAG,IAAI,CAAQ;gBAEvB,MAAM,EAAE,MAAM;IAI1B,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS;IAIvC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAe5B,8BAA8B;IAC9B,OAAO,CAAC,MAAM;IAOR,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAW9F,UAAU,CAAC,MAAM,EAAE,OAAO,eAAe,EAAE,MAAM,GAAG,IAAI;IA6GxD,YAAY,CAAC,MAAM,EAAE,OAAO,eAAe,EAAE,MAAM,GAAG,IAAI;IAuF1D,OAAO,CAAC,mBAAmB;IA4arB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;CAiC7F"}
package/lib/index.js CHANGED
@@ -8,7 +8,7 @@
8
8
  */
9
9
  import { Adapter, Message, usePlugin, ZhinTool, } from 'zhin.js';
10
10
  import { parseChannelId, buildChannelId } from './types.js';
11
- import { GitHubAPI } from './api.js';
11
+ import { GitHubAPI, GitHubOAuthClient, exchangeOAuthCode } from './api.js';
12
12
  import crypto from 'node:crypto';
13
13
  import fs from 'node:fs';
14
14
  import path from 'node:path';
@@ -32,7 +32,21 @@ defineModel('github_events', {
32
32
  event_type: { type: 'text', nullable: false },
33
33
  payload: { type: 'json', default: {} },
34
34
  });
35
+ defineModel('github_oauth_users', {
36
+ id: { type: 'integer', primary: true },
37
+ platform: { type: 'text', nullable: false },
38
+ platform_uid: { type: 'text', nullable: false },
39
+ github_login: { type: 'text', nullable: false },
40
+ github_id: { type: 'integer', nullable: false },
41
+ access_token: { type: 'text', nullable: false },
42
+ scope: { type: 'text', default: '' },
43
+ created_at: { type: 'date', nullable: false },
44
+ updated_at: { type: 'date', nullable: false },
45
+ });
35
46
  const VALID_EVENTS = ['push', 'issue', 'star', 'fork', 'unstar', 'pull_request'];
47
+ // OAuth state 存储(内存,5分钟过期)
48
+ const oauthStates = new Map();
49
+ const OAUTH_STATE_TTL = 5 * 60 * 1000;
36
50
  // ============================================================================
37
51
  // GitHubBot
38
52
  // ============================================================================
@@ -167,6 +181,7 @@ export class GitHubBot {
167
181
  // GitHubAdapter
168
182
  // ============================================================================
169
183
  class GitHubAdapter extends Adapter {
184
+ oauthBaseUrl = null;
170
185
  constructor(plugin) {
171
186
  super(plugin, 'github', []);
172
187
  }
@@ -192,21 +207,136 @@ class GitHubAdapter extends Adapter {
192
207
  const bot = this.bots.values().next().value;
193
208
  return bot?.api || null;
194
209
  }
210
+ // ── OAuth 用户查询 ─────────────────────────────────────────────────
211
+ async getOAuthClient(platform, platformUid) {
212
+ const db = root.inject('database');
213
+ const model = db?.models?.get('github_oauth_users');
214
+ if (!model)
215
+ return null;
216
+ const [row] = await model.select().where({ platform, platform_uid: platformUid });
217
+ if (!row)
218
+ return null;
219
+ return new GitHubOAuthClient(row.access_token);
220
+ }
221
+ // ── OAuth 路由 (由 useContext('router') 注入) ─────────────────────
222
+ setupOAuth(router) {
223
+ const OAUTH_SCOPES = 'repo,user';
224
+ router.get('/github/oauth', async (ctx) => {
225
+ const state = ctx.query.state;
226
+ if (!state || !oauthStates.has(state)) {
227
+ ctx.status = 400;
228
+ ctx.body = 'Invalid or expired state. Please use /github bind to generate a new link.';
229
+ return;
230
+ }
231
+ const bot = this.bots.values().next().value;
232
+ const clientId = bot?.$config.client_id;
233
+ if (!clientId) {
234
+ ctx.status = 500;
235
+ ctx.body = 'GitHub App OAuth not configured (missing client_id).';
236
+ return;
237
+ }
238
+ this.oauthBaseUrl = ctx.origin;
239
+ const redirectUri = `${ctx.origin}/github/oauth/callback`;
240
+ const url = `https://github.com/login/oauth/authorize?client_id=${clientId}&redirect_uri=${encodeURIComponent(redirectUri)}&scope=${OAUTH_SCOPES}&state=${state}`;
241
+ ctx.redirect(url);
242
+ });
243
+ router.get('/github/oauth/callback', async (ctx) => {
244
+ const { code, state } = ctx.query;
245
+ if (!code || !state) {
246
+ ctx.status = 400;
247
+ ctx.body = 'Missing code or state parameter.';
248
+ return;
249
+ }
250
+ const pending = oauthStates.get(state);
251
+ if (!pending || Date.now() > pending.expires) {
252
+ oauthStates.delete(state);
253
+ ctx.status = 400;
254
+ ctx.body = 'State expired. Please use /github bind to try again.';
255
+ return;
256
+ }
257
+ oauthStates.delete(state);
258
+ const bot = this.bots.values().next().value;
259
+ const clientId = bot?.$config.client_id;
260
+ const clientSecret = bot?.$config.client_secret;
261
+ if (!clientId || !clientSecret) {
262
+ ctx.status = 500;
263
+ ctx.body = 'OAuth not configured.';
264
+ return;
265
+ }
266
+ try {
267
+ const tokenData = await exchangeOAuthCode(clientId, clientSecret, code);
268
+ const oauthClient = new GitHubOAuthClient(tokenData.access_token);
269
+ const userRes = await oauthClient.getUser();
270
+ if (!userRes.ok) {
271
+ ctx.status = 500;
272
+ ctx.body = 'Failed to fetch GitHub user info.';
273
+ return;
274
+ }
275
+ const ghUser = userRes.data;
276
+ const db = root.inject('database');
277
+ const model = db?.models?.get('github_oauth_users');
278
+ if (!model) {
279
+ ctx.status = 500;
280
+ ctx.body = 'Database not ready.';
281
+ return;
282
+ }
283
+ const [existing] = await model.select().where({ platform: pending.platform, platform_uid: pending.platformUid });
284
+ if (existing) {
285
+ await model.update({
286
+ github_login: ghUser.login,
287
+ github_id: ghUser.id,
288
+ access_token: tokenData.access_token,
289
+ scope: tokenData.scope || '',
290
+ updated_at: new Date(),
291
+ }).where({ id: existing.id });
292
+ }
293
+ else {
294
+ await model.insert({
295
+ id: Date.now(),
296
+ platform: pending.platform,
297
+ platform_uid: pending.platformUid,
298
+ github_login: ghUser.login,
299
+ github_id: ghUser.id,
300
+ access_token: tokenData.access_token,
301
+ scope: tokenData.scope || '',
302
+ created_at: new Date(),
303
+ updated_at: new Date(),
304
+ });
305
+ }
306
+ logger.info(`OAuth 绑定成功: ${pending.platform}:${pending.platformUid} → ${ghUser.login}`);
307
+ ctx.type = 'text/html';
308
+ ctx.body = `<!DOCTYPE html><html><head><meta charset="utf-8"><title>绑定成功</title><style>body{font-family:system-ui;display:flex;align-items:center;justify-content:center;min-height:100vh;margin:0;background:#f5f5f5}div{text-align:center;background:#fff;padding:3rem;border-radius:12px;box-shadow:0 2px 12px rgba(0,0,0,.1)}h1{color:#28a745;margin-bottom:.5rem}p{color:#666}</style></head><body><div><h1>GitHub 账号绑定成功</h1><p>已绑定 GitHub 用户: <strong>${ghUser.login}</strong></p><p>你现在可以关闭这个页面,回到聊天中使用 GitHub 功能了。</p></div></body></html>`;
309
+ }
310
+ catch (err) {
311
+ logger.error('OAuth callback 失败:', err);
312
+ ctx.status = 500;
313
+ ctx.body = `OAuth failed: ${err.message}`;
314
+ }
315
+ });
316
+ logger.info('GitHub OAuth: GET /github/oauth, GET /github/oauth/callback');
317
+ }
195
318
  // ── Webhook 路由 (由 useContext('router') 注入) ────────────────────
196
319
  setupWebhook(router) {
197
320
  router.post('/api/github/webhook', async (ctx) => {
198
321
  try {
199
322
  const eventName = ctx.request.headers['x-github-event'];
200
323
  const signature = ctx.request.headers['x-hub-signature-256'];
201
- const payload = ctx.body;
202
- logger.info(`GitHub Webhook: ${eventName} - ${payload?.repository?.full_name}`);
324
+ const payload = ctx.request.body;
325
+ logger.info(`GitHub Webhook: ${eventName} - ${payload?.repository?.full_name || '(no repo)'}`);
326
+ if (eventName === 'ping') {
327
+ logger.info(`GitHub Webhook ping OK — hook_id: ${payload?.hook_id}, zen: ${payload?.zen}`);
328
+ ctx.status = 200;
329
+ ctx.body = { message: 'pong' };
330
+ return;
331
+ }
203
332
  if (signature) {
204
333
  let verified = false;
334
+ const rawBody = JSON.stringify(payload);
205
335
  for (const bot of this.bots.values()) {
206
336
  const secret = bot.$config.webhook_secret;
207
337
  if (!secret)
208
338
  continue;
209
- const expected = `sha256=${crypto.createHmac('sha256', secret).update(JSON.stringify(ctx.body)).digest('hex')}`;
339
+ const expected = `sha256=${crypto.createHmac('sha256', secret).update(rawBody).digest('hex')}`;
210
340
  if (signature === expected) {
211
341
  verified = true;
212
342
  break;
@@ -567,7 +697,126 @@ class GitHubAdapter extends Adapter {
567
697
  return '📭 当前没有订阅';
568
698
  return `📋 订阅 (${subs.length}):\n\n` + subs.map((s, i) => `${i + 1}. ${s.repo}\n 📢 ${(s.events || []).join(', ')}`).join('\n\n');
569
699
  }));
570
- logger.debug('GitHub 工具已注册: pr, issue, repo, subscribe, unsubscribe, subscriptions');
700
+ // --- GitHub OAuth Bind ---
701
+ this.addTool(new ZhinTool('github.bind')
702
+ .desc('绑定 GitHub 账号 — 通过 OAuth 授权,让 bot 以你的身份执行 star/fork 等操作')
703
+ .keyword('github bind', '绑定github', 'github 绑定', 'github 授权')
704
+ .tag('github', 'oauth')
705
+ .execute(async (_args, ctx) => {
706
+ if (!ctx?.message)
707
+ return '❌ 无法获取消息上下文';
708
+ const msg = ctx.message;
709
+ const bot = this.bots.values().next().value;
710
+ if (!bot?.$config.client_id) {
711
+ return '❌ GitHub OAuth 未配置(需要在 bot 配置中添加 client_id 和 client_secret)';
712
+ }
713
+ const nonce = crypto.randomBytes(16).toString('hex');
714
+ const state = `${msg.$adapter}:${msg.$sender.id}:${nonce}`;
715
+ oauthStates.set(state, {
716
+ platform: msg.$adapter,
717
+ platformUid: msg.$sender.id,
718
+ expires: Date.now() + OAUTH_STATE_TTL,
719
+ });
720
+ const baseUrl = this.oauthBaseUrl || 'http://localhost:8086';
721
+ const link = `${baseUrl}/github/oauth?state=${encodeURIComponent(state)}`;
722
+ return `🔗 请点击以下链接授权你的 GitHub 账号:\n\n${link}\n\n⏱️ 链接有效期 5 分钟`;
723
+ }));
724
+ // --- GitHub OAuth Unbind ---
725
+ this.addTool(new ZhinTool('github.unbind')
726
+ .desc('解除 GitHub 账号绑定')
727
+ .keyword('github unbind', '解绑github', 'github 解绑')
728
+ .tag('github', 'oauth')
729
+ .execute(async (_args, ctx) => {
730
+ if (!ctx?.message)
731
+ return '❌ 无法获取消息上下文';
732
+ const msg = ctx.message;
733
+ const db = root.inject('database');
734
+ const model = db?.models?.get('github_oauth_users');
735
+ if (!model)
736
+ return '❌ 数据库未就绪';
737
+ const [existing] = await model.select().where({ platform: msg.$adapter, platform_uid: msg.$sender.id });
738
+ if (!existing)
739
+ return '❌ 你还没有绑定 GitHub 账号';
740
+ await model.delete({ id: existing.id });
741
+ return `✅ 已解除 GitHub 账号绑定(${existing.github_login})`;
742
+ }));
743
+ // --- GitHub OAuth Whoami ---
744
+ this.addTool(new ZhinTool('github.whoami')
745
+ .desc('查看当前绑定的 GitHub 账号信息')
746
+ .keyword('github whoami', 'github 我是谁', 'github 账号')
747
+ .tag('github', 'oauth')
748
+ .execute(async (_args, ctx) => {
749
+ if (!ctx?.message)
750
+ return '❌ 无法获取消息上下文';
751
+ const msg = ctx.message;
752
+ const db = root.inject('database');
753
+ const model = db?.models?.get('github_oauth_users');
754
+ if (!model)
755
+ return '❌ 数据库未就绪';
756
+ const [existing] = await model.select().where({ platform: msg.$adapter, platform_uid: msg.$sender.id });
757
+ if (!existing)
758
+ return '❌ 你还没有绑定 GitHub 账号\n💡 使用 /github bind 进行绑定';
759
+ const oauthClient = new GitHubOAuthClient(existing.access_token);
760
+ const userRes = await oauthClient.getUser();
761
+ if (!userRes.ok) {
762
+ return `⚠️ 已绑定 ${existing.github_login},但 token 可能已失效\n💡 请使用 /github bind 重新授权`;
763
+ }
764
+ const u = userRes.data;
765
+ return [
766
+ `🔗 GitHub 账号已绑定`,
767
+ `👤 ${u.login}${u.name ? ` (${u.name})` : ''}`,
768
+ `🔑 授权范围: ${existing.scope || 'N/A'}`,
769
+ `📅 绑定时间: ${new Date(existing.created_at).toLocaleDateString()}`,
770
+ ].join('\n');
771
+ }));
772
+ // --- GitHub Star (用户级操作) ---
773
+ this.addTool(new ZhinTool('github.star')
774
+ .desc('Star / Unstar 一个仓库(使用你的 GitHub 账号)')
775
+ .keyword('star', 'unstar', '收藏', '取消收藏')
776
+ .tag('github', 'user')
777
+ .param('repo', { type: 'string', description: 'owner/repo (必填)' }, true)
778
+ .param('unstar', { type: 'boolean', description: '设为 true 则取消 star' })
779
+ .execute(async (args, ctx) => {
780
+ if (!ctx?.message)
781
+ return '❌ 无法获取消息上下文';
782
+ const msg = ctx.message;
783
+ const repo = args.repo;
784
+ if (!repo.includes('/'))
785
+ return '❌ 格式应为 owner/repo';
786
+ const oauthClient = await this.getOAuthClient(msg.$adapter, msg.$sender.id);
787
+ if (!oauthClient) {
788
+ return '❌ 你还没有绑定 GitHub 账号,star 需要使用你自己的身份\n💡 使用 /github bind 绑定';
789
+ }
790
+ if (args.unstar) {
791
+ const r = await oauthClient.unstarRepo(repo);
792
+ return r.ok || r.status === 204 ? `✅ 已取消 star: ${repo}` : `❌ 操作失败: ${JSON.stringify(r.data)}`;
793
+ }
794
+ else {
795
+ const r = await oauthClient.starRepo(repo);
796
+ return r.ok || r.status === 204 ? `⭐ 已 star: ${repo}` : `❌ 操作失败: ${JSON.stringify(r.data)}`;
797
+ }
798
+ }));
799
+ // --- GitHub Fork (用户级操作) ---
800
+ this.addTool(new ZhinTool('github.fork')
801
+ .desc('Fork 一个仓库到你的 GitHub 账号')
802
+ .keyword('fork', '复刻')
803
+ .tag('github', 'user')
804
+ .param('repo', { type: 'string', description: 'owner/repo (必填)' }, true)
805
+ .execute(async (args, ctx) => {
806
+ if (!ctx?.message)
807
+ return '❌ 无法获取消息上下文';
808
+ const msg = ctx.message;
809
+ const repo = args.repo;
810
+ if (!repo.includes('/'))
811
+ return '❌ 格式应为 owner/repo';
812
+ const oauthClient = await this.getOAuthClient(msg.$adapter, msg.$sender.id);
813
+ if (!oauthClient) {
814
+ return '❌ 你还没有绑定 GitHub 账号,fork 需要使用你自己的身份\n💡 使用 /github bind 绑定';
815
+ }
816
+ const r = await oauthClient.forkRepo(repo);
817
+ return r.ok ? `🍴 已 fork: ${r.data.full_name}\n🔗 ${r.data.html_url}` : `❌ 操作失败: ${r.data?.message || JSON.stringify(r.data)}`;
818
+ }));
819
+ logger.debug('GitHub 工具已注册: pr, issue, repo, subscribe, unsubscribe, subscriptions, bind, unbind, whoami, star, fork');
571
820
  }
572
821
  // ── 通知推送 ───────────────────────────────────────────────────────
573
822
  async dispatchNotification(eventName, payload) {
@@ -700,6 +949,7 @@ provide({
700
949
  });
701
950
  useContext('router', 'github', (router, adapter) => {
702
951
  adapter.setupWebhook(router);
952
+ adapter.setupOAuth(router);
703
953
  });
704
954
  logger.info('GitHub 适配器已加载 (GitHub App 认证)');
705
955
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/lib/types.d.ts CHANGED
@@ -10,6 +10,27 @@ export interface GitHubBotConfig {
10
10
  installation_id?: number;
11
11
  /** Webhook 签名密钥 */
12
12
  webhook_secret?: string;
13
+ /** GitHub App OAuth: Client ID (在 App 设置页获取) */
14
+ client_id?: string;
15
+ /** GitHub App OAuth: Client Secret */
16
+ client_secret?: string;
17
+ }
18
+ export interface GitHubOAuthUser {
19
+ id: number;
20
+ /** 聊天平台名称 (icqq / kook / discord ...) */
21
+ platform: string;
22
+ /** 聊天平台用户 ID */
23
+ platform_uid: string;
24
+ /** GitHub 用户名 */
25
+ github_login: string;
26
+ /** GitHub 用户 ID */
27
+ github_id: number;
28
+ /** OAuth access_token */
29
+ access_token: string;
30
+ /** 授权范围 */
31
+ scope: string;
32
+ created_at: Date;
33
+ updated_at: Date;
13
34
  }
14
35
  export interface ParsedChannel {
15
36
  repo: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/lib/types.js CHANGED
@@ -1,5 +1,6 @@
1
1
  // ── Bot 配置 ─────────────────────────────────────────────────────────
2
2
  // GitHub App 认证: app_id + private_key → JWT → Installation Token
3
+ // OAuth 用户授权: client_id + client_secret → 用户绑定 GitHub 账号
3
4
  export function parseChannelId(channelId) {
4
5
  const issueMatch = channelId.match(/^(.+?\/.+?)\/issues\/(\d+)$/);
5
6
  if (issueMatch)
package/lib/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,kEAAkE;AAyBlE,MAAM,UAAU,cAAc,CAAC,SAAiB;IAC9C,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;IAClE,IAAI,UAAU;QAAE,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC7D,IAAI,OAAO;QAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnF,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAY,EAAE,IAAoB,EAAE,MAAc;IAC/E,OAAO,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,WAAW,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,SAAS,MAAM,EAAE,CAAC;AAClF,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,kEAAkE;AAClE,0DAA0D;AAiD1D,MAAM,UAAU,cAAc,CAAC,SAAiB;IAC9C,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;IAClE,IAAI,UAAU;QAAE,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC7D,IAAI,OAAO;QAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnF,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAY,EAAE,IAAoB,EAAE,MAAc;IAC/E,OAAO,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,WAAW,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,SAAS,MAAM,EAAE,CAAC;AAClF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zhin.js/adapter-github",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "Zhin.js adapter for GitHub — treat issues/PRs as chat channels, full repo management, webhook notifications",
5
5
  "type": "module",
6
6
  "main": "./lib/index.js",
@@ -34,11 +34,11 @@
34
34
  "license": "MIT",
35
35
  "devDependencies": {
36
36
  "typescript": "^5.3.3",
37
- "zhin.js": "1.0.35"
37
+ "zhin.js": "1.0.36"
38
38
  },
39
39
  "peerDependencies": {
40
- "@zhin.js/http": "1.0.28",
41
- "zhin.js": "1.0.35"
40
+ "zhin.js": "1.0.36",
41
+ "@zhin.js/http": "1.0.29"
42
42
  },
43
43
  "peerDependenciesMeta": {
44
44
  "@zhin.js/http": {