fabricatio 0.2.0.dev10__tar.gz → 0.2.0.dev11__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 (91) hide show
  1. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/PKG-INFO +3 -2
  2. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/pyproject.toml +3 -1
  3. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/__init__.py +1 -4
  4. fabricatio-0.2.0.dev11/python/fabricatio/_rust_instances.py +4 -0
  5. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/models/task.py +6 -4
  6. fabricatio-0.2.0.dev11/templates/built-in/propose_task.hbs +11 -0
  7. fabricatio-0.2.0.dev11/templates.tar.gz +0 -0
  8. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/uv.lock +1 -1
  9. fabricatio-0.2.0.dev10/templates.tar.gz +0 -0
  10. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/.github/workflows/build-package.yaml +0 -0
  11. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/.github/workflows/ruff.yaml +0 -0
  12. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/.github/workflows/tests.yaml +0 -0
  13. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/.gitignore +0 -0
  14. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/.python-version +0 -0
  15. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/Cargo.lock +0 -0
  16. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/Cargo.toml +0 -0
  17. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/LICENSE +0 -0
  18. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/Makefile +0 -0
  19. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/README.md +0 -0
  20. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/examples/minor/hello_fabricatio.py +0 -0
  21. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/examples/propose_task/propose.py +0 -0
  22. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/examples/simple_chat/chat.py +0 -0
  23. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/_rust.pyi +0 -0
  24. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/actions/__init__.py +0 -0
  25. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/actions/communication.py +0 -0
  26. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/actions/transmission.py +0 -0
  27. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/config.py +0 -0
  28. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/core.py +0 -0
  29. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/decorators.py +0 -0
  30. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/fs/__init__.py +0 -0
  31. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/fs/readers.py +0 -0
  32. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/journal.py +0 -0
  33. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/models/action.py +0 -0
  34. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/models/events.py +0 -0
  35. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/models/generic.py +0 -0
  36. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/models/role.py +0 -0
  37. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/models/tool.py +0 -0
  38. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/models/utils.py +0 -0
  39. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/parser.py +0 -0
  40. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/py.typed +0 -0
  41. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/toolboxes/__init__.py +0 -0
  42. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/python/fabricatio/toolboxes/task.py +0 -0
  43. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/src/lib.rs +0 -0
  44. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/src/templates.rs +0 -0
  45. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/templates/built-in/binary-exploitation-ctf-solver.hbs +0 -0
  46. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/templates/built-in/claude-xml.hbs +0 -0
  47. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/templates/built-in/clean-up-code.hbs +0 -0
  48. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/templates/built-in/cryptography-ctf-solver.hbs +0 -0
  49. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/templates/built-in/document-the-code.hbs +0 -0
  50. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/templates/built-in/find-security-vulnerabilities.hbs +0 -0
  51. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/templates/built-in/fix-bugs.hbs +0 -0
  52. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/templates/built-in/improve-performance.hbs +0 -0
  53. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/templates/built-in/refactor.hbs +0 -0
  54. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/templates/built-in/reverse-engineering-ctf-solver.hbs +0 -0
  55. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/templates/built-in/web-ctf-solver.hbs +0 -0
  56. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/templates/built-in/write-git-commit.hbs +0 -0
  57. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/templates/built-in/write-github-pull-request.hbs +0 -0
  58. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/templates/built-in/write-github-readme.hbs +0 -0
  59. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/__init__.py +0 -0
  60. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_config.py +0 -0
  61. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_core.py +0 -0
  62. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_decorators.py +0 -0
  63. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_events.py +0 -0
  64. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_examples.py +0 -0
  65. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_action.py +0 -0
  66. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_communication.py +0 -0
  67. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_events.py +0 -0
  68. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_generic.py +0 -0
  69. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_llm_usage.py +0 -0
  70. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_propose_task.py +0 -0
  71. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_role.py +0 -0
  72. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_role_with_actions.py +0 -0
  73. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_task.py +0 -0
  74. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_template_manager.py +0 -0
  75. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_tool.py +0 -0
  76. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_transmission.py +0 -0
  77. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_utils.py +0 -0
  78. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_with_briefing.py +0 -0
  79. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_with_briefing_and_json_example.py +0 -0
  80. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_with_briefing_and_llm_usage.py +0 -0
  81. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_with_briefing_and_llm_usage_and_json_example.py +0 -0
  82. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_with_dependency.py +0 -0
  83. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_with_dependency_and_briefing.py +0 -0
  84. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_with_dependency_and_briefing_and_json_example.py +0 -0
  85. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_with_dependency_and_briefing_and_llm_usage.py +0 -0
  86. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_with_dependency_and_json_example.py +0 -0
  87. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_with_dependency_and_llm_usage.py +0 -0
  88. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_with_dependency_and_llm_usage_and_json_example.py +0 -0
  89. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_with_json_example.py +0 -0
  90. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_models/test_workflow.py +0 -0
  91. {fabricatio-0.2.0.dev10 → fabricatio-0.2.0.dev11}/tests/test_parser.py +0 -0
