agent-pack-haystack 0.0.1__tar.gz → 0.0.2__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 (29) hide show
  1. agent_pack_haystack-0.0.2/CHANGELOG.md +14 -0
  2. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/PKG-INFO +4 -3
  3. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/README.md +1 -0
  4. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/pyproject.toml +2 -1
  5. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/src/haystack_integrations/agent_pack/deep_research/agent.py +3 -26
  6. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/tests/deep_research/test_agent.py +5 -0
  7. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/.gitignore +0 -0
  8. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/LICENSE.txt +0 -0
  9. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/examples/advanced_rag_eval.py +0 -0
  10. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/pydoc/config_docusaurus.yml +0 -0
  11. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/src/haystack_integrations/agent_pack/__init__.py +0 -0
  12. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/src/haystack_integrations/agent_pack/advanced_rag/__init__.py +0 -0
  13. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/src/haystack_integrations/agent_pack/advanced_rag/agent.py +0 -0
  14. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/src/haystack_integrations/agent_pack/advanced_rag/hooks.py +0 -0
  15. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/src/haystack_integrations/agent_pack/advanced_rag/prompts.py +0 -0
  16. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/src/haystack_integrations/agent_pack/advanced_rag/tools.py +0 -0
  17. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/src/haystack_integrations/agent_pack/deep_research/__init__.py +0 -0
  18. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/src/haystack_integrations/agent_pack/deep_research/hooks.py +0 -0
  19. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/src/haystack_integrations/agent_pack/deep_research/prompts.py +0 -0
  20. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/src/haystack_integrations/agent_pack/deep_research/tools.py +0 -0
  21. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/src/haystack_integrations/agent_pack/py.typed +0 -0
  22. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/tests/__init__.py +0 -0
  23. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/tests/advanced_rag/__init__.py +0 -0
  24. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/tests/advanced_rag/test_agent.py +0 -0
  25. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/tests/advanced_rag/test_hooks.py +0 -0
  26. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/tests/advanced_rag/test_tools.py +0 -0
  27. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/tests/deep_research/__init__.py +0 -0
  28. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/tests/deep_research/test_hooks.py +0 -0
  29. {agent_pack_haystack-0.0.1 → agent_pack_haystack-0.0.2}/tests/deep_research/test_tools.py +0 -0
