HEX
Server: Apache/2.4.46 (Win64) OpenSSL/1.1.1j PHP/8.4.25
System: Windows NT DESKTOP-4TAV2RJ 10.0 build 19045 (Windows 10) AMD64
User: fred (0)
PHP: 8.4.25
Disabled: NONE
Upload Files
File: C:/Users/fred/.codex/.tmp/plugins/plugins/base44/skills/base44-cli/references/functions-pull.md
# base44 functions pull

Pull deployed functions from Base44 to local files.

## Syntax

```bash
npx base44 functions pull [name]
```

## Arguments

| Argument | Description | Required |
|----------|-------------|----------|
| `[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. Writes function files to the local `functions/` directory (configured in `base44/config.jsonc`)
4. Reports each file as `written` (new/updated) or `unchanged`

## Examples

```bash
# Pull all deployed functions
npx base44 functions pull

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

## Output

```bash
$ 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:
```bash
$ 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:
```bash
$ npx base44 functions pull nonexistent
✓ Function "nonexistent" not found on remote
```

If no functions exist on remote:
```bash
$ 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`)
- 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