# Agents

Agents are secure, industrial-grade bridges that run as system services (daemons) within your private network. They tunnel data from local protocols (S7, Modbus, OPC UA, etc.) to your cloud workspace, ensuring connectivity that persists through system restarts and power cycles.

<div data-full-width="true"><figure><img src="/files/Z7gohAgWpsx8fOvj92rN" alt="" width="525"><figcaption><p>Heisenware Agent</p></figcaption></figure></div>

## Types of agents

Depending on your local infrastructure and edge hardware setup, Heisenware offers three distinct types of agents to bridge your local networks with the cloud workspace.

### Native agent

The [Native agent](/app-builder/build-backend/function-explorer/agents/native-agent.md) is a fully installable package that registers itself directly as a background service on the host operating system (a Windows Service or Linux Daemon). It is managed natively by the OS to guarantee 24/7 background availability, automatic start-up upon reboots, and compatibility across Windows, macOS, Linux, and ARM64 industrial PCs.

### Docker agent

The [Docker agent](/app-builder/build-backend/function-explorer/agents/docker-agent.md) provides the same core bridging capabilities but runs inside an isolated containerized environment. It is the ideal deployment choice for edge gateways or servers where infrastructure is already managed via Docker. Unlike the native package, credentials are not baked into the installer and are passed flexibly using environment variables during container runtime.

### LXC agent (Insys)

The [LXC agent](/app-builder/build-backend/function-explorer/agents/lxc-agent-insys.md) is a specialized runtime container designed specifically for edge computing directly on INSYS icom industrial routers and gateways (such as the MRX, MRO, ECR, and SCR series). It is distributed as a native `.tar` update packet, runs as an isolated Linux System Container (LXC) within the router's web environment, and features optimized memory constraints to safeguard core networking functions.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.heisenware.com/app-builder/build-backend/function-explorer/agents.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