@@ -1,7 +1,8 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fabricatio
3
- Version: 0.2.0.dev10
3
+ Version: 0.2.0.dev11
4
4
  Classifier: License :: OSI Approved :: MIT License
5
+ Classifier: Programming Language :: Rust
5
6
  Classifier: Programming Language :: Python :: 3.12
6
7
  Classifier: Programming Language :: Python :: Implementation :: CPython
7
8
  Classifier: Framework :: AsyncIO
@@ -23,7 +24,7 @@ Requires-Dist: regex>=2024.11.6
23
24
  Requires-Dist: rich>=13.9.4
24
25
  License-File: LICENSE
25
26
  Summary: A LLM multi-agent framework.
26
- Keywords: ai,agents,multi-agent,llm
27
+ Keywords: ai,agents,multi-agent,llm,pyo3
27
28
  Author-email: Whth <zettainspector@foxmail.com>
28
29
  Requires-Python: >=3.12
29
30
  Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "fabricatio"
3
- version = "0.2.0-dev.10"
3
+ version = "0.2.0-dev.11"
4
4
  description = "A LLM multi-agent framework."
5
5
  readme = "README.md"
6
6
  license = { file = "LICENSE" }
@@ -9,6 +9,7 @@ authors = [
9
9
  ]
10
10
  classifiers = [
11
11
  "License :: OSI Approved :: MIT License",
12
+ "Programming Language :: Rust",
12
13
  "Programming Language :: Python :: 3.12",
13
14
  "Programming Language :: Python :: Implementation :: CPython",
14
15
  "Framework :: AsyncIO",
@@ -20,6 +21,7 @@ keywords = [
20
21
  "agents",
21
22
  "multi-agent",
22
23
  "llm",
24
+ "pyo3"
23
25
  ]
24
26
 
25
27
 
@@ -1,7 +1,6 @@
1
1
  """Fabricatio is a Python library for building llm app using event-based agent structure."""
2
2
 
3
- from fabricatio._rust import TemplateManager
4
- from fabricatio.config import configs
3
+ from fabricatio._rust_instances import template_manager
5
4
  from fabricatio.core import env
6
5
  from fabricatio.fs import magika
7
6
  from fabricatio.journal import logger
@@ -13,8 +12,6 @@ from fabricatio.models.tool import ToolBox
13
12
  from fabricatio.models.utils import Message, Messages
14
13
  from fabricatio.parser import Capture, CodeBlockCapture, JsonCapture, PythonCapture
15
14
 
16
- template_manager = TemplateManager(configs.code2prompt.template_dir)
17
-
18
15
  __all__ = [
19
16
  "Action",
20
17
  "Capture",
@@ -0,0 +1,4 @@
1
+ from fabricatio._rust import TemplateManager
2
+ from fabricatio.config import configs
3
+
4
+ template_manager = TemplateManager(configs.code2prompt.template_dir)
@@ -7,6 +7,7 @@ from asyncio import Queue
7
7
  from enum import Enum
8
8
  from typing import Any, List, Optional, Self
9
9
 
10
+ from fabricatio._rust_instances import template_manager
10
11
  from fabricatio.core import env
11
12
  from fabricatio.journal import logger
12
13
  from fabricatio.models.events import Event, EventLike
@@ -273,11 +274,12 @@ class ProposeTask(LLMUsage, WithBriefing):
273
274
  logger.error(f"Failed to parse task from JSON: {e}")
274
275
  return None
275
276
 
277
+ template_data = {
278
+ "prompt": prompt,
279
+ "json_example": Task.json_example()
280
+ }
276
281
  return await self.aask_validate(
277
- f"{prompt} \n\nBased on requirement above, "
278
- f"you need to construct a task to satisfy that requirement in JSON format "
279
- f"written like this: \n\n```json\n{Task.json_example()}\n```\n\n"
280
- f"No extra explanation needed. ",
282
+ template_manager.render_template("propose_task", template_data),
281
283
  _validate_json,
282
284
  system_message=f"# your personal briefing: \n{self.briefing}",
283
285
  )
@@ -0,0 +1,11 @@
1
+ {{prompt}}
2
+
3
+ Based on requirement above,
4
+ you need to construct a task to satisfy that requirement in JSON format
5
+ written like this:
6
+
7
+ ```json
8
+ {{json_example}}
9
+ ```
10
+
11
+ No extra explanation needed, only response in JSON format.
Binary file
@@ -259,7 +259,7 @@ wheels = [
259
259
 
260
260
  [[package]]
261
261
  name = "fabricatio"
262
- version = "0.2.0.dev10"
262
+ version = "0.2.0.dev11"
263
263
  source = { editable = "." }
264
264
  dependencies = [
265
265
  { name = "appdirs" },
Binary file