mioku 1.0.8 → 1.0.10
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/cli/index.cjs +3 -4
- package/dist/cli/index.cjs.map +1 -1
- package/dist/cli/index.js +3 -4
- package/dist/cli/index.js.map +1 -1
- package/dist/{exec-BzdYBQLQ.cjs → exec-Cg19J7Dn.cjs} +2 -2
- package/dist/exec-Cg19J7Dn.cjs.map +1 -0
- package/dist/{exec-3C9aJ9OX.js → exec-Xxd1F2u8.js} +2 -2
- package/dist/{exec-BzdYBQLQ.cjs.map → exec-Xxd1F2u8.js.map} +1 -1
- package/dist/index.cjs +860 -307
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +197 -28
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.ts +197 -28
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +854 -308
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/exec-3C9aJ9OX.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -886,11 +886,8 @@ type ServiceFactory<T> = () => T;
|
|
|
886
886
|
//# sourceMappingURL=registry.d.ts.map
|
|
887
887
|
//#endregion
|
|
888
888
|
//#region src/types.d.ts
|
|
889
|
-
/** 框架服务的最小形态:init 负责初始化,api 是对外暴露的接口对象 */
|
|
890
889
|
interface MiokuService {
|
|
891
890
|
name: string;
|
|
892
|
-
version: string;
|
|
893
|
-
description?: string;
|
|
894
891
|
init(): Promise<void>;
|
|
895
892
|
api: Record<string, any>;
|
|
896
893
|
dispose?(): Promise<void>;
|
|
@@ -949,9 +946,9 @@ interface PluginHelp {
|
|
|
949
946
|
type CommandRole = "master" | "admin" | "owner" | "member";
|
|
950
947
|
/**
|
|
951
948
|
* - `"master"`:仅 bot 主人可触发
|
|
952
|
-
* - `"owner"`:
|
|
953
|
-
* - `"admin"`:bot
|
|
954
|
-
* - `"member"
|
|
949
|
+
* - `"owner"`:bot 主人或当前群群主
|
|
950
|
+
* - `"admin"`:bot 主人、配置管理员、当前群群主或群管理员
|
|
951
|
+
* - `"member"`:所有人
|
|
955
952
|
*
|
|
956
953
|
*/
|
|
957
954
|
type SkillPermissionRole = "master" | "owner" | "admin" | "member";
|
|
@@ -988,11 +985,32 @@ interface ConfigService {
|
|
|
988
985
|
/** 订阅配置变化,返回取消订阅函数 */
|
|
989
986
|
onConfigChange(pluginName: string, configName: string, callback: (newConfig: any) => void): () => void;
|
|
990
987
|
}
|
|
988
|
+
/** 截图输出选项 */
|
|
989
|
+
interface ScreenshotOptions {
|
|
990
|
+
/** 视图宽度 */
|
|
991
|
+
width?: number;
|
|
992
|
+
/** 视图高度 */
|
|
993
|
+
height?: number;
|
|
994
|
+
/** 设备像素比,CSS 尺寸不变,输出物理像素按比例放大;默认 1 */
|
|
995
|
+
deviceScaleFactor?: number;
|
|
996
|
+
/** 是否截取完整页面 */
|
|
997
|
+
fullPage?: boolean;
|
|
998
|
+
/** 图片质量 1-100 */
|
|
999
|
+
quality?: number;
|
|
1000
|
+
/** 输出图片格式 */
|
|
1001
|
+
type?: "png" | "jpeg" | "webp";
|
|
1002
|
+
/** 渲染等待时间 */
|
|
1003
|
+
waitTime?: number;
|
|
1004
|
+
/** 主题模式,默认 auto(按时间自动切换) */
|
|
1005
|
+
themeMode?: "auto" | "light" | "dark";
|
|
1006
|
+
}
|
|
1007
|
+
/** Markdown 截图选项 */
|
|
1008
|
+
interface MarkdownScreenshotOptions extends ScreenshotOptions {}
|
|
991
1009
|
/** 截图服务:把 HTML / Markdown / URL 渲染成图片 */
|
|
992
1010
|
interface ScreenshotService {
|
|
993
|
-
screenshot(html: string, options?:
|
|
994
|
-
screenshotMarkdown(markdownContent: string, options?:
|
|
995
|
-
screenshotFromUrl(url: string, options?:
|
|
1011
|
+
screenshot(html: string, options?: ScreenshotOptions): Promise<string>;
|
|
1012
|
+
screenshotMarkdown(markdownContent: string, options?: MarkdownScreenshotOptions): Promise<string>;
|
|
1013
|
+
screenshotFromUrl(url: string, options?: ScreenshotOptions): Promise<string>;
|
|
996
1014
|
cleanupTemp(olderThanMs?: number): Promise<number>;
|
|
997
1015
|
}
|
|
998
1016
|
/** 帮助服务:插件的帮助信息注册与查询 */
|
|
@@ -1015,7 +1033,7 @@ interface AITool {
|
|
|
1015
1033
|
description: string;
|
|
1016
1034
|
parameters: {
|
|
1017
1035
|
type: "object";
|
|
1018
|
-
properties: Record<string,
|
|
1036
|
+
properties: Record<string, unknown>;
|
|
1019
1037
|
required?: string[];
|
|
1020
1038
|
};
|
|
1021
1039
|
handler: (args: any, event?: any) => Promise<any> | any;
|
|
@@ -1047,8 +1065,8 @@ interface MultimodalMessage {
|
|
|
1047
1065
|
/** 一次工具调用的记录(名称、参数与结果) */
|
|
1048
1066
|
interface ToolCallRecord {
|
|
1049
1067
|
name: string;
|
|
1050
|
-
arguments:
|
|
1051
|
-
result:
|
|
1068
|
+
arguments: unknown;
|
|
1069
|
+
result: unknown;
|
|
1052
1070
|
}
|
|
1053
1071
|
interface SessionToolDefinition {
|
|
1054
1072
|
name: string;
|
|
@@ -1065,6 +1083,8 @@ interface CompleteOptions {
|
|
|
1065
1083
|
/** 会话内可执行的工具(自动进入工具循环) */
|
|
1066
1084
|
executableTools?: SessionToolDefinition[];
|
|
1067
1085
|
executableToolsProvider?: () => SessionToolDefinition[];
|
|
1086
|
+
steeringProvider?: () => any[];
|
|
1087
|
+
abortSignal?: AbortSignal;
|
|
1068
1088
|
maxIterations?: number;
|
|
1069
1089
|
onTextDelta?: (delta: string) => void | Promise<void>;
|
|
1070
1090
|
usageContext?: AIUsageContext;
|
|
@@ -1079,10 +1099,11 @@ interface CompleteResponse {
|
|
|
1079
1099
|
name: string;
|
|
1080
1100
|
arguments: string;
|
|
1081
1101
|
}>;
|
|
1082
|
-
raw:
|
|
1083
|
-
turnMessages:
|
|
1102
|
+
raw: unknown;
|
|
1103
|
+
turnMessages: unknown[];
|
|
1084
1104
|
iterations?: number;
|
|
1085
1105
|
allToolCalls?: ToolCallRecord[];
|
|
1106
|
+
stopped?: boolean;
|
|
1086
1107
|
}
|
|
1087
1108
|
type AIProtocol = "openai-chat" | "openai-response" | "anthropic" | "gemini";
|
|
1088
1109
|
/** 模型能力标记:文本 / 视觉 / 工具调用 / 推理 */
|
|
@@ -1145,7 +1166,11 @@ interface AIInstance {
|
|
|
1145
1166
|
model?: string;
|
|
1146
1167
|
temperature?: number;
|
|
1147
1168
|
maxIterations?: number;
|
|
1148
|
-
}): Promise<
|
|
1169
|
+
}): Promise<{
|
|
1170
|
+
content: string;
|
|
1171
|
+
iterations: number;
|
|
1172
|
+
allToolCalls: ToolCallRecord[];
|
|
1173
|
+
}>;
|
|
1149
1174
|
setUsageContext?(context: AIUsageContext | undefined): void;
|
|
1150
1175
|
withUsageContext?<T>(context: AIUsageContext | undefined, fn: () => Promise<T>): Promise<T>;
|
|
1151
1176
|
registerPrompt(name: string, prompt: string): boolean;
|
|
@@ -1202,8 +1227,8 @@ interface AIService {
|
|
|
1202
1227
|
getInstanceByRole?(role: AIModelRole): AIInstance | undefined;
|
|
1203
1228
|
setMainFallbackChain?(modelFullIds: string[]): void;
|
|
1204
1229
|
getMainFallbackChain?(): string[];
|
|
1205
|
-
registerChatRuntime(runtime:
|
|
1206
|
-
getChatRuntime():
|
|
1230
|
+
registerChatRuntime(runtime: ChatRuntime): boolean;
|
|
1231
|
+
getChatRuntime(): ChatRuntime | undefined;
|
|
1207
1232
|
removeChatRuntime(): boolean;
|
|
1208
1233
|
registerSkill(skill: AISkill): boolean;
|
|
1209
1234
|
getSkill(skillName: string): AISkill | undefined;
|
|
@@ -1215,6 +1240,7 @@ interface AIService {
|
|
|
1215
1240
|
range: AIUsageRange;
|
|
1216
1241
|
botId?: number;
|
|
1217
1242
|
}): AIUsageSummary;
|
|
1243
|
+
getUsageRecords?(options: AIUsageRecordQuery): AIUsageRecordSummary[];
|
|
1218
1244
|
cleanupUsageStats?(retentionMs?: number): number;
|
|
1219
1245
|
finalizeUsage?(usageId: string, finalization: AIUsageFinalization): boolean;
|
|
1220
1246
|
}
|
|
@@ -1249,7 +1275,7 @@ interface ChatRuntimePrivateTarget {
|
|
|
1249
1275
|
userId: number;
|
|
1250
1276
|
}
|
|
1251
1277
|
type ChatRuntimeSource = {
|
|
1252
|
-
event:
|
|
1278
|
+
event: Event;
|
|
1253
1279
|
} | ChatRuntimeGroupTarget | ChatRuntimePrivateTarget;
|
|
1254
1280
|
type ChatRuntimeBaseOptions = ChatRuntimeSource & {
|
|
1255
1281
|
targetMessage?: string;
|
|
@@ -1264,14 +1290,14 @@ type ChatRuntimeInformationRequestOptions = ChatRuntimeBaseOptions & {
|
|
|
1264
1290
|
task: string;
|
|
1265
1291
|
schema: {
|
|
1266
1292
|
type: "object";
|
|
1267
|
-
properties: Record<string,
|
|
1293
|
+
properties: Record<string, unknown>;
|
|
1268
1294
|
required?: string[];
|
|
1269
1295
|
};
|
|
1270
1296
|
toolName?: string;
|
|
1271
1297
|
toolDescription?: string;
|
|
1272
1298
|
};
|
|
1273
1299
|
interface ChatRuntimeCollectedInfo {
|
|
1274
|
-
data:
|
|
1300
|
+
data: unknown;
|
|
1275
1301
|
isComplete?: boolean;
|
|
1276
1302
|
confidence?: number;
|
|
1277
1303
|
notes?: string;
|
|
@@ -1284,7 +1310,7 @@ interface ChatRuntimeResult {
|
|
|
1284
1310
|
pendingPoke?: number[];
|
|
1285
1311
|
pendingQuote?: number;
|
|
1286
1312
|
emojiPath?: string | null;
|
|
1287
|
-
protocolMessages?:
|
|
1313
|
+
protocolMessages?: unknown[];
|
|
1288
1314
|
}
|
|
1289
1315
|
type AIUsageRange = "today" | "7d" | "30d";
|
|
1290
1316
|
type AIUsageScope = "all" | "bot";
|
|
@@ -1402,6 +1428,28 @@ interface AIUsageSummary {
|
|
|
1402
1428
|
cacheHitRate: number;
|
|
1403
1429
|
}>;
|
|
1404
1430
|
}
|
|
1431
|
+
interface AIUsageRecordQuery {
|
|
1432
|
+
sessionId?: string;
|
|
1433
|
+
usageId?: string;
|
|
1434
|
+
source?: string;
|
|
1435
|
+
userId?: number;
|
|
1436
|
+
limit?: number;
|
|
1437
|
+
}
|
|
1438
|
+
interface AIUsageRecordSummary {
|
|
1439
|
+
usageId: string | null;
|
|
1440
|
+
source: string | null;
|
|
1441
|
+
sessionId: string | null;
|
|
1442
|
+
userId: number | null;
|
|
1443
|
+
model: string;
|
|
1444
|
+
success: boolean;
|
|
1445
|
+
startedAt: number;
|
|
1446
|
+
endedAt: number;
|
|
1447
|
+
durationMs: number;
|
|
1448
|
+
inputTokens: number;
|
|
1449
|
+
outputTokens: number;
|
|
1450
|
+
totalTokens: number;
|
|
1451
|
+
toolCallCount: number;
|
|
1452
|
+
}
|
|
1405
1453
|
//# sourceMappingURL=types.d.ts.map
|
|
1406
1454
|
//#endregion
|
|
1407
1455
|
//#region src/services/manager.d.ts
|
|
@@ -1484,6 +1532,21 @@ declare const noticeOwners: (bots: readonly Bot[], owners: readonly string[], me
|
|
|
1484
1532
|
declare const noticeAdmins: (bots: readonly Bot[], admins: readonly string[], message: MessageInput, options?: NoticeOptions) => Promise<void>;
|
|
1485
1533
|
//# sourceMappingURL=actions.d.ts.map
|
|
1486
1534
|
//#endregion
|
|
1535
|
+
//#region src/runtime/permissions.d.ts
|
|
1536
|
+
/** 从事件对象中提取发送者 id(支持裸 id / user_id / sender.user_id) */
|
|
1537
|
+
declare const toUserId: (value: unknown) => string | undefined;
|
|
1538
|
+
/** 当前群群主(仅限所在群) */
|
|
1539
|
+
declare const isEventGroupOwner: (event: unknown) => boolean;
|
|
1540
|
+
/** 当前群群主或群管理员(仅限所在群) */
|
|
1541
|
+
declare const isEventGroupAdmin: (event: unknown) => boolean;
|
|
1542
|
+
/** 仅看 owners 名单:bot 主人(无群身份加成) */
|
|
1543
|
+
|
|
1544
|
+
/** 仅看 admins 名单:配置管理员 */
|
|
1545
|
+
declare const isEventAdminConfigOnly: (event: unknown) => boolean;
|
|
1546
|
+
/**
|
|
1547
|
+
* master 或当前群群主
|
|
1548
|
+
*/
|
|
1549
|
+
//#endregion
|
|
1487
1550
|
//#region src/utils.d.ts
|
|
1488
1551
|
declare const ChromeUA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) Chrome/131.0.0.0";
|
|
1489
1552
|
type Noop = () => void;
|
|
@@ -1649,6 +1712,7 @@ interface BusStats {
|
|
|
1649
1712
|
readonly registered: number;
|
|
1650
1713
|
readonly dispatched: number;
|
|
1651
1714
|
}
|
|
1715
|
+
type RegistrationFilter = (registration: Registration, event: Event) => boolean;
|
|
1652
1716
|
/**
|
|
1653
1717
|
* 事件总线:按路由把事件分发给所有匹配的监听器。
|
|
1654
1718
|
* 支持 `*` 通配符,同一优先级按注册顺序执行,不同优先级按数值升序。
|
|
@@ -1656,6 +1720,7 @@ interface BusStats {
|
|
|
1656
1720
|
declare class EventBus {
|
|
1657
1721
|
#private;
|
|
1658
1722
|
setLogger(logger: ((level: 'error' | 'warn' | 'info', message: string, detail?: unknown) => void) | null): void;
|
|
1723
|
+
setFilter(filter: RegistrationFilter | null): void;
|
|
1659
1724
|
/** 注册事件监听,返回取消注册函数 */
|
|
1660
1725
|
register<E extends Event = Event>(route: string, handler: EventHandler<E>, options?: {
|
|
1661
1726
|
source?: string;
|
|
@@ -1741,6 +1806,87 @@ declare class EventCorrelator {
|
|
|
1741
1806
|
}
|
|
1742
1807
|
//# sourceMappingURL=event-correlator.d.ts.map
|
|
1743
1808
|
//#endregion
|
|
1809
|
+
//#region src/runtime/commands.d.ts
|
|
1810
|
+
type CommandMatcher = string | RegExp;
|
|
1811
|
+
interface CommandExecutionContext {
|
|
1812
|
+
readonly ctx: MiokuContext;
|
|
1813
|
+
readonly event: MessageEvent;
|
|
1814
|
+
readonly command: RegisteredCommand;
|
|
1815
|
+
readonly text: string;
|
|
1816
|
+
readonly body: string;
|
|
1817
|
+
readonly args: readonly string[];
|
|
1818
|
+
readonly match?: RegExpMatchArray;
|
|
1819
|
+
}
|
|
1820
|
+
type CommandHandler = (context: CommandExecutionContext) => void | Promise<void>;
|
|
1821
|
+
interface CommandDefinition {
|
|
1822
|
+
readonly id?: string;
|
|
1823
|
+
readonly name: string;
|
|
1824
|
+
readonly aliases?: readonly string[];
|
|
1825
|
+
readonly match?: CommandMatcher;
|
|
1826
|
+
readonly description?: string;
|
|
1827
|
+
readonly usage?: string;
|
|
1828
|
+
readonly permission?: CommandRole;
|
|
1829
|
+
readonly priority?: number;
|
|
1830
|
+
readonly prefixes?: string | readonly string[] | false;
|
|
1831
|
+
readonly handler: CommandHandler;
|
|
1832
|
+
}
|
|
1833
|
+
interface CommandShortcutOptions extends Omit<CommandDefinition, "name" | "match" | "handler"> {
|
|
1834
|
+
readonly id?: string;
|
|
1835
|
+
readonly name?: string;
|
|
1836
|
+
}
|
|
1837
|
+
interface RegisteredCommand {
|
|
1838
|
+
readonly plugin: string;
|
|
1839
|
+
readonly id: string;
|
|
1840
|
+
readonly name: string;
|
|
1841
|
+
readonly aliases: readonly string[];
|
|
1842
|
+
readonly matcher: CommandMatcher;
|
|
1843
|
+
readonly description: string;
|
|
1844
|
+
readonly usage?: string;
|
|
1845
|
+
readonly permission: CommandRole;
|
|
1846
|
+
readonly priority: number;
|
|
1847
|
+
readonly prefixes?: string | readonly string[] | false;
|
|
1848
|
+
readonly handler: CommandHandler;
|
|
1849
|
+
readonly order: number;
|
|
1850
|
+
}
|
|
1851
|
+
interface CommandCatalogItem {
|
|
1852
|
+
readonly kind: "plugin" | "command";
|
|
1853
|
+
readonly plugin: string;
|
|
1854
|
+
readonly id: string;
|
|
1855
|
+
readonly label: string;
|
|
1856
|
+
readonly desc?: string;
|
|
1857
|
+
readonly usage?: string;
|
|
1858
|
+
readonly permission?: CommandRole;
|
|
1859
|
+
readonly priority?: number;
|
|
1860
|
+
readonly match?: string;
|
|
1861
|
+
readonly event?: string;
|
|
1862
|
+
readonly source: "runtime" | "manifest";
|
|
1863
|
+
}
|
|
1864
|
+
declare class CommandManager {
|
|
1865
|
+
#private;
|
|
1866
|
+
constructor(options: {
|
|
1867
|
+
getDefaultPrefix: () => string;
|
|
1868
|
+
getOwners: () => readonly string[];
|
|
1869
|
+
getAdmins: () => readonly string[];
|
|
1870
|
+
logger?: {
|
|
1871
|
+
error(message: string, detail?: unknown): void;
|
|
1872
|
+
};
|
|
1873
|
+
});
|
|
1874
|
+
register(plugin: string, definition: CommandDefinition, context: MiokuContext): () => void;
|
|
1875
|
+
register(plugin: string, matcher: CommandMatcher, handler: CommandHandler, options?: CommandShortcutOptions, context?: MiokuContext): () => void;
|
|
1876
|
+
setAccessControl(config: AccessControlConfig | undefined): void;
|
|
1877
|
+
syncMetadata(metadata: PluginMetadata): void;
|
|
1878
|
+
removePlugin(plugin: string): void;
|
|
1879
|
+
clear(): void;
|
|
1880
|
+
list(): readonly RegisteredCommand[];
|
|
1881
|
+
getPluginHelp(plugin: string): PluginHelp | undefined;
|
|
1882
|
+
catalog(): CommandCatalogItem[];
|
|
1883
|
+
dispatch(event: MessageEvent): Promise<boolean>;
|
|
1884
|
+
shouldDispatch(source: string, event: Event): boolean;
|
|
1885
|
+
}
|
|
1886
|
+
declare const setActiveCommandManager: (manager: CommandManager | undefined) => void;
|
|
1887
|
+
declare const getActiveCommandManager: () => CommandManager | undefined;
|
|
1888
|
+
//# sourceMappingURL=commands.d.ts.map
|
|
1889
|
+
//#endregion
|
|
1744
1890
|
//#region src/runtime/mioku-context.d.ts
|
|
1745
1891
|
/** 插件管理器:插件列表查询与运行时启停 */
|
|
1746
1892
|
interface PluginManager {
|
|
@@ -1756,7 +1902,9 @@ interface PluginManager {
|
|
|
1756
1902
|
}
|
|
1757
1903
|
interface ContextOptions {
|
|
1758
1904
|
readonly pluginName: string;
|
|
1905
|
+
readonly pluginId: string;
|
|
1759
1906
|
readonly bus: EventBus;
|
|
1907
|
+
readonly commands: CommandManager;
|
|
1760
1908
|
readonly bots: BotRegistry;
|
|
1761
1909
|
readonly driver: Driver;
|
|
1762
1910
|
readonly capabilities: CapabilityRegistry;
|
|
@@ -1771,8 +1919,16 @@ interface ContextOptions {
|
|
|
1771
1919
|
readonly correlator?: EventCorrelator;
|
|
1772
1920
|
}
|
|
1773
1921
|
/** 从事件对象中提取发送者 id(支持裸 id / user_id / sender.user_id) */
|
|
1774
|
-
|
|
1922
|
+
|
|
1923
|
+
/** 仅看 owners 名单:bot 主人(无群身份加成) */
|
|
1924
|
+
declare const isEventMaster: (event: unknown) => boolean;
|
|
1925
|
+
/**
|
|
1926
|
+
* master 或当前群群主。等价于 `ctx.command({ permission: "owner" })` 的判断。
|
|
1927
|
+
*/
|
|
1775
1928
|
declare const isEventOwner: (event: unknown) => boolean;
|
|
1929
|
+
/**
|
|
1930
|
+
* master、配置管理员、当前群群主或群管理员。等价于 `ctx.command({ permission: "admin" })` 的判断。
|
|
1931
|
+
*/
|
|
1776
1932
|
declare const isEventAdmin: (event: unknown) => boolean;
|
|
1777
1933
|
declare const isEventOwnerOrAdmin: (event: unknown) => boolean;
|
|
1778
1934
|
declare const hasEventRight: (event: unknown) => boolean;
|
|
@@ -1844,6 +2000,7 @@ declare class MiokuContext {
|
|
|
1844
2000
|
#private;
|
|
1845
2001
|
constructor(options: ContextOptions);
|
|
1846
2002
|
get pluginName(): string;
|
|
2003
|
+
get pluginId(): string;
|
|
1847
2004
|
/** 第一个已连接的 bot(多数单 bot 场景直接用这个) */
|
|
1848
2005
|
get bot(): Bot | undefined;
|
|
1849
2006
|
/** 所有已连接的 bot */
|
|
@@ -1889,6 +2046,9 @@ declare class MiokuContext {
|
|
|
1889
2046
|
* `onebotv11:message`;返回取消监听函数。
|
|
1890
2047
|
*/
|
|
1891
2048
|
handle<R extends string | readonly string[]>(route: R, handler: (event: RouteEvent<R>) => void | Promise<void>): () => void;
|
|
2049
|
+
/** 注册消息命令;默认自动匹配框架前缀并在命中后消费消息 */
|
|
2050
|
+
command(definition: CommandDefinition): () => void;
|
|
2051
|
+
command(matcher: CommandMatcher, handler: CommandHandler, options?: CommandShortcutOptions): () => void;
|
|
1892
2052
|
/** 注册 cron 定时任务,插件卸载时自动停止 */
|
|
1893
2053
|
cron(expression: string, handler: CronHandler): ScheduledTask;
|
|
1894
2054
|
/** 监听 bot 连接 / 断开 */
|
|
@@ -1907,6 +2067,8 @@ declare class MiokuContext {
|
|
|
1907
2067
|
addService<T = unknown>(name: string, value: T, cover?: boolean): () => void;
|
|
1908
2068
|
get capabilities(): CapabilityRegistry;
|
|
1909
2069
|
get buses(): EventBus;
|
|
2070
|
+
/** 当前运行时的命令管理器 */
|
|
2071
|
+
get commands(): CommandManager;
|
|
1910
2072
|
get segment(): typeof segment;
|
|
1911
2073
|
/** 按模式匹配消息文本(支持正则/字符串/关键词数组) */
|
|
1912
2074
|
match<T extends HasMessage>(event: T, pattern: Parameters<typeof match>[1], quote?: boolean): ReturnType<typeof match>;
|
|
@@ -1938,15 +2100,20 @@ declare class MiokuContext {
|
|
|
1938
2100
|
noticeAdmins(message: MessageInput, options?: NoticeOptions): Promise<void>;
|
|
1939
2101
|
isGroupMsg(event: unknown): boolean;
|
|
1940
2102
|
isPrivateMsg(event: unknown): boolean;
|
|
1941
|
-
/**
|
|
2103
|
+
/** 事件发送者是否为 bot 主人(仅看 owners 名单,不识别群身份) */
|
|
2104
|
+
isMaster(event: unknown): boolean;
|
|
2105
|
+
/** 事件发送者是否为 bot 主人或当前群群主;等价于 `permission: "owner"` */
|
|
1942
2106
|
isOwner(event: unknown): boolean;
|
|
1943
|
-
/**
|
|
2107
|
+
/** 事件发送者是否为 bot 主人、配置管理员、当前群群主或群管理员;等价于 `permission: "admin"` */
|
|
1944
2108
|
isAdmin(event: unknown): boolean;
|
|
2109
|
+
/** 同 `isAdmin`,保留旧名称 */
|
|
1945
2110
|
isOwnerOrAdmin(event: unknown): boolean;
|
|
2111
|
+
/** 同 `isAdmin`,别名 */
|
|
1946
2112
|
hasRight(event: unknown): boolean;
|
|
1947
2113
|
dispose(): Promise<void>;
|
|
1948
2114
|
}
|
|
1949
2115
|
interface MiokuContext extends CtxUtils {}
|
|
2116
|
+
//# sourceMappingURL=mioku-context.d.ts.map
|
|
1950
2117
|
//#endregion
|
|
1951
2118
|
//#region src/plugin/plugin.d.ts
|
|
1952
2119
|
/** 插件卸载时执行的清理函数 */
|
|
@@ -1957,13 +2124,13 @@ type BotHandler = (event: BotLifecycleEvent) => void | Promise<void>;
|
|
|
1957
2124
|
type CronHandler = (ctx: MiokuContext, task: TaskContext) => void | Promise<void>;
|
|
1958
2125
|
/** 定时任务实例,来自 node-cron */
|
|
1959
2126
|
type ScheduledTask = node_cron0.ScheduledTask;
|
|
1960
|
-
/**
|
|
2127
|
+
/**
|
|
2128
|
+
* 插件定义
|
|
2129
|
+
*/
|
|
1961
2130
|
interface MiokuPlugin {
|
|
1962
2131
|
name: string;
|
|
1963
|
-
version?: string;
|
|
1964
2132
|
/** 加载顺序,数值越小越先加载 */
|
|
1965
2133
|
priority?: number;
|
|
1966
|
-
description?: string;
|
|
1967
2134
|
/** 依赖的其他插件名 */
|
|
1968
2135
|
dependencies?: string[];
|
|
1969
2136
|
/** 插件入口,可返回清理函数供卸载时调用 */
|
|
@@ -1996,6 +2163,7 @@ declare class AdapterContextImpl implements AdapterContext {
|
|
|
1996
2163
|
logger: Logger;
|
|
1997
2164
|
emit: (event: BotLifecycleEvent) => Promise<void>;
|
|
1998
2165
|
correlator?: EventCorrelator;
|
|
2166
|
+
commands: CommandManager;
|
|
1999
2167
|
});
|
|
2000
2168
|
registerBot(bot: Bot): BotContext;
|
|
2001
2169
|
unregisterBot(bot_id: string): void;
|
|
@@ -2074,6 +2242,7 @@ declare class MiokuRuntime {
|
|
|
2074
2242
|
get logger(): Logger;
|
|
2075
2243
|
get driver(): Driver;
|
|
2076
2244
|
get bus(): EventBus;
|
|
2245
|
+
get commands(): CommandManager;
|
|
2077
2246
|
/** 事件关联器(跨适配器去重);为 undefined 时表示已禁用 */
|
|
2078
2247
|
get correlator(): EventCorrelator | undefined;
|
|
2079
2248
|
get bots(): readonly Bot[];
|
|
@@ -2459,5 +2628,5 @@ declare function start(options?: MiokuStartOptions): Promise<{
|
|
|
2459
2628
|
}>;
|
|
2460
2629
|
declare const version: string;
|
|
2461
2630
|
//#endregion
|
|
2462
|
-
export { type AIInstance, type AIInstanceInfo, type AIModelCapability, type AIModelDescriptor, type AIModelRole, type AIProtocol, type AIProviderConfig, type AIService, type AISkill, type AIThinkingLevel, type AITool, type AIUsageBotOption, type AIUsageBreakdown, type AIUsageContext, type AIUsageFinalization, type AIUsageRange, type AIUsageScope, type AIUsageSummary, AI_GEMINI_THINKING_LEVELS, AI_THINKING_LEVELS, type AccessAction, type AccessControlConfig, type AccessHook, type AccessRuleEntry, type AccessScopeConfig, Adapter, AdapterBotBase, AdapterBotMap, AdapterCandidate, AdapterContext, AdapterContextImpl, AdapterDefinition, AdapterEvent, AdapterFactoryOptions, AdapterGateway, AdapterInstanceStatus, AdapterRegistrationConflictError, AdapterReport, AdapterReportEntry, AdapterResource, AdapterResourceScope, AdapterStartResult, type AdapterStatus, type AdapterStatusStats, AnyFunc, ArchMap, Arrayable, type Attachment, AvatarSetRequest, Awaitable, BOT_CWD, BUILTIN_PLUGINS, Bot, BotAutoFilled, BotBase, BotConfigJson, BotContext, BotEvent, BotEventBase, BotHandler, BotLifecycleEvent, BotProvidedKeys, BotRegistry, BotStatus, BotStatusResult, BuildAdapterReportOptions, BuildStatusOptions, type BuiltinServiceRef, BusStats, ButtonOptions, CORE_PLUGINS, Capability, CapabilityHandler, CapabilityRegistry, CapabilityTarget, type ChatRuntime, type ChatRuntimeBaseOptions, type ChatRuntimeCollectedInfo, type ChatRuntimeGroupTarget, type ChatRuntimeInformationRequestOptions, type ChatRuntimeNoticeOptions, type ChatRuntimePrivateTarget, type ChatRuntimePromptInjection, type ChatRuntimeResult, type ChatRuntimeSource, ChromeUA, type CommandRole, type CompleteOptions, type CompleteResponse, type ConfigService, type ConsolaInstance, ContextOptions, ConversationGetHistoryRequest, CorrelationParticipant, CorrelationRecord, CorrelationStats, CreateCmdOptions, CreateDriverOptions, CreateRuntimeOptions, CronHandler, Driver, DriverShutdownError, Event, EventBase, EventBus, EventCorrelator, EventFactoryOptions, EventHandler, EventIdentity, EventKindOfRoute, type EventMap, EventObservation, ExtendedNapCat, ForwardNode, ForwardSendNode, ForwardSendOptions, ForwardSendRequest, Friend, FriendDeleteRequest, FriendGetInfoRequest, FriendGetListRequest, FriendInfo, Gettable, Group, GroupGetInfoRequest, GroupGetListRequest, GroupGetMembersRequest, GroupInfo, GroupLeaveRequest, GroupSetNameRequest, GroupSetPortraitRequest, GroupSetWholeBanRequest, HasMessage, type HelpService, HistoryMessage, HttpClient, HttpRequestError, HttpRequestOptions, HttpResponse, LifecycleEvent, LifecycleEventMap, LifecycleHandler, LifecycleListener, LoadedAdapterDefinition, LoadedPluginDefinition, type LogLevel, type Logger, MatchHandler, MatchValue, MemberBanRequest, MemberGetInfoRequest, MemberInfo, MemberKickRequest, MemberPokeRequest, MemberSetAdminRequest, MemberSetCardRequest, MemberSetTitleRequest, type Message, MessageEvent, MessageGetForwardRequest, MessageGetRequest, MessageGetResult, type MessageInput, MessageRecallRequest, MessageSegment, MessageSegmentImpl, MessageSendRequest, type MessageTarget, MetaEvent, MiokuConfig, type MiokuContext, MiokuCoreServiceContrib, type MiokuPlugin, MiokuRuntime, type MiokuRuntimeConfig, type MiokuService, MiokuServices, MiokuStartOptions, type MiokuStatus, type MultimodalContentItem, type MultimodalMessage, Noop, NoticeEvent, NoticeOptions, PackageCandidate, PackageJson, type PackageJsonLike, PlatformId, PluginCandidate, PluginCleanup, type PluginHelp, PluginManager, type PluginMetadata, type PluginPackageConfig, type PluginStateRef, ProfileSetRequest, PureObject, Registration, ReplyArg, type ReplyOptions, RequestEvent, RouteEvent, type RunCommandResult, RuntimeAdapterState, RuntimeMiokuConfig, ScheduledTask, type ScreenshotService, SenderInfo, type SentMessage, SerializedMessageSegment, ServiceFactory, ServiceManager, type ServiceMetadata, type ServiceRef, Services, type SessionToolDefinition, type SkillPermissionRole, type SpawnPlan, StartOptions, type StatusProvider, StatusProviderContext, StatusProviderTarget, SystemMap, TOOL_RESULT_FOLLOWUP_KEY, type TextMessage, type ToolCallRecord, type ToolResultFollowup, UnsupportedCapabilityError, WebSocketClient, WebSocketConnectOptions, WebSocketConnectTimeoutError, WebSocketConnection, type WebUIService, addService, applyLogLevel, asMessage, atOf, avatarGet, avatarSet, base64Decode, base64Encode, bindCapabilities, botConfig, botStatus, box, buildAdapterReport, buildMiokuStatus, buildRoutes, buildSpawnPlan, clamp, collectBotStats, colorize, colors, commandExists, connectedBotKey, connectedBots, conversationGetHistory, createCmd, createDB, createDefaultDriver, createFriendRef, createGroupRef, createImportContext, createMessage, createMiokuLogger, createRuntime, createStore, dayjs, dedent, defineAdapter, defineCapability, definePlugin, defineService, defineState, deleteServiceConfig, discoverAdapterCandidates, discoverPluginCandidates, displayAdapterId, ensureDataDir, filesize, filter, find, findLocalPlugins, formatAdapterReport, formatDuration, formatMiokuStatus, formatMiokuStatusFn, forwardSend, friendDelete, friendGetInfo, friendGetList, fs, getAllPluginRuntimeStates, getBuiltinPlugins, getConfigDir, getDataDir, getGTk, getPluginConfigDir, getPluginDataDir, getPluginMetadata, getPluginMetadataList, getPluginRuntimeState, getService, getServiceConfig, getServiceConfigDir, getServiceConfigs, getServiceDataDir, getTerminalInput, groupGetInfo, groupGetList, groupGetMembers, groupLeave, groupSetName, groupSetPortrait, groupSetWholeBan, hasEventRight, hasPluginState, hasRight, hasService, isAdapterEvent, isAdmin, isBoolean, isBotEvent, isDefined, isEventAdmin, isEventOwner, isEventOwnerOrAdmin, isFunction, isMessage, isMessageEvent, isMetaEvent, isMiokuPlugin, isNoticeEvent, isNumber, isObject, isOwner, isOwnerOrAdmin, isRequestEvent, isSegment, isString, loadAdapterDefinition, loadLocalPlugin, loadNpmPlugin, localNum, localeDate, localeTime, rootLogger as logger, match, md5, memberBan, memberGetInfo, memberKick, memberPoke, memberSetAdmin, memberSetCard, memberSetTitle, messageGet, messageGetForward, messageRecall, messageSend, mriLib as mri, noNullish, normalizeAIThinkingLevel, normalizeAdmins, normalizeOwners, normalizePlugins, normalizeSkillPermissionRole, noticeAdmins, noticeFriends, noticeGroups, noticeOwners, path, prettyMs, profileSet, qs, randomId, randomInt, randomItem, randomItems, readMiokuConfig, readPackageJson, readPackageJsonSafe, registerPluginArtifacts, registerServiceConfig, registerStatusProvider, reloadMiokuConfig, removePluginMetadata, requireService, resetPluginMetadata, resetPluginRuntimeState, resolveCommand, resolveEntry, resolveLocalPluginEntry, resolveLocalPluginPath, rootLogger, runCommand, runCommandInherit, segment, sendMessage, _default as serviceManager, servicesRegistry, setBotCwd, setBuiltinPlugins, setPluginMetadata, setPluginRuntimeState, setService, setWritableConfig, start, startRuntime, string2argv, stringifyError, stripAnsi, text, toArray, toId, toUserId, unique, updateMiokuConfig, updateServiceConfig, uuid, version, wait, writePackageJson };
|
|
2631
|
+
export { type AIInstance, type AIInstanceInfo, type AIModelCapability, type AIModelDescriptor, type AIModelRole, type AIProtocol, type AIProviderConfig, type AIService, type AISkill, type AIThinkingLevel, type AITool, type AIUsageBotOption, type AIUsageBreakdown, type AIUsageContext, type AIUsageFinalization, type AIUsageRange, type AIUsageRecordQuery, type AIUsageRecordSummary, type AIUsageScope, type AIUsageSummary, AI_GEMINI_THINKING_LEVELS, AI_THINKING_LEVELS, type AccessAction, type AccessControlConfig, type AccessHook, type AccessRuleEntry, type AccessScopeConfig, Adapter, AdapterBotBase, AdapterBotMap, AdapterCandidate, AdapterContext, AdapterContextImpl, AdapterDefinition, AdapterEvent, AdapterFactoryOptions, AdapterGateway, AdapterInstanceStatus, AdapterRegistrationConflictError, AdapterReport, AdapterReportEntry, AdapterResource, AdapterResourceScope, AdapterStartResult, type AdapterStatus, type AdapterStatusStats, AnyFunc, ArchMap, Arrayable, type Attachment, AvatarSetRequest, Awaitable, BOT_CWD, BUILTIN_PLUGINS, Bot, BotAutoFilled, BotBase, BotConfigJson, BotContext, BotEvent, BotEventBase, BotHandler, BotLifecycleEvent, BotProvidedKeys, BotRegistry, BotStatus, BotStatusResult, BuildAdapterReportOptions, BuildStatusOptions, type BuiltinServiceRef, BusStats, ButtonOptions, CORE_PLUGINS, Capability, CapabilityHandler, CapabilityRegistry, CapabilityTarget, type ChatRuntime, type ChatRuntimeBaseOptions, type ChatRuntimeCollectedInfo, type ChatRuntimeGroupTarget, type ChatRuntimeInformationRequestOptions, type ChatRuntimeNoticeOptions, type ChatRuntimePrivateTarget, type ChatRuntimePromptInjection, type ChatRuntimeResult, type ChatRuntimeSource, ChromeUA, CommandCatalogItem, CommandDefinition, CommandExecutionContext, CommandHandler, CommandManager, CommandMatcher, type CommandRole, CommandShortcutOptions, type CompleteOptions, type CompleteResponse, type ConfigService, type ConsolaInstance, ContextOptions, ConversationGetHistoryRequest, CorrelationParticipant, CorrelationRecord, CorrelationStats, CreateCmdOptions, CreateDriverOptions, CreateRuntimeOptions, CronHandler, Driver, DriverShutdownError, Event, EventBase, EventBus, EventCorrelator, EventFactoryOptions, EventHandler, EventIdentity, EventKindOfRoute, type EventMap, EventObservation, ExtendedNapCat, ForwardNode, ForwardSendNode, ForwardSendOptions, ForwardSendRequest, Friend, FriendDeleteRequest, FriendGetInfoRequest, FriendGetListRequest, FriendInfo, Gettable, Group, GroupGetInfoRequest, GroupGetListRequest, GroupGetMembersRequest, GroupInfo, GroupLeaveRequest, GroupSetNameRequest, GroupSetPortraitRequest, GroupSetWholeBanRequest, HasMessage, type HelpService, HistoryMessage, HttpClient, HttpRequestError, HttpRequestOptions, HttpResponse, LifecycleEvent, LifecycleEventMap, LifecycleHandler, LifecycleListener, LoadedAdapterDefinition, LoadedPluginDefinition, type LogLevel, type Logger, type MarkdownScreenshotOptions, MatchHandler, MatchValue, MemberBanRequest, MemberGetInfoRequest, MemberInfo, MemberKickRequest, MemberPokeRequest, MemberSetAdminRequest, MemberSetCardRequest, MemberSetTitleRequest, type Message, MessageEvent, MessageGetForwardRequest, MessageGetRequest, MessageGetResult, type MessageInput, MessageRecallRequest, MessageSegment, MessageSegmentImpl, MessageSendRequest, type MessageTarget, MetaEvent, MiokuConfig, type MiokuContext, MiokuCoreServiceContrib, type MiokuPlugin, MiokuRuntime, type MiokuRuntimeConfig, type MiokuService, MiokuServices, MiokuStartOptions, type MiokuStatus, type MultimodalContentItem, type MultimodalMessage, Noop, NoticeEvent, NoticeOptions, PackageCandidate, PackageJson, type PackageJsonLike, PlatformId, PluginCandidate, PluginCleanup, type PluginHelp, PluginManager, type PluginMetadata, type PluginPackageConfig, type PluginStateRef, ProfileSetRequest, PureObject, RegisteredCommand, Registration, RegistrationFilter, ReplyArg, type ReplyOptions, RequestEvent, RouteEvent, type RunCommandResult, RuntimeAdapterState, RuntimeMiokuConfig, ScheduledTask, type ScreenshotOptions, type ScreenshotService, SenderInfo, type SentMessage, SerializedMessageSegment, ServiceFactory, ServiceManager, type ServiceMetadata, type ServiceRef, Services, type SessionToolDefinition, type SkillPermissionRole, type SpawnPlan, StartOptions, type StatusProvider, StatusProviderContext, StatusProviderTarget, SystemMap, TOOL_RESULT_FOLLOWUP_KEY, type TextMessage, type ToolCallRecord, type ToolResultFollowup, UnsupportedCapabilityError, WebSocketClient, WebSocketConnectOptions, WebSocketConnectTimeoutError, WebSocketConnection, type WebUIService, addService, applyLogLevel, asMessage, atOf, avatarGet, avatarSet, base64Decode, base64Encode, bindCapabilities, botConfig, botStatus, box, buildAdapterReport, buildMiokuStatus, buildRoutes, buildSpawnPlan, clamp, collectBotStats, colorize, colors, commandExists, connectedBotKey, connectedBots, conversationGetHistory, createCmd, createDB, createDefaultDriver, createFriendRef, createGroupRef, createImportContext, createMessage, createMiokuLogger, createRuntime, createStore, dayjs, dedent, defineAdapter, defineCapability, definePlugin, defineService, defineState, deleteServiceConfig, discoverAdapterCandidates, discoverPluginCandidates, displayAdapterId, ensureDataDir, filesize, filter, find, findLocalPlugins, formatAdapterReport, formatDuration, formatMiokuStatus, formatMiokuStatusFn, forwardSend, friendDelete, friendGetInfo, friendGetList, fs, getActiveCommandManager, getAllPluginRuntimeStates, getBuiltinPlugins, getConfigDir, getDataDir, getGTk, getPluginConfigDir, getPluginDataDir, getPluginMetadata, getPluginMetadataList, getPluginRuntimeState, getService, getServiceConfig, getServiceConfigDir, getServiceConfigs, getServiceDataDir, getTerminalInput, groupGetInfo, groupGetList, groupGetMembers, groupLeave, groupSetName, groupSetPortrait, groupSetWholeBan, hasEventRight, hasPluginState, hasRight, hasService, isAdapterEvent, isAdmin, isBoolean, isBotEvent, isDefined, isEventAdmin, isEventAdminConfigOnly, isEventGroupAdmin, isEventGroupOwner, isEventMaster, isEventOwner, isEventOwnerOrAdmin, isFunction, isMessage, isMessageEvent, isMetaEvent, isMiokuPlugin, isNoticeEvent, isNumber, isObject, isOwner, isOwnerOrAdmin, isRequestEvent, isSegment, isString, loadAdapterDefinition, loadLocalPlugin, loadNpmPlugin, localNum, localeDate, localeTime, rootLogger as logger, match, md5, memberBan, memberGetInfo, memberKick, memberPoke, memberSetAdmin, memberSetCard, memberSetTitle, messageGet, messageGetForward, messageRecall, messageSend, mriLib as mri, noNullish, normalizeAIThinkingLevel, normalizeAdmins, normalizeOwners, normalizePlugins, normalizeSkillPermissionRole, noticeAdmins, noticeFriends, noticeGroups, noticeOwners, path, prettyMs, profileSet, qs, randomId, randomInt, randomItem, randomItems, readMiokuConfig, readPackageJson, readPackageJsonSafe, registerPluginArtifacts, registerServiceConfig, registerStatusProvider, reloadMiokuConfig, removePluginMetadata, requireService, resetPluginMetadata, resetPluginRuntimeState, resolveCommand, resolveEntry, resolveLocalPluginEntry, resolveLocalPluginPath, rootLogger, runCommand, runCommandInherit, segment, sendMessage, _default as serviceManager, servicesRegistry, setActiveCommandManager, setBotCwd, setBuiltinPlugins, setPluginMetadata, setPluginRuntimeState, setService, setWritableConfig, start, startRuntime, string2argv, stringifyError, stripAnsi, text, toArray, toId, toUserId, unique, updateMiokuConfig, updateServiceConfig, uuid, version, wait, writePackageJson };
|
|
2463
2632
|
//# sourceMappingURL=index.d.ts.map
|