> ## Documentation Index
> Fetch the complete documentation index at: https://docs.argentos.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Remote Access

> Access your ArgentOS gateway remotely via Tailscale, SSH tunnels, or reverse proxies.

## Overview

By default, the gateway only listens on localhost. To access it from other devices (phone, laptop, office), you need to configure remote access. ArgentOS supports several approaches, with Tailscale being the recommended option.

## Tailscale (Recommended)

[Tailscale](https://tailscale.com) creates a secure WireGuard mesh network between your devices. It is the simplest and most secure way to access your gateway remotely.

### Setup

<Steps>
  <Step title="Install Tailscale">
    Install Tailscale on your ArgentOS server and your remote devices
  </Step>

  <Step title="Configure the gateway">
    Configure the gateway to listen on the Tailscale interface:

    ```json theme={null}
    {
      "gateway": {
        "host": "0.0.0.0",
        "port": 18789
      }
    }
    ```
  </Step>

  <Step title="Access from any device">
    Access the dashboard from any device on your Tailscale network:

    ```
    http://your-server.tailnet-name.ts.net:3141
    ```
  </Step>
</Steps>

### Benefits

* End-to-end encrypted (WireGuard)
* No port forwarding required
* Works behind NAT and firewalls
* Free for personal use (up to 100 devices)

## SSH Tunnel

For quick access without installing Tailscale:

```bash theme={null}
# From your remote machine
ssh -L 3141:localhost:3141 -L 18789:localhost:18789 user@your-server
```

Then open `http://localhost:3141` on your local machine.

### Persistent SSH Tunnel

Use `autossh` for a persistent tunnel that reconnects automatically:

```bash theme={null}
autossh -M 0 -f -N -L 3141:localhost:3141 -L 18789:localhost:18789 user@your-server
```

## Reverse Proxy (Nginx/Caddy)

For HTTPS access with a domain name:

<Tabs>
  <Tab title="Caddy">
    ```
    argentos.yourdomain.com {
        reverse_proxy localhost:3141
    }

    ws.argentos.yourdomain.com {
        reverse_proxy localhost:18789
    }
    ```
  </Tab>

  <Tab title="Nginx">
    ```nginx theme={null}
    server {
        listen 443 ssl;
        server_name argentos.yourdomain.com;

        location / {
            proxy_pass http://localhost:3141;
        }

        location /ws {
            proxy_pass http://localhost:18789;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
        }
    }
    ```
  </Tab>
</Tabs>

## Security Considerations

<Danger>
  Never expose the gateway directly to the public internet without authentication.
</Danger>

* **Always enable gateway auth** when exposing remotely
* **Use HTTPS** for reverse proxy setups
* **Restrict access** with firewall rules or Tailscale ACLs
* Consider Tailscale's [ACL system](https://tailscale.com/kb/1018/acls) for fine-grained access control

## Mobile Access

Once remote access is configured, you can use the dashboard from your phone's browser. The dashboard is responsive and works on mobile screens.

<Tip>
  For native messaging, connect channels like Telegram or WhatsApp -- these work from any device without special remote access configuration.
</Tip>
