@isdk/ai-tool 0.6.0 → 0.7.1

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 (473) hide show
  1. package/README.cn.md +103 -237
  2. package/README.md +101 -186
  3. package/dist/chunk-4XRPAC7C.mjs +1 -0
  4. package/dist/chunk-VIG2GB47.mjs +1 -1
  5. package/dist/funcs.d.mts +1 -1
  6. package/dist/funcs.d.ts +1 -1
  7. package/dist/funcs.js +1 -1
  8. package/dist/funcs.mjs +1 -1
  9. package/dist/index-DEUnmyUq.d.mts +1792 -0
  10. package/dist/index-DEUnmyUq.d.ts +1792 -0
  11. package/dist/index.d.mts +1068 -9
  12. package/dist/index.d.ts +1068 -9
  13. package/dist/index.js +1 -1
  14. package/dist/index.mjs +1 -1
  15. package/dist/test/util.js +1 -1
  16. package/docs/api/README.md +165 -0
  17. package/docs/{_media → api/_media}/CONTRIBUTING.md +3 -3
  18. package/docs/api/_media/pubsub.md +326 -0
  19. package/docs/api/_media/server_client_tools.md +88 -0
  20. package/docs/api/_media/toolFunc.md +183 -0
  21. package/docs/api/_media/transport.md +137 -0
  22. package/docs/{classes → api/classes}/AbortError.md +139 -54
  23. package/docs/api/classes/AlreadyExistsError.md +431 -0
  24. package/docs/api/classes/BaseError.md +440 -0
  25. package/docs/{classes → api/classes}/BinarySemaphore.md +25 -25
  26. package/docs/{classes → api/classes}/CancelableAbility.md +25 -25
  27. package/docs/api/classes/ClientToolTransport.md +310 -0
  28. package/docs/{classes → api/classes}/ClientTools.md +646 -180
  29. package/docs/{classes → api/classes}/CommonError.md +139 -54
  30. package/docs/{classes → api/classes}/ConfigFile.md +54 -5
  31. package/docs/{classes → api/classes}/EnvPromptTemplate.md +94 -48
  32. package/docs/{classes → api/classes}/EventClient.md +742 -234
  33. package/docs/{classes → api/classes}/EventEmitter.md +12 -12
  34. package/docs/{classes → api/classes}/EventServer.md +670 -209
  35. package/docs/{classes → api/classes}/EventToolFunc.md +561 -109
  36. package/docs/{classes → api/classes}/FStringPromptTemplate.md +94 -48
  37. package/docs/{classes → api/classes}/FewShotPromptTemplate.md +100 -52
  38. package/docs/{classes → api/classes}/GolangPromptTemplate.md +99 -53
  39. package/docs/api/classes/HttpClientToolTransport.md +324 -0
  40. package/docs/api/classes/HttpServerToolTransport.md +332 -0
  41. package/docs/{classes → api/classes}/IntSet.md +12 -12
  42. package/docs/{classes → api/classes}/LRUCache.md +26 -26
  43. package/docs/api/classes/NotFoundError.md +431 -0
  44. package/docs/api/classes/NotImplementationError.md +431 -0
  45. package/docs/{classes → api/classes}/PromptExampleSelector.md +9 -9
  46. package/docs/{classes → api/classes}/PromptTemplate.md +91 -47
  47. package/docs/api/classes/ReadableStreamError.md +451 -0
  48. package/docs/api/classes/ResClientTools.md +3365 -0
  49. package/docs/api/classes/ResServerTools.md +3342 -0
  50. package/docs/api/classes/RpcMethodsClientTool.md +3275 -0
  51. package/docs/api/classes/RpcMethodsServerTool.md +3224 -0
  52. package/docs/api/classes/SSEChannel.md +272 -0
  53. package/docs/{classes → api/classes}/Semaphore.md +26 -26
  54. package/docs/api/classes/ServerToolTransport.md +323 -0
  55. package/docs/{classes → api/classes}/ServerTools.md +583 -120
  56. package/docs/{classes → api/classes}/SignalGate.md +9 -9
  57. package/docs/api/classes/SseClientPubSubTransport.md +92 -0
  58. package/docs/api/classes/SseServerPubSubTransport.md +234 -0
  59. package/docs/{classes → api/classes}/TaskAbortController.md +9 -9
  60. package/docs/api/classes/ToolFunc.md +2665 -0
  61. package/docs/api/classes/ToolTransport.md +143 -0
  62. package/docs/api/classes/YamlTypeBaseObject.md +31 -0
  63. package/docs/api/enumerations/AsyncFeatureBits.md +33 -0
  64. package/docs/api/enumerations/AsyncFeatures.md +33 -0
  65. package/docs/api/enumerations/ErrorCode.md +177 -0
  66. package/docs/api/enumerations/HashAlgorithm.md +97 -0
  67. package/docs/{functions → api/functions}/AIArgProcessor.md +1 -1
  68. package/docs/{functions → api/functions}/AIStream.md +1 -1
  69. package/docs/{functions → api/functions}/ChoiceArgProcessor.md +1 -1
  70. package/docs/api/functions/DefaultDateFormat.md +21 -0
  71. package/docs/{functions → api/functions}/ObjectArgsToArgsInfo.md +1 -1
  72. package/docs/{functions → api/functions}/RateLimit.md +1 -1
  73. package/docs/{functions → api/functions}/TemplateArgProcessor.md +1 -1
  74. package/docs/api/functions/addDate.md +71 -0
  75. package/docs/{functions → api/functions}/assignDirs.md +1 -1
  76. package/docs/{functions → api/functions}/backendEventable.md +1 -1
  77. package/docs/{functions → api/functions}/beforeShutdown.md +1 -1
  78. package/docs/api/functions/calcPerplexity.md +60 -0
  79. package/docs/api/functions/calcPerplexitySimple.md +42 -0
  80. package/docs/api/functions/canonicalize.md +33 -0
  81. package/docs/{functions → api/functions}/completeSentences.md +1 -1
  82. package/docs/{functions → api/functions}/concatText.md +1 -1
  83. package/docs/{functions → api/functions}/countLLMTokens.md +1 -1
  84. package/docs/{functions → api/functions}/countRegexMatches.md +1 -1
  85. package/docs/{functions → api/functions}/createAbilityInjector.md +4 -4
  86. package/docs/{functions → api/functions}/createCallbacksTransformer.md +1 -1
  87. package/docs/{functions → api/functions}/createEmptyReadableStream.md +1 -1
  88. package/docs/{functions → api/functions}/createEndWithRepetitionDetector.md +1 -1
  89. package/docs/{functions → api/functions}/createError.md +1 -1
  90. package/docs/{functions → api/functions}/createEventStreamTransformer.md +1 -1
  91. package/docs/{functions → api/functions}/createHfValueFunc.md +1 -1
  92. package/docs/{functions → api/functions}/createLRUCache.md +1 -1
  93. package/docs/{functions → api/functions}/createYamlObjectTag.md +1 -1
  94. package/docs/{functions → api/functions}/dateToText.md +1 -1
  95. package/docs/{functions → api/functions}/decodeCharset.md +1 -1
  96. package/docs/api/functions/defaultsWithConcat.md +74 -0
  97. package/docs/{functions → api/functions}/detectCharset.md +1 -1
  98. package/docs/{functions → api/functions}/encodeLLMTokens.md +1 -1
  99. package/docs/{functions → api/functions}/ensureQuoted.md +1 -1
  100. package/docs/{functions → api/functions}/eventable.md +1 -1
  101. package/docs/{functions → api/functions}/expandConfig.md +1 -1
  102. package/docs/{functions → api/functions}/expandEnv.md +1 -1
  103. package/docs/{functions → api/functions}/expandObjEnv.md +1 -1
  104. package/docs/{functions → api/functions}/expandPath.md +1 -1
  105. package/docs/api/functions/expandPathInObject.md +29 -0
  106. package/docs/api/functions/expandPaths.md +25 -0
  107. package/docs/{functions → api/functions}/extNameLevel.md +1 -1
  108. package/docs/{functions → api/functions}/fileIsExists.md +1 -1
  109. package/docs/{functions → api/functions}/filterValidFnScope.md +1 -1
  110. package/docs/{functions → api/functions}/findIndexNonEmptyFrom.md +1 -1
  111. package/docs/{functions → api/functions}/findPort.md +1 -1
  112. package/docs/{functions → api/functions}/formatISO.md +1 -1
  113. package/docs/{functions → api/functions}/formatTextWithSpace.md +1 -1
  114. package/docs/api/functions/funcGetMeta.md +27 -0
  115. package/docs/api/functions/funcWithMeta.md +41 -0
  116. package/docs/api/functions/genUrlParamsStr.md +27 -0
  117. package/docs/{functions → api/functions}/getAllEnumKeys.md +1 -1
  118. package/docs/{functions → api/functions}/getConfigFileNames.md +1 -1
  119. package/docs/{functions → api/functions}/getConfigs.md +1 -1
  120. package/docs/{functions → api/functions}/getEnvVairables.md +1 -1
  121. package/docs/{functions → api/functions}/getFileMetaInfo.md +1 -1
  122. package/docs/{functions → api/functions}/getHashAlgoBySize.md +1 -1
  123. package/docs/{functions → api/functions}/getKeysPath.md +1 -1
  124. package/docs/{functions → api/functions}/getLLMTokenizer.md +1 -1
  125. package/docs/{functions → api/functions}/getMultiLevelExtname.md +1 -1
  126. package/docs/{functions → api/functions}/getPackageDir.md +1 -1
  127. package/docs/{functions → api/functions}/getRealFilepath.md +1 -1
  128. package/docs/{functions → api/functions}/getResponseErrorReadableStream.md +1 -1
  129. package/docs/{functions → api/functions}/getXDGConfigs.md +1 -1
  130. package/docs/{functions → api/functions}/hasDirectoryIn.md +1 -1
  131. package/docs/{functions → api/functions}/hash.md +1 -1
  132. package/docs/{functions → api/functions}/hashFile.md +1 -1
  133. package/docs/api/functions/hashObject.md +25 -0
  134. package/docs/{functions → api/functions}/hashStream.md +1 -1
  135. package/docs/api/functions/initShutdown.md +15 -0
  136. package/docs/{functions → api/functions}/isLangUsingSpaces.md +1 -1
  137. package/docs/{functions → api/functions}/isListItemString.md +1 -1
  138. package/docs/{functions → api/functions}/isModelNameMatched.md +1 -1
  139. package/docs/{functions → api/functions}/isPunctuationChar.md +1 -1
  140. package/docs/{functions → api/functions}/isQuoted.md +1 -1
  141. package/docs/{functions → api/functions}/isRegExp.md +1 -1
  142. package/docs/{functions → api/functions}/isSameString.md +1 -1
  143. package/docs/{functions → api/functions}/isSectionString.md +1 -1
  144. package/docs/{functions → api/functions}/isSentenceEnding.md +1 -1
  145. package/docs/{functions → api/functions}/isSepLineString.md +1 -1
  146. package/docs/{functions → api/functions}/isStrWrapped.md +1 -1
  147. package/docs/{functions → api/functions}/isSubdirectory.md +2 -2
  148. package/docs/{functions → api/functions}/isTitleString.md +1 -1
  149. package/docs/{functions → api/functions}/isValidFilename.md +1 -1
  150. package/docs/{functions → api/functions}/isValidFilepath.md +1 -1
  151. package/docs/{functions → api/functions}/isWebStream.md +1 -1
  152. package/docs/api/functions/joinSplitWords.md +46 -0
  153. package/docs/{functions → api/functions}/jsonFilterToWhere.md +1 -1
  154. package/docs/{functions → api/functions}/jsonToMarkdownStr.md +9 -1
  155. package/docs/{functions → api/functions}/loadAIConfig.md +1 -1
  156. package/docs/{functions → api/functions}/loadConfig.md +1 -1
  157. package/docs/{functions → api/functions}/loadConfigFile.md +1 -1
  158. package/docs/{functions → api/functions}/loadFileFromPaths.md +1 -1
  159. package/docs/{functions → api/functions}/loadTextFromPaths.md +1 -1
  160. package/docs/{functions → api/functions}/lrucache.md +1 -1
  161. package/docs/{functions → api/functions}/makeToolFuncCancelable.md +1 -1
  162. package/docs/{functions → api/functions}/matchUrlProtocol.md +1 -1
  163. package/docs/{functions → api/functions}/memoize.md +1 -1
  164. package/docs/api/functions/mergeArray.md +57 -0
  165. package/docs/{functions → api/functions}/messagesToText.md +1 -1
  166. package/docs/api/functions/normalizePath.md +21 -0
  167. package/docs/{functions → api/functions}/paramsSizeToScaleStr.md +1 -1
  168. package/docs/{functions → api/functions}/parseCommand.md +1 -1
  169. package/docs/{functions → api/functions}/parseDateFormat.md +1 -1
  170. package/docs/{functions → api/functions}/parseISO.md +1 -1
  171. package/docs/{functions → api/functions}/parseJsJson.md +1 -1
  172. package/docs/{functions → api/functions}/parseJsJsonSimpleSync.md +1 -1
  173. package/docs/{functions → api/functions}/parseObjectArgInfo.md +1 -1
  174. package/docs/{functions → api/functions}/parseObjectArgumentInfos.md +1 -1
  175. package/docs/{functions → api/functions}/parseObjectArguments.md +1 -1
  176. package/docs/{functions → api/functions}/parseObjectArgumentsAsArgInfos.md +1 -1
  177. package/docs/{functions → api/functions}/parseYaml.md +1 -1
  178. package/docs/api/functions/pruneSubdirectories.md +35 -0
  179. package/docs/api/functions/pruneSubdirectoriesInPlace.md +38 -0
  180. package/docs/{functions → api/functions}/quoteStr.md +1 -1
  181. package/docs/{functions → api/functions}/readFilenamesRecursiveSync.md +1 -1
  182. package/docs/{functions → api/functions}/readTextFileChunks.md +1 -1
  183. package/docs/{functions → api/functions}/readTextFileChunksEx.md +1 -1
  184. package/docs/{functions → api/functions}/readableFromAsyncIterable.md +1 -1
  185. package/docs/{functions → api/functions}/registerCoreTools.md +1 -1
  186. package/docs/{functions → api/functions}/registerYamlTag.md +1 -1
  187. package/docs/{functions → api/functions}/removeMarkdownBold.md +1 -1
  188. package/docs/{functions → api/functions}/removeMarkdownBoldAndItalic.md +1 -1
  189. package/docs/{functions → api/functions}/removeMarkdownItalic.md +1 -1
  190. package/docs/{functions → api/functions}/replaceWithPlaceholder.md +1 -1
  191. package/docs/{functions → api/functions}/restoreFromPlacehoders.md +1 -1
  192. package/docs/{functions → api/functions}/sanitizeFilename.md +1 -1
  193. package/docs/{functions → api/functions}/sanitizeFilepath.md +1 -1
  194. package/docs/{functions → api/functions}/saveConfigFile.md +1 -1
  195. package/docs/{functions → api/functions}/scaleStrToParamsSize.md +1 -1
  196. package/docs/{functions → api/functions}/shutdown.md +1 -1
  197. package/docs/{functions → api/functions}/simplifyObjectArguments.md +1 -1
  198. package/docs/api/functions/sleep.md +36 -0
  199. package/docs/{functions → api/functions}/sortedValues.md +1 -1
  200. package/docs/{functions → api/functions}/splitChunks.md +1 -1
  201. package/docs/{functions → api/functions}/splitParagraph.md +1 -1
  202. package/docs/{functions → api/functions}/splitSentence.md +1 -1
  203. package/docs/api/functions/splitWords.md +42 -0
  204. package/docs/{functions → api/functions}/stringifyYaml.md +1 -1
  205. package/docs/{functions → api/functions}/stripConsoleColor.md +1 -1
  206. package/docs/{functions → api/functions}/textToDate.md +1 -1
  207. package/docs/{functions → api/functions}/throwError.md +3 -3
  208. package/docs/{functions → api/functions}/toDate.md +1 -1
  209. package/docs/{functions → api/functions}/toDateTime.md +1 -1
  210. package/docs/{functions → api/functions}/toRegExp.md +1 -1
  211. package/docs/{functions → api/functions}/trimStartOfStreamHelper.md +1 -1
  212. package/docs/{functions → api/functions}/truncTo.md +1 -1
  213. package/docs/{functions → api/functions}/truncateByToken.md +1 -1
  214. package/docs/{functions → api/functions}/truncateToTokenLimit.md +1 -1
  215. package/docs/{functions → api/functions}/truncateToTokenLimitEx.md +1 -1
  216. package/docs/{functions → api/functions}/uuid.md +1 -1
  217. package/docs/{functions → api/functions}/uuidParse.md +1 -1
  218. package/docs/{functions → api/functions}/uuidStringify.md +1 -1
  219. package/docs/{functions → api/functions}/uuidValidate.md +1 -1
  220. package/docs/{functions → api/functions}/uuidVersion.md +1 -1
  221. package/docs/{functions → api/functions}/uuidv1.md +9 -5
  222. package/docs/{functions → api/functions}/uuidv4.md +9 -5
  223. package/docs/{functions → api/functions}/uuidv5.md +9 -5
  224. package/docs/api/functions/wait.md +45 -0
  225. package/docs/{functions → api/functions}/wrapEventEmitter.md +1 -1
  226. package/docs/{functions → api/functions}/xxhash.md +1 -1
  227. package/docs/{functions → api/functions}/xxhash32.md +1 -1
  228. package/docs/{functions → api/functions}/xxhash64.md +1 -1
  229. package/docs/{functions → api/functions}/xxhashAsStr.md +1 -1
  230. package/docs/api/functions/yieldExec.md +27 -0
  231. package/docs/{globals.md → api/globals.md} +50 -1
  232. package/docs/api/interfaces/AIChatAssistantMessageParam.md +129 -0
  233. package/docs/api/interfaces/AIChatContentPartImage.md +29 -0
  234. package/docs/api/interfaces/AIChatContentPartText.md +25 -0
  235. package/docs/api/interfaces/AIChatMessageParamBase.md +68 -0
  236. package/docs/api/interfaces/AIChatMessageToolCall.md +41 -0
  237. package/docs/{interfaces → api/interfaces}/AIChatSystemMessageParam.md +9 -9
  238. package/docs/api/interfaces/AIChatToolChoiceFuncObject.md +37 -0
  239. package/docs/api/interfaces/AIChatToolChoiceObject.md +25 -0
  240. package/docs/api/interfaces/AIChatToolFunc.md +41 -0
  241. package/docs/api/interfaces/AIChatToolFuncParam.md +37 -0
  242. package/docs/api/interfaces/AIChatToolMessageParam.md +113 -0
  243. package/docs/api/interfaces/AIChatToolParam.md +25 -0
  244. package/docs/api/interfaces/AIChatToolTypeObject.md +17 -0
  245. package/docs/api/interfaces/AIChatUserMessageParam.md +137 -0
  246. package/docs/api/interfaces/AIChoiceConfig.md +65 -0
  247. package/docs/api/interfaces/AIResult.md +65 -0
  248. package/docs/{interfaces → api/interfaces}/AIStreamParser.md +2 -2
  249. package/docs/api/interfaces/AIStreamParserOptions.md +21 -0
  250. package/docs/api/interfaces/BaseFunc.md +299 -0
  251. package/docs/api/interfaces/BaseFuncItem.md +221 -0
  252. package/docs/api/interfaces/BinarySemaphoreAcquireOptions.md +25 -0
  253. package/docs/api/interfaces/BinarySemaphoreOptions.md +57 -0
  254. package/docs/api/interfaces/BinarySemaphoreReleaseOptions.md +25 -0
  255. package/docs/api/interfaces/BinarySemaphoreReleaserFunc.md +37 -0
  256. package/docs/api/interfaces/CancelableAbilityOptions.md +113 -0
  257. package/docs/api/interfaces/ClientFuncItem.md +326 -0
  258. package/docs/api/interfaces/EventClientFuncParams.md +51 -0
  259. package/docs/api/interfaces/EventServerFuncParams.md +73 -0
  260. package/docs/{interfaces → api/interfaces}/FewShotPromptTemplateOptions.md +24 -12
  261. package/docs/api/interfaces/FuncItem.md +281 -0
  262. package/docs/api/interfaces/FuncParam.md +51 -0
  263. package/docs/api/interfaces/FuncParams.md +28 -0
  264. package/docs/api/interfaces/Funcs.md +15 -0
  265. package/docs/api/interfaces/HashAlgoParams.md +33 -0
  266. package/docs/api/interfaces/IClientToolTransport.md +155 -0
  267. package/docs/api/interfaces/IFileMetaInfo.md +65 -0
  268. package/docs/api/interfaces/IPubSubClientTransport.md +70 -0
  269. package/docs/api/interfaces/IPubSubServerTransport.md +241 -0
  270. package/docs/api/interfaces/IReadTextFileChunksOptions.md +143 -0
  271. package/docs/api/interfaces/IServerToolTransport.md +159 -0
  272. package/docs/api/interfaces/IToolTransport.md +73 -0
  273. package/docs/api/interfaces/ITruncateToTokenLimitOptions.md +99 -0
  274. package/docs/api/interfaces/JsonFilter.md +13 -0
  275. package/docs/api/interfaces/ParseObjectArgumentOptions.md +89 -0
  276. package/docs/api/interfaces/ProbabilityItem.md +41 -0
  277. package/docs/api/interfaces/PromptExampleSelectorOptions.md +34 -0
  278. package/docs/{interfaces → api/interfaces}/PromptTemplateOptions.md +15 -7
  279. package/docs/api/interfaces/PubSubClient.md +27 -0
  280. package/docs/api/interfaces/PubSubClientStream.md +196 -0
  281. package/docs/api/interfaces/PubSubServerSession.md +103 -0
  282. package/docs/api/interfaces/RemoteFuncItem.md +316 -0
  283. package/docs/api/interfaces/ReplacePlacehoderOptions.md +41 -0
  284. package/docs/api/interfaces/ResClientFuncParams.md +37 -0
  285. package/docs/api/interfaces/ResServerFuncParams.md +77 -0
  286. package/docs/api/interfaces/RpcMethodsClientFuncParams.md +25 -0
  287. package/docs/api/interfaces/RpcMethodsServerFuncParams.md +61 -0
  288. package/docs/api/interfaces/SanitizeFilenameOptions.md +25 -0
  289. package/docs/api/interfaces/SectionStringOptions.md +25 -0
  290. package/docs/api/interfaces/SemaphoreOptions.md +89 -0
  291. package/docs/api/interfaces/SemaphoreTaskItem.md +73 -0
  292. package/docs/api/interfaces/ServerFuncItem.md +339 -0
  293. package/docs/api/interfaces/ServerFuncParams.md +42 -0
  294. package/docs/api/interfaces/SplitSentenceOptions.md +41 -0
  295. package/docs/{interfaces → api/interfaces}/StreamCallbacksAndOptions.md +5 -5
  296. package/docs/{interfaces → api/interfaces}/TaskAbortControllers.md +1 -1
  297. package/docs/{interfaces → api/interfaces}/TaskPromise.md +6 -6
  298. package/docs/api/interfaces/ToolFuncPackage.md +57 -0
  299. package/docs/{namespaces → api/namespaces}/EventStates/variables/ABORT.md +1 -1
  300. package/docs/{namespaces → api/namespaces}/EventStates/variables/CONTINUE.md +1 -1
  301. package/docs/{namespaces → api/namespaces}/EventStates/variables/DONE.md +1 -1
  302. package/docs/{namespaces → api/namespaces}/EventStates/variables/STOPPED.md +1 -1
  303. package/docs/{namespaces → api/namespaces}/uuidv5/variables/DNS.md +1 -1
  304. package/docs/{namespaces → api/namespaces}/uuidv5/variables/URL.md +1 -1
  305. package/docs/{type-aliases → api/type-aliases}/AIChatContentPart.md +1 -1
  306. package/docs/{type-aliases → api/type-aliases}/AIChatMessageParam.md +1 -1
  307. package/docs/{type-aliases → api/type-aliases}/AIChatRole.md +1 -1
  308. package/docs/{type-aliases → api/type-aliases}/AIChatToolChoiceParam.md +1 -1
  309. package/docs/{type-aliases → api/type-aliases}/AIMessageType.md +1 -1
  310. package/docs/api/type-aliases/AIModelNameRule.md +14 -0
  311. package/docs/api/type-aliases/AIModelNameRuleFn.md +28 -0
  312. package/docs/api/type-aliases/AIModelNameRules.md +13 -0
  313. package/docs/{type-aliases → api/type-aliases}/AITextGenerationFinishReason.md +1 -1
  314. package/docs/api/type-aliases/ActionName.md +13 -0
  315. package/docs/api/type-aliases/ArrayMergeWay.md +11 -0
  316. package/docs/api/type-aliases/AsyncTaskId.md +11 -0
  317. package/docs/{type-aliases → api/type-aliases}/BeforeShutdownListener.md +1 -1
  318. package/docs/{type-aliases → api/type-aliases}/EventErrorListenerFn.md +1 -1
  319. package/docs/{type-aliases → api/type-aliases}/EventListenerFn.md +1 -1
  320. package/docs/api/type-aliases/FuncParamType.md +13 -0
  321. package/docs/{type-aliases → api/type-aliases}/PromptExamples.md +1 -1
  322. package/docs/api/type-aliases/PubSubClientId.md +14 -0
  323. package/docs/api/type-aliases/PubSubCtx.md +37 -0
  324. package/docs/api/type-aliases/RpcMethodHandler.md +34 -0
  325. package/docs/{type-aliases → api/type-aliases}/SemaphoreIsReadyFuncType.md +1 -1
  326. package/docs/api/type-aliases/TFunc.md +33 -0
  327. package/docs/{variables → api/variables}/AIChatRoles.md +1 -1
  328. package/docs/{variables → api/variables}/AIMessageTypes.md +1 -1
  329. package/docs/{variables → api/variables}/AITextGenerationFinishReasons.md +1 -1
  330. package/docs/{variables → api/variables}/AbortErrorCode.md +1 -1
  331. package/docs/api/variables/ActionNames.md +13 -0
  332. package/docs/{variables → api/variables}/AlreadyExistsErrorCode.md +1 -1
  333. package/docs/api/variables/ArrayMergeWay.md +25 -0
  334. package/docs/api/variables/ArrayMergeWaySymbol.md +11 -0
  335. package/docs/api/variables/ClientToolFuncSchema.md +83 -0
  336. package/docs/{variables → api/variables}/DEFAULT_CONFIG_NAME.md +1 -1
  337. package/docs/{variables → api/variables}/DefaultAsyncSemaphoreCapacity.md +1 -1
  338. package/docs/api/variables/EventBusName.md +11 -0
  339. package/docs/api/variables/EventName.md +11 -0
  340. package/docs/{variables → api/variables}/FilenameReservedRegex.md +1 -1
  341. package/docs/api/variables/FuncMetaSymbol.md +15 -0
  342. package/docs/{variables → api/variables}/InternalErrorCode.md +1 -1
  343. package/docs/{variables → api/variables}/LLM_TOKENIZER_NAMES.md +1 -1
  344. package/docs/{variables → api/variables}/LLM_TOKENIZER_NAMES_MAP.md +1 -1
  345. package/docs/{variables → api/variables}/NotFoundErrorCode.md +1 -1
  346. package/docs/{variables → api/variables}/NotImplementedErrorCode.md +1 -1
  347. package/docs/api/variables/PASSING_SCORE.md +13 -0
  348. package/docs/api/variables/RStreamErrCode.md +11 -0
  349. package/docs/api/variables/RemoteToolFuncSchema.md +84 -0
  350. package/docs/api/variables/ResponseRStreamErrCode.md +11 -0
  351. package/docs/api/variables/RpcMethodsClientToolSchema.md +49 -0
  352. package/docs/api/variables/RpcMethodsServerToolSchema.md +21 -0
  353. package/docs/{variables → api/variables}/SHUTDOWN_SIGNALS.md +1 -1
  354. package/docs/{variables → api/variables}/SSEChannelAlreadyClosedErrCode.md +1 -1
  355. package/docs/api/variables/SecondaryCache.md +11 -0
  356. package/docs/api/variables/ServerToolFuncSchema.md +83 -0
  357. package/docs/api/variables/StrangeHumanName.md +11 -0
  358. package/docs/api/variables/ToolAsyncCancelableBit.md +11 -0
  359. package/docs/api/variables/ToolAsyncMultiTaskBit.md +11 -0
  360. package/docs/api/variables/ToolAsyncPriorityBit.md +11 -0
  361. package/docs/{variables → api/variables}/ToolFuncSchema.md +14 -1
  362. package/docs/{variables → api/variables}/WindowsReservedNameRegex.md +1 -1
  363. package/docs/api/variables/base32768.md +11 -0
  364. package/docs/{variables → api/variables}/defaultTemplateFormat.md +1 -1
  365. package/docs/api/variables/event.md +11 -0
  366. package/docs/api/variables/eventClient.md +11 -0
  367. package/docs/api/variables/eventServer.md +11 -0
  368. package/docs/api/variables/lrucache.md +11 -0
  369. package/docs/{variables → api/variables}/mimeType.md +1 -1
  370. package/docs/{variables → api/variables}/uuidNIL.md +1 -1
  371. package/docs/pubsub.md +326 -0
  372. package/docs/server_client_tools.md +88 -0
  373. package/docs/toolFunc.md +183 -0
  374. package/docs/transport.md +137 -0
  375. package/package.json +37 -39
  376. package/dist/chunk-OYDBRUZJ.mjs +0 -1
  377. package/dist/index-BkwhCK1q.d.mts +0 -899
  378. package/dist/index-BkwhCK1q.d.ts +0 -899
  379. package/docs/README.md +0 -250
  380. package/docs/classes/AlreadyExistsError.md +0 -346
  381. package/docs/classes/BaseError.md +0 -359
  382. package/docs/classes/NotFoundError.md +0 -346
  383. package/docs/classes/NotImplementationError.md +0 -346
  384. package/docs/classes/ReadableStreamError.md +0 -366
  385. package/docs/classes/ResClientTools.md +0 -2451
  386. package/docs/classes/ResServerTools.md +0 -2427
  387. package/docs/classes/SSEChannel.md +0 -270
  388. package/docs/classes/ToolFunc.md +0 -2201
  389. package/docs/classes/YamlTypeBaseObject.md +0 -31
  390. package/docs/enumerations/AsyncFeatureBits.md +0 -33
  391. package/docs/enumerations/AsyncFeatures.md +0 -33
  392. package/docs/enumerations/ErrorCode.md +0 -177
  393. package/docs/enumerations/HashAlgorithm.md +0 -97
  394. package/docs/functions/canonicalize.md +0 -21
  395. package/docs/functions/initShutdown.md +0 -15
  396. package/docs/functions/wait.md +0 -21
  397. package/docs/interfaces/AIChatAssistantMessageParam.md +0 -129
  398. package/docs/interfaces/AIChatContentPartImage.md +0 -29
  399. package/docs/interfaces/AIChatContentPartText.md +0 -25
  400. package/docs/interfaces/AIChatMessageParamBase.md +0 -68
  401. package/docs/interfaces/AIChatMessageToolCall.md +0 -41
  402. package/docs/interfaces/AIChatToolChoiceFuncObject.md +0 -37
  403. package/docs/interfaces/AIChatToolChoiceObject.md +0 -25
  404. package/docs/interfaces/AIChatToolFunc.md +0 -41
  405. package/docs/interfaces/AIChatToolFuncParam.md +0 -37
  406. package/docs/interfaces/AIChatToolMessageParam.md +0 -113
  407. package/docs/interfaces/AIChatToolParam.md +0 -25
  408. package/docs/interfaces/AIChatToolTypeObject.md +0 -17
  409. package/docs/interfaces/AIChatUserMessageParam.md +0 -137
  410. package/docs/interfaces/AIChoiceConfig.md +0 -65
  411. package/docs/interfaces/AIResult.md +0 -65
  412. package/docs/interfaces/AIStreamParserOptions.md +0 -21
  413. package/docs/interfaces/BaseFunc.md +0 -157
  414. package/docs/interfaces/BaseFuncItem.md +0 -101
  415. package/docs/interfaces/BinarySemaphoreAcquireOptions.md +0 -25
  416. package/docs/interfaces/BinarySemaphoreOptions.md +0 -57
  417. package/docs/interfaces/BinarySemaphoreReleaseOptions.md +0 -25
  418. package/docs/interfaces/BinarySemaphoreReleaserFunc.md +0 -37
  419. package/docs/interfaces/CancelableAbilityOptions.md +0 -113
  420. package/docs/interfaces/ClientFuncItem.md +0 -175
  421. package/docs/interfaces/EventClientFuncParams.md +0 -51
  422. package/docs/interfaces/EventServerFuncParams.md +0 -67
  423. package/docs/interfaces/FuncItem.md +0 -143
  424. package/docs/interfaces/FuncParam.md +0 -61
  425. package/docs/interfaces/FuncParams.md +0 -13
  426. package/docs/interfaces/Funcs.md +0 -13
  427. package/docs/interfaces/HashAlgoParams.md +0 -33
  428. package/docs/interfaces/IFileMetaInfo.md +0 -65
  429. package/docs/interfaces/IReadTextFileChunksOptions.md +0 -143
  430. package/docs/interfaces/ITruncateToTokenLimitOptions.md +0 -99
  431. package/docs/interfaces/JsonFilter.md +0 -13
  432. package/docs/interfaces/ParseObjectArgumentOptions.md +0 -89
  433. package/docs/interfaces/PromptExampleSelectorOptions.md +0 -34
  434. package/docs/interfaces/RemoteFuncItem.md +0 -164
  435. package/docs/interfaces/ReplacePlacehoderOptions.md +0 -41
  436. package/docs/interfaces/ResClientFuncParams.md +0 -37
  437. package/docs/interfaces/ResServerFuncParams.md +0 -69
  438. package/docs/interfaces/SanitizeFilenameOptions.md +0 -25
  439. package/docs/interfaces/SectionStringOptions.md +0 -25
  440. package/docs/interfaces/SemaphoreOptions.md +0 -89
  441. package/docs/interfaces/SemaphoreTaskItem.md +0 -73
  442. package/docs/interfaces/ServerFuncItem.md +0 -183
  443. package/docs/interfaces/ServerFuncParams.md +0 -35
  444. package/docs/interfaces/SplitSentenceOptions.md +0 -41
  445. package/docs/interfaces/ToolFuncPackage.md +0 -47
  446. package/docs/type-aliases/AIModelNameRule.md +0 -11
  447. package/docs/type-aliases/AIModelNameRuleFn.md +0 -21
  448. package/docs/type-aliases/AIModelNameRules.md +0 -11
  449. package/docs/type-aliases/ActionName.md +0 -11
  450. package/docs/type-aliases/AsyncTaskId.md +0 -11
  451. package/docs/type-aliases/FuncParamType.md +0 -11
  452. package/docs/type-aliases/TFunc.md +0 -25
  453. package/docs/variables/ActionNames.md +0 -11
  454. package/docs/variables/ClientToolFuncSchema.md +0 -101
  455. package/docs/variables/EventBusName.md +0 -11
  456. package/docs/variables/EventName.md +0 -11
  457. package/docs/variables/PASSING_SCORE.md +0 -11
  458. package/docs/variables/RStreamErrCode.md +0 -11
  459. package/docs/variables/RemoteToolFuncSchema.md +0 -101
  460. package/docs/variables/ResponseRStreamErrCode.md +0 -11
  461. package/docs/variables/SecondaryCache.md +0 -11
  462. package/docs/variables/ServerToolFuncSchema.md +0 -101
  463. package/docs/variables/ToolAsyncCancelableBit.md +0 -11
  464. package/docs/variables/ToolAsyncMultiTaskBit.md +0 -11
  465. package/docs/variables/ToolAsyncPriorityBit.md +0 -11
  466. package/docs/variables/base32768.md +0 -11
  467. package/docs/variables/event.md +0 -11
  468. package/docs/variables/eventClient.md +0 -11
  469. package/docs/variables/eventServer.md +0 -11
  470. package/docs/variables/lrucache.md +0 -11
  471. /package/docs/{_media → api/_media}/LICENSE-MIT +0 -0
  472. /package/docs/{namespaces → api/namespaces}/EventStates/README.md +0 -0
  473. /package/docs/{namespaces → api/namespaces}/uuidv5/README.md +0 -0
