@openagents-org/agent-launcher 0.1.6 → 0.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openagents-org/agent-launcher",
3
- "version": "0.1.6",
3
+ "version": "0.1.7",
4
4
  "description": "OpenAgents Launcher — install, configure, and run AI coding agents from your terminal",
5
5
  "main": "src/index.js",
6
6
  "bin": {
@@ -31,12 +31,13 @@ class BaseAdapter {
31
31
  * @param {string} opts.agentName
32
32
  * @param {string} [opts.endpoint]
33
33
  */
34
- constructor({ workspaceId, channelName, token, agentName, endpoint }) {
34
+ constructor({ workspaceId, channelName, token, agentName, endpoint, agentEnv }) {
35
35
  this.workspaceId = workspaceId;
36
36
  this.channelName = channelName;
37
37
  this.token = token;
38
38
  this.agentName = agentName;
39
39
  this.endpoint = endpoint || DEFAULT_ENDPOINT;
40
+ this.agentEnv = agentEnv || process.env;
40
41
  this.client = new WorkspaceClient(this.endpoint);
41
42
  this._lastEventId = null;
42
43
  this._running = false;
@@ -288,7 +288,7 @@ class ClaudeAdapter extends BaseAdapter {
288
288
  }
289
289
 
290
290
  // Clean env
291
- const cleanEnv = { ...process.env };
291
+ const cleanEnv = { ...(this.agentEnv || process.env) };
292
292
  delete cleanEnv.CLAUDECODE;
293
293
  delete cleanEnv.CLAUDE_CODE_SESSION;
294
294
 
@@ -192,7 +192,7 @@ class OpenClawAdapter extends BaseAdapter {
192
192
 
193
193
  this._log(`CLI: ${binary} ${args.slice(0, 5).join(' ')} ...`);
194
194
 
195
- const spawnEnv = { ...process.env };
195
+ const spawnEnv = { ...(this.agentEnv || process.env) };
196
196
  if (IS_WINDOWS) {
197
197
  // Ensure node and npm global bin are on PATH
198
198
  const nodeBinDir = path.dirname(process.execPath);
package/src/daemon.js CHANGED
@@ -357,6 +357,7 @@ class Daemon {
357
357
  endpoint,
358
358
  openclawAgentId: agentCfg.openclaw_agent_id || 'main',
359
359
  disabledModules: new Set(),
360
+ agentEnv: this._buildAgentEnv(agentCfg),
360
361
  });
361
362
  } catch (e) {
362
363
  this._log(`${name} failed to create ${agentType} adapter: ${e.message}`);
package/src/registry.js CHANGED
@@ -54,9 +54,22 @@ class Registry {
54
54
  getCatalogSync() {
55
55
  if (this._catalog) return this._catalog;
56
56
  const cached = this._loadCache();
57
- if (cached) { this._catalog = cached; return cached; }
58
- this._catalog = this._loadBundled();
59
- return this._catalog;
57
+ const bundled = this._loadBundled();
58
+ if (cached) {
59
+ // Merge bundled env_config/resolve_env into cached entries (cache may be stale)
60
+ for (const entry of cached) {
61
+ const b = bundled.find(x => x.name === entry.name);
62
+ if (b) {
63
+ if (!entry.env_config && b.env_config) entry.env_config = b.env_config;
64
+ if (!entry.resolve_env && b.resolve_env) entry.resolve_env = b.resolve_env;
65
+ if (!entry.install && b.install) entry.install = b.install;
66
+ }
67
+ }
68
+ this._catalog = cached;
69
+ return cached;
70
+ }
71
+ this._catalog = bundled;
72
+ return bundled;
60
73
  }
61
74
 
62
75
  /**