diff --git a/claude-agent-sdk/agent/tools/read_runbook.py b/claude-agent-sdk/agent/tools/read_runbook.py index c756e6b..e408c39 100644 --- a/claude-agent-sdk/agent/tools/read_runbook.py +++ b/claude-agent-sdk/agent/tools/read_runbook.py @@ -28,12 +28,7 @@ async def read_runbook_tool(args): """Read a runbook's content as markdown.""" deps = agent_deps_var.get() try: - response = await deps.client.api_call( - "canvases.getContent", - params={ - "canvas_id": args["canvas_id"], - }, - ) + response = await deps.client.canvases_getContent(canvas_id=args["canvas_id"]) text = response.get("content", "") except SlackApiError as e: text = f"Could not read the runbook: {e.response['error']}" diff --git a/claude-agent-sdk/pyproject.toml b/claude-agent-sdk/pyproject.toml index ea66de2..fad6601 100644 --- a/claude-agent-sdk/pyproject.toml +++ b/claude-agent-sdk/pyproject.toml @@ -3,7 +3,7 @@ name = "bolt-python-team-agent-claude-agent-sdk" version = "0.1.0" requires-python = ">=3.12" dependencies = [ - "slack-sdk==3.45.0", + "slack-sdk==3.46.0", "slack-bolt==1.30.0", "slack-cli-hooks==0.3.0", "claude-agent-sdk==0.2.174", diff --git a/claude-agent-sdk/tests/test_tools.py b/claude-agent-sdk/tests/test_tools.py index 01eeb71..3e84e3c 100644 --- a/claude-agent-sdk/tests/test_tools.py +++ b/claude-agent-sdk/tests/test_tools.py @@ -26,8 +26,8 @@ async def invoke(tool: SdkMcpTool, deps: AgentDeps, **args) -> str: class TestTools: def setup_method(self): self.client = Mock(AsyncWebClient) - self.client.api_call = AsyncMock() self.client.canvases_create = AsyncMock() + self.client.canvases_getContent = AsyncMock() self.client.files_info = AsyncMock( return_value={ "file": { @@ -76,21 +76,18 @@ async def test_list_runbooks_without_any(self): @pytest.mark.asyncio async def test_read_runbook_returns_its_markdown(self): - self.client.api_call.return_value = {"content": "# Steps\n1. Rotate the secret"} + self.client.canvases_getContent.return_value = { + "content": "# Steps\n1. Rotate the secret" + } result = await invoke(read_runbook_tool, self.deps, canvas_id="F123") - self.client.api_call.assert_called_once_with( - "canvases.getContent", - params={ - "canvas_id": "F123", - }, - ) + self.client.canvases_getContent.assert_called_once_with(canvas_id="F123") assert result == "# Steps\n1. Rotate the secret" @pytest.mark.asyncio async def test_read_runbook_reports_errors(self): - self.client.api_call.side_effect = slack_error("canvas_not_found") + self.client.canvases_getContent.side_effect = slack_error("canvas_not_found") result = await invoke(read_runbook_tool, self.deps, canvas_id="F404") diff --git a/openai-agents-sdk/agent/tools/read_runbook.py b/openai-agents-sdk/agent/tools/read_runbook.py index 6c1243b..1c31d27 100644 --- a/openai-agents-sdk/agent/tools/read_runbook.py +++ b/openai-agents-sdk/agent/tools/read_runbook.py @@ -16,9 +16,7 @@ async def read_runbook(wrapper: RunContextWrapper[AgentDeps], canvas_id: str) -> """ deps = wrapper.context try: - response = deps.client.api_call( - "canvases.getContent", params={"canvas_id": canvas_id} - ) + response = deps.client.canvases_getContent(canvas_id=canvas_id) except SlackApiError as e: return f"Could not read the runbook: {e.response['error']}" return response.get("content", "") diff --git a/openai-agents-sdk/pyproject.toml b/openai-agents-sdk/pyproject.toml index 1309415..ba070d3 100644 --- a/openai-agents-sdk/pyproject.toml +++ b/openai-agents-sdk/pyproject.toml @@ -3,7 +3,7 @@ name = "bolt-python-team-agent-openai-agents-sdk" version = "0.1.0" requires-python = ">=3.10" dependencies = [ - "slack-sdk==3.45.0", + "slack-sdk==3.46.0", "slack-bolt==1.30.0", "slack-cli-hooks==0.3.0", "openai-agents==0.24.0", diff --git a/openai-agents-sdk/tests/test_tools.py b/openai-agents-sdk/tests/test_tools.py index 764816c..46958d9 100644 --- a/openai-agents-sdk/tests/test_tools.py +++ b/openai-agents-sdk/tests/test_tools.py @@ -72,17 +72,17 @@ def test_list_runbooks_without_any(self): assert invoke(list_runbooks, self.deps) == "No runbooks yet." def test_read_runbook_returns_its_markdown(self): - self.client.api_call.return_value = {"content": "# Steps\n1. Rotate the secret"} + self.client.canvases_getContent.return_value = { + "content": "# Steps\n1. Rotate the secret" + } result = invoke(read_runbook, self.deps, canvas_id="F123") - self.client.api_call.assert_called_once_with( - "canvases.getContent", params={"canvas_id": "F123"} - ) + self.client.canvases_getContent.assert_called_once_with(canvas_id="F123") assert result == "# Steps\n1. Rotate the secret" def test_read_runbook_reports_errors(self): - self.client.api_call.side_effect = slack_error("canvas_not_found") + self.client.canvases_getContent.side_effect = slack_error("canvas_not_found") result = invoke(read_runbook, self.deps, canvas_id="F404") diff --git a/pydantic-ai/agent/tools/read_runbook.py b/pydantic-ai/agent/tools/read_runbook.py index ba1c974..7446bc6 100644 --- a/pydantic-ai/agent/tools/read_runbook.py +++ b/pydantic-ai/agent/tools/read_runbook.py @@ -15,12 +15,7 @@ async def read_runbook(ctx: RunContext[AgentDeps], canvas_id: str) -> str: """ deps = ctx.deps try: - response = deps.client.api_call( - "canvases.getContent", - params={ - "canvas_id": canvas_id, - }, - ) + response = deps.client.canvases_getContent(canvas_id=canvas_id) except SlackApiError as e: return f"Could not read the runbook: {e.response['error']}" return response.get("content", "") diff --git a/pydantic-ai/pyproject.toml b/pydantic-ai/pyproject.toml index aed25ee..84b69c2 100644 --- a/pydantic-ai/pyproject.toml +++ b/pydantic-ai/pyproject.toml @@ -3,7 +3,7 @@ name = "bolt-python-team-agent-pydantic-ai" version = "0.1.0" requires-python = ">=3.10" dependencies = [ - "slack-sdk==3.45.0", + "slack-sdk==3.46.0", "slack-bolt==1.30.0", "slack-cli-hooks==0.3.0", "pydantic-ai[openai,anthropic]==2.63.0", diff --git a/pydantic-ai/tests/test_tools.py b/pydantic-ai/tests/test_tools.py index 771e7d6..3347024 100644 --- a/pydantic-ai/tests/test_tools.py +++ b/pydantic-ai/tests/test_tools.py @@ -64,17 +64,17 @@ def test_list_runbooks_without_any(self): assert invoke(list_runbooks, self.deps) == "No runbooks yet." def test_read_runbook_returns_its_markdown(self): - self.client.api_call.return_value = {"content": "# Steps\n1. Rotate the secret"} + self.client.canvases_getContent.return_value = { + "content": "# Steps\n1. Rotate the secret" + } result = invoke(read_runbook, self.deps, canvas_id="F123") - self.client.api_call.assert_called_once_with( - "canvases.getContent", params={"canvas_id": "F123"} - ) + self.client.canvases_getContent.assert_called_once_with(canvas_id="F123") assert result == "# Steps\n1. Rotate the secret" def test_read_runbook_reports_errors(self): - self.client.api_call.side_effect = slack_error("canvas_not_found") + self.client.canvases_getContent.side_effect = slack_error("canvas_not_found") result = invoke(read_runbook, self.deps, canvas_id="F404")