@tool-bridge/server 0.4.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. package/dist/{airtable-K3I4W27V.js → airtable-BNVPDLF2.js} +4 -4
  2. package/dist/{alt_text_generator_ai-NE5YYNW3.js → alt_text_generator_ai-RMQPHK2Y.js} +4 -4
  3. package/dist/{amap-C2Y347XH.js → amap-PRNZPQ34.js} +4 -4
  4. package/dist/{anthropic-HEEOKRI7.js → anthropic-A76VIXR7.js} +4 -4
  5. package/dist/{apify-4SCWADEP.js → apify-2Q2CTLKE.js} +4 -4
  6. package/dist/{brave_search-UDLPBEMQ.js → brave_search-5YJJVPXH.js} +4 -4
  7. package/dist/{chunk-F4O6ZRH7.js → chunk-76YX7XSX.js} +91 -84
  8. package/dist/{chunk-OKQUN7BC.js → chunk-7ASYWVYP.js} +64 -24
  9. package/dist/{chunk-TKKRVFMK.js → chunk-BUHY4IE6.js} +2 -2
  10. package/dist/{chunk-CYTI7JDJ.js → chunk-EBO6Q4NR.js} +1 -1
  11. package/dist/{chunk-XE34TXY6.js → chunk-GMHELPK3.js} +1 -1
  12. package/dist/{circleci-UJEIISGE.js → circleci-TDXP3CPQ.js} +4 -4
  13. package/dist/{clerk-I2I22BUO.js → clerk-JRSGMXMS.js} +4 -4
  14. package/dist/{cloudflare_dns-5M2EY2RS.js → cloudflare_dns-G4CHNLO7.js} +4 -4
  15. package/dist/{cohere-XQWLOLCR.js → cohere-3KN27F2B.js} +4 -4
  16. package/dist/{confluence-JHCKTQX4.js → confluence-QV6J2PBV.js} +4 -4
  17. package/dist/{convertapi-B56OVE2W.js → convertapi-HETITAHL.js} +4 -4
  18. package/dist/{currencyapi-UPOFZ5P6.js → currencyapi-647DEY6G.js} +4 -4
  19. package/dist/{deepseek-OS75U3HY.js → deepseek-G63RUHM6.js} +4 -4
  20. package/dist/{docker_hub-LQVDQTQJ.js → docker_hub-RH72CRWO.js} +4 -4
  21. package/dist/{dropbox-HWO6JJ5L.js → dropbox-T4Y5KSZW.js} +4 -4
  22. package/dist/{dub-3J7YEZZ7.js → dub-ECKQT3DC.js} +4 -4
  23. package/dist/{e2b-KT6W4M6Y.js → e2b-N5SRTPLF.js} +4 -4
  24. package/dist/{exa-GWZZ6BWW.js → exa-525ZDM7G.js} +4 -4
  25. package/dist/{fal_ai-V4AQIJ5K.js → fal_ai-BFMVHAUW.js} +4 -4
  26. package/dist/{feishu-GLQBDJMW.js → feishu-NIDOD7EW.js} +3 -3
  27. package/dist/{feishu_custom_bot-TEEZ3BRW.js → feishu_custom_bot-V5RGAIUH.js} +4 -4
  28. package/dist/{figma-N7L3KF4A.js → figma-GH7TXJMP.js} +4 -4
  29. package/dist/{firehydrant-WJT2MLGI.js → firehydrant-5T3UHAQM.js} +4 -4
  30. package/dist/{fixer-TG5NW6OA.js → fixer-3RMJLMFO.js} +4 -4
  31. package/dist/{fly-LYK5NNBG.js → fly-NPHJC5MH.js} +4 -4
  32. package/dist/{front-MUQ4YT7O.js → front-PYGXJAQK.js} +4 -4
  33. package/dist/{geocodio-XXB2D3AN.js → geocodio-T6G3FVIF.js} +4 -4
  34. package/dist/{ghost-MWYITKQ5.js → ghost-L3XIF4SJ.js} +4 -4
  35. package/dist/{github-CIBT2UB2.js → github-7YDUB6N6.js} +4 -4
  36. package/dist/{gmail-JZECDA2U.js → gmail-RY2ZDG3B.js} +4 -4
  37. package/dist/{googlecalendar-ICIIDGEO.js → googlecalendar-EHOFMXHE.js} +4 -4
  38. package/dist/{googledocs-AV5CHSH3.js → googledocs-BA3OAMKA.js} +4 -4
  39. package/dist/{grafana-SJVGZAV5.js → grafana-PYZQ4CKI.js} +4 -4
  40. package/dist/{graphhopper-ZVBBXBHD.js → graphhopper-3P4YU45N.js} +4 -4
  41. package/dist/index.d.ts +35 -11
  42. package/dist/index.js +2 -2
  43. package/dist/{ip2proxy-EJMBZ4ZQ.js → ip2proxy-GQO6VF4P.js} +4 -4
  44. package/dist/{ipgeolocation_io-7BP766PO.js → ipgeolocation_io-VOZU6E7H.js} +4 -4
  45. package/dist/{ipqualityscore-QSB62FH3.js → ipqualityscore-XDJ3TTMM.js} +4 -4
  46. package/dist/{jina_ai-O5GT4ZZZ.js → jina_ai-ELXPSTUJ.js} +4 -4
  47. package/dist/{jira-DFOD6SAV.js → jira-INDXWO4I.js} +4 -4
  48. package/dist/{langsmith-B5HC4HNY.js → langsmith-PMCQBCIK.js} +4 -4
  49. package/dist/{lemlist-63EOIXDT.js → lemlist-VWZXIHJX.js} +4 -4
  50. package/dist/{linear-LBQC6RCY.js → linear-YXG4KZR4.js} +4 -4
  51. package/dist/{logsnag-YQL67XIX.js → logsnag-XENBYHHK.js} +4 -4
  52. package/dist/main.js +101 -101
  53. package/dist/{mattermost-VWLKWU7X.js → mattermost-BHVJP5MA.js} +4 -4
  54. package/dist/{mem0-2J5MMVIP.js → mem0-7AP5UBJV.js} +4 -4
  55. package/dist/{memos-ANAGWSHJ.js → memos-MNVRYSLG.js} +4 -4
  56. package/dist/{metabase-ONSZZ4E2.js → metabase-NSXM7EID.js} +4 -4
  57. package/dist/{mistral_ai-FYNVJRRG.js → mistral_ai-HXN625YX.js} +4 -4
  58. package/dist/{mother_duck-NRSVBZM7.js → mother_duck-46VQ3V3D.js} +4 -4
  59. package/dist/{ngrok-FXSVFLEE.js → ngrok-BWCVMS3T.js} +4 -4
  60. package/dist/{notes-VO45PFNB.js → notes-AVHKCFLU.js} +2 -2
  61. package/dist/{notion-AQH7ZGLG.js → notion-BSEN3KSU.js} +4 -4
  62. package/dist/{open_exchange_rates-G3MSI5KX.js → open_exchange_rates-DWO4T5TF.js} +4 -4
  63. package/dist/{openai-SZETZOPF.js → openai-HPZYRS3M.js} +4 -4
  64. package/dist/{opengraph_io-XNV4BFE5.js → opengraph_io-OLUAYD5P.js} +4 -4
  65. package/dist/{openrouter-TV5LQ55F.js → openrouter-4DQYZIG3.js} +4 -4
  66. package/dist/{outline-DTZCJ7NR.js → outline-ZDNMKXZ6.js} +4 -4
  67. package/dist/{paddle-T6RK3QSQ.js → paddle-HCOOYW3F.js} +4 -4
  68. package/dist/{perplexity-MVT3DWR2.js → perplexity-2GJJPDA7.js} +4 -4
  69. package/dist/{pinecone-Z4IVTJMV.js → pinecone-ZPOBKL5T.js} +4 -4
  70. package/dist/{pipedrive-PM2PBDDZ.js → pipedrive-3WN2RFMB.js} +4 -4
  71. package/dist/{polar-CKXLVP45.js → polar-DJFGBTXW.js} +4 -4
  72. package/dist/{posthog-QTYLJI3S.js → posthog-G4OXNEXP.js} +4 -4
  73. package/dist/{postmark-V6QQYQ6X.js → postmark-NJMGDQKO.js} +4 -4
  74. package/dist/{prerender-SQAU4FDE.js → prerender-2TUPKRK5.js} +4 -4
  75. package/dist/{pubmed-6ZMRZYGK.js → pubmed-CCXZZT34.js} +4 -4
  76. package/dist/{railway-PJBDYQYM.js → railway-ZUUY5YYR.js} +4 -4
  77. package/dist/{readwise-KJAOWBS5.js → readwise-PYSRGJ4J.js} +4 -4
  78. package/dist/{render-Z2YG43ZD.js → render-SFA3EMGM.js} +4 -4
  79. package/dist/{replicate-AXMIH4OJ.js → replicate-KGZHYBPK.js} +4 -4
  80. package/dist/{resend-HQBXFMOO.js → resend-HENMZC5U.js} +4 -4
  81. package/dist/{rootly-CJW5SJEL.js → rootly-HV2PXIDP.js} +4 -4
  82. package/dist/{scrapfly-7APCZZ7V.js → scrapfly-FOZFHUN3.js} +4 -4
  83. package/dist/{scrapingbee-HTUP6YCA.js → scrapingbee-VHUMSO2J.js} +4 -4
  84. package/dist/{screenshot_fyi-N6JAOGFQ.js → screenshot_fyi-FFDXAKHD.js} +4 -4
  85. package/dist/{semantic_scholar-METX5XVW.js → semantic_scholar-GHO37BZF.js} +4 -4
  86. package/dist/{sentry-QM7OGZZK.js → sentry-MZVZW3YE.js} +4 -4
  87. package/dist/{shodan-ZPQCN5RX.js → shodan-IDICOPGU.js} +4 -4
  88. package/dist/{shopify-FPLQQJXS.js → shopify-WQLO23JO.js} +4 -4
  89. package/dist/{stripe-NNGIPJRH.js → stripe-XOAKLAKU.js} +4 -4
  90. package/dist/{supabase-HKIEC7JZ.js → supabase-6DKGSLST.js} +4 -4
  91. package/dist/{tavily-WMQVNVQC.js → tavily-76QZGEHM.js} +4 -4
  92. package/dist/{telegram-VP76Z774.js → telegram-O536CLFR.js} +4 -4
  93. package/dist/{telnyx-7BGNYZMU.js → telnyx-XOPYXF3K.js} +4 -4
  94. package/dist/{todoist-MXXO72IA.js → todoist-YXHVWPP3.js} +4 -4
  95. package/dist/{trello-7RFKIFYN.js → trello-WMTM3WA2.js} +4 -4
  96. package/dist/{turso-SVWKUF5Y.js → turso-CG7PR5HM.js} +4 -4
  97. package/dist/{twilio-WGXCKTR7.js → twilio-ZW4SD36D.js} +4 -4
  98. package/dist/{umami-2BB5YCC7.js → umami-IJQ5VH77.js} +4 -4
  99. package/dist/{unsplash-W7TX5OXX.js → unsplash-JBQY7NKO.js} +4 -4
  100. package/dist/{upstash_redis-YJEWXBBX.js → upstash_redis-2BAO776T.js} +4 -4
  101. package/dist/{uptimerobot-BP4BGPOL.js → uptimerobot-BRIHMPB3.js} +4 -4
  102. package/dist/{v2ex-Y2ENEEYQ.js → v2ex-HWIHF4HX.js} +4 -4
  103. package/dist/{vercel-6EB3NZZP.js → vercel-MGMRY2DJ.js} +4 -4
  104. package/dist/{wolfram_alpha_api-EF3CZMNC.js → wolfram_alpha_api-JG6JD33L.js} +4 -4
  105. package/dist/{wordpress-JI3YVGXG.js → wordpress-ZSYJERWV.js} +4 -4
  106. package/dist/{workos-YDK42RA3.js → workos-QFEOSJAN.js} +4 -4
  107. package/dist/{zhihu-CNFASBUW.js → zhihu-5RF7BBFV.js} +4 -4
  108. package/package.json +5 -5
