lionagi 0.18.0__tar.gz → 0.18.1__tar.gz

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 (307) hide show
  1. {lionagi-0.18.0 → lionagi-0.18.1}/.coveragerc +0 -4
  2. {lionagi-0.18.0 → lionagi-0.18.1}/AGENTS.md +6 -0
  3. {lionagi-0.18.0 → lionagi-0.18.1}/PKG-INFO +6 -5
  4. {lionagi-0.18.0 → lionagi-0.18.1}/README.md +3 -3
  5. lionagi-0.18.1/cookbooks/006_operation_graphs_claim_extraction.ipynb +831 -0
  6. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/007_fan_out_in.py +5 -6
  7. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/_errors.py +0 -5
  8. lionagi-0.18.1/lionagi/fields.py +83 -0
  9. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/__init__.py +3 -1
  10. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/concurrency/primitives.py +4 -4
  11. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/concurrency/task.py +1 -0
  12. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/models/field_model.py +12 -4
  13. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/models/hashable_model.py +2 -3
  14. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/ReAct/ReAct.py +1 -1
  15. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/act/act.py +3 -3
  16. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/builder.py +5 -7
  17. lionagi-0.18.1/lionagi/operations/fields.py +380 -0
  18. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/flow.py +4 -6
  19. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/node.py +4 -4
  20. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/operate/operate.py +9 -7
  21. {lionagi-0.18.0/lionagi/protocols/operatives → lionagi-0.18.1/lionagi/operations/operate}/operative.py +4 -5
  22. {lionagi-0.18.0/lionagi/protocols/operatives → lionagi-0.18.1/lionagi/operations/operate}/step.py +34 -39
  23. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/select/select.py +1 -1
  24. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/select/utils.py +7 -1
  25. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/types.py +1 -1
  26. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/action/manager.py +5 -6
  27. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/contracts.py +2 -2
  28. lionagi-0.18.1/lionagi/protocols/generic/__init__.py +24 -0
  29. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/generic/element.py +36 -127
  30. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/generic/pile.py +9 -10
  31. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/generic/progression.py +23 -22
  32. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/graph/edge.py +6 -5
  33. lionagi-0.18.1/lionagi/protocols/ids.py +38 -0
  34. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/messages/__init__.py +3 -1
  35. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/messages/base.py +7 -6
  36. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/messages/instruction.py +0 -1
  37. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/types.py +1 -11
  38. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/connections/__init__.py +3 -0
  39. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/connections/providers/claude_code_cli.py +3 -2
  40. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/hooks/_types.py +1 -1
  41. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/hooks/_utils.py +1 -1
  42. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/hooks/hook_event.py +3 -8
  43. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/hooks/hook_registry.py +5 -5
  44. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/hooks/hooked_event.py +61 -1
  45. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/imodel.py +24 -20
  46. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/third_party/claude_code.py +1 -2
  47. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/third_party/openai_models.py +24 -22
  48. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/token_calculator.py +1 -94
  49. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/session/branch.py +26 -228
  50. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/session/session.py +5 -90
  51. lionagi-0.18.1/lionagi/version.py +1 -0
  52. {lionagi-0.18.0 → lionagi-0.18.1}/pyproject.toml +3 -2
  53. {lionagi-0.18.0 → lionagi-0.18.1}/uv.lock +9 -5
  54. lionagi-0.18.0/cookbooks/006_operation_graphs_claim_extraction.ipynb +0 -788
  55. lionagi-0.18.0/lionagi/fields/__init__.py +0 -47
  56. lionagi-0.18.0/lionagi/fields/action.py +0 -188
  57. lionagi-0.18.0/lionagi/fields/base.py +0 -153
  58. lionagi-0.18.0/lionagi/fields/code.py +0 -239
  59. lionagi-0.18.0/lionagi/fields/file.py +0 -234
  60. lionagi-0.18.0/lionagi/fields/instruct.py +0 -135
  61. lionagi-0.18.0/lionagi/fields/reason.py +0 -55
  62. lionagi-0.18.0/lionagi/fields/research.py +0 -52
  63. lionagi-0.18.0/lionagi/operations/brainstorm/brainstorm.py +0 -498
  64. lionagi-0.18.0/lionagi/operations/brainstorm/prompt.py +0 -11
  65. lionagi-0.18.0/lionagi/operations/instruct/instruct.py +0 -28
  66. lionagi-0.18.0/lionagi/operations/plan/__init__.py +0 -6
  67. lionagi-0.18.0/lionagi/operations/plan/plan.py +0 -386
  68. lionagi-0.18.0/lionagi/operations/plan/prompt.py +0 -25
  69. lionagi-0.18.0/lionagi/operations/utils.py +0 -45
  70. lionagi-0.18.0/lionagi/protocols/forms/base.py +0 -85
  71. lionagi-0.18.0/lionagi/protocols/forms/flow.py +0 -79
  72. lionagi-0.18.0/lionagi/protocols/forms/form.py +0 -86
  73. lionagi-0.18.0/lionagi/protocols/forms/report.py +0 -48
  74. lionagi-0.18.0/lionagi/protocols/ids.py +0 -81
  75. lionagi-0.18.0/lionagi/protocols/mail/__init__.py +0 -2
  76. lionagi-0.18.0/lionagi/protocols/mail/exchange.py +0 -220
  77. lionagi-0.18.0/lionagi/protocols/mail/mail.py +0 -51
  78. lionagi-0.18.0/lionagi/protocols/mail/mailbox.py +0 -103
  79. lionagi-0.18.0/lionagi/protocols/mail/manager.py +0 -218
  80. lionagi-0.18.0/lionagi/protocols/mail/package.py +0 -101
  81. lionagi-0.18.0/lionagi/protocols/operatives/__init__.py +0 -2
  82. lionagi-0.18.0/lionagi/service/connections/mcp/__init__.py +0 -2
  83. lionagi-0.18.0/lionagi/service/connections/providers/__init__.py +0 -2
  84. lionagi-0.18.0/lionagi/tools/__init__.py +0 -2
  85. lionagi-0.18.0/lionagi/tools/file/__init__.py +0 -2
  86. lionagi-0.18.0/lionagi/version.py +0 -1
  87. {lionagi-0.18.0 → lionagi-0.18.1}/.env.example +0 -0
  88. {lionagi-0.18.0 → lionagi-0.18.1}/.github/FUNDING.yml +0 -0
  89. {lionagi-0.18.0 → lionagi-0.18.1}/.github/dependabot.yml +0 -0
  90. {lionagi-0.18.0 → lionagi-0.18.1}/.github/workflows/benchmarks.yml +0 -0
  91. {lionagi-0.18.0 → lionagi-0.18.1}/.github/workflows/ci.yml +0 -0
  92. {lionagi-0.18.0 → lionagi-0.18.1}/.github/workflows/codeql.yml +0 -0
  93. {lionagi-0.18.0 → lionagi-0.18.1}/.github/workflows/docs-deploy.yml +0 -0
  94. {lionagi-0.18.0 → lionagi-0.18.1}/.github/workflows/refresh-bench-baselines.yml +0 -0
  95. {lionagi-0.18.0 → lionagi-0.18.1}/.github/workflows/release.yml +0 -0
  96. {lionagi-0.18.0 → lionagi-0.18.1}/.gitignore +0 -0
  97. {lionagi-0.18.0 → lionagi-0.18.1}/.pre-commit-config.yaml +0 -0
  98. {lionagi-0.18.0 → lionagi-0.18.1}/.python-version +0 -0
  99. {lionagi-0.18.0 → lionagi-0.18.1}/CODE_OF_CONDUCT.md +0 -0
  100. {lionagi-0.18.0 → lionagi-0.18.1}/CONTRIBUTING.md +0 -0
  101. {lionagi-0.18.0 → lionagi-0.18.1}/LICENSE +0 -0
  102. {lionagi-0.18.0 → lionagi-0.18.1}/assets/operation_builder.gif +0 -0
  103. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/README.md +0 -0
  104. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/baselines/.gitkeep +0 -0
  105. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/baselines/concurrency-asyncio.json +0 -0
  106. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/baselines/concurrency-trio.json +0 -0
  107. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/baselines/fuzzy.json +0 -0
  108. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/baselines/ln-asyncio.json +0 -0
  109. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/baselines/ln-trio.json +0 -0
  110. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/ci_compare.py +0 -0
  111. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/comparisons/README.md +0 -0
  112. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/comparisons/benchmark_detailed_20250922_182217.csv +0 -0
  113. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/comparisons/benchmark_professional.py +0 -0
  114. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/comparisons/benchmark_results_20250922_182217.json +0 -0
  115. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/comparisons/benchmark_summary_20250922_182217.csv +0 -0
  116. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/comparisons/generate_benchmark_report.py +0 -0
  117. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/comparisons/report.md +0 -0
  118. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/concurrency_bench.py +0 -0
  119. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/fuzzy_bench.py +0 -0
  120. {lionagi-0.18.0 → lionagi-0.18.1}/benchmarks/ln_bench.py +0 -0
  121. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/001_branch_converse.ipynb +0 -0
  122. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/002_branch_interact.ipynb +0 -0
  123. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/003_branch_info.ipynb +0 -0
  124. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/004_conversation_patterns.ipynb +0 -0
  125. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/005_react_basics.ipynb +0 -0
  126. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/data/002_comedian.json +0 -0
  127. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/data/002_critic.json +0 -0
  128. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/data/006_lion_proof_ch2.md +0 -0
  129. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/using_claude_code/claude_proxy/README.md +0 -0
  130. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/using_claude_code/claude_proxy/claude_code_proxy.py +0 -0
  131. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/using_claude_code/claude_proxy/run_w_claude_code_proxy.ipynb +0 -0
  132. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/using_claude_code/using_claude_code.py +0 -0
  133. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/using_mcp/.mcp.json +0 -0
  134. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/using_mcp/README.md +0 -0
  135. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/using_mcp/react_mcp_with_schema.py +0 -0
  136. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/using_mcp/search_group.py +0 -0
  137. {lionagi-0.18.0 → lionagi-0.18.1}/cookbooks/using_mcp/search_group_config.json +0 -0
  138. {lionagi-0.18.0 → lionagi-0.18.1}/docs/DOCUMENTATION_STANDARDS.md +0 -0
  139. {lionagi-0.18.0 → lionagi-0.18.1}/docs/advanced/custom-operations.md +0 -0
  140. {lionagi-0.18.0 → lionagi-0.18.1}/docs/advanced/error-handling.md +0 -0
  141. {lionagi-0.18.0 → lionagi-0.18.1}/docs/advanced/flow-composition.md +0 -0
  142. {lionagi-0.18.0 → lionagi-0.18.1}/docs/advanced/index.md +0 -0
  143. {lionagi-0.18.0 → lionagi-0.18.1}/docs/advanced/observability.md +0 -0
  144. {lionagi-0.18.0 → lionagi-0.18.1}/docs/advanced/performance.md +0 -0
  145. {lionagi-0.18.0 → lionagi-0.18.1}/docs/code-of-conduct.md +0 -0
  146. {lionagi-0.18.0 → lionagi-0.18.1}/docs/contributing.md +0 -0
  147. {lionagi-0.18.0 → lionagi-0.18.1}/docs/cookbook/brainstorming.md +0 -0
  148. {lionagi-0.18.0 → lionagi-0.18.1}/docs/cookbook/claim-extraction.md +0 -0
  149. {lionagi-0.18.0 → lionagi-0.18.1}/docs/cookbook/code-review-crew.md +0 -0
  150. {lionagi-0.18.0 → lionagi-0.18.1}/docs/cookbook/data-persistence.md +0 -0
  151. {lionagi-0.18.0 → lionagi-0.18.1}/docs/cookbook/hr-automation.md +0 -0
  152. {lionagi-0.18.0 → lionagi-0.18.1}/docs/cookbook/index.md +0 -0
  153. {lionagi-0.18.0 → lionagi-0.18.1}/docs/cookbook/research-synthesis.md +0 -0
  154. {lionagi-0.18.0 → lionagi-0.18.1}/docs/core-concepts/index.md +0 -0
  155. {lionagi-0.18.0 → lionagi-0.18.1}/docs/core-concepts/lionagi-philosophy.md +0 -0
  156. {lionagi-0.18.0 → lionagi-0.18.1}/docs/core-concepts/messages-and-memory.md +0 -0
  157. {lionagi-0.18.0 → lionagi-0.18.1}/docs/core-concepts/models-and-providers.md +0 -0
  158. {lionagi-0.18.0 → lionagi-0.18.1}/docs/core-concepts/operations.md +0 -0
  159. {lionagi-0.18.0 → lionagi-0.18.1}/docs/core-concepts/sessions-and-branches.md +0 -0
  160. {lionagi-0.18.0 → lionagi-0.18.1}/docs/core-concepts/tools-and-functions.md +0 -0
  161. {lionagi-0.18.0 → lionagi-0.18.1}/docs/for-ai-agents/claude-code-usage.md +0 -0
  162. {lionagi-0.18.0 → lionagi-0.18.1}/docs/for-ai-agents/index.md +0 -0
  163. {lionagi-0.18.0 → lionagi-0.18.1}/docs/for-ai-agents/orchestration-guide.md +0 -0
  164. {lionagi-0.18.0 → lionagi-0.18.1}/docs/for-ai-agents/pattern-selection.md +0 -0
  165. {lionagi-0.18.0 → lionagi-0.18.1}/docs/for-ai-agents/self-improvement.md +0 -0
  166. {lionagi-0.18.0 → lionagi-0.18.1}/docs/includes/abbreviations.md +0 -0
  167. {lionagi-0.18.0 → lionagi-0.18.1}/docs/index.md +0 -0
  168. {lionagi-0.18.0 → lionagi-0.18.1}/docs/integrations/databases.md +0 -0
  169. {lionagi-0.18.0 → lionagi-0.18.1}/docs/integrations/dspy-optimization.md +0 -0
  170. {lionagi-0.18.0 → lionagi-0.18.1}/docs/integrations/index.md +0 -0
  171. {lionagi-0.18.0 → lionagi-0.18.1}/docs/integrations/llamaindex-rag.md +0 -0
  172. {lionagi-0.18.0 → lionagi-0.18.1}/docs/integrations/llm-providers.md +0 -0
  173. {lionagi-0.18.0 → lionagi-0.18.1}/docs/integrations/mcp-servers.md +0 -0
  174. {lionagi-0.18.0 → lionagi-0.18.1}/docs/integrations/tools.md +0 -0
  175. {lionagi-0.18.0 → lionagi-0.18.1}/docs/integrations/vector-stores.md +0 -0
  176. {lionagi-0.18.0 → lionagi-0.18.1}/docs/patterns/conditional-flows.md +0 -0
  177. {lionagi-0.18.0 → lionagi-0.18.1}/docs/patterns/fan-out-in.md +0 -0
  178. {lionagi-0.18.0 → lionagi-0.18.1}/docs/patterns/index.md +0 -0
  179. {lionagi-0.18.0 → lionagi-0.18.1}/docs/patterns/react-with-rag.md +0 -0
  180. {lionagi-0.18.0 → lionagi-0.18.1}/docs/patterns/sequential-analysis.md +0 -0
  181. {lionagi-0.18.0 → lionagi-0.18.1}/docs/patterns/tournament-validation.md +0 -0
  182. {lionagi-0.18.0 → lionagi-0.18.1}/docs/problem-statement.md +0 -0
  183. {lionagi-0.18.0 → lionagi-0.18.1}/docs/quickstart/installation.md +0 -0
  184. {lionagi-0.18.0 → lionagi-0.18.1}/docs/quickstart/your-first-flow.md +0 -0
  185. {lionagi-0.18.0 → lionagi-0.18.1}/docs/reference/api/index.md +0 -0
  186. {lionagi-0.18.0 → lionagi-0.18.1}/docs/reference/changelog.md +0 -0
  187. {lionagi-0.18.0 → lionagi-0.18.1}/docs/reference/troubleshooting.md +0 -0
  188. {lionagi-0.18.0 → lionagi-0.18.1}/docs/stylesheets/extra.css +0 -0
  189. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/__init__.py +0 -0
  190. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/_class_registry.py +0 -0
  191. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/_types.py +0 -0
  192. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/adapters/__init__.py +0 -0
  193. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/adapters/_utils.py +0 -0
  194. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/adapters/async_postgres_adapter.py +0 -0
  195. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/config.py +0 -0
  196. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/libs/__init__.py +0 -0
  197. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/libs/file/__init__.py +0 -0
  198. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/libs/file/chunk.py +0 -0
  199. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/libs/file/process.py +0 -0
  200. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/libs/schema/__init__.py +0 -0
  201. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/libs/schema/as_readable.py +0 -0
  202. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/libs/schema/breakdown_pydantic_annotation.py +0 -0
  203. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/libs/schema/extract_code_block.py +0 -0
  204. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/libs/schema/extract_docstring.py +0 -0
  205. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/libs/schema/function_to_schema.py +0 -0
  206. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/libs/schema/load_pydantic_model_from_schema.py +0 -0
  207. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/libs/schema/minimal_yaml.py +0 -0
  208. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/libs/validate/__init__.py +0 -0
  209. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/libs/validate/common_field_validators.py +0 -0
  210. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/libs/validate/to_num.py +0 -0
  211. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/libs/validate/validate_boolean.py +0 -0
  212. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/_async_call.py +0 -0
  213. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/_hash.py +0 -0
  214. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/_json_dump.py +0 -0
  215. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/_list_call.py +0 -0
  216. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/_to_list.py +0 -0
  217. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/_utils.py +0 -0
  218. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/concurrency/__init__.py +0 -0
  219. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/concurrency/_compat.py +0 -0
  220. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/concurrency/cancel.py +0 -0
  221. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/concurrency/errors.py +0 -0
  222. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/concurrency/patterns.py +0 -0
  223. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/concurrency/resource_tracker.py +0 -0
  224. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/concurrency/utils.py +0 -0
  225. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/fuzzy/__init__.py +0 -0
  226. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/fuzzy/_extract_json.py +0 -0
  227. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/fuzzy/_fuzzy_json.py +0 -0
  228. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/fuzzy/_fuzzy_match.py +0 -0
  229. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/fuzzy/_fuzzy_validate.py +0 -0
  230. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/fuzzy/_string_similarity.py +0 -0
  231. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/fuzzy/_to_dict.py +0 -0
  232. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/ln/types.py +0 -0
  233. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/models/__init__.py +0 -0
  234. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/models/model_params.py +0 -0
  235. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/models/operable_model.py +0 -0
  236. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/models/schema_model.py +0 -0
  237. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/ReAct/__init__.py +0 -0
  238. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/ReAct/utils.py +0 -0
  239. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/__init__.py +0 -0
  240. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/_visualize_graph.py +0 -0
  241. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/act/__init__.py +0 -0
  242. {lionagi-0.18.0/lionagi/operations/brainstorm → lionagi-0.18.1/lionagi/operations/chat}/__init__.py +0 -0
  243. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/chat/chat.py +0 -0
  244. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/communicate/__init__.py +0 -0
  245. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/communicate/communicate.py +0 -0
  246. {lionagi-0.18.0/lionagi/operations/chat → lionagi-0.18.1/lionagi/operations/interpret}/__init__.py +0 -0
  247. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/interpret/interpret.py +0 -0
  248. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/manager.py +0 -0
  249. {lionagi-0.18.0/lionagi/operations/instruct → lionagi-0.18.1/lionagi/operations/operate}/__init__.py +0 -0
  250. {lionagi-0.18.0/lionagi/operations/interpret → lionagi-0.18.1/lionagi/operations/parse}/__init__.py +0 -0
  251. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/operations/parse/parse.py +0 -0
  252. {lionagi-0.18.0/lionagi/operations/operate → lionagi-0.18.1/lionagi/operations/select}/__init__.py +0 -0
  253. {lionagi-0.18.0/lionagi/operations/parse → lionagi-0.18.1/lionagi/protocols}/__init__.py +0 -0
  254. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/_concepts.py +0 -0
  255. {lionagi-0.18.0/lionagi/operations/select → lionagi-0.18.1/lionagi/protocols/action}/__init__.py +0 -0
  256. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/action/function_calling.py +0 -0
  257. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/action/tool.py +0 -0
  258. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/generic/event.py +0 -0
  259. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/generic/log.py +0 -0
  260. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/generic/processor.py +0 -0
  261. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/graph/__init__.py +0 -0
  262. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/graph/graph.py +0 -0
  263. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/graph/node.py +0 -0
  264. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/messages/action_request.py +0 -0
  265. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/messages/action_response.py +0 -0
  266. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/messages/assistant_response.py +0 -0
  267. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/messages/manager.py +0 -0
  268. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/messages/message.py +0 -0
  269. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/protocols/messages/system.py +0 -0
  270. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/py.typed +0 -0
  271. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/__init__.py +0 -0
  272. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/broadcaster.py +0 -0
  273. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/connections/api_calling.py +0 -0
  274. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/connections/endpoint.py +0 -0
  275. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/connections/endpoint_config.py +0 -0
  276. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/connections/header_factory.py +0 -0
  277. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/connections/match_endpoint.py +0 -0
  278. {lionagi-0.18.0/lionagi/protocols → lionagi-0.18.1/lionagi/service/connections/mcp}/__init__.py +0 -0
  279. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/connections/mcp/wrapper.py +0 -0
  280. {lionagi-0.18.0/lionagi/protocols/action → lionagi-0.18.1/lionagi/service/connections/providers}/__init__.py +0 -0
  281. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/connections/providers/anthropic_.py +0 -0
  282. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/connections/providers/exa_.py +0 -0
  283. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/connections/providers/nvidia_nim_.py +0 -0
  284. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/connections/providers/oai_.py +0 -0
  285. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/connections/providers/ollama_.py +0 -0
  286. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/connections/providers/perplexity_.py +0 -0
  287. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/hooks/__init__.py +0 -0
  288. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/manager.py +0 -0
  289. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/rate_limited_processor.py +0 -0
  290. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/resilience.py +0 -0
  291. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/third_party/README.md +0 -0
  292. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/third_party/__init__.py +0 -0
  293. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/third_party/anthropic_models.py +0 -0
  294. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/third_party/exa_models.py +0 -0
  295. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/service/third_party/pplx_models.py +0 -0
  296. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/session/__init__.py +0 -0
  297. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/session/prompts.py +0 -0
  298. {lionagi-0.18.0/lionagi/protocols/forms → lionagi-0.18.1/lionagi/tools}/__init__.py +0 -0
  299. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/tools/base.py +0 -0
  300. {lionagi-0.18.0/lionagi/protocols/generic → lionagi-0.18.1/lionagi/tools/file}/__init__.py +0 -0
  301. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/tools/file/reader.py +0 -0
  302. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/tools/types.py +0 -0
  303. {lionagi-0.18.0 → lionagi-0.18.1}/lionagi/utils.py +0 -0
  304. {lionagi-0.18.0 → lionagi-0.18.1}/main.py +0 -0
  305. {lionagi-0.18.0 → lionagi-0.18.1}/mkdocs.yml +0 -0
  306. {lionagi-0.18.0 → lionagi-0.18.1}/scripts/README.md +0 -0
  307. {lionagi-0.18.0 → lionagi-0.18.1}/scripts/update_openai_models.py +0 -0
