agent-recipes 0.0.5__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 (270) hide show
  1. agent_recipes/__init__.py +27 -0
  2. agent_recipes/recipe_runtime/__init__.py +28 -0
  3. agent_recipes/recipe_runtime/core.py +385 -0
  4. agent_recipes/templates/ai-ab-hook-tester/recipe.yaml +45 -0
  5. agent_recipes/templates/ai-ab-hook-tester/tools.py +169 -0
  6. agent_recipes/templates/ai-angle-generator/recipe.yaml +49 -0
  7. agent_recipes/templates/ai-angle-generator/tools.py +182 -0
  8. agent_recipes/templates/ai-api-doc-generator/README.md +59 -0
  9. agent_recipes/templates/ai-api-doc-generator/TEMPLATE.yaml +29 -0
  10. agent_recipes/templates/ai-api-tester/README.md +60 -0
  11. agent_recipes/templates/ai-api-tester/TEMPLATE.yaml +29 -0
  12. agent_recipes/templates/ai-audio-enhancer/README.md +59 -0
  13. agent_recipes/templates/ai-audio-enhancer/TEMPLATE.yaml +28 -0
  14. agent_recipes/templates/ai-audio-normalizer/README.md +13 -0
  15. agent_recipes/templates/ai-audio-normalizer/TEMPLATE.yaml +44 -0
  16. agent_recipes/templates/ai-audio-splitter/README.md +14 -0
  17. agent_recipes/templates/ai-audio-splitter/TEMPLATE.yaml +47 -0
  18. agent_recipes/templates/ai-background-music-generator/README.md +59 -0
  19. agent_recipes/templates/ai-background-music-generator/TEMPLATE.yaml +28 -0
  20. agent_recipes/templates/ai-background-remover/README.md +60 -0
  21. agent_recipes/templates/ai-background-remover/TEMPLATE.yaml +27 -0
  22. agent_recipes/templates/ai-barcode-scanner/README.md +60 -0
  23. agent_recipes/templates/ai-barcode-scanner/TEMPLATE.yaml +26 -0
  24. agent_recipes/templates/ai-blog-generator/README.md +59 -0
  25. agent_recipes/templates/ai-blog-generator/TEMPLATE.yaml +28 -0
  26. agent_recipes/templates/ai-brief-generator/recipe.yaml +52 -0
  27. agent_recipes/templates/ai-brief-generator/tools.py +231 -0
  28. agent_recipes/templates/ai-broll-builder/recipe.yaml +47 -0
  29. agent_recipes/templates/ai-broll-builder/tools.py +204 -0
  30. agent_recipes/templates/ai-calendar-scheduler/README.md +60 -0
  31. agent_recipes/templates/ai-calendar-scheduler/TEMPLATE.yaml +29 -0
  32. agent_recipes/templates/ai-changelog-generator/README.md +14 -0
  33. agent_recipes/templates/ai-changelog-generator/TEMPLATE.yaml +46 -0
  34. agent_recipes/templates/ai-chart-generator/README.md +61 -0
  35. agent_recipes/templates/ai-chart-generator/TEMPLATE.yaml +32 -0
  36. agent_recipes/templates/ai-code-documenter/README.md +12 -0
  37. agent_recipes/templates/ai-code-documenter/TEMPLATE.yaml +37 -0
  38. agent_recipes/templates/ai-code-refactorer/README.md +59 -0
  39. agent_recipes/templates/ai-code-refactorer/TEMPLATE.yaml +28 -0
  40. agent_recipes/templates/ai-code-reviewer/README.md +59 -0
  41. agent_recipes/templates/ai-code-reviewer/TEMPLATE.yaml +31 -0
  42. agent_recipes/templates/ai-color-palette-extractor/README.md +60 -0
  43. agent_recipes/templates/ai-color-palette-extractor/TEMPLATE.yaml +27 -0
  44. agent_recipes/templates/ai-comment-miner/recipe.yaml +40 -0
  45. agent_recipes/templates/ai-comment-miner/tools.py +141 -0
  46. agent_recipes/templates/ai-commit-message-generator/README.md +59 -0
  47. agent_recipes/templates/ai-commit-message-generator/TEMPLATE.yaml +31 -0
  48. agent_recipes/templates/ai-content-calendar/recipe.yaml +43 -0
  49. agent_recipes/templates/ai-content-calendar/tools.py +170 -0
  50. agent_recipes/templates/ai-context-enricher/recipe.yaml +48 -0
  51. agent_recipes/templates/ai-context-enricher/tools.py +258 -0
  52. agent_recipes/templates/ai-contract-analyzer/README.md +60 -0
  53. agent_recipes/templates/ai-contract-analyzer/TEMPLATE.yaml +34 -0
  54. agent_recipes/templates/ai-csv-cleaner/README.md +13 -0
  55. agent_recipes/templates/ai-csv-cleaner/TEMPLATE.yaml +45 -0
  56. agent_recipes/templates/ai-cta-generator/recipe.yaml +54 -0
  57. agent_recipes/templates/ai-cta-generator/tools.py +174 -0
  58. agent_recipes/templates/ai-daily-news-show/recipe.yaml +103 -0
  59. agent_recipes/templates/ai-daily-news-show/tools.py +308 -0
  60. agent_recipes/templates/ai-data-anonymizer/README.md +60 -0
  61. agent_recipes/templates/ai-data-anonymizer/TEMPLATE.yaml +31 -0
  62. agent_recipes/templates/ai-data-profiler/README.md +14 -0
  63. agent_recipes/templates/ai-data-profiler/TEMPLATE.yaml +42 -0
  64. agent_recipes/templates/ai-dependency-auditor/README.md +12 -0
  65. agent_recipes/templates/ai-dependency-auditor/TEMPLATE.yaml +37 -0
  66. agent_recipes/templates/ai-doc-translator/README.md +12 -0
  67. agent_recipes/templates/ai-doc-translator/TEMPLATE.yaml +41 -0
  68. agent_recipes/templates/ai-duplicate-finder/README.md +59 -0
  69. agent_recipes/templates/ai-duplicate-finder/TEMPLATE.yaml +28 -0
  70. agent_recipes/templates/ai-ebook-converter/README.md +60 -0
  71. agent_recipes/templates/ai-ebook-converter/TEMPLATE.yaml +27 -0
  72. agent_recipes/templates/ai-email-parser/README.md +59 -0
  73. agent_recipes/templates/ai-email-parser/TEMPLATE.yaml +29 -0
  74. agent_recipes/templates/ai-etl-pipeline/README.md +60 -0
  75. agent_recipes/templates/ai-etl-pipeline/TEMPLATE.yaml +30 -0
  76. agent_recipes/templates/ai-excel-formula-generator/README.md +59 -0
  77. agent_recipes/templates/ai-excel-formula-generator/TEMPLATE.yaml +28 -0
  78. agent_recipes/templates/ai-face-blur/README.md +60 -0
  79. agent_recipes/templates/ai-face-blur/TEMPLATE.yaml +28 -0
  80. agent_recipes/templates/ai-fact-checker/recipe.yaml +52 -0
  81. agent_recipes/templates/ai-fact-checker/tools.py +279 -0
  82. agent_recipes/templates/ai-faq-generator/README.md +59 -0
  83. agent_recipes/templates/ai-faq-generator/TEMPLATE.yaml +28 -0
  84. agent_recipes/templates/ai-file-organizer/README.md +59 -0
  85. agent_recipes/templates/ai-file-organizer/TEMPLATE.yaml +29 -0
  86. agent_recipes/templates/ai-folder-packager/README.md +15 -0
  87. agent_recipes/templates/ai-folder-packager/TEMPLATE.yaml +48 -0
  88. agent_recipes/templates/ai-form-filler/README.md +60 -0
  89. agent_recipes/templates/ai-form-filler/TEMPLATE.yaml +30 -0
  90. agent_recipes/templates/ai-hashtag-optimizer/recipe.yaml +45 -0
  91. agent_recipes/templates/ai-hashtag-optimizer/tools.py +134 -0
  92. agent_recipes/templates/ai-hook-generator/recipe.yaml +50 -0
  93. agent_recipes/templates/ai-hook-generator/tools.py +177 -0
  94. agent_recipes/templates/ai-image-captioner/README.md +59 -0
  95. agent_recipes/templates/ai-image-captioner/TEMPLATE.yaml +28 -0
  96. agent_recipes/templates/ai-image-cataloger/README.md +13 -0
  97. agent_recipes/templates/ai-image-cataloger/TEMPLATE.yaml +39 -0
  98. agent_recipes/templates/ai-image-optimizer/README.md +13 -0
  99. agent_recipes/templates/ai-image-optimizer/TEMPLATE.yaml +43 -0
  100. agent_recipes/templates/ai-image-resizer/README.md +12 -0
  101. agent_recipes/templates/ai-image-resizer/TEMPLATE.yaml +39 -0
  102. agent_recipes/templates/ai-image-tagger/README.md +59 -0
  103. agent_recipes/templates/ai-image-tagger/TEMPLATE.yaml +28 -0
  104. agent_recipes/templates/ai-image-upscaler/README.md +60 -0
  105. agent_recipes/templates/ai-image-upscaler/TEMPLATE.yaml +27 -0
  106. agent_recipes/templates/ai-invoice-processor/README.md +60 -0
  107. agent_recipes/templates/ai-invoice-processor/TEMPLATE.yaml +34 -0
  108. agent_recipes/templates/ai-json-to-csv/README.md +12 -0
  109. agent_recipes/templates/ai-json-to-csv/TEMPLATE.yaml +36 -0
  110. agent_recipes/templates/ai-log-analyzer/README.md +59 -0
  111. agent_recipes/templates/ai-log-analyzer/TEMPLATE.yaml +28 -0
  112. agent_recipes/templates/ai-markdown-to-pdf/README.md +12 -0
  113. agent_recipes/templates/ai-markdown-to-pdf/TEMPLATE.yaml +40 -0
  114. agent_recipes/templates/ai-meeting-summarizer/README.md +59 -0
  115. agent_recipes/templates/ai-meeting-summarizer/TEMPLATE.yaml +32 -0
  116. agent_recipes/templates/ai-meta-tag-generator/README.md +59 -0
  117. agent_recipes/templates/ai-meta-tag-generator/TEMPLATE.yaml +28 -0
  118. agent_recipes/templates/ai-news-capture-pack/recipe.yaml +42 -0
  119. agent_recipes/templates/ai-news-capture-pack/tools.py +150 -0
  120. agent_recipes/templates/ai-news-crawler/recipe.yaml +99 -0
  121. agent_recipes/templates/ai-news-crawler/tools.py +417 -0
  122. agent_recipes/templates/ai-news-deduper/recipe.yaml +47 -0
  123. agent_recipes/templates/ai-news-deduper/tools.py +235 -0
  124. agent_recipes/templates/ai-newsletter-generator/README.md +59 -0
  125. agent_recipes/templates/ai-newsletter-generator/TEMPLATE.yaml +28 -0
  126. agent_recipes/templates/ai-note-summarizer/README.md +59 -0
  127. agent_recipes/templates/ai-note-summarizer/TEMPLATE.yaml +28 -0
  128. agent_recipes/templates/ai-pdf-summarizer/README.md +12 -0
  129. agent_recipes/templates/ai-pdf-summarizer/TEMPLATE.yaml +40 -0
  130. agent_recipes/templates/ai-pdf-to-markdown/README.md +19 -0
  131. agent_recipes/templates/ai-pdf-to-markdown/TEMPLATE.yaml +63 -0
  132. agent_recipes/templates/ai-performance-analyzer/recipe.yaml +45 -0
  133. agent_recipes/templates/ai-performance-analyzer/tools.py +159 -0
  134. agent_recipes/templates/ai-podcast-cleaner/README.md +117 -0
  135. agent_recipes/templates/ai-podcast-cleaner/TEMPLATE.yaml +117 -0
  136. agent_recipes/templates/ai-podcast-cleaner/agents.yaml +59 -0
  137. agent_recipes/templates/ai-podcast-cleaner/workflow.yaml +77 -0
  138. agent_recipes/templates/ai-podcast-transcriber/README.md +59 -0
  139. agent_recipes/templates/ai-podcast-transcriber/TEMPLATE.yaml +32 -0
  140. agent_recipes/templates/ai-post-copy-generator/recipe.yaml +41 -0
  141. agent_recipes/templates/ai-post-copy-generator/tools.py +105 -0
  142. agent_recipes/templates/ai-product-description-generator/README.md +59 -0
  143. agent_recipes/templates/ai-product-description-generator/TEMPLATE.yaml +28 -0
  144. agent_recipes/templates/ai-publisher-pack/recipe.yaml +44 -0
  145. agent_recipes/templates/ai-publisher-pack/tools.py +252 -0
  146. agent_recipes/templates/ai-qr-code-generator/README.md +60 -0
  147. agent_recipes/templates/ai-qr-code-generator/TEMPLATE.yaml +26 -0
  148. agent_recipes/templates/ai-regex-generator/README.md +59 -0
  149. agent_recipes/templates/ai-regex-generator/TEMPLATE.yaml +28 -0
  150. agent_recipes/templates/ai-repo-readme/README.md +13 -0
  151. agent_recipes/templates/ai-repo-readme/TEMPLATE.yaml +42 -0
  152. agent_recipes/templates/ai-report-generator/README.md +61 -0
  153. agent_recipes/templates/ai-report-generator/TEMPLATE.yaml +32 -0
  154. agent_recipes/templates/ai-resume-parser/README.md +60 -0
  155. agent_recipes/templates/ai-resume-parser/TEMPLATE.yaml +33 -0
  156. agent_recipes/templates/ai-rss-aggregator/README.md +60 -0
  157. agent_recipes/templates/ai-rss-aggregator/TEMPLATE.yaml +30 -0
  158. agent_recipes/templates/ai-schema-generator/README.md +12 -0
  159. agent_recipes/templates/ai-schema-generator/TEMPLATE.yaml +34 -0
  160. agent_recipes/templates/ai-screen-recorder/recipe.yaml +43 -0
  161. agent_recipes/templates/ai-screen-recorder/tools.py +184 -0
  162. agent_recipes/templates/ai-screenshot-capture/recipe.yaml +45 -0
  163. agent_recipes/templates/ai-screenshot-capture/tools.py +231 -0
  164. agent_recipes/templates/ai-screenshot-ocr/README.md +12 -0
  165. agent_recipes/templates/ai-screenshot-ocr/TEMPLATE.yaml +37 -0
  166. agent_recipes/templates/ai-script-writer/recipe.yaml +58 -0
  167. agent_recipes/templates/ai-script-writer/tools.py +297 -0
  168. agent_recipes/templates/ai-sentiment-analyzer/README.md +59 -0
  169. agent_recipes/templates/ai-sentiment-analyzer/TEMPLATE.yaml +28 -0
  170. agent_recipes/templates/ai-seo-optimizer/README.md +59 -0
  171. agent_recipes/templates/ai-seo-optimizer/TEMPLATE.yaml +28 -0
  172. agent_recipes/templates/ai-signal-ranker/recipe.yaml +54 -0
  173. agent_recipes/templates/ai-signal-ranker/tools.py +256 -0
  174. agent_recipes/templates/ai-sitemap-generator/README.md +59 -0
  175. agent_recipes/templates/ai-sitemap-generator/TEMPLATE.yaml +26 -0
  176. agent_recipes/templates/ai-sitemap-scraper/README.md +13 -0
  177. agent_recipes/templates/ai-sitemap-scraper/TEMPLATE.yaml +41 -0
  178. agent_recipes/templates/ai-slide-generator/README.md +60 -0
  179. agent_recipes/templates/ai-slide-generator/TEMPLATE.yaml +29 -0
  180. agent_recipes/templates/ai-slide-to-notes/README.md +12 -0
  181. agent_recipes/templates/ai-slide-to-notes/TEMPLATE.yaml +37 -0
  182. agent_recipes/templates/ai-social-media-generator/README.md +59 -0
  183. agent_recipes/templates/ai-social-media-generator/TEMPLATE.yaml +28 -0
  184. agent_recipes/templates/ai-sql-generator/README.md +59 -0
  185. agent_recipes/templates/ai-sql-generator/TEMPLATE.yaml +28 -0
  186. agent_recipes/templates/ai-subtitle-generator/README.md +59 -0
  187. agent_recipes/templates/ai-subtitle-generator/TEMPLATE.yaml +31 -0
  188. agent_recipes/templates/ai-test-generator/README.md +59 -0
  189. agent_recipes/templates/ai-test-generator/TEMPLATE.yaml +28 -0
  190. agent_recipes/templates/ai-translation-batch/README.md +59 -0
  191. agent_recipes/templates/ai-translation-batch/TEMPLATE.yaml +28 -0
  192. agent_recipes/templates/ai-url-to-markdown/README.md +14 -0
  193. agent_recipes/templates/ai-url-to-markdown/TEMPLATE.yaml +44 -0
  194. agent_recipes/templates/ai-video-chapter-generator/README.md +59 -0
  195. agent_recipes/templates/ai-video-chapter-generator/TEMPLATE.yaml +32 -0
  196. agent_recipes/templates/ai-video-compressor/README.md +59 -0
  197. agent_recipes/templates/ai-video-compressor/TEMPLATE.yaml +28 -0
  198. agent_recipes/templates/ai-video-editor/README.md +254 -0
  199. agent_recipes/templates/ai-video-editor/TEMPLATE.yaml +139 -0
  200. agent_recipes/templates/ai-video-editor/agents.yaml +36 -0
  201. agent_recipes/templates/ai-video-editor/requirements.txt +8 -0
  202. agent_recipes/templates/ai-video-editor/scripts/run.sh +10 -0
  203. agent_recipes/templates/ai-video-editor/src/ai_video_editor/__init__.py +45 -0
  204. agent_recipes/templates/ai-video-editor/src/ai_video_editor/__main__.py +8 -0
  205. agent_recipes/templates/ai-video-editor/src/ai_video_editor/__pycache__/__init__.cpython-312.pyc +0 -0
  206. agent_recipes/templates/ai-video-editor/src/ai_video_editor/__pycache__/cli.cpython-312.pyc +0 -0
  207. agent_recipes/templates/ai-video-editor/src/ai_video_editor/__pycache__/config.cpython-312.pyc +0 -0
  208. agent_recipes/templates/ai-video-editor/src/ai_video_editor/__pycache__/ffmpeg_probe.cpython-312.pyc +0 -0
  209. agent_recipes/templates/ai-video-editor/src/ai_video_editor/__pycache__/heuristics.cpython-312.pyc +0 -0
  210. agent_recipes/templates/ai-video-editor/src/ai_video_editor/__pycache__/llm_plan.cpython-312.pyc +0 -0
  211. agent_recipes/templates/ai-video-editor/src/ai_video_editor/__pycache__/models.cpython-312.pyc +0 -0
  212. agent_recipes/templates/ai-video-editor/src/ai_video_editor/__pycache__/pipeline.cpython-312.pyc +0 -0
  213. agent_recipes/templates/ai-video-editor/src/ai_video_editor/__pycache__/render.cpython-312.pyc +0 -0
  214. agent_recipes/templates/ai-video-editor/src/ai_video_editor/__pycache__/timeline.cpython-312.pyc +0 -0
  215. agent_recipes/templates/ai-video-editor/src/ai_video_editor/__pycache__/transcribe.cpython-312.pyc +0 -0
  216. agent_recipes/templates/ai-video-editor/src/ai_video_editor/__pycache__/utils.cpython-312.pyc +0 -0
  217. agent_recipes/templates/ai-video-editor/src/ai_video_editor/cli.py +343 -0
  218. agent_recipes/templates/ai-video-editor/src/ai_video_editor/config.py +102 -0
  219. agent_recipes/templates/ai-video-editor/src/ai_video_editor/ffmpeg_probe.py +92 -0
  220. agent_recipes/templates/ai-video-editor/src/ai_video_editor/heuristics.py +119 -0
  221. agent_recipes/templates/ai-video-editor/src/ai_video_editor/llm_plan.py +277 -0
  222. agent_recipes/templates/ai-video-editor/src/ai_video_editor/models.py +343 -0
  223. agent_recipes/templates/ai-video-editor/src/ai_video_editor/pipeline.py +287 -0
  224. agent_recipes/templates/ai-video-editor/src/ai_video_editor/render.py +274 -0
  225. agent_recipes/templates/ai-video-editor/src/ai_video_editor/timeline.py +278 -0
  226. agent_recipes/templates/ai-video-editor/src/ai_video_editor/transcribe.py +233 -0
  227. agent_recipes/templates/ai-video-editor/src/ai_video_editor/utils.py +222 -0
  228. agent_recipes/templates/ai-video-editor/src/input.mov +0 -0
  229. agent_recipes/templates/ai-video-editor/src/out.mp4 +0 -0
  230. agent_recipes/templates/ai-video-editor/tests/test_heuristics.py +130 -0
  231. agent_recipes/templates/ai-video-editor/tests/test_models.py +152 -0
  232. agent_recipes/templates/ai-video-editor/tests/test_timeline.py +105 -0
  233. agent_recipes/templates/ai-video-editor/workflow.yaml +51 -0
  234. agent_recipes/templates/ai-video-highlight-extractor/README.md +60 -0
  235. agent_recipes/templates/ai-video-highlight-extractor/TEMPLATE.yaml +33 -0
  236. agent_recipes/templates/ai-video-merger/recipe.yaml +40 -0
  237. agent_recipes/templates/ai-video-merger/tools.py +172 -0
  238. agent_recipes/templates/ai-video-thumbnails/README.md +16 -0
  239. agent_recipes/templates/ai-video-thumbnails/TEMPLATE.yaml +53 -0
  240. agent_recipes/templates/ai-video-to-gif/README.md +14 -0
  241. agent_recipes/templates/ai-video-to-gif/TEMPLATE.yaml +64 -0
  242. agent_recipes/templates/ai-voice-cloner/README.md +59 -0
  243. agent_recipes/templates/ai-voice-cloner/TEMPLATE.yaml +31 -0
  244. agent_recipes/templates/ai-voiceover-generator/recipe.yaml +41 -0
  245. agent_recipes/templates/ai-voiceover-generator/tools.py +194 -0
  246. agent_recipes/templates/ai-watermark-adder/README.md +59 -0
  247. agent_recipes/templates/ai-watermark-adder/TEMPLATE.yaml +26 -0
  248. agent_recipes/templates/ai-watermark-remover/README.md +60 -0
  249. agent_recipes/templates/ai-watermark-remover/TEMPLATE.yaml +32 -0
  250. agent_recipes/templates/data-transformer/README.md +75 -0
  251. agent_recipes/templates/data-transformer/TEMPLATE.yaml +63 -0
  252. agent_recipes/templates/data-transformer/agents.yaml +70 -0
  253. agent_recipes/templates/data-transformer/workflow.yaml +92 -0
  254. agent_recipes/templates/shorts-generator/README.md +61 -0
  255. agent_recipes/templates/shorts-generator/TEMPLATE.yaml +65 -0
  256. agent_recipes/templates/shorts-generator/agents.yaml +66 -0
  257. agent_recipes/templates/shorts-generator/workflow.yaml +86 -0
  258. agent_recipes/templates/transcript-generator/README.md +103 -0
  259. agent_recipes/templates/transcript-generator/TEMPLATE.yaml +57 -0
  260. agent_recipes/templates/transcript-generator/agents.yaml +62 -0
  261. agent_recipes/templates/transcript-generator/workflow.yaml +82 -0
  262. agent_recipes/templates/video-editor/README.md +70 -0
  263. agent_recipes/templates/video-editor/TEMPLATE.yaml +55 -0
  264. agent_recipes/templates/video-editor/agents.yaml +68 -0
  265. agent_recipes/templates/video-editor/workflow.yaml +92 -0
  266. agent_recipes-0.0.5.dist-info/METADATA +145 -0
  267. agent_recipes-0.0.5.dist-info/RECORD +269 -0
  268. agent_recipes-0.0.5.dist-info/WHEEL +5 -0
  269. agent_recipes-0.0.5.dist-info/top_level.txt +1 -0
  270. /236/326/177nE/243/231/214/232/265/322m/201/253/353/022C/372/321/266/b/225^=/272/017t/262/3337/310@/315wb/341pB/277z/216/330/314/004/265B/213/375/236/203/026/373/307/354z41/347#/374q/262/22589/032/276 /277/244Vh/322/017/004/224/215/004/367/377/375/335/n +0 -0