@@ -2,15 +2,15 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  TBError,
12
12
  external_exports
13
- } from "./chunk-F4O6ZRH7.js";
13
+ } from "./chunk-76YX7XSX.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // ../plugins/src/firehydrant/api.ts
@@ -2,15 +2,15 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  TBError,
12
12
  external_exports
13
- } from "./chunk-F4O6ZRH7.js";
13
+ } from "./chunk-76YX7XSX.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // ../plugins/src/fixer/api.ts
@@ -2,15 +2,15 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  TBError,
12
12
  external_exports
13
- } from "./chunk-F4O6ZRH7.js";
13
+ } from "./chunk-76YX7XSX.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // ../plugins/src/fly/api.ts
@@ -2,14 +2,14 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  external_exports
12
- } from "./chunk-F4O6ZRH7.js";
12
+ } from "./chunk-76YX7XSX.js";
13
13
  import "./chunk-MLKGABMK.js";
14
14
 
15
15
  // ../plugins/src/front/api.ts
@@ -2,15 +2,15 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  TBError,
12
12
  external_exports
13
- } from "./chunk-F4O6ZRH7.js";
13
+ } from "./chunk-76YX7XSX.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // ../plugins/src/geocodio/api.ts
@@ -2,16 +2,16 @@ import {
2
2
  createProviderPlugin,
3
3
  requireCredential,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  assertPublicHttpUrl,
8
8
  guardedFetch
9
- } from "./chunk-CYTI7JDJ.js";
10
- import "./chunk-XE34TXY6.js";
9
+ } from "./chunk-EBO6Q4NR.js";
10
+ import "./chunk-GMHELPK3.js";
11
11
  import {
12
12
  TBError,
13
13
  external_exports
14
- } from "./chunk-F4O6ZRH7.js";
14
+ } from "./chunk-76YX7XSX.js";
15
15
  import "./chunk-MLKGABMK.js";