@@ -0,0 +1,14 @@
1
+ # Changelog
2
+
3
+ ## [integrations/agent_pack-v0.0.1] - 2026-07-20
4
+
5
+ ### 🚀 Features
6
+
7
+ - Add advanced rag agent (#3600)
8
+
9
+ ### 🧹 Chores
10
+
11
+ - Move agent pack to core integrations (#3591)
12
+ - Prepare Agent pack for 3.0 release (#3611)
13
+
14
+ <!-- generated by git-cliff -->
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.4
1
+ Metadata-Version: 2.5
2
2
  Name: agent-pack-haystack
3
- Version: 0.0.1
3
+ Version: 0.0.2
4
4
  Summary: Pre-configured Haystack Agents
5
5
  Project-URL: Documentation, https://github.com/deepset-ai/haystack-core-integrations/tree/main/integrations/agent_pack#readme
6
6
  Project-URL: Issues, https://github.com/deepset-ai/haystack-core-integrations/issues
@@ -20,7 +20,7 @@ Classifier: Programming Language :: Python :: 3.14
20
20
  Classifier: Programming Language :: Python :: Implementation :: CPython
21
21
  Classifier: Programming Language :: Python :: Implementation :: PyPy
22
22
  Requires-Python: >=3.10
23
- Requires-Dist: haystack-ai>=3.0.0
23
+ Requires-Dist: haystack-ai>=3.1.0
24
24
  Description-Content-Type: text/markdown
25
25
 
26
26
  # agent-pack-haystack
@@ -28,6 +28,7 @@ Description-Content-Type: text/markdown
28
28
  [![PyPI - Version](https://img.shields.io/pypi/v/agent-pack-haystack.svg)](https://pypi.org/project/agent-pack-haystack)
29
29
  [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/agent-pack-haystack.svg)](https://pypi.org/project/agent-pack-haystack)
30
30
 
31
+ - [Integration page](https://docs.haystack.deepset.ai/docs/agent-pack)
31
32
  - [Changelog](https://github.com/deepset-ai/haystack-core-integrations/blob/main/integrations/agent_pack/CHANGELOG.md)
32
33
 
33
34
  ---
@@ -3,6 +3,7 @@
3
3
  [![PyPI - Version](https://img.shields.io/pypi/v/agent-pack-haystack.svg)](https://pypi.org/project/agent-pack-haystack)
4
4
  [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/agent-pack-haystack.svg)](https://pypi.org/project/agent-pack-haystack)
5
5
 
6
+ - [Integration page](https://docs.haystack.deepset.ai/docs/agent-pack)
6
7
  - [Changelog](https://github.com/deepset-ai/haystack-core-integrations/blob/main/integrations/agent_pack/CHANGELOG.md)
7
8
 
8
9
  ---
@@ -23,7 +23,7 @@ classifiers = [
23
23
  "Programming Language :: Python :: Implementation :: CPython",
24
24
  "Programming Language :: Python :: Implementation :: PyPy",
25
25
  ]
26
- dependencies = ["haystack-ai>=3.0.0"]
26
+ dependencies = ["haystack-ai>=3.1.0"]
27
27
 
28
28
  [project.urls]
29
29
  Documentation = "https://github.com/deepset-ai/haystack-core-integrations/tree/main/integrations/agent_pack#readme"
@@ -133,6 +133,7 @@ ignore = [
133
133
  "PLR0912",
134
134
  "PLR0913",
135
135
  "PLR0915",
136
+ "PLR0917",
136
137
  # Allow `Any` type - used legitimately for dynamic types and SDK boundaries
137
138
  "ANN401",
138
139
  ]
@@ -18,7 +18,7 @@ from haystack.components.generators.chat import OpenAIResponsesChatGenerator
18
18
  from haystack.components.generators.chat.types import ChatGenerator
19
19
  from haystack.dataclasses import ChatMessage
20
20
  from haystack.lazy_imports import LazyImport
21
- from haystack.tools import ComponentTool
21
+ from haystack.tools import AgentTool
22
22
 
23
23
  from haystack_integrations.agent_pack.deep_research import prompts
24
24
  from haystack_integrations.agent_pack.deep_research.hooks import ScopeHook, WriteHook
@@ -82,27 +82,6 @@ def _make_researcher_agent(
82
82
  )
83
83
 
84
84
 
85
- # Minimal input schema for the research_subtopic tool
86
- _RESEARCH_SUBTOPIC_PARAMS = {
87
- "type": "object",
88
- "properties": {
89
- "messages": {
90
- "type": "array",
91
- "description": "Exactly one user message whose content is the sub-question to research.",
92
- "items": {
93
- "type": "object",
94
- "properties": {
95
- "role": {"type": "string", "enum": ["user"]},
96
- "content": {"type": "string", "description": "The sub-question to research."},
97
- },
98
- "required": ["role", "content"],
99
- },
100
- }
101
- },
102
- "required": ["messages"],
103
- }
104
-
105
-
106
85
  def create_deep_research_agent(
107
86
  *,
108
87
  scope_llm: ChatGenerator | None = None,
@@ -156,16 +135,14 @@ def create_deep_research_agent(
156
135
  max_content_length=max_content_length,
157
136
  )
158
137
 
159
- research_subtopic = ComponentTool(
160
- component=researcher,
138
+ research_subtopic = AgentTool(
139
+ agent=researcher,
161
140
  name="research_subtopic",
162
141
  description=(
163
142
  "Research ONE focused sub-question in an isolated context. "
164
143
  "Pass the sub-question as a user message. "
165
144
  "Returns a compressed, cited summary of the findings."
166
145
  ),
167
- parameters=_RESEARCH_SUBTOPIC_PARAMS,
168
- outputs_to_string={"source": "last_message"},
169
146
  outputs_to_state={"notes": {"source": "last_message", "handler": _collect_note}},
170
147
  )
171
148
 
@@ -5,6 +5,7 @@ from haystack.components.agents import Agent
5
5
  from haystack.components.generators.chat import MockChatGenerator, OpenAIResponsesChatGenerator
6
6
  from haystack.core.serialization import allow_deserialization_module
7
7
  from haystack.dataclasses import ChatMessage, ToolCall
8
+ from haystack.tools import AgentTool
8
9
 
9
10
  from haystack_integrations.agent_pack.deep_research.agent import (
10
11
  _collect_note,
@@ -69,6 +70,9 @@ def test_create_deep_research_agent():
69
70
  max_orchestrator_steps=6,
70
71
  )
71
72
  assert [t.name for t in agent.tools] == ["research_subtopic", "think_tool"]
73
+ assert isinstance(agent.tools[0], AgentTool)
74
+ assert agent.tools[0].parameters["properties"]["messages"]["minItems"] == 1
75
+ assert agent.tools[0].parameters["properties"]["messages"]["maxItems"] == 1
72
76
  assert agent.exit_conditions == ["text"]
73
77
  assert agent.max_agent_steps == 6
74
78
  assert agent.tool_concurrency_limit == 2
@@ -115,6 +119,7 @@ def test_create_deep_research_agent_serialization_roundtrip():
115
119
 
116
120
  assert isinstance(restored, Agent)
117
121
  assert [t.name for t in restored.tools] == ["research_subtopic", "think_tool"]
122
+ assert isinstance(restored.tools[0], AgentTool)
118
123
  assert [type(h) for h in restored.hooks["before_run"]] == [ScopeHook]
119
124
  assert [type(h) for h in restored.hooks["after_run"]] == [WriteHook]
120
125
  assert set(restored.state_schema) >= {"notes", "brief", "report"}