@@ -6,12 +6,22 @@
6
6
 
7
7
  # Class: ServerTools
8
8
 
9
- Defined in: [packages/ai-tool/src/server-tools.ts:17](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/server-tools.ts#L17)
9
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/server-tools.ts:41](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/server-tools.ts#L41)
10
+
11
+ Represents a function that runs on a server and can be exposed to clients.
12
+
13
+ `ServerTools` extends `ToolFunc` by adding logic for serialization and handling
14
+ server-side execution contexts. It is designed to work with a transport layer
15
+ (see `transports`) to expose its registered functions over a network.
10
16
 
11
17
  ## Extends
12
18
 
13
19
  - [`ServerFuncItem`](../interfaces/ServerFuncItem.md).[`ToolFunc`](ToolFunc.md)
14
20
 
21
+ ## Extended by
22
+
23
+ - [`RpcMethodsServerTool`](RpcMethodsServerTool.md)
24
+
15
25
  ## Indexable
16
26
 
17
27
  \[`name`: `string`\]: `any`
@@ -20,9 +30,9 @@ Defined in: [packages/ai-tool/src/server-tools.ts:17](https://github.com/isdk/ai
20
30
 
21
31
  ### new ServerTools()
22
32
 
23
- > **new ServerTools**(`name`, `options`): [`ServerTools`](ServerTools.md)
33
+ > **new ServerTools**(`name`, `options`?): [`ServerTools`](ServerTools.md)
24
34
 
25
- Defined in: [packages/ai-tool/src/tool-func.ts:225](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L225)
35
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:571](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L571)
26
36
 
27
37
  The initial value of Object.prototype.constructor is the standard built-in Object constructor.
28
38
 
@@ -30,12 +40,16 @@ The initial value of Object.prototype.constructor is the standard built-in Objec
30
40
 
31
41
  ##### name
32
42
 
43
+ Can be a function name, a function implementation, or a configuration object.
44
+
33
45
  `string` | `Function` | [`FuncItem`](../interfaces/FuncItem.md)
34
46
 
35
- ##### options
47
+ ##### options?
36
48
 
37
49
  `any` = `{}`
38
50
 
51
+ Configuration options if not provided in the first argument.
52
+
39
53
  #### Returns
40
54
 
41
55
  [`ServerTools`](ServerTools.md)
@@ -50,7 +64,7 @@ The initial value of Object.prototype.constructor is the standard built-in Objec
50
64
 
51
65
  > **$attributes**: `Properties`
52
66
 
53
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/advance.d.ts:5
67
+ Defined in: [property-manager.js/src/advance.d.ts:5](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/advance.d.ts#L5)
54
68
 
55
69
  #### Inherited from
56
70
 
@@ -62,7 +76,10 @@ Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-ma
62
76
 
63
77
  > `optional` **action**: `"get"` \| `"post"` \| `"put"` \| `"delete"` \| `"patch"` \| `"list"` \| `"res"`
64
78
 
65
- Defined in: [packages/ai-tool/src/utils/consts.ts:35](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/utils/consts.ts#L35)
79
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/utils/consts.ts:95](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/utils/consts.ts#L95)
80
+
81
+ The action to be used for the remote call. This typically represents an RPC method name.
82
+ Only for RESTful HTTP transports, it might be mapped to a standard HTTP method (e.g., GET, POST)
66
83
 
67
84
  #### Inherited from
68
85
 
@@ -74,7 +91,9 @@ Defined in: [packages/ai-tool/src/utils/consts.ts:35](https://github.com/isdk/ai
74
91
 
75
92
  > `optional` **alias**: `string` \| `string`[]
76
93
 
77
- Defined in: [packages/ai-tool/src/tool-func.ts:31](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L31)
94
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:130](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L130)
95
+
96
+ Optional aliases for the function name.
78
97
 
79
98
  #### Inherited from
80
99
 
@@ -86,7 +105,11 @@ Defined in: [packages/ai-tool/src/tool-func.ts:31](https://github.com/isdk/ai-to
86
105
 
87
106
  > `optional` **allowExportFunc**: `boolean`
88
107
 
89
- Defined in: [packages/ai-tool/src/server-tools.ts:14](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/server-tools.ts#L14)
108
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/server-tools.ts:35](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/server-tools.ts#L35)
109
+
110
+ If set to true, the body of the function (`func`) will be serialized and sent
111
+ to the client when tools are loaded. This allows the client to execute the
112
+ function locally instead of making a remote call. Defaults to false.
90
113
 
91
114
  #### Inherited from
92
115
 
@@ -94,11 +117,17 @@ Defined in: [packages/ai-tool/src/server-tools.ts:14](https://github.com/isdk/ai
94
117
 
95
118
  ***
96
119
 
97
- ### apiRoot?
120
+ ### ~~apiRoot?~~
98
121
 
99
122
  > `optional` **apiRoot**: `string`
100
123
 
101
- Defined in: [packages/ai-tool/src/utils/consts.ts:34](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/utils/consts.ts#L34)
124
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/utils/consts.ts:89](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/utils/consts.ts#L89)
125
+
126
+ The root endpoint for the remote service.
127
+
128
+ #### Deprecated
129
+
130
+ Use `transport` instead.
102
131
 
103
132
  #### Inherited from
104
133
 
@@ -106,11 +135,41 @@ Defined in: [packages/ai-tool/src/utils/consts.ts:34](https://github.com/isdk/ai
106
135
 
107
136
  ***
108
137
 
138
+ ### asyncFeatures?
139
+
140
+ > `optional` **asyncFeatures**: `number`
141
+
142
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:144](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L144)
143
+
144
+ A bitmask representing asynchronous features supported by the function, built from `AsyncFeatureBits`.
145
+ This allows the system to understand if a function supports capabilities like cancellation or multi-tasking.
146
+
147
+ #### See
148
+
149
+ AsyncFeatureBits from `@src/utils/cancelable-ability.ts`
150
+
151
+ #### Example
152
+
153
+ ```ts
154
+ import { AsyncFeatures } from './utils';
155
+ const func = new ToolFunc({
156
+ name: 'cancellableTask',
157
+ asyncFeatures: AsyncFeatures.Cancelable | AsyncFeatures.MultiTask,
158
+ // ...
159
+ });
160
+ ```
161
+
162
+ #### Inherited from
163
+
164
+ [`ToolFunc`](ToolFunc.md).[`asyncFeatures`](ToolFunc.md#asyncfeatures)
165
+
166
+ ***
167
+
109
168
  ### constructor
110
169
 
111
170
  > **constructor**: `Function`
112
171
 
113
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:125
172
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:125
114
173
 
115
174
  The initial value of Object.prototype.constructor is the standard built-in Object constructor.
116
175
 
@@ -120,7 +179,7 @@ The initial value of Object.prototype.constructor is the standard built-in Objec
120
179
 
121
180
  > **defaultOptions**: `object`
122
181
 
123
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/abstract.d.ts:74
182
+ Defined in: [property-manager.js/src/abstract.d.ts:74](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/abstract.d.ts#L74)
124
183
 
125
184
  The default options for export and assign
126
185
 
@@ -138,11 +197,70 @@ The default options for export and assign
138
197
 
139
198
  ***
140
199
 
141
- ### fetchOptions?
200
+ ### depends?
201
+
202
+ > `optional` **depends**: `object`
203
+
204
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:167](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L167)
205
+
206
+ A map of dependencies this function has on other tool functions.
207
+ Declaring dependencies ensures that they are automatically registered when this function is registered.
208
+ This is crucial for building modular functions that rely on each other without needing to manage registration order manually.
209
+
210
+ #### Index Signature
211
+
212
+ \[`name`: `string`\]: [`ToolFunc`](ToolFunc.md)
213
+
214
+ #### Example
215
+
216
+ ```ts
217
+ const helperFunc = new ToolFunc({ name: 'helper', func: () => 'world' });
218
+ const mainFunc = new ToolFunc({
219
+ name: 'main',
220
+ depends: {
221
+ helper: helperFunc,
222
+ },
223
+ func() {
224
+ // We can now safely run the dependency
225
+ const result = this.runSync('helper');
226
+ return `Hello, ${result}`;
227
+ }
228
+ });
229
+ // When mainFunc is registered, helperFunc will be registered automatically.
230
+ mainFunc.register();
231
+ ```
232
+
233
+ #### Inherited from
234
+
235
+ [`ToolFunc`](ToolFunc.md).[`depends`](ToolFunc.md#depends)
236
+
237
+ ***
238
+
239
+ ### description?
240
+
241
+ > `optional` **description**: `string`
242
+
243
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:172](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L172)
244
+
245
+ A detailed description of what the function does.
246
+
247
+ #### Inherited from
248
+
249
+ [`ToolFunc`](ToolFunc.md).[`description`](ToolFunc.md#description)
250
+
251
+ ***
252
+
253
+ ### ~~fetchOptions?~~
142
254
 
143
255
  > `optional` **fetchOptions**: `any`
144
256
 
145
- Defined in: [packages/ai-tool/src/utils/consts.ts:36](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/utils/consts.ts#L36)
257
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/utils/consts.ts:101](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/utils/consts.ts#L101)
258
+
259
+ Options to be passed to the underlying `fetch` call in an HTTP transport.
260
+
261
+ #### Deprecated
262
+
263
+ Use `transport` instead.
146
264
 
147
265
  #### Inherited from
148
266
 
@@ -154,7 +272,9 @@ Defined in: [packages/ai-tool/src/utils/consts.ts:36](https://github.com/isdk/ai
154
272
 
155
273
  > `optional` **isApi**: `boolean`
156
274
 
157
- Defined in: [packages/ai-tool/src/tool-func.ts:29](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L29)
275
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:119](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L119)
276
+
277
+ If true, indicates that this function should be treated as a server-side API.
158
278
 
159
279
  #### Inherited from
160
280
 
@@ -166,11 +286,13 @@ Defined in: [packages/ai-tool/src/tool-func.ts:29](https://github.com/isdk/ai-to
166
286
 
167
287
  > `optional` **name**: `string`
168
288
 
169
- Defined in: [packages/ai-tool/src/tool-func.ts:23](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L23)
289
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:76](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L76)
290
+
291
+ The unique name of the function.
170
292
 
171
293
  #### Inherited from
172
294
 
173
- [`ToolFunc`](ToolFunc.md).[`name`](ToolFunc.md#name-1)
295
+ [`ToolFunc`](ToolFunc.md).[`name`](ToolFunc.md#name-3)
174
296
 
175
297
  ***
176
298
 
@@ -178,7 +300,7 @@ Defined in: [packages/ai-tool/src/tool-func.ts:23](https://github.com/isdk/ai-to
178
300
 
179
301
  > **nonExported1stChar**: `string`
180
302
 
181
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/abstract.d.ts:78
303
+ Defined in: [property-manager.js/src/abstract.d.ts:78](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/abstract.d.ts#L78)
182
304
 
183
305
  the property with the default prefix '$' will not be exported.
184
306
 
@@ -192,7 +314,9 @@ the property with the default prefix '$' will not be exported.
192
314
 
193
315
  > `optional` **params**: [`FuncParams`](../interfaces/FuncParams.md) \| [`FuncParam`](../interfaces/FuncParam.md)[]
194
316
 
195
- Defined in: [packages/ai-tool/src/tool-func.ts:24](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L24)
317
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:81](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L81)
318
+
319
+ Parameter definitions, which can be an object mapping names to definitions or an array for positional parameters.
196
320
 
197
321
  #### Inherited from
198
322
 
@@ -202,9 +326,11 @@ Defined in: [packages/ai-tool/src/tool-func.ts:24](https://github.com/isdk/ai-to
202
326
 
203
327
  ### result?
204
328
 
205
- > `optional` **result**: `string`
329
+ > `optional` **result**: `string` \| `Record`\<`string`, `any`\>
206
330
 
207
- Defined in: [packages/ai-tool/src/tool-func.ts:25](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L25)
331
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:86](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L86)
332
+
333
+ The expected return type of the function, described as a string or a JSON schema object.
208
334
 
209
335
  #### Inherited from
210
336
 
@@ -216,7 +342,9 @@ Defined in: [packages/ai-tool/src/tool-func.ts:25](https://github.com/isdk/ai-to
216
342
 
217
343
  > `optional` **scope**: `any`
218
344
 
219
- Defined in: [packages/ai-tool/src/tool-func.ts:26](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L26)
345
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:91](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L91)
346
+
347
+ The execution scope or context (`this`) for the function.
220
348
 
221
349
  #### Inherited from
222
350
 
@@ -228,7 +356,11 @@ Defined in: [packages/ai-tool/src/tool-func.ts:26](https://github.com/isdk/ai-to
228
356
 
229
357
  > `optional` **setup**: (`this`, `options`?) => `void`
230
358
 
231
- Defined in: [packages/ai-tool/src/tool-func.ts:28](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L28)
359
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:114](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L114)
360
+
361
+ A lifecycle hook called once during the `ToolFunc` instance's initialization.
362
+ It allows for initial setup, state configuration, or property modification on the instance
363
+ before it is used or registered. The `this` context is the `ToolFunc` instance itself.
232
364
 
233
365
  #### Parameters
234
366
 
@@ -240,10 +372,26 @@ Defined in: [packages/ai-tool/src/tool-func.ts:28](https://github.com/isdk/ai-to
240
372
 
241
373
  [`FuncItem`](../interfaces/FuncItem.md)
242
374
 
375
+ The configuration options for the function.
376
+
243
377
  #### Returns
244
378
 
245
379
  `void`
246
380
 
381
+ #### Example
382
+
383
+ ```ts
384
+ const myFunc = new ToolFunc({
385
+ name: 'myFunc',
386
+ customState: 'initial',
387
+ setup() {
388
+ // `this` is the myFunc instance
389
+ this.customState = 'configured';
390
+ }
391
+ });
392
+ console.log(myFunc.customState); // Outputs: 'configured'
393
+ ```
394
+
247
395
  #### Inherited from
248
396
 
249
397
  [`ToolFunc`](ToolFunc.md).[`setup`](ToolFunc.md#setup)
@@ -254,7 +402,10 @@ Defined in: [packages/ai-tool/src/tool-func.ts:28](https://github.com/isdk/ai-to
254
402
 
255
403
  > `optional` **stream**: `boolean`
256
404
 
257
- Defined in: [packages/ai-tool/src/tool-func.ts:30](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L30)
405
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:125](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L125)
406
+
407
+ If true, indicates that the function has the *capability* to stream its output.
408
+ Whether a specific call is streamed is determined by a `stream` property in the runtime parameters.
258
409
 
259
410
  #### Inherited from
260
411
 
@@ -266,7 +417,9 @@ Defined in: [packages/ai-tool/src/tool-func.ts:30](https://github.com/isdk/ai-to
266
417
 
267
418
  > `optional` **tags**: `string` \| `string`[]
268
419
 
269
- Defined in: [packages/ai-tool/src/tool-func.ts:27](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L27)
420
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:96](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L96)
421
+
422
+ Tags for grouping or filtering functions.
270
423
 
271
424
  #### Inherited from
272
425
 
@@ -274,11 +427,27 @@ Defined in: [packages/ai-tool/src/tool-func.ts:27](https://github.com/isdk/ai-to
274
427
 
275
428
  ***
276
429
 
430
+ ### title?
431
+
432
+ > `optional` **title**: `string`
433
+
434
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:177](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L177)
435
+
436
+ A concise, human-readable title for the function, often used in UI or by AI.
437
+
438
+ #### Inherited from
439
+
440
+ [`ToolFunc`](ToolFunc.md).[`title`](ToolFunc.md#title)
441
+
442
+ ***
443
+
277
444
  ### aliases
278
445
 
279
446
  > `static` **aliases**: `object` = `{}`
280
447
 
281
- Defined in: [packages/ai-tool/src/tool-func.ts:58](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L58)
448
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:305](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L305)
449
+
450
+ A static map of aliases to their corresponding function names.
282
451
 
283
452
  #### Index Signature
284
453
 
@@ -294,7 +463,11 @@ Defined in: [packages/ai-tool/src/tool-func.ts:58](https://github.com/isdk/ai-to
294
463
 
295
464
  > `static` **dataPath**: `string`
296
465
 
297
- Defined in: [packages/ai-tool/src/tool-func.ts:59](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L59)
466
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:312](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L312)
467
+
468
+ A conventional property to designate a file path for saving the registered `ToolFunc` data.
469
+ Note: The `ToolFunc` class itself does not implement persistence logic. It is up to the
470
+ developer to use this path to save and load the `ToolFunc.items` registry if needed.
298
471
 
299
472
  #### Inherited from
300
473
 
@@ -306,7 +479,9 @@ Defined in: [packages/ai-tool/src/tool-func.ts:59](https://github.com/isdk/ai-to
306
479
 
307
480
  > `static` **items**: [`Funcs`](../interfaces/Funcs.md) = `{}`
308
481
 
309
- Defined in: [packages/ai-tool/src/tool-func.ts:57](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L57)
482
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:300](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L300)
483
+
484
+ A static registry of all `ToolFunc` instances, indexed by name.
310
485
 
311
486
  #### Inherited from
312
487
 
@@ -320,7 +495,9 @@ Defined in: [packages/ai-tool/src/tool-func.ts:57](https://github.com/isdk/ai-to
320
495
 
321
496
  > **get** `static` **apiRoot**(): `undefined` \| `string`
322
497
 
323
- Defined in: [packages/ai-tool/src/server-tools.ts:26](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/server-tools.ts#L26)
498
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/server-tools.ts:57](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/server-tools.ts#L57)
499
+
500
+ The conventional root path for the API endpoint.
324
501
 
325
502
  ##### Returns
326
503
 
@@ -336,7 +513,10 @@ Defined in: [packages/ai-tool/src/server-tools.ts:26](https://github.com/isdk/ai
336
513
 
337
514
  > **arr2ObjParams**(`params`): `any`[]
338
515
 
339
- Defined in: [packages/ai-tool/src/tool-func.ts:269](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L269)
516
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:629](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L629)
517
+
518
+ Converts an array of positional arguments into a named parameters object.
519
+ This is used internally to support functions defined with named parameters.
340
520
 
341
521
  #### Parameters
342
522
 
@@ -344,10 +524,14 @@ Defined in: [packages/ai-tool/src/tool-func.ts:269](https://github.com/isdk/ai-t
344
524
 
345
525
  `any`[]
346
526
 
527
+ An array of positional arguments.
528
+
347
529
  #### Returns
348
530
 
349
531
  `any`[]
350
532
 
533
+ An array containing a single parameters object.
534
+
351
535
  #### Inherited from
352
536
 
353
537
  [`ToolFunc`](ToolFunc.md).[`arr2ObjParams`](ToolFunc.md#arr2objparams)
@@ -358,7 +542,7 @@ Defined in: [packages/ai-tool/src/tool-func.ts:269](https://github.com/isdk/ai-t
358
542
 
359
543
  > **assign**(`src`, `options`?): `this`
360
544
 
361
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/abstract.d.ts:106
545
+ Defined in: [property-manager.js/src/abstract.d.ts:106](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/abstract.d.ts#L106)
362
546
 
363
547
  Assign the values from the src object.
364
548
 
@@ -390,7 +574,7 @@ this object
390
574
 
391
575
  > **assignProperty**(`src`, `name`, `value`, `attrs`?, `options`?): `void`
392
576
 
393
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/abstract.d.ts:117
577
+ Defined in: [property-manager.js/src/abstract.d.ts:117](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/abstract.d.ts#L117)
394
578
 
395
579
  Assign a property of src to this object.
396
580
 
@@ -438,7 +622,7 @@ the attributes object
438
622
 
439
623
  > `abstract` **assignPropertyTo**(`dest`, `src`, `name`, `value`, `attrs`?, `options`?): `void`
440
624
 
441
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/abstract.d.ts:131
625
+ Defined in: [property-manager.js/src/abstract.d.ts:131](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/abstract.d.ts#L131)
442
626
 
443
627
  Assign the property value from the src to destination object.
444
628
 
@@ -492,7 +676,7 @@ The attributes object of the property
492
676
 
493
677
  > **assignTo**(`dest`?, `options`?): `any`
494
678
 
495
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/abstract.d.ts:191
679
+ Defined in: [property-manager.js/src/abstract.d.ts:191](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/abstract.d.ts#L191)
496
680
 
497
681
  Assign this attributes to the dest object
498
682
 
@@ -524,7 +708,7 @@ the dest object
524
708
 
525
709
  > **clone**(`options`?): `any`
526
710
 
527
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/abstract.d.ts:155
711
+ Defined in: [property-manager.js/src/abstract.d.ts:155](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/abstract.d.ts#L155)
528
712
 
529
713
  Create a new object with the same values of attributes.
530
714
 
@@ -550,7 +734,7 @@ the new object
550
734
 
551
735
  > **cloneTo**(`dest`, `options`?): `any`
552
736
 
553
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/abstract.d.ts:148
737
+ Defined in: [property-manager.js/src/abstract.d.ts:148](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/abstract.d.ts#L148)
554
738
 
555
739
  Create and assign the values to the destination object.
556
740
 
@@ -582,7 +766,7 @@ the new dest object
582
766
 
583
767
  > `abstract` **defineProperties**(`aProperties`): `any`
584
768
 
585
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/abstract.d.ts:89
769
+ Defined in: [property-manager.js/src/abstract.d.ts:89](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/abstract.d.ts#L89)
586
770
 
587
771
  Define the attributes of this object.
588
772
 
@@ -608,7 +792,7 @@ the defined attributes of the object
608
792
 
609
793
  > **exportTo**(`dest`, `options`?): `any`
610
794
 
611
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/abstract.d.ts:173
795
+ Defined in: [property-manager.js/src/abstract.d.ts:173](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/abstract.d.ts#L173)
612
796
 
613
797
  Export attributes to the dest json object.
614
798
 
@@ -638,18 +822,27 @@ the dest object.
638
822
 
639
823
  ### func()
640
824
 
641
- > **func**(`__namedParameters`): `any`
825
+ > **func**(`params`): `any`
826
+
827
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/server-tools.ts:112](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/server-tools.ts#L112)
642
828
 
643
- Defined in: [packages/ai-tool/src/server-tools.ts:59](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/server-tools.ts#L59)
829
+ Placeholder for the actual server-side function implementation.
830
+ This method is intended to be defined when a `ServerTools` instance is created.
644
831
 
645
832
  #### Parameters
646
833
 
647
- ##### \_\_namedParameters
834
+ ##### params
835
+
836
+ [`ServerFuncParams`](../interfaces/ServerFuncParams.md)
837
+
838
+ The parameters for the function.
648
839
 
649
840
  #### Returns
650
841
 
651
842
  `any`
652
843
 
844
+ The result of the function.
845
+
653
846
  #### Inherited from
654
847
 
655
848
  [`ToolFunc`](ToolFunc.md).[`func`](ToolFunc.md#func)
@@ -660,7 +853,11 @@ Defined in: [packages/ai-tool/src/server-tools.ts:59](https://github.com/isdk/ai
660
853
 
661
854
  > **getFunc**(`name`?): `any`
662
855
 
663
- Defined in: [packages/ai-tool/src/tool-func.ts:322](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L322)
856
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:720](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L720)
857
+
858
+ Gets a bound function reference for execution with named parameters.
859
+ If a name is provided, it retrieves a different function from the registry.
860
+ Otherwise, it returns a bound version of this instance's `runSync`.
664
861
 
665
862
  #### Parameters
666
863
 
@@ -668,10 +865,14 @@ Defined in: [packages/ai-tool/src/tool-func.ts:322](https://github.com/isdk/ai-t
668
865
 
669
866
  `string`
670
867
 
868
+ Optional name of the function to retrieve.
869
+
671
870
  #### Returns
672
871
 
673
872
  `any`
674
873
 
874
+ A function reference or `undefined` if not found.
875
+
675
876
  #### Inherited from
676
877
 
677
878
  [`ToolFunc`](ToolFunc.md).[`getFunc`](ToolFunc.md#getfunc)
@@ -682,7 +883,11 @@ Defined in: [packages/ai-tool/src/tool-func.ts:322](https://github.com/isdk/ai-t
682
883
 
683
884
  > **getFuncWithPos**(`name`?): `any`
684
885
 
685
- Defined in: [packages/ai-tool/src/tool-func.ts:346](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L346)
886
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:777](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L777)
887
+
888
+ Gets a bound function reference suitable for positional argument execution.
889
+ If a name is provided, it retrieves a different function from the registry.
890
+ Otherwise, it returns a bound version of this instance's `runWithPosSync`.
686
891
 
687
892
  #### Parameters
688
893
 
@@ -690,10 +895,14 @@ Defined in: [packages/ai-tool/src/tool-func.ts:346](https://github.com/isdk/ai-t
690
895
 
691
896
  `string`
692
897
 
898
+ Optional name of the function to retrieve.
899
+
693
900
  #### Returns
694
901
 
695
902
  `any`
696
903
 
904
+ A function reference or `undefined` if not found.
905
+
697
906
  #### Inherited from
698
907
 
699
908
  [`ToolFunc`](ToolFunc.md).[`getFuncWithPos`](ToolFunc.md#getfuncwithpos)
@@ -704,7 +913,7 @@ Defined in: [packages/ai-tool/src/tool-func.ts:346](https://github.com/isdk/ai-t
704
913
 
705
914
  > `abstract` **getProperties**(): `PropDescriptors`
706
915
 
707
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/abstract.d.ts:98
916
+ Defined in: [property-manager.js/src/abstract.d.ts:98](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/abstract.d.ts#L98)
708
917
 
709
918
  Get the defined attributes.
710
919
 
@@ -724,7 +933,9 @@ the descriptors of properties object
724
933
 
725
934
  > **hasAsyncFeature**(`feature`): `boolean`
726
935
 
727
- Defined in: [packages/ai-tool/src/tool-func.ts:351](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L351)
936
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:787](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L787)
937
+
938
+ Checks if the current function instance supports a specific async feature.
728
939
 
729
940
  #### Parameters
730
941
 
@@ -732,10 +943,14 @@ Defined in: [packages/ai-tool/src/tool-func.ts:351](https://github.com/isdk/ai-t
732
943
 
733
944
  [`AsyncFeatureBits`](../enumerations/AsyncFeatureBits.md)
734
945
 
946
+ The async feature bit to check for.
947
+
735
948
  #### Returns
736
949
 
737
950
  `boolean`
738
951
 
952
+ `true` if the feature is supported, otherwise `false`.
953
+
739
954
  #### Inherited from
740
955
 
741
956
  [`ToolFunc`](ToolFunc.md).[`hasAsyncFeature`](ToolFunc.md#hasasyncfeature)
@@ -746,7 +961,7 @@ Defined in: [packages/ai-tool/src/tool-func.ts:351](https://github.com/isdk/ai-t
746
961
 
747
962
  > **hasOwnProperty**(`v`): `boolean`
748
963
 
749
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:140
964
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:140
750
965
 
751
966
  Determines whether an object has a property with the specified name.
752
967
 
@@ -772,7 +987,7 @@ A property name.
772
987
 
773
988
  > **initialize**(`src`?): `this`
774
989
 
775
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/abstract.d.ts:139
990
+ Defined in: [property-manager.js/src/abstract.d.ts:139](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/abstract.d.ts#L139)
776
991
 
777
992
  Initialize object and assign attribute values from src if src exists.
778
993
 
@@ -798,7 +1013,7 @@ this object.
798
1013
 
799
1014
  > **isPrototypeOf**(`v`): `boolean`
800
1015
 
801
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:146
1016
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:146
802
1017
 
803
1018
  Determines whether an object exists in another object's prototype chain.
804
1019
 
@@ -824,7 +1039,7 @@ Another object whose prototype chain is to be checked.
824
1039
 
825
1040
  > **isSame**(`src`, `options`?): `boolean`
826
1041
 
827
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/abstract.d.ts:200
1042
+ Defined in: [property-manager.js/src/abstract.d.ts:200](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/abstract.d.ts#L200)
828
1043
 
829
1044
  Check the src object whether “equals” this object.
830
1045
 
@@ -854,7 +1069,15 @@ The source object
854
1069
 
855
1070
  > **isStream**(`params`): `undefined` \| `boolean`
856
1071
 
857
- Defined in: [packages/ai-tool/src/tool-func.ts:357](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L357)
1072
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:805](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L805)
1073
+
1074
+ Determines if a function call should produce a stream.
1075
+
1076
+ The logic is as follows:
1077
+ 1. It first checks if the function is generally capable of streaming (`this.stream`).
1078
+ 2. If it is, it then checks if a `stream` parameter is formally declared in the function's `params` definition.
1079
+ 3. If both are true, the method returns the value of the `stream` property from the runtime `params` object.
1080
+ Otherwise, it returns the function's static `stream` capability.
858
1081
 
859
1082
  #### Parameters
860
1083
 
@@ -862,10 +1085,14 @@ Defined in: [packages/ai-tool/src/tool-func.ts:357](https://github.com/isdk/ai-t
862
1085
 
863
1086
  `any`
864
1087
 
1088
+ The runtime parameters passed to the function call.
1089
+
865
1090
  #### Returns
866
1091
 
867
1092
  `undefined` \| `boolean`
868
1093
 
1094
+ `true` if the call should be streamed, `false` or `undefined` otherwise.
1095
+
869
1096
  #### Inherited from
870
1097
 
871
1098
  [`ToolFunc`](ToolFunc.md).[`isStream`](ToolFunc.md#isstream)
@@ -876,7 +1103,7 @@ Defined in: [packages/ai-tool/src/tool-func.ts:357](https://github.com/isdk/ai-t
876
1103
 
877
1104
  > **mergeTo**(`dest`, `options`?): `any`
878
1105
 
879
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/abstract.d.ts:164
1106
+ Defined in: [property-manager.js/src/abstract.d.ts:164](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/abstract.d.ts#L164)
880
1107
 
881
1108
  Merge this attributes to dest object.
882
1109
 
@@ -908,7 +1135,10 @@ the dest object.
908
1135
 
909
1136
  > **obj2ArrParams**(`params`?): `any`[]
910
1137
 
911
- Defined in: [packages/ai-tool/src/tool-func.ts:282](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L282)
1138
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:648](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L648)
1139
+
1140
+ Converts a named parameters object into an array of positional arguments.
1141
+ This is used for functions defined with positional parameters.
912
1142
 
913
1143
  #### Parameters
914
1144
 
@@ -916,10 +1146,14 @@ Defined in: [packages/ai-tool/src/tool-func.ts:282](https://github.com/isdk/ai-t
916
1146
 
917
1147
  `any`
918
1148
 
1149
+ A named parameters object.
1150
+
919
1151
  #### Returns
920
1152
 
921
1153
  `any`[]
922
1154
 
1155
+ An array of positional arguments.
1156
+
923
1157
  #### Inherited from
924
1158
 
925
1159
  [`ToolFunc`](ToolFunc.md).[`obj2ArrParams`](ToolFunc.md#obj2arrparams)
@@ -930,7 +1164,7 @@ Defined in: [packages/ai-tool/src/tool-func.ts:282](https://github.com/isdk/ai-t
930
1164
 
931
1165
  > **propertyIsEnumerable**(`v`): `boolean`
932
1166
 
933
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:152
1167
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:152
934
1168
 
935
1169
  Determines whether a specified property is enumerable.
936
1170
 
@@ -956,12 +1190,17 @@ A property name.
956
1190
 
957
1191
  > **register**(): `boolean` \| [`ToolFunc`](ToolFunc.md)
958
1192
 
959
- Defined in: [packages/ai-tool/src/tool-func.ts:252](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L252)
1193
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:602](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L602)
1194
+
1195
+ Registers the current `ToolFunc` instance into the static registry.
1196
+ Also registers any declared dependencies.
960
1197
 
961
1198
  #### Returns
962
1199
 
963
1200
  `boolean` \| [`ToolFunc`](ToolFunc.md)
964
1201
 
1202
+ The instance itself upon successful registration, or `false` if it already exists.
1203
+
965
1204
  #### Inherited from
966
1205
 
967
1206
  [`ToolFunc`](ToolFunc.md).[`register`](ToolFunc.md#register)
@@ -970,13 +1209,31 @@ Defined in: [packages/ai-tool/src/tool-func.ts:252](https://github.com/isdk/ai-t
970
1209
 
971
1210
  ### run()
972
1211
 
973
- > **run**(`params`?): `Promise`\<`any`\>
1212
+ > **run**(`params`, `context`?): `Promise`\<`any`\>
1213
+
1214
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/server-tools.ts:98](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/server-tools.ts#L98)
974
1215
 
975
- Defined in: [packages/ai-tool/src/tool-func.ts:309](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L309)
1216
+ Overrides the base `run` method to inject transport-specific context.
1217
+ If a `context` object containing `req` and `reply` is provided, these are
1218
+ added to the parameters as `_req` and `_res` before execution.
976
1219
 
977
1220
  #### Parameters
978
1221
 
979
- ##### params?
1222
+ ##### params
1223
+
1224
+ [`ServerFuncParams`](../interfaces/ServerFuncParams.md)
1225
+
1226
+ The parameters for the function.
1227
+
1228
+ ##### context?
1229
+
1230
+ The transport-level context.
1231
+
1232
+ ###### reply
1233
+
1234
+ `any`
1235
+
1236
+ ###### req
980
1237
 
981
1238
  `any`
982
1239
 
@@ -984,6 +1241,8 @@ Defined in: [packages/ai-tool/src/tool-func.ts:309](https://github.com/isdk/ai-t
984
1241
 
985
1242
  `Promise`\<`any`\>
986
1243
 
1244
+ The result of the function execution.
1245
+
987
1246
  #### Inherited from
988
1247
 
989
1248
  [`ToolFunc`](ToolFunc.md).[`run`](ToolFunc.md#run)
@@ -994,7 +1253,10 @@ Defined in: [packages/ai-tool/src/tool-func.ts:309](https://github.com/isdk/ai-t
994
1253
 
995
1254
  > **runAs**(`name`, `params`?): `Promise`\<`any`\>
996
1255
 
997
- Defined in: [packages/ai-tool/src/tool-func.ts:313](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L313)
1256
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:697](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L697)
1257
+
1258
+ Asynchronously executes another registered function by name.
1259
+ This method delegates to `runAsSync()` internally.
998
1260
 
999
1261
  #### Parameters
1000
1262
 
@@ -1002,14 +1264,20 @@ Defined in: [packages/ai-tool/src/tool-func.ts:313](https://github.com/isdk/ai-t
1002
1264
 
1003
1265
  `string`
1004
1266
 
1267
+ The name of the target function to run.
1268
+
1005
1269
  ##### params?
1006
1270
 
1007
1271
  `any`
1008
1272
 
1273
+ Optional parameters to pass to the function.
1274
+
1009
1275
  #### Returns
1010
1276
 
1011
1277
  `Promise`\<`any`\>
1012
1278
 
1279
+ A promise that resolves with the result of the function execution.
1280
+
1013
1281
  #### Inherited from
1014
1282
 
1015
1283
  [`ToolFunc`](ToolFunc.md).[`runAs`](ToolFunc.md#runas)
@@ -1020,7 +1288,10 @@ Defined in: [packages/ai-tool/src/tool-func.ts:313](https://github.com/isdk/ai-t
1020
1288
 
1021
1289
  > **runAsSync**(`name`, `params`?): `any`
1022
1290
 
1023
- Defined in: [packages/ai-tool/src/tool-func.ts:317](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L317)
1291
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:708](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L708)
1292
+
1293
+ Synchronously executes another registered function by name.
1294
+ This is a convenience method that forwards the call to the static `runSync()` method.
1024
1295
 
1025
1296
  #### Parameters
1026
1297
 
@@ -1028,14 +1299,20 @@ Defined in: [packages/ai-tool/src/tool-func.ts:317](https://github.com/isdk/ai-t
1028
1299
 
1029
1300
  `string`
1030
1301
 
1302
+ The name of the target function to run.
1303
+
1031
1304
  ##### params?
1032
1305
 
1033
1306
  `any`
1034
1307
 
1308
+ Optional parameters to pass to the function.
1309
+
1035
1310
  #### Returns
1036
1311
 
1037
1312
  `any`
1038
1313
 
1314
+ The result of the function execution.
1315
+
1039
1316
  #### Inherited from
1040
1317
 
1041
1318
  [`ToolFunc`](ToolFunc.md).[`runAsSync`](ToolFunc.md#runassync)
@@ -1046,7 +1323,9 @@ Defined in: [packages/ai-tool/src/tool-func.ts:317](https://github.com/isdk/ai-t
1046
1323
 
1047
1324
  > **runSync**(`params`?): `any`
1048
1325
 
1049
- Defined in: [packages/ai-tool/src/tool-func.ts:295](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L295)
1326
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:667](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L667)
1327
+
1328
+ Executes the function synchronously with a named parameters object.
1050
1329
 
1051
1330
  #### Parameters
1052
1331
 
@@ -1054,10 +1333,18 @@ Defined in: [packages/ai-tool/src/tool-func.ts:295](https://github.com/isdk/ai-t
1054
1333
 
1055
1334
  `any`
1056
1335
 
1336
+ The parameters object for the function.
1337
+
1057
1338
  #### Returns
1058
1339
 
1059
1340
  `any`
1060
1341
 
1342
+ The result of the function execution.
1343
+
1344
+ #### Throws
1345
+
1346
+ Will throw an error if an array of parameters is passed to a function that expects an object.
1347
+
1061
1348
  #### Inherited from
1062
1349
 
1063
1350
  [`ToolFunc`](ToolFunc.md).[`runSync`](ToolFunc.md#runsync)
@@ -1068,7 +1355,10 @@ Defined in: [packages/ai-tool/src/tool-func.ts:295](https://github.com/isdk/ai-t
1068
1355
 
1069
1356
  > **runWithPos**(...`params`): `Promise`\<`any`\>
1070
1357
 
1071
- Defined in: [packages/ai-tool/src/tool-func.ts:338](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L338)
1358
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:755](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L755)
1359
+
1360
+ Executes the function asynchronously using positional arguments.
1361
+ Delegates to `runWithPosSync()` internally.
1072
1362
 
1073
1363
  #### Parameters
1074
1364
 
@@ -1076,10 +1366,14 @@ Defined in: [packages/ai-tool/src/tool-func.ts:338](https://github.com/isdk/ai-t
1076
1366
 
1077
1367
  ...`any`[]
1078
1368
 
1369
+ Positional arguments passed to the function.
1370
+
1079
1371
  #### Returns
1080
1372
 
1081
1373
  `Promise`\<`any`\>
1082
1374
 
1375
+ A promise that resolves with the result of the function execution.
1376
+
1083
1377
  #### Inherited from
1084
1378
 
1085
1379
  [`ToolFunc`](ToolFunc.md).[`runWithPos`](ToolFunc.md#runwithpos)
@@ -1090,7 +1384,10 @@ Defined in: [packages/ai-tool/src/tool-func.ts:338](https://github.com/isdk/ai-t
1090
1384
 
1091
1385
  > **runWithPosAs**(`name`, ...`params`): `Promise`\<`any`\>
1092
1386
 
1093
- Defined in: [packages/ai-tool/src/tool-func.ts:342](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L342)
1387
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:766](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L766)
1388
+
1389
+ Asynchronously executes another function by name using positional arguments.
1390
+ Delegates to `runWithPosAsSync()` internally.
1094
1391
 
1095
1392
  #### Parameters
1096
1393
 
@@ -1098,14 +1395,20 @@ Defined in: [packages/ai-tool/src/tool-func.ts:342](https://github.com/isdk/ai-t
1098
1395
 
1099
1396
  `string`
1100
1397
 
1398
+ The name of the target function to run.
1399
+
1101
1400
  ##### params
1102
1401
 
1103
1402
  ...`any`[]
1104
1403
 
1404
+ Positional arguments to pass to the function.
1405
+
1105
1406
  #### Returns
1106
1407
 
1107
1408
  `Promise`\<`any`\>
1108
1409
 
1410
+ A promise that resolves with the result of the function execution.
1411
+
1109
1412
  #### Inherited from
1110
1413
 
1111
1414
  [`ToolFunc`](ToolFunc.md).[`runWithPosAs`](ToolFunc.md#runwithposas)
@@ -1116,7 +1419,10 @@ Defined in: [packages/ai-tool/src/tool-func.ts:342](https://github.com/isdk/ai-t
1116
1419
 
1117
1420
  > **runWithPosAsSync**(`name`, ...`params`): `any`
1118
1421
 
1119
- Defined in: [packages/ai-tool/src/tool-func.ts:334](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L334)
1422
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:745](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L745)
1423
+
1424
+ Synchronously executes another function by name using positional arguments.
1425
+ This is a convenience wrapper around the static `runWithPosSync()` method.
1120
1426
 
1121
1427
  #### Parameters
1122
1428
 
@@ -1124,14 +1430,20 @@ Defined in: [packages/ai-tool/src/tool-func.ts:334](https://github.com/isdk/ai-t
1124
1430
 
1125
1431
  `string`
1126
1432
 
1433
+ The name of the target function to run.
1434
+
1127
1435
  ##### params
1128
1436
 
1129
1437
  ...`any`[]
1130
1438
 
1439
+ Positional arguments to pass to the function.
1440
+
1131
1441
  #### Returns
1132
1442
 
1133
1443
  `any`
1134
1444
 
1445
+ The result of the function execution.
1446
+
1135
1447
  #### Inherited from
1136
1448
 
1137
1449
  [`ToolFunc`](ToolFunc.md).[`runWithPosAsSync`](ToolFunc.md#runwithposassync)
@@ -1142,7 +1454,10 @@ Defined in: [packages/ai-tool/src/tool-func.ts:334](https://github.com/isdk/ai-t
1142
1454
 
1143
1455
  > **runWithPosSync**(...`params`): `any`
1144
1456
 
1145
- Defined in: [packages/ai-tool/src/tool-func.ts:327](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L327)
1457
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:731](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L731)
1458
+
1459
+ Executes the function synchronously using positional arguments.
1460
+ If the function expects named parameters, it converts the arguments automatically.
1146
1461
 
1147
1462
  #### Parameters
1148
1463
 
@@ -1150,10 +1465,14 @@ Defined in: [packages/ai-tool/src/tool-func.ts:327](https://github.com/isdk/ai-t
1150
1465
 
1151
1466
  ...`any`[]
1152
1467
 
1468
+ Positional arguments passed to the function.
1469
+
1153
1470
  #### Returns
1154
1471
 
1155
1472
  `any`
1156
1473
 
1474
+ The result of the function execution.
1475
+
1157
1476
  #### Inherited from
1158
1477
 
1159
1478
  [`ToolFunc`](ToolFunc.md).[`runWithPosSync`](ToolFunc.md#runwithpossync)
@@ -1164,7 +1483,7 @@ Defined in: [packages/ai-tool/src/tool-func.ts:327](https://github.com/isdk/ai-t
1164
1483
 
1165
1484
  > **toJSON**(): `any`
1166
1485
 
1167
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/abstract.d.ts:182
1486
+ Defined in: [property-manager.js/src/abstract.d.ts:182](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/abstract.d.ts#L182)
1168
1487
 
1169
1488
  #### Returns
1170
1489
 
@@ -1180,7 +1499,7 @@ Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-ma
1180
1499
 
1181
1500
  > **toLocaleString**(): `string`
1182
1501
 
1183
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:131
1502
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:131
1184
1503
 
1185
1504
  Returns a date converted to a string using the current locale.
1186
1505
 
@@ -1198,7 +1517,7 @@ Returns a date converted to a string using the current locale.
1198
1517
 
1199
1518
  > **toObject**(`options`?): `any`
1200
1519
 
1201
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/abstract.d.ts:181
1520
+ Defined in: [property-manager.js/src/abstract.d.ts:181](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/abstract.d.ts#L181)
1202
1521
 
1203
1522
  Convert the attributes to the json object
1204
1523
 
@@ -1224,7 +1543,7 @@ the json object.
1224
1543
 
1225
1544
  > **toString**(): `string`
1226
1545
 
1227
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:128
1546
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:128
1228
1547
 
1229
1548
  Returns a string representation of an object.
1230
1549
 
@@ -1242,12 +1561,16 @@ Returns a string representation of an object.
1242
1561
 
1243
1562
  > **unregister**(): `any`
1244
1563
 
1245
- Defined in: [packages/ai-tool/src/tool-func.ts:265](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L265)
1564
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:619](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L619)
1565
+
1566
+ Removes the current `ToolFunc` instance from the static registry.
1246
1567
 
1247
1568
  #### Returns
1248
1569
 
1249
1570
  `any`
1250
1571
 
1572
+ The instance that was unregistered.
1573
+
1251
1574
  #### Inherited from
1252
1575
 
1253
1576
  [`ToolFunc`](ToolFunc.md).[`unregister`](ToolFunc.md#unregister)
@@ -1258,7 +1581,7 @@ Defined in: [packages/ai-tool/src/tool-func.ts:265](https://github.com/isdk/ai-t
1258
1581
 
1259
1582
  > **valueOf**(): `Object`
1260
1583
 
1261
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:134
1584
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:134
1262
1585
 
1263
1586
  Returns the primitive value of the specified object.
1264
1587
 
@@ -1278,7 +1601,7 @@ Returns the primitive value of the specified object.
1278
1601
 
1279
1602
  > `static` **assign**\<`T`, `U`\>(`target`, `source`): `T` & `U`
1280
1603
 
1281
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2015.core.d.ts:286
1604
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2015.core.d.ts:286
1282
1605
 
1283
1606
  Copy the values of all of the enumerable own properties from one or more source objects to a
1284
1607
  target object. Returns the target object.
@@ -1315,7 +1638,7 @@ The source object from which to copy properties.
1315
1638
 
1316
1639
  > `static` **assign**\<`T`, `U`, `V`\>(`target`, `source1`, `source2`): `T` & `U` & `V`
1317
1640
 
1318
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2015.core.d.ts:295
1641
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2015.core.d.ts:295
1319
1642
 
1320
1643
  Copy the values of all of the enumerable own properties from one or more source objects to a
1321
1644
  target object. Returns the target object.
@@ -1360,7 +1683,7 @@ The second source object from which to copy properties.
1360
1683
 
1361
1684
  > `static` **assign**\<`T`, `U`, `V`, `W`\>(`target`, `source1`, `source2`, `source3`): `T` & `U` & `V` & `W`
1362
1685
 
1363
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2015.core.d.ts:305
1686
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2015.core.d.ts:305
1364
1687
 
1365
1688
  Copy the values of all of the enumerable own properties from one or more source objects to a
1366
1689
  target object. Returns the target object.
@@ -1413,7 +1736,7 @@ The third source object from which to copy properties.
1413
1736
 
1414
1737
  > `static` **assign**(`target`, ...`sources`): `any`
1415
1738
 
1416
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2015.core.d.ts:313
1739
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2015.core.d.ts:313
1417
1740
 
1418
1741
  Copy the values of all of the enumerable own properties from one or more source objects to a
1419
1742
  target object. Returns the target object.
@@ -1448,7 +1771,7 @@ One or more source objects from which to copy properties
1448
1771
 
1449
1772
  > `static` **create**(`o`): `any`
1450
1773
 
1451
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:188
1774
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:188
1452
1775
 
1453
1776
  Creates an object that has the specified prototype or that has null prototype.
1454
1777
 
@@ -1472,7 +1795,7 @@ Object to use as a prototype. May be null.
1472
1795
 
1473
1796
  > `static` **create**(`o`, `properties`): `any`
1474
1797
 
1475
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:195
1798
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:195
1476
1799
 
1477
1800
  Creates an object that has the specified prototype, and that optionally contains specified properties.
1478
1801
 
@@ -1504,7 +1827,7 @@ JavaScript object that contains one or more property descriptors.
1504
1827
 
1505
1828
  > `static` **defineProperties**(`aTarget`, `aProperties`, `recreate`?): `any`
1506
1829
 
1507
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/advance.d.ts:11
1830
+ Defined in: [property-manager.js/src/advance.d.ts:11](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/advance.d.ts#L11)
1508
1831
 
1509
1832
  Adds one or more properties to an object, and/or modifies attributes of existing properties.
1510
1833
 
@@ -1536,7 +1859,7 @@ Adds one or more properties to an object, and/or modifies attributes of existing
1536
1859
 
1537
1860
  > `static` **defineProperty**\<`T`\>(`o`, `p`, `attributes`): `T`
1538
1861
 
1539
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:203
1862
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:203
1540
1863
 
1541
1864
  Adds a property to an object, or modifies attributes of an existing property.
1542
1865
 
@@ -1580,7 +1903,7 @@ Descriptor for the property. It can be for a data property or an accessor proper
1580
1903
 
1581
1904
  > `static` **entries**\<`T`\>(`o`): \[`string`, `T`\][]
1582
1905
 
1583
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2017.object.d.ts:36
1906
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2017.object.d.ts:36
1584
1907
 
1585
1908
  Returns an array of key/values of the enumerable own properties of an object
1586
1909
 
@@ -1608,7 +1931,7 @@ Object that contains the properties and methods. This can be an object that you
1608
1931
 
1609
1932
  > `static` **entries**(`o`): \[`string`, `any`\][]
1610
1933
 
1611
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2017.object.d.ts:42
1934
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2017.object.d.ts:42
1612
1935
 
1613
1936
  Returns an array of key/values of the enumerable own properties of an object
1614
1937
 
@@ -1634,7 +1957,7 @@ Object that contains the properties and methods. This can be an object that you
1634
1957
 
1635
1958
  > `static` **freeze**\<`T`\>(`f`): `T`
1636
1959
 
1637
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:222
1960
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:222
1638
1961
 
1639
1962
  Prevents the modification of existing property attributes and values, and prevents the addition of new properties.
1640
1963
 
@@ -1662,7 +1985,7 @@ Object on which to lock the attributes.
1662
1985
 
1663
1986
  > `static` **freeze**\<`T`, `U`\>(`o`): `Readonly`\<`T`\>
1664
1987
 
1665
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:228
1988
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:228
1666
1989
 
1667
1990
  Prevents the modification of existing property attributes and values, and prevents the addition of new properties.
1668
1991
 
@@ -1692,7 +2015,7 @@ Object on which to lock the attributes.
1692
2015
 
1693
2016
  > `static` **freeze**\<`T`\>(`o`): `Readonly`\<`T`\>
1694
2017
 
1695
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:234
2018
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:234
1696
2019
 
1697
2020
  Prevents the modification of existing property attributes and values, and prevents the addition of new properties.
1698
2021
 
@@ -1724,7 +2047,7 @@ Object on which to lock the attributes.
1724
2047
 
1725
2048
  > `static` **fromEntries**\<`T`\>(`entries`): `object`
1726
2049
 
1727
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2019.object.d.ts:26
2050
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2019.object.d.ts:26
1728
2051
 
1729
2052
  Returns an object created by key-value entries for properties and methods
1730
2053
 
@@ -1752,7 +2075,7 @@ An iterable object that contains key-value entries for properties and methods.
1752
2075
 
1753
2076
  > `static` **fromEntries**(`entries`): `any`
1754
2077
 
1755
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2019.object.d.ts:32
2078
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2019.object.d.ts:32
1756
2079
 
1757
2080
  Returns an object created by key-value entries for properties and methods
1758
2081
 
@@ -1778,7 +2101,9 @@ An iterable object that contains key-value entries for properties and methods.
1778
2101
 
1779
2102
  > `static` **get**(`name`): [`ToolFunc`](ToolFunc.md)
1780
2103
 
1781
- Defined in: [packages/ai-tool/src/tool-func.ts:61](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L61)
2104
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:319](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L319)
2105
+
2106
+ Retrieves a registered function by its name or alias.
1782
2107
 
1783
2108
  #### Parameters
1784
2109
 
@@ -1786,10 +2111,14 @@ Defined in: [packages/ai-tool/src/tool-func.ts:61](https://github.com/isdk/ai-to
1786
2111
 
1787
2112
  `string`
1788
2113
 
2114
+ The name or alias of the function to retrieve.
2115
+
1789
2116
  #### Returns
1790
2117
 
1791
2118
  [`ToolFunc`](ToolFunc.md)
1792
2119
 
2120
+ The `ToolFunc` instance if found, otherwise `undefined`.
2121
+
1793
2122
  #### Inherited from
1794
2123
 
1795
2124
  [`ToolFunc`](ToolFunc.md).[`get`](ToolFunc.md#get)
@@ -1800,7 +2129,9 @@ Defined in: [packages/ai-tool/src/tool-func.ts:61](https://github.com/isdk/ai-to
1800
2129
 
1801
2130
  > `static` **getAllByTag**(`tagName`): [`ToolFunc`](ToolFunc.md)[]
1802
2131
 
1803
- Defined in: [packages/ai-tool/src/tool-func.ts:93](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L93)
2132
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:365](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L365)
2133
+
2134
+ Retrieves all registered functions that have a specific tag.
1804
2135
 
1805
2136
  #### Parameters
1806
2137
 
@@ -1808,10 +2139,14 @@ Defined in: [packages/ai-tool/src/tool-func.ts:93](https://github.com/isdk/ai-to
1808
2139
 
1809
2140
  `string`
1810
2141
 
2142
+ The tag to search for.
2143
+
1811
2144
  #### Returns
1812
2145
 
1813
2146
  [`ToolFunc`](ToolFunc.md)[]
1814
2147
 
2148
+ An array of matching `ToolFunc` instances.
2149
+
1815
2150
  #### Inherited from
1816
2151
 
1817
2152
  [`ToolFunc`](ToolFunc.md).[`getAllByTag`](ToolFunc.md#getallbytag)
@@ -1822,7 +2157,9 @@ Defined in: [packages/ai-tool/src/tool-func.ts:93](https://github.com/isdk/ai-to
1822
2157
 
1823
2158
  > `static` **getByTag**(`tagName`): `undefined` \| [`ToolFunc`](ToolFunc.md)
1824
2159
 
1825
- Defined in: [packages/ai-tool/src/tool-func.ts:73](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L73)
2160
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:340](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L340)
2161
+
2162
+ Finds the first registered function that has a specific tag.
1826
2163
 
1827
2164
  #### Parameters
1828
2165
 
@@ -1830,10 +2167,14 @@ Defined in: [packages/ai-tool/src/tool-func.ts:73](https://github.com/isdk/ai-to
1830
2167
 
1831
2168
  `string`
1832
2169
 
2170
+ The tag to search for.
2171
+
1833
2172
  #### Returns
1834
2173
 
1835
2174
  `undefined` \| [`ToolFunc`](ToolFunc.md)
1836
2175
 
2176
+ The first matching `ToolFunc` instance, or `undefined` if none is found.
2177
+
1837
2178
  #### Inherited from
1838
2179
 
1839
2180
  [`ToolFunc`](ToolFunc.md).[`getByTag`](ToolFunc.md#getbytag)
@@ -1844,7 +2185,10 @@ Defined in: [packages/ai-tool/src/tool-func.ts:73](https://github.com/isdk/ai-to
1844
2185
 
1845
2186
  > `static` **getFunc**(`name`): `any`
1846
2187
 
1847
- Defined in: [packages/ai-tool/src/tool-func.ts:134](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L134)
2188
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:431](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L431)
2189
+
2190
+ Retrieves a bound, runnable function reference for a registered function.
2191
+ This reference is suitable for execution with an object of named parameters.
1848
2192
 
1849
2193
  #### Parameters
1850
2194
 
@@ -1852,10 +2196,14 @@ Defined in: [packages/ai-tool/src/tool-func.ts:134](https://github.com/isdk/ai-t
1852
2196
 
1853
2197
  `string`
1854
2198
 
2199
+ The name of the function.
2200
+
1855
2201
  #### Returns
1856
2202
 
1857
2203
  `any`
1858
2204
 
2205
+ A bound function reference, or `undefined` if not found.
2206
+
1859
2207
  #### Inherited from
1860
2208
 
1861
2209
  [`ToolFunc`](ToolFunc.md).[`getFunc`](ToolFunc.md#getfunc-2)
@@ -1866,7 +2214,10 @@ Defined in: [packages/ai-tool/src/tool-func.ts:134](https://github.com/isdk/ai-t
1866
2214
 
1867
2215
  > `static` **getFuncWithPos**(`name`): `any`
1868
2216
 
1869
- Defined in: [packages/ai-tool/src/tool-func.ts:155](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L155)
2217
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:472](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L472)
2218
+
2219
+ Retrieves a bound, runnable function reference for a registered function.
2220
+ This reference is suitable for execution with positional arguments.
1870
2221
 
1871
2222
  #### Parameters
1872
2223
 
@@ -1874,10 +2225,14 @@ Defined in: [packages/ai-tool/src/tool-func.ts:155](https://github.com/isdk/ai-t
1874
2225
 
1875
2226
  `string`
1876
2227
 
2228
+ The name of the function.
2229
+
1877
2230
  #### Returns
1878
2231
 
1879
2232
  `any`
1880
2233
 
2234
+ A bound function reference, or `undefined` if not found.
2235
+
1881
2236
  #### Inherited from
1882
2237
 
1883
2238
  [`ToolFunc`](ToolFunc.md).[`getFuncWithPos`](ToolFunc.md#getfuncwithpos-2)
@@ -1888,7 +2243,7 @@ Defined in: [packages/ai-tool/src/tool-func.ts:155](https://github.com/isdk/ai-t
1888
2243
 
1889
2244
  > `static` **getOwnPropertyDescriptor**(`o`, `p`): `undefined` \| `PropertyDescriptor`
1890
2245
 
1891
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:175
2246
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:175
1892
2247
 
1893
2248
  Gets the own property descriptor of the specified object.
1894
2249
  An own property descriptor is one that is defined directly on the object and is not inherited from the object's prototype.
@@ -1921,7 +2276,7 @@ Name of the property.
1921
2276
 
1922
2277
  > `static` **getOwnPropertyDescriptors**\<`T`\>(`o`): \{ \[P in string \| number \| symbol\]: TypedPropertyDescriptor\<T\[P\]\> \} & `object`
1923
2278
 
1924
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2017.object.d.ts:48
2279
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2017.object.d.ts:48
1925
2280
 
1926
2281
  Returns an object containing all own property descriptors of an object
1927
2282
 
@@ -1951,7 +2306,7 @@ Object that contains the properties and methods. This can be an object that you
1951
2306
 
1952
2307
  > `static` **getOwnPropertyNames**(`o`): `string`[]
1953
2308
 
1954
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:182
2309
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:182
1955
2310
 
1956
2311
  Returns the names of the own properties of an object. The own properties of an object are those that are defined directly
1957
2312
  on that object, and are not inherited from the object's prototype. The properties of an object include both fields (objects) and functions.
@@ -1978,7 +2333,7 @@ Object that contains the own properties.
1978
2333
 
1979
2334
  > `static` **getOwnPropertySymbols**(`o`): `symbol`[]
1980
2335
 
1981
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2015.core.d.ts:319
2336
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2015.core.d.ts:319
1982
2337
 
1983
2338
  Returns an array of all symbol properties found directly on object o.
1984
2339
 
@@ -2004,7 +2359,7 @@ Object to retrieve the symbols from.
2004
2359
 
2005
2360
  > `static` **getProperties**(): `PropDescriptors`
2006
2361
 
2007
- Defined in: node\_modules/.pnpm/property-manager@2.0.0/node\_modules/property-manager/lib/advance.d.ts:10
2362
+ Defined in: [property-manager.js/src/advance.d.ts:10](https://github.com/snowyu/property-manager.js/blob/e9ebf4c62be9b6d84e5868ed098df041a53bb90a/src/advance.d.ts#L10)
2008
2363
 
2009
2364
  get all properties descriptor include inherited.
2010
2365
 
@@ -2022,7 +2377,7 @@ get all properties descriptor include inherited.
2022
2377
 
2023
2378
  > `static` **getPrototypeOf**(`o`): `any`
2024
2379
 
2025
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:167
2380
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:167
2026
2381
 
2027
2382
  Returns the prototype of an object.
2028
2383
 
@@ -2048,7 +2403,9 @@ The object that references the prototype.
2048
2403
 
2049
2404
  > `static` **hasAsyncFeature**(`feature`): `boolean`
2050
2405
 
2051
- Defined in: [packages/ai-tool/src/tool-func.ts:111](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L111)
2406
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:388](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L388)
2407
+
2408
+ Checks if any registered function has a specific asynchronous feature.
2052
2409
 
2053
2410
  #### Parameters
2054
2411
 
@@ -2056,10 +2413,14 @@ Defined in: [packages/ai-tool/src/tool-func.ts:111](https://github.com/isdk/ai-t
2056
2413
 
2057
2414
  [`AsyncFeatureBits`](../enumerations/AsyncFeatureBits.md)
2058
2415
 
2416
+ The async feature bit to check for.
2417
+
2059
2418
  #### Returns
2060
2419
 
2061
2420
  `boolean`
2062
2421
 
2422
+ `true` if the feature is present in any function, otherwise `false`.
2423
+
2063
2424
  #### Inherited from
2064
2425
 
2065
2426
  [`ToolFunc`](ToolFunc.md).[`hasAsyncFeature`](ToolFunc.md#hasasyncfeature-2)
@@ -2070,7 +2431,7 @@ Defined in: [packages/ai-tool/src/tool-func.ts:111](https://github.com/isdk/ai-t
2070
2431
 
2071
2432
  > `static` **hasOwn**(`o`, `v`): `boolean`
2072
2433
 
2073
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2022.object.d.ts:25
2434
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2022.object.d.ts:25
2074
2435
 
2075
2436
  Determines whether an object has a property with the specified name.
2076
2437
 
@@ -2102,7 +2463,7 @@ A property name.
2102
2463
 
2103
2464
  > `static` **is**(`value1`, `value2`): `boolean`
2104
2465
 
2105
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2015.core.d.ts:332
2466
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2015.core.d.ts:332
2106
2467
 
2107
2468
  Returns true if the values are the same value, false otherwise.
2108
2469
 
@@ -2134,7 +2495,7 @@ The second value.
2134
2495
 
2135
2496
  > `static` **isExtensible**(`o`): `boolean`
2136
2497
 
2137
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:258
2498
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:258
2138
2499
 
2139
2500
  Returns a value that indicates whether new properties can be added to an object.
2140
2501
 
@@ -2160,7 +2521,7 @@ Object to test.
2160
2521
 
2161
2522
  > `static` **isFrozen**(`o`): `boolean`
2162
2523
 
2163
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:252
2524
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:252
2164
2525
 
2165
2526
  Returns true if existing property attributes and values cannot be modified in an object, and new properties cannot be added to the object.
2166
2527
 
@@ -2186,7 +2547,7 @@ Object to test.
2186
2547
 
2187
2548
  > `static` **isSealed**(`o`): `boolean`
2188
2549
 
2189
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:246
2550
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:246
2190
2551
 
2191
2552
  Returns true if existing property attributes cannot be modified in an object and new properties cannot be added to the object.
2192
2553
 
@@ -2214,7 +2575,7 @@ Object to test.
2214
2575
 
2215
2576
  > `static` **keys**(`o`): `string`[]
2216
2577
 
2217
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:264
2578
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:264
2218
2579
 
2219
2580
  Returns the names of the enumerable string properties and methods of an object.
2220
2581
 
@@ -2238,7 +2599,7 @@ Object that contains the properties and methods. This can be an object that you
2238
2599
 
2239
2600
  > `static` **keys**(`o`): `string`[]
2240
2601
 
2241
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2015.core.d.ts:325
2602
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2015.core.d.ts:325
2242
2603
 
2243
2604
  Returns the names of the enumerable string properties and methods of an object.
2244
2605
 
@@ -2262,12 +2623,16 @@ Object that contains the properties and methods. This can be an object that you
2262
2623
 
2263
2624
  > `static` **list**(): [`Funcs`](../interfaces/Funcs.md)
2264
2625
 
2265
- Defined in: [packages/ai-tool/src/tool-func.ts:69](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L69)
2626
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:331](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L331)
2627
+
2628
+ Returns the complete map of all registered functions.
2266
2629
 
2267
2630
  #### Returns
2268
2631
 
2269
2632
  [`Funcs`](../interfaces/Funcs.md)
2270
2633
 
2634
+ The map of `ToolFunc` instances.
2635
+
2271
2636
  #### Inherited from
2272
2637
 
2273
2638
  [`ToolFunc`](ToolFunc.md).[`list`](ToolFunc.md#list)
@@ -2278,7 +2643,7 @@ Defined in: [packages/ai-tool/src/tool-func.ts:69](https://github.com/isdk/ai-to
2278
2643
 
2279
2644
  > `static` **preventExtensions**\<`T`\>(`o`): `T`
2280
2645
 
2281
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:240
2646
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:240
2282
2647
 
2283
2648
  Prevents the addition of new properties to an object.
2284
2649
 
@@ -2310,7 +2675,9 @@ Object to make non-extensible.
2310
2675
 
2311
2676
  > `static` **register**(`name`, `options`): `boolean` \| [`ToolFunc`](ToolFunc.md)
2312
2677
 
2313
- Defined in: [packages/ai-tool/src/tool-func.ts:160](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L160)
2678
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:495](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L495)
2679
+
2680
+ Registers a new tool function.
2314
2681
 
2315
2682
  ##### Parameters
2316
2683
 
@@ -2318,14 +2685,24 @@ Defined in: [packages/ai-tool/src/tool-func.ts:160](https://github.com/isdk/ai-t
2318
2685
 
2319
2686
  `string`
2320
2687
 
2688
+ The name of the function.
2689
+
2321
2690
  ###### options
2322
2691
 
2323
2692
  [`FuncItem`](../interfaces/FuncItem.md)
2324
2693
 
2694
+ The function's configuration.
2695
+
2325
2696
  ##### Returns
2326
2697
 
2327
2698
  `boolean` \| [`ToolFunc`](ToolFunc.md)
2328
2699
 
2700
+ The new `ToolFunc` instance, or `false` if a function with that name already exists.
2701
+
2702
+ The new `ToolFunc` instance, or `false` if a function with that name already exists.
2703
+
2704
+ The new `ToolFunc` instance, or `false` if a function with that name already exists.
2705
+
2329
2706
  ##### Inherited from
2330
2707
 
2331
2708
  [`ToolFunc`](ToolFunc.md).[`register`](ToolFunc.md#register-2)
@@ -2334,7 +2711,9 @@ Defined in: [packages/ai-tool/src/tool-func.ts:160](https://github.com/isdk/ai-t
2334
2711
 
2335
2712
  > `static` **register**(`func`, `options`): `boolean` \| [`ToolFunc`](ToolFunc.md)
2336
2713
 
2337
- Defined in: [packages/ai-tool/src/tool-func.ts:161](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L161)
2714
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:496](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L496)
2715
+
2716
+ Registers a new tool function.
2338
2717
 
2339
2718
  ##### Parameters
2340
2719
 
@@ -2342,14 +2721,24 @@ Defined in: [packages/ai-tool/src/tool-func.ts:161](https://github.com/isdk/ai-t
2342
2721
 
2343
2722
  `Function`
2344
2723
 
2724
+ The function implementation.
2725
+
2345
2726
  ###### options
2346
2727
 
2347
2728
  [`FuncItem`](../interfaces/FuncItem.md)
2348
2729
 
2730
+ The function's configuration.
2731
+
2349
2732
  ##### Returns
2350
2733
 
2351
2734
  `boolean` \| [`ToolFunc`](ToolFunc.md)
2352
2735
 
2736
+ The new `ToolFunc` instance, or `false` if a function with that name already exists.
2737
+
2738
+ The new `ToolFunc` instance, or `false` if a function with that name already exists.
2739
+
2740
+ The new `ToolFunc` instance, or `false` if a function with that name already exists.
2741
+
2353
2742
  ##### Inherited from
2354
2743
 
2355
2744
  [`ToolFunc`](ToolFunc.md).[`register`](ToolFunc.md#register-2)
@@ -2358,22 +2747,34 @@ Defined in: [packages/ai-tool/src/tool-func.ts:161](https://github.com/isdk/ai-t
2358
2747
 
2359
2748
  > `static` **register**(`name`, `options`?): `boolean` \| [`ToolFunc`](ToolFunc.md)
2360
2749
 
2361
- Defined in: [packages/ai-tool/src/tool-func.ts:162](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L162)
2750
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:497](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L497)
2751
+
2752
+ Registers a new tool function.
2362
2753
 
2363
2754
  ##### Parameters
2364
2755
 
2365
2756
  ###### name
2366
2757
 
2758
+ The name of the function.
2759
+
2367
2760
  `string` | `Function` | [`ToolFunc`](ToolFunc.md) | [`FuncItem`](../interfaces/FuncItem.md)
2368
2761
 
2369
2762
  ###### options?
2370
2763
 
2371
2764
  [`FuncItem`](../interfaces/FuncItem.md)
2372
2765
 
2766
+ The function's configuration.
2767
+
2373
2768
  ##### Returns
2374
2769
 
2375
2770
  `boolean` \| [`ToolFunc`](ToolFunc.md)
2376
2771
 
2772
+ The new `ToolFunc` instance, or `false` if a function with that name already exists.
2773
+
2774
+ The new `ToolFunc` instance, or `false` if a function with that name already exists.
2775
+
2776
+ The new `ToolFunc` instance, or `false` if a function with that name already exists.
2777
+
2377
2778
  ##### Inherited from
2378
2779
 
2379
2780
  [`ToolFunc`](ToolFunc.md).[`register`](ToolFunc.md#register-2)
@@ -2384,7 +2785,9 @@ Defined in: [packages/ai-tool/src/tool-func.ts:162](https://github.com/isdk/ai-t
2384
2785
 
2385
2786
  > `static` **run**(`name`, `params`?): `Promise`\<`any`\>
2386
2787
 
2387
- Defined in: [packages/ai-tool/src/tool-func.ts:118](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L118)
2788
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:402](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L402)
2789
+
2790
+ Asynchronously executes a registered function by name with named parameters.
2388
2791
 
2389
2792
  #### Parameters
2390
2793
 
@@ -2392,14 +2795,24 @@ Defined in: [packages/ai-tool/src/tool-func.ts:118](https://github.com/isdk/ai-t
2392
2795
 
2393
2796
  `string`
2394
2797
 
2798
+ The name of the function to run.
2799
+
2395
2800
  ##### params?
2396
2801
 
2397
2802
  `any`
2398
2803
 
2804
+ The parameters object for the function.
2805
+
2399
2806
  #### Returns
2400
2807
 
2401
2808
  `Promise`\<`any`\>
2402
2809
 
2810
+ A promise that resolves with the function's result.
2811
+
2812
+ #### Throws
2813
+
2814
+ If the function with the given name is not found.
2815
+
2403
2816
  #### Inherited from
2404
2817
 
2405
2818
  [`ToolFunc`](ToolFunc.md).[`run`](ToolFunc.md#run-2)
@@ -2410,7 +2823,9 @@ Defined in: [packages/ai-tool/src/tool-func.ts:118](https://github.com/isdk/ai-t
2410
2823
 
2411
2824
  > `static` **runSync**(`name`, `params`?): `any`
2412
2825
 
2413
- Defined in: [packages/ai-tool/src/tool-func.ts:126](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L126)
2826
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:417](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L417)
2827
+
2828
+ Synchronously executes a registered function by name with named parameters.
2414
2829
 
2415
2830
  #### Parameters
2416
2831
 
@@ -2418,14 +2833,24 @@ Defined in: [packages/ai-tool/src/tool-func.ts:126](https://github.com/isdk/ai-t
2418
2833
 
2419
2834
  `string`
2420
2835
 
2836
+ The name of the function to run.
2837
+
2421
2838
  ##### params?
2422
2839
 
2423
2840
  `any`
2424
2841
 
2842
+ The parameters object for the function.
2843
+
2425
2844
  #### Returns
2426
2845
 
2427
2846
  `any`
2428
2847
 
2848
+ The result of the function's execution.
2849
+
2850
+ #### Throws
2851
+
2852
+ If the function with the given name is not found.
2853
+
2429
2854
  #### Inherited from
2430
2855
 
2431
2856
  [`ToolFunc`](ToolFunc.md).[`runSync`](ToolFunc.md#runsync-2)
@@ -2436,7 +2861,9 @@ Defined in: [packages/ai-tool/src/tool-func.ts:126](https://github.com/isdk/ai-t
2436
2861
 
2437
2862
  > `static` **runWithPos**(`name`, ...`params`): `Promise`\<`any`\>
2438
2863
 
2439
- Defined in: [packages/ai-tool/src/tool-func.ts:139](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L139)
2864
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:443](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L443)
2865
+
2866
+ Asynchronously executes a function using positional arguments.
2440
2867
 
2441
2868
  #### Parameters
2442
2869
 
@@ -2444,14 +2871,24 @@ Defined in: [packages/ai-tool/src/tool-func.ts:139](https://github.com/isdk/ai-t
2444
2871
 
2445
2872
  `string`
2446
2873
 
2874
+ The name of the function to run.
2875
+
2447
2876
  ##### params
2448
2877
 
2449
2878
  ...`any`[]
2450
2879
 
2880
+ Positional arguments to pass to the function.
2881
+
2451
2882
  #### Returns
2452
2883
 
2453
2884
  `Promise`\<`any`\>
2454
2885
 
2886
+ A promise that resolves with the function's result.
2887
+
2888
+ #### Throws
2889
+
2890
+ If the function with the given name is not found.
2891
+
2455
2892
  #### Inherited from
2456
2893
 
2457
2894
  [`ToolFunc`](ToolFunc.md).[`runWithPos`](ToolFunc.md#runwithpos-2)
@@ -2462,7 +2899,9 @@ Defined in: [packages/ai-tool/src/tool-func.ts:139](https://github.com/isdk/ai-t
2462
2899
 
2463
2900
  > `static` **runWithPosSync**(`name`, ...`params`): `any`
2464
2901
 
2465
- Defined in: [packages/ai-tool/src/tool-func.ts:147](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L147)
2902
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:458](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L458)
2903
+
2904
+ Synchronously executes a function using positional arguments.
2466
2905
 
2467
2906
  #### Parameters
2468
2907
 
@@ -2470,14 +2909,24 @@ Defined in: [packages/ai-tool/src/tool-func.ts:147](https://github.com/isdk/ai-t
2470
2909
 
2471
2910
  `string`
2472
2911
 
2912
+ The name of the function to run.
2913
+
2473
2914
  ##### params
2474
2915
 
2475
2916
  ...`any`[]
2476
2917
 
2918
+ Positional arguments to pass to the function.
2919
+
2477
2920
  #### Returns
2478
2921
 
2479
2922
  `any`
2480
2923
 
2924
+ The result of the function's execution.
2925
+
2926
+ #### Throws
2927
+
2928
+ If the function with the given name is not found.
2929
+
2481
2930
  #### Inherited from
2482
2931
 
2483
2932
  [`ToolFunc`](ToolFunc.md).[`runWithPosSync`](ToolFunc.md#runwithpossync-2)
@@ -2488,7 +2937,7 @@ Defined in: [packages/ai-tool/src/tool-func.ts:147](https://github.com/isdk/ai-t
2488
2937
 
2489
2938
  > `static` **seal**\<`T`\>(`o`): `T`
2490
2939
 
2491
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:216
2940
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:216
2492
2941
 
2493
2942
  Prevents the modification of attributes of existing properties, and prevents the addition of new properties.
2494
2943
 
@@ -2518,7 +2967,7 @@ Object on which to lock the attributes.
2518
2967
 
2519
2968
  > `static` **setApiRoot**(`v`): `void`
2520
2969
 
2521
- Defined in: [packages/ai-tool/src/server-tools.ts:30](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/server-tools.ts#L30)
2970
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/server-tools.ts:61](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/server-tools.ts#L61)
2522
2971
 
2523
2972
  #### Parameters
2524
2973
 
@@ -2536,7 +2985,7 @@ Defined in: [packages/ai-tool/src/server-tools.ts:30](https://github.com/isdk/ai
2536
2985
 
2537
2986
  > `static` **setPrototypeOf**(`o`, `proto`): `any`
2538
2987
 
2539
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2015.core.d.ts:339
2988
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2015.core.d.ts:339
2540
2989
 
2541
2990
  Sets the prototype of a specified object o to object proto or null. Returns the object o.
2542
2991
 
@@ -2568,19 +3017,29 @@ The value of the new prototype or null.
2568
3017
 
2569
3018
  > `static` **toJSON**(): `object`
2570
3019
 
2571
- Defined in: [packages/ai-tool/src/server-tools.ts:44](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/server-tools.ts#L44)
3020
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/server-tools.ts:74](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/server-tools.ts#L74)
3021
+
3022
+ Serializes all registered `ServerTools` instances into a JSON object.
3023
+ This method is typically called by a transport's discovery endpoint.
3024
+
3025
+ It filters for tools that are instances of `ServerTools` or marked as `isApi`.
3026
+ It omits the `func` body from the output unless `allowExportFunc` is true.
2572
3027
 
2573
3028
  #### Returns
2574
3029
 
2575
3030
  `object`
2576
3031
 
3032
+ A map of serializable tool definitions.
3033
+
2577
3034
  ***
2578
3035
 
2579
3036
  ### unregister()
2580
3037
 
2581
3038
  > `static` **unregister**(`name`): `undefined` \| [`ToolFunc`](ToolFunc.md)
2582
3039
 
2583
- Defined in: [packages/ai-tool/src/tool-func.ts:207](https://github.com/isdk/ai-tool.js/blob/b0ee9498dddfa5222989cf00502bb34c601df743/src/tool-func.ts#L207)
3040
+ Defined in: [@isdk/ai-tools/packages/ai-tool/src/tool-func.ts:547](https://github.com/isdk/ai-tool.js/blob/4ebf370aaec9c78535cb40ffc19656d7bddcb145/src/tool-func.ts#L547)
3041
+
3042
+ Unregisters a function by its name, also removing any associated aliases.
2584
3043
 
2585
3044
  #### Parameters
2586
3045
 
@@ -2588,10 +3047,14 @@ Defined in: [packages/ai-tool/src/tool-func.ts:207](https://github.com/isdk/ai-t
2588
3047
 
2589
3048
  `string`
2590
3049
 
3050
+ The name of the function to unregister.
3051
+
2591
3052
  #### Returns
2592
3053
 
2593
3054
  `undefined` \| [`ToolFunc`](ToolFunc.md)
2594
3055
 
3056
+ The unregistered `ToolFunc` instance, or `undefined` if it was not found.
3057
+
2595
3058
  #### Inherited from
2596
3059
 
2597
3060
  [`ToolFunc`](ToolFunc.md).[`unregister`](ToolFunc.md#unregister-2)
@@ -2604,7 +3067,7 @@ Defined in: [packages/ai-tool/src/tool-func.ts:207](https://github.com/isdk/ai-t
2604
3067
 
2605
3068
  > `static` **values**\<`T`\>(`o`): `T`[]
2606
3069
 
2607
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2017.object.d.ts:24
3070
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2017.object.d.ts:24
2608
3071
 
2609
3072
  Returns an array of values of the enumerable own properties of an object
2610
3073
 
@@ -2632,7 +3095,7 @@ Object that contains the properties and methods. This can be an object that you
2632
3095
 
2633
3096
  > `static` **values**(`o`): `any`[]
2634
3097
 
2635
- Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2017.object.d.ts:30
3098
+ Defined in: @isdk/ai-tools/node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2017.object.d.ts:30
2636
3099
 
2637
3100
  Returns an array of values of the enumerable own properties of an object
2638
3101