16
16
 
17
17
  // ../plugins/src/ghost/api.ts
@@ -2,15 +2,15 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  TBError,
12
12
  external_exports
13
- } from "./chunk-F4O6ZRH7.js";
13
+ } from "./chunk-76YX7XSX.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // ../plugins/src/github/api/shared.ts
@@ -2,15 +2,15 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  TBError,
12
12
  external_exports
13
- } from "./chunk-F4O6ZRH7.js";
13
+ } from "./chunk-76YX7XSX.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // ../plugins/src/gmail/api/shared.ts
@@ -2,15 +2,15 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  TBError,
12
12
  external_exports
13
- } from "./chunk-F4O6ZRH7.js";
13
+ } from "./chunk-76YX7XSX.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // ../plugins/src/googlecalendar/api/shared.ts
@@ -2,15 +2,15 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  TBError,
12
12
  external_exports
13
- } from "./chunk-F4O6ZRH7.js";
13
+ } from "./chunk-76YX7XSX.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // ../plugins/src/googledocs/api/shared.ts
@@ -2,16 +2,16 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  assertPublicHttpUrl,
8
8
  guardedFetch
9
- } from "./chunk-CYTI7JDJ.js";
10
- import "./chunk-XE34TXY6.js";
9
+ } from "./chunk-EBO6Q4NR.js";
10
+ import "./chunk-GMHELPK3.js";
11
11
  import {
12
12
  TBError,
13
13
  external_exports
14
- } from "./chunk-F4O6ZRH7.js";
14
+ } from "./chunk-76YX7XSX.js";
15
15
  import "./chunk-MLKGABMK.js";
