@plotday/twister 0.56.0 → 0.58.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 (331) hide show
  1. package/README.md +53 -44
  2. package/bin/commands/create.js +9 -14
  3. package/bin/commands/create.js.map +1 -1
  4. package/bin/commands/deploy.js +2 -0
  5. package/bin/commands/deploy.js.map +1 -1
  6. package/bin/commands/generate.js +8 -5
  7. package/bin/commands/generate.js.map +1 -1
  8. package/bin/index.js +2 -2
  9. package/bin/index.js.map +1 -1
  10. package/bin/templates/AGENTS.template.md +110 -94
  11. package/bin/templates/README.template.md +36 -33
  12. package/cli/templates/AGENTS.template.md +110 -94
  13. package/cli/templates/README.template.md +36 -33
  14. package/dist/connector.d.ts +24 -17
  15. package/dist/connector.d.ts.map +1 -1
  16. package/dist/connector.js +19 -12
  17. package/dist/connector.js.map +1 -1
  18. package/dist/docs/assets/hierarchy.js +1 -1
  19. package/dist/docs/assets/navigation.js +1 -1
  20. package/dist/docs/assets/search.js +1 -1
  21. package/dist/docs/classes/index.Connector.html +66 -60
  22. package/dist/docs/classes/index.FileNotFoundError.html +2 -2
  23. package/dist/docs/classes/index.Files.html +4 -4
  24. package/dist/docs/classes/index.Imap.html +10 -10
  25. package/dist/docs/classes/index.Options.html +2 -2
  26. package/dist/docs/classes/index.Smtp.html +6 -6
  27. package/dist/docs/classes/tool.ITool.html +2 -2
  28. package/dist/docs/classes/tool.Tool.html +23 -23
  29. package/dist/docs/classes/tools_ai.AI.html +5 -5
  30. package/dist/docs/classes/tools_callbacks.Callbacks.html +8 -8
  31. package/dist/docs/classes/tools_integrations.Integrations.html +26 -12
  32. package/dist/docs/classes/tools_network.Network.html +9 -9
  33. package/dist/docs/classes/tools_plot.Plot.html +34 -33
  34. package/dist/docs/classes/tools_store.Store.html +8 -8
  35. package/dist/docs/classes/tools_tasks.Tasks.html +6 -6
  36. package/dist/docs/classes/tools_twists.Twists.html +12 -11
  37. package/dist/docs/classes/twist.Twist.html +28 -28
  38. package/dist/docs/documents/Building_Connectors.html +42 -28
  39. package/dist/docs/documents/Built-in_Tools.html +170 -67
  40. package/dist/docs/documents/CLI_Reference.html +68 -47
  41. package/dist/docs/documents/Core_Concepts.html +52 -81
  42. package/dist/docs/documents/Getting_Started.html +28 -31
  43. package/dist/docs/documents/MULTI_USER_AUTH.html +45 -0
  44. package/dist/docs/documents/Runtime_Environment.html +13 -12
  45. package/dist/docs/documents/SYNC_STRATEGIES.html +373 -0
  46. package/dist/docs/enums/plot.ActionType.html +9 -9
  47. package/dist/docs/enums/plot.ActorType.html +4 -4
  48. package/dist/docs/enums/plot.ConferencingProvider.html +6 -6
  49. package/dist/docs/enums/plot.ThemeColor.html +9 -9
  50. package/dist/docs/enums/tag.Tag.html +3 -3
  51. package/dist/docs/enums/tools_ai.AIModel.html +3 -3
  52. package/dist/docs/enums/tools_integrations.AuthProvider.html +13 -13
  53. package/dist/docs/enums/tools_plot.ContactAccess.html +2 -2
  54. package/dist/docs/enums/tools_plot.FocusAccess.html +3 -3
  55. package/dist/docs/enums/tools_plot.LinkAccess.html +3 -3
  56. package/dist/docs/enums/tools_plot.ThreadAccess.html +4 -4
  57. package/dist/docs/functions/index.Uuid.Generate.html +1 -1
  58. package/dist/docs/functions/utils_hash.quickHash.html +1 -1
  59. package/dist/docs/hierarchy.html +1 -1
  60. package/dist/docs/index.html +7 -8
  61. package/dist/docs/interfaces/tools_ai.AIRequest.html +13 -13
  62. package/dist/docs/interfaces/tools_ai.AIResponse.html +9 -9
  63. package/dist/docs/interfaces/tools_ai.FilePart.html +5 -5
  64. package/dist/docs/interfaces/tools_ai.ImagePart.html +4 -4
  65. package/dist/docs/interfaces/tools_ai.ReasoningPart.html +4 -4
  66. package/dist/docs/interfaces/tools_ai.RedactedReasoningPart.html +3 -3
  67. package/dist/docs/interfaces/tools_ai.TextPart.html +3 -3
  68. package/dist/docs/interfaces/tools_ai.ToolCallPart.html +5 -5
  69. package/dist/docs/interfaces/tools_ai.ToolExecutionOptions.html +4 -4
  70. package/dist/docs/interfaces/tools_ai.ToolResultPart.html +5 -5
  71. package/dist/docs/interfaces/tools_twists.TwistSource.html +3 -3
  72. package/dist/docs/interfaces/utils_types.ToolShed.html +5 -5
  73. package/dist/docs/media/AGENTS.md +101 -74
  74. package/dist/docs/modules/index.html +1 -1
  75. package/dist/docs/modules/tools_integrations.html +1 -1
  76. package/dist/docs/modules.html +1 -1
  77. package/dist/docs/types/index.BooleanDef.html +2 -2
  78. package/dist/docs/types/index.CreateLinkDraft.html +9 -9
  79. package/dist/docs/types/index.ImapAddress.html +3 -3
  80. package/dist/docs/types/index.ImapConnectOptions.html +6 -6
  81. package/dist/docs/types/index.ImapFetchOptions.html +4 -4
  82. package/dist/docs/types/index.ImapFlagOperation.html +1 -1
  83. package/dist/docs/types/index.ImapMailbox.html +5 -5
  84. package/dist/docs/types/index.ImapMailboxStatus.html +7 -7
  85. package/dist/docs/types/index.ImapMessage.html +14 -14
  86. package/dist/docs/types/index.ImapSearchCriteria.html +9 -9
  87. package/dist/docs/types/index.ImapSession.html +1 -1
  88. package/dist/docs/types/index.NewSchedule.html +13 -13
  89. package/dist/docs/types/index.NewScheduleContact.html +2 -2
  90. package/dist/docs/types/index.NewScheduleOccurrence.html +1 -1
  91. package/dist/docs/types/index.NoteWriteBackResult.html +3 -3
  92. package/dist/docs/types/index.NumberDef.html +2 -2
  93. package/dist/docs/types/index.OptionDef.html +1 -1
  94. package/dist/docs/types/index.OptionalScopeGroup.html +6 -6
  95. package/dist/docs/types/index.OptionsSchema.html +1 -1
  96. package/dist/docs/types/index.ReactionCapabilities.html +1 -1
  97. package/dist/docs/types/index.ResolvedOptions.html +1 -1
  98. package/dist/docs/types/index.ResolvedRecipient.html +5 -5
  99. package/dist/docs/types/index.Schedule.html +12 -12
  100. package/dist/docs/types/index.ScheduleContact.html +2 -2
  101. package/dist/docs/types/index.ScheduleContactRole.html +1 -1
  102. package/dist/docs/types/index.ScheduleContactStatus.html +1 -1
  103. package/dist/docs/types/index.ScheduleOccurrence.html +6 -6
  104. package/dist/docs/types/index.ScheduleOccurrenceUpdate.html +1 -1
  105. package/dist/docs/types/index.ScopeConfig.html +3 -3
  106. package/dist/docs/types/index.SelectDef.html +2 -2
  107. package/dist/docs/types/index.Serializable.html +1 -1
  108. package/dist/docs/types/index.SmtpAddress.html +3 -3
  109. package/dist/docs/types/index.SmtpConnectOptions.html +7 -7
  110. package/dist/docs/types/index.SmtpMessage.html +12 -12
  111. package/dist/docs/types/index.SmtpSendResult.html +4 -4
  112. package/dist/docs/types/index.SmtpSession.html +1 -1
  113. package/dist/docs/types/index.TextDef.html +2 -2
  114. package/dist/docs/types/index.Uuid.html +1 -1
  115. package/dist/docs/types/plot.Action.html +1 -1
  116. package/dist/docs/types/plot.Actor.html +5 -5
  117. package/dist/docs/types/plot.ActorId.html +4 -4
  118. package/dist/docs/types/plot.Contact.html +4 -4
  119. package/dist/docs/types/plot.ContentType.html +1 -1
  120. package/dist/docs/types/plot.Focus.html +8 -8
  121. package/dist/docs/types/plot.FocusUpdate.html +1 -1
  122. package/dist/docs/types/plot.Link.html +17 -17
  123. package/dist/docs/types/plot.LinkUpdate.html +1 -1
  124. package/dist/docs/types/plot.NewActor.html +1 -1
  125. package/dist/docs/types/plot.NewContact.html +1 -1
  126. package/dist/docs/types/plot.NewFocus.html +1 -1
  127. package/dist/docs/types/plot.NewLink.html +5 -2
  128. package/dist/docs/types/plot.NewLinkWithNotes.html +1 -1
  129. package/dist/docs/types/plot.NewNote.html +1 -1
  130. package/dist/docs/types/plot.NewReactions.html +1 -1
  131. package/dist/docs/types/plot.NewTags.html +1 -1
  132. package/dist/docs/types/plot.NewThread.html +1 -1
  133. package/dist/docs/types/plot.NewThreadWithNotes.html +1 -1
  134. package/dist/docs/types/plot.Note.html +1 -1
  135. package/dist/docs/types/plot.NoteUpdate.html +1 -1
  136. package/dist/docs/types/plot.PlanOperation.html +1 -1
  137. package/dist/docs/types/plot.Reaction.html +3 -3
  138. package/dist/docs/types/plot.Reactions.html +1 -1
  139. package/dist/docs/types/plot.Tags.html +1 -1
  140. package/dist/docs/types/plot.Thread.html +1 -1
  141. package/dist/docs/types/plot.ThreadAccessLevel.html +1 -1
  142. package/dist/docs/types/plot.ThreadCommon.html +6 -6
  143. package/dist/docs/types/plot.ThreadFilter.html +2 -2
  144. package/dist/docs/types/plot.ThreadMeta.html +1 -1
  145. package/dist/docs/types/plot.ThreadType.html +1 -1
  146. package/dist/docs/types/plot.ThreadUpdate.html +1 -1
  147. package/dist/docs/types/plot.ThreadWithNotes.html +1 -1
  148. package/dist/docs/types/tools_ai.AIAssistantMessage.html +2 -2
  149. package/dist/docs/types/tools_ai.AICapabilities.html +4 -4
  150. package/dist/docs/types/tools_ai.AIMessage.html +1 -1
  151. package/dist/docs/types/tools_ai.AIOptions.html +2 -2
  152. package/dist/docs/types/tools_ai.AISource.html +1 -1
  153. package/dist/docs/types/tools_ai.AISystemMessage.html +2 -2
  154. package/dist/docs/types/tools_ai.AITool.html +1 -1
  155. package/dist/docs/types/tools_ai.AIToolMessage.html +2 -2
  156. package/dist/docs/types/tools_ai.AIToolSet.html +1 -1
  157. package/dist/docs/types/tools_ai.AIUsage.html +5 -5
  158. package/dist/docs/types/tools_ai.AIUserMessage.html +2 -2
  159. package/dist/docs/types/tools_ai.DataContent.html +1 -1
  160. package/dist/docs/types/tools_ai.ModelPreferences.html +5 -5
  161. package/dist/docs/types/tools_callbacks.Callback.html +2 -2
  162. package/dist/docs/types/tools_integrations.ArchiveLinkFilter.html +5 -5
  163. package/dist/docs/types/tools_integrations.ArchiveNotesFilter.html +5 -0
  164. package/dist/docs/types/tools_integrations.AuthToken.html +6 -5
  165. package/dist/docs/types/tools_integrations.Authorization.html +4 -4
  166. package/dist/docs/types/tools_integrations.Channel.html +6 -6
  167. package/dist/docs/types/tools_integrations.ComposeConfig.html +4 -4
  168. package/dist/docs/types/tools_integrations.ContactRoleConfig.html +5 -5
  169. package/dist/docs/types/tools_integrations.LinkTypeConfig.html +21 -21
  170. package/dist/docs/types/tools_integrations.NewCustomEmoji.html +8 -8
  171. package/dist/docs/types/tools_integrations.StatusIcon.html +1 -1
  172. package/dist/docs/types/tools_integrations.SyncContext.html +4 -4
  173. package/dist/docs/types/tools_network.WebhookRequest.html +6 -6
  174. package/dist/docs/types/tools_plot.LinkFilter.html +5 -5
  175. package/dist/docs/types/tools_plot.LinkSearchResult.html +1 -1
  176. package/dist/docs/types/tools_plot.NoteIntentHandler.html +4 -4
  177. package/dist/docs/types/tools_plot.NoteSearchResult.html +1 -1
  178. package/dist/docs/types/tools_plot.SearchOptions.html +4 -4
  179. package/dist/docs/types/tools_plot.SearchResult.html +1 -1
  180. package/dist/docs/types/tools_twists.Log.html +2 -2
  181. package/dist/docs/types/tools_twists.TwistPermissions.html +1 -1
  182. package/dist/docs/types/utils_types.BuiltInTools.html +2 -2
  183. package/dist/docs/types/utils_types.ExtractBuildReturn.html +1 -1
  184. package/dist/docs/types/utils_types.InferOptions.html +1 -1
  185. package/dist/docs/types/utils_types.InferTools.html +1 -1
  186. package/dist/docs/types/utils_types.JSONValue.html +1 -1
  187. package/dist/docs/types/utils_types.PromiseValues.html +1 -1
  188. package/dist/docs/types/utils_types.ToolBuilder.html +1 -1
  189. package/dist/docs/variables/tools_plot.SEARCH_DEFAULT_LIMIT.html +1 -1
  190. package/dist/docs/variables/tools_plot.SEARCH_MAX_LIMIT.html +1 -1
  191. package/dist/facets.d.ts +30 -0
  192. package/dist/facets.d.ts.map +1 -0
  193. package/dist/facets.js +16 -0
  194. package/dist/facets.js.map +1 -0
  195. package/dist/llm-docs/connector.d.ts +1 -1
  196. package/dist/llm-docs/connector.d.ts.map +1 -1
  197. package/dist/llm-docs/connector.js +1 -1
  198. package/dist/llm-docs/connector.js.map +1 -1
  199. package/dist/llm-docs/facets.d.ts +9 -0
  200. package/dist/llm-docs/facets.d.ts.map +1 -0
  201. package/dist/llm-docs/facets.js +8 -0
  202. package/dist/llm-docs/facets.js.map +1 -0
  203. package/dist/llm-docs/index.d.ts.map +1 -1
  204. package/dist/llm-docs/index.js +2 -0
  205. package/dist/llm-docs/index.js.map +1 -1
  206. package/dist/llm-docs/plot.d.ts +1 -1
  207. package/dist/llm-docs/plot.d.ts.map +1 -1
  208. package/dist/llm-docs/plot.js +1 -1
  209. package/dist/llm-docs/plot.js.map +1 -1
  210. package/dist/llm-docs/tool.d.ts +1 -1
  211. package/dist/llm-docs/tool.d.ts.map +1 -1
  212. package/dist/llm-docs/tool.js +1 -1
  213. package/dist/llm-docs/tool.js.map +1 -1
  214. package/dist/llm-docs/tools/ai.d.ts +1 -1
  215. package/dist/llm-docs/tools/ai.d.ts.map +1 -1
  216. package/dist/llm-docs/tools/ai.js +1 -1
  217. package/dist/llm-docs/tools/ai.js.map +1 -1
  218. package/dist/llm-docs/tools/callbacks.d.ts +1 -1
  219. package/dist/llm-docs/tools/callbacks.d.ts.map +1 -1
  220. package/dist/llm-docs/tools/callbacks.js +1 -1
  221. package/dist/llm-docs/tools/callbacks.js.map +1 -1
  222. package/dist/llm-docs/tools/files.d.ts +1 -1
  223. package/dist/llm-docs/tools/files.d.ts.map +1 -1
  224. package/dist/llm-docs/tools/files.js +1 -1
  225. package/dist/llm-docs/tools/files.js.map +1 -1
  226. package/dist/llm-docs/tools/imap.d.ts +1 -1
  227. package/dist/llm-docs/tools/imap.d.ts.map +1 -1
  228. package/dist/llm-docs/tools/imap.js +1 -1
  229. package/dist/llm-docs/tools/imap.js.map +1 -1
  230. package/dist/llm-docs/tools/integrations.d.ts +1 -1
  231. package/dist/llm-docs/tools/integrations.d.ts.map +1 -1
  232. package/dist/llm-docs/tools/integrations.js +1 -1
  233. package/dist/llm-docs/tools/integrations.js.map +1 -1
  234. package/dist/llm-docs/tools/network.d.ts +1 -1
  235. package/dist/llm-docs/tools/network.d.ts.map +1 -1
  236. package/dist/llm-docs/tools/network.js +1 -1
  237. package/dist/llm-docs/tools/network.js.map +1 -1
  238. package/dist/llm-docs/tools/plot.d.ts +1 -1
  239. package/dist/llm-docs/tools/plot.d.ts.map +1 -1
  240. package/dist/llm-docs/tools/plot.js +1 -1
  241. package/dist/llm-docs/tools/plot.js.map +1 -1
  242. package/dist/llm-docs/tools/smtp.d.ts +1 -1
  243. package/dist/llm-docs/tools/smtp.d.ts.map +1 -1
  244. package/dist/llm-docs/tools/smtp.js +1 -1
  245. package/dist/llm-docs/tools/smtp.js.map +1 -1
  246. package/dist/llm-docs/tools/tasks.d.ts +1 -1
  247. package/dist/llm-docs/tools/tasks.d.ts.map +1 -1
  248. package/dist/llm-docs/tools/tasks.js +1 -1
  249. package/dist/llm-docs/tools/tasks.js.map +1 -1
  250. package/dist/llm-docs/tools/twists.d.ts +1 -1
  251. package/dist/llm-docs/tools/twists.d.ts.map +1 -1
  252. package/dist/llm-docs/tools/twists.js +1 -1
  253. package/dist/llm-docs/tools/twists.js.map +1 -1
  254. package/dist/llm-docs/twist-guide-template.d.ts +1 -1
  255. package/dist/llm-docs/twist-guide-template.d.ts.map +1 -1
  256. package/dist/llm-docs/twist-guide-template.js +1 -1
  257. package/dist/llm-docs/twist-guide-template.js.map +1 -1
  258. package/dist/llm-docs/twist.d.ts +1 -1
  259. package/dist/llm-docs/twist.d.ts.map +1 -1
  260. package/dist/llm-docs/twist.js +1 -1
  261. package/dist/llm-docs/twist.js.map +1 -1
  262. package/dist/plot.d.ts +15 -8
  263. package/dist/plot.d.ts.map +1 -1
  264. package/dist/plot.js.map +1 -1
  265. package/dist/tool.d.ts +4 -4
  266. package/dist/tool.js +4 -4
  267. package/dist/tools/ai.d.ts +12 -13
  268. package/dist/tools/ai.d.ts.map +1 -1
  269. package/dist/tools/ai.js +8 -9
  270. package/dist/tools/ai.js.map +1 -1
  271. package/dist/tools/callbacks.d.ts +1 -1
  272. package/dist/tools/files.d.ts +2 -2
  273. package/dist/tools/imap.d.ts +1 -1
  274. package/dist/tools/imap.js +1 -1
  275. package/dist/tools/integrations.d.ts +29 -2
  276. package/dist/tools/integrations.d.ts.map +1 -1
  277. package/dist/tools/integrations.js.map +1 -1
  278. package/dist/tools/network.d.ts +5 -5
  279. package/dist/tools/plot.d.ts +42 -37
  280. package/dist/tools/plot.d.ts.map +1 -1
  281. package/dist/tools/plot.js +16 -12
  282. package/dist/tools/plot.js.map +1 -1
  283. package/dist/tools/smtp.d.ts +1 -1
  284. package/dist/tools/smtp.js +1 -1
  285. package/dist/tools/tasks.d.ts +6 -8
  286. package/dist/tools/tasks.d.ts.map +1 -1
  287. package/dist/tools/tasks.js +5 -7
  288. package/dist/tools/tasks.js.map +1 -1
  289. package/dist/tools/twists.d.ts +15 -14
  290. package/dist/tools/twists.d.ts.map +1 -1
  291. package/dist/tools/twists.js +2 -2
  292. package/dist/tools/twists.js.map +1 -1
  293. package/dist/twist-guide.d.ts +1 -1
  294. package/dist/twist-guide.d.ts.map +1 -1
  295. package/dist/twist.d.ts +2 -2
  296. package/dist/twist.js +2 -2
  297. package/package.json +6 -1
  298. package/src/connector.ts +23 -16
  299. package/src/facets.ts +40 -0
  300. package/src/llm-docs/connector.ts +1 -1
  301. package/src/llm-docs/facets.ts +8 -0
  302. package/src/llm-docs/index.ts +2 -0
  303. package/src/llm-docs/plot.ts +1 -1
  304. package/src/llm-docs/tool.ts +1 -1
  305. package/src/llm-docs/tools/ai.ts +1 -1
  306. package/src/llm-docs/tools/callbacks.ts +1 -1
  307. package/src/llm-docs/tools/files.ts +1 -1
  308. package/src/llm-docs/tools/imap.ts +1 -1
  309. package/src/llm-docs/tools/integrations.ts +1 -1
  310. package/src/llm-docs/tools/network.ts +1 -1
  311. package/src/llm-docs/tools/plot.ts +1 -1
  312. package/src/llm-docs/tools/smtp.ts +1 -1
  313. package/src/llm-docs/tools/tasks.ts +1 -1
  314. package/src/llm-docs/tools/twists.ts +1 -1
  315. package/src/llm-docs/twist-guide-template.ts +1 -1
  316. package/src/llm-docs/twist.ts +1 -1
  317. package/src/plot.ts +15 -8
  318. package/src/tool.ts +4 -4
  319. package/src/tools/ai.ts +12 -13
  320. package/src/tools/callbacks.ts +1 -1
  321. package/src/tools/files.ts +2 -2
  322. package/src/tools/imap.ts +1 -1
  323. package/src/tools/integrations.ts +34 -1
  324. package/src/tools/network.ts +5 -5
  325. package/src/tools/plot.ts +42 -37
  326. package/src/tools/smtp.ts +1 -1
  327. package/src/tools/tasks.ts +6 -8
  328. package/src/tools/twists.ts +15 -14
  329. package/src/twist.ts +2 -2
  330. package/dist/docs/media/MULTI_USER_AUTH.md +0 -116
  331. package/dist/docs/media/SYNC_STRATEGIES.md +0 -818
