Remote debugging is the fastest way to iterate on a plugin. You run the plugin process on your laptop, and Intellos treats it as if it were installed in the workspace. Saves, edits, and restarts take effect immediately.

Prerequisites

  • A Intellos workspace where you can access Plugins in the top-right corner.
  • A scaffolded plugin project (see CLI if you haven’t created one yet).
  • Python 3.12 and the plugin’s dependencies installed (pip install -r requirements.txt).

Step 1: Get the Debug URL and Key

Open the Plugins page in Intellos and click the debug icon (the small bug icon next to Install Plugin). A dialog shows the remote install host:port and an API key.
Remote Debugging Plugin
The host defaults to 127.0.0.1:5003 and is configured by PLUGIN_REMOTE_INSTALLING_HOST / PLUGIN_REMOTE_INSTALLING_PORT in the plugin daemon’s environment. Make sure port 5003 is reachable from your dev machine. If Intellos runs in Docker on the same host, use the daemon container’s bridge IP (or expose the port). The key is unique to your workspace; anyone with the key can attach a plugin, so do not share it.

Step 2: Configure the Plugin’s .env

In your plugin project, copy .env.example to .env and fill in the values:
REMOTE_INSTALL_URL is the combined host:port from Step 1, not two separate variables.

Step 3: Run the Plugin

From the plugin project directory:
The process stays in the foreground and logs incoming invocations. Edit your code and restart the process to apply changes.

Step 4: Verify the Install

Go back to the Intellos Plugins page. The plugin appears in the list, labelled with a debug marker. Other members of the workspace can also see and use it.
Plugin Installed to Workspace
The plugin tile shows a debug indicator and your local terminal logs the first registration handshake. You’re attached.
Trigger the plugin as you would any other: call it from a workflow node, run it as a tool inside an Agent, or hit an endpoint URL. Invocations land on your local process and you can attach a debugger.

Troubleshooting

The daemon is not listening on the address you put in REMOTE_INSTALL_URL. Confirm the daemon container has PLUGIN_REMOTE_INSTALLING_ENABLED=true and that port 5003 is exposed, and double-check you copied the host:port exactly as shown in the debug dialog.
The most common cause is a stale or wrong REMOTE_INSTALL_KEY. Regenerate the key from the debug dialog and rerun python -m main. Also confirm the daemon log shows the incoming registration.
The author field in manifest.yaml or in provider/*.yaml doesn’t match a value the daemon accepts. Set it to your GitHub handle, then restart.
The plugin process needs to restart after every edit; there’s no hot reload. Stop with Ctrl+C and rerun python -m main.

Edit this page | Report an issue