provekit 0.1.0__py3-none-any.whl

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 (485) hide show
  1. provekit/__init__.py +0 -0
  2. provekit/cli.py +256 -0
  3. provekit/config.py +77 -0
  4. provekit/database.py +132 -0
  5. provekit/main.py +115 -0
  6. provekit/migrations/env.py +40 -0
  7. provekit/migrations/script.py.mako +22 -0
  8. provekit/migrations/versions/323eb73d463c_user_email_verified.py +32 -0
  9. provekit/migrations/versions/49e8ab812556_baseline_schema.py +241 -0
  10. provekit/migrations/versions/819ed5ff183e_workspace_ingest_key.py +35 -0
  11. provekit/migrations/versions/a1b2c3d4e5f6_user_token_version.py +27 -0
  12. provekit/models.py +191 -0
  13. provekit/observability.py +154 -0
  14. provekit/routers/__init__.py +0 -0
  15. provekit/routers/auth.py +150 -0
  16. provekit/routers/connections.py +270 -0
  17. provekit/routers/deployments.py +161 -0
  18. provekit/routers/flows.py +188 -0
  19. provekit/routers/library.py +265 -0
  20. provekit/routers/prompts.py +72 -0
  21. provekit/routers/run.py +203 -0
  22. provekit/routers/runtime.py +103 -0
  23. provekit/routers/traces.py +65 -0
  24. provekit/routers/usage.py +42 -0
  25. provekit/services/__init__.py +0 -0
  26. provekit/services/assertions.py +135 -0
  27. provekit/services/auth.py +131 -0
  28. provekit/services/deploy.py +63 -0
  29. provekit/services/dispatch.py +313 -0
  30. provekit/services/email.py +38 -0
  31. provekit/services/flow.py +299 -0
  32. provekit/services/limits.py +109 -0
  33. provekit/services/masking.py +45 -0
  34. provekit/services/netguard.py +69 -0
  35. provekit/services/otel.py +146 -0
  36. provekit/services/promptfoo.py +92 -0
  37. provekit/services/providers/__init__.py +0 -0
  38. provekit/services/providers/a2a_client.py +110 -0
  39. provekit/services/providers/agent_http.py +55 -0
  40. provekit/services/providers/llm.py +364 -0
  41. provekit/services/providers/mcp_client.py +289 -0
  42. provekit/services/runstore.py +93 -0
  43. provekit/services/sealing.py +106 -0
  44. provekit/services/templates.py +69 -0
  45. provekit/services/testfile.py +122 -0
  46. provekit/services/tooling.py +194 -0
  47. provekit/services/workspace.py +91 -0
  48. provekit/templates/flows/_manifest.json +2594 -0
  49. provekit/templates/flows/banking-action-items.yaml +43 -0
  50. provekit/templates/flows/banking-answer.yaml +43 -0
  51. provekit/templates/flows/banking-classify-intent.yaml +43 -0
  52. provekit/templates/flows/banking-draft-critique-revise.yaml +75 -0
  53. provekit/templates/flows/banking-extract-to-json.yaml +43 -0
  54. provekit/templates/flows/banking-faq-match-answer.yaml +60 -0
  55. provekit/templates/flows/banking-keyword-extract.yaml +43 -0
  56. provekit/templates/flows/banking-language-route.yaml +103 -0
  57. provekit/templates/flows/banking-moderation-gate.yaml +73 -0
  58. provekit/templates/flows/banking-redact-summarize.yaml +59 -0
  59. provekit/templates/flows/banking-score-gate.yaml +73 -0
  60. provekit/templates/flows/banking-sentiment-route.yaml +73 -0
  61. provekit/templates/flows/banking-severity-tiers.yaml +103 -0
  62. provekit/templates/flows/banking-summarize-then-decide.yaml +88 -0
  63. provekit/templates/flows/banking-tag-enrich.yaml +43 -0
  64. provekit/templates/flows/banking-tone-rewrite.yaml +43 -0
  65. provekit/templates/flows/banking-translate-reply.yaml +58 -0
  66. provekit/templates/flows/banking-triage-route.yaml +73 -0
  67. provekit/templates/flows/community-forum-action-items.yaml +43 -0
  68. provekit/templates/flows/community-forum-answer.yaml +43 -0
  69. provekit/templates/flows/community-forum-classify-intent.yaml +43 -0
  70. provekit/templates/flows/community-forum-draft-critique-revise.yaml +75 -0
  71. provekit/templates/flows/community-forum-extract-to-json.yaml +43 -0
  72. provekit/templates/flows/community-forum-faq-match-answer.yaml +60 -0
  73. provekit/templates/flows/community-forum-keyword-extract.yaml +43 -0
  74. provekit/templates/flows/community-forum-language-route.yaml +103 -0
  75. provekit/templates/flows/community-forum-moderation-gate.yaml +73 -0
  76. provekit/templates/flows/community-forum-redact-summarize.yaml +59 -0
  77. provekit/templates/flows/community-forum-score-gate.yaml +73 -0
  78. provekit/templates/flows/community-forum-sentiment-route.yaml +73 -0
  79. provekit/templates/flows/community-forum-severity-tiers.yaml +103 -0
  80. provekit/templates/flows/community-forum-summarize-then-decide.yaml +88 -0
  81. provekit/templates/flows/community-forum-tag-enrich.yaml +43 -0
  82. provekit/templates/flows/community-forum-tone-rewrite.yaml +43 -0
  83. provekit/templates/flows/community-forum-translate-reply.yaml +58 -0
  84. provekit/templates/flows/community-forum-triage-route.yaml +73 -0
  85. provekit/templates/flows/content-moderation-action-items.yaml +43 -0
  86. provekit/templates/flows/content-moderation-answer.yaml +43 -0
  87. provekit/templates/flows/content-moderation-classify-intent.yaml +43 -0
  88. provekit/templates/flows/content-moderation-draft-critique-revise.yaml +75 -0
  89. provekit/templates/flows/content-moderation-extract-to-json.yaml +43 -0
  90. provekit/templates/flows/content-moderation-faq-match-answer.yaml +60 -0
  91. provekit/templates/flows/content-moderation-keyword-extract.yaml +43 -0
  92. provekit/templates/flows/content-moderation-language-route.yaml +103 -0
  93. provekit/templates/flows/content-moderation-moderation-gate.yaml +73 -0
  94. provekit/templates/flows/content-moderation-redact-summarize.yaml +59 -0
  95. provekit/templates/flows/content-moderation-score-gate.yaml +73 -0
  96. provekit/templates/flows/content-moderation-sentiment-route.yaml +73 -0
  97. provekit/templates/flows/content-moderation-severity-tiers.yaml +103 -0
  98. provekit/templates/flows/content-moderation-summarize-then-decide.yaml +88 -0
  99. provekit/templates/flows/content-moderation-tag-enrich.yaml +43 -0
  100. provekit/templates/flows/content-moderation-tone-rewrite.yaml +43 -0
  101. provekit/templates/flows/content-moderation-translate-reply.yaml +58 -0
  102. provekit/templates/flows/content-moderation-triage-route.yaml +73 -0
  103. provekit/templates/flows/customer-support-action-items.yaml +43 -0
  104. provekit/templates/flows/customer-support-answer.yaml +43 -0
  105. provekit/templates/flows/customer-support-classify-intent.yaml +43 -0
  106. provekit/templates/flows/customer-support-draft-critique-revise.yaml +75 -0
  107. provekit/templates/flows/customer-support-extract-to-json.yaml +43 -0
  108. provekit/templates/flows/customer-support-faq-match-answer.yaml +60 -0
  109. provekit/templates/flows/customer-support-keyword-extract.yaml +43 -0
  110. provekit/templates/flows/customer-support-language-route.yaml +103 -0
  111. provekit/templates/flows/customer-support-moderation-gate.yaml +73 -0
  112. provekit/templates/flows/customer-support-redact-summarize.yaml +59 -0
  113. provekit/templates/flows/customer-support-score-gate.yaml +73 -0
  114. provekit/templates/flows/customer-support-sentiment-route.yaml +73 -0
  115. provekit/templates/flows/customer-support-severity-tiers.yaml +103 -0
  116. provekit/templates/flows/customer-support-summarize-then-decide.yaml +88 -0
  117. provekit/templates/flows/customer-support-tag-enrich.yaml +43 -0
  118. provekit/templates/flows/customer-support-tone-rewrite.yaml +43 -0
  119. provekit/templates/flows/customer-support-translate-reply.yaml +58 -0
  120. provekit/templates/flows/customer-support-triage-route.yaml +73 -0
  121. provekit/templates/flows/developer-tooling-action-items.yaml +43 -0
  122. provekit/templates/flows/developer-tooling-answer.yaml +43 -0
  123. provekit/templates/flows/developer-tooling-classify-intent.yaml +43 -0
  124. provekit/templates/flows/developer-tooling-draft-critique-revise.yaml +75 -0
  125. provekit/templates/flows/developer-tooling-extract-to-json.yaml +43 -0
  126. provekit/templates/flows/developer-tooling-faq-match-answer.yaml +60 -0
  127. provekit/templates/flows/developer-tooling-keyword-extract.yaml +43 -0
  128. provekit/templates/flows/developer-tooling-language-route.yaml +103 -0
  129. provekit/templates/flows/developer-tooling-moderation-gate.yaml +73 -0
  130. provekit/templates/flows/developer-tooling-redact-summarize.yaml +59 -0
  131. provekit/templates/flows/developer-tooling-score-gate.yaml +73 -0
  132. provekit/templates/flows/developer-tooling-sentiment-route.yaml +73 -0
  133. provekit/templates/flows/developer-tooling-severity-tiers.yaml +103 -0
  134. provekit/templates/flows/developer-tooling-summarize-then-decide.yaml +88 -0
  135. provekit/templates/flows/developer-tooling-tag-enrich.yaml +43 -0
  136. provekit/templates/flows/developer-tooling-tone-rewrite.yaml +43 -0
  137. provekit/templates/flows/developer-tooling-translate-reply.yaml +58 -0
  138. provekit/templates/flows/developer-tooling-triage-route.yaml +73 -0
  139. provekit/templates/flows/devrel-action-items.yaml +43 -0
  140. provekit/templates/flows/devrel-answer.yaml +43 -0
  141. provekit/templates/flows/devrel-classify-intent.yaml +43 -0
  142. provekit/templates/flows/devrel-draft-critique-revise.yaml +75 -0
  143. provekit/templates/flows/devrel-extract-to-json.yaml +43 -0
  144. provekit/templates/flows/devrel-faq-match-answer.yaml +60 -0
  145. provekit/templates/flows/devrel-keyword-extract.yaml +43 -0
  146. provekit/templates/flows/devrel-language-route.yaml +103 -0
  147. provekit/templates/flows/devrel-moderation-gate.yaml +73 -0
  148. provekit/templates/flows/devrel-redact-summarize.yaml +59 -0
  149. provekit/templates/flows/devrel-score-gate.yaml +73 -0
  150. provekit/templates/flows/devrel-sentiment-route.yaml +73 -0
  151. provekit/templates/flows/devrel-severity-tiers.yaml +103 -0
  152. provekit/templates/flows/devrel-summarize-then-decide.yaml +88 -0
  153. provekit/templates/flows/devrel-tag-enrich.yaml +43 -0
  154. provekit/templates/flows/devrel-tone-rewrite.yaml +43 -0
  155. provekit/templates/flows/devrel-translate-reply.yaml +58 -0
  156. provekit/templates/flows/devrel-triage-route.yaml +73 -0
  157. provekit/templates/flows/e-commerce-action-items.yaml +43 -0
  158. provekit/templates/flows/e-commerce-answer.yaml +43 -0
  159. provekit/templates/flows/e-commerce-classify-intent.yaml +43 -0
  160. provekit/templates/flows/e-commerce-draft-critique-revise.yaml +75 -0
  161. provekit/templates/flows/e-commerce-extract-to-json.yaml +43 -0
  162. provekit/templates/flows/e-commerce-faq-match-answer.yaml +60 -0
  163. provekit/templates/flows/e-commerce-keyword-extract.yaml +43 -0
  164. provekit/templates/flows/e-commerce-language-route.yaml +103 -0
  165. provekit/templates/flows/e-commerce-moderation-gate.yaml +73 -0
  166. provekit/templates/flows/e-commerce-redact-summarize.yaml +59 -0
  167. provekit/templates/flows/e-commerce-score-gate.yaml +73 -0
  168. provekit/templates/flows/e-commerce-sentiment-route.yaml +73 -0
  169. provekit/templates/flows/e-commerce-severity-tiers.yaml +103 -0
  170. provekit/templates/flows/e-commerce-summarize-then-decide.yaml +88 -0
  171. provekit/templates/flows/e-commerce-tag-enrich.yaml +43 -0
  172. provekit/templates/flows/e-commerce-tone-rewrite.yaml +43 -0
  173. provekit/templates/flows/e-commerce-translate-reply.yaml +58 -0
  174. provekit/templates/flows/e-commerce-triage-route.yaml +73 -0
  175. provekit/templates/flows/education-action-items.yaml +43 -0
  176. provekit/templates/flows/education-answer.yaml +43 -0
  177. provekit/templates/flows/education-classify-intent.yaml +43 -0
  178. provekit/templates/flows/education-draft-critique-revise.yaml +75 -0
  179. provekit/templates/flows/education-extract-to-json.yaml +43 -0
  180. provekit/templates/flows/education-faq-match-answer.yaml +60 -0
  181. provekit/templates/flows/education-keyword-extract.yaml +43 -0
  182. provekit/templates/flows/education-language-route.yaml +103 -0
  183. provekit/templates/flows/education-moderation-gate.yaml +73 -0
  184. provekit/templates/flows/education-redact-summarize.yaml +59 -0
  185. provekit/templates/flows/education-score-gate.yaml +73 -0
  186. provekit/templates/flows/education-sentiment-route.yaml +73 -0
  187. provekit/templates/flows/education-severity-tiers.yaml +103 -0
  188. provekit/templates/flows/education-summarize-then-decide.yaml +88 -0
  189. provekit/templates/flows/education-tag-enrich.yaml +43 -0
  190. provekit/templates/flows/education-tone-rewrite.yaml +43 -0
  191. provekit/templates/flows/education-translate-reply.yaml +58 -0
  192. provekit/templates/flows/education-triage-route.yaml +73 -0
  193. provekit/templates/flows/finance-action-items.yaml +43 -0
  194. provekit/templates/flows/finance-answer.yaml +43 -0
  195. provekit/templates/flows/finance-classify-intent.yaml +43 -0
  196. provekit/templates/flows/finance-draft-critique-revise.yaml +75 -0
  197. provekit/templates/flows/finance-extract-to-json.yaml +43 -0
  198. provekit/templates/flows/finance-faq-match-answer.yaml +60 -0
  199. provekit/templates/flows/finance-keyword-extract.yaml +43 -0
  200. provekit/templates/flows/finance-language-route.yaml +103 -0
  201. provekit/templates/flows/finance-moderation-gate.yaml +73 -0
  202. provekit/templates/flows/finance-redact-summarize.yaml +59 -0
  203. provekit/templates/flows/finance-score-gate.yaml +73 -0
  204. provekit/templates/flows/finance-sentiment-route.yaml +73 -0
  205. provekit/templates/flows/finance-severity-tiers.yaml +103 -0
  206. provekit/templates/flows/finance-summarize-then-decide.yaml +88 -0
  207. provekit/templates/flows/finance-tag-enrich.yaml +43 -0
  208. provekit/templates/flows/finance-tone-rewrite.yaml +43 -0
  209. provekit/templates/flows/finance-translate-reply.yaml +58 -0
  210. provekit/templates/flows/finance-triage-route.yaml +73 -0
  211. provekit/templates/flows/food-delivery-action-items.yaml +43 -0
  212. provekit/templates/flows/food-delivery-answer.yaml +43 -0
  213. provekit/templates/flows/food-delivery-classify-intent.yaml +43 -0
  214. provekit/templates/flows/food-delivery-draft-critique-revise.yaml +75 -0
  215. provekit/templates/flows/food-delivery-extract-to-json.yaml +43 -0
  216. provekit/templates/flows/food-delivery-faq-match-answer.yaml +60 -0
  217. provekit/templates/flows/food-delivery-keyword-extract.yaml +43 -0
  218. provekit/templates/flows/food-delivery-language-route.yaml +103 -0
  219. provekit/templates/flows/food-delivery-moderation-gate.yaml +73 -0
  220. provekit/templates/flows/food-delivery-redact-summarize.yaml +59 -0
  221. provekit/templates/flows/food-delivery-score-gate.yaml +73 -0
  222. provekit/templates/flows/food-delivery-sentiment-route.yaml +73 -0
  223. provekit/templates/flows/food-delivery-severity-tiers.yaml +103 -0
  224. provekit/templates/flows/food-delivery-summarize-then-decide.yaml +88 -0
  225. provekit/templates/flows/food-delivery-tag-enrich.yaml +43 -0
  226. provekit/templates/flows/food-delivery-tone-rewrite.yaml +43 -0
  227. provekit/templates/flows/food-delivery-translate-reply.yaml +58 -0
  228. provekit/templates/flows/food-delivery-triage-route.yaml +73 -0
  229. provekit/templates/flows/gaming-support-action-items.yaml +43 -0
  230. provekit/templates/flows/gaming-support-answer.yaml +43 -0
  231. provekit/templates/flows/gaming-support-classify-intent.yaml +43 -0
  232. provekit/templates/flows/gaming-support-draft-critique-revise.yaml +75 -0
  233. provekit/templates/flows/gaming-support-extract-to-json.yaml +43 -0
  234. provekit/templates/flows/gaming-support-faq-match-answer.yaml +60 -0
  235. provekit/templates/flows/gaming-support-keyword-extract.yaml +43 -0
  236. provekit/templates/flows/gaming-support-language-route.yaml +103 -0
  237. provekit/templates/flows/gaming-support-moderation-gate.yaml +73 -0
  238. provekit/templates/flows/gaming-support-redact-summarize.yaml +59 -0
  239. provekit/templates/flows/gaming-support-score-gate.yaml +73 -0
  240. provekit/templates/flows/gaming-support-sentiment-route.yaml +73 -0
  241. provekit/templates/flows/gaming-support-severity-tiers.yaml +103 -0
  242. provekit/templates/flows/gaming-support-summarize-then-decide.yaml +88 -0
  243. provekit/templates/flows/gaming-support-tag-enrich.yaml +43 -0
  244. provekit/templates/flows/gaming-support-tone-rewrite.yaml +43 -0
  245. provekit/templates/flows/gaming-support-translate-reply.yaml +58 -0
  246. provekit/templates/flows/gaming-support-triage-route.yaml +73 -0
  247. provekit/templates/flows/healthcare-intake-action-items.yaml +43 -0
  248. provekit/templates/flows/healthcare-intake-answer.yaml +43 -0
  249. provekit/templates/flows/healthcare-intake-classify-intent.yaml +43 -0
  250. provekit/templates/flows/healthcare-intake-draft-critique-revise.yaml +75 -0
  251. provekit/templates/flows/healthcare-intake-extract-to-json.yaml +43 -0
  252. provekit/templates/flows/healthcare-intake-faq-match-answer.yaml +60 -0
  253. provekit/templates/flows/healthcare-intake-keyword-extract.yaml +43 -0
  254. provekit/templates/flows/healthcare-intake-language-route.yaml +103 -0
  255. provekit/templates/flows/healthcare-intake-moderation-gate.yaml +73 -0
  256. provekit/templates/flows/healthcare-intake-redact-summarize.yaml +59 -0
  257. provekit/templates/flows/healthcare-intake-score-gate.yaml +73 -0
  258. provekit/templates/flows/healthcare-intake-sentiment-route.yaml +73 -0
  259. provekit/templates/flows/healthcare-intake-severity-tiers.yaml +103 -0
  260. provekit/templates/flows/healthcare-intake-summarize-then-decide.yaml +88 -0
  261. provekit/templates/flows/healthcare-intake-tag-enrich.yaml +43 -0
  262. provekit/templates/flows/healthcare-intake-tone-rewrite.yaml +43 -0
  263. provekit/templates/flows/healthcare-intake-translate-reply.yaml +58 -0
  264. provekit/templates/flows/healthcare-intake-triage-route.yaml +73 -0
  265. provekit/templates/flows/hr-action-items.yaml +43 -0
  266. provekit/templates/flows/hr-answer.yaml +43 -0
  267. provekit/templates/flows/hr-classify-intent.yaml +43 -0
  268. provekit/templates/flows/hr-draft-critique-revise.yaml +75 -0
  269. provekit/templates/flows/hr-extract-to-json.yaml +43 -0
  270. provekit/templates/flows/hr-faq-match-answer.yaml +60 -0
  271. provekit/templates/flows/hr-keyword-extract.yaml +43 -0
  272. provekit/templates/flows/hr-language-route.yaml +103 -0
  273. provekit/templates/flows/hr-moderation-gate.yaml +73 -0
  274. provekit/templates/flows/hr-redact-summarize.yaml +59 -0
  275. provekit/templates/flows/hr-score-gate.yaml +73 -0
  276. provekit/templates/flows/hr-sentiment-route.yaml +73 -0
  277. provekit/templates/flows/hr-severity-tiers.yaml +103 -0
  278. provekit/templates/flows/hr-summarize-then-decide.yaml +88 -0
  279. provekit/templates/flows/hr-tag-enrich.yaml +43 -0
  280. provekit/templates/flows/hr-tone-rewrite.yaml +43 -0
  281. provekit/templates/flows/hr-translate-reply.yaml +58 -0
  282. provekit/templates/flows/hr-triage-route.yaml +73 -0
  283. provekit/templates/flows/insurance-action-items.yaml +43 -0
  284. provekit/templates/flows/insurance-answer.yaml +43 -0
  285. provekit/templates/flows/insurance-classify-intent.yaml +43 -0
  286. provekit/templates/flows/insurance-draft-critique-revise.yaml +75 -0
  287. provekit/templates/flows/insurance-extract-to-json.yaml +43 -0
  288. provekit/templates/flows/insurance-faq-match-answer.yaml +60 -0
  289. provekit/templates/flows/insurance-keyword-extract.yaml +43 -0
  290. provekit/templates/flows/insurance-language-route.yaml +103 -0
  291. provekit/templates/flows/insurance-moderation-gate.yaml +73 -0
  292. provekit/templates/flows/insurance-redact-summarize.yaml +59 -0
  293. provekit/templates/flows/insurance-score-gate.yaml +73 -0
  294. provekit/templates/flows/insurance-sentiment-route.yaml +73 -0
  295. provekit/templates/flows/insurance-severity-tiers.yaml +103 -0
  296. provekit/templates/flows/insurance-summarize-then-decide.yaml +88 -0
  297. provekit/templates/flows/insurance-tag-enrich.yaml +43 -0
  298. provekit/templates/flows/insurance-tone-rewrite.yaml +43 -0
  299. provekit/templates/flows/insurance-translate-reply.yaml +58 -0
  300. provekit/templates/flows/insurance-triage-route.yaml +73 -0
  301. provekit/templates/flows/it-helpdesk-action-items.yaml +43 -0
  302. provekit/templates/flows/it-helpdesk-answer.yaml +43 -0
  303. provekit/templates/flows/it-helpdesk-classify-intent.yaml +43 -0
  304. provekit/templates/flows/it-helpdesk-draft-critique-revise.yaml +75 -0
  305. provekit/templates/flows/it-helpdesk-extract-to-json.yaml +43 -0
  306. provekit/templates/flows/it-helpdesk-faq-match-answer.yaml +60 -0
  307. provekit/templates/flows/it-helpdesk-keyword-extract.yaml +43 -0
  308. provekit/templates/flows/it-helpdesk-language-route.yaml +103 -0
  309. provekit/templates/flows/it-helpdesk-moderation-gate.yaml +73 -0
  310. provekit/templates/flows/it-helpdesk-redact-summarize.yaml +59 -0
  311. provekit/templates/flows/it-helpdesk-score-gate.yaml +73 -0
  312. provekit/templates/flows/it-helpdesk-sentiment-route.yaml +73 -0
  313. provekit/templates/flows/it-helpdesk-severity-tiers.yaml +103 -0
  314. provekit/templates/flows/it-helpdesk-summarize-then-decide.yaml +88 -0
  315. provekit/templates/flows/it-helpdesk-tag-enrich.yaml +43 -0
  316. provekit/templates/flows/it-helpdesk-tone-rewrite.yaml +43 -0
  317. provekit/templates/flows/it-helpdesk-translate-reply.yaml +58 -0
  318. provekit/templates/flows/it-helpdesk-triage-route.yaml +73 -0
  319. provekit/templates/flows/legal-intake-action-items.yaml +43 -0
  320. provekit/templates/flows/legal-intake-answer.yaml +43 -0
  321. provekit/templates/flows/legal-intake-classify-intent.yaml +43 -0
  322. provekit/templates/flows/legal-intake-draft-critique-revise.yaml +75 -0
  323. provekit/templates/flows/legal-intake-extract-to-json.yaml +43 -0
  324. provekit/templates/flows/legal-intake-faq-match-answer.yaml +60 -0
  325. provekit/templates/flows/legal-intake-keyword-extract.yaml +43 -0
  326. provekit/templates/flows/legal-intake-language-route.yaml +103 -0
  327. provekit/templates/flows/legal-intake-moderation-gate.yaml +73 -0
  328. provekit/templates/flows/legal-intake-redact-summarize.yaml +59 -0
  329. provekit/templates/flows/legal-intake-score-gate.yaml +73 -0
  330. provekit/templates/flows/legal-intake-sentiment-route.yaml +73 -0
  331. provekit/templates/flows/legal-intake-severity-tiers.yaml +103 -0
  332. provekit/templates/flows/legal-intake-summarize-then-decide.yaml +88 -0
  333. provekit/templates/flows/legal-intake-tag-enrich.yaml +43 -0
  334. provekit/templates/flows/legal-intake-tone-rewrite.yaml +43 -0
  335. provekit/templates/flows/legal-intake-translate-reply.yaml +58 -0
  336. provekit/templates/flows/legal-intake-triage-route.yaml +73 -0
  337. provekit/templates/flows/logistics-action-items.yaml +43 -0
  338. provekit/templates/flows/logistics-answer.yaml +43 -0
  339. provekit/templates/flows/logistics-classify-intent.yaml +43 -0
  340. provekit/templates/flows/logistics-draft-critique-revise.yaml +75 -0
  341. provekit/templates/flows/logistics-extract-to-json.yaml +43 -0
  342. provekit/templates/flows/logistics-faq-match-answer.yaml +60 -0
  343. provekit/templates/flows/logistics-keyword-extract.yaml +43 -0
  344. provekit/templates/flows/logistics-language-route.yaml +103 -0
  345. provekit/templates/flows/logistics-moderation-gate.yaml +73 -0
  346. provekit/templates/flows/logistics-redact-summarize.yaml +59 -0
  347. provekit/templates/flows/logistics-score-gate.yaml +73 -0
  348. provekit/templates/flows/logistics-sentiment-route.yaml +73 -0
  349. provekit/templates/flows/logistics-severity-tiers.yaml +103 -0
  350. provekit/templates/flows/logistics-summarize-then-decide.yaml +88 -0
  351. provekit/templates/flows/logistics-tag-enrich.yaml +43 -0
  352. provekit/templates/flows/logistics-tone-rewrite.yaml +43 -0
  353. provekit/templates/flows/logistics-translate-reply.yaml +58 -0
  354. provekit/templates/flows/logistics-triage-route.yaml +73 -0
  355. provekit/templates/flows/marketing-action-items.yaml +43 -0
  356. provekit/templates/flows/marketing-answer.yaml +43 -0
  357. provekit/templates/flows/marketing-classify-intent.yaml +43 -0
  358. provekit/templates/flows/marketing-draft-critique-revise.yaml +75 -0
  359. provekit/templates/flows/marketing-extract-to-json.yaml +43 -0
  360. provekit/templates/flows/marketing-faq-match-answer.yaml +60 -0
  361. provekit/templates/flows/marketing-keyword-extract.yaml +43 -0
  362. provekit/templates/flows/marketing-language-route.yaml +103 -0
  363. provekit/templates/flows/marketing-moderation-gate.yaml +73 -0
  364. provekit/templates/flows/marketing-redact-summarize.yaml +59 -0
  365. provekit/templates/flows/marketing-score-gate.yaml +73 -0
  366. provekit/templates/flows/marketing-sentiment-route.yaml +73 -0
  367. provekit/templates/flows/marketing-severity-tiers.yaml +103 -0
  368. provekit/templates/flows/marketing-summarize-then-decide.yaml +88 -0
  369. provekit/templates/flows/marketing-tag-enrich.yaml +43 -0
  370. provekit/templates/flows/marketing-tone-rewrite.yaml +43 -0
  371. provekit/templates/flows/marketing-translate-reply.yaml +58 -0
  372. provekit/templates/flows/marketing-triage-route.yaml +73 -0
  373. provekit/templates/flows/nonprofit-action-items.yaml +43 -0
  374. provekit/templates/flows/nonprofit-answer.yaml +43 -0
  375. provekit/templates/flows/nonprofit-classify-intent.yaml +43 -0
  376. provekit/templates/flows/nonprofit-draft-critique-revise.yaml +75 -0
  377. provekit/templates/flows/nonprofit-extract-to-json.yaml +43 -0
  378. provekit/templates/flows/nonprofit-faq-match-answer.yaml +60 -0
  379. provekit/templates/flows/nonprofit-keyword-extract.yaml +43 -0
  380. provekit/templates/flows/nonprofit-language-route.yaml +103 -0
  381. provekit/templates/flows/nonprofit-moderation-gate.yaml +73 -0
  382. provekit/templates/flows/nonprofit-redact-summarize.yaml +59 -0
  383. provekit/templates/flows/nonprofit-score-gate.yaml +73 -0
  384. provekit/templates/flows/nonprofit-sentiment-route.yaml +73 -0
  385. provekit/templates/flows/nonprofit-severity-tiers.yaml +103 -0
  386. provekit/templates/flows/nonprofit-summarize-then-decide.yaml +88 -0
  387. provekit/templates/flows/nonprofit-tag-enrich.yaml +43 -0
  388. provekit/templates/flows/nonprofit-tone-rewrite.yaml +43 -0
  389. provekit/templates/flows/nonprofit-translate-reply.yaml +58 -0
  390. provekit/templates/flows/nonprofit-triage-route.yaml +73 -0
  391. provekit/templates/flows/real-estate-action-items.yaml +43 -0
  392. provekit/templates/flows/real-estate-answer.yaml +43 -0
  393. provekit/templates/flows/real-estate-classify-intent.yaml +43 -0
  394. provekit/templates/flows/real-estate-draft-critique-revise.yaml +75 -0
  395. provekit/templates/flows/real-estate-extract-to-json.yaml +43 -0
  396. provekit/templates/flows/real-estate-faq-match-answer.yaml +60 -0
  397. provekit/templates/flows/real-estate-keyword-extract.yaml +43 -0
  398. provekit/templates/flows/real-estate-language-route.yaml +103 -0
  399. provekit/templates/flows/real-estate-moderation-gate.yaml +73 -0
  400. provekit/templates/flows/real-estate-redact-summarize.yaml +59 -0
  401. provekit/templates/flows/real-estate-score-gate.yaml +73 -0
  402. provekit/templates/flows/real-estate-sentiment-route.yaml +73 -0
  403. provekit/templates/flows/real-estate-severity-tiers.yaml +103 -0
  404. provekit/templates/flows/real-estate-summarize-then-decide.yaml +88 -0
  405. provekit/templates/flows/real-estate-tag-enrich.yaml +43 -0
  406. provekit/templates/flows/real-estate-tone-rewrite.yaml +43 -0
  407. provekit/templates/flows/real-estate-translate-reply.yaml +58 -0
  408. provekit/templates/flows/real-estate-triage-route.yaml +73 -0
  409. provekit/templates/flows/recruiting-action-items.yaml +43 -0
  410. provekit/templates/flows/recruiting-answer.yaml +43 -0
  411. provekit/templates/flows/recruiting-classify-intent.yaml +43 -0
  412. provekit/templates/flows/recruiting-draft-critique-revise.yaml +75 -0
  413. provekit/templates/flows/recruiting-extract-to-json.yaml +43 -0
  414. provekit/templates/flows/recruiting-faq-match-answer.yaml +60 -0
  415. provekit/templates/flows/recruiting-keyword-extract.yaml +43 -0
  416. provekit/templates/flows/recruiting-language-route.yaml +103 -0
  417. provekit/templates/flows/recruiting-moderation-gate.yaml +73 -0
  418. provekit/templates/flows/recruiting-redact-summarize.yaml +59 -0
  419. provekit/templates/flows/recruiting-score-gate.yaml +73 -0
  420. provekit/templates/flows/recruiting-sentiment-route.yaml +73 -0
  421. provekit/templates/flows/recruiting-severity-tiers.yaml +103 -0
  422. provekit/templates/flows/recruiting-summarize-then-decide.yaml +88 -0
  423. provekit/templates/flows/recruiting-tag-enrich.yaml +43 -0
  424. provekit/templates/flows/recruiting-tone-rewrite.yaml +43 -0
  425. provekit/templates/flows/recruiting-translate-reply.yaml +58 -0
  426. provekit/templates/flows/recruiting-triage-route.yaml +73 -0
  427. provekit/templates/flows/research-action-items.yaml +43 -0
  428. provekit/templates/flows/research-answer.yaml +43 -0
  429. provekit/templates/flows/research-classify-intent.yaml +43 -0
  430. provekit/templates/flows/research-draft-critique-revise.yaml +75 -0
  431. provekit/templates/flows/research-extract-to-json.yaml +43 -0
  432. provekit/templates/flows/research-faq-match-answer.yaml +60 -0
  433. provekit/templates/flows/research-keyword-extract.yaml +43 -0
  434. provekit/templates/flows/research-language-route.yaml +103 -0
  435. provekit/templates/flows/research-moderation-gate.yaml +73 -0
  436. provekit/templates/flows/research-redact-summarize.yaml +59 -0
  437. provekit/templates/flows/research-score-gate.yaml +73 -0
  438. provekit/templates/flows/research-sentiment-route.yaml +73 -0
  439. provekit/templates/flows/research-severity-tiers.yaml +103 -0
  440. provekit/templates/flows/research-summarize-then-decide.yaml +88 -0
  441. provekit/templates/flows/research-tag-enrich.yaml +43 -0
  442. provekit/templates/flows/research-tone-rewrite.yaml +43 -0
  443. provekit/templates/flows/research-translate-reply.yaml +58 -0
  444. provekit/templates/flows/research-triage-route.yaml +73 -0
  445. provekit/templates/flows/sales-lead-action-items.yaml +43 -0
  446. provekit/templates/flows/sales-lead-answer.yaml +43 -0
  447. provekit/templates/flows/sales-lead-classify-intent.yaml +43 -0
  448. provekit/templates/flows/sales-lead-draft-critique-revise.yaml +75 -0
  449. provekit/templates/flows/sales-lead-extract-to-json.yaml +43 -0
  450. provekit/templates/flows/sales-lead-faq-match-answer.yaml +60 -0
  451. provekit/templates/flows/sales-lead-keyword-extract.yaml +43 -0
  452. provekit/templates/flows/sales-lead-language-route.yaml +103 -0
  453. provekit/templates/flows/sales-lead-moderation-gate.yaml +73 -0
  454. provekit/templates/flows/sales-lead-redact-summarize.yaml +59 -0
  455. provekit/templates/flows/sales-lead-score-gate.yaml +73 -0
  456. provekit/templates/flows/sales-lead-sentiment-route.yaml +73 -0
  457. provekit/templates/flows/sales-lead-severity-tiers.yaml +103 -0
  458. provekit/templates/flows/sales-lead-summarize-then-decide.yaml +88 -0
  459. provekit/templates/flows/sales-lead-tag-enrich.yaml +43 -0
  460. provekit/templates/flows/sales-lead-tone-rewrite.yaml +43 -0
  461. provekit/templates/flows/sales-lead-translate-reply.yaml +58 -0
  462. provekit/templates/flows/sales-lead-triage-route.yaml +73 -0
  463. provekit/templates/flows/travel-action-items.yaml +43 -0
  464. provekit/templates/flows/travel-answer.yaml +43 -0
  465. provekit/templates/flows/travel-classify-intent.yaml +43 -0
  466. provekit/templates/flows/travel-draft-critique-revise.yaml +75 -0
  467. provekit/templates/flows/travel-extract-to-json.yaml +43 -0
  468. provekit/templates/flows/travel-faq-match-answer.yaml +60 -0
  469. provekit/templates/flows/travel-keyword-extract.yaml +43 -0
  470. provekit/templates/flows/travel-language-route.yaml +103 -0
  471. provekit/templates/flows/travel-moderation-gate.yaml +73 -0
  472. provekit/templates/flows/travel-redact-summarize.yaml +59 -0
  473. provekit/templates/flows/travel-score-gate.yaml +73 -0
  474. provekit/templates/flows/travel-sentiment-route.yaml +73 -0
  475. provekit/templates/flows/travel-severity-tiers.yaml +103 -0
  476. provekit/templates/flows/travel-summarize-then-decide.yaml +88 -0
  477. provekit/templates/flows/travel-tag-enrich.yaml +43 -0
  478. provekit/templates/flows/travel-tone-rewrite.yaml +43 -0
  479. provekit/templates/flows/travel-translate-reply.yaml +58 -0
  480. provekit/templates/flows/travel-triage-route.yaml +73 -0
  481. provekit-0.1.0.dist-info/METADATA +86 -0
  482. provekit-0.1.0.dist-info/RECORD +485 -0
  483. provekit-0.1.0.dist-info/WHEEL +5 -0
  484. provekit-0.1.0.dist-info/entry_points.txt +2 -0
  485. provekit-0.1.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,73 @@
