Manual Browser Login for Automation and X/Twitter Posting

Learn how to manually log into websites using the openclaw Chrome profile for browser automation. This method is recommended for bot-sensitive platforms like X/Twitter to avoid account locks.

Read this when

  • You need to log into sites for browser automation
  • You want to post updates to X/Twitter

Manual login (recommended)

When a website needs you to log in, do it manually inside the host browser's openclaw profile. Never hand your credentials to the model: automated sign-ins frequently trip anti-bot measures and could get the account locked.

Use the host browser (manual login) for both reading (searching threads) and posting on X/Twitter and other bot-sensitive platforms. Sandboxed browser sessions are more prone to triggering bot detection.

Return to the main browser docs: Browser.

Which Chrome profile is used?

OpenClaw manages a dedicated Chrome profile called openclaw (orange-tinted UI), separate from your everyday browser profile.

For agent browser tool calls:

  • Default behavior: the agent uses its isolated openclaw browser.
  • Use profile="user" only when existing logged-in sessions matter and you are at the machine to click or approve any attach prompt.
  • If you have multiple user-browser profiles, specify the profile explicitly rather than relying on guessing.

Two ways to access the openclaw profile:

  1. Ask the agent to open the browser, then log in yourself.
  2. Open it via CLI:
openclaw browser start
openclaw browser open https://x.com

For a non-default profile, put --browser-profile <name> before the subcommand (default is openclaw):

openclaw browser --browser-profile <name> open https://x.com

Sandboxing: allow host browser access

When the agent is sandboxed, its browser tool calls default to the sandbox browser, not the host. To let the agent target the host browser instead:

{
  agents: {
    defaults: {
      sandbox: {
        mode: "non-main",
        browser: {
          allowHostControl: true,
        },
      },
    },
  },
}

CLI invocations always target the host browser, never the sandbox, so you can open the host browser yourself regardless of this setting:

openclaw browser --browser-profile openclaw open https://x.com

Once sandbox.browser.allowHostControl: true is set, the agent's browser tool calls can also target the host. Alternatively, disable sandboxing for the agent that posts updates.