---
title: Web configuration
description: Change Wi‑Fi, LLM, IM, and files from a browser on the LAN—no rebuild.
---

import { Aside, Steps, LinkCard } from '@astrojs/starlight/components';

`edge_agent` starts a small HTTP server after Wi‑Fi is up, serves the config UI, and exposes JSON APIs. Implementation: `application/edge_agent/components/http_server/`.

## Open the config UI

Your computer or phone must be on the **same LAN** as the board, or connected to the **board-provided SoftAP hotspot** (in `edge_agent`, default SSID is `esp-claw-xxxx`, where `xxxx` is derived from the device MAC address).

In the browser open:
[http://esp-claw.local/](http://esp-claw.local/)
or
`http://<device-ip>/`


<Aside type="note">
  - If `.local` fails, use the IP printed on serial or from your router’s DHCP list.
  - Default port **80**; if you change port or mDNS name, use the updated URL/port.
</Aside>

The page loads current settings automatically. The UI supports multi-language switching and displays Wi-Fi status, device IP, and other information.

## Page layout

The configuration page is divided into three tabs:

- **Configuration**: System settings (Wi-Fi, LLM, IM, search, time zone, etc.)
- **Memory**: Memory file management (long-term memory and profile memory)
- **File Manager**: Filesystem management

### System settings

#### LLM provider selection

The page provides an **LLM Provider** dropdown menu. Selecting a provider automatically fills in the corresponding `Profile`, `Base URL`, `Backend Type`, and `Auth Type`:

| Provider | Profile | Base URL |
|----------|---------|----------|
| OpenAI | `openai` | `https://api.openai.com/v1` |
| Qwen Compatible | `qwen_compatible` | `https://dashscope.aliyuncs.com/compatible-mode/v1` |
| Anthropic | `anthropic` | `https://api.anthropic.com/v1` |
| Custom | Custom | Custom |

After choosing a provider, you only need to fill in your `API Key` and `Model`. Other LLM configuration items match the tables in [Configuration](@lang/reference-project/configuration).

#### Enable WeChat ClawBot

WeChat ships ClawBot as a plugin—enable it in WeChat first, then log in via the Web config page:

<Steps>
1. **Enable the WeChat ClawBot plugin**

    WeChat Me → Settings → Plugins → ClawBot, and turn it on.
    <Aside type="tip">
      If you cannot find the plugin, update WeChat to the latest version.
    </Aside>

2. **Log in on the Web config page**

    Open the Web config page. You can log in via two ways:
    - **Scan QR login**: Click 「Generate QR」 to create a QR code, then in WeChat Me → Settings → Plugins → ClawBot, use Scan to read the code.
    - **Link login**: Click 「Generate QR」 to create a QR code first, then click 「Open login link」 to open the login page in a new window and follow the prompts.

3. **Signed in**

    After login, the Web page shows a confirmation.

4. **Save**

    Click Save Changes to persist all settings.
</Steps>

<Aside type="note">
  The UI can edit WeChat Base URL & WeChat CDN Base URL, but WeChat currently only works with the default base URL—do not change it.
</Aside>

#### Other settings

Network, search, and time zone follow the same fields as [Configuration](@lang/reference-project/configuration).

### Memory manager

The Memory manager page is used to view and manage the long-term memory, soul, identity, and user information in the memory system.

- **Long-term memory** is a human-readable file generated by the system based on structured memory. Modifying this file does not directly change the structured memory, so it only provides a read-only view function.
- **Soul**, **Identity**, and **User Information** are editable files used to record the personalized information of the device and the user.

After chatting with ESP-Claw, you can click the "Refresh" button or "Refresh All" button to refresh the memory files and view the latest memory content.

<LinkCard href="@lang/reference-project/memory" title="Memory Reference Documentation" description="Learn more about long-term memory, soul, identity, and user information" />

### File manager

The Web UI includes a simple file manager so you can browse and read/write files directly, without going through the LLM.
For the ESP-Claw runtime filesystem structure, see [Filesystem layout](@lang/reference-project/boot-and-runtime#filesystem-layout).

By default, the file manager is read-only. Write operations are available only after enabling Admin mode (Dev Mode).
After enabling Admin mode, you can manually add Skills, edit automation rules, modify Lua scripts, and more.

<Aside type="danger" title="Warning">
  After enabling Admin mode, operate carefully. Deleting critical files or writing invalid JSON may cause system malfunction or even reboot loops.
</Aside>

<Aside type="note">
  - Upload/download size limits depend on `CONFIG_HTTP_MAX_UPLOAD_SIZE` in your build.
  - After editing automation rules, run `auto reload` in the Console (see [Console usage](@lang/reference-project/console-usage)).
</Aside>

## Security

**`edge_agent` is not designed for production. Its HTTP server assumes a trusted environment and returns almost all information to help with debugging.**

<Aside type="caution" title="Security notes">
  - **Do not expose the web config page port to the public Internet.**
  - **Note that the SoftAP also provides complete configuration information, including secret tokens.**
  - The service runs on LAN and uses plain HTTP by default (no HTTPS).
  - Config and NVS contain secret tokens; do not publicly share exported config files or full NVS dumps.
  - The config page can download almost all files from the filesystem.
</Aside>
