quantalogic 0.35.0__py3-none-any.whl → 0.50.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 (107) hide show
  1. quantalogic/__init__.py +0 -4
  2. quantalogic/agent.py +603 -363
  3. quantalogic/agent_config.py +233 -46
  4. quantalogic/agent_factory.py +34 -22
  5. quantalogic/coding_agent.py +16 -14
  6. quantalogic/config.py +2 -1
  7. quantalogic/console_print_events.py +4 -8
  8. quantalogic/console_print_token.py +2 -2
  9. quantalogic/docs_cli.py +15 -10
  10. quantalogic/event_emitter.py +258 -83
  11. quantalogic/flow/__init__.py +23 -0
  12. quantalogic/flow/flow.py +595 -0
  13. quantalogic/flow/flow_extractor.py +672 -0
  14. quantalogic/flow/flow_generator.py +89 -0
  15. quantalogic/flow/flow_manager.py +407 -0
  16. quantalogic/flow/flow_manager_schema.py +169 -0
  17. quantalogic/flow/flow_yaml.md +419 -0
  18. quantalogic/generative_model.py +109 -77
  19. quantalogic/get_model_info.py +5 -5
  20. quantalogic/interactive_text_editor.py +100 -73
  21. quantalogic/main.py +17 -21
  22. quantalogic/model_info_list.py +3 -3
  23. quantalogic/model_info_litellm.py +14 -14
  24. quantalogic/prompts.py +2 -1
  25. quantalogic/{llm.py → quantlitellm.py} +29 -39
  26. quantalogic/search_agent.py +4 -4
  27. quantalogic/server/models.py +4 -1
  28. quantalogic/task_file_reader.py +5 -5
  29. quantalogic/task_runner.py +20 -20
  30. quantalogic/tool_manager.py +10 -21
  31. quantalogic/tools/__init__.py +98 -68
  32. quantalogic/tools/composio/composio.py +416 -0
  33. quantalogic/tools/{generate_database_report_tool.py → database/generate_database_report_tool.py} +4 -9
  34. quantalogic/tools/database/sql_query_tool_advanced.py +261 -0
  35. quantalogic/tools/document_tools/markdown_to_docx_tool.py +620 -0
  36. quantalogic/tools/document_tools/markdown_to_epub_tool.py +438 -0
  37. quantalogic/tools/document_tools/markdown_to_html_tool.py +362 -0
  38. quantalogic/tools/document_tools/markdown_to_ipynb_tool.py +319 -0
  39. quantalogic/tools/document_tools/markdown_to_latex_tool.py +420 -0
  40. quantalogic/tools/document_tools/markdown_to_pdf_tool.py +623 -0
  41. quantalogic/tools/document_tools/markdown_to_pptx_tool.py +319 -0
  42. quantalogic/tools/duckduckgo_search_tool.py +2 -4
  43. quantalogic/tools/finance/alpha_vantage_tool.py +440 -0
  44. quantalogic/tools/finance/ccxt_tool.py +373 -0
  45. quantalogic/tools/finance/finance_llm_tool.py +387 -0
  46. quantalogic/tools/finance/google_finance.py +192 -0
  47. quantalogic/tools/finance/market_intelligence_tool.py +520 -0
  48. quantalogic/tools/finance/technical_analysis_tool.py +491 -0
  49. quantalogic/tools/finance/tradingview_tool.py +336 -0
  50. quantalogic/tools/finance/yahoo_finance.py +236 -0
  51. quantalogic/tools/git/bitbucket_clone_repo_tool.py +181 -0
  52. quantalogic/tools/git/bitbucket_operations_tool.py +326 -0
  53. quantalogic/tools/git/clone_repo_tool.py +189 -0
  54. quantalogic/tools/git/git_operations_tool.py +532 -0
  55. quantalogic/tools/google_packages/google_news_tool.py +480 -0
  56. quantalogic/tools/grep_app_tool.py +123 -186
  57. quantalogic/tools/{dalle_e.py → image_generation/dalle_e.py} +37 -27
  58. quantalogic/tools/jinja_tool.py +6 -10
  59. quantalogic/tools/language_handlers/__init__.py +22 -9
  60. quantalogic/tools/list_directory_tool.py +131 -42
  61. quantalogic/tools/llm_tool.py +45 -15
  62. quantalogic/tools/llm_vision_tool.py +59 -7
  63. quantalogic/tools/markitdown_tool.py +17 -5
  64. quantalogic/tools/nasa_packages/models.py +47 -0
  65. quantalogic/tools/nasa_packages/nasa_apod_tool.py +232 -0
  66. quantalogic/tools/nasa_packages/nasa_neows_tool.py +147 -0
  67. quantalogic/tools/nasa_packages/services.py +82 -0
  68. quantalogic/tools/presentation_tools/presentation_llm_tool.py +396 -0
  69. quantalogic/tools/product_hunt/product_hunt_tool.py +258 -0
  70. quantalogic/tools/product_hunt/services.py +63 -0
  71. quantalogic/tools/rag_tool/__init__.py +48 -0
  72. quantalogic/tools/rag_tool/document_metadata.py +15 -0
  73. quantalogic/tools/rag_tool/query_response.py +20 -0
  74. quantalogic/tools/rag_tool/rag_tool.py +566 -0
  75. quantalogic/tools/rag_tool/rag_tool_beta.py +264 -0
  76. quantalogic/tools/read_html_tool.py +24 -38
  77. quantalogic/tools/replace_in_file_tool.py +10 -10
  78. quantalogic/tools/safe_python_interpreter_tool.py +10 -24
  79. quantalogic/tools/search_definition_names.py +2 -2
  80. quantalogic/tools/sequence_tool.py +14 -23
  81. quantalogic/tools/sql_query_tool.py +17 -19
  82. quantalogic/tools/tool.py +39 -15
  83. quantalogic/tools/unified_diff_tool.py +1 -1
  84. quantalogic/tools/utilities/csv_processor_tool.py +234 -0
  85. quantalogic/tools/utilities/download_file_tool.py +179 -0
  86. quantalogic/tools/utilities/mermaid_validator_tool.py +661 -0
  87. quantalogic/tools/utils/__init__.py +1 -4
  88. quantalogic/tools/utils/create_sample_database.py +24 -38
  89. quantalogic/tools/utils/generate_database_report.py +74 -82
  90. quantalogic/tools/wikipedia_search_tool.py +17 -21
  91. quantalogic/utils/ask_user_validation.py +1 -1
  92. quantalogic/utils/async_utils.py +35 -0
  93. quantalogic/utils/check_version.py +3 -5
  94. quantalogic/utils/get_all_models.py +2 -1
  95. quantalogic/utils/git_ls.py +21 -7
  96. quantalogic/utils/lm_studio_model_info.py +9 -7
  97. quantalogic/utils/python_interpreter.py +113 -43
  98. quantalogic/utils/xml_utility.py +178 -0
  99. quantalogic/version_check.py +1 -1
  100. quantalogic/welcome_message.py +7 -7
  101. quantalogic/xml_parser.py +0 -1
  102. {quantalogic-0.35.0.dist-info → quantalogic-0.50.0.dist-info}/METADATA +40 -1
  103. quantalogic-0.50.0.dist-info/RECORD +148 -0
  104. quantalogic-0.35.0.dist-info/RECORD +0 -102
  105. {quantalogic-0.35.0.dist-info → quantalogic-0.50.0.dist-info}/LICENSE +0 -0
  106. {quantalogic-0.35.0.dist-info → quantalogic-0.50.0.dist-info}/WHEEL +0 -0
  107. {quantalogic-0.35.0.dist-info → quantalogic-0.50.0.dist-info}/entry_points.txt +0 -0
