@isdk/ai-tool 0.3.0 → 0.5.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 (296) hide show
  1. package/dist/chunk-VIG2GB47.mjs +39 -1
  2. package/dist/chunk-VJ45JQBR.mjs +7829 -0
  3. package/dist/funcs.d.mts +3 -2
  4. package/dist/funcs.d.ts +3 -2
  5. package/dist/funcs.js +5156 -1
  6. package/dist/funcs.mjs +29 -1
  7. package/dist/index-Br-4ZYgE.d.mts +892 -0
  8. package/dist/index-Br-4ZYgE.d.ts +892 -0
  9. package/dist/index.d.mts +206 -238
  10. package/dist/index.d.ts +206 -238
  11. package/dist/index.js +8132 -1
  12. package/dist/index.mjs +476 -1
  13. package/dist/test/util.js +101 -1
  14. package/dist/test/util.mjs +30 -1
  15. package/package.json +31 -31
  16. package/dist/chunk-JHHFTTVE.mjs +0 -1
  17. package/dist/index-BC3GQn6-.d.mts +0 -488
  18. package/dist/index-BC3GQn6-.d.ts +0 -488
  19. package/docs/README.md +0 -250
  20. package/docs/_media/CONTRIBUTING.md +0 -18
  21. package/docs/_media/LICENSE-MIT +0 -22
  22. package/docs/classes/AbortError.md +0 -368
  23. package/docs/classes/AlreadyExistsError.md +0 -348
  24. package/docs/classes/BaseError.md +0 -359
  25. package/docs/classes/CancelableAbility.md +0 -379
  26. package/docs/classes/ClientTools.md +0 -2691
  27. package/docs/classes/CommonError.md +0 -377
  28. package/docs/classes/ConfigFile.md +0 -333
  29. package/docs/classes/EventClient.md +0 -3119
  30. package/docs/classes/EventServer.md +0 -3149
  31. package/docs/classes/EventToolFunc.md +0 -2533
  32. package/docs/classes/FStringPromptTemplate.md +0 -1150
  33. package/docs/classes/FewShotPromptTemplate.md +0 -1186
  34. package/docs/classes/GolangPromptTemplate.md +0 -1150
  35. package/docs/classes/HFEnvironment.md +0 -186
  36. package/docs/classes/HFInterpreter.md +0 -75
  37. package/docs/classes/HFTemplate.md +0 -67
  38. package/docs/classes/HfPromptTemplate.md +0 -1150
  39. package/docs/classes/IntSet.md +0 -216
  40. package/docs/classes/NotFoundError.md +0 -348
  41. package/docs/classes/NotImplementationError.md +0 -348
  42. package/docs/classes/PromptExampleSelector.md +0 -195
  43. package/docs/classes/PromptTemplate.md +0 -1079
  44. package/docs/classes/ReadableStreamError.md +0 -368
  45. package/docs/classes/ResClientTools.md +0 -2399
  46. package/docs/classes/ResServerTools.md +0 -2385
  47. package/docs/classes/SSEChannel.md +0 -270
  48. package/docs/classes/Semaphore.md +0 -177
  49. package/docs/classes/ServerTools.md +0 -2609
  50. package/docs/classes/TaskAbortController.md +0 -137
  51. package/docs/classes/ToolFunc.md +0 -2147
  52. package/docs/classes/YamlTypeBaseObject.md +0 -29
  53. package/docs/enumerations/AsyncFeatureBits.md +0 -37
  54. package/docs/enumerations/AsyncFeatures.md +0 -37
  55. package/docs/enumerations/ErrorCode.md +0 -217
  56. package/docs/enumerations/HashAlgorithm.md +0 -117
  57. package/docs/functions/AIArgProcessor.md +0 -27
  58. package/docs/functions/AIStream.md +0 -50
  59. package/docs/functions/ChoiceArgProcessor.md +0 -27
  60. package/docs/functions/RateLimit.md +0 -33
  61. package/docs/functions/TemplateArgProcessor.md +0 -27
  62. package/docs/functions/backendEventable.md +0 -23
  63. package/docs/functions/canonicalize.md +0 -21
  64. package/docs/functions/completeSentences.md +0 -23
  65. package/docs/functions/concatText.md +0 -23
  66. package/docs/functions/countLLMTokens.md +0 -23
  67. package/docs/functions/countRegexMatches.md +0 -33
  68. package/docs/functions/createAbilityInjector.md +0 -87
  69. package/docs/functions/createCallbacksTransformer.md +0 -49
  70. package/docs/functions/createEmptyReadableStream.md +0 -23
  71. package/docs/functions/createEndWithRepetitionDetector.md +0 -29
  72. package/docs/functions/createError.md +0 -35
  73. package/docs/functions/createEventStreamTransformer.md +0 -33
  74. package/docs/functions/createHfValueFunc.md +0 -29
  75. package/docs/functions/createLRUCache.md +0 -23
  76. package/docs/functions/createYamlObjectTag.md +0 -23
  77. package/docs/functions/dateToText.md +0 -23
  78. package/docs/functions/decodeCharset.md +0 -23
  79. package/docs/functions/detectCharset.md +0 -23
  80. package/docs/functions/encodeLLMTokens.md +0 -23
  81. package/docs/functions/expandEnv.md +0 -40
  82. package/docs/functions/expandObjEnv.md +0 -54
  83. package/docs/functions/extNameLevel.md +0 -43
  84. package/docs/functions/fileIsExists.md +0 -34
  85. package/docs/functions/filenameReservedRegex.md +0 -22
  86. package/docs/functions/filterValidFnScope.md +0 -21
  87. package/docs/functions/findIndexNonEmptyFrom.md +0 -23
  88. package/docs/functions/findPort.md +0 -23
  89. package/docs/functions/formatISO.md +0 -71
  90. package/docs/functions/formatTextWithSpace.md +0 -59
  91. package/docs/functions/getAllEnumKeys.md +0 -31
  92. package/docs/functions/getConfigFileNames.md +0 -23
  93. package/docs/functions/getConfigs.md +0 -23
  94. package/docs/functions/getFileMetaInfo.md +0 -21
  95. package/docs/functions/getHashAlgoBySize.md +0 -21
  96. package/docs/functions/getKeysPath.md +0 -38
  97. package/docs/functions/getLLMTokenizer.md +0 -21
  98. package/docs/functions/getMultiLevelExtname.md +0 -31
  99. package/docs/functions/getPackageDir.md +0 -39
  100. package/docs/functions/getRealFilepath.md +0 -34
  101. package/docs/functions/getResponseErrorReadableStream.md +0 -21
  102. package/docs/functions/hasDirectoryIn.md +0 -38
  103. package/docs/functions/hashFile.md +0 -23
  104. package/docs/functions/hashStream.md +0 -23
  105. package/docs/functions/hfParse.md +0 -24
  106. package/docs/functions/hfTokenize.md +0 -25
  107. package/docs/functions/interpolateEnv.md +0 -25
  108. package/docs/functions/interpolateFString.md +0 -27
  109. package/docs/functions/interpolateGolangTemplate.md +0 -31
  110. package/docs/functions/isLangUsingSpaces.md +0 -21
  111. package/docs/functions/isListItemString.md +0 -21
  112. package/docs/functions/isModelNameMatched.md +0 -45
  113. package/docs/functions/isPunctuationChar.md +0 -36
  114. package/docs/functions/isRegExp.md +0 -21
  115. package/docs/functions/isSectionString.md +0 -23
  116. package/docs/functions/isSentenceEnding.md +0 -21
  117. package/docs/functions/isSepLineString.md +0 -21
  118. package/docs/functions/isSubdirectory.md +0 -39
  119. package/docs/functions/isTitleString.md +0 -23
  120. package/docs/functions/isValidFilename.md +0 -38
  121. package/docs/functions/isValidFilepath.md +0 -27
  122. package/docs/functions/isWebStream.md +0 -21
  123. package/docs/functions/jsonFilterToWhere.md +0 -45
  124. package/docs/functions/jsonToMarkdownStr.md +0 -31
  125. package/docs/functions/loadFileFromPaths.md +0 -54
  126. package/docs/functions/loadTextFromPaths.md +0 -29
  127. package/docs/functions/lrucache.md +0 -29
  128. package/docs/functions/makeToolFuncCancelable.md +0 -23
  129. package/docs/functions/matchUrlProtocol.md +0 -48
  130. package/docs/functions/memoize.md +0 -27
  131. package/docs/functions/messagesToText.md +0 -21
  132. package/docs/functions/paramsSizeToScaleStr.md +0 -32
  133. package/docs/functions/parseCommand.md +0 -33
  134. package/docs/functions/parseDateFormat.md +0 -360
  135. package/docs/functions/parseFString.md +0 -26
  136. package/docs/functions/parseISO.md +0 -72
  137. package/docs/functions/parseJsJson.md +0 -38
  138. package/docs/functions/parseJsJsonSimpleSync.md +0 -23
  139. package/docs/functions/parseObjectArgInfo.md +0 -27
  140. package/docs/functions/parseObjectArgumentInfos.md +0 -25
  141. package/docs/functions/parseObjectArguments.md +0 -68
  142. package/docs/functions/parseObjectArgumentsAsArgInfos.md +0 -42
  143. package/docs/functions/parseYaml.md +0 -21
  144. package/docs/functions/quoteStr.md +0 -21
  145. package/docs/functions/reControlCharsRegex.md +0 -21
  146. package/docs/functions/readFilenamesRecursiveSync.md +0 -47
  147. package/docs/functions/readTextFileChunks.md +0 -51
  148. package/docs/functions/readTextFileChunksEx.md +0 -23
  149. package/docs/functions/readableFromAsyncIterable.md +0 -28
  150. package/docs/functions/registerCoreTools.md +0 -17
  151. package/docs/functions/registerYamlTag.md +0 -21
  152. package/docs/functions/removeMarkdownBold.md +0 -23
  153. package/docs/functions/removeMarkdownBoldAndItalic.md +0 -23
  154. package/docs/functions/removeMarkdownItalic.md +0 -23
  155. package/docs/functions/replaceWithPlaceholder.md +0 -41
  156. package/docs/functions/restoreFromPlacehoders.md +0 -45
  157. package/docs/functions/sanitizeFilename.md +0 -37
  158. package/docs/functions/sanitizeFilepath.md +0 -31
  159. package/docs/functions/saveConfigFile.md +0 -25
  160. package/docs/functions/scaleStrToParamsSize.md +0 -27
  161. package/docs/functions/simplifyObjectArguments.md +0 -21
  162. package/docs/functions/sortedValues.md +0 -25
  163. package/docs/functions/splitChunks.md +0 -23
  164. package/docs/functions/splitParagraph.md +0 -32
  165. package/docs/functions/splitSentence.md +0 -37
  166. package/docs/functions/stringifyYaml.md +0 -21
  167. package/docs/functions/stripConsoleColor.md +0 -21
  168. package/docs/functions/textToDate.md +0 -23
  169. package/docs/functions/throwError.md +0 -37
  170. package/docs/functions/toDate.md +0 -76
  171. package/docs/functions/toDateTime.md +0 -21
  172. package/docs/functions/toRegExp.md +0 -34
  173. package/docs/functions/trimStartOfStreamHelper.md +0 -41
  174. package/docs/functions/truncTo.md +0 -47
  175. package/docs/functions/truncateByToken.md +0 -23
  176. package/docs/functions/truncateToTokenLimit.md +0 -44
  177. package/docs/functions/truncateToTokenLimitEx.md +0 -23
  178. package/docs/functions/uuid.md +0 -23
  179. package/docs/functions/uuidParse.md +0 -21
  180. package/docs/functions/uuidStringify.md +0 -23
  181. package/docs/functions/uuidValidate.md +0 -21
  182. package/docs/functions/uuidVersion.md +0 -21
  183. package/docs/functions/uuidv1.md +0 -47
  184. package/docs/functions/uuidv4.md +0 -47
  185. package/docs/functions/uuidv5.md +0 -51
  186. package/docs/functions/wait.md +0 -21
  187. package/docs/functions/xxhash.md +0 -25
  188. package/docs/functions/xxhash32.md +0 -23
  189. package/docs/functions/xxhash64.md +0 -23
  190. package/docs/functions/xxhashAsStr.md +0 -25
  191. package/docs/globals.md +0 -285
  192. package/docs/interfaces/AIChatAssistantMessageParam.md +0 -117
  193. package/docs/interfaces/AIChatContentPartImage.md +0 -31
  194. package/docs/interfaces/AIChatContentPartText.md +0 -27
  195. package/docs/interfaces/AIChatMessageParamBase.md +0 -58
  196. package/docs/interfaces/AIChatMessageToolCall.md +0 -45
  197. package/docs/interfaces/AIChatSystemMessageParam.md +0 -87
  198. package/docs/interfaces/AIChatToolMessageParam.md +0 -97
  199. package/docs/interfaces/AIChatUserMessageParam.md +0 -127
  200. package/docs/interfaces/AIChoiceConfig.md +0 -77
  201. package/docs/interfaces/AIResult.md +0 -73
  202. package/docs/interfaces/AIStreamParser.md +0 -39
  203. package/docs/interfaces/AIStreamParserOptions.md +0 -21
  204. package/docs/interfaces/BaseFunc.md +0 -155
  205. package/docs/interfaces/BaseFuncItem.md +0 -103
  206. package/docs/interfaces/CancelableAbilityOptions.md +0 -115
  207. package/docs/interfaces/ClientFuncItem.md +0 -179
  208. package/docs/interfaces/DotenvExpandOptions.md +0 -47
  209. package/docs/interfaces/DotenvExpandOutput.md +0 -27
  210. package/docs/interfaces/DotenvParseInput.md +0 -11
  211. package/docs/interfaces/DotenvParseOutput.md +0 -11
  212. package/docs/interfaces/DotenvPopulateInput.md +0 -11
  213. package/docs/interfaces/EventClientFuncParams.md +0 -55
  214. package/docs/interfaces/EventServerFuncParams.md +0 -71
  215. package/docs/interfaces/FewShotPromptTemplateOptions.md +0 -163
  216. package/docs/interfaces/FuncItem.md +0 -143
  217. package/docs/interfaces/FuncParam.md +0 -71
  218. package/docs/interfaces/FuncParams.md +0 -11
  219. package/docs/interfaces/Funcs.md +0 -11
  220. package/docs/interfaces/HashAlgoParams.md +0 -37
  221. package/docs/interfaces/IFileMetaInfo.md +0 -77
  222. package/docs/interfaces/IReadTextFileChunksOptions.md +0 -157
  223. package/docs/interfaces/ITruncateToTokenLimitOptions.md +0 -111
  224. package/docs/interfaces/JsonFilter.md +0 -11
  225. package/docs/interfaces/ParseObjectArgumentOptions.md +0 -97
  226. package/docs/interfaces/PromptExampleSelectorOptions.md +0 -36
  227. package/docs/interfaces/PromptTemplateOptions.md +0 -75
  228. package/docs/interfaces/RemoteFuncItem.md +0 -168
  229. package/docs/interfaces/ReplacePlacehoderOptions.md +0 -47
  230. package/docs/interfaces/ResClientFuncParams.md +0 -35
  231. package/docs/interfaces/ResServerFuncParams.md +0 -73
  232. package/docs/interfaces/SanitizeFilenameOptions.md +0 -27
  233. package/docs/interfaces/SectionStringOptions.md +0 -27
  234. package/docs/interfaces/ServerFuncItem.md +0 -189
  235. package/docs/interfaces/ServerFuncParams.md +0 -37
  236. package/docs/interfaces/SplitSentenceOptions.md +0 -47
  237. package/docs/interfaces/StreamCallbacksAndOptions.md +0 -95
  238. package/docs/interfaces/TaskAbortControllers.md +0 -11
  239. package/docs/interfaces/TaskPromise.md +0 -138
  240. package/docs/interfaces/ToolFuncPackage.md +0 -49
  241. package/docs/type-aliases/AIChatContentPart.md +0 -13
  242. package/docs/type-aliases/AIChatMessageParam.md +0 -13
  243. package/docs/type-aliases/AIChatRole.md +0 -13
  244. package/docs/type-aliases/AIMessageType.md +0 -13
  245. package/docs/type-aliases/AIModelNameRule.md +0 -13
  246. package/docs/type-aliases/AIModelNameRuleFn.md +0 -21
  247. package/docs/type-aliases/AIModelNameRules.md +0 -13
  248. package/docs/type-aliases/AITextGenerationFinishReason.md +0 -13
  249. package/docs/type-aliases/ActionName.md +0 -13
  250. package/docs/type-aliases/AsyncTaskId.md +0 -13
  251. package/docs/type-aliases/EventErrorListenerFn.md +0 -27
  252. package/docs/type-aliases/EventListenerFn.md +0 -25
  253. package/docs/type-aliases/FStringPromptTemplateNode.md +0 -16
  254. package/docs/type-aliases/FuncParamType.md +0 -13
  255. package/docs/type-aliases/PromptExamples.md +0 -17
  256. package/docs/type-aliases/PromptTemplateType.md +0 -13
  257. package/docs/type-aliases/PromptType.md +0 -13
  258. package/docs/type-aliases/TFunc.md +0 -23
  259. package/docs/variables/AIChatRoles.md +0 -13
  260. package/docs/variables/AIMessageTypes.md +0 -13
  261. package/docs/variables/AITextGenerationFinishReasons.md +0 -13
  262. package/docs/variables/AbortErrorCode.md +0 -13
  263. package/docs/variables/ActionNames.md +0 -13
  264. package/docs/variables/AlreadyExistsErrorCode.md +0 -13
  265. package/docs/variables/ClientToolFuncSchema.md +0 -87
  266. package/docs/variables/DefaultAsyncSemaphoreCapacity.md +0 -13
  267. package/docs/variables/EventBusName.md +0 -13
  268. package/docs/variables/EventName.md +0 -13
  269. package/docs/variables/FilenameReservedRegex.md +0 -16
  270. package/docs/variables/HFBuiltins.md +0 -92
  271. package/docs/variables/InternalErrorCode.md +0 -13
  272. package/docs/variables/LLM_TOKENIZER_NAMES.md +0 -83
  273. package/docs/variables/LLM_TOKENIZER_NAMES_MAP.md +0 -13
  274. package/docs/variables/NotFoundErrorCode.md +0 -13
  275. package/docs/variables/NotImplementedErrorCode.md +0 -13
  276. package/docs/variables/PASSING_SCORE.md +0 -13
  277. package/docs/variables/PromptTemplateTypes.md +0 -13
  278. package/docs/variables/PromptTypes.md +0 -16
  279. package/docs/variables/RStreamErrCode.md +0 -13
  280. package/docs/variables/RemoteToolFuncSchema.md +0 -87
  281. package/docs/variables/ResponseRStreamErrCode.md +0 -13
  282. package/docs/variables/SSEChannelAlreadyClosedErrCode.md +0 -13
  283. package/docs/variables/ServerToolFuncSchema.md +0 -87
  284. package/docs/variables/ToolAsyncCancelableBit.md +0 -13
  285. package/docs/variables/ToolAsyncMultiTaskBit.md +0 -13
  286. package/docs/variables/ToolAsyncPriorityBit.md +0 -13
  287. package/docs/variables/ToolFuncSchema.md +0 -125
  288. package/docs/variables/WindowsReservedNameRegex.md +0 -15
  289. package/docs/variables/base32768.md +0 -13
  290. package/docs/variables/defaultTemplateFormat.md +0 -13
  291. package/docs/variables/event.md +0 -13
  292. package/docs/variables/eventClient.md +0 -13
  293. package/docs/variables/eventServer.md +0 -13
  294. package/docs/variables/lrucache.md +0 -13
  295. package/docs/variables/mimeType.md +0 -13
  296. package/docs/variables/uuidNIL.md +0 -13