package/dist/tool.d.ts CHANGED
@@ -3,7 +3,7 @@ import type { Callback } from "./tools/callbacks";
3
3
  import type { InferOptions, InferTools, Serializable, ToolBuilder, ToolShed } from "./utils/types";
4
4
  export type { ToolBuilder };
5
5
  /**
6
- * Abstrtact parent for both built-in tools and regular Tools.
6
+ * Abstract parent for both built-in tools and regular Tools.
7
7
  * Regular tools extend Tool.
8
8
  */
9
9
  export declare abstract class ITool {
@@ -157,8 +157,8 @@ export declare abstract class Tool<TSelf> implements ITool {
157
157
  * await this.set("handler_token", token);
158
158
  *
159
159
  * // Later, execute the callback
160
- * const token = await this.get<string>("handler_token");
161
- * await this.run(token, args);
160
+ * const token = await this.get<Callback>("handler_token");
161
+ * await this.run(token);
162
162
  * ```
163
163
  *
164
164
  * @template T - The type of value being stored (must be Serializable)
@@ -205,7 +205,7 @@ export declare abstract class Tool<TSelf> implements ITool {
205
205
  * @example
206
206
  * ```typescript
207
207
  * // Break large loop into batches
208
- * const callback = await this.callback("processBatch", { page: 1 });
208
+ * const callback = await this.callback(this.processBatch, 1);
209
209
  * await this.runTask(callback); // New execution with fresh request limit
210
210
  * ```
211
211
  */
package/dist/tool.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Abstrtact parent for both built-in tools and regular Tools.
2
+ * Abstract parent for both built-in tools and regular Tools.
3
3
  * Regular tools extend Tool.
4
4
  */
5
5
  export class ITool {
@@ -172,8 +172,8 @@ export class Tool {
172
172
  * await this.set("handler_token", token);
173
173
  *
174
174
  * // Later, execute the callback
175
- * const token = await this.get<string>("handler_token");
176
- * await this.run(token, args);
175
+ * const token = await this.get<Callback>("handler_token");
176
+ * await this.run(token);
177
177
  * ```
178
178
  *
179
179
  * @template T - The type of value being stored (must be Serializable)
@@ -228,7 +228,7 @@ export class Tool {
228
228
  * @example
229
229
  * ```typescript
230
230
  * // Break large loop into batches
231
- * const callback = await this.callback("processBatch", { page: 1 });
231
+ * const callback = await this.callback(this.processBatch, 1);
232
232
  * await this.runTask(callback); // New execution with fresh request limit
233
233
  * ```
234
234
  */
@@ -19,12 +19,11 @@ import { ITool } from "..";
19
19
  * ```typescript
20
20
  * import { Type } from "typebox";
21
21
  *
22
- * class SmartEmailTool extends Tool {
23
- * private ai: AI;
24
- *
25
- * constructor(id: string, tools: ToolBuilder) {
26
- * super();
27
- * this.ai = tools.get(AI);
22
+ * class SmartEmailTool extends Tool<SmartEmailTool> {
23
+ * build(build: ToolBuilder) {
24
+ * return {
25
+ * ai: build(AI),
26
+ * };
28
27
  * }
29
28
  *
30
29
  * async categorizeEmail(emailContent: string) {
@@ -40,7 +39,7 @@ import { ITool } from "..";
40
39
  * reasoning: Type.Optional(Type.String())
41
40
  * });
42
41
  *
43
- * const response = await this.ai.prompt({
42
+ * const response = await this.tools.ai.prompt({
44
43
  * model: { speed: "fast", cost: "medium" },
45
44
  * system: "Classify emails into categories: work, personal, spam, or promotional.",
46
45
  * prompt: `Categorize this email: ${emailContent}`,
@@ -51,7 +50,7 @@ import { ITool } from "..";
51
50
  * }
52
51
  *
53
52
  * async generateResponse(emailContent: string) {
54
- * const response = await this.ai.prompt({
53
+ * const response = await this.tools.ai.prompt({
55
54
  * model: { speed: "fast", cost: "medium" },
56
55
  * system: "Generate professional email responses that are helpful and concise.",
57
56
  * prompt: `Write a response to: ${emailContent}`
@@ -65,7 +64,7 @@ import { ITool } from "..";
65
64
  export declare abstract class AI extends ITool {
66
65
  /**
67
66
  * Returns which AI capabilities are currently available.
68
- * Check this before calling prompt() or embed() to gracefully
67
+ * Check this before calling prompt() to gracefully
69
68
  * handle cases where AI is disabled by the user.
70
69
  *
71
70
  * Built-in tools are accessed as RPC stubs, so from a twist this call
@@ -186,7 +185,7 @@ export type AICapabilities = {
186
185
  * prompt: "Analyze this data..."
187
186
  * });
188
187
  *
189
- * // Most capable - uses Claude Sonnet 4.5 or Opus 4.1
188
+ * // Most capable - uses models like GPT-5, Claude Sonnet 4.6, or Gemini 2.5 Pro
190
189
  * const response = await ai.prompt({
191
190
  * model: { speed: "capable", cost: "high" },
192
191
  * prompt: "Solve this complex reasoning problem..."
@@ -194,7 +193,7 @@ export type AICapabilities = {
194
193
  *
195
194
  * // Request a specific model with a hint
196
195
  * const response = await ai.prompt({
197
- * model: { speed: "balanced", cost: "medium", hint: AIModel.CLAUDE_SONNET_45 },
196
+ * model: { speed: "balanced", cost: "medium", hint: AIModel.CLAUDE_SONNET_46 },
198
197
  * prompt: "..."
199
198
  * });
200
199
  * ```
@@ -226,7 +225,7 @@ export type ModelPreferences = {
226
225
  * Models are organized by provider:
227
226
  * - **OpenAI**: Latest GPT models via AI Gateway
228
227
  * - **Anthropic**: Claude models via AI Gateway (prefix with "anthropic/")
229
- * - **Google**: Gemini models via AI Gateway (prefix with "google-ai-studio/")
228
+ * - **Google**: Gemini models via AI Gateway (prefix with "google/")
230
229
  * - **Workers AI**: Models running on Cloudflare's network (free/low cost)
231
230
  */
232
231
  export declare enum AIModel {
@@ -441,7 +440,7 @@ export type AIUsage = {
441
440
  */
442
441
  outputTokens?: number;
443
442
  /**
444
- * The total number of tokens used (promptTokens + completionTokens).
443
+ * The total number of tokens used (inputTokens + outputTokens).
445
444
  */
446
445
  totalTokens?: number;
447
446
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../../src/tools/ai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../../src/tools/ai.ts"],"names":[],"mappings":"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"}
package/dist/tools/ai.js CHANGED
@@ -18,12 +18,11 @@ import { ITool } from "..";
18
18
  * ```typescript
19
19
  * import { Type } from "typebox";
20
20
  *
21
- * class SmartEmailTool extends Tool {
22
- * private ai: AI;
23
- *
24
- * constructor(id: string, tools: ToolBuilder) {
25
- * super();
26
- * this.ai = tools.get(AI);
21
+ * class SmartEmailTool extends Tool<SmartEmailTool> {
22
+ * build(build: ToolBuilder) {
23
+ * return {
24
+ * ai: build(AI),
25
+ * };
27
26
  * }
28
27
  *
29
28
  * async categorizeEmail(emailContent: string) {
@@ -39,7 +38,7 @@ import { ITool } from "..";
39
38
  * reasoning: Type.Optional(Type.String())
40
39
  * });
41
40
  *
42
- * const response = await this.ai.prompt({
41
+ * const response = await this.tools.ai.prompt({
43
42
  * model: { speed: "fast", cost: "medium" },
44
43
  * system: "Classify emails into categories: work, personal, spam, or promotional.",
45
44
  * prompt: `Categorize this email: ${emailContent}`,
@@ -50,7 +49,7 @@ import { ITool } from "..";
50
49
  * }
51
50
  *
52
51
  * async generateResponse(emailContent: string) {
53
- * const response = await this.ai.prompt({
52
+ * const response = await this.tools.ai.prompt({
54
53
  * model: { speed: "fast", cost: "medium" },
55
54
  * system: "Generate professional email responses that are helpful and concise.",
56
55
  * prompt: `Write a response to: ${emailContent}`
@@ -69,7 +68,7 @@ export class AI extends ITool {
69
68
  * Models are organized by provider:
70
69
  * - **OpenAI**: Latest GPT models via AI Gateway
71
70
  * - **Anthropic**: Claude models via AI Gateway (prefix with "anthropic/")
72
- * - **Google**: Gemini models via AI Gateway (prefix with "google-ai-studio/")
71
+ * - **Google**: Gemini models via AI Gateway (prefix with "google/")
73
72
  * - **Workers AI**: Models running on Cloudflare's network (free/low cost)
74
73
  */
75
74
  export var AIModel;
@@ -1 +1 @@
1
- {"version":3,"file":"ai.js","sourceRoot":"","sources":["../../src/tools/ai.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC;AAE3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6DG;AACH,MAAM,OAAgB,EAAG,SAAQ,KAAK;CA0FrC;AA8ED;;;;;;;;GAQG;AACH,MAAM,CAAN,IAAY,OA6BX;AA7BD,WAAY,OAAO;IACjB,kDAAkD;IAClD,iCAAsB,CAAA;IACtB,yCAA8B,CAAA;IAC9B,2CAAgC,CAAA;IAChC,2CAAgC,CAAA;IAChC,mCAAwB,CAAA;IACxB,6CAAkC,CAAA;IAClC,2BAAgB,CAAA;IAChB,qCAA0B,CAAA;IAE1B,uCAAuC;IACvC,uDAA4C,CAAA;IAC5C,2DAAgD,CAAA;IAChD,yDAA8C,CAAA;IAE9C,oCAAoC;IACpC,kDAAuC,CAAA;IACvC,sDAA2C,CAAA;IAC3C,gEAAqD,CAAA;IACrD,sDAA2C,CAAA;IAC3C,gEAAqD,CAAA;IAErD,sFAAsF;IACtF,oEAAyD,CAAA;IACzD,gEAAqD,CAAA;IACrD,yDAA8C,CAAA;IAC9C,qDAA0C,CAAA;IAC1C,uEAA4D,CAAA;AAC9D,CAAC,EA7BW,OAAO,KAAP,OAAO,QA6BlB"}
1
+ {"version":3,"file":"ai.js","sourceRoot":"","sources":["../../src/tools/ai.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC;AAE3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AACH,MAAM,OAAgB,EAAG,SAAQ,KAAK;CA0FrC;AA8ED;;;;;;;;GAQG;AACH,MAAM,CAAN,IAAY,OA6BX;AA7BD,WAAY,OAAO;IACjB,kDAAkD;IAClD,iCAAsB,CAAA;IACtB,yCAA8B,CAAA;IAC9B,2CAAgC,CAAA;IAChC,2CAAgC,CAAA;IAChC,mCAAwB,CAAA;IACxB,6CAAkC,CAAA;IAClC,2BAAgB,CAAA;IAChB,qCAA0B,CAAA;IAE1B,uCAAuC;IACvC,uDAA4C,CAAA;IAC5C,2DAAgD,CAAA;IAChD,yDAA8C,CAAA;IAE9C,oCAAoC;IACpC,kDAAuC,CAAA;IACvC,sDAA2C,CAAA;IAC3C,gEAAqD,CAAA;IACrD,sDAA2C,CAAA;IAC3C,gEAAqD,CAAA;IAErD,sFAAsF;IACtF,oEAAyD,CAAA;IACzD,gEAAqD,CAAA;IACrD,yDAA8C,CAAA;IAC9C,qDAA0C,CAAA;IAC1C,uEAA4D,CAAA;AAC9D,CAAC,EA7BW,OAAO,KAAP,OAAO,QA6BlB"}
@@ -6,7 +6,7 @@ import { Serializable } from "../utils/types";
6
6
  * Callbacks enable tools and twists to create persistent references to functions
7
7
  * that can survive worker restarts and be invoked across different execution contexts.
8
8
  *
9
- * This is a branded strin
9
+ * This is a branded string
10
10
  * type to prevent mixing callback tokens with regular strings.
11
11
  *
12
12
  * @example
@@ -13,8 +13,8 @@ import { ITool } from "..";
13
13
  */
14
14
  export declare abstract class Files extends ITool {
15
15
  /**
16
- * Read a file uploaded by a client and attached to a note in a focus
17
- * where this twist is installed.
16
+ * Read a file uploaded by a client and attached to a note on a thread
17
+ * in one of the twist owner's focuses.
18
18
  *
19
19
  * @param fileId The id from an ActionType.file action.
20
20
  * @returns Bytes plus original metadata.
@@ -119,7 +119,7 @@ export type ImapFlagOperation = "add" | "remove" | "set";
119
119
  * @example
120
120
  * ```typescript
121
121
  * class AppleMailConnector extends Connector<AppleMailConnector> {
122
- * build(build: ConnectorBuilder) {
122
+ * build(build: ToolBuilder) {
123
123
  * return {
124
124
  * options: build(Options, {
125
125
  * email: { type: "text", label: "Apple ID Email", default: "" },
@@ -12,7 +12,7 @@ import { ITool } from "..";
12
12
  * @example
13
13
  * ```typescript
14
14
  * class AppleMailConnector extends Connector<AppleMailConnector> {
15
- * build(build: ConnectorBuilder) {
15
+ * build(build: ToolBuilder) {
16
16
  * return {
17
17
  * options: build(Options, {
18
18
  * email: { type: "text", label: "Apple ID Email", default: "" },
@@ -1,4 +1,4 @@
1
- import { type Actor, type ActorId, type NewContact, type NewLinkWithNotes, ITool } from "..";
1
+ import { type Actor, type ActorId, type NewContact, type NewLinkWithNotes, type NewNote, ITool } from "..";
2
2
  import type { JSONValue } from "../utils/types";
3
3
  import type { Uuid } from "../utils/uuid";
4
4
  /**
@@ -420,6 +420,24 @@ export declare abstract class Integrations extends ITool {
420
420
  * logged server-side.
421
421
  */
422
422
  abstract saveLinks(links: NewLinkWithNotes[]): Promise<(Uuid | null)[]>;
423
+ /**
424
+ * Save one or more notes. Unlike saveLink (which creates a thread-level
425
+ * canonical link), these notes attach to an EXISTING thread — addressed by
426
+ * `note.thread: { id }` or `{ source }` — and may carry their own
427
+ * note-attached link via `note.link` (a note-scoped link, NOT a thread-level
428
+ * canonical link). When `{ source }` resolves to no thread yet, the runtime
429
+ * find-or-creates the thread by that source. Use for augmenter content
430
+ * (e.g. meeting notes attached to a calendar event).
431
+ */
432
+ abstract saveNotes(notes: NewNote[]): Promise<(Uuid | null)[]>;
433
+ /** Save a single note. See {@link saveNotes}. */
434
+ abstract saveNote(note: NewNote): Promise<Uuid | null>;
435
+ /**
436
+ * Archive every note this connector created (optionally scoped to a channel),
437
+ * plus their note-attached links. Mirror of {@link archiveLinks} for the
438
+ * note-attached content model. Use in `onChannelDisabled`.
439
+ */
440
+ abstract archiveNotes(filter: ArchiveNotesFilter): Promise<void>;
423
441
  /**
424
442
  * Upserts contacts into the connector's focus without requiring a Link.
425
443
  *
@@ -518,6 +536,14 @@ export type ArchiveLinkFilter = {
518
536
  /** Filter by metadata fields (uses containment matching) */
519
537
  meta?: Record<string, JSONValue>;
520
538
  };
539
+ /**
540
+ * Filter criteria for archiving notes (and their note-attached links).
541
+ * All fields are optional; only provided fields are used for matching.
542
+ */
543
+ export type ArchiveNotesFilter = {
544
+ /** Restrict to notes whose note-attached link is on this channel. */
545
+ channelId?: string;
546
+ };
521
547
  /**
522
548
  * A workspace custom emoji to cache so Plot can render and round-trip it as a
523
549
  * reaction. `id` is the provider-scoped ref stored on reactions, of the form
@@ -601,8 +627,9 @@ export type AuthToken = {
601
627
  *
602
628
  * For Slack (AuthProvider.Slack):
603
629
  * - authed_user_id: The authenticated user's Slack ID
604
- * - bot_user_id: The bot user's Slack ID
630
+ * - team_id: The Slack workspace/team ID
605
631
  * - team_name: The Slack workspace/team name
632
+ * - enterprise_id: The Enterprise Grid org ID (when applicable)
606
633
  */
607
634
  provider?: Record<string, string>;
608
635
  };
@@ -1 +1 @@
1
- {"version":3,"file":"integrations.d.ts","sourceRoot":"","sources":["../../src/tools/integrations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"integrations.d.ts","sourceRoot":"","sources":["../../src/tools/integrations.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"integrations.js","sourceRoot":"","sources":["../../src/tools/integrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,GACN,MAAM,IAAI,CAAC;AAiVZ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,OAAgB,YAAa,SAAQ,KAAK;IAC9C;;;;;OAKG;IACH,MAAM,CAAC,WAAW,CAAC,GAAG,WAAuB;QAC3C,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACjD,CAAC;CAgKF;AAuCD;;;;;GAKG;AACH,MAAM,CAAN,IAAY,YAyBX;AAzBD,WAAY,YAAY;IACtB,0DAA0D;IAC1D,iCAAiB,CAAA;IACjB,0DAA0D;IAC1D,uCAAuB,CAAA;IACvB,kDAAkD;IAClD,iCAAiB,CAAA;IACjB,gDAAgD;IAChD,+BAAe,CAAA;IACf,uDAAuD;IACvD,uCAAuB,CAAA;IACvB,kDAAkD;IAClD,iCAAiB,CAAA;IACjB,gCAAgC;IAChC,iCAAiB,CAAA;IACjB,sEAAsE;IACtE,iCAAiB,CAAA;IACjB,gDAAgD;IAChD,+BAAe,CAAA;IACf,6CAA6C;IAC7C,mCAAmB,CAAA;IACnB,yDAAyD;IACzD,mCAAmB,CAAA;IACnB,iDAAiD;IACjD,qCAAqB,CAAA;AACvB,CAAC,EAzBW,YAAY,KAAZ,YAAY,QAyBvB"}
1
+ {"version":3,"file":"integrations.js","sourceRoot":"","sources":["../../src/tools/integrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,GACN,MAAM,IAAI,CAAC;AAiVZ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,OAAgB,YAAa,SAAQ,KAAK;IAC9C;;;;;OAKG;IACH,MAAM,CAAC,WAAW,CAAC,GAAG,WAAuB;QAC3C,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACjD,CAAC;CAsLF;AAgDD;;;;;GAKG;AACH,MAAM,CAAN,IAAY,YAyBX;AAzBD,WAAY,YAAY;IACtB,0DAA0D;IAC1D,iCAAiB,CAAA;IACjB,0DAA0D;IAC1D,uCAAuB,CAAA;IACvB,kDAAkD;IAClD,iCAAiB,CAAA;IACjB,gDAAgD;IAChD,+BAAe,CAAA;IACf,uDAAuD;IACvD,uCAAuB,CAAA;IACvB,kDAAkD;IAClD,iCAAiB,CAAA;IACjB,gCAAgC;IAChC,iCAAiB,CAAA;IACjB,sEAAsE;IACtE,iCAAiB,CAAA;IACjB,gDAAgD;IAChD,+BAAe,CAAA;IACf,6CAA6C;IAC7C,mCAAmB,CAAA;IACnB,yDAAyD;IACzD,mCAAmB,CAAA;IACnB,iDAAiD;IACjD,qCAAqB,CAAA;AACvB,CAAC,EAzBW,YAAY,KAAZ,YAAY,QAyBvB"}
@@ -222,9 +222,9 @@ export declare abstract class Network extends ITool {
222
222
  * Deletes an existing webhook endpoint.
223
223
  *
224
224
  * Removes the webhook endpoint and stops processing requests.
225
- * Works with all webhook types (standard, Slack, and Gmail).
225
+ * Works with all webhook types (standard, Slack, and Pub/Sub).
226
226
  *
227
- * **For Gmail webhooks:** Also deletes the associated Google Pub/Sub topic and subscription.
227
+ * **For Pub/Sub webhooks (Gmail and Workspace Events):** Also deletes the associated Google Pub/Sub topic and subscription.
228
228
  *
229
229
  * **For Slack webhooks:** Removes the callback registration for the specific team.
230
230
  *
@@ -232,9 +232,9 @@ export declare abstract class Network extends ITool {
232
232
  * to the deleted webhook will return 404.
233
233
  *
234
234
  * @param url - The webhook identifier returned from `createWebhook()`.
235
- * This can be a URL (standard webhooks), a Pub/Sub topic name (Gmail),
236
- * or an opaque identifier (Slack). Always pass the exact value returned
237
- * from `createWebhook()`.
235
+ * This can be a URL (standard webhooks), a Pub/Sub topic name
236
+ * (Gmail/Workspace Events), or an opaque identifier (Slack).
237
+ * Always pass the exact value returned from `createWebhook()`.
238
238
  * @returns Promise that resolves when the webhook is deleted
239
239
  */
240
240
  abstract deleteWebhook(url: string): Promise<void>;
@@ -117,22 +117,26 @@ export type SearchOptions = {
117
117
  *
118
118
  * @example
119
119
  * ```typescript
120
- * class MyTwist extends Twist {
121
- * private plot: Plot;
122
- *
123
- * constructor(id: string, tools: ToolBuilder) {
124
- * super();
125
- * this.plot = tools.get(Plot);
120
+ * class MyTwist extends Twist<MyTwist> {
121
+ * build(build: ToolBuilder) {
122
+ * return {
123
+ * plot: build(Plot, {
124
+ * thread: { access: ThreadAccess.Create },
125
+ * }),
126
+ * };
126
127
  * }
127
128
  *
128
129
  * async activate() {
129
- * // Create a welcome thread
130
- * await this.plot.createThread({
130
+ * // Create a welcome thread with an opening note
131
+ * await this.tools.plot.createThread({
131
132
  * title: "Welcome to Plot!",
132
- * actions: [{
133
- * title: "Get Started",
134
- * type: ActionType.external,
135
- * url: "https://plot.day/docs"
133
+ * notes: [{
134
+ * content: "Get started with Plot:",
135
+ * actions: [{
136
+ * type: ActionType.external,
137
+ * title: "Get Started",
138
+ * url: "https://plot.day/docs"
139
+ * }]
136
140
  * }]
137
141
  * });
138
142
  * }
@@ -292,8 +296,9 @@ export declare abstract class Plot extends ITool {
292
296
  * remain unchanged. This enables partial updates without needing to fetch and resend
293
297
  * the entire thread object.
294
298
  *
295
- * For tags, provide a Record<number, boolean> where true adds a tag and false removes it.
296
- * Tags not included in the update remain unchanged.
299
+ * For the twist's own tags, use `twistTags`: a record mapping tag ID to a
300
+ * boolean, where true adds the tag and false removes it. Tags not included
301
+ * in the update remain unchanged.
297
302
  *
298
303
  * Set `focus` to move the thread to a different focus.
299
304
  *
@@ -305,18 +310,18 @@ export declare abstract class Plot extends ITool {
305
310
  *
306
311
  * @example
307
312
  * ```typescript
308
- * // Mark a task as complete
309
- * await this.plot.updateThread({
310
- * id: "task-123",
311
- * done: new Date()
313
+ * // Archive a thread
314
+ * await this.tools.plot.updateThread({
315
+ * id: threadId,
316
+ * archived: true
312
317
  * });
313
318
  *
314
- * // Add and remove tags
315
- * await this.plot.updateThread({
316
- * id: "thread-789",
317
- * tags: {
318
- * 1: true, // Add tag with ID 1
319
- * 2: false // Remove tag with ID 2
319
+ * // Add and remove the twist's tags
320
+ * await this.tools.plot.updateThread({
321
+ * id: threadId,
322
+ * twistTags: {
323
+ * [Tag.Todo]: true, // Add the to-do tag
324
+ * [Tag.Done]: false // Remove the done tag
320
325
  * }
321
326
  * });
322
327
  * ```
@@ -346,16 +351,16 @@ export declare abstract class Plot extends ITool {
346
351
  * @example
347
352
  * ```typescript
348
353
  * // Create a note with content
349
- * await this.plot.createNote({
354
+ * await this.tools.plot.createNote({
350
355
  * thread: { id: "thread-123" },
351
- * note: "Discussion notes from the meeting...",
356
+ * content: "Discussion notes from the meeting...",
352
357
  * contentType: "markdown"
353
358
  * });
354
359
  *
355
360
  * // Create a note with actions
356
- * await this.plot.createNote({
361
+ * await this.tools.plot.createNote({
357
362
  * thread: { id: "thread-456" },
358
- * note: "Meeting recording available",
363
+ * content: "Meeting recording available",
359
364
  * actions: [{
360
365
  * type: ActionType.external,
361
366
  * title: "View Recording",
@@ -378,14 +383,14 @@ export declare abstract class Plot extends ITool {
378
383
  * @example
379
384
  * ```typescript
380
385
  * // Create multiple notes in one batch
381
- * await this.plot.createNotes([
386
+ * await this.tools.plot.createNotes([
382
387
  * {
383
388
  * thread: { id: "thread-123" },
384
- * note: "First message in thread"
389
+ * content: "First message in thread"
385
390
  * },
386
391
  * {
387
392
  * thread: { id: "thread-123" },
388
- * note: "Second message in thread"
393
+ * content: "Second message in thread"
389
394
  * }
390
395
  * ]);
391
396
  * ```
@@ -408,16 +413,16 @@ export declare abstract class Plot extends ITool {
408
413
  * @example
409
414
  * ```typescript
410
415
  * // Update note content
411
- * await this.plot.updateNote({
416
+ * await this.tools.plot.updateNote({
412
417
  * id: "note-123",
413
- * note: "Updated content with more details"
418
+ * content: "Updated content with more details"
414
419
  * });
415
420
  *
416
421
  * // Add tags to a note
417
- * await this.plot.updateNote({
422
+ * await this.tools.plot.updateNote({
418
423
  * id: "note-456",
419
424
  * twistTags: {
420
- * [Tag.Important]: true
425
+ * [Tag.Todo]: true
421
426
  * }
422
427
  * });
423
428
  * ```
@@ -521,10 +526,10 @@ export declare abstract class Plot extends ITool {
521
526
  * @example
522
527
  * ```typescript
523
528
  * // Schedule a timed event
524
- * const threadId = await this.plot.createThread({
529
+ * const threadId = await this.tools.plot.createThread({
525
530
  * title: "Team standup"
526
531
  * });
527
- * await this.plot.createSchedule({
532
+ * await this.tools.plot.createSchedule({
528
533
  * threadId,
529
534
  * start: new Date("2025-01-15T10:00:00Z"),
530
535
  * end: new Date("2025-01-15T10:30:00Z"),
@@ -1 +1 @@
1
- {"version":3,"file":"plot.d.ts","sourceRoot":"","sources":["../../src/tools/plot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plot.d.ts","sourceRoot":"","sources":["../../src/tools/plot.ts"],"names":[],"mappings":"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"}
@@ -59,22 +59,26 @@ export const SEARCH_MAX_LIMIT = 30;
59
59
  *
60
60
  * @example
61
61
  * ```typescript
62
- * class MyTwist extends Twist {
63
- * private plot: Plot;
64
- *
65
- * constructor(id: string, tools: ToolBuilder) {
66
- * super();
67
- * this.plot = tools.get(Plot);
62
+ * class MyTwist extends Twist<MyTwist> {
63
+ * build(build: ToolBuilder) {
64
+ * return {
65
+ * plot: build(Plot, {
66
+ * thread: { access: ThreadAccess.Create },
67
+ * }),
68
+ * };
68
69
  * }
69
70
  *
70
71
  * async activate() {
71
- * // Create a welcome thread
72
- * await this.plot.createThread({
72
+ * // Create a welcome thread with an opening note
73
+ * await this.tools.plot.createThread({
73
74
  * title: "Welcome to Plot!",
74
- * actions: [{
75
- * title: "Get Started",
76
- * type: ActionType.external,
77
- * url: "https://plot.day/docs"
75
+ * notes: [{
76
+ * content: "Get started with Plot:",
77
+ * actions: [{
78
+ * type: ActionType.external,
79
+ * title: "Get Started",
80
+ * url: "https://plot.day/docs"
81
+ * }]
78
82
  * }]
79
83
  * });
80
84
  * }
@@ -1 +1 @@
1
- {"version":3,"file":"plot.js","sourceRoot":"","sources":["../../src/tools/plot.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,GAaN,MAAM,IAAI,CAAC;AAOZ,MAAM,CAAN,IAAY,YAmBX;AAnBD,WAAY,YAAY;IACtB;;;OAGG;IACH,qDAAO,CAAA;IACP;;;;OAIG;IACH,mDAAM,CAAA;IACN;;;;;OAKG;IACH,+CAAI,CAAA;AACN,CAAC,EAnBW,YAAY,KAAZ,YAAY,QAmBvB;AAED,MAAM,CAAN,IAAY,WAYX;AAZD,WAAY,WAAW;IACrB;;;OAGG;IACH,iDAAM,CAAA;IACN;;;;OAIG;IACH,6CAAI,CAAA;AACN,CAAC,EAZW,WAAW,KAAX,WAAW,QAYtB;AAED,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,iFAAiF;IACjF,iDAAI,CAAA;AACN,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED,MAAM,CAAN,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,0DAA0D;IAC1D,2CAAI,CAAA;IACJ,6FAA6F;IAC7F,2CAAI,CAAA;AACN,CAAC,EALW,UAAU,KAAV,UAAU,QAKrB;AAmDD,gDAAgD;AAChD,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC;AACvC,+CAA+C;AAC/C,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAcnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,OAAgB,IAAK,SAAQ,KAAK;IACtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2CG;IACH,MAAM,CAAU,OAAO,CA0ErB;CAgZH"}
1
+ {"version":3,"file":"plot.js","sourceRoot":"","sources":["../../src/tools/plot.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,GAaN,MAAM,IAAI,CAAC;AAOZ,MAAM,CAAN,IAAY,YAmBX;AAnBD,WAAY,YAAY;IACtB;;;OAGG;IACH,qDAAO,CAAA;IACP;;;;OAIG;IACH,mDAAM,CAAA;IACN;;;;;OAKG;IACH,+CAAI,CAAA;AACN,CAAC,EAnBW,YAAY,KAAZ,YAAY,QAmBvB;AAED,MAAM,CAAN,IAAY,WAYX;AAZD,WAAY,WAAW;IACrB;;;OAGG;IACH,iDAAM,CAAA;IACN;;;;OAIG;IACH,6CAAI,CAAA;AACN,CAAC,EAZW,WAAW,KAAX,WAAW,QAYtB;AAED,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,iFAAiF;IACjF,iDAAI,CAAA;AACN,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED,MAAM,CAAN,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,0DAA0D;IAC1D,2CAAI,CAAA;IACJ,6FAA6F;IAC7F,2CAAI,CAAA;AACN,CAAC,EALW,UAAU,KAAV,UAAU,QAKrB;AAmDD,gDAAgD;AAChD,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC;AACvC,+CAA+C;AAC/C,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAcnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,OAAgB,IAAK,SAAQ,KAAK;IACtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2CG;IACH,MAAM,CAAU,OAAO,CA0ErB;CAiZH"}
@@ -70,7 +70,7 @@ export type SmtpSendResult = {
70
70
  * @example
71
71
  * ```typescript
72
72
  * class AppleMailConnector extends Connector<AppleMailConnector> {
73
- * build(build: ConnectorBuilder) {
73
+ * build(build: ToolBuilder) {
74
74
  * return {
75
75
  * options: build(Options, {
76
76
  * email: { type: "text", label: "Apple ID Email", default: "" },
@@ -12,7 +12,7 @@ import { ITool } from "..";
12
12
  * @example
13
13
  * ```typescript
14
14
  * class AppleMailConnector extends Connector<AppleMailConnector> {
15
- * build(build: ConnectorBuilder) {
15
+ * build(build: ToolBuilder) {
16
16
  * return {
17
17
  * options: build(Options, {
18
18
  * email: { type: "text", label: "Apple ID Email", default: "" },