@@ -0,0 +1,178 @@
1
+ import re
2
+ from typing import List, Type, TypeVar
3
+
4
+ from lxml import etree
5
+ from pydantic import BaseModel, Field
6
+
7
+ # Type variable for Pydantic model compatibility
8
+ T = TypeVar("T", bound=BaseModel)
9
+
10
+
11
+ def get_localname(tag: str) -> str:
12
+ """
13
+ Extract the local name from a namespaced tag.
14
+
15
+ Args:
16
+ tag: The tag name, potentially with a namespace (e.g., '{http://example.com}name').
17
+
18
+ Returns:
19
+ The tag’s local name (e.g., 'name').
20
+ """
21
+ return re.sub(r"^\{.*\}", "", tag)
22
+
23
+
24
+ def element_to_dict(element):
25
+ """
26
+ Recursively convert an XML element to a dictionary for Pydantic parsing.
27
+
28
+ Args:
29
+ element: An lxml.etree.Element object.
30
+
31
+ Returns:
32
+ A dictionary representing the element’s structure.
33
+ - Attributes use '@' prefix (e.g., '@id').
34
+ - Text content (including CDATA) is stored as '#text'.
35
+ - Repeated tags become lists.
36
+ """
37
+ result = {}
38
+
39
+ # Capture attributes with '@' prefix
40
+ if element.attrib:
41
+ for key, value in element.attrib.items():
42
+ result[f"@{get_localname(key)}"] = value
43
+
44
+ # Handle text content (including CDATA) if present
45
+ if element.text and element.text.strip():
46
+ result["#text"] = element.text.strip()
47
+
48
+ # Process child elements
49
+ for child in element:
50
+ child_dict = element_to_dict(child)
51
+ local_tag = get_localname(child.tag)
52
+
53
+ if local_tag in result:
54
+ # Convert to list for repeated tags
55
+ if not isinstance(result[local_tag], list):
56
+ result[local_tag] = [result[local_tag]]
57
+ result[local_tag].append(child_dict)
58
+ else:
59
+ result[local_tag] = child_dict
60
+
61
+ # For simple leaf elements with no children, attributes or just text content
62
+ # This optimization avoids unnecessary nesting but preserves structure for complex types
63
+ if (
64
+ len(element) == 0
65
+ and not element.attrib
66
+ and len(result) == 1
67
+ and "#text" in result
68
+ and
69
+ # Don't simplify these elements, they should remain as dictionaries
70
+ get_localname(element.tag) not in ["description"]
71
+ ):
72
+ return result["#text"]
73
+
74
+ return result
75
+
76
+
77
+ def parse_xml_to_model(xml_content: str, model: Type[T]) -> T:
78
+ """
79
+ Parse XML content into a Pydantic V2 model instance with fault tolerance.
80
+
81
+ Args:
82
+ xml_content: A string of XML data.
83
+ model: The Pydantic model class to instantiate.
84
+
85
+ Returns:
86
+ An instance of the specified Pydantic model, using defaults for missing fields.
87
+
88
+ Raises:
89
+ etree.XMLSyntaxError: If XML parsing fails despite recovery attempts.
90
+ pydantic.ValidationError: If data doesn’t match the model (after defaults).
91
+ """
92
+ # Parse XML with fault-tolerant settings
93
+ parser = etree.XMLParser(recover=True)
94
+ root = etree.fromstring(xml_content, parser=parser)
95
+ # Convert to dictionary
96
+ data = element_to_dict(root)
97
+ # Validate and create Pydantic model instance, applying defaults
98
+ return model.model_validate(data)
99
+
100
+
101
+ # Test Models with Default Values
102
+ class Person(BaseModel):
103
+ name: str = "Unnamed" # Default value for missing name
104
+ age: int = 0 # Default value for missing age
105
+
106
+
107
+ class Description(BaseModel):
108
+ content: str = Field(default="No description", alias="#text")
109
+ type: str = Field(default="unknown", alias="@type")
110
+
111
+
112
+ class Item(BaseModel):
113
+ description: Description = Field(default_factory=lambda: Description(content="Default content", type="default"))
114
+
115
+
116
+ class People(BaseModel):
117
+ person: List[Person] = Field(default_factory=lambda: [Person(name="Default Person", age=99)])
118
+
119
+
120
+ def main():
121
+ """Run example tests to demonstrate XML parsing with Pydantic default values."""
122
+ # Test 1: Simple XML with all fields present
123
+ print("Test 1: Simple XML (all fields present)")
124
+ xml1 = """
125
+ <person>
126
+ <name>John</name>
127
+ <age>30</age>
128
+ </person>
129
+ """
130
+ person = parse_xml_to_model(xml1, Person)
131
+ print(f"Result: {person}")
132
+
133
+ # Test 2: Missing element (use default for age)
134
+ print("\nTest 2: Missing element (default age)")
135
+ xml2 = """
136
+ <person>
137
+ <name>Jane</name>
138
+ </person>
139
+ """
140
+ person = parse_xml_to_model(xml2, Person)
141
+ print(f"Result: {person}")
142
+
143
+ # Test 3: Attributes and CDATA with missing attribute
144
+ print("\nTest 3: Missing attribute (default type)")
145
+ xml3 = """
146
+ <item>
147
+ <description><![CDATA[This is text]]></description>
148
+ </item>
149
+ """
150
+ item = parse_xml_to_model(xml3, Item)
151
+ print(f"Result: {item}")
152
+
153
+ # Test 4: Empty XML (use default for nested object)
154
+ print("\nTest 4: Empty XML (default Item)")
155
+ xml4 = "<item></item>"
156
+ item = parse_xml_to_model(xml4, Item)
157
+ print(f"Result: {item}")
158
+
159
+ # Test 5: Repeated elements with partial data
160
+ print("\nTest 5: Repeated elements (partial data)")
161
+ xml5 = """
162
+ <people>
163
+ <person><name>John</name></person>
164
+ <person><age>25</age></person>
165
+ </people>
166
+ """
167
+ people = parse_xml_to_model(xml5, People)
168
+ print(f"Result: {people}")
169
+
170
+ # Test 6: Completely empty root (use default list)
171
+ print("\nTest 6: Empty root (default People)")
172
+ xml6 = "<people></people>"
173
+ people = parse_xml_to_model(xml6, People)
174
+ print(f"Result: {people}")
175
+
176
+
177
+ if __name__ == "__main__":
178
+ main()
@@ -11,7 +11,7 @@ from quantalogic.version import get_version
11
11
 
12
12
  def check_new_version() -> None:
13
13
  """Randomly check for updates and display a notification if a new version is available.
14
-
14
+
15
15
  This function has a 1 in 10 chance of running when called. When it runs, it checks
16
16
  if there's a newer version of the package available and displays an update panel
17
17
  with installation instructions if a new version is found.
@@ -35,16 +35,16 @@ def create_tips_section() -> str:
35
35
 
36
36
  def display_welcome_message(
37
37
  console: Console,
38
- model_name: str,
38
+ model_name: str,
39
39
  version: str,
40
- vision_model_name: str | None = None,
41
- max_iterations: int = 50,
40
+ vision_model_name: str | None = None,
41
+ max_iterations: int = 50,
42
42
  compact_every_n_iteration: int | None = None,
43
43
  max_tokens_working_memory: int | None = None,
44
44
  mode: str = "basic",
45
45
  ) -> None:
46
46
  """Display a welcome message and instructions for the QuantaLogic AI Assistant.
47
-
47
+
48
48
  Args:
49
49
  console: Rich Console instance for rendering output
50
50
  model_name: Name of the language model being used
@@ -63,7 +63,7 @@ def display_welcome_message(
63
63
  compact_every_n_iteration,
64
64
  max_tokens_working_memory,
65
65
  )
66
-
66
+
67
67
  tips_section = create_tips_section()
68
68
 
