Install and Connect
How to build, load, and connect the Chrome extension to one or more Downcity Servers
Install and Connect
Prerequisites
Before using the extension, you will usually want these running:
studio start
studio agent startIf you load the extension from this repo, build it first:
npm run build:extensionLoad It in Chrome
- Open
chrome://extensions - Enable
Developer mode - Click
Load unpacked - Choose
products/chrome-extension/dist
First-Time Configuration
The extension ships with one default connection:
- Protocol:
http - Host:
127.0.0.1 - Port:
5315 - Base Path: empty
If your Server lives elsewhere, open the extension settings page. The page is now organized into:
Server Connections: manage multiple connectionsAuthentication: configure the Bearer Token for the current connectionDefault Routing: choose the default Agent / Session for the current connectionDefault Ask: set the popup's default Ask
How to Add Multiple Connections
In the settings page:
- Click
新建连接 - Fill in the connection name, Host, and Port
- If the remote service uses HTTPS or sits behind a sub-path, also set
ProtocolandBase Path - Add a Bearer Token if that Server requires one
- Save
After that, the popup can switch between those connections directly.
How to Get a Token
If the target Server requires unified auth, create a token in the local terminal:
studio token create my-tokenIf you prefer the interactive flow, run:
studio tokenThen paste the returned token into Bearer Token.
How Agent and Session Selection Works
The extension first loads the Agent list for the current connection, then loads the available Sessions under that Agent.
If no Session is available, it usually means:
- that chat channel has no session history yet
- the Agent is not running
- the connection address is wrong
- the remote Console is not listening publicly, or the server firewall blocks the port
For a server deployment, you can either start Console once with studio start --public, or persist public mode with studio public on.
After Updating the Extension
Whenever extension code changes, rebuild it:
npm run build:extensionThen go back to chrome://extensions and press the refresh button for the unpacked extension.