Repository navigation
feat: add the team agent to the Pydantic AI app - #7
Merged
Merged
Conversation
…anthropic 2.x Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
… tools Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This pull request brings the
pydantic-aiapp to parity with the OpenAI Agents SDK team agent from #5: the agent writes what channel messages settle into runbooks, then answers from those runbooks next time.Runbook: <topic>.list_runbooks(files.list),read_runbook(canvases.getContent), andcreate_runbook(canvases.createwithchannel_id) are aFunctionToolset. The emoji reaction tool stays on the agent.run_agent()swaps the runbook toolset for the Slack MCP Server, filtered to its search and canvas tools, so the agent works as them and can edit existing runbooks.claude-sonnet-5-5withANTHROPIC_API_KEY, otherwisegpt-6.1-solwithOPENAI_API_KEY, matchingbolt-python-coding-agent. A missing key now shows as an error in Slack, not at startup.pydantic-aifrom 2.55.0 to 2.63.0. 2.55.0 resolvesanthropic2.3.0, whereBetaMessageParamis aUnion, so every Anthropic run failed withTypeError: 'typing.Union' object is not callable. 2.60.0 is the first release that doesn't call it.canvases:read,canvases:write,files:read. Both scope lists are sorted.README.mdandAGENTS.mdnow describe the team agent instead of the starter agent. The root README followsbolt-python-coding-agent's, so it drops the starter's Using the App and Local Development sections.Known risks (same as #5):
Testing
ANTHROPIC_API_KEYset, runslack runand invite the agent to a channel. Post "Fixed it: rotate the signing secret, then redeploy." Confirm aRunbook: <topic>tab appears in the channel and only you see an ephemeral note with the link.ANTHROPIC_API_KEY, setOPENAI_API_KEY, and repeat the @mention.app_oauth.py), connect the Slack MCP Server from the Home tab. Post a correction ("Actually, redeploy before rotating") and confirm the existing runbook is updated.🤖 Generated with Claude Code