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 functions pull

Pull deployed functions from Base44 to local files.

Syntax

npx base44 functions pull [name]

Arguments

ArgumentDescriptionRequired
[name]Function name to pull (pulls all if omitted)No

Authentication

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

What It Does

  1. Fetches deployed functions from Base44
  2. Filters to the specified function if [name] is provided
  3. Skips functions owned by a plugin (they are not written locally)
  4. Writes function files to the local functions/ directory (configured in base44/config.jsonc)
  5. Reports each file as written (new/updated) or unchanged

Examples

# Pull all deployed functions
npx base44 functions pull

# Pull a specific function
npx base44 functions pull process-order

Output

$ npx base44 functions pull
 Functions fetched successfully
 Function files written successfully
 process-order              written
 send-notification          unchanged

 Pulled 2 functions to base44/functions
Single function:
$ npx base44 functions pull process-order
 Functions fetched successfully
 Function files written successfully
 process-order              written

 Pulled 1 function to base44/functions

Error Handling

If the specified function is not found on remote:
$ npx base44 functions pull nonexistent
 Function "nonexistent" not found on remote
If the specified function is plugin-owned:
$ npx base44 functions pull plugin-func
 Function "plugin-func" is managed by a plugin and was not pulled into base44/functions
If no functions exist on remote:
$ npx base44 functions pull
 No functions found on remote

Notes

  • Files are written to the functionsDir configured in base44/config.jsonc (defaults to functions/)
  • Files already matching remote content are skipped (reported as unchanged)
  • Plugin-owned functions are skipped — functions managed by a plugin are never written locally; they appear as plugin-owned, skipped in output
  • This overwrites existing local function files with remote versions — commit local changes first
  • Use npx base44 functions deploy to push local changes back to Base44
  • Use npx base44 functions list to see what functions are deployed on remote