@@ -0,0 +1,28 @@
1
+ name: ai-sentiment-analyzer
2
+ version: "1.0.0"
3
+ description: Analyze sentiment in text data
4
+ author: praison
5
+ license: Apache-2.0
6
+ tags:
7
+ - data
8
+ - sentiment
9
+ - nlp
10
+
11
+ requires:
12
+ tools:
13
+ - llm_tool
14
+ packages:
15
+ - openai
16
+ env:
17
+ - OPENAI_API_KEY
18
+
19
+ cli:
20
+ command: praison recipes run ai-sentiment-analyzer
21
+ examples:
22
+ - praison recipes run ai-sentiment-analyzer <input>
23
+ - praison recipes run ai-sentiment-analyzer <input> --output ./output/
24
+ - praison recipes run ai-sentiment-analyzer <input> --dry-run
25
+
26
+ safety:
27
+ dry_run_default: false
28
+ overwrites_files: true
@@ -0,0 +1,59 @@
1
+ # Seo Optimizer
2
+
3
+ Optimize content for SEO with keywords
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ pip install agent-recipes
9
+ ```
10
+
11
+ ## CLI Usage
12
+
13
+ ```bash
14
+ # Basic usage
15
+ praison recipes run ai-seo-optimizer <input>
16
+
17
+ # With output directory
18
+ praison recipes run ai-seo-optimizer <input> --output ./output/
19
+
20
+ # Dry run (check dependencies only)
21
+ praison recipes run ai-seo-optimizer <input> --dry-run
22
+
23
+ # Show recipe info
24
+ praison recipes info ai-seo-optimizer
25
+
26
+ # Check dependencies
27
+ praison recipes doctor ai-seo-optimizer
28
+ ```
29
+
30
+ ## Python Usage
31
+
32
+ ```python
33
+ from praisonaiagents import Agent
34
+ from agent_recipes import load_recipe
35
+
36
+ # Load and run recipe
37
+ recipe = load_recipe("ai-seo-optimizer")
38
+ result = recipe.run(input="<your-input>")
39
+ print(result)
40
+ ```
41
+
42
+ ## Requirements
43
+
44
+ ### Packages
45
+ - openai
46
+
47
+ ### Environment Variables
48
+ - OPENAI_API_KEY
49
+
50
+ ### External Tools
51
+ - None
52
+
53
+ ## Tags
54
+
55
+ `web`, `seo`, `optimization`
56
+
57
+ ## License
58
+
59
+ Apache-2.0
@@ -0,0 +1,28 @@
1
+ name: ai-seo-optimizer
2
+ version: "1.0.0"
3
+ description: Optimize content for SEO with keywords
4
+ author: praison
5
+ license: Apache-2.0
6
+ tags:
7
+ - web
8
+ - seo
9
+ - optimization
10
+
11
+ requires:
12
+ tools:
13
+ - llm_tool
14
+ packages:
15
+ - openai
16
+ env:
17
+ - OPENAI_API_KEY
18
+
19
+ cli:
20
+ command: praison recipes run ai-seo-optimizer
21
+ examples:
22
+ - praison recipes run ai-seo-optimizer <input>
23
+ - praison recipes run ai-seo-optimizer <input> --output ./output/
24
+ - praison recipes run ai-seo-optimizer <input> --dry-run
25
+
26
+ safety:
27
+ dry_run_default: false
28
+ overwrites_files: true
@@ -0,0 +1,54 @@
1
+ name: ai-signal-ranker
2
+ version: 1.0.0
3
+ description: Rank news articles by novelty, velocity, and relevance signals
4
+ author: PraisonAI
5
+ tags:
6
+ - news
7
+ - ranking
8
+ - signals
9
+ - relevance
10
+
11
+ config:
12
+ ranking_criteria:
13
+ - novelty
14
+ - velocity
15
+ - relevance
16
+ - engagement
17
+ weights:
18
+ novelty: 0.3
19
+ velocity: 0.25
20
+ relevance: 0.25
21
+ engagement: 0.2
22
+ output_format: json
23
+
24
+ input:
25
+ type: object
26
+ properties:
27
+ articles:
28
+ type: array
29
+ context:
30
+ type: string
31
+ description: Context for relevance scoring
32
+
33
+ output:
34
+ type: object
35
+ properties:
36
+ ranked_articles:
37
+ type: array
38
+ signals:
39
+ type: object
40
+
41
+ requires:
42
+ env:
43
+ - OPENAI_API_KEY
44
+
45
+ workflow:
46
+ agents:
47
+ - name: ranker
48
+ role: Signal Analyst
49
+ goal: Rank articles by importance signals
50
+ tools:
51
+ - calculate_novelty
52
+ - calculate_velocity
53
+ - calculate_relevance
54
+ - rank_articles
@@ -0,0 +1,256 @@
1
+ """
2
+ AI Signal Ranker Tools
3
+
4
+ Tools for ranking news articles by:
5
+ - Novelty: How new/unique is this information
6
+ - Velocity: How fast is this story spreading
7
+ - Relevance: How relevant to AI/tech audience
8
+ - Engagement: Social signals (comments, shares)
9
+ """
10
+
11
+ import logging
12
+ import os
13
+ from datetime import datetime, timezone
14
+ from typing import Any, Dict, List, Optional
15
+
16
+ logger = logging.getLogger(__name__)
17
+
18
+
19
+ def calculate_novelty(
20
+ article: Dict[str, Any],
21
+ existing_topics: Optional[List[str]] = None,
22
+ ) -> float:
23
+ """
24
+ Calculate novelty score for an article.
25
+
26
+ Args:
27
+ article: Article dictionary
28
+ existing_topics: List of known topics to compare against
29
+
30
+ Returns:
31
+ Novelty score between 0 and 1
32
+ """
33
+ score = 0.5 # Base score
34
+
35
+ title = article.get("title", "").lower()
36
+ content = article.get("content", "").lower()
37
+ text = f"{title} {content}"
38
+
39
+ # Novelty indicators
40
+ novelty_keywords = [
41
+ "breakthrough", "first", "new", "revolutionary", "unprecedented",
42
+ "announces", "launches", "releases", "introduces", "unveils",
43
+ "discovers", "achieves", "beats", "surpasses", "record"
44
+ ]
45
+
46
+ for keyword in novelty_keywords:
47
+ if keyword in text:
48
+ score += 0.1
49
+
50
+ # Check against existing topics
51
+ if existing_topics:
52
+ is_new_topic = not any(topic.lower() in text for topic in existing_topics)
53
+ if is_new_topic:
54
+ score += 0.2
55
+
56
+ return min(1.0, score)
57
+
58
+
59
+ def calculate_velocity(
60
+ article: Dict[str, Any],
61
+ related_articles: Optional[List[Dict[str, Any]]] = None,
62
+ ) -> float:
63
+ """
64
+ Calculate velocity score based on how fast the story is spreading.
65
+
66
+ Args:
67
+ article: Article dictionary
68
+ related_articles: Other articles on the same topic
69
+
70
+ Returns:
71
+ Velocity score between 0 and 1
72
+ """
73
+ score = 0.3 # Base score
74
+
75
+ # Check engagement metrics
76
+ comments = article.get("comments", 0)
77
+ article_score = article.get("score", 0)
78
+
79
+ # Normalize engagement
80
+ if comments > 100:
81
+ score += 0.3
82
+ elif comments > 50:
83
+ score += 0.2
84
+ elif comments > 10:
85
+ score += 0.1
86
+
87
+ if article_score > 500:
88
+ score += 0.2
89
+ elif article_score > 100:
90
+ score += 0.1
91
+
92
+ # Check recency
93
+ published = article.get("published", "")
94
+ if published:
95
+ try:
96
+ pub_time = datetime.fromisoformat(published.replace("Z", "+00:00"))
97
+ hours_old = (datetime.now(timezone.utc) - pub_time).total_seconds() / 3600
98
+
99
+ if hours_old < 2:
100
+ score += 0.2
101
+ elif hours_old < 6:
102
+ score += 0.1
103
+ except Exception:
104
+ pass
105
+
106
+ # Check if multiple sources are covering it
107
+ if related_articles and len(related_articles) > 2:
108
+ score += 0.2
109
+
110
+ return min(1.0, score)
111
+
112
+
113
+ def calculate_relevance(
114
+ article: Dict[str, Any],
115
+ context: str = "AI technology news",
116
+ ) -> float:
117
+ """
118
+ Calculate relevance score for target audience.
119
+
120
+ Args:
121
+ article: Article dictionary
122
+ context: Context for relevance (e.g., "AI technology news")
123
+
124
+ Returns:
125
+ Relevance score between 0 and 1
126
+ """
127
+ score = 0.3 # Base score
128
+
129
+ title = article.get("title", "").lower()
130
+ content = article.get("content", "").lower()
131
+ text = f"{title} {content}"
132
+
133
+ # High relevance keywords for AI audience
134
+ high_relevance = [
135
+ "gpt", "llm", "openai", "anthropic", "claude", "gemini", "google ai",
136
+ "machine learning", "deep learning", "neural network", "transformer",
137
+ "ai agent", "rag", "fine-tuning", "training", "inference",
138
+ "chatgpt", "copilot", "midjourney", "stable diffusion", "dall-e"
139
+ ]
140
+
141
+ medium_relevance = [
142
+ "artificial intelligence", "automation", "robotics", "nlp",
143
+ "computer vision", "speech recognition", "embedding", "vector",
144
+ "model", "benchmark", "dataset", "research", "paper"
145
+ ]
146
+
147
+ for keyword in high_relevance:
148
+ if keyword in text:
149
+ score += 0.15
150
+
151
+ for keyword in medium_relevance:
152
+ if keyword in text:
153
+ score += 0.05
154
+
155
+ # Source quality bonus
156
+ quality_sources = ["arxiv", "openai", "anthropic", "google", "meta", "microsoft"]
157
+ source = article.get("source", "").lower()
158
+ if any(qs in source for qs in quality_sources):
159
+ score += 0.1
160
+
161
+ return min(1.0, score)
162
+
163
+
164
+ def calculate_engagement(article: Dict[str, Any]) -> float:
165
+ """
166
+ Calculate engagement score from social signals.
167
+
168
+ Args:
169
+ article: Article dictionary
170
+
171
+ Returns:
172
+ Engagement score between 0 and 1
173
+ """
174
+ score = 0.2 # Base score
175
+
176
+ comments = article.get("comments", 0)
177
+ article_score = article.get("score", 0)
178
+
179
+ # Logarithmic scaling for engagement
180
+ import math
181
+
182
+ if comments > 0:
183
+ score += min(0.3, math.log10(comments + 1) / 10)
184
+
185
+ if article_score > 0:
186
+ score += min(0.3, math.log10(article_score + 1) / 10)
187
+
188
+ # Check for author reputation (if available)
189
+ author = article.get("author", "")
190
+ if author and len(author) > 0:
191
+ score += 0.1
192
+
193
+ return min(1.0, score)
194
+
195
+
196
+ def rank_articles(
197
+ articles: List[Dict[str, Any]],
198
+ weights: Optional[Dict[str, float]] = None,
199
+ context: str = "AI technology news",
200
+ top_n: Optional[int] = None,
201
+ ) -> Dict[str, Any]:
202
+ """
203
+ Rank articles by combined signal scores.
204
+
205
+ Args:
206
+ articles: List of article dictionaries
207
+ weights: Custom weights for each signal
208
+ context: Context for relevance scoring
209
+ top_n: Return only top N articles
210
+
211
+ Returns:
212
+ Dictionary with ranked articles and signal breakdown
213
+ """
214
+ if not articles:
215
+ return {"ranked_articles": [], "signals": {}}
216
+
217
+ weights = weights or {
218
+ "novelty": 0.3,
219
+ "velocity": 0.25,
220
+ "relevance": 0.25,
221
+ "engagement": 0.2,
222
+ }
223
+
224
+ ranked = []
225
+
226
+ for article in articles:
227
+ signals = {
228
+ "novelty": calculate_novelty(article),
229
+ "velocity": calculate_velocity(article),
230
+ "relevance": calculate_relevance(article, context),
231
+ "engagement": calculate_engagement(article),
232
+ }
233
+
234
+ # Calculate weighted score
235
+ total_score = sum(signals[k] * weights.get(k, 0.25) for k in signals)
236
+
237
+ ranked.append({
238
+ **article,
239
+ "signals": signals,
240
+ "total_score": round(total_score, 3),
241
+ })
242
+
243
+ # Sort by total score
244
+ ranked.sort(key=lambda x: x["total_score"], reverse=True)
245
+
246
+ if top_n:
247
+ ranked = ranked[:top_n]
248
+
249
+ return {
250
+ "ranked_articles": ranked,
251
+ "signals": {
252
+ "weights_used": weights,
253
+ "total_articles": len(ranked),
254
+ "avg_score": sum(a["total_score"] for a in ranked) / len(ranked) if ranked else 0,
255
+ }
256
+ }
@@ -0,0 +1,59 @@
1
+ # Sitemap Generator
2
+
3
+ Generate XML sitemaps from URLs
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ pip install agent-recipes
9
+ ```
10
+
11
+ ## CLI Usage
12
+
13
+ ```bash
14
+ # Basic usage
15
+ praison recipes run ai-sitemap-generator <input>
16
+
17
+ # With output directory
18
+ praison recipes run ai-sitemap-generator <input> --output ./output/
19
+
20
+ # Dry run (check dependencies only)
21
+ praison recipes run ai-sitemap-generator <input> --dry-run
22
+
23
+ # Show recipe info
24
+ praison recipes info ai-sitemap-generator
25
+
26
+ # Check dependencies
27
+ praison recipes doctor ai-sitemap-generator
28
+ ```
29
+
30
+ ## Python Usage
31
+
32
+ ```python
33
+ from praisonaiagents import Agent
34
+ from agent_recipes import load_recipe
35
+
36
+ # Load and run recipe
37
+ recipe = load_recipe("ai-sitemap-generator")
38
+ result = recipe.run(input="<your-input>")
39
+ print(result)
40
+ ```
41
+
42
+ ## Requirements
43
+
44
+ ### Packages
45
+ - requests
46
+
47
+ ### Environment Variables
48
+ - None
49
+
50
+ ### External Tools
51
+ - None
52
+
53
+ ## Tags
54
+
55
+ `web`, `sitemap`, `seo`
56
+
57
+ ## License
58
+
59
+ Apache-2.0
@@ -0,0 +1,26 @@
1
+ name: ai-sitemap-generator
2
+ version: "1.0.0"
3
+ description: Generate XML sitemaps from URLs
4
+ author: praison
5
+ license: Apache-2.0
6
+ tags:
7
+ - web
8
+ - sitemap
9
+ - seo
10
+
11
+ requires:
12
+ tools:
13
+ - web_tool
14
+ packages:
15
+ - requests
16
+
17
+ cli:
18
+ command: praison recipes run ai-sitemap-generator
19
+ examples:
20
+ - praison recipes run ai-sitemap-generator <input>
21
+ - praison recipes run ai-sitemap-generator <input> --output ./output/
22
+ - praison recipes run ai-sitemap-generator <input> --dry-run
23
+
24
+ safety:
25
+ dry_run_default: false
26
+ overwrites_files: true
@@ -0,0 +1,13 @@
1
+ # AI Sitemap Scraper
2
+
3
+ Scrape content from sitemap URLs and save as structured data.
4
+
5
+ ## Usage
6
+ ```bash
7
+ praison run ai-sitemap-scraper https://example.com/sitemap.xml
8
+ praison run ai-sitemap-scraper https://example.com/sitemap.xml --limit 50
9
+ ```
10
+
11
+ ## Output
12
+ - `pages.json` - URL list with metadata
13
+ - `content/` - Scraped content files
@@ -0,0 +1,41 @@
1
+ name: ai-sitemap-scraper
2
+ version: "1.0.0"
3
+ description: Scrape content from sitemap URLs and save as structured data.
4
+ author: praisonai
5
+ license: Apache-2.0
6
+ tags: [web, sitemap, scraping, extraction]
7
+
8
+ requires:
9
+ tools: [shell_tool]
10
+ packages: [praisonai-tools, requests, beautifulsoup4]
11
+
12
+ config:
13
+ input:
14
+ type: string
15
+ required: true
16
+ output:
17
+ type: string
18
+ limit:
19
+ type: integer
20
+ default: 100
21
+
22
+ cli:
23
+ command: ai-sitemap-scraper
24
+ args:
25
+ - name: input
26
+ positional: true
27
+ required: true
28
+ - name: --output
29
+ short: -o
30
+ - name: --limit
31
+ default: "100"
32
+ examples:
33
+ - "praison run ai-sitemap-scraper https://example.com/sitemap.xml"
34
+
35
+ outputs:
36
+ - name: pages.json
37
+ type: file
38
+ - name: content/
39
+ type: directory
40
+ - name: run.json
41
+ type: file
@@ -0,0 +1,60 @@
1
+ # Slide Generator
2
+
3
+ Generate presentation slides from text/outline
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ pip install agent-recipes
9
+ ```
10
+
11
+ ## CLI Usage
12
+
13
+ ```bash
14
+ # Basic usage
15
+ praison recipes run ai-slide-generator <input>
16
+
17
+ # With output directory
18
+ praison recipes run ai-slide-generator <input> --output ./output/
19
+
20
+ # Dry run (check dependencies only)
21
+ praison recipes run ai-slide-generator <input> --dry-run
22
+
23
+ # Show recipe info
24
+ praison recipes info ai-slide-generator
25
+
26
+ # Check dependencies
27
+ praison recipes doctor ai-slide-generator
28
+ ```
29
+
30
+ ## Python Usage
31
+
32
+ ```python
33
+ from praisonaiagents import Agent
34
+ from agent_recipes import load_recipe
35
+
36
+ # Load and run recipe
37
+ recipe = load_recipe("ai-slide-generator")
38
+ result = recipe.run(input="<your-input>")
39
+ print(result)
40
+ ```
41
+
42
+ ## Requirements
43
+
44
+ ### Packages
45
+ - openai
46
+ - python-pptx
47
+
48
+ ### Environment Variables
49
+ - OPENAI_API_KEY
50
+
51
+ ### External Tools
52
+ - None
53
+
54
+ ## Tags
55
+
56
+ `document`, `presentation`, `slides`
57
+
58
+ ## License
59
+
60
+ Apache-2.0
@@ -0,0 +1,29 @@
1
+ name: ai-slide-generator
2
+ version: "1.0.0"
3
+ description: Generate presentation slides from text/outline
4
+ author: praison
5
+ license: Apache-2.0
6
+ tags:
7
+ - document
8
+ - presentation
9
+ - slides
10
+
11
+ requires:
12
+ tools:
13
+ - llm_tool
14
+ packages:
15
+ - openai
16
+ - python-pptx
17
+ env:
18
+ - OPENAI_API_KEY
19
+
20
+ cli:
21
+ command: praison recipes run ai-slide-generator
22
+ examples:
23
+ - praison recipes run ai-slide-generator <input>
24
+ - praison recipes run ai-slide-generator <input> --output ./output/
25
+ - praison recipes run ai-slide-generator <input> --dry-run
26
+
27
+ safety:
28
+ dry_run_default: false
29
+ overwrites_files: true
@@ -0,0 +1,12 @@
1
+ # AI Slide to Notes
2
+
3
+ Convert presentation slides to structured notes.
4
+
5
+ ## Usage
6
+ ```bash
7
+ praison run ai-slide-to-notes presentation.pdf
8
+ ```
9
+
10
+ ## Output
11
+ - `notes.md` - Structured notes
12
+ - `outline.json` - Presentation outline
@@ -0,0 +1,37 @@
1
+ name: ai-slide-to-notes
2
+ version: "1.0.0"
3
+ description: Convert presentation slides to structured notes.
4
+ author: praisonai
5
+ license: Apache-2.0
6
+ tags: [slides, notes, presentation, extraction]
7
+
8
+ requires:
9
+ tools: [shell_tool]
10
+ packages: [praisonai-tools]
11
+ env: [OPENAI_API_KEY]
12
+
13
+ config:
14
+ input:
15
+ type: string
16
+ required: true
17
+ output:
18
+ type: string
19
+
20
+ cli:
21
+ command: ai-slide-to-notes
22
+ args:
23
+ - name: input
24
+ positional: true
25
+ required: true
26
+ - name: --output
27
+ short: -o
28
+ examples:
29
+ - "praison run ai-slide-to-notes presentation.pdf"
30
+
31
+ outputs:
32
+ - name: notes.md
33
+ type: file
34
+ - name: outline.json
35
+ type: file
36
+ - name: run.json
37
+ type: file