openclaw-channel-linear
v0.1.1
Published
Linear channel plugin for OpenClaw.
Maintainers
Readme
openclaw-channel-linear
Linear channel plugin for OpenClaw.
This package is the local OpenClaw side of the OpenClaw Linear bridge. It connects
your local OpenClaw runtime to a deployed Cloudflare gateway, receives Linear
AgentSessionEvent traffic over WebSocket, runs local OpenClaw sessions, and sends
activity updates back to Linear.
Before You Install
This plugin expects the gateway side to already exist.
You should complete these steps first:
- Deploy the Cloudflare gateway
- Create a Linear application
- Configure gateway secrets
- Complete Linear OAuth authorization
The full setup guide lives here:
Install
Install the plugin into OpenClaw:
openclaw plugins install openclaw-channel-linear
openclaw gateway restartConfigure channels.linear
After OAuth succeeds, the gateway will show a ready-to-copy channels.linear
configuration snippet. At minimum, your OpenClaw config should contain:
{
"channels": {
"linear": {
"enabled": true,
"gatewayBaseUrl": "https://<your-worker-domain>",
"clientAuthToken": "CLIENT_AUTH_TOKEN",
"healthMonitor": {
"enabled": false
}
}
}
}Restart OpenClaw after updating the configuration:
openclaw gateway restartRequired fields:
gatewayBaseUrlclientAuthToken
Optional fields:
promptContextTemplatedebugTranscriptTrace
Or configure it from the CLI:
openclaw config set channels.linear.enabled true --strict-json
openclaw config set channels.linear.gatewayBaseUrl '"https://<your-worker-domain>"' --strict-json
openclaw config set channels.linear.clientAuthToken '"<same-as-CLIENT_AUTH_TOKEN>"' --strict-json
openclaw config set channels.linear.healthMonitor.enabled false --strict-json
openclaw gateway restartOptional: promptContextTemplate
promptContextTemplate customizes the initial context passed to OpenClaw when a
Linear AgentSession starts.
Supported variable:
$issueContext
Example:
{
"channels": {
"linear": {
"enabled": true,
"gatewayBaseUrl": "https://<your-worker-domain>",
"clientAuthToken": "<same-as-CLIENT_AUTH_TOKEN>",
"promptContextTemplate": "You are handling a Linear agent session.\n\nBelow is the initial task context provided by Linear. Treat it as the primary context for this task.\nPrioritize actions based on the current issue context. If information is missing, ask concise questions first and do not invent facts.\n\n<linear_prompt_context>\n$issueContext\n</linear_prompt_context>",
"healthMonitor": {
"enabled": false
}
}
}
}If $issueContext is missing from the template, the original context is appended automatically.
MCP
The gateway also exposes:
GET|POST|OPTIONS /linear/mcp
This proxies the official Linear MCP endpoint using the active installation token.
See the repository README for the recommended mcporter-based setup.
Compatibility
Tested with:
Current runtime identity:
- plugin id:
linear - channel id:
linear
Notes
- The package name is
openclaw-channel-linear, but the OpenClaw runtime id remainslinear. - On current OpenClaw releases, this package name can produce a non-blocking
plugin id mismatchdiagnostic. Runtime loading still works.
Resources
- OpenClaw: Building Plugins
- OpenClaw: SDK Channel Plugins
- Linear OAuth 2.0 Authentication
- Linear Agent Interaction