package/docs/README.md DELETED
@@ -1,250 +0,0 @@
1
- **@isdk/ai-tool** • [**Docs**](globals.md)
2
-
3
- ***
4
-
5
- # @isdk/ai-tool
6
-
7
- A library for abstracting AI utility functions (`ToolFunc`), providing a series of convenient helper functions.
8
-
9
- **Note:** All `ToolFunc` parameters are object-based, not positional.
10
-
11
- ## Installation
12
-
13
- 1. Install the package:
14
-
15
- ```bash
16
- npm install @isdk/ai-tool
17
- ```
18
-
19
- ## Usage
20
-
21
- ## ToolFunc
22
-
23
- Register ordinary functions as `ToolFunc`.
24
-
25
- ### Example
26
-
27
- ```ts
28
- import { ToolFunc } from '@isdk/ai-tool';
29
-
30
- // Register a function directly
31
- ToolFunc.register({
32
- name: 'add',
33
- description: 'Return the sum of a and b',
34
- params: { a: { type: 'number' }, b: { type: 'number' } },
35
- result: 'number',
36
- func: ({ a, b }: { a: number; b: number }) => a + b,
37
- });
38
-
39
- console.log('Result:', ToolFunc.runSync('add', { a: 1, b: 2 }));
40
- // Result: 3
41
- ```
42
-
43
- Properties
44
-
45
- * `func`: The main body of the tool function.
46
- * `name`: Name of the tool function.
47
- * `params`: Parameter schema for the tool function.
48
- * `result`: Return type of the tool function.
49
- * `scope`: Scope of the function.
50
- * `description`: Description of the tool function.
51
- * `setup`: Executed during the construction of the ToolFunc instance.
52
- * `depends`: Dependencies on other ToolFunc instances.
53
-
54
- ### ServerTools (extends ToolFunc)
55
-
56
- Server-side AI tool functions.
57
-
58
- **Features**
59
-
60
- * Allows exporting the function body as a string for local execution.
61
- * Provides a static `toJSON()` method to export all service API definitions.
62
-
63
- ```ts
64
- interface ServerFuncItem extends FuncItem {
65
- apiRoot?: string
66
- /**
67
- * API request method, can be 'get' or 'post'
68
- */
69
- action?: 'get'|'post'
70
- // Options for the Node.js fetch function
71
- fetchOptions?: any
72
- // Whether to allow exporting the func body itself, default to false
73
- allowExportFunc?: boolean
74
- }
75
- ```
76
-
77
- Usage: Parameters are sent via query string for GET requests and in the body for POST requests.
78
-
79
- ### ClientTools (extends ToolFunc)
80
-
81
- Used to call remote AI tool functions (ServerTools).
82
-
83
- **Features**
84
-
85
- * Supports loading all remote calls with static loadFromSync(items) and static async loadFrom().
86
- * Prioritizes local execution over remote calls.
87
-
88
- ```ts
89
- interface ClientFuncItem extends FuncItem {
90
- apiRoot?: string
91
- action?: 'get'|'post'
92
- fetchOptions?: any
93
- }
94
- ```
95
-
96
- ### ResServerTools
97
-
98
- Resource-based server tools, where resources are named ToolFunc.
99
-
100
- #### Methods
101
-
102
- * `GET /api/res/:id`: Get resource.
103
- * `GET /api/res`: List resources.
104
- * `POST /api/res`: Create resource.
105
- * `PUT /api/res/:id`: Update resource.
106
- * `DELETE /api/res/:id`: Delete resource.
107
-
108
- #### Custom Methods
109
-
110
- Methods prefixed with `$` are custom resource methods, accessible via `POST`.
111
-
112
- Example
113
-
114
- ```ts
115
- class TestResTool extends ResServerTools {
116
- items: any = {}
117
- params: FuncParams = {
118
- 'id': {type: 'number'},
119
- 'val': {type: 'any'},
120
- }
121
- $customMethod({id}: ResServerFuncParams) {
122
- if (id) {
123
- const item = this.items[id]
124
- if (!item) {
125
- throw new NotFoundError(id, 'res')
126
- }
127
- return {name: 'customMethod', id, item}
128
- }
129
- }
130
- get({id}: ResServerFuncParams) {
131
- if (id) {
132
- const item = this.items[id]
133
- if (!item) {
134
- throw new NotFoundError(id, 'res')
135
- }
136
- return item
137
- }
138
- }
139
- post({id, val}: ResServerFuncParams) {
140
- if (id !== undefined && val !== undefined) {
141
- this.items[id] = val
142
- return {id}
143
- } else {
144
- throwError('id or val is undefined')
145
- }
146
- }
147
- list() {
148
- return Object.keys(this.items)
149
- }
150
- delete({id}: ResServerFuncParams) {
151
- if (id) {
152
- const item = this.items[id]
153
- if (item === undefined) {
154
- throw new NotFoundError(id, 'res')
155
- }
156
- delete this.items[id]
157
- return {id}
158
- }
159
- }
160
- }
161
- ResServerTools.apiRoot = apiRoot
162
- const res = new TestResTool('res')
163
- res.register()
164
- ```
165
-
166
- ### ResClientTools
167
-
168
- Resource-based client tools that generate methods based on ServerTools agreements.
169
-
170
- Example
171
-
172
- ```ts
173
- ResClientTools.apiRoot = apiRoot
174
- await ResClientTools.loadFrom()
175
-
176
- const resFunc = ResClientTools.getFunc(funcName)
177
- if (resFunc) {
178
- let result = await res.post({id: '...', val: '...'})
179
- result = await res.put({id: '...', val: '...'})
180
- result = await res.get({id: '...'})
181
- result = await res.customMethod({id: '...'})
182
- }
183
- ```
184
-
185
- ### SSE (Server-Sent Events)
186
-
187
- Endpoints
188
-
189
- * `GET /api/event`: List server event channel (stream).
190
- * `POST /api/event`: Subscribe to server events.
191
- * `DELETE /api/event`: Unsubscribe from server events.
192
- * `PUT /api/event`: Publish messages to server events.
193
-
194
- ### EventClient
195
-
196
- The `EventClient` component facilitates communication between the client and server through Server-Sent Events (SSE). Its primary responsibilities include subscribing to server events and publishing messages to the server.
197
-
198
- #### Key Features
199
-
200
- - **Subscription**: Subscribes to server events and forwards them to the local client's event bus.
201
- - **Publication**: Publishes messages to the server.
202
-
203
- #### EventClient Methods
204
-
205
- - `initEventSource(events)`: Specifies which events to receive from the server. If `events` is not provided, all events are received.
206
- - `subscribe(events)`: Subscribes to specified server events and forwards them to the local event bus.
207
- - Note: It's important to distinguish between local and server-originated messages. Server messages that were previously forwarded from local events should not be re-forwarded to avoid infinite loops.
208
- - `unsubscribe(events)`: Cancels subscriptions to specified server events.
209
- - `forwardEvent(events)`: Forwards specific local events to the server.
210
- - `unforwardEvent(events)`: Stops forwarding specific local events to the server.
211
-
212
- #### Considerations
213
-
214
- - Local events that need to be forwarded to the server can be managed independently through the `forwardEvent` method.
215
- - Event handling logic should be decoupled from the core functionality of `ToolFunc` to maintain flexibility and separation of concerns.
216
-
217
- ### EventServer
218
-
219
- The `EventServer` component manages server-side event processing, including publishing and subscribing to events.
220
-
221
- **Key Features**
222
-
223
- - **Publishing**: Publishes events to clients via SSE.
224
- - **Subscribing**: Manages subscriptions to events on the server side.
225
-
226
- **Actions**
227
-
228
- - `pub`: Publishes an SSE event.
229
- - `sub`: Subscribes to server events.
230
- - `unsub`: Unsubscribes from server events.
231
-
232
- **Usage**
233
-
234
- - Functions without an `act` or with only `events` specified are used for server-side event handling.
235
- - Functions with an `act` define specific actions such as publishing, subscribing, or unsubscribing from events.
236
-
237
- ## Contribution
238
-
239
- If you would like to contribute to the project, please read the [CONTRIBUTING.md](_media/CONTRIBUTING.md) file for guidelines on how to get started.
240
-
241
- ## License
242
-
243
- The project is licensed under the MIT License. See the [LICENSE-MIT](_media/LICENSE-MIT) file for more details.
244
-
245
- ## Credit
246
-
247
- * [@huggingface/jinja](https://github.com/huggingface/huggingface.js)
248
- * [eventsource-parser](https://github.com/rexxars/eventsource-parser)
249
- * [async-sema](https://github.com/vercel/async-sema)
250
- * [modelfusion](https://github.com/vercel/modelfusion)
@@ -1,18 +0,0 @@
1
- # Contributing
2
-
3
- Please feel free to file GitHub Issues or propose Pull Requests. We're always happy to discuss improvements to this library!
4
-
5
- ## Testing
6
-
7
- ```shell
8
- npm test
9
- ```
10
-
11
- ## Releasing
12
-
13
- Releases are supposed to be done from master, version bumping is automated through [`standard-version`](https://github.com/absolute-version/commit-and-tag-version):
14
-
15
- ```shell
16
- npm run release -- --dry-run # verify output manually
17
- npm run release # follow the instructions from the output of this command
18
- ```
@@ -1,22 +0,0 @@
1
- Copyright (c) 2023 Riceball LEE
2
-
3
- Permission is hereby granted, free of charge, to any person
4
- obtaining a copy of this software and associated documentation
5
- files (the "Software"), to deal in the Software without
6
- restriction, including without limitation the rights to use,
7
- copy, modify, merge, publish, distribute, sublicense, and/or sell
8
- copies of the Software, and to permit persons to whom the
9
- Software is furnished to do so, subject to the following
10
- conditions:
11
-
12
- The above copyright notice and this permission notice shall be
13
- included in all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
17
- OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
19
- HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
20
- WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
22
- OTHER DEALINGS IN THE SOFTWARE.
@@ -1,368 +0,0 @@
1
- [**@isdk/ai-tool**](../README.md) • **Docs**
2
-
3
- ***
4
-
5
- [@isdk/ai-tool](../globals.md) / AbortError
6
-
7
- # Class: AbortError
8
-
9
- BaseError class that extends the Error class.
10
-
11
- ## Example
12
-
13
- ```ts
14
- // Create a custom error
15
- class CustomError extends BaseError {
16
- static code = 'customError';
17
- constructor(message: string) {
18
- super(message);
19
- }
20
- }
21
-
22
- // Throw the custom error
23
- throw new CustomError('This is a custom error');
24
- ```
25
-
26
- ## Description
27
-
28
- This class is used to create custom errors that extend the built-in Error class. It provides a way to define custom error codes and additional data associated with the error.
29
-
30
- ## Method
31
-
32
- toJSON - Returns a JSON representation of the error.
33
-
34
- ## Method
35
-
36
- fromJSON - Creates a new BaseError instance from a JSON representation.
37
-
38
- ## Extends
39
-
40
- - [`CommonError`](CommonError.md)
41
-
42
- ## Constructors
43
-
44
- ### new AbortError()
45
-
46
- > **new AbortError**(`what`?, `name`?): [`AbortError`](AbortError.md)
47
-
48
- #### Parameters
49
-
50
- • **what?**: `string`
51
-
52
- • **name?**: `string` \| `Record`\<`string`, `any`\>
53
-
54
- #### Returns
55
-
56
- [`AbortError`](AbortError.md)
57
-
58
- #### Overrides
59
-
60
- [`CommonError`](CommonError.md).[`constructor`](CommonError.md#constructors)
61
-
62
- #### Defined in
63
-
64
- node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:144
65
-
66
- ## Properties
67
-
68
- ### caller
69
-
70
- > **caller**: `string`
71
-
72
- The name of the function that threw the error.
73
-
74
- #### Inherited from
75
-
76
- [`CommonError`](CommonError.md).[`caller`](CommonError.md#caller)
77
-
78
- #### Defined in
79
-
80
- node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:63
81
-
82
- ***
83
-
84
- ### cause?
85
-
86
- > `optional` **cause**: `unknown`
87
-
88
- #### Inherited from
89
-
90
- [`CommonError`](CommonError.md).[`cause`](CommonError.md#cause)
91
-
92
- #### Defined in
93
-
94
- node\_modules/.pnpm/typescript@5.6.3/node\_modules/typescript/lib/lib.es2022.error.d.ts:24
95
-
96
- ***
97
-
98
- ### code
99
-
100
- > **code**: `ErrorCodeType`
101
-
102
- the error code
103
-
104
- #### Inherited from
105
-
106
- [`CommonError`](CommonError.md).[`code`](CommonError.md#code)
107
-
108
- #### Defined in
109
-
110
- node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:64
111
-
112
- ***
113
-
114
- ### data?
115
-
116
- > `optional` **data**: `any`
117
-
118
- Additional data associated with the error.
119
-
120
- #### Inherited from
121
-
122
- [`CommonError`](CommonError.md).[`data`](CommonError.md#data)
123
-
124
- #### Defined in
125
-
126
- node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:65
127
-
128
- ***
129
-
130
- ### message
131
-
132
- > **message**: `string`
133
-
134
- #### Inherited from
135
-
136
- [`CommonError`](CommonError.md).[`message`](CommonError.md#message)
137
-
138
- #### Defined in
139
-
140
- node\_modules/.pnpm/typescript@5.6.3/node\_modules/typescript/lib/lib.es5.d.ts:1077
141
-
142
- ***
143
-
144
- ### name
145
-
146
- > **name**: `string`
147
-
148
- #### Inherited from
149
-
150
- [`CommonError`](CommonError.md).[`name`](CommonError.md#name)
151
-
152
- #### Defined in
153
-
154
- node\_modules/.pnpm/typescript@5.6.3/node\_modules/typescript/lib/lib.es5.d.ts:1076
155
-
156
- ***
157
-
158
- ### stack?
159
-
160
- > `optional` **stack**: `string`
161
-
162
- #### Inherited from
163
-
164
- [`CommonError`](CommonError.md).[`stack`](CommonError.md#stack)
165
-
166
- #### Defined in
167
-
168
- node\_modules/.pnpm/typescript@5.6.3/node\_modules/typescript/lib/lib.es5.d.ts:1078
169
-
170
- ***
171
-
172
- ### code
173
-
174
- > `static` **code**: [`ErrorCode`](../enumerations/ErrorCode.md)
175
-
176
- The error code associated with the error.
177
-
178
- #### Overrides
179
-
180
- [`CommonError`](CommonError.md).[`code`](CommonError.md#code-1)
181
-
182
- #### Defined in
183
-
184
- node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:143
185
-
186
- ***
187
-
188
- ### prepareStackTrace()?
189
-
190
- > `static` `optional` **prepareStackTrace**: (`err`, `stackTraces`) => `any`
191
-
192
- Optional override for formatting stack traces
193
-
194
- #### Parameters
195
-
196
- • **err**: `Error`
197
-
198
- • **stackTraces**: `CallSite`[]
199
-
200
- #### Returns
201
-
202
- `any`
203
-
204
- #### See
205
-
206
- https://v8.dev/docs/stack-trace-api#customizing-stack-traces
207
-
208
- #### Inherited from
209
-
210
- [`CommonError`](CommonError.md).[`prepareStackTrace`](CommonError.md#preparestacktrace)
211
-
212
- #### Defined in
213
-
214
- node\_modules/.pnpm/@types+node@22.7.6/node\_modules/@types/node/globals.d.ts:143
215
-
216
- ***
217
-
218
- ### stackTraceLimit
219
-
220
- > `static` **stackTraceLimit**: `number`
221
-
222
- #### Inherited from
223
-
224
- [`CommonError`](CommonError.md).[`stackTraceLimit`](CommonError.md#stacktracelimit)
225
-
226
- #### Defined in
227
-
228
- node\_modules/.pnpm/@types+node@22.7.6/node\_modules/@types/node/globals.d.ts:145
229
-
230
- ## Methods
231
-
232
- ### fromJSON()
233
-
234
- > **fromJSON**(`json`): [`BaseError`](BaseError.md)
235
-
236
- Creates a new BaseError instance from a JSON representation.
237
-
238
- #### Parameters
239
-
240
- • **json**: `any`
241
-
242
- A JSON representation of the error.
243
-
244
- #### Returns
245
-
246
- [`BaseError`](BaseError.md)
247
-
248
- A new BaseError instance.
249
-
250
- #### Inherited from
251
-
252
- [`CommonError`](CommonError.md).[`fromJSON`](CommonError.md#fromjson)
253
-
254
- #### Defined in
255
-
256
- node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:93
257
-
258
- ***
259
-
260
- ### toJSON()
261
-
262
- > **toJSON**(): `any`
263
-
264
- Returns a JSON representation of the error.
265
-
266
- #### Returns
267
-
268
- `any`
269
-
270
- A JSON representation of the error.
271
-
272
- #### Inherited from
273
-
274
- [`CommonError`](CommonError.md).[`toJSON`](CommonError.md#tojson)
275
-
276
- #### Defined in
277
-
278
- node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:86
279
-
280
- ***
281
-
282
- ### captureStackTrace()
283
-
284
- > `static` **captureStackTrace**(`targetObject`, `constructorOpt`?): `void`
285
-
286
- Create .stack property on a target object
287
-
288
- #### Parameters
289
-
290
- • **targetObject**: `object`
291
-
292
- • **constructorOpt?**: `Function`
293
-
294
- #### Returns
295
-
296
- `void`
297
-
298
- #### Inherited from
299
-
300
- [`CommonError`](CommonError.md).[`captureStackTrace`](CommonError.md#capturestacktrace)
301
-
302
- #### Defined in
303
-
304
- node\_modules/.pnpm/@types+node@22.7.6/node\_modules/@types/node/globals.d.ts:136
305
-
306
- ***
307
-
308
- ### create()
309
-
310
- > `static` **create**(`__namedParameters`): [`CommonError`](CommonError.md)
311
-
312
- #### Parameters
313
-
314
- • **\_\_namedParameters**
315
-
316
- • **\_\_namedParameters.code?**: `string` \| `number`
317
-
318
- • **\_\_namedParameters.data?**: `any`
319
-
320
- • **\_\_namedParameters.error**: `string`
321
-
322
- • **\_\_namedParameters.name?**: `string`
323
-
324
- #### Returns
325
-
326
- [`CommonError`](CommonError.md)
327
-
328
- #### Inherited from
329
-
330
- [`CommonError`](CommonError.md).[`create`](CommonError.md#create)
331
-
332
- #### Defined in
333
-
334
- node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:96
335
-
336
- ***
337
-
338
- ### createErrorClass()
339
-
340
- > `static` **createErrorClass**(`aType`, `aErrorCode`?, `ParentErrorClass`?): *typeof* [`BaseError`](BaseError.md)
341
-
342
- Create an Error Class
343
-
344
- #### Parameters
345
-
346
- • **aType**: `string`
347
-
348
- the error type(class) name
349
-
350
- • **aErrorCode?**: `string` \| `number` \| *typeof* `AbstractError`
351
-
352
- • **ParentErrorClass?**: *typeof* [`BaseError`](BaseError.md)
353
-
354
- the parent error class. defaults to AbstractError
355
-
356
- #### Returns
357
-
358
- *typeof* [`BaseError`](BaseError.md)
359
-
360
- the new Error Class
361
-
362
- #### Inherited from
363
-
364
- [`CommonError`](CommonError.md).[`createErrorClass`](CommonError.md#createerrorclass)
365
-
366
- #### Defined in
367
-
368
- node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:66