Skip to main content
This page is part of an AI coding agent skill and is written for agents, not humans. For the human-readable Base44 docs, see the developer documentation.

base44 agents push

Push local AI agent configurations to Base44. Agents are conversational AI assistants that can interact with users, access your app’s entities, and call backend functions.

Syntax

Options

Authentication

Required: Yes. If not authenticated, you’ll be prompted to login first.

What It Does

  1. Reads all agent files from the base44/agents/ directory
  2. Validates agent configurations
  3. Displays the count of agents to be pushed
  4. Asks for confirmation before replacing remote agents (unless -y/--yes is passed)
  5. Uploads agents to the Base44 backend
  6. Reports the results: created, updated, and deleted agents

Prerequisites

  • Must be run from a Base44 project directory
  • Project must have agent definitions in the base44/agents/ folder

Confirmation Prompt

This is a destructive, full-sync push: any remote agent not present locally is deleted. Before pushing, the CLI warns you and asks for confirmation:
In non-interactive mode (--json, CI/CD, no TTY), you must pass -y/--yes or the command throws.

Output

Agent Synchronization

The push operation synchronizes your local agents with Base44:
  • Created: New agents that didn’t exist in Base44
  • Updated: Existing agents with modified configuration
  • Deleted: Agents that were removed from your local configuration
Warning: This is a full sync operation. Agents removed locally will be deleted from Base44.

Error Handling

If no agents are found in your project:
If an agent has an invalid name:

Agent Configuration Schema

Each agent file should be a .jsonc file in base44/agents/ with this structure:
Naming rules:
  • Agent names must match pattern: /^[a-z0-9_]+$/ (lowercase alphanumeric with underscores only, 1-100 characters)
    • Valid: support_agent, order_bot, task_helper
    • Invalid: Support-Agent, OrderBot, task helper
  • Agent file names must use underscores (matching the agent name)
    • Valid: support_agent.jsonc, order_bot.jsonc
    • Invalid: support-agent.jsonc (hyphens not allowed)
  • Entity names in tool_configs must use PascalCase (matching the entity’s name field)
    • Valid: "entity_name": "Task", "entity_name": "TeamMember"
    • Invalid: "entity_name": "task", "entity_name": "team_member"
Required fields:
  • name: Required, must follow naming rules above
  • description: Required, minimum 1 character
  • instructions: Required, minimum 1 character
  • tool_configs: Optional, defaults to empty array
  • memory_config: Optional, see Memory Configuration below
  • whatsapp_greeting: Optional

Memory Configuration

memory_config lets an agent remember facts across conversations. To disable memory, set "enabled": false explicitly — if you omit memory_config entirely, the backend applies its default and memory is enabled.

Common Mistake: Wrong tool_configs Format

WRONG - Do NOT use tools with type and entity:
CORRECT - Use tool_configs with entity_name and allowed_operations:

Best Practices for Agent Instructions

When giving agents access to entities, be explicit in the instructions about using the tools:
Without explicit instructions to use the entity tools, the agent may not proactively query user data when asked.

Use Cases

  • After defining new agents in your project
  • When modifying existing agent configurations
  • To sync agent changes before testing
  • As part of your development workflow when agent behavior changes

Notes

  • This command syncs the agent configuration, not conversation data
  • Changes are applied to your Base44 project immediately
  • Make sure to test agent changes in a development environment first
  • Agent definitions are located in the base44/agents/ directory
  • Use base44 agents pull to download agents from Base44