Skip to content

feat: Dynamic Agents SDK (base44.dynamicAgents)#205

Closed
yardend-wix wants to merge 12 commits into
mainfrom
feature/dynamic-agents
Closed

feat: Dynamic Agents SDK (base44.dynamicAgents)#205
yardend-wix wants to merge 12 commits into
mainfrom
feature/dynamic-agents

Conversation

@yardend-wix

Copy link
Copy Markdown
Collaborator

Dynamic Agents SDK

Adds a code-first AI surface to the SDK — base44.dynamicAgents — built on the Base44 AI Gateway.

Until now, the only agent in the SDK is the static one (base44.agents): defined in the dashboard, referenced by name, with Base44 running the loop. This introduces the dynamic agent — defined entirely in code at runtime (model, system prompt, tools) and driven by the SDK. Same idea, split by who defines and drives it, so the two coexist cleanly.

The goal is to let builders (and the app-builder agent) add an agent, a tool loop, or a single-shot generation with zero connection setup. The model is a plain string; the gateway URL and auth token are resolved internally from the base44 client, so call sites stay configuration-free.

What this adds

  • base44.dynamicAgents.create(...) — declare a reusable agent (model, system prompt, tools, step limit), then run it.
  • base44.dynamicAgents.run(...) — one-shot shorthand for a single prompt with no tools.
  • tool(...) — define a hand-written tool an agent can call.
  • .asTool() — the unifying way to give an agent capabilities. An existing dynamic agent can be handed to another agent as a sub-agent, and a backend function can be exposed as a callable tool. (Exposing entities as tools is a planned follow-up within this same effort.)

Under the hood, a dynamic agent runs a tool-calling loop against the gateway's OpenAI-compatible endpoint, respecting the gateway's current constraints, and reports credit usage on the result. The connection is resolved automatically from the client — the configured app in the browser, or per request inside a backend function — so concurrent requests stay isolated from one another.

The existing static agents (base44.agents) and the legacy single-shot InvokeLLM are intentionally left untouched.

Backend

Built on the Base44 AI Gateway: base44-dev/apper#12366

🤖 Generated with Claude Code

@claude

claude Bot commented Jun 23, 2026

Copy link
Copy Markdown

Claude encountered an error —— View job


I'll analyze this and get back to you.

@github-actions

Copy link
Copy Markdown

🚀 Package Preview Available!


Install this PR's preview build with npm:

npm i @base44-preview/sdk@0.8.32-pr.205.168e407

Prefer not to change any import paths? Install using npm alias so your code still imports @base44/sdk:

npm i "@base44/sdk@npm:@base44-preview/sdk@0.8.32-pr.205.168e407"

Or add it to your package.json dependencies:

{
  "dependencies": {
    "@base44/sdk": "npm:@base44-preview/sdk@0.8.32-pr.205.168e407"
  }
}

Preview published to npm registry — try new features instantly!

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