@neomei/opencode-feishu 0.1.1 → 0.2.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.
Files changed (114) hide show
  1. package/CHANGELOG.md +29 -4
  2. package/README.md +88 -8
  3. package/dist/cli.js +141 -4
  4. package/dist/cli.js.map +1 -1
  5. package/dist/core/config.d.ts +4 -0
  6. package/dist/core/config.d.ts.map +1 -1
  7. package/dist/core/config.js +21 -1
  8. package/dist/core/config.js.map +1 -1
  9. package/dist/core/daemon.d.ts.map +1 -1
  10. package/dist/core/daemon.js +2 -1
  11. package/dist/core/daemon.js.map +1 -1
  12. package/dist/core/dedup.d.ts +29 -0
  13. package/dist/core/dedup.d.ts.map +1 -0
  14. package/dist/core/dedup.js +69 -0
  15. package/dist/core/dedup.js.map +1 -0
  16. package/dist/core/file-downloader.d.ts +24 -0
  17. package/dist/core/file-downloader.d.ts.map +1 -0
  18. package/dist/core/file-downloader.js +79 -0
  19. package/dist/core/file-downloader.js.map +1 -0
  20. package/dist/core/message-handler.d.ts +6 -0
  21. package/dist/core/message-handler.d.ts.map +1 -1
  22. package/dist/core/message-handler.js +74 -9
  23. package/dist/core/message-handler.js.map +1 -1
  24. package/dist/core/profile-manager.d.ts +27 -0
  25. package/dist/core/profile-manager.d.ts.map +1 -0
  26. package/dist/core/profile-manager.js +149 -0
  27. package/dist/core/profile-manager.js.map +1 -0
  28. package/dist/core/session-manager.d.ts +1 -0
  29. package/dist/core/session-manager.d.ts.map +1 -1
  30. package/dist/core/session-manager.js +25 -11
  31. package/dist/core/session-manager.js.map +1 -1
  32. package/dist/core/types.d.ts +2 -0
  33. package/dist/core/types.d.ts.map +1 -1
  34. package/dist/feishu/api.d.ts +12 -0
  35. package/dist/feishu/api.d.ts.map +1 -1
  36. package/dist/feishu/api.js +89 -0
  37. package/dist/feishu/api.js.map +1 -1
  38. package/dist/feishu/card.d.ts +1 -1
  39. package/dist/feishu/card.d.ts.map +1 -1
  40. package/dist/feishu/card.js +13 -1
  41. package/dist/feishu/card.js.map +1 -1
  42. package/dist/feishu/event-source.d.ts.map +1 -1
  43. package/dist/feishu/event-source.js +13 -3
  44. package/dist/feishu/event-source.js.map +1 -1
  45. package/dist/index.d.ts +3 -0
  46. package/dist/index.d.ts.map +1 -1
  47. package/dist/index.js +3 -0
  48. package/dist/index.js.map +1 -1
  49. package/dist/opencode/client.d.ts +5 -1
  50. package/dist/opencode/client.d.ts.map +1 -1
  51. package/dist/opencode/client.js +16 -3
  52. package/dist/opencode/client.js.map +1 -1
  53. package/dist/opencode/event-handler.d.ts.map +1 -1
  54. package/dist/opencode/event-handler.js +5 -2
  55. package/dist/opencode/event-handler.js.map +1 -1
  56. package/dist/plugin.d.ts.map +1 -1
  57. package/dist/plugin.js +6 -1
  58. package/dist/plugin.js.map +1 -1
  59. package/dist/services/approval-service.d.ts +20 -0
  60. package/dist/services/approval-service.d.ts.map +1 -0
  61. package/dist/services/approval-service.js +123 -0
  62. package/dist/services/approval-service.js.map +1 -0
  63. package/dist/services/base-service.d.ts +22 -0
  64. package/dist/services/base-service.d.ts.map +1 -0
  65. package/dist/services/base-service.js +47 -0
  66. package/dist/services/base-service.js.map +1 -0
  67. package/dist/services/calendar-service.d.ts +25 -0
  68. package/dist/services/calendar-service.d.ts.map +1 -0
  69. package/dist/services/calendar-service.js +220 -0
  70. package/dist/services/calendar-service.js.map +1 -0
  71. package/dist/services/chat-service.d.ts +52 -0
  72. package/dist/services/chat-service.d.ts.map +1 -0
  73. package/dist/services/chat-service.js +170 -0
  74. package/dist/services/chat-service.js.map +1 -0
  75. package/dist/services/contact-service.d.ts +40 -0
  76. package/dist/services/contact-service.d.ts.map +1 -0
  77. package/dist/services/contact-service.js +137 -0
  78. package/dist/services/contact-service.js.map +1 -0
  79. package/dist/services/doc-service.d.ts +135 -0
  80. package/dist/services/doc-service.d.ts.map +1 -0
  81. package/dist/services/doc-service.js +509 -0
  82. package/dist/services/doc-service.js.map +1 -0
  83. package/dist/services/im-service.d.ts +64 -0
  84. package/dist/services/im-service.d.ts.map +1 -0
  85. package/dist/services/im-service.js +215 -0
  86. package/dist/services/im-service.js.map +1 -0
  87. package/dist/services/index.d.ts +9 -0
  88. package/dist/services/index.d.ts.map +1 -0
  89. package/dist/services/index.js +10 -0
  90. package/dist/services/index.js.map +1 -0
  91. package/dist/services/task-service.d.ts +19 -0
  92. package/dist/services/task-service.d.ts.map +1 -0
  93. package/dist/services/task-service.js +126 -0
  94. package/dist/services/task-service.js.map +1 -0
  95. package/dist/setup/device-flow.d.ts +31 -0
  96. package/dist/setup/device-flow.d.ts.map +1 -0
  97. package/dist/setup/device-flow.js +133 -0
  98. package/dist/setup/device-flow.js.map +1 -0
  99. package/dist/setup/preflight.d.ts +2 -0
  100. package/dist/setup/preflight.d.ts.map +1 -1
  101. package/dist/setup/preflight.js +217 -13
  102. package/dist/setup/preflight.js.map +1 -1
  103. package/dist/setup/wizard.d.ts +1 -1
  104. package/dist/setup/wizard.d.ts.map +1 -1
  105. package/dist/setup/wizard.js +96 -124
  106. package/dist/setup/wizard.js.map +1 -1
  107. package/dist/standalone.d.ts.map +1 -1
  108. package/dist/standalone.js +17 -2
  109. package/dist/standalone.js.map +1 -1
  110. package/dist/types/extended.d.ts +196 -0
  111. package/dist/types/extended.d.ts.map +1 -0
  112. package/dist/types/extended.js +6 -0
  113. package/dist/types/extended.js.map +1 -0
  114. package/package.json +4 -2
