Documentation / @agentick/gateway / Gateway
Class: Gateway ​
Defined in: gateway/src/gateway.ts:193
@agentick/gateway
Standalone daemon for multi-client, multi-agent access. Supports both WebSocket and HTTP/SSE transports.
Extends ​
EventEmitter
Constructors ​
Constructor ​
new Gateway(
config):Gateway
Defined in: gateway/src/gateway.ts:263
Parameters ​
config ​
Returns ​
Gateway
Overrides ​
EventEmitter.constructor
Accessors ​
id ​
Get Signature ​
get id():
string
Defined in: gateway/src/gateway.ts:778
Get the gateway ID
Returns ​
string
running ​
Get Signature ​
get running():
boolean
Defined in: gateway/src/gateway.ts:771
Check if running
Returns ​
boolean
status ​
Get Signature ​
get status():
object
Defined in: gateway/src/gateway.ts:758
Get gateway status
Returns ​
object
apps ​
apps:
string[]
clients ​
clients:
number
id ​
id:
string
sessions ​
sessions:
number
uptime ​
uptime:
number
Methods ​
close() ​
close():
Promise<void>
Defined in: gateway/src/gateway.ts:575
Alias for stop() - useful for embedded mode cleanup
Returns ​
Promise<void>
closeSession() ​
closeSession(
sessionKey):Promise<void>
Defined in: gateway/src/gateway.ts:611
Close a session and clean up managed state.
Parameters ​
sessionKey ​
string
Returns ​
Promise<void>
createLocalTransport() ​
createLocalTransport():
ClientTransport
Defined in: gateway/src/gateway.ts:746
Create an in-process ClientTransport connected to this gateway. Returns a ClientTransport for use with createClient().
Multiple calls create independent clients sharing the same underlying LocalGatewayTransport.
Returns ​
emit() ​
emit<
K>(event,payload):boolean
Defined in: gateway/src/gateway.ts:2355
Type Parameters ​
K ​
K extends keyof GatewayEvents
Parameters ​
event ​
K
payload ​
Returns ​
boolean
Inherited from ​
EventEmitter.emit
getPlugin() ​
getPlugin<
T>(id):T|undefined
Defined in: gateway/src/gateway.ts:2138
Get a registered plugin by id.
Type Parameters ​
T ​
T extends GatewayPlugin = GatewayPlugin
Parameters ​
id ​
string
Returns ​
T | undefined
handleRequest() ​
handleRequest(
req,res):Promise<void>
Defined in: gateway/src/gateway.ts:802
Handle an HTTP request (embedded mode). This is the main entry point when Gateway is embedded in an external framework.
Parameters ​
req ​
IncomingMessage
Node.js IncomingMessage (or Express/Koa/etc request)
res ​
ServerResponse
Node.js ServerResponse (or Express/Koa/etc response)
Returns ​
Promise<void>
Promise that resolves when request is handled (may reject on error)
Example ​
// Express middleware
app.use("/api", (req, res, next) => {
gateway.handleRequest(req, res).catch(next);
});listPlugins() ​
listPlugins():
object[]
Defined in: gateway/src/gateway.ts:2145
List all registered plugins with their registered methods.
Returns ​
object[]
on() ​
on<
K>(event,listener):this
Defined in: gateway/src/gateway.ts:2354
Type Parameters ​
K ​
K extends keyof GatewayEvents
Parameters ​
event ​
K
listener ​
(payload) => void
Returns ​
this
Inherited from ​
EventEmitter.on
remove() ​
remove(
pluginId):Promise<void>
Defined in: gateway/src/gateway.ts:2119
Remove a plugin by id. Calls plugin.destroy() and cleans up its methods. No-op if plugin id is not found.
Parameters ​
pluginId ​
string
Returns ​
Promise<void>
sendToSession() ​
sendToSession(
sessionKey,input,senderClientId?):Promise<SessionExecutionHandle>
Defined in: gateway/src/gateway.ts:655
Send a message to a session and stream events. Broadcasts events to all subscribers (cross-client push), excluding the sender who iterates the handle directly.
Parameters ​
sessionKey ​
string
input ​
senderClientId? ​
string
If provided, this client is excluded from push broadcasts (they get events through direct handle iteration).
Returns ​
Promise<SessionExecutionHandle>
session() ​
session(
sessionKey):Promise<Session<{ }>>
Defined in: gateway/src/gateway.ts:587
Get or create a session with multi-app routing. Parses session key (e.g., "coding:main") and routes to the correct app.
Parameters ​
sessionKey ​
string
Returns ​
Promise<Session<{ }>>
start() ​
start():
Promise<void>
Defined in: gateway/src/gateway.ts:521
Start the gateway (standalone mode only)
Returns ​
Promise<void>
stop() ​
stop():
Promise<void>
Defined in: gateway/src/gateway.ts:551
Stop the gateway
Returns ​
Promise<void>
subscribe() ​
subscribe(
sessionKey,clientId):Promise<void>
Defined in: gateway/src/gateway.ts:620
Subscribe a client to session events. Synthetic keys like $plugin:<id> route to plugin broadcast subscribers.
Parameters ​
sessionKey ​
string
clientId ​
string
Returns ​
Promise<void>
unsubscribe() ​
unsubscribe(
sessionKey,clientId):void
Defined in: gateway/src/gateway.ts:638
Unsubscribe a client from session events. Handles $plugin:<id> synthetic keys.
Parameters ​
sessionKey ​
string
clientId ​
string
Returns ​
void
use() ​
use(
plugin):Promise<void>
Defined in: gateway/src/gateway.ts:2098
Register a plugin. Calls plugin.initialize() with a PluginContext. Throws if a plugin with the same id is already registered.
Parameters ​
plugin ​
Returns ​
Promise<void>