@smilique/said 1.0.1 → 1.0.3
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/dist/agent.d.ts +7 -0
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +6 -0
- package/dist/agent.js.map +1 -1
- package/dist/config.d.ts +4 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +53 -10
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts +7 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/main.js +10 -25
- package/dist/main.js.map +1 -1
- package/dist/minimax-provider.d.ts +7 -0
- package/dist/minimax-provider.d.ts.map +1 -1
- package/dist/minimax-provider.js +12 -0
- package/dist/minimax-provider.js.map +1 -1
- package/dist/opencode-provider.d.ts +7 -0
- package/dist/opencode-provider.d.ts.map +1 -1
- package/dist/opencode-provider.js +13 -0
- package/dist/opencode-provider.js.map +1 -1
- package/dist/provider.d.ts +67 -0
- package/dist/provider.d.ts.map +1 -0
- package/dist/provider.js +271 -0
- package/dist/provider.js.map +1 -0
- package/dist/providers/index.d.ts +9 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +172 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/types.d.ts +17 -0
- package/dist/providers/types.d.ts.map +1 -0
- package/dist/providers/types.js +2 -0
- package/dist/providers/types.js.map +1 -0
- package/dist/setup.js +58 -55
- package/dist/setup.js.map +1 -1
- package/dist/telegram-adapter.d.ts +5 -1
- package/dist/telegram-adapter.d.ts.map +1 -1
- package/dist/telegram-adapter.js +9 -1
- package/dist/telegram-adapter.js.map +1 -1
- package/package.json +1 -1
- package/README.md +0 -132
package/dist/agent.d.ts
CHANGED
|
@@ -2,6 +2,11 @@ import { Service, type ServiceConfig } from './service.js';
|
|
|
2
2
|
import { EventEmitter } from 'eventemitter3';
|
|
3
3
|
import type { Skill } from './skills/skill.js';
|
|
4
4
|
import { SkillRegistry } from './skills/registry.js';
|
|
5
|
+
export interface TokenUsage {
|
|
6
|
+
promptTokens: number;
|
|
7
|
+
completionTokens: number;
|
|
8
|
+
totalTokens: number;
|
|
9
|
+
}
|
|
5
10
|
export interface ConversationContext {
|
|
6
11
|
messages: Array<{
|
|
7
12
|
role: 'system' | 'user' | 'assistant';
|
|
@@ -27,6 +32,7 @@ export interface ChatCompletionOptions {
|
|
|
27
32
|
export interface LLMProvider {
|
|
28
33
|
chatCompletion(options: ChatCompletionOptions): Promise<string>;
|
|
29
34
|
chatCompletionStream(options: ChatCompletionOptions): AsyncIterable<string>;
|
|
35
|
+
getLastTokenUsage?(): TokenUsage;
|
|
30
36
|
}
|
|
31
37
|
export declare class Agent extends Service {
|
|
32
38
|
private provider;
|
|
@@ -43,6 +49,7 @@ export declare class Agent extends Service {
|
|
|
43
49
|
initialize(): Promise<void>;
|
|
44
50
|
start(): Promise<void>;
|
|
45
51
|
stop(): Promise<void>;
|
|
52
|
+
getLastTokenUsage(): TokenUsage;
|
|
46
53
|
processMessage(chatId: number, userMessage: string): Promise<string>;
|
|
47
54
|
processMessageStream(chatId: number, userMessage: string): Promise<AsyncIterable<string>>;
|
|
48
55
|
clearContext(chatId: number): void;
|
package/dist/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,EAAE,KAAK,EAA6B,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAuB,MAAM,sBAAsB,CAAC;AAE1E,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,KAAK,CAAC;QACd,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;QACtC,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAY,SAAQ,aAAa;IAChD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChE,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,EAAE,KAAK,EAA6B,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAuB,MAAM,sBAAsB,CAAC;AAE1E,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,KAAK,CAAC;QACd,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;QACtC,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAY,SAAQ,aAAa;IAChD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChE,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5E,iBAAiB,CAAC,IAAI,UAAU,CAAC;CAClC;AAED,qBAAa,KAAM,SAAQ,OAAO;IAChC,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,YAAY,CAA+E;IACnG,OAAO,CAAC,QAAQ,CAA+C;IAC/D,OAAO,CAAC,gBAAgB,CAAc;IACtC,OAAO,CAAC,aAAa,CAAgB;gBAEzB,MAAM,EAAE,WAAW,EAAE,YAAY,CAAC,EAAE,YAAY;IAW5D,WAAW,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI,GAAG,IAAI;IAI/C,gBAAgB,IAAI,aAAa;IAIjC,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAIjC,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAItC,UAAU,IAAI,KAAK,EAAE;IAIf,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,iBAAiB,IAAI,UAAU;IAOzB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAqEpE,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAgC/F,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIlC,gBAAgB,IAAI,IAAI;CAGzB"}
|
package/dist/agent.js
CHANGED
|
@@ -43,6 +43,12 @@ export class Agent extends Service {
|
|
|
43
43
|
this.contexts.clear();
|
|
44
44
|
console.log('Agent stopped');
|
|
45
45
|
}
|
|
46
|
+
getLastTokenUsage() {
|
|
47
|
+
if (this.provider?.getLastTokenUsage) {
|
|
48
|
+
return this.provider.getLastTokenUsage();
|
|
49
|
+
}
|
|
50
|
+
return { promptTokens: 0, completionTokens: 0, totalTokens: 0 };
|
|
51
|
+
}
|
|
46
52
|
async processMessage(chatId, userMessage) {
|
|
47
53
|
if (!this.provider) {
|
|
48
54
|
throw new Error('LLM provider not set');
|
package/dist/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAsB,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAAiB,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAsB,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAAiB,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAwC1E,MAAM,OAAO,KAAM,SAAQ,OAAO;IACxB,QAAQ,GAAuB,IAAI,CAAC;IACpC,YAAY,GAAW,mEAAmE,CAAC;IAC3F,QAAQ,GAAqC,IAAI,GAAG,EAAE,CAAC;IACvD,gBAAgB,GAAW,EAAE,CAAC;IAC9B,aAAa,CAAgB;IAErC,YAAY,MAAmB,EAAE,YAA2B;QAC1D,KAAK,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC5B,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACxB,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QAC1C,CAAC;QACD,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;YAC5B,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAClD,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,mBAAmB,CAAC;IAC3C,CAAC;IAED,WAAW,CAAC,QAA4B;QACtC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,aAAa,CAAC,KAAY;QACxB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,eAAe,CAAC,IAAY;QAC1B,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,KAAK;QACT,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC/B,CAAC;IAED,iBAAiB;QACf,IAAI,IAAI,CAAC,QAAQ,EAAE,iBAAiB,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC;QAC3C,CAAC;QACD,OAAO,EAAE,YAAY,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAc,EAAE,WAAmB;QACtD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,+CAA+C;QAC/C,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACzE,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAChC,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;YAC1C,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAEhC,IAAI,MAAM,GAAwB,EAAE,CAAC;YACrC,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,CAAC;oBACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACjC,CAAC;gBAAC,MAAM,CAAC;oBACP,yCAAyC;oBACzC,MAAM,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;gBAChC,CAAC;YACH,CAAC;YAED,MAAM,YAAY,GAAiB;gBACjC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC;aAC1B,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;YAEjF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,OAAO,mBAAmB,SAAS,aAAa,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;YACzF,CAAC;iBAAM,CAAC;gBACN,OAAO,gBAAgB,MAAM,CAAC,KAAK,EAAE,CAAC;YACxC,CAAC;QACH,CAAC;QAED,qCAAqC;QACrC,IAAI,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG;gBACR,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC1D,MAAM;aACP,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACrC,CAAC;QAED,mBAAmB;QACnB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;QAE9D,2BAA2B;QAC3B,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,gBAAgB,GAAG,CAAC,EAAE,CAAC;YACxD,yDAAyD;YACzD,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC1C,OAAO,CAAC,QAAQ,GAAG;gBACjB,aAAa;gBACb,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;aAClD,CAAC;QACJ,CAAC;QAED,6BAA6B;QAC7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;YAClD,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B,CAAC,CAAC;QAEH,oCAAoC;QACpC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;QAEhE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,MAAc,EAAE,WAAmB;QAC5D,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,qCAAqC;QACrC,IAAI,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG;gBACR,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC1D,MAAM;aACP,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACrC,CAAC;QAED,mBAAmB;QACnB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;QAE9D,2BAA2B;QAC3B,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,gBAAgB,GAAG,CAAC,EAAE,CAAC;YACxD,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC1C,OAAO,CAAC,QAAQ,GAAG;gBACjB,aAAa;gBACb,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;aAClD,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC;YACxC,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B,CAAC,CAAC;IACL,CAAC;IAED,YAAY,CAAC,MAAc;QACzB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;CACF"}
|
package/dist/config.d.ts
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
|
+
export type ProviderType = 'openai' | 'anthropic' | 'ollama' | 'opencode' | 'minimax' | 'kimi' | 'zai' | 'openrouter' | 'google';
|
|
1
2
|
export interface AppConfig {
|
|
2
3
|
telegram?: {
|
|
3
4
|
botToken: string;
|
|
4
5
|
};
|
|
5
|
-
provider:
|
|
6
|
+
provider: ProviderType;
|
|
7
|
+
apiKey: string;
|
|
8
|
+
model: string;
|
|
6
9
|
opencode?: {
|
|
7
10
|
baseUrl: string;
|
|
8
11
|
apiKey: string;
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,EAAE;QACT,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,YAAY,GACpB,QAAQ,GACR,WAAW,GACX,QAAQ,GACR,UAAU,GACV,SAAS,GACT,MAAM,GACN,KAAK,GACL,YAAY,GACZ,QAAQ,CAAC;AAEb,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,EAAE;QACT,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IAEF,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IAEd,QAAQ,CAAC,EAAE;QACT,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,OAAO,CAAC,EAAE;QACR,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF;;;;;;OAMG;IACH,UAAU,CAAC,EAAE;QACX,OAAO,EAAE,OAAO,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,OAAO,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AAID,wBAAgB,UAAU,IAAI,SAAS,CA4FtC;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA6ClD;AAED,wBAAgB,gBAAgB,IAAI,IAAI,CAEvC"}
|
package/dist/config.js
CHANGED
|
@@ -16,26 +16,65 @@ export function loadConfig() {
|
|
|
16
16
|
if (existsSync(envPath)) {
|
|
17
17
|
loadEnv({ path: envPath });
|
|
18
18
|
}
|
|
19
|
-
|
|
19
|
+
// Migration: Check for old config format and convert if needed
|
|
20
|
+
let provider = process.env.SAID_PROVIDER || 'opencode';
|
|
21
|
+
let apiKey = process.env.SAID_API_KEY || '';
|
|
22
|
+
let model = process.env.SAID_MODEL || '';
|
|
23
|
+
// Check for old config format (provider: 'opencode'|'minimax' with separate configs)
|
|
24
|
+
const hasOldOpencodeConfig = process.env.OPENCODE_API_KEY;
|
|
25
|
+
const hasOldMinimaxConfig = process.env.MINIMAX_API_KEY;
|
|
26
|
+
const hasNewConfig = process.env.SAID_API_KEY;
|
|
27
|
+
// If old config exists and no new config, migrate to new format
|
|
28
|
+
if (!hasNewConfig) {
|
|
29
|
+
if (hasOldOpencodeConfig && !hasOldMinimaxConfig) {
|
|
30
|
+
// Migrate from opencode to new format
|
|
31
|
+
provider = 'opencode';
|
|
32
|
+
apiKey = process.env.OPENCODE_API_KEY || '';
|
|
33
|
+
model = process.env.OPENCODE_MODEL || 'minimax-m2.5-free';
|
|
34
|
+
}
|
|
35
|
+
else if (hasOldMinimaxConfig && !hasOldOpencodeConfig) {
|
|
36
|
+
// Migrate from minimax to new format
|
|
37
|
+
provider = 'minimax';
|
|
38
|
+
apiKey = process.env.MINIMAX_API_KEY || '';
|
|
39
|
+
model = process.env.MINIMAX_MODEL || 'MiniMax-Text-01';
|
|
40
|
+
}
|
|
41
|
+
else if (hasOldOpencodeConfig && hasOldMinimaxConfig) {
|
|
42
|
+
// Both exist - prefer the provider that was explicitly set
|
|
43
|
+
const explicitProvider = process.env.SAID_PROVIDER;
|
|
44
|
+
if (explicitProvider === 'minimax') {
|
|
45
|
+
provider = 'minimax';
|
|
46
|
+
apiKey = process.env.MINIMAX_API_KEY || '';
|
|
47
|
+
model = process.env.MINIMAX_MODEL || 'MiniMax-Text-01';
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
provider = 'opencode';
|
|
51
|
+
apiKey = process.env.OPENCODE_API_KEY || '';
|
|
52
|
+
model = process.env.OPENCODE_MODEL || 'minimax-m2.5-free';
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
20
56
|
const config = {
|
|
21
57
|
provider,
|
|
58
|
+
apiKey,
|
|
59
|
+
model,
|
|
22
60
|
};
|
|
23
|
-
|
|
24
|
-
config.telegram = {
|
|
25
|
-
botToken: process.env.TELEGRAM_BOT_TOKEN,
|
|
26
|
-
};
|
|
27
|
-
}
|
|
61
|
+
// Also populate legacy configs for backward compatibility
|
|
28
62
|
if (provider === 'opencode') {
|
|
29
63
|
config.opencode = {
|
|
30
64
|
baseUrl: process.env.OPENCODE_BASE_URL || 'https://opencode.ai/zen/v1',
|
|
31
|
-
apiKey:
|
|
32
|
-
model:
|
|
65
|
+
apiKey: apiKey,
|
|
66
|
+
model: model,
|
|
33
67
|
};
|
|
34
68
|
}
|
|
35
69
|
else if (provider === 'minimax') {
|
|
36
70
|
config.minimax = {
|
|
37
|
-
apiKey:
|
|
38
|
-
model:
|
|
71
|
+
apiKey: apiKey,
|
|
72
|
+
model: model,
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
if (process.env.TELEGRAM_BOT_TOKEN) {
|
|
76
|
+
config.telegram = {
|
|
77
|
+
botToken: process.env.TELEGRAM_BOT_TOKEN,
|
|
39
78
|
};
|
|
40
79
|
}
|
|
41
80
|
// Auto-update enabled by default (unless explicitly disabled)
|
|
@@ -66,7 +105,11 @@ export function saveConfig(config) {
|
|
|
66
105
|
lines.push(`SAID_AUTO_UPDATE_AUTO_RESTART=${config.autoUpdate.autoRestart}`);
|
|
67
106
|
lines.push(`SAID_AUTO_UPDATE_PACKAGE=${config.autoUpdate.packageName}`);
|
|
68
107
|
}
|
|
108
|
+
// New unified provider config
|
|
69
109
|
lines.push(`SAID_PROVIDER=${config.provider}`);
|
|
110
|
+
lines.push(`SAID_API_KEY=${config.apiKey}`);
|
|
111
|
+
lines.push(`SAID_MODEL=${config.model}`);
|
|
112
|
+
// Also save legacy configs
|
|
70
113
|
if (config.provider === 'opencode' && config.opencode) {
|
|
71
114
|
lines.push(`OPENCODE_BASE_URL=${config.opencode.baseUrl}`);
|
|
72
115
|
lines.push(`OPENCODE_API_KEY=${config.opencode.apiKey}`);
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
export { Service, type ServiceConfig } from '
|
|
2
|
-
export { loadConfig, saveConfig, clearConfigCache
|
|
1
|
+
export { Service, type ServiceConfig } from '@said/core/service.js';
|
|
2
|
+
export { loadConfig, saveConfig, clearConfigCache } from './config.js';
|
|
3
|
+
export type { AppConfig, ProviderType } from './config.js';
|
|
3
4
|
export { Application, app } from './app.js';
|
|
5
|
+
export { Provider, type ProviderConfig } from './provider.js';
|
|
6
|
+
export type { ChatMessage, ChatCompletionOptions, TokenUsage, LLMProvider, } from './provider.js';
|
|
7
|
+
export { PROVIDERS, getProviderList, fetchModels, type ProviderDefinition, type ModelInfo, type ProviderConfig as ProviderRegistryConfig } from './providers/index.js';
|
|
8
|
+
export type { ProviderType as RegistryProviderType } from './providers/index.js';
|
|
4
9
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACvE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAG5C,OAAO,EAAE,QAAQ,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAC9D,YAAY,EACV,WAAW,EACX,qBAAqB,EACrB,UAAU,EACV,WAAW,GACZ,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,WAAW,EAAE,KAAK,kBAAkB,EAAE,KAAK,SAAS,EAAE,KAAK,cAAc,IAAI,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACvK,YAAY,EAAE,YAAY,IAAI,oBAAoB,EAAE,MAAM,sBAAsB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
export { Service } from '
|
|
1
|
+
export { Service } from '@said/core/service.js';
|
|
2
2
|
export { loadConfig, saveConfig, clearConfigCache } from './config.js';
|
|
3
3
|
export { Application, app } from './app.js';
|
|
4
|
+
// Provider exports
|
|
5
|
+
export { Provider } from './provider.js';
|
|
6
|
+
// Provider registry exports
|
|
7
|
+
export { PROVIDERS, getProviderList, fetchModels } from './providers/index.js';
|
|
4
8
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAsB,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAsB,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEvE,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE5C,mBAAmB;AACnB,OAAO,EAAE,QAAQ,EAAuB,MAAM,eAAe,CAAC;AAQ9D,4BAA4B;AAC5B,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,WAAW,EAA0F,MAAM,sBAAsB,CAAC"}
|
package/dist/main.js
CHANGED
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
import { Application } from './app.js';
|
|
3
3
|
import { loadConfig } from './config.js';
|
|
4
4
|
import { TelegramAdapter } from './telegram-adapter.js';
|
|
5
|
-
import {
|
|
6
|
-
import { MiniMaxProvider } from './minimax-provider.js';
|
|
5
|
+
import { Provider } from './provider.js';
|
|
7
6
|
import { Agent } from './agent.js';
|
|
8
7
|
import { FileEditSkill } from './skills/file-edit-skill.js';
|
|
9
8
|
import { WebSurfSkill } from './skills/web-surf-skill.js';
|
|
@@ -24,27 +23,12 @@ async function main() {
|
|
|
24
23
|
// Create provider based on config (may be null if not configured)
|
|
25
24
|
let provider = null;
|
|
26
25
|
let providerError = null;
|
|
27
|
-
if (config.
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
console.warn(`Warning: ${providerError}`);
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
provider = new OpenCodeProvider({ name: 'opencode-provider', ...config.opencode }, eventEmitter);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
else if (config.provider === 'minimax') {
|
|
37
|
-
if (!config.minimax?.apiKey) {
|
|
38
|
-
providerError = 'MiniMax API key not configured. Please run "npm run setup" first.';
|
|
39
|
-
console.warn(`Warning: ${providerError}`);
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
provider = new MiniMaxProvider({ name: 'minimax-provider', ...config.minimax }, eventEmitter);
|
|
43
|
-
}
|
|
26
|
+
if (!config.apiKey) {
|
|
27
|
+
providerError = `${config.provider} API key not configured. Please run "npm run setup" first.`;
|
|
28
|
+
console.warn(`Warning: ${providerError}`);
|
|
44
29
|
}
|
|
45
30
|
else {
|
|
46
|
-
|
|
47
|
-
console.warn(`Warning: ${providerError}`);
|
|
31
|
+
provider = new Provider({ name: 'provider', provider: config.provider, apiKey: config.apiKey, model: config.model }, eventEmitter);
|
|
48
32
|
}
|
|
49
33
|
// Create agent
|
|
50
34
|
const agent = new Agent({ name: 'agent' }, eventEmitter);
|
|
@@ -77,18 +61,19 @@ async function main() {
|
|
|
77
61
|
telegramAdapter.setMessageHandler(async (msg) => {
|
|
78
62
|
// Check for provider error
|
|
79
63
|
if (providerError) {
|
|
80
|
-
return `⚠️ ${providerError}
|
|
64
|
+
return { response: `⚠️ ${providerError}` };
|
|
81
65
|
}
|
|
82
66
|
if (!provider) {
|
|
83
|
-
return '⚠️ No LLM provider configured. Please run "npm run setup" first.';
|
|
67
|
+
return { response: '⚠️ No LLM provider configured. Please run "npm run setup" first.' };
|
|
84
68
|
}
|
|
85
69
|
try {
|
|
86
70
|
const response = await agent.processMessage(msg.chatId, msg.text);
|
|
87
|
-
|
|
71
|
+
const usage = agent.getLastTokenUsage();
|
|
72
|
+
return { response, usage };
|
|
88
73
|
}
|
|
89
74
|
catch (error) {
|
|
90
75
|
console.error('Error processing message:', error);
|
|
91
|
-
return `⚠️ Error: ${error instanceof Error ? error.message : 'Unknown error'}
|
|
76
|
+
return { response: `⚠️ Error: ${error instanceof Error ? error.message : 'Unknown error'}` };
|
|
92
77
|
}
|
|
93
78
|
});
|
|
94
79
|
}
|
package/dist/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,11 @@ export interface ChatCompletionOptions {
|
|
|
15
15
|
maxTokens?: number;
|
|
16
16
|
stream?: boolean;
|
|
17
17
|
}
|
|
18
|
+
export interface TokenUsage {
|
|
19
|
+
promptTokens: number;
|
|
20
|
+
completionTokens: number;
|
|
21
|
+
totalTokens: number;
|
|
22
|
+
}
|
|
18
23
|
export interface LLMProvider {
|
|
19
24
|
chatCompletion(options: ChatCompletionOptions): Promise<string>;
|
|
20
25
|
chatCompletionStream(options: ChatCompletionOptions): AsyncIterable<string>;
|
|
@@ -23,10 +28,12 @@ export declare class MiniMaxProvider extends Service implements LLMProvider {
|
|
|
23
28
|
private apiKey;
|
|
24
29
|
private model;
|
|
25
30
|
private baseUrl;
|
|
31
|
+
private lastUsage;
|
|
26
32
|
constructor(config: MiniMaxProviderConfig, eventEmitter?: EventEmitter);
|
|
27
33
|
initialize(): Promise<void>;
|
|
28
34
|
start(): Promise<void>;
|
|
29
35
|
stop(): Promise<void>;
|
|
36
|
+
getLastTokenUsage(): TokenUsage;
|
|
30
37
|
chatCompletion(options: ChatCompletionOptions): Promise<string>;
|
|
31
38
|
chatCompletionStream(options: ChatCompletionOptions): AsyncIterable<string>;
|
|
32
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"minimax-provider.d.ts","sourceRoot":"","sources":["../src/minimax-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,WAAW,qBAAsB,SAAQ,aAAa;IAC1D,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChE,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;CAC7E;AA+BD,qBAAa,eAAgB,SAAQ,OAAQ,YAAW,WAAW;IACjE,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,KAAK,CAA6B;IAC1C,OAAO,CAAC,OAAO,CAAyC;
|
|
1
|
+
{"version":3,"file":"minimax-provider.d.ts","sourceRoot":"","sources":["../src/minimax-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,WAAW,qBAAsB,SAAQ,aAAa;IAC1D,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChE,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;CAC7E;AA+BD,qBAAa,eAAgB,SAAQ,OAAQ,YAAW,WAAW;IACjE,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,KAAK,CAA6B;IAC1C,OAAO,CAAC,OAAO,CAAyC;IACxD,OAAO,CAAC,SAAS,CAAwE;gBAE7E,MAAM,EAAE,qBAAqB,EAAE,YAAY,CAAC,EAAE,YAAY;IAIhE,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAW3B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,iBAAiB,IAAI,UAAU;IAIzB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC;IAoC9D,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,aAAa,CAAC,MAAM,CAAC;CA4DnF"}
|
package/dist/minimax-provider.js
CHANGED
|
@@ -4,6 +4,7 @@ export class MiniMaxProvider extends Service {
|
|
|
4
4
|
apiKey = '';
|
|
5
5
|
model = 'MiniMax-Text-01';
|
|
6
6
|
baseUrl = 'https://api.minimax.chat/v1';
|
|
7
|
+
lastUsage = { promptTokens: 0, completionTokens: 0, totalTokens: 0 };
|
|
7
8
|
constructor(config, eventEmitter) {
|
|
8
9
|
super(config, eventEmitter);
|
|
9
10
|
}
|
|
@@ -22,6 +23,9 @@ export class MiniMaxProvider extends Service {
|
|
|
22
23
|
async stop() {
|
|
23
24
|
console.log('MiniMax provider stopped');
|
|
24
25
|
}
|
|
26
|
+
getLastTokenUsage() {
|
|
27
|
+
return this.lastUsage;
|
|
28
|
+
}
|
|
25
29
|
async chatCompletion(options) {
|
|
26
30
|
const request = {
|
|
27
31
|
model: options.model || this.model,
|
|
@@ -42,6 +46,14 @@ export class MiniMaxProvider extends Service {
|
|
|
42
46
|
throw new Error(`MiniMax API error: ${response.status} - ${error}`);
|
|
43
47
|
}
|
|
44
48
|
const data = await response.json();
|
|
49
|
+
// Store token usage
|
|
50
|
+
if (data.usage) {
|
|
51
|
+
this.lastUsage = {
|
|
52
|
+
promptTokens: data.usage.prompt_tokens || 0,
|
|
53
|
+
completionTokens: data.usage.completion_tokens || 0,
|
|
54
|
+
totalTokens: data.usage.total_tokens || 0,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
45
57
|
return data.choices[0]?.message?.content || '';
|
|
46
58
|
}
|
|
47
59
|
async *chatCompletionStream(options) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"minimax-provider.js","sourceRoot":"","sources":["../src/minimax-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAsB,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"minimax-provider.js","sourceRoot":"","sources":["../src/minimax-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,11 @@ export interface ChatCompletionOptions {
|
|
|
11
11
|
maxTokens?: number;
|
|
12
12
|
stream?: boolean;
|
|
13
13
|
}
|
|
14
|
+
export interface TokenUsage {
|
|
15
|
+
promptTokens: number;
|
|
16
|
+
completionTokens: number;
|
|
17
|
+
totalTokens: number;
|
|
18
|
+
}
|
|
14
19
|
export interface LLMProvider {
|
|
15
20
|
chatCompletion(options: ChatCompletionOptions): Promise<string>;
|
|
16
21
|
chatCompletionStream(options: ChatCompletionOptions): AsyncIterable<string>;
|
|
@@ -23,10 +28,12 @@ export interface OpenCodeProviderConfig extends ServiceConfig {
|
|
|
23
28
|
export declare class OpenCodeProvider extends Service implements LLMProvider {
|
|
24
29
|
private client;
|
|
25
30
|
private model;
|
|
31
|
+
private lastUsage;
|
|
26
32
|
constructor(config: OpenCodeProviderConfig, eventEmitter?: EventEmitter);
|
|
27
33
|
initialize(): Promise<void>;
|
|
28
34
|
start(): Promise<void>;
|
|
29
35
|
stop(): Promise<void>;
|
|
36
|
+
getLastTokenUsage(): TokenUsage;
|
|
30
37
|
chatCompletion(options: ChatCompletionOptions): Promise<string>;
|
|
31
38
|
chatCompletionStream(options: ChatCompletionOptions): AsyncIterable<string>;
|
|
32
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opencode-provider.d.ts","sourceRoot":"","sources":["../src/opencode-provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChE,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;CAC7E;AAED,MAAM,WAAW,sBAAuB,SAAQ,aAAa;IAC3D,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,gBAAiB,SAAQ,OAAQ,YAAW,WAAW;IAClE,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,KAAK,CAAoB;
|
|
1
|
+
{"version":3,"file":"opencode-provider.d.ts","sourceRoot":"","sources":["../src/opencode-provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChE,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;CAC7E;AAED,MAAM,WAAW,sBAAuB,SAAQ,aAAa;IAC3D,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,gBAAiB,SAAQ,OAAQ,YAAW,WAAW;IAClE,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,SAAS,CAAwE;gBAE7E,MAAM,EAAE,sBAAsB,EAAE,YAAY,CAAC,EAAE,YAAY;IAIjE,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAe3B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAYtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,iBAAiB,IAAI,UAAU;IAIzB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC;IAyB9D,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,aAAa,CAAC,MAAM,CAAC;CAoBnF"}
|
|
@@ -4,6 +4,7 @@ import { loadConfig } from './config.js';
|
|
|
4
4
|
export class OpenCodeProvider extends Service {
|
|
5
5
|
client = null;
|
|
6
6
|
model = 'gpt-4o';
|
|
7
|
+
lastUsage = { promptTokens: 0, completionTokens: 0, totalTokens: 0 };
|
|
7
8
|
constructor(config, eventEmitter) {
|
|
8
9
|
super(config, eventEmitter);
|
|
9
10
|
}
|
|
@@ -34,6 +35,9 @@ export class OpenCodeProvider extends Service {
|
|
|
34
35
|
async stop() {
|
|
35
36
|
console.log('OpenCode provider stopped');
|
|
36
37
|
}
|
|
38
|
+
getLastTokenUsage() {
|
|
39
|
+
return this.lastUsage;
|
|
40
|
+
}
|
|
37
41
|
async chatCompletion(options) {
|
|
38
42
|
if (!this.client) {
|
|
39
43
|
throw new Error('OpenCode provider not initialized');
|
|
@@ -44,6 +48,15 @@ export class OpenCodeProvider extends Service {
|
|
|
44
48
|
temperature: options.temperature ?? 0.7,
|
|
45
49
|
max_tokens: options.maxTokens,
|
|
46
50
|
});
|
|
51
|
+
// Store token usage
|
|
52
|
+
const usage = response.usage;
|
|
53
|
+
if (usage) {
|
|
54
|
+
this.lastUsage = {
|
|
55
|
+
promptTokens: usage.prompt_tokens || 0,
|
|
56
|
+
completionTokens: usage.completion_tokens || 0,
|
|
57
|
+
totalTokens: usage.total_tokens || 0,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
47
60
|
return response.choices[0]?.message?.content || '';
|
|
48
61
|
}
|
|
49
62
|
async *chatCompletionStream(options) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opencode-provider.js","sourceRoot":"","sources":["../src/opencode-provider.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAsB,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"opencode-provider.js","sourceRoot":"","sources":["../src/opencode-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { Service, type ServiceConfig } from '@said/core/service.js';
|
|
2
|
+
import { EventEmitter } from 'eventemitter3';
|
|
3
|
+
import { type ProviderType } from './providers/index.js';
|
|
4
|
+
export interface ChatMessage {
|
|
5
|
+
role: 'system' | 'user' | 'assistant';
|
|
6
|
+
content: string;
|
|
7
|
+
}
|
|
8
|
+
export interface ChatCompletionOptions {
|
|
9
|
+
messages: ChatMessage[];
|
|
10
|
+
model?: string;
|
|
11
|
+
temperature?: number;
|
|
12
|
+
maxTokens?: number;
|
|
13
|
+
stream?: boolean;
|
|
14
|
+
}
|
|
15
|
+
export interface TokenUsage {
|
|
16
|
+
promptTokens: number;
|
|
17
|
+
completionTokens: number;
|
|
18
|
+
totalTokens: number;
|
|
19
|
+
}
|
|
20
|
+
export interface LLMProvider {
|
|
21
|
+
chatCompletion(options: ChatCompletionOptions): Promise<string>;
|
|
22
|
+
chatCompletionStream(options: ChatCompletionOptions): AsyncIterable<string>;
|
|
23
|
+
getLastTokenUsage(): TokenUsage;
|
|
24
|
+
}
|
|
25
|
+
export interface ProviderConfig extends ServiceConfig {
|
|
26
|
+
provider: ProviderType;
|
|
27
|
+
apiKey: string;
|
|
28
|
+
model: string;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Unified LLM Provider that supports multiple backends:
|
|
32
|
+
* - OpenAI-compatible APIs (OpenAI, OpenCode, Ollama, Kimi, Z.ai, OpenRouter)
|
|
33
|
+
* - Anthropic (Claude)
|
|
34
|
+
* - Google AI (Gemini)
|
|
35
|
+
* - MiniMax (custom API)
|
|
36
|
+
*/
|
|
37
|
+
export declare class Provider extends Service implements LLMProvider {
|
|
38
|
+
private client;
|
|
39
|
+
private apiKey;
|
|
40
|
+
private model;
|
|
41
|
+
private providerType;
|
|
42
|
+
private lastTokenUsage;
|
|
43
|
+
constructor(config: ProviderConfig, eventEmitter?: EventEmitter);
|
|
44
|
+
initialize(): Promise<void>;
|
|
45
|
+
start(): Promise<void>;
|
|
46
|
+
stop(): Promise<void>;
|
|
47
|
+
getLastTokenUsage(): TokenUsage;
|
|
48
|
+
/**
|
|
49
|
+
* Handle chat completion for OpenAI-compatible APIs
|
|
50
|
+
*/
|
|
51
|
+
private handleOpenAICompletion;
|
|
52
|
+
/**
|
|
53
|
+
* Handle streaming chat completion for OpenAI-compatible APIs
|
|
54
|
+
*/
|
|
55
|
+
private handleOpenAIStream;
|
|
56
|
+
/**
|
|
57
|
+
* Handle chat completion for MiniMax (custom API)
|
|
58
|
+
*/
|
|
59
|
+
private handleMiniMaxCompletion;
|
|
60
|
+
/**
|
|
61
|
+
* Handle streaming chat completion for MiniMax (custom API)
|
|
62
|
+
*/
|
|
63
|
+
private handleMiniMaxStream;
|
|
64
|
+
chatCompletion(options: ChatCompletionOptions): Promise<string>;
|
|
65
|
+
chatCompletionStream(options: ChatCompletionOptions): AsyncIterable<string>;
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEpE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAa,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpE,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChE,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5E,iBAAiB,IAAI,UAAU,CAAC;CACjC;AAED,MAAM,WAAW,cAAe,SAAQ,aAAa;IACnD,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;GAMG;AACH,qBAAa,QAAS,SAAQ,OAAQ,YAAW,WAAW;IAC1D,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,cAAc,CAIpB;gBAEU,MAAM,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,YAAY;IAIzD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAiC3B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IActB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,iBAAiB,IAAI,UAAU;IAI/B;;OAEG;YACW,sBAAsB;IAwBpC;;OAEG;YACY,kBAAkB;IAqCjC;;OAEG;YACW,uBAAuB;IAiDrC;;OAEG;YACY,mBAAmB;IA4E5B,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC;IAe9D,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,aAAa,CAAC,MAAM,CAAC;CAcnF"}
|