@@ -10,6 +10,16 @@ import { startStatusWriter } from './core/daemon.js';
10
10
  const log = createLogger('standalone');
11
11
  export async function startStandalone(configPath) {
12
12
  console.log('🚀 Starting OpenCode Feishu Plugin (Standalone Mode)\n');
13
+ console.log('💡 功能特性:');
14
+ console.log(' • 支持私聊和群聊(需@机器人)');
15
+ console.log(' • 支持文本、图片、文件、语音、视频消息');
16
+ console.log(' • AI 回复实时流式显示');
17
+ console.log(' • 消息去重和用户名显示');
18
+ console.log(' • 飞书文档:创建、读取、编辑、搜索、分享');
19
+ console.log(' • 日历日程:查看、创建、管理日程');
20
+ console.log(' • 任务管理:创建、分配、跟踪任务');
21
+ console.log(' • 审批流程:查询、批准、拒绝审批');
22
+ console.log(' • 多配置管理:支持多个飞书应用配置\n');
13
23
  // 1. Load configuration
14
24
  const configManager = new ConfigManager(configPath);
15
25
  const config = configManager.load();
@@ -34,8 +44,13 @@ export async function startStandalone(configPath) {
34
44
  }
35
45
  catch (err) {
36
46
  log.error({ err, opencodeUrl: config.opencodeUrl }, 'Failed to connect to OpenCode');
37
- console.error('\nPlease make sure OpenCode is running:');
38
- console.error(` ${config.opencodeUrl}`);
47
+ const port = new URL(config.opencodeUrl).port || '19876';
48
+ console.error('\n❌ Failed to connect to OpenCode server');
49
+ console.error(` URL: ${config.opencodeUrl}`);
50
+ console.error('\n💡 Please start OpenCode server first:');
51
+ console.error(` opencode serve --port ${port}`);
52
+ console.error('\nOr if you are using a different port, update the config:');
53
+ console.error(` opencode-feishu setup\n`);
39
54
  process.exit(1);
40
55
  }
41
56
  // 3. Initialize Feishu API
@@ -1 +1 @@
1
- {"version":3,"file":"standalone.js","sourceRoot":"","sources":["../src/standalone.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"standalone.js","sourceRoot":"","sources":["../src/standalone.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,196 @@
1
+ /**
2
+ * Extended types for Feishu services
3
+ * Based on lark-cli shortcuts analysis
4
+ */
5
+ export interface DocumentInfo {
6
+ documentId: string;
7
+ title: string;
8
+ url?: string;
9
+ type: 'doc' | 'docx' | 'wiki' | 'sheet';
10
+ createTime?: string;
11
+ updateTime?: string;
12
+ ownerId?: string;
13
+ }
14
+ export interface DocumentBlock {
15
+ blockId: string;
16
+ blockType: string;
17
+ content?: string;
18
+ children?: DocumentBlock[];
19
+ [key: string]: any;
20
+ }
21
+ export interface DocumentContent {
22
+ documentId: string;
23
+ title: string;
24
+ content?: string;
25
+ revisionId?: number;
26
+ blocks?: DocumentBlock[];
27
+ markdown?: string;
28
+ }
29
+ export interface DocumentSearchResult {
30
+ documents: DocumentInfo[];
31
+ hasMore: boolean;
32
+ pageToken?: string;
33
+ }
34
+ export interface ChatInfo {
35
+ chatId: string;
36
+ name: string;
37
+ description?: string;
38
+ ownerId?: string;
39
+ memberCount?: number;
40
+ chatType?: 'p2p' | 'group';
41
+ createTime?: string;
42
+ }
43
+ export interface ChatSearchResult {
44
+ chats: ChatInfo[];
45
+ hasMore: boolean;
46
+ pageToken?: string;
47
+ }
48
+ export interface ChatMember {
49
+ openId: string;
50
+ userId?: string;
51
+ name?: string;
52
+ role?: 'owner' | 'admin' | 'member';
53
+ }
54
+ export interface UserInfo {
55
+ openId: string;
56
+ unionId?: string;
57
+ userId?: string;
58
+ name: string;
59
+ enName?: string;
60
+ email?: string;
61
+ mobile?: string;
62
+ avatar?: string;
63
+ department?: string;
64
+ tenantKey?: string;
65
+ }
66
+ export interface UserSearchResult {
67
+ users: UserInfo[];
68
+ hasMore: boolean;
69
+ pageToken?: string;
70
+ }
71
+ export interface MessageSearchResult {
72
+ messages: FeishuMessage[];
73
+ hasMore: boolean;
74
+ pageToken?: string;
75
+ }
76
+ export interface MessageReplyOptions {
77
+ messageId: string;
78
+ content: string;
79
+ msgType?: string;
80
+ replyInThread?: boolean;
81
+ }
82
+ export interface ResourceDownloadResult {
83
+ filePath: string;
84
+ fileName: string;
85
+ mimeType: string;
86
+ size: number;
87
+ }
88
+ export interface ResourceUploadResult {
89
+ fileKey: string;
90
+ fileName: string;
91
+ mimeType: string;
92
+ }
93
+ export interface AppPermission {
94
+ scope: string;
95
+ name: string;
96
+ description: string;
97
+ granted: boolean;
98
+ }
99
+ export interface AppStatus {
100
+ appId: string;
101
+ botEnabled: boolean;
102
+ published: boolean;
103
+ permissions: AppPermission[];
104
+ }
105
+ export interface CalendarInfo {
106
+ calendarId: string;
107
+ name: string;
108
+ description?: string;
109
+ isPrimary?: boolean;
110
+ isPublic?: boolean;
111
+ }
112
+ export interface CalendarEvent {
113
+ eventId: string;
114
+ summary: string;
115
+ description?: string;
116
+ startTime: string;
117
+ endTime: string;
118
+ location?: string;
119
+ attendees?: CalendarAttendee[];
120
+ recurrence?: string;
121
+ status?: string;
122
+ }
123
+ export interface CalendarAttendee {
124
+ openId?: string;
125
+ userId?: string;
126
+ email?: string;
127
+ displayName?: string;
128
+ responseStatus?: 'needs_action' | 'accept' | 'decline' | 'tentative';
129
+ isOptional?: boolean;
130
+ isResource?: boolean;
131
+ }
132
+ export interface CalendarSearchResult {
133
+ calendars: CalendarInfo[];
134
+ hasMore: boolean;
135
+ pageToken?: string;
136
+ }
137
+ export interface EventSearchResult {
138
+ events: CalendarEvent[];
139
+ hasMore: boolean;
140
+ pageToken?: string;
141
+ }
142
+ export interface FreeBusyResult {
143
+ openId: string;
144
+ busyTimes: {
145
+ start: string;
146
+ end: string;
147
+ }[];
148
+ }
149
+ export interface TaskInfo {
150
+ taskId: string;
151
+ summary: string;
152
+ description?: string;
153
+ dueTime?: string;
154
+ completedTime?: string;
155
+ status: 'needs_action' | 'completed';
156
+ creator?: string;
157
+ assignees?: string[];
158
+ followers?: string[];
159
+ }
160
+ export interface TaskSearchResult {
161
+ tasks: TaskInfo[];
162
+ hasMore: boolean;
163
+ pageToken?: string;
164
+ }
165
+ export interface ApprovalInstance {
166
+ instanceId: string;
167
+ approvalCode: string;
168
+ status: 'pending' | 'approved' | 'rejected' | 'transferred' | 'canceled';
169
+ createTime: string;
170
+ updateTime?: string;
171
+ requester?: string;
172
+ approvers?: ApprovalNode[];
173
+ formData?: Record<string, any>;
174
+ }
175
+ export interface ApprovalNode {
176
+ nodeId: string;
177
+ nodeName?: string;
178
+ status: 'pending' | 'approved' | 'rejected' | 'transferred';
179
+ approvers?: ApprovalApprover[];
180
+ }
181
+ export interface ApprovalApprover {
182
+ openId?: string;
183
+ userId?: string;
184
+ name?: string;
185
+ status: 'pending' | 'approved' | 'rejected' | 'transferred';
186
+ comment?: string;
187
+ operateTime?: string;
188
+ }
189
+ export interface ApprovalSearchResult {
190
+ instances: ApprovalInstance[];
191
+ hasMore: boolean;
192
+ pageToken?: string;
193
+ }
194
+ import type { FeishuConfig, FeishuMessage, CardContent } from '../core/types.js';
195
+ export type { FeishuConfig, FeishuMessage, CardContent };
196
+ //# sourceMappingURL=extended.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extended.d.ts","sourceRoot":"","sources":["../../src/types/extended.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Extended types for Feishu services
3
+ * Based on lark-cli shortcuts analysis
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=extended.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extended.js","sourceRoot":"","sources":["../../src/types/extended.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@neomei/opencode-feishu",
3
- "version": "0.1.1",
3
+ "version": "0.2.0",
4
4
  "description": "Node.js-native Feishu/Lark bridge for OpenCode — production-grade daemon, persistence, preflight, structured logs.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -15,7 +15,7 @@
15
15
  "test:watch": "jest --watch",
16
16
  "lint": "eslint src/**/*.ts",
17
17
  "typecheck": "tsc --noEmit",
18
- "clean": "rm -rf dist",
18
+ "clean": "node -e \"require('fs').rmSync('dist', {recursive:true, force:true})\"",
19
19
  "prepublishOnly": "npm run clean && npm run build && npm test"
20
20
  },
21
21
  "keywords": [
@@ -48,10 +48,12 @@
48
48
  "dependencies": {
49
49
  "@larksuiteoapi/node-sdk": "^1.61.1",
50
50
  "@opencode-ai/sdk": "^1.0.0",
51
+ "@types/qrcode": "^1.5.6",
51
52
  "commander": "^11.0.0",
52
53
  "inquirer": "^9.2.0",
53
54
  "pino": "^10.3.1",
54
55
  "pino-pretty": "^13.1.3",
56
+ "qrcode": "^1.5.4",
55
57
  "zod": "^3.22.0"
56
58
  },
57
59
  "devDependencies": {