16
16
 
17
17
  // ../plugins/src/grafana/api.ts
@@ -2,15 +2,15 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  TBError,
12
12
  external_exports
13
- } from "./chunk-F4O6ZRH7.js";
13
+ } from "./chunk-76YX7XSX.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // ../plugins/src/graphhopper/api.ts
package/dist/index.d.ts CHANGED
@@ -211,7 +211,7 @@ type PluginOAuth = z.infer<typeof pluginOAuthSchema>;
211
211
  type PluginProfile = 'tools/v1' | 'context/v1';
212
212
  /** 单个 export 的声明。 */
213
213
  interface PluginExport {
214
- /** 明确声明无需凭证,或声明单值凭证的展示/必填语义。缺省兼容为可选单值凭证。 */
214
+ /** 明确声明无需凭证,或声明单值凭证的展示/必填语义;与 oauth/credentialFields 三选一。 */
215
215
  auth?: PluginExportAuth;
216
216
  capabilities?: string[];
217
217
  /**
@@ -316,14 +316,8 @@ interface PluginDescribe {
316
316
  * `/~describe` 生成(`@tool-bridge/plugins` 的 `catalog.generated.ts`),与插件代码同一份
317
317
  * 构建产物 —— 故不可能陈旧,也不需要落 KV。
318
318
  *
319
- * 这里定的是**解析函数的能力边界**。此前 `requirePluginExport` 拿的是 `deps`
320
- * (含可写 `state`),于是 help/call 这类读操作也能写库:`manifest ??= autoRegisterBinding(…)`
321
- * 让"删掉一个 plugin 后随便读一次就复活",而 7 个调用点里传 `deps` 还是传裸 store
322
- * 是随手决定的 —— 同一个语义在四条链上有四种行为。
323
- *
324
- * 修法不是"约定读路径要传只读的东西",而是**让解析函数结构上拿不到写能力**:
325
- * 下面三个函数的入参只有 catalog(纯值)与 {@link ReadOnlyStore}(只有 get)。
326
- * 想在这里写库得先改签名,而那是 code review 能看见的事。
319
+ * 这里定的是**解析函数的能力边界**。下面三个函数的入参只有 catalog(纯值)与
320
+ * {@link ReadOnlyStore}(只有 get),因此 help/call 等读路径结构上不能创建或修写注册状态。
327
321
  */
328
322
 
329
323
  /** 一个内置目录项:插件声明了什么,以及它的 descriptor 指纹。 */
@@ -467,6 +461,34 @@ interface ObjectStore {
467
461
  put(key: string, body: ObjectBody, opts?: ObjectPutOptions): Promise<ObjectMeta>;
468
462
  }
469
463
 
464
+ /**
465
+ * DeviceFrame:设备 WS 帧协议的类型与编解码。
466
+ *
467
+ * JSON 文本帧、`type` 区分;decode 拒绝非 JSON / 未知 type / 缺字段(invalid_argument),
468
+ * encode 产出紧凑 JSON。ping/pong 序列化为稳定字面量(PING_FRAME_JSON/PONG_FRAME_JSON)——
469
+ * DO 的 setWebSocketAutoResponse 按字符串精确匹配,设备侧心跳帧不得有其他序列化形态。
470
+ */
471
+
472
+ /**
473
+ * 网关鉴权后为本次 call 生成的调用方来源与权威期限。
474
+ * 全部由网关签发,不接受来自调用 arguments;设备只消费不自造,且不做授权裁决
475
+ * (scope 判定在网关侧已完成)。故意不含 scopes / SK / 敏感参数。
476
+ */
477
+ interface DeviceCallContext {
478
+ caller: {
479
+ displayName?: string;
480
+ /** 本次调用使用的 SK id(非明文,审计用)。 */
481
+ keyId: string;
482
+ owner: OwnerRef;
483
+ };
484
+ /** 网关签发时刻(网关时钟,非设备本地时钟)。 */
485
+ createdAt: Timestamp;
486
+ /** 本次调用的权威失效时刻;设备复检一律以此比对,不信任设备本地时钟。 */
487
+ expiresAt: Timestamp;
488
+ /** 全链路观测,与 call id 同源。 */
489
+ traceId: string;
490
+ }
491
+
470
492
  /**
471
493
  * Tool Layer 的中立类型。
472
494
  *
@@ -700,11 +722,13 @@ interface RemoteSettings {
700
722
  /** 帧协议 call 转发的入参(id 由调用点生成,幂等键)。 */
701
723
  interface DeviceInvokeRequest {
702
724
  arguments: Record<string, unknown>;
725
+ /** 网关鉴权后的调用方来源与权威期限;缺省则不写入 call 帧。 */
726
+ context?: DeviceCallContext;
703
727
  id: string;
704
728
  path: string;
705
729
  tool: string;
706
730
  }
707
- /** 设备通道宿主(CF = DeviceSession DO / Docker = ws;deviceTransport 的消费面)。 */
731
+ /** 设备通道宿主(CF = DeviceSession DO / Docker = ws)。 */
708
732
  interface DeviceChannel {
709
733
  /** HTTP→WS 调用转发:结果为 DeviceCallResult 形状(设备侧 result 帧)。 */
710
734
  invoke(deviceId: string, req: DeviceInvokeRequest): Promise<unknown>;
@@ -752,7 +776,7 @@ interface TbAppDeps {
752
776
  /**
753
777
  * 内置插件目录(descriptor)。**编译期常量**,由 `@tool-bridge/plugins` 的
754
778
  * `catalog.generated.ts` 求值生成 —— 内置插件的目录项与它的代码是同一份构建产物,
755
- * 故不会陈旧、也不落库(见 `llmdoc/memory/decisions/builtin-catalog-not-registry.md`)。
779
+ * 故不会陈旧、也不落库(见 `llmdoc/architecture/plugin-runtime.md`)。
756
780
  *
757
781
  * 与 {@link pluginBindings} **是一对**:catalog 说"声明了什么"(挂载校验、选 export、
758
782
  * 列凭证字段),bindings 说"代码在哪"(实际调用)。装配了 binding 却没给 catalog,
package/dist/index.js CHANGED
@@ -6,8 +6,8 @@ import {
6
6
  configFromEnv,
7
7
  createDataObjectStore,
8
8
  createTbServer
9
- } from "./chunk-OKQUN7BC.js";
10
- import "./chunk-F4O6ZRH7.js";
9
+ } from "./chunk-7ASYWVYP.js";
10
+ import "./chunk-76YX7XSX.js";
11
11
  import "./chunk-MLKGABMK.js";
12
12
  export {
13
13
  DEVICE_WS_PATH,
@@ -2,15 +2,15 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  TBError,
12
12
  external_exports
13
- } from "./chunk-F4O6ZRH7.js";
13
+ } from "./chunk-76YX7XSX.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // ../plugins/src/ip2proxy/schema.ts
@@ -2,15 +2,15 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  TBError,
12
12
  external_exports
13
- } from "./chunk-F4O6ZRH7.js";
13
+ } from "./chunk-76YX7XSX.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // ../plugins/src/ipgeolocation_io/api.ts
@@ -2,15 +2,15 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  TBError,
12
12
  external_exports
13
- } from "./chunk-F4O6ZRH7.js";
13
+ } from "./chunk-76YX7XSX.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // ../plugins/src/ipqualityscore/api.ts
@@ -2,15 +2,15 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  TBError,
12
12
  external_exports
13
- } from "./chunk-F4O6ZRH7.js";
13
+ } from "./chunk-76YX7XSX.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // ../plugins/src/jina_ai/api.ts
@@ -2,16 +2,16 @@ import {
2
2
  createProviderPlugin,
3
3
  requireCredential,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  assertPublicHttpUrl,
8
8
  guardedFetch
9
- } from "./chunk-CYTI7JDJ.js";
10
- import "./chunk-XE34TXY6.js";
9
+ } from "./chunk-EBO6Q4NR.js";
10
+ import "./chunk-GMHELPK3.js";
11
11
  import {
12
12
  TBError,
13
13
  external_exports
14
- } from "./chunk-F4O6ZRH7.js";
14
+ } from "./chunk-76YX7XSX.js";
15
15
  import "./chunk-MLKGABMK.js";
16
16
 
17
17
  // ../plugins/src/jira/api.ts
@@ -2,15 +2,15 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  TBError,
12
12
  external_exports
13
- } from "./chunk-F4O6ZRH7.js";
13
+ } from "./chunk-76YX7XSX.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // ../plugins/src/langsmith/api.ts
@@ -2,15 +2,15 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  TBError,
12
12
  external_exports
13
- } from "./chunk-F4O6ZRH7.js";
13
+ } from "./chunk-76YX7XSX.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // ../plugins/src/lemlist/api.ts
@@ -2,15 +2,15 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  TBError,
12
12
  external_exports
13
- } from "./chunk-F4O6ZRH7.js";
13
+ } from "./chunk-76YX7XSX.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // ../plugins/src/linear/api.ts
@@ -2,14 +2,14 @@ import {
2
2
  createProviderPlugin,
3
3
  requireApiKey,
4
4
  upstreamError
5
- } from "./chunk-TKKRVFMK.js";
5
+ } from "./chunk-BUHY4IE6.js";
6
6
  import {
7
7
  guardedFetch
8
- } from "./chunk-CYTI7JDJ.js";
9
- import "./chunk-XE34TXY6.js";
8
+ } from "./chunk-EBO6Q4NR.js";
9
+ import "./chunk-GMHELPK3.js";
10
10
  import {
11
11
  external_exports
12
- } from "./chunk-F4O6ZRH7.js";
12
+ } from "./chunk-76YX7XSX.js";
13
13
  import "./chunk-MLKGABMK.js";
14
14
 
15
15
  // ../plugins/src/logsnag/api.ts