69
69
  welcome_content = (
@@ -74,7 +74,7 @@ def display_welcome_message(
74
74
  "[bold magenta]Pro Tips[/bold magenta]\n"
75
75
  f"{tips_section}\n"
76
76
  )
77
-
77
+
78
78
  welcome_panel = Panel(
79
79
  welcome_content,
80
80
  border_style="blue",
@@ -82,5 +82,5 @@ def display_welcome_message(
82
82
  subtitle="[bold cyan]Ready to assist you[/bold cyan]",
83
83
  padding=(1, 2),
84
84
  )
85
-
85
+
86
86
  console.print(welcome_panel)
quantalogic/xml_parser.py CHANGED
@@ -302,4 +302,3 @@ if __name__ == "__main__":
302
302
  print(parsed_values["action"])
303
303
  action = parser.extract_elements(text=xml_content, element_names=["action"])
304
304
  print(action["action"])
305
-
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: quantalogic
3
- Version: 0.35.0
3
+ Version: 0.50.0
4
4
  Summary: QuantaLogic ReAct Agents
5
5
  Author: Raphaël MANSUY
6
6
  Author-email: raphael.mansuy@gmail.com
@@ -9,20 +9,41 @@ Classifier: Programming Language :: Python :: 3
9
9
  Classifier: Programming Language :: Python :: 3.12
10
10
  Classifier: Programming Language :: Python :: 3.13
11
11
  Requires-Dist: beautifulsoup4 (>=4.12.3,<5.0.0)
12
+ Requires-Dist: bibtexparser (>=1.4.3,<2.0.0)
12
13
  Requires-Dist: boto3 (>=1.35.86,<2.0.0)
14
+ Requires-Dist: ccxt (>=4.4.61,<5.0.0)
15
+ Requires-Dist: chromadb (>=0.6.3,<0.7.0)
13
16
  Requires-Dist: click (>=8.1.8,<9.0.0)
17
+ Requires-Dist: composio (>=0.1.1,<0.2.0)
14
18
  Requires-Dist: duckduckgo-search (>=7.2.1,<8.0.0)
19
+ Requires-Dist: ebooklib (>=0.18,<0.19)
20
+ Requires-Dist: epub (>=0.5.2,<0.6.0)
21
+ Requires-Dist: faiss-cpu (>=1.10.0,<2.0.0)
15
22
  Requires-Dist: faker (>=33.3.1,<34.0.0)
16
23
  Requires-Dist: fastapi (>=0.115.6,<0.116.0)
17
24
  Requires-Dist: fuzzywuzzy (>=0.18.0,<0.19.0)
25
+ Requires-Dist: gitpython (>=3.1.44,<4.0.0)
26
+ Requires-Dist: gnews (>=0.4.0,<0.5.0)
18
27
  Requires-Dist: google-auth (>=2.20.0,<3.0.0)
19
28
  Requires-Dist: google-search-results (>=2.4.2,<3.0.0)
29
+ Requires-Dist: html2text (>=2024.2.26,<2025.0.0)
30
+ Requires-Dist: instructor (>=1.7.2,<2.0.0)
31
+ Requires-Dist: ipython (>=8.32.0,<9.0.0)
20
32
  Requires-Dist: jinja2 (>=3.1.5,<4.0.0)
21
33
  Requires-Dist: litellm (>=1.56.4,<2.0.0)
34
+ Requires-Dist: llama-index (>=0.12.19,<0.13.0)
35
+ Requires-Dist: llama-index-embeddings-bedrock (>=0.5.0,<0.6.0)
36
+ Requires-Dist: llama-index-embeddings-huggingface (>=0.5.1,<0.6.0)
37
+ Requires-Dist: llama-index-embeddings-instructor (>=0.3.0,<0.4.0)
38
+ Requires-Dist: llama-index-embeddings-openai (>=0.3.1,<0.4.0)
39
+ Requires-Dist: llama-index-vector-stores-chroma (>=0.4.1,<0.5.0)
40
+ Requires-Dist: llama-index-vector-stores-faiss (>=0.3.0,<0.4.0)
22
41
  Requires-Dist: llmlingua (>=0.2.2,<0.3.0)
23
42
  Requires-Dist: loguru (>=0.7.3,<0.8.0)
43
+ Requires-Dist: markdown (>=3.7,<4.0)
24
44
  Requires-Dist: markdownify (>=0.14.1,<0.15.0)
25
45
  Requires-Dist: markitdown (>=0.0.1a3,<0.0.2)
46
+ Requires-Dist: mermaid-py (>=0.7.0,<0.8.0)
26
47
  Requires-Dist: mkdocs-git-revision-date-localized-plugin (>=1.2.0,<2.0.0)
27
48
  Requires-Dist: mkdocs-macros-plugin (>=1.0.4,<2.0.0)
28
49
  Requires-Dist: mkdocs-material[imaging] (>=9.5.49,<10.0.0)
@@ -30,19 +51,32 @@ Requires-Dist: mkdocs-mermaid2-plugin (>=1.1.1,<2.0.0)
30
51
  Requires-Dist: mkdocs-minify-plugin (>=0.7.1,<0.8.0)
31
52
  Requires-Dist: mkdocstrings (>=0.24.0,<0.25.0)
32
53
  Requires-Dist: mkdocstrings-python (>=1.7.0,<2.0.0)
54
+ Requires-Dist: nbformat (>=5.10.4,<6.0.0)
33
55
  Requires-Dist: networkx (>=3.4.2,<4.0.0)
56
+ Requires-Dist: numpy (>=2.2.3,<3.0.0)
57
+ Requires-Dist: pandas (>=2.2.3,<3.0.0)
34
58
  Requires-Dist: pathspec (>=0.12.1,<0.13.0)
59
+ Requires-Dist: pillow (>=10.2,<11.0)
60
+ Requires-Dist: pinecone-client (>=6.0.0,<7.0.0)
35
61
  Requires-Dist: prompt-toolkit (>=3.0.48,<4.0.0)
36
62
  Requires-Dist: pydantic (>=2.10.4,<3.0.0)
63
+ Requires-Dist: pygments (>=2.19.1,<3.0.0)
37
64
  Requires-Dist: pymdown-extensions (>=10.3.1,<11.0.0)
65
+ Requires-Dist: pypdf (>=5.3.0,<6.0.0)
66
+ Requires-Dist: python-docx (>=1.1.2,<2.0.0)
38
67
  Requires-Dist: python-dotenv (>=1.0.1,<2.0.0)
39
68
  Requires-Dist: python-levenshtein (>=0.26.1,<0.27.0)
69
+ Requires-Dist: python-multipart (>=0.0.20,<0.0.21)
70
+ Requires-Dist: python-pptx (>=1.0.2,<2.0.0)
40
71
  Requires-Dist: requests (>=2.32.3,<3.0.0)
41
72
  Requires-Dist: rich (>=13.9.4,<14.0.0)
42
73
  Requires-Dist: serpapi (>=0.1.5,<0.2.0)
43
74
  Requires-Dist: sqlalchemy (>=2.0.37,<3.0.0)
75
+ Requires-Dist: ta (>=0.11.0,<0.12.0)
44
76
  Requires-Dist: tenacity (>=9.0.0,<10.0.0)
45
77
  Requires-Dist: toml (>=0.10.2,<0.11.0)
78
+ Requires-Dist: torch (>=2.6.0,<3.0.0)
79
+ Requires-Dist: transformers (>=4.49.0,<5.0.0)
46
80
  Requires-Dist: tree-sitter (>=0.23.2,<0.24.0)
47
81
  Requires-Dist: tree-sitter-c (>=0.23.4,<0.24.0)
48
82
  Requires-Dist: tree-sitter-cpp (>=0.23.4,<0.24.0)
@@ -55,7 +89,9 @@ Requires-Dist: tree-sitter-scala (>=0.23.4,<0.24.0)
55
89
  Requires-Dist: tree-sitter-typescript (>=0.23.2,<0.24.0)
56
90
  Requires-Dist: types-requests (>=2.32.0.20241016,<3.0.0.0)
57
91
  Requires-Dist: uvicorn (>=0.34.0,<0.35.0)
92
+ Requires-Dist: weasyprint (>=64.0,<65.0)
58
93
  Requires-Dist: websocket (>=0.2.1,<0.3.0)
94
+ Requires-Dist: yfinance (>=0.2.53,<0.3.0)
59
95
  Description-Content-Type: text/markdown
60
96
 
61
97
  # QuantaLogic
@@ -355,6 +391,9 @@ The core agent implements the `ReAct`paradigm, combining:
355
391
  - Event handling
356
392
  - Task validation
357
393
 
394
+ QuantaLogic offers both synchronous (`solve_task`) and asynchronous (`async_solve_task`) methods for solving tasks using the ReAct framework. The `async_solve_task` function is specifically designed for asynchronous environments like web servers, allowing for non-blocking execution and improved responsiveness. It takes a task description as input and iteratively reasons and acts upon it using available tools until the task is completed or a maximum number of iterations is reached. This asynchronous approach ensures that the agent can handle complex tasks without tying up resources, making it suitable for applications requiring concurrency and scalability.
395
+
396
+
358
397
  ```python
359
398
  from quantalogic import Agent
360
399
  from quantalogic.tools import PythonTool, ReadFileTool
@@ -0,0 +1,148 @@
1
+ quantalogic/__init__.py,sha256=TWC4r1-av6ZZ2RdZ4FBU0oPYZQVPOv0p6gmEey1e4lQ,776
2
+ quantalogic/agent.py,sha256=1sZfPmQGLG6sJKoeVp59JN666anywVRWkZk4xZT4160,43298
3
+ quantalogic/agent_config.py,sha256=RTB7VPK_Sxs1OqIDv1c3t9W25JRRfvpxMVmiumtzTVU,18012
4
+ quantalogic/agent_factory.py,sha256=pk_jTbRsrtXMFD42wBWncnm23zRucIjYC-EE3kHNTio,6264
5
+ quantalogic/coding_agent.py,sha256=K7BBE98l1wwE7USOTPWOnPA3jjSABkTzNPHNXx1cYWo,5492
6
+ quantalogic/config.py,sha256=lsJxfWFWEMqS2Asus8z4A3W7X8JWoMi3-VHxfltvSfA,423
7
+ quantalogic/console_print_events.py,sha256=yDtfOr7s5r_gLTgwkl_XoKSkUqNRZhqqq4hwR_oJsUw,2050
8
+ quantalogic/console_print_token.py,sha256=5IRVoPhwWZtSc4LpNoAsCQhCB_RnAW9chycGgyD3_5U,437
9
+ quantalogic/docs_cli.py,sha256=Ie6NwKQuxLKwVQ-cjhFMCttXeiHDjGhNY4hSmMtc0Qg,1664
10
+ quantalogic/event_emitter.py,sha256=e_1r6hvx5GmW84iuRkoqcjpjRiYHBk4hzujd5ZoUC6U,16777
11
+ quantalogic/flow/__init__.py,sha256=asLVwbDH6zVFhILschBOuZZWyKvMGdqhQbB1rd2RXHo,590
12
+ quantalogic/flow/flow.py,sha256=-rePJXUSZFpBkfhpoAHktX-ISSQSICyog9U7bXUMgow,24931
13
+ quantalogic/flow/flow_extractor.py,sha256=UsE8FP1NHlMQYyjmvsQQQvldKws5BshI4N-K234zJy0,29817
14
+ quantalogic/flow/flow_generator.py,sha256=WmRE3zcGpSryjmc8ambSDW2QVUbAXYo2VfANJP1x8po,3878
15
+ quantalogic/flow/flow_manager.py,sha256=UaI1MLThruGSDXAFVpLfCop5QrT2jh_UWWScc5ZE_nw,18065
16
+ quantalogic/flow/flow_manager_schema.py,sha256=BMy1hoEZCxRDcEXfG2u4pwwdfn10Y-iho37SO9Cii3c,7268
17
+ quantalogic/flow/flow_yaml.md,sha256=fHGL7xP8XA1mYk8PdJMN83nqUS9rETjzMPEjxR3l7H0,14462
18
+ quantalogic/generative_model.py,sha256=os30wdVRq3OsSf8M7TjoaGqJweL99UINQtSGCwoE91k,15913
19
+ quantalogic/get_model_info.py,sha256=RgblwjjP7G97v_AzoGbXxXBIO082jVCRmvRwxnEpW_s,2991
20
+ quantalogic/interactive_text_editor.py,sha256=CzefvRiLscFfOKBS4gmrI10Gn3SF_eS5zbiLVQ9Gugw,16334
21
+ quantalogic/main.py,sha256=jVw-s-ZUyX4krq3rzFn84-i6Qw2tplTx_QmsKG03m8I,9591
22
+ quantalogic/memory.py,sha256=zbtRuM05jaS2lJll-92dt5JfYVLERnF_m_9xqp2x-k0,6304
23
+ quantalogic/model_info.py,sha256=j7QqvjEFQDGpDOgQs8uTkVyI3a50Oa_nrsQjyxizTLc,272
24
+ quantalogic/model_info_list.py,sha256=Xeeb7QS4xEpe9ke7Guh0CxEx-Hl59U4kC-qzVts-eAU,2437
25
+ quantalogic/model_info_litellm.py,sha256=PoYCqqiKnKDIoeC_GdF17TNJV7aEj-tifyR79W5S9A8,1799
26
+ quantalogic/model_names.py,sha256=UZlz25zG9B2dpfwdw_e1Gw5qFsKQ7iME9FJh9Ts4u6s,938
27
+ quantalogic/prompts.py,sha256=Vtr-GXgJw7vFUv0okzSaLc1ak1sgOh4XoRa8EI01HDM,2988
28
+ quantalogic/quantlitellm.py,sha256=c8cWIq06-iwFVuB6aBoSCY1GPMmzKfr7pm2gfHfNj8Y,5526
29
+ quantalogic/search_agent.py,sha256=tr0cwscJ4wu_G1aumjFyvGHQ0eQv5OL5sxj17s6Ocls,2470
30
+ quantalogic/server/__init__.py,sha256=8sz_PYAUCrkM6JM5EAUeIzNM4NPW6j6UT72JVkc21WQ,91
31
+ quantalogic/server/agent_server.py,sha256=VXaaWqReUSZOCX7CaKS14jria8yZn1kLEc52E2hV7ZA,22510
32
+ quantalogic/server/models.py,sha256=_j6dAx3L_w0kiP55vcC5uykJJRfChV2K3uL_xAPnsms,1447
33
+ quantalogic/server/routes.py,sha256=00nFe6s0T4Gv8vCp0wQFjWGo1tC8FViH8h0koAJdWs4,4216
34
+ quantalogic/server/state.py,sha256=TwtL0BTp_LT-fynF1IR4k8WVXuxXWtSv3NgWG9fuUME,7369
35
+ quantalogic/server/static/js/event_visualizer.js,sha256=eFkkWyNZw3zOZlF18kxbfsWql8a2C13qBFEOAPzrj88,19646
36
+ quantalogic/server/static/js/quantalogic.js,sha256=x7TrlZGR1Y0WLK2DWl1xY847BhEWMPnL0Ua7KtOldUc,22311
37
+ quantalogic/server/templates/index.html,sha256=nDnXJoQEm1vXbhXtgaYk0G5VXj0wwzE6KrqEDhHFpj4,7773
38
+ quantalogic/task_file_reader.py,sha256=oPcB4vTxJ__Y8o7VVABIPOkVw3tGDMdQYwdK27PERlE,1440
39
+ quantalogic/task_runner.py,sha256=c2QVGKZfHA0wZIBUvehpjMvtRaKZuhuYQerjIiCC9iY,10053
40
+ quantalogic/tool_manager.py,sha256=vNA7aBKgdU3wpw_goom6i9rg_64pNZapNxvg4cUhhCI,6983
41
+ quantalogic/tools/__init__.py,sha256=7_IhMLCJW3Hj1Uo0bXqFqIP71YQ2VTLBPCFCX6AnSag,4212
42
+ quantalogic/tools/agent_tool.py,sha256=MXCXxWHRch7VK4UWhtRP1jeI8Np9Ne2CUGo8vm1oZiM,3064
43
+ quantalogic/tools/composio/composio.py,sha256=icVHA_Scr1pViBhahGGBGBRBl9JSB3hGSqpgQzAIUH8,17627
44
+ quantalogic/tools/database/generate_database_report_tool.py,sha256=lGgER2VuHqnxliPM806tbwJh7WRW9HJcbBLL7QMvVBQ,1861
45
+ quantalogic/tools/database/sql_query_tool_advanced.py,sha256=Vale-5nR3e-Mm4joOBII8T1PbLcshXYbM8Mp4TJsS30,9425
46
+ quantalogic/tools/document_tools/markdown_to_docx_tool.py,sha256=r5AOyQfpcDoqQ6_g2uYyVjTEPtfeNn4mDmmefNZmJyM,22553
47
+ quantalogic/tools/document_tools/markdown_to_epub_tool.py,sha256=iFIUTty7bIuOV7nbSfCuzBvOWJBmSP1TBFxf74184X4,14031
48
+ quantalogic/tools/document_tools/markdown_to_html_tool.py,sha256=ngwU3RAj05Ghua2yqmpkpws09XYfjDpcg4MuONHNvO8,12030
49
+ quantalogic/tools/document_tools/markdown_to_ipynb_tool.py,sha256=cL5-uTBud3VA80zFoBdN5Qzv-7q7r30BmP3lktLjHu4,10940
50
+ quantalogic/tools/document_tools/markdown_to_latex_tool.py,sha256=SxQ9gdDm2KuAuI4KYqDNCUVjEmjl7qreZr2eowrG8mo,14332
51
+ quantalogic/tools/document_tools/markdown_to_pdf_tool.py,sha256=EZOXPlF2pn10XzzOVFXqOopSP35tqXuj-YrFzeS5xQg,21077
52
+ quantalogic/tools/document_tools/markdown_to_pptx_tool.py,sha256=Bg79e1us2GAjB8vUa3COk2XgXM_FUQF28zWBIitYAC8,11085
53
+ quantalogic/tools/download_http_file_tool.py,sha256=wTfanbXjIRi5-qrbluuLvNmDNhvmYAnlMVb3dO8C2ss,2210
54
+ quantalogic/tools/duckduckgo_search_tool.py,sha256=oY-aW7zbo1f39DmjwGfaXVxXRi3pKgIuTPR1vCqsX9I,6991
55
+ quantalogic/tools/edit_whole_content_tool.py,sha256=nXmpAvojvqvAcqNMy1kUKZ1ocboky_ZcnCR4SNCSPgw,2360
56
+ quantalogic/tools/elixir_tool.py,sha256=fzPPtAW-Koy9KB0r5k2zV1f1U0WphL-LXPPOBkeNkug,7652
57
+ quantalogic/tools/execute_bash_command_tool.py,sha256=YK_cMuODJDOYheZKGmlpZTxJdVbimFLCUlND2_zmyMg,6869
58
+ quantalogic/tools/finance/alpha_vantage_tool.py,sha256=2nAOTGlxKePM2VnBOtDTfHJH4WgM8ys81WDGV2SDIgo,16526
59
+ quantalogic/tools/finance/ccxt_tool.py,sha256=kCLrAzy-Zc0Bz7Ey8Jdi9RhyaQp6L7d2Q3Mnu_lPueU,15411
60
+ quantalogic/tools/finance/finance_llm_tool.py,sha256=1_lBkYCSfzNPUpHn5P2sWh3D6vGYQk1UD_dTl1naT0U,15564
61
+ quantalogic/tools/finance/google_finance.py,sha256=wry0URGQmTUYbmOmCp3TxVvzVKcFtdVkihcuG-waG4U,7344
62
+ quantalogic/tools/finance/market_intelligence_tool.py,sha256=dPHOFZ18-AwVSuwkOKAE1kypdhrFP7EcZC6Ke4Izhcc,20320
63
+ quantalogic/tools/finance/technical_analysis_tool.py,sha256=n7opf4wP8ty2EystqISfXPN89YFi0n_nguaNgaQb0To,18497
64
+ quantalogic/tools/finance/tradingview_tool.py,sha256=n4JMFkZ5tdqhT9DGPUNgb1KPOTytYoPBvUhKd7hDczc,13629
65
+ quantalogic/tools/finance/yahoo_finance.py,sha256=xzH5Rikp_KXzcyVuXlZSty0PPO-pflp3mgfZn9bR-yY,9487
66
+ quantalogic/tools/git/bitbucket_clone_repo_tool.py,sha256=Vy3J802f7gPGrnbZhfWHN1Jb36gNNxuJ71k3VI2sZ-Q,7491
67
+ quantalogic/tools/git/bitbucket_operations_tool.py,sha256=6Vdelau1VSTYREtuQgHlV-t6Te-RuQKA6oCuLUkDDcc,11802
68
+ quantalogic/tools/git/clone_repo_tool.py,sha256=FA_29pmEsy_71YSrt94M0rAUNt_rEo4TDvq2Y7-uinU,7565
69
+ quantalogic/tools/git/git_operations_tool.py,sha256=tZqY7fXXfiLkArV_18pEmqreqF6n6BALo0jFy4Hjzfs,20610
70
+ quantalogic/tools/google_packages/google_news_tool.py,sha256=BdrSlBxCZ1PfWIKzl7_aqvkoV2wVkBH3T2g3X2VBvVQ,17443
71
+ quantalogic/tools/grep_app_tool.py,sha256=qAKgqMTtoH82bEZkiNlIk5oDSgVckFgxVXhU7ieTJwc,18672
72
+ quantalogic/tools/image_generation/dalle_e.py,sha256=SYvKZ1VbdslIKUKBy3nC0jD680-ujabBQr6iK5IFAXY,10968
73
+ quantalogic/tools/input_question_tool.py,sha256=UoTlNhdmdr-eyiVtVCG2qJe_R4bU_ag-DzstSdmYkvM,1848
74
+ quantalogic/tools/jinja_tool.py,sha256=i49F6lSdTx5KMgP5Y9KKYprcc_OEc11TvEqqtDA5mas,2849
75
+ quantalogic/tools/language_handlers/__init__.py,sha256=5FSwHqTXzRL52Eme4yocw1RzOqWCVq7a5FyLEd7uSEM,1161
76
+ quantalogic/tools/language_handlers/c_handler.py,sha256=q_NiOExbnfYyzxz4C0V5B5887d_D8LYr30tTEVj4LH8,1226
77
+ quantalogic/tools/language_handlers/cpp_handler.py,sha256=7iFBuidI_yMSbC0RL4A3mKPjLWKxW7AoRrtUTlBnpyw,1241
78
+ quantalogic/tools/language_handlers/go_handler.py,sha256=v8nxfhGMRxBf1xbrP0xUd2r4HsAtu-VK9OeXpv8FRoM,1230
79
+ quantalogic/tools/language_handlers/java_handler.py,sha256=MGGqmmnec9DsXijjAyPu7XZBsK-lCQAJSpd6ZK42nio,1443
80
+ quantalogic/tools/language_handlers/javascript_handler.py,sha256=kqtm3MOazyYCYzsT-L3OtkDt54B1m3AWk0Ya9nQx4VM,1729
81
+ quantalogic/tools/language_handlers/python_handler.py,sha256=ijOQuWoKQvNvV7uo1t308sipYEbPNfZ8R-u71TStNus,1220
82
+ quantalogic/tools/language_handlers/rust_handler.py,sha256=t_AqKVa3KVk6SVkq_UjUUru0Za8ueCAnanv8w3B815A,1234
83
+ quantalogic/tools/language_handlers/scala_handler.py,sha256=wr-cWOIFOc0UYwODmEtT6rV63Qf1NyNB_BLo23GLrvk,1281
84
+ quantalogic/tools/language_handlers/typescript_handler.py,sha256=L4vuJMYxKO3_83dQhdwZ9fogauIV7rwoicRT0xLGfkQ,1738
85
+ quantalogic/tools/list_directory_tool.py,sha256=OGgori1d2EEU_0HMA_YH_0dn23M4Trp38s-XnKBx7Kg,7443
86
+ quantalogic/tools/llm_tool.py,sha256=8HOdYqHNuwIYxEYT-QWGQWWnf7iT-YoXnz5T1reFPGg,8440
87
+ quantalogic/tools/llm_vision_tool.py,sha256=u-Yd5IIeW9Aw7mUqU2wZ5tQcRtDt_tTLJZzdlZJPfnE,7724
88
+ quantalogic/tools/markitdown_tool.py,sha256=KHvazxp6zT7h6-qMCdfuH_9pHQ6rDQOI3yiGIabTSCU,4804
89
+ quantalogic/tools/nasa_packages/models.py,sha256=qydZqUL5Vyl1XZbTYhP34RbccrrCpVKQxtTd1m5PhZs,1767
90
+ quantalogic/tools/nasa_packages/nasa_apod_tool.py,sha256=t8V3nklLpRkShd27OHN0nF4RtjNEM0qC4jrDch2TgEI,7460
91
+ quantalogic/tools/nasa_packages/nasa_neows_tool.py,sha256=RBfysLwddoNZyNPhEtp6AsLECR2pIKj5pOjUbBbhCWo,4949
92
+ quantalogic/tools/nasa_packages/services.py,sha256=fifGphF99QwjJo-z2RhF3xxFRQGNoufyKNYHQY-qYvA,2882
93
+ quantalogic/tools/nodejs_tool.py,sha256=zdnE0VFj_5786uR2L0o-SKR0Gk8L-U7rdj7xGHJYIq0,19905
94
+ quantalogic/tools/presentation_tools/presentation_llm_tool.py,sha256=5fuUDE1IzeAAoWFKG5lyYt2uAo7UzwdrOxnEKfvJDJY,15782
95
+ quantalogic/tools/product_hunt/product_hunt_tool.py,sha256=vtjnV6v46BcNYlxudUCq5JIkjznQFUt8Kx9VD4KEPa8,8533
96
+ quantalogic/tools/product_hunt/services.py,sha256=ym10ZW4q8w03wIkZDnwl9d_nCoOz2WAj3N6C0qY0dfI,2280
97
+ quantalogic/tools/python_tool.py,sha256=70HLbfU2clOBgj4axDOtIKzXwEBMNGEAX1nGSf-KNNQ,18156
98
+ quantalogic/tools/rag_tool/__init__.py,sha256=c6UfjkKgduih_wf_As5UbEHPj3vUecvdUcT_xEbnMd8,1434
99
+ quantalogic/tools/rag_tool/document_metadata.py,sha256=amnnqL5POzFbc7rVq2kJ2egYS3k5P-m4HyA5AbekIq0,376
100
+ quantalogic/tools/rag_tool/query_response.py,sha256=0T9N80kNR8ZgjA7WzFBisIqdIgUiFfGeUPzYvxAHSU0,549
101
+ quantalogic/tools/rag_tool/rag_tool.py,sha256=FEccrd_IorVi1b3FzEu2huZPavSlaF-0p0IiWIGON74,21073
102
+ quantalogic/tools/rag_tool/rag_tool_beta.py,sha256=6ydWH5N2-M06p1XAsfxC8GREktIOz6AAsFTPGEZUnbU,9525
103
+ quantalogic/tools/read_file_block_tool.py,sha256=FTcDAUOOPQOvWRjnRI6nMI1Upus90klR4PC0pbPP_S8,5266
104
+ quantalogic/tools/read_file_tool.py,sha256=l6k-SOIV9krpXAmUTkxzua51S-KHgzGqkcDlD5AD8K0,2710
105
+ quantalogic/tools/read_html_tool.py,sha256=KmXTeSrQZj0L-OAwl3xZQybdAhhyAeK3wgblhXgf3oM,10999
106
+ quantalogic/tools/replace_in_file_tool.py,sha256=8cbM0MqNpQynNwbkHR7kqYoG-1JBxDjpMjHHVCwiS8w,13854
107
+ quantalogic/tools/ripgrep_tool.py,sha256=sRzHaWac9fa0cCGhECJN04jw_Ko0O3u45KDWzMIYcvY,14291
108
+ quantalogic/tools/safe_python_interpreter_tool.py,sha256=yibIVmtkcfU4dS6KNcbJPxEI7WXVVDaUk0PEr-dMCyk,7904
109
+ quantalogic/tools/search_definition_names.py,sha256=zqtaqq8aS5jdDQOkbd4wMUPFyL6Bq-4q9NWyLKdXL1E,18771
110
+ quantalogic/tools/sequence_tool.py,sha256=Hb2FSjWWACvXZX7rmJXPk5lnnnqaDeRTbhQQRtCd8hI,11169
111
+ quantalogic/tools/serpapi_search_tool.py,sha256=sX-Noch77kGP2XiwislPNFyy3_4TH6TwMK6C81L3q9Y,5316
112
+ quantalogic/tools/sql_query_tool.py,sha256=jEDZLlxOsB2bzsWlEqsqvTKiyovnRuk0XvgtwW7-WSQ,6055
113
+ quantalogic/tools/task_complete_tool.py,sha256=L8tuyVoN07Q2hOsxx17JTW0C5Jd_N-C0i_0PtCUQUKU,929
114
+ quantalogic/tools/tool.py,sha256=2XlveQf7NVuDlPz-IgE0gURye8rIp9iH3YhWhoOsnog,11232
115
+ quantalogic/tools/unified_diff_tool.py,sha256=o7OiYnCM5MjbPlQTpB2OmkMQRI9zjdToQmgVkhiTvOI,14148
116
+ quantalogic/tools/utilities/csv_processor_tool.py,sha256=Mu_EPVj6iYAclNaVX_vbkekxcNwPYwy7dW1SCY22EwY,9023
117
+ quantalogic/tools/utilities/download_file_tool.py,sha256=hw_tO6RD0tA_LH46Tathf-LzSxRl7kgEiiP76rTGdds,6616
118
+ quantalogic/tools/utilities/mermaid_validator_tool.py,sha256=Brd6pt8OxpUgf8dm6kHqJJs_IU8V4Kc-8VDP-n1eCUM,25886
119
+ quantalogic/tools/utils/__init__.py,sha256=-NtMSwxRt_G79Oo_DcDaCdLU2vLvuXIoCd34TOYEUmI,334
120
+ quantalogic/tools/utils/create_sample_database.py,sha256=h5c_uxv3eztQvHlloTZxzWt5gEzai8zfnR8-_QrUqxU,3724
121
+ quantalogic/tools/utils/generate_database_report.py,sha256=3PT34ClMvZ2O62-24cp_5lOyZHY_pBjVObMHpfyVi-s,10140
122
+ quantalogic/tools/wikipedia_search_tool.py,sha256=LXQSPH8961Efw2QNxKe-cD5ZiIYD3ufEgrxH4y5uB74,5180
123
+ quantalogic/tools/write_file_tool.py,sha256=_mx9_Zjg2oMAAVzlcHEKjZVZUxQVgbRfcoMKgWnoZcg,3764
124
+ quantalogic/utils/__init__.py,sha256=hsS3hXH5lsBQcZh2QBANY1Af2Zs1jtrgxA7kXJEWi58,680
125
+ quantalogic/utils/ask_user_validation.py,sha256=gG6iv5996KRJK16JUQiEsY5JgSnLoZ7vmi6f5DXI7Ho,339
126
+ quantalogic/utils/async_utils.py,sha256=FOizWRbHdsZwoD36dNErzunfwPlE7zDprS6RXcWuWSo,963
127
+ quantalogic/utils/check_version.py,sha256=aDTEvIn5XNNBIQ0tVOqcY3hcoznRmpsnNuwES6je1MQ,1133
128
+ quantalogic/utils/download_http_file.py,sha256=FTN3brq9WvCFvuBX-lYAhjsdYTzQT4m9m2vqlcyjkNk,3472
129
+ quantalogic/utils/get_all_models.py,sha256=J4OtEsHzxZ71UN0v1uEjAb_isMNscTQ8qk5jG0sl0Rc,546
130
+ quantalogic/utils/get_coding_environment.py,sha256=oMK5ZanOqX_SFaJxUZQGlsAAaiLUgJufCJYDrHnHPuQ,584
131
+ quantalogic/utils/get_environment.py,sha256=7wWruSHYTUlnQWW27qU3WFYZnncqqqdofsxAsUU7lhw,875
132
+ quantalogic/utils/get_quantalogic_rules_content.py,sha256=fnEFTyClXzpI0MLaM-gB9R6l4CJlu2NnaYiR09ciJC8,673
133
+ quantalogic/utils/git_ls.py,sha256=hJLAoFyx1MgaFJKu6ZO7NEA5xvvqIcpfJ2g9DFCPR5c,5776
134
+ quantalogic/utils/lm_studio_model_info.py,sha256=74LrRljuVAIzgFHqO-l9jRuawx8nu3UdDeGoO_bLJwI,1792
135
+ quantalogic/utils/python_interpreter.py,sha256=H08GpYQshcob_W7e8GmgdKYFAbBhWAR6pGR83tviOM4,36430
136
+ quantalogic/utils/read_file.py,sha256=tSRVHk8dIP4nNLL89v5kRki4hOTjVyjbmuEb2zwvwCY,2077
137
+ quantalogic/utils/read_http_text_content.py,sha256=n3IayT5KcqctIVVF2gOQQAMf3Ow6eenlVgfXTpLcQbw,4410
138
+ quantalogic/utils/xml_utility.py,sha256=gLB0vpbpxbfc297Fy37Zd3O_-sbt6DoRUZrSkhPq4FU,5345
139
+ quantalogic/version.py,sha256=ea_cRutaQk5_lwlLbUUvPFuOT7Of7-gAsDl7wdveS-g,107
140
+ quantalogic/version_check.py,sha256=JyQFTNMDWtpHCLnN-BiakzB2cyXf6kUFsTjvmSruZi4,1623
141
+ quantalogic/welcome_message.py,sha256=o4tHdgabNuIV9kbIDPgS3_2yzJhayK30oKad2UouYDc,3020
142
+ quantalogic/xml_parser.py,sha256=AKuMdJC3QAX3Z_tErHVlZ-msjPemWaZUFiTwkHz76jg,11614
143
+ quantalogic/xml_tool_parser.py,sha256=Vz4LEgDbelJynD1siLOVkJ3gLlfHsUk65_gCwbYJyGc,3784
144
+ quantalogic-0.50.0.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
145
+ quantalogic-0.50.0.dist-info/METADATA,sha256=cCs556IWcumbNUWbeHJIm5-_QZpvz8YfXycHPFipLbM,26246
146
+ quantalogic-0.50.0.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
147
+ quantalogic-0.50.0.dist-info/entry_points.txt,sha256=h74O_Q3qBRCrDR99qvwB4BpBGzASPUIjCfxHq6Qnups,183
148
+ quantalogic-0.50.0.dist-info/RECORD,,
@@ -1,102 +0,0 @@
1
- quantalogic/__init__.py,sha256=Su8CnOEdqKu4zTytjiP9P5olg-oIDuUA3fMWM1WUdRY,925
2
- quantalogic/agent.py,sha256=6t17qND9Z5EswHdsFTdNf-mzZB-JVHjjbaETY2XK5Xs,34575
3
- quantalogic/agent_config.py,sha256=B3cm23F6XniXb_o5f_Ui0sGNYtZQ6wqv2Yq5tbTKJ4Y,9693
4
- quantalogic/agent_factory.py,sha256=ax0IPmFdaVNXsHLA2_D6HSLYo6srJQ9OM-p8bWaXuio,5760
5
- quantalogic/coding_agent.py,sha256=r0XeShNkXfMYGBKh7_22HatjmNnjXvM-RQW7jdNIkm4,5455
6
- quantalogic/config.py,sha256=6UUIUSXKYlqKkL5aIklYzr8PJIDSRLDVVe3Wr6QAUFQ,422
7
- quantalogic/console_print_events.py,sha256=md1CwNBoi58nW7KRVESna3QfkWDJo8PvugXSKjL-c-k,2129
8
- quantalogic/console_print_token.py,sha256=qSU-3kmoZk4T5-1ybrEBi8tIXDPcz7eyWKhGh3E8uIg,395
9
- quantalogic/docs_cli.py,sha256=3giVbUpespB9ZdTSJ955A3BhcOaBl5Lwsn1AVy9XAeY,1663
10
- quantalogic/event_emitter.py,sha256=jqot2g4JRXc88K6PW837Oqxbf7shZfO-xdPaUWmzupk,7901
11
- quantalogic/generative_model.py,sha256=3OLEPwsKEvtc0JYISeim_gEU8MY45FBN3q2rcixGVsk,13729
12
- quantalogic/get_model_info.py,sha256=LFO_0vJ9cWpnzIk5s8xGNGNbPFP8DxBqHkbmjmYNlEk,2994
13
- quantalogic/interactive_text_editor.py,sha256=1vW4poJl7SItRGEeGQgtCFcmRDXmfCM8PE-uBtDBJuE,16658
14
- quantalogic/llm.py,sha256=98osu6LmjuYw4g-CDIp1SJkYlfoHNwdvq6yJqI-K5NA,5692
15
- quantalogic/main.py,sha256=5XxR-exyO8T7lw6Qm7z2bJ4WspBBCbU6Img9lElH0QI,9676
16
- quantalogic/memory.py,sha256=zbtRuM05jaS2lJll-92dt5JfYVLERnF_m_9xqp2x-k0,6304
17
- quantalogic/model_info.py,sha256=j7QqvjEFQDGpDOgQs8uTkVyI3a50Oa_nrsQjyxizTLc,272
18
- quantalogic/model_info_list.py,sha256=n2Y11akkFBghOOOokuT5B15QOIkui6caa9qFKiW-wG0,2434
19
- quantalogic/model_info_litellm.py,sha256=m1Yt4SIiOBRWLx7S8f8k4fcTiKJZKtOvcPN_QvQ_Oxk,1880
20
- quantalogic/model_names.py,sha256=UZlz25zG9B2dpfwdw_e1Gw5qFsKQ7iME9FJh9Ts4u6s,938
21
- quantalogic/prompts.py,sha256=LZ82J_IVZy_G3Cabz_XnCmdM5RAPGuxyAsViCX8ldl4,2939
22
- quantalogic/search_agent.py,sha256=EA_FAPP0dVuUbJ_lAGKfYq1FIJ6oLYzGMgKLMvBL4ZQ,2472
23
- quantalogic/server/__init__.py,sha256=8sz_PYAUCrkM6JM5EAUeIzNM4NPW6j6UT72JVkc21WQ,91
24
- quantalogic/server/agent_server.py,sha256=VXaaWqReUSZOCX7CaKS14jria8yZn1kLEc52E2hV7ZA,22510
25
- quantalogic/server/models.py,sha256=nVUGWElOsUw8QnRCGJylk25wCew_5gohe6nldYighUA,1322
26
- quantalogic/server/routes.py,sha256=00nFe6s0T4Gv8vCp0wQFjWGo1tC8FViH8h0koAJdWs4,4216
27
- quantalogic/server/state.py,sha256=TwtL0BTp_LT-fynF1IR4k8WVXuxXWtSv3NgWG9fuUME,7369
28
- quantalogic/server/static/js/event_visualizer.js,sha256=eFkkWyNZw3zOZlF18kxbfsWql8a2C13qBFEOAPzrj88,19646
29
- quantalogic/server/static/js/quantalogic.js,sha256=x7TrlZGR1Y0WLK2DWl1xY847BhEWMPnL0Ua7KtOldUc,22311
30
- quantalogic/server/templates/index.html,sha256=nDnXJoQEm1vXbhXtgaYk0G5VXj0wwzE6KrqEDhHFpj4,7773
31
- quantalogic/task_file_reader.py,sha256=AMIJoeVY9Hhu0dBJ-C5EyaOFsXLkhn2oBhVs-WTnnLk,1460
32
- quantalogic/task_runner.py,sha256=urUNgKTGMicKxDNwzueQVDtQt3P-gosGTbGY90Lp0j8,10094
33
- quantalogic/tool_manager.py,sha256=Uh-ufrJPufHqDUrFwKlXw3MOsVGc_4lQxuc6cRvZ7wU,7186
34
- quantalogic/tools/__init__.py,sha256=syshfk5d0_HV6A_mG4OBBJXy3H7ky-x57MnvlrDVXgI,2331
35
- quantalogic/tools/agent_tool.py,sha256=MXCXxWHRch7VK4UWhtRP1jeI8Np9Ne2CUGo8vm1oZiM,3064
36
- quantalogic/tools/dalle_e.py,sha256=nur2kl6DKjaWWaHcmF_y9vS5bvty2fW8hQfdgf5KWfs,10948
37
- quantalogic/tools/download_http_file_tool.py,sha256=wTfanbXjIRi5-qrbluuLvNmDNhvmYAnlMVb3dO8C2ss,2210
38
- quantalogic/tools/duckduckgo_search_tool.py,sha256=xVaEb_SUK5NL3lwMQXj1rGQYYvNT-td-qaB9QCes27Q,7014
39
- quantalogic/tools/edit_whole_content_tool.py,sha256=nXmpAvojvqvAcqNMy1kUKZ1ocboky_ZcnCR4SNCSPgw,2360
40
- quantalogic/tools/elixir_tool.py,sha256=fzPPtAW-Koy9KB0r5k2zV1f1U0WphL-LXPPOBkeNkug,7652
41
- quantalogic/tools/execute_bash_command_tool.py,sha256=YK_cMuODJDOYheZKGmlpZTxJdVbimFLCUlND2_zmyMg,6869
42
- quantalogic/tools/generate_database_report_tool.py,sha256=QbZjtmegGEOEZAIa-CSeBo5O9dYBZTk_PWrumyFUg1Q,1890
43
- quantalogic/tools/grep_app_tool.py,sha256=BDxygwx7WCbqbiP2jmSRnIsoIUVYG5A4SKzId524ys4,19957
44
- quantalogic/tools/input_question_tool.py,sha256=UoTlNhdmdr-eyiVtVCG2qJe_R4bU_ag-DzstSdmYkvM,1848
45
- quantalogic/tools/jinja_tool.py,sha256=1bqkFia2GtfntIyTVg4tCiPP8S1dX43U7QsrBE1Ngps,2893
46
- quantalogic/tools/language_handlers/__init__.py,sha256=5GD6TYsMqRni0nwePp2KOjNQ04GnT5wihT6YAuvx43c,699
47
- quantalogic/tools/language_handlers/c_handler.py,sha256=q_NiOExbnfYyzxz4C0V5B5887d_D8LYr30tTEVj4LH8,1226
48
- quantalogic/tools/language_handlers/cpp_handler.py,sha256=7iFBuidI_yMSbC0RL4A3mKPjLWKxW7AoRrtUTlBnpyw,1241
49
- quantalogic/tools/language_handlers/go_handler.py,sha256=v8nxfhGMRxBf1xbrP0xUd2r4HsAtu-VK9OeXpv8FRoM,1230
50
- quantalogic/tools/language_handlers/java_handler.py,sha256=MGGqmmnec9DsXijjAyPu7XZBsK-lCQAJSpd6ZK42nio,1443
51
- quantalogic/tools/language_handlers/javascript_handler.py,sha256=kqtm3MOazyYCYzsT-L3OtkDt54B1m3AWk0Ya9nQx4VM,1729
52
- quantalogic/tools/language_handlers/python_handler.py,sha256=ijOQuWoKQvNvV7uo1t308sipYEbPNfZ8R-u71TStNus,1220
53
- quantalogic/tools/language_handlers/rust_handler.py,sha256=t_AqKVa3KVk6SVkq_UjUUru0Za8ueCAnanv8w3B815A,1234
54
- quantalogic/tools/language_handlers/scala_handler.py,sha256=wr-cWOIFOc0UYwODmEtT6rV63Qf1NyNB_BLo23GLrvk,1281
55
- quantalogic/tools/language_handlers/typescript_handler.py,sha256=L4vuJMYxKO3_83dQhdwZ9fogauIV7rwoicRT0xLGfkQ,1738
56
- quantalogic/tools/list_directory_tool.py,sha256=8Hy38DelSh-mRqS_uDLpeBYoHLtEy5ji77xI-TJu3Ms,4176
57
- quantalogic/tools/llm_tool.py,sha256=CFTvr-RTFiuGWlOLtvw4zv93s_CLUHuHfNmvK6QpQiQ,7014
58
- quantalogic/tools/llm_vision_tool.py,sha256=eVDIrANxxZCHxYp9xaAN8hLdFhlYm7bUu2tX9-1xUbI,5496
59
- quantalogic/tools/markitdown_tool.py,sha256=lpbJBLx43_x2DjiZAV1HSidkHeqkkV0KvgeLG2fphK4,4339
60
- quantalogic/tools/nodejs_tool.py,sha256=zdnE0VFj_5786uR2L0o-SKR0Gk8L-U7rdj7xGHJYIq0,19905
61
- quantalogic/tools/python_tool.py,sha256=70HLbfU2clOBgj4axDOtIKzXwEBMNGEAX1nGSf-KNNQ,18156
62
- quantalogic/tools/read_file_block_tool.py,sha256=FTcDAUOOPQOvWRjnRI6nMI1Upus90klR4PC0pbPP_S8,5266
63
- quantalogic/tools/read_file_tool.py,sha256=l6k-SOIV9krpXAmUTkxzua51S-KHgzGqkcDlD5AD8K0,2710
64
- quantalogic/tools/read_html_tool.py,sha256=ZReMuGajMqlXcU7i5JOxCRlGTt96M2CsB7L0ZOEoXMI,11192
65
- quantalogic/tools/replace_in_file_tool.py,sha256=95GqcOC0sZzbWHWzYDVwq7rEwChlOgKxb5cxKk-Y7W8,13844
66
- quantalogic/tools/ripgrep_tool.py,sha256=sRzHaWac9fa0cCGhECJN04jw_Ko0O3u45KDWzMIYcvY,14291
67
- quantalogic/tools/safe_python_interpreter_tool.py,sha256=I8e33-S_6K-1JxgkcTL0J79Op57kp2dzQBsXgwKFm8w,8140
68
- quantalogic/tools/search_definition_names.py,sha256=ui0304UgUke6Ca-H3-S4JP9TsdHhRCR5uk9kPuobIDA,18769
69
- quantalogic/tools/sequence_tool.py,sha256=NQAtd89d6hscyGe2GzGkHsmdtpAEX_fRa98hvo93EyA,11322
70
- quantalogic/tools/serpapi_search_tool.py,sha256=sX-Noch77kGP2XiwislPNFyy3_4TH6TwMK6C81L3q9Y,5316
71
- quantalogic/tools/sql_query_tool.py,sha256=5Jgr5m8Xv0B-3oHk560LmF0DgphGKWoAitElwqY9xCc,6120
72
- quantalogic/tools/task_complete_tool.py,sha256=L8tuyVoN07Q2hOsxx17JTW0C5Jd_N-C0i_0PtCUQUKU,929
73
- quantalogic/tools/tool.py,sha256=fdD-wwAOgfua2RRk1FHv_mlNBQ1FTzPO8vMIKiRirZM,9800
74
- quantalogic/tools/unified_diff_tool.py,sha256=wTKXIoBEPcC_EcQmpJZVi95vq0Ncvsw1Kyc7XqPO6dU,14147
75
- quantalogic/tools/utils/__init__.py,sha256=qLQaS1JvZt_Bfg5sTj-TUa47u2IatLaIwDZe0EtXELI,344
76
- quantalogic/tools/utils/create_sample_database.py,sha256=Aus9xRLGfQfsYnxsAkJ5CW-Za6fwKQeqm2mOXqgkMis,4018
77
- quantalogic/tools/utils/generate_database_report.py,sha256=0D-5fWOfpAh1jEcld5OTQP5x6XkJE5jpNY6FyHv1L2s,10345
78
- quantalogic/tools/wikipedia_search_tool.py,sha256=bdZ_0dYTxpEfU04tBFsatnLM5P9Z3kAZgKQEjsopJLA,5405
79
- quantalogic/tools/write_file_tool.py,sha256=_mx9_Zjg2oMAAVzlcHEKjZVZUxQVgbRfcoMKgWnoZcg,3764
80
- quantalogic/utils/__init__.py,sha256=hsS3hXH5lsBQcZh2QBANY1Af2Zs1jtrgxA7kXJEWi58,680
81
- quantalogic/utils/ask_user_validation.py,sha256=F0jkbFJVXAImcSSP7op6dov5i80hRvZGRvBHbfcZrxg,340
82
- quantalogic/utils/check_version.py,sha256=grxTfJE85GMue1OAk8z8_q8tjEJxQ8RO6fN3fJ_qedg,1136
83
- quantalogic/utils/download_http_file.py,sha256=FTN3brq9WvCFvuBX-lYAhjsdYTzQT4m9m2vqlcyjkNk,3472
84
- quantalogic/utils/get_all_models.py,sha256=Ol4e60MwZiJhu8HZ2i_RpIumLmFYYrncB1X9q1KEQh0,544
85
- quantalogic/utils/get_coding_environment.py,sha256=oMK5ZanOqX_SFaJxUZQGlsAAaiLUgJufCJYDrHnHPuQ,584
86
- quantalogic/utils/get_environment.py,sha256=7wWruSHYTUlnQWW27qU3WFYZnncqqqdofsxAsUU7lhw,875
87
- quantalogic/utils/get_quantalogic_rules_content.py,sha256=fnEFTyClXzpI0MLaM-gB9R6l4CJlu2NnaYiR09ciJC8,673
88
- quantalogic/utils/git_ls.py,sha256=_k6QIQtc0aM1bsG340jBp4VrdevbcH8Pg2CV4r9oHok,5264
89
- quantalogic/utils/lm_studio_model_info.py,sha256=1eDvZ-I9W8AZbCch1l5rdiSpUxL7qMnfZItdFZkmAWs,1819
90
- quantalogic/utils/python_interpreter.py,sha256=VQdLdh0Jk-cWkXLwzPY5lwl8LFWPp8RzI9pKbfoieZg,33534
91
- quantalogic/utils/read_file.py,sha256=tSRVHk8dIP4nNLL89v5kRki4hOTjVyjbmuEb2zwvwCY,2077
92
- quantalogic/utils/read_http_text_content.py,sha256=n3IayT5KcqctIVVF2gOQQAMf3Ow6eenlVgfXTpLcQbw,4410
93
- quantalogic/version.py,sha256=ea_cRutaQk5_lwlLbUUvPFuOT7Of7-gAsDl7wdveS-g,107
94
- quantalogic/version_check.py,sha256=cttR1lR3OienGLl7NrK1Te1fhDkqSjCci7HC1vFUTSY,1627
95
- quantalogic/welcome_message.py,sha256=IXMhem8h7srzNUwvw8G_lmEkHU8PFfote021E_BXmVk,3039
96
- quantalogic/xml_parser.py,sha256=iUQZC4a8uqBsP7RAZaY0Ed9k8TCd-ImuF41eF7MR2WM,11615
97
- quantalogic/xml_tool_parser.py,sha256=Vz4LEgDbelJynD1siLOVkJ3gLlfHsUk65_gCwbYJyGc,3784
98
- quantalogic-0.35.0.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
99
- quantalogic-0.35.0.dist-info/METADATA,sha256=rWN7fF9L5VdvL4al2IAcldkom7cuDYC8KadeBIcYKqY,23941
100
- quantalogic-0.35.0.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
101
- quantalogic-0.35.0.dist-info/entry_points.txt,sha256=h74O_Q3qBRCrDR99qvwB4BpBGzASPUIjCfxHq6Qnups,183
102
- quantalogic-0.35.0.dist-info/RECORD,,