1
+ version: 1
2
+ kind: flow
3
+ name: Customer Support · sentiment route
4
+ description: Detect sentiment of a message, escalate the negative ones.
5
+ nodes:
6
+ - id: in
7
+ type: input
8
+ position:
9
+ x: 40
10
+ y: 200
11
+ data:
12
+ title: Input
13
+ config:
14
+ sample:
15
+ message: 'URGENT: my order never arrived and I want a refund'
16
+ - id: sent
17
+ type: prompt
18
+ position:
19
+ x: 300
20
+ y: 200
21
+ data:
22
+ title: Sentiment
23
+ config:
24
+ connection: Demo Assistant (mock)
25
+ model: demo-mock
26
+ system: Classify sentiment as positive, negative, or neutral. Reply with only that word.
27
+ user: '{{input.message}}'
28
+ - id: cond
29
+ type: condition
30
+ position:
31
+ x: 560
32
+ y: 200
33
+ data:
34
+ title: Negative?
35
+ config:
36
+ left: '{{sent.text}}'
37
+ op: contains
38
+ right: negative
39
+ - id: esc
40
+ type: output
41
+ position:
42
+ x: 820
43
+ y: 110
44
+ data:
45
+ title: Escalate
46
+ config:
47
+ value: unhappy customer — escalate
48
+ - id: ok
49
+ type: output
50
+ position:
51
+ x: 820
52
+ y: 300
53
+ data:
54
+ title: Thank
55
+ config:
56
+ value: thanks for the feedback
57
+ edges:
58
+ - id: e-in-sent
59
+ source: in
60
+ target: sent
61
+ - id: e-sent-cond
62
+ source: sent
63
+ target: cond
64
+ - id: e-cond-esc
65
+ source: cond
66
+ target: esc
67
+ condition:
68
+ branch: 'true'
69
+ - id: e-cond-ok
70
+ source: cond
71
+ target: ok
72
+ condition:
73
+ branch: 'false'
@@ -0,0 +1,103 @@
1
+ version: 1
2
+ kind: flow
3
+ name: Customer Support · severity tiers
4
+ description: Classify severity of a message, then route across three tiers with chained checks.
5
+ nodes:
6
+ - id: in
7
+ type: input
8
+ position:
9
+ x: 40
10
+ y: 240
11
+ data:
12
+ title: Input
13
+ config:
14
+ sample:
15
+ message: 'URGENT: my order never arrived and I want a refund'
16
+ - id: sev
17
+ type: prompt
18
+ position:
19
+ x: 280
20
+ y: 240
21
+ data:
22
+ title: Severity
23
+ config:
24
+ connection: Demo Assistant (mock)
25
+ model: demo-mock
26
+ system: Classify severity as high, medium, or low. Reply with only that word.
27
+ user: '{{input.message}}'
28
+ - id: c1
29
+ type: condition
30
+ position:
31
+ x: 540
32
+ y: 240
33
+ data:
34
+ title: High?
35
+ config:
36
+ left: '{{sev.text}}'
37
+ op: contains
38
+ right: high
39
+ - id: p1
40
+ type: output
41
+ position:
42
+ x: 820
43
+ y: 120
44
+ data:
45
+ title: Tier 1 (page)
46
+ config:
47
+ value: 'P1: page on-call'
48
+ - id: c2
49
+ type: condition
50
+ position:
51
+ x: 820
52
+ y: 300
53
+ data:
54
+ title: Medium?
55
+ config:
56
+ left: '{{sev.text}}'
57
+ op: contains
58
+ right: medium
59
+ - id: p2
60
+ type: output
61
+ position:
62
+ x: 1080
63
+ y: 240
64
+ data:
65
+ title: Tier 2 (queue)
66
+ config:
67
+ value: 'P2: engineer queue'
68
+ - id: p3
69
+ type: output
70
+ position:
71
+ x: 1080
72
+ y: 380
73
+ data:
74
+ title: Tier 3 (backlog)
75
+ config:
76
+ value: 'P3: backlog'
77
+ edges:
78
+ - id: e-in-sev
79
+ source: in
80
+ target: sev
81
+ - id: e-sev-c1
82
+ source: sev
83
+ target: c1
84
+ - id: e-c1-p1
85
+ source: c1
86
+ target: p1
87
+ condition:
88
+ branch: 'true'
89
+ - id: e-c1-c2
90
+ source: c1
91
+ target: c2
92
+ condition:
93
+ branch: 'false'
94
+ - id: e-c2-p2
95
+ source: c2
96
+ target: p2
97
+ condition:
98
+ branch: 'true'
99
+ - id: e-c2-p3
100
+ source: c2
101
+ target: p3
102
+ condition:
103
+ branch: 'false'
@@ -0,0 +1,88 @@
1
+ version: 1
2
+ kind: flow
3
+ name: Customer Support · summarize then decide
4
+ description: Summarize a message, then branch on whether it needs follow-up.
5
+ nodes:
6
+ - id: in
7
+ type: input
8
+ position:
9
+ x: 40
10
+ y: 200
11
+ data:
12
+ title: Input
13
+ config:
14
+ sample:
15
+ message: 'URGENT: my order never arrived and I want a refund'
16
+ - id: sum
17
+ type: prompt
18
+ position:
19
+ x: 300
20
+ y: 200
21
+ data:
22
+ title: Summarize
23
+ config:
24
+ connection: Demo Assistant (mock)
25
+ model: demo-mock
26
+ system: Summarize in one sentence.
27
+ user: '{{input.message}}'
28
+ - id: dec
29
+ type: prompt
30
+ position:
31
+ x: 560
32
+ y: 200
33
+ data:
34
+ title: Needs follow-up?
35
+ config:
36
+ connection: Demo Assistant (mock)
37
+ model: demo-mock
38
+ system: 'Answer yes or no: does this need a human follow-up? Reply with only yes or no.'
39
+ user: '{{sum.text}}'
40
+ - id: cond
41
+ type: condition
42
+ position:
43
+ x: 820
44
+ y: 200
45
+ data:
46
+ title: Follow up?
47
+ config:
48
+ left: '{{dec.text}}'
49
+ op: contains
50
+ right: 'yes'
51
+ - id: y
52
+ type: output
53
+ position:
54
+ x: 1080
55
+ y: 110
56
+ data:
57
+ title: Queue follow-up
58
+ config:
59
+ value: 'follow-up: {{sum.text}}'
60
+ - id: n
61
+ type: output
62
+ position:
63
+ x: 1080
64
+ y: 300
65
+ data:
66
+ title: Close
67
+ config:
68
+ value: 'resolved: {{sum.text}}'
69
+ edges:
70
+ - id: e-in-sum
71
+ source: in
72
+ target: sum
73
+ - id: e-sum-dec
74
+ source: sum
75
+ target: dec
76
+ - id: e-dec-cond
77
+ source: dec
78
+ target: cond
79
+ - id: e-cond-y
80
+ source: cond
81
+ target: y
82
+ condition:
83
+ branch: 'true'
84
+ - id: e-cond-n
85
+ source: cond
86
+ target: n
87
+ condition:
88
+ branch: 'false'
@@ -0,0 +1,43 @@
1
+ version: 1
2
+ kind: flow
3
+ name: Customer Support · tag & enrich
4
+ description: Produce a JSON list of topic tags for a message.
5
+ nodes:
6
+ - id: in
7
+ type: input
8
+ position:
9
+ x: 40
10
+ y: 160
11
+ data:
12
+ title: Input
13
+ config:
14
+ sample:
15
+ message: 'URGENT: my order never arrived and I want a refund'
16
+ - id: tag
17
+ type: prompt
18
+ position:
19
+ x: 340
20
+ y: 160
21
+ data:
22
+ title: Tag
23
+ config:
24
+ connection: Demo Assistant (mock)
25
+ model: demo-mock
26
+ system: Return a JSON array of 3 short topic tags for the input. Only the JSON array.
27
+ user: '{{input.message}}'
28
+ - id: out
29
+ type: output
30
+ position:
31
+ x: 640
32
+ y: 160
33
+ data:
34
+ title: Tags
35
+ config:
36
+ value: '{{tag.text}}'
37
+ edges:
38
+ - id: e-in-tag
39
+ source: in
40
+ target: tag
41
+ - id: e-tag-out
42
+ source: tag
43
+ target: out
@@ -0,0 +1,43 @@
1
+ version: 1
2
+ kind: flow
3
+ name: Customer Support · tone rewrite
4
+ description: Rewrite a message in a warm, professional tone.
5
+ nodes:
6
+ - id: in
7
+ type: input
8
+ position:
9
+ x: 40
10
+ y: 160
11
+ data:
12
+ title: Input
13
+ config:
14
+ sample:
15
+ message: 'URGENT: my order never arrived and I want a refund'
16
+ - id: rw
17
+ type: prompt
18
+ position:
19
+ x: 340
20
+ y: 160
21
+ data:
22
+ title: Rewrite
23
+ config:
24
+ connection: Demo Assistant (mock)
25
+ model: demo-mock
26
+ system: Rewrite the input in a warm, professional tone. Output only the rewrite.
27
+ user: '{{input.message}}'
28
+ - id: out
29
+ type: output
30
+ position:
31
+ x: 640
32
+ y: 160
33
+ data:
34
+ title: Rewritten
35
+ config:
36
+ value: '{{rw.text}}'
37
+ edges:
38
+ - id: e-in-rw
39
+ source: in
40
+ target: rw
41
+ - id: e-rw-out
42
+ source: rw
43
+ target: out
@@ -0,0 +1,58 @@
1
+ version: 1
2
+ kind: flow
3
+ name: Customer Support · translate & reply
4
+ description: Translate a message to English, then draft a reply.
5
+ nodes:
6
+ - id: in
7
+ type: input
8
+ position:
9
+ x: 40
10
+ y: 160
11
+ data:
12
+ title: Input
13
+ config:
14
+ sample:
15
+ message: 'URGENT: my order never arrived and I want a refund'
16
+ - id: tr
17
+ type: prompt
18
+ position:
19
+ x: 300
20
+ y: 160
21
+ data:
22
+ title: To English
23
+ config:
24
+ connection: Demo Assistant (mock)
25
+ model: demo-mock
26
+ system: Translate the input to English. Output only the translation.
27
+ user: '{{input.message}}'
28
+ - id: rep
29
+ type: prompt
30
+ position:
31
+ x: 560
32
+ y: 160
33
+ data:
34
+ title: Reply
35
+ config:
36
+ connection: Demo Assistant (mock)
37
+ model: demo-mock
38
+ system: You are a customer support assistant.
39
+ user: '{{tr.text}}'
40
+ - id: out
41
+ type: output
42
+ position:
43
+ x: 820
44
+ y: 160
45
+ data:
46
+ title: Reply
47
+ config:
48
+ value: '{{rep.text}}'
49
+ edges:
50
+ - id: e-in-tr
51
+ source: in
52
+ target: tr
53
+ - id: e-tr-rep
54
+ source: tr
55
+ target: rep
56
+ - id: e-rep-out
57
+ source: rep
58
+ target: out
@@ -0,0 +1,73 @@
1
+ version: 1
2
+ kind: flow
3
+ name: Customer Support · triage & route
4
+ description: Draft a reply, then route urgent vs normal on a keyword check.
5
+ nodes:
6
+ - id: in
7
+ type: input
8
+ position:
9
+ x: 40
10
+ y: 200
11
+ data:
12
+ title: Input
13
+ config:
14
+ sample:
15
+ message: 'URGENT: my order never arrived and I want a refund'
16
+ - id: reply
17
+ type: prompt
18
+ position:
19
+ x: 320
20
+ y: 200
21
+ data:
22
+ title: Draft
23
+ config:
24
+ connection: Demo Assistant (mock)
25
+ model: demo-mock
26
+ system: You are a customer support assistant. Note anything urgent.
27
+ user: '{{input.message}}'
28
+ - id: cond
29
+ type: condition
30
+ position:
31
+ x: 620
32
+ y: 200
33
+ data:
34
+ title: Urgent?
35
+ config:
36
+ left: '{{reply.text}}'
37
+ op: contains
38
+ right: urgent
39
+ - id: human
40
+ type: output
41
+ position:
42
+ x: 900
43
+ y: 110
44
+ data:
45
+ title: Human review
46
+ config:
47
+ value: 'escalate: {{reply.text}}'
48
+ - id: auto
49
+ type: output
50
+ position:
51
+ x: 900
52
+ y: 300
53
+ data:
54
+ title: Auto-send
55
+ config:
56
+ value: '{{reply.text}}'
57
+ edges:
58
+ - id: e-in-reply
59
+ source: in
60
+ target: reply
61
+ - id: e-reply-cond
62
+ source: reply
63
+ target: cond
64
+ - id: e-cond-human
65
+ source: cond
66
+ target: human
67
+ condition:
68
+ branch: 'true'
69
+ - id: e-cond-auto
70
+ source: cond
71
+ target: auto
72
+ condition:
73
+ branch: 'false'
@@ -0,0 +1,43 @@
1
+ version: 1
2
+ kind: flow
3
+ name: Developer Tooling · action items
4
+ description: Turn a issue into a JSON list of action items.
5
+ nodes:
6
+ - id: in
7
+ type: input
8
+ position:
9
+ x: 40
10
+ y: 160
11
+ data:
12
+ title: Input
13
+ config:
14
+ sample:
15
+ issue: Build fails intermittently on CI, passes locally
16
+ - id: ai
17
+ type: prompt
18
+ position:
19
+ x: 340
20
+ y: 160
21
+ data:
22
+ title: Extract actions
23
+ config:
24
+ connection: Demo Assistant (mock)
25
+ model: demo-mock
26
+ system: List concrete action items as a JSON array of short strings. Only the JSON array.
27
+ user: '{{input.issue}}'
28
+ - id: out
29
+ type: output
30
+ position:
31
+ x: 640
32
+ y: 160
33
+ data:
34
+ title: Action items
35
+ config:
36
+ value: '{{ai.text}}'
37
+ edges:
38
+ - id: e-in-ai
39
+ source: in
40
+ target: ai
41
+ - id: e-ai-out
42
+ source: ai
43
+ target: out
@@ -0,0 +1,43 @@
1
+ version: 1
2
+ kind: flow
3
+ name: Developer Tooling · answer
4
+ description: Read a issue, draft a helpful reply.
5
+ nodes:
6
+ - id: in
7
+ type: input
8
+ position:
9
+ x: 40
10
+ y: 160
11
+ data:
12
+ title: Input
13
+ config:
14
+ sample:
15
+ issue: Build fails intermittently on CI, passes locally
16
+ - id: ans
17
+ type: prompt
18
+ position:
19
+ x: 340
20
+ y: 160
21
+ data:
22
+ title: Draft reply
23
+ config:
24
+ connection: Demo Assistant (mock)
25
+ model: demo-mock
26
+ system: You are a concise developer tooling assistant.
27
+ user: '{{input.issue}}'
28
+ - id: out
29
+ type: output
30
+ position:
31
+ x: 640
32
+ y: 160
33
+ data:
34
+ title: Reply
35
+ config:
36
+ value: '{{ans.text}}'
37
+ edges:
38
+ - id: e-in-ans
39
+ source: in
40
+ target: ans
41
+ - id: e-ans-out
42
+ source: ans
43
+ target: out
@@ -0,0 +1,43 @@
1
+ version: 1
2
+ kind: flow
3
+ name: Developer Tooling · classify intent
4
+ description: Classify a issue into one label.
5
+ nodes:
6
+ - id: in
7
+ type: input
8
+ position:
9
+ x: 40
10
+ y: 160
11
+ data:
12
+ title: Input
13
+ config:
14
+ sample:
15
+ issue: Build fails intermittently on CI, passes locally
16
+ - id: cls
17
+ type: prompt
18
+ position:
19
+ x: 340
20
+ y: 160
21
+ data:
22
+ title: Classify
23
+ config:
24
+ connection: Demo Assistant (mock)
25
+ model: demo-mock
26
+ system: 'Classify into exactly one of: urgent, question, complaint, other. Reply with only the label.'
27
+ user: '{{input.issue}}'
28
+ - id: out
29
+ type: output
30
+ position:
31
+ x: 640
32
+ y: 160
33
+ data:
34
+ title: Label
35
+ config:
36
+ value: '{{cls.text}}'
37
+ edges:
38
+ - id: e-in-cls
39
+ source: in
40
+ target: cls
41
+ - id: e-cls-out
42
+ source: cls
43
+ target: out
@@ -0,0 +1,75 @@
1
+ version: 1
2
+ kind: flow
3
+ name: Developer Tooling · draft, critique, revise
4
+ description: Draft a reply, self-critique it, then produce a revised final.
5
+ nodes:
6
+ - id: in
7
+ type: input
8
+ position:
9
+ x: 40
10
+ y: 160
11
+ data:
12
+ title: Input
13
+ config:
14
+ sample:
15
+ issue: Build fails intermittently on CI, passes locally
16
+ - id: draft
17
+ type: prompt
18
+ position:
19
+ x: 300
20
+ y: 160
21
+ data:
22
+ title: Draft
23
+ config:
24
+ connection: Demo Assistant (mock)
25
+ model: demo-mock
26
+ system: You are a developer tooling assistant.
27
+ user: '{{input.issue}}'
28
+ - id: crit
29
+ type: prompt
30
+ position:
31
+ x: 560
32
+ y: 160
33
+ data:
34
+ title: Critique
35
+ config:
36
+ connection: Demo Assistant (mock)
37
+ model: demo-mock
38
+ system: List one concrete way to improve this reply. Be brief.
39
+ user: '{{draft.text}}'
40
+ - id: rev
41
+ type: prompt
42
+ position:
43
+ x: 820
44
+ y: 160
45
+ data:
46
+ title: Revise
47
+ config:
48
+ connection: Demo Assistant (mock)
49
+ model: demo-mock
50
+ system: Rewrite the reply applying the critique. Output only the improved reply.
51
+ user: 'Reply: {{draft.text}}
52
+
53
+ Critique: {{crit.text}}'
54
+ - id: out
55
+ type: output
56
+ position:
57
+ x: 1080
58
+ y: 160
59
+ data:
60
+ title: Final
61
+ config:
62
+ value: '{{rev.text}}'
63
+ edges:
64
+ - id: e-in-draft
65
+ source: in
66
+ target: draft
67
+ - id: e-draft-crit
68
+ source: draft
69
+ target: crit
70
+ - id: e-crit-rev
71
+ source: crit
72
+ target: rev
73
+ - id: e-rev-out
74
+ source: rev
75
+ target: out