@lobehub/lobehub 2.0.0-next.310 → 2.0.0-next.311

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 (42) hide show
  1. package/.github/PULL_REQUEST_TEMPLATE.md +1 -1
  2. package/CHANGELOG.md +25 -0
  3. package/changelog/v1.json +9 -0
  4. package/docs/development/basic/chat-api.mdx +0 -1
  5. package/docs/development/basic/chat-api.zh-CN.mdx +0 -1
  6. package/package.json +1 -1
  7. package/packages/model-runtime/src/core/BaseAI.ts +0 -2
  8. package/packages/model-runtime/src/core/ModelRuntime.test.ts +0 -37
  9. package/packages/model-runtime/src/core/ModelRuntime.ts +0 -5
  10. package/packages/model-runtime/src/core/RouterRuntime/baseRuntimeMap.ts +4 -0
  11. package/packages/model-runtime/src/core/RouterRuntime/createRuntime.test.ts +325 -200
  12. package/packages/model-runtime/src/core/RouterRuntime/createRuntime.ts +205 -64
  13. package/packages/model-runtime/src/core/openaiCompatibleFactory/index.ts +0 -14
  14. package/packages/model-runtime/src/providers/aihubmix/index.test.ts +14 -20
  15. package/packages/model-runtime/src/types/index.ts +0 -1
  16. package/packages/model-runtime/src/utils/createError.test.ts +0 -20
  17. package/packages/model-runtime/src/utils/createError.ts +0 -1
  18. package/src/app/(backend)/market/agent/[[...segments]]/route.ts +3 -33
  19. package/src/app/(backend)/market/oidc/[[...segments]]/route.ts +5 -6
  20. package/src/app/(backend)/market/social/[[...segments]]/route.ts +5 -52
  21. package/src/app/(backend)/market/user/[username]/route.ts +3 -9
  22. package/src/app/(backend)/market/user/me/route.ts +3 -34
  23. package/src/features/ChatMiniMap/useMinimapData.ts +1 -1
  24. package/src/features/Conversation/ChatList/components/VirtualizedList.tsx +20 -2
  25. package/src/features/Conversation/store/slices/virtuaList/action.ts +9 -0
  26. package/src/libs/trpc/lambda/middleware/marketSDK.ts +14 -23
  27. package/src/libs/trusted-client/index.ts +1 -1
  28. package/src/server/routers/lambda/market/index.ts +5 -0
  29. package/src/server/routers/lambda/market/oidc.ts +41 -61
  30. package/src/server/routers/tools/market.ts +12 -44
  31. package/src/server/services/agentRuntime/AgentRuntimeService.test.ts +7 -0
  32. package/src/server/services/agentRuntime/AgentRuntimeService.ts +1 -1
  33. package/src/server/services/aiAgent/__tests__/execAgent.threadId.test.ts +7 -0
  34. package/src/server/services/aiAgent/__tests__/execGroupSubAgentTask.test.ts +7 -0
  35. package/src/server/services/aiAgent/index.ts +9 -96
  36. package/src/server/services/discover/index.ts +11 -16
  37. package/src/server/services/market/index.ts +485 -0
  38. package/src/server/services/toolExecution/builtin.ts +11 -17
  39. package/src/server/services/toolExecution/index.ts +6 -2
  40. package/src/services/codeInterpreter.ts +0 -13
  41. package/packages/model-runtime/src/types/textToImage.ts +0 -36
  42. package/src/server/services/lobehubSkill/index.ts +0 -109
@@ -1,109 +0,0 @@
1
- import { type LobeChatDatabase } from '@lobechat/database';
2
- import { MarketSDK } from '@lobehub/market-sdk';
3
- import debug from 'debug';
4
-
5
- import { UserModel } from '@/database/models/user';
6
- import { generateTrustedClientToken } from '@/libs/trusted-client';
7
-
8
- const log = debug('lobe-server:lobehub-skill-service');
9
-
10
- export interface LobehubSkillExecuteParams {
11
- args: Record<string, any>;
12
- provider: string;
13
- toolName: string;
14
- }
15
-
16
- export interface LobehubSkillExecuteResult {
17
- content: string;
18
- error?: { code: string; message?: string };
19
- success: boolean;
20
- }
21
-
22
- export class LobehubSkillService {
23
- private db: LobeChatDatabase;
24
- private userId: string;
25
- private marketSDK?: MarketSDK;
26
-
27
- constructor(db: LobeChatDatabase, userId: string) {
28
- this.db = db;
29
- this.userId = userId;
30
- }
31
-
32
- /**
33
- * Initialize MarketSDK with trusted client token
34
- */
35
- private async getMarketSDK(): Promise<MarketSDK | null> {
36
- if (this.marketSDK) return this.marketSDK;
37
-
38
- try {
39
- const user = await UserModel.findById(this.db, this.userId);
40
- if (!user?.email) {
41
- log('getMarketSDK: user email not found');
42
- return null;
43
- }
44
-
45
- const trustedClientToken = generateTrustedClientToken({
46
- email: user.email,
47
- name: user.fullName || user.firstName || undefined,
48
- userId: this.userId,
49
- });
50
-
51
- if (!trustedClientToken) {
52
- log('getMarketSDK: trusted client not configured');
53
- return null;
54
- }
55
-
56
- this.marketSDK = new MarketSDK({
57
- baseURL: process.env.NEXT_PUBLIC_MARKET_BASE_URL,
58
- trustedClientToken,
59
- });
60
-
61
- return this.marketSDK;
62
- } catch (error) {
63
- log('getMarketSDK: error creating SDK: %O', error);
64
- return null;
65
- }
66
- }
67
-
68
- /**
69
- * Execute a LobeHub Skill tool
70
- */
71
- async execute(params: LobehubSkillExecuteParams): Promise<LobehubSkillExecuteResult> {
72
- const { provider, toolName, args } = params;
73
-
74
- log('execute: %s/%s with args: %O', provider, toolName, args);
75
-
76
- const sdk = await this.getMarketSDK();
77
- if (!sdk) {
78
- return {
79
- content:
80
- 'MarketSDK not available. Please ensure you are authenticated with LobeHub Market.',
81
- error: { code: 'MARKET_SDK_NOT_AVAILABLE' },
82
- success: false,
83
- };
84
- }
85
-
86
- try {
87
- const response = await sdk.skills.callTool(provider, {
88
- args,
89
- tool: toolName,
90
- });
91
-
92
- log('execute: response: %O', response);
93
-
94
- return {
95
- content: typeof response.data === 'string' ? response.data : JSON.stringify(response.data),
96
- success: response.success,
97
- };
98
- } catch (error) {
99
- const err = error as Error;
100
- console.error('LobehubSkillService.execute error %s/%s: %O', provider, toolName, err);
101
-
102
- return {
103
- content: err.message,
104
- error: { code: 'LOBEHUB_SKILL_ERROR', message: err.message },
105
- success: false,
106
- };
107
- }
108
- }
109
- }