@@ -5,11 +5,7 @@ concurrency = thread,multiprocessing
5
5
  omit =
6
6
  tests/*
7
7
  lionagi/service/third_party/*
8
- lionagi/operations/brainstorm/*
9
- lionagi/operations/plan/*
10
- lionagi/operations/select/*
11
8
  lionagi/operations/_visualize_graph.py
12
- lionagi/operations/types.py
13
9
  lionagi/tools/file/reader.py
14
10
  lionagi/tools/types.py
15
11
  lionagi/_types.py
@@ -1,31 +1,37 @@
1
1
  # Repository Guidelines
2
2
 
3
3
  ## Project Structure & Module Organization
4
+
4
5
  - Core runtime lives in `lionagi/` with subpackages for adapters, operations, session orchestration, protocol definitions, and tool integrations.
5
6
  - Reusable assets, demos, and reference notebooks sit under `assets/`, `cookbooks/`, and `notebooks/`; automation scripts are in `scripts/`.
6
7
  - Tests mirror the package layout in `tests/` (for example `tests/session/`, `tests/operations/`) with shared fixtures in `tests/fixtures/`.
7
8
  - Documentation sources are maintained in `docs/` (MkDocs) and long-form guides in `CLAUDE.md`; published artifacts land in `site/` after builds.
8
9
 
9
10
  ## Build, Test, and Development Commands
11
+
10
12
  - Install or update the environment with `uv sync --dev`; this pulls project and tooling dependencies from `pyproject.toml` / `uv.lock`.
11
13
  - Run the full suite via `uv run pytest`; pass `-m "not slow"` or `-k session` to target subsets while retaining pytest defaults (parallel, strict markers).
12
14
  - Format and lint before committing: `uv run black .`, `uv run ruff check lionagi tests`, and `pre-commit run --all-files` for the configured hook chain.
13
15
 
14
16
  ## Coding Style & Naming Conventions
17
+
15
18
  - Follow Black’s 79-character line length and isort’s Black profile; keep imports grouped standard/third-party/local.
16
19
  - Prefer explicit type hints and Pydantic models for structured data; name modules and directories in snake_case, classes in PascalCase, async coroutines with `_async` suffix when clarity helps.
17
20
  - Avoid introducing new global state; prefer dependency injection through service or session layers within `lionagi/`.
18
21
 
19
22
  ## Testing Guidelines
23
+
20
24
  - Place unit tests adjacent to the relevant module subtree (`tests/operations/test_branch.py`, etc.) using filenames that start with `test_` and classes prefixed `Test`.
21
25
  - Leverage pytest markers declared in `pyproject.toml` (`unit`, `integration`, `slow`, `performance`); mark long-running or network-dependent flows to keep CI lean.
22
26
  - Maintain coverage by extending fixtures and factories in `tests/fixtures/`; include regression cases for bugs and concurrency edge scenarios.
23
27
 
24
28
  ## Commit & Pull Request Guidelines
29
+
25
30
  - Match the existing history: concise, sentence-case summaries in the imperative voice (e.g., `Improve session retry logic`).
26
31
  - Each PR should describe scope, testing evidence (`uv run pytest` output, linting), linked GitHub issues, and screenshots or logs for UX-facing changes.
27
32
  - Keep changesets focused, update `docs/` or `mkdocs.yml` alongside API changes, and request reviews once CI is green.
28
33
 
29
34
  ## Documentation & Configuration Notes
35
+
30
36
  - Keep `.env.example` aligned with new configuration keys; avoid committing real secrets or API tokens.
31
37
  - When altering public interfaces, update `docs/` and regenerate the MkDocs site with `uv run mkdocs build` to verify navigation.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: lionagi
3
- Version: 0.18.0
3
+ Version: 0.18.1
4
4
  Summary: An Intelligence Operating System.
5
5
  Author-email: HaiyangLi <quantocean.li@gmail.com>
6
6
  License: Apache License
@@ -227,7 +227,7 @@ Requires-Dist: json-repair>=0.40.0
227
227
  Requires-Dist: msgspec>=0.18.0
228
228
  Requires-Dist: pydantic-settings>=2.8.0
229
229
  Requires-Dist: pydantic>=2.8.0
230
- Requires-Dist: pydapter[pandas]>=1.1.1
230
+ Requires-Dist: pydapter[pandas]>=1.2.0
231
231
  Requires-Dist: python-dotenv>=1.1.0
232
232
  Requires-Dist: tiktoken>=0.9.0
233
233
  Provides-Extra: all
@@ -240,6 +240,7 @@ Requires-Dist: networkx>=3.0.0; extra == 'all'
240
240
  Requires-Dist: ollama>=0.4.0; extra == 'all'
241
241
  Requires-Dist: pydapter[postgres]; extra == 'all'
242
242
  Requires-Dist: rich>=13.0.0; extra == 'all'
243
+ Requires-Dist: xmltodict>=0.12.0; extra == 'all'
243
244
  Provides-Extra: graph
244
245
  Requires-Dist: matplotlib>=3.7.0; extra == 'graph'
245
246
  Requires-Dist: networkx>=3.0.0; extra == 'graph'
@@ -465,13 +466,13 @@ from lionagi.fields import LIST_INSTRUCT_FIELD_MODEL, Instruct
465
466
  response3 = await orchestrator.operate(
466
467
  instruct=Instruct(
467
468
  instruction="create 4 research questions for parallel discovery",
468
- guidance="put into `instruct_models` field as part of your structured result message",
469
+ guidance="put into `instruct_model` field as part of your structured result message",
469
470
  context="I'd like to create an orchestration system for AI agents using lionagi"
470
471
  ),
471
472
  field_models=[LIST_INSTRUCT_FIELD_MODEL],
472
473
  )
473
474
 
474
- len(response3.instruct_models) # should be 4
475
+ len(response3.instruct_model) # should be 4
475
476
 
476
477
  async def handle_instruct(instruct):
477
478
  sub_branch = Branch(
@@ -482,7 +483,7 @@ async def handle_instruct(instruct):
482
483
 
483
484
  # run in parallel across all instruct models
484
485
  from lionagi.ln import alcall
485
- responses = await alcall(response3.instruct_models, handle_instruct)
486
+ responses = await alcall(response3.instruct_model, handle_instruct)
486
487
 
487
488
  # now hand these reports back to the orchestrator
488
489
  final_response = await orchestrator.communicate(
@@ -202,13 +202,13 @@ from lionagi.fields import LIST_INSTRUCT_FIELD_MODEL, Instruct
202
202
  response3 = await orchestrator.operate(
203
203
  instruct=Instruct(
204
204
  instruction="create 4 research questions for parallel discovery",
205
- guidance="put into `instruct_models` field as part of your structured result message",
205
+ guidance="put into `instruct_model` field as part of your structured result message",
206
206
  context="I'd like to create an orchestration system for AI agents using lionagi"
207
207
  ),
208
208
  field_models=[LIST_INSTRUCT_FIELD_MODEL],
209
209
  )
210
210
 
211
- len(response3.instruct_models) # should be 4
211
+ len(response3.instruct_model) # should be 4
212
212
 
213
213
  async def handle_instruct(instruct):
214
214
  sub_branch = Branch(
@@ -219,7 +219,7 @@ async def handle_instruct(instruct):
219
219
 
220
220
  # run in parallel across all instruct models
221
221
  from lionagi.ln import alcall
222
- responses = await alcall(response3.instruct_models, handle_instruct)
222
+ responses = await alcall(response3.instruct_model, handle_instruct)
223
223
 
224
224
  # now hand these reports back to the orchestrator
225
225
  final_response = await orchestrator.communicate(