feat: add OpenClaw ContextEngine plugin (@headroom-ai/openclaw)
- HeadroomContextEngine: implements ContextEngine interface (bootstrap, ingest,
assemble, compact, afterTurn, prepareSubagentSpawn, dispose)
- ProxyManager: auto-detects running proxy or spawns one as child process,
health checks, restart on crash, graceful shutdown
- AgentMessage ↔ OpenAI format conversion (user, assistant/tool_use, toolResult)
- headroom_retrieve CCR tool: agent can retrieve original uncompressed content
- Plugin manifest (openclaw.plugin.json) with config schema
- 11 tests (6 unit + 5 integration), all passing
- Integration tested: 100 servers compressed, 3,735 tokens saved (82%)
2026-03-28 13:43:40 -07:00
{
"id" : "headroom" ,
2026-04-06 21:35:58 -05:00
"kind" : "context-engine" ,
feat: add OpenClaw ContextEngine plugin (@headroom-ai/openclaw)
- HeadroomContextEngine: implements ContextEngine interface (bootstrap, ingest,
assemble, compact, afterTurn, prepareSubagentSpawn, dispose)
- ProxyManager: auto-detects running proxy or spawns one as child process,
health checks, restart on crash, graceful shutdown
- AgentMessage ↔ OpenAI format conversion (user, assistant/tool_use, toolResult)
- headroom_retrieve CCR tool: agent can retrieve original uncompressed content
- Plugin manifest (openclaw.plugin.json) with config schema
- 11 tests (6 unit + 5 integration), all passing
- Integration tested: 100 servers compressed, 3,735 tokens saved (82%)
2026-03-28 13:43:40 -07:00
"uiHints" : {
"proxyUrl" : {
"label" : "Proxy URL" ,
2026-06-23 05:52:59 +02:00
"help" : "Optional. URL Headroom proxy (example: http://127.0.0.1:8787 or https://headroom.example.com). Configured URLs probe-gated before provider routing. Auto-start opt-in only works local addresses."
2026-04-02 22:21:05 -05:00
} ,
"proxyPort" : {
"label" : "Proxy Port" ,
"help" : "Default port used for auto-detect/auto-start when proxyUrl is not set (default: 8787)."
} ,
"pythonPath" : {
"label" : "Python Path" ,
"help" : "Optional explicit python executable for python fallback launcher (for example: python, python3, py, or full path)."
2026-04-06 22:55:36 -05:00
} ,
2026-04-08 22:03:21 -05:00
"retryMaxAttempts" : {
"label" : "Retry Max Attempts" ,
"help" : "Optional maximum number of upstream retry attempts for connection/read/5xx failures when the plugin auto-starts a local Headroom proxy. Lower values fail faster for interactive chat."
} ,
"connectTimeoutSeconds" : {
"label" : "Connect Timeout Seconds" ,
"help" : "Optional upstream connection timeout for the auto-started local Headroom proxy. Lower values surface network failures sooner."
} ,
2026-04-06 22:55:36 -05:00
"routeCodexViaProxy" : {
"label" : "Route OpenAI Codex Via Headroom" ,
2026-04-06 23:12:44 -05:00
"help" : "When enabled, OpenClaw will use the active Headroom proxy as the in-memory upstream base URL for the built-in openai-codex provider so provider traffic flows through Headroom."
2026-04-06 23:02:49 -05:00
} ,
"gatewayProviderIds" : {
"label" : "Gateway Provider IDs" ,
2026-04-08 22:28:17 -05:00
"help" : "Optional list of OpenClaw provider ids to route through the active Headroom proxy in memory. Friendly aliases codex, claude, copilot, and gemini are also accepted. When set, this overrides the default openai-codex-only routing."
feat: add OpenClaw ContextEngine plugin (@headroom-ai/openclaw)
- HeadroomContextEngine: implements ContextEngine interface (bootstrap, ingest,
assemble, compact, afterTurn, prepareSubagentSpawn, dispose)
- ProxyManager: auto-detects running proxy or spawns one as child process,
health checks, restart on crash, graceful shutdown
- AgentMessage ↔ OpenAI format conversion (user, assistant/tool_use, toolResult)
- headroom_retrieve CCR tool: agent can retrieve original uncompressed content
- Plugin manifest (openclaw.plugin.json) with config schema
- 11 tests (6 unit + 5 integration), all passing
- Integration tested: 100 servers compressed, 3,735 tokens saved (82%)
2026-03-28 13:43:40 -07:00
}
} ,
"configSchema" : {
"type" : "object" ,
"additionalProperties" : false ,
"properties" : {
"enabled" : {
"type" : "boolean"
} ,
"proxyUrl" : {
2026-04-02 21:27:12 -05:00
"type" : "string" ,
2026-04-03 10:00:11 -05:00
"pattern" : "^https?:\\/\\/.+(:\\d+)?\\/?$"
2026-04-02 21:47:27 -05:00
} ,
2026-04-02 22:21:05 -05:00
"proxyPort" : {
"type" : "integer" ,
"minimum" : 1 ,
"maximum" : 65535 ,
"default" : 8787
} ,
"pythonPath" : {
"type" : "string"
} ,
2026-04-02 21:47:27 -05:00
"autoStart" : {
"type" : "boolean" ,
2026-06-23 05:52:59 +02:00
"default" : false
2026-04-02 21:47:27 -05:00
} ,
"startupTimeoutMs" : {
"type" : "integer" ,
"minimum" : 1000 ,
"maximum" : 120000 ,
"default" : 20000
2026-04-06 22:55:36 -05:00
} ,
2026-04-08 22:03:21 -05:00
"retryMaxAttempts" : {
"type" : "integer" ,
"minimum" : 1
} ,
"connectTimeoutSeconds" : {
"type" : "integer" ,
"minimum" : 1
} ,
2026-04-06 22:55:36 -05:00
"routeCodexViaProxy" : {
"type" : "boolean" ,
"default" : true
2026-04-06 23:02:49 -05:00
} ,
"gatewayProviderIds" : {
"type" : "array" ,
"items" : {
"type" : "string"
} ,
"default" : [ ]
feat: add OpenClaw ContextEngine plugin (@headroom-ai/openclaw)
- HeadroomContextEngine: implements ContextEngine interface (bootstrap, ingest,
assemble, compact, afterTurn, prepareSubagentSpawn, dispose)
- ProxyManager: auto-detects running proxy or spawns one as child process,
health checks, restart on crash, graceful shutdown
- AgentMessage ↔ OpenAI format conversion (user, assistant/tool_use, toolResult)
- headroom_retrieve CCR tool: agent can retrieve original uncompressed content
- Plugin manifest (openclaw.plugin.json) with config schema
- 11 tests (6 unit + 5 integration), all passing
- Integration tested: 100 servers compressed, 3,735 tokens saved (82%)
2026-03-28 13:43:40 -07:00
}
}
2026-04-02 21:27:12 -05:00
} ,
"capabilities" : {
"network" : {
"allow" : [
2026-04-03 10:00:11 -05:00
"http://*:*" ,
"https://*:*"
2026-04-02 21:27:12 -05:00
]
}
2026-06-15 18:12:26 +02:00
} ,
"contracts" : {
"tools" : [
"headroom_retrieve"
]
feat: add OpenClaw ContextEngine plugin (@headroom-ai/openclaw)
- HeadroomContextEngine: implements ContextEngine interface (bootstrap, ingest,
assemble, compact, afterTurn, prepareSubagentSpawn, dispose)
- ProxyManager: auto-detects running proxy or spawns one as child process,
health checks, restart on crash, graceful shutdown
- AgentMessage ↔ OpenAI format conversion (user, assistant/tool_use, toolResult)
- headroom_retrieve CCR tool: agent can retrieve original uncompressed content
- Plugin manifest (openclaw.plugin.json) with config schema
- 11 tests (6 unit + 5 integration), all passing
- Integration tested: 100 servers compressed, 3,735 tokens saved (82%)
2026-03-28 13:43:40 -07:00
}
}