Skip to content

feat: accept republic built-in tools in core Agent - #358

Merged
frostming merged 1 commit into
devfrom
feat/core-agent-builtin-tools
Oct 14, 2026
Merged

frostming merged 1 commit into
devfrom
feat/core-agent-builtin-tools

Conversation

@frostming

Copy link
Copy Markdown
Collaborator

What & why

bub.core.Agent now accepts republic.tools built-in tools (WebSearch, WebFetch, CodeExecution, ImageGeneration, NativeTool) alongside Tool objects:

agent = Agent(model=model, tools=[my_tool, republic.tools.WebSearch()])
  • Function tools stay in agent.tools by name; built-in tools go to the new agent.builtin_tools list.
  • Built-in tools are appended to tools on every model call; republic maps them to each API format's native definition (and raises UnsupportedFeatureError for unsupported combinations).
  • Providers run them server-side, so they bypass ToolExecutor, BeforeToolCall and prepare_tools. Their calls and results already round-trip through ProviderData on the tape.

Impacted modules

  • src/bub/core/agent.py
  • tests/test_core_agent.py
  • website/src/content/docs/{,zh-cn/}docs/build/sdk.md

Verification

  • uv run pytest -q: 616 passed, 20 skipped
  • uv run mypy src: clean
  • uv run ruff check: clean

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@cloudflare-workers-and-pages

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
bub 6d850dc Commit Preview URL

Branch Preview URL
Oct 14 2026, 02:36 AM

@frostming
frostming changed the base branch from main to dev October 14, 2026 02:37
@frostming
frostming merged commit 48a4b7c into dev Oct 14, 2026
6 checks passed
@frostming
frostming deleted the feat/core-agent-builtin-tools branch October 14, 2026 02:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant