@atlisp/agent 0.1.8 → 0.1.9

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/config.js CHANGED
@@ -31,7 +31,7 @@ function getDefaultConfig() {
31
31
  maxTokens: 2048,
32
32
  },
33
33
  mcp: {
34
- mode: 'stdio',
34
+ mode: 'http',
35
35
  url: 'http://localhost:8110',
36
36
  command: 'atlisp-mcp',
37
37
  args: ['--stdio'],
@@ -79,7 +79,7 @@ function deepMerge(target, source) {
79
79
  const result = { ...target };
80
80
  for (const key of Object.keys(source)) {
81
81
  if (source[key] !== null && typeof source[key] === 'object' && !Array.isArray(source[key])) {
82
- result[key] = deepMerge(target[key] || {}, source[key]);
82
+ result[key] = deepMerge(target[key] ?? {}, source[key]);
83
83
  } else if (source[key] !== undefined) {
84
84
  result[key] = source[key];
85
85
  }
@@ -93,29 +93,6 @@ function loadConfig() {
93
93
  const fileConfig = loadConfigFile();
94
94
  let merged = deepMerge(getDefaultConfig(), fileConfig);
95
95
 
96
- merged.agent = {
97
- enabled: process.env.AGENT_ENABLED !== 'false',
98
- historyLimit: parseInt(process.env.AGENT_HISTORY_LIMIT || String(merged.agent.historyLimit), 10),
99
- maxSteps: parseInt(process.env.AGENT_MAX_STEPS || String(merged.agent.maxSteps), 10),
100
- verbose: process.env.AGENT_VERBOSE === 'true' || merged.agent.verbose,
101
- };
102
-
103
- merged.llm = {
104
- provider: process.env.LLM_PROVIDER || merged.llm.provider,
105
- baseURL: process.env.VLLM_BASE_URL || merged.llm.baseURL,
106
- model: process.env.LLM_MODEL || merged.llm.model,
107
- apiKey: process.env.DEEPSEEK_API_KEY || merged.llm.apiKey,
108
- temperature: parseFloat(process.env.LLM_TEMPERATURE || String(merged.llm.temperature)),
109
- maxTokens: parseInt(process.env.LLM_MAX_TOKENS || String(merged.llm.maxTokens)),
110
- };
111
-
112
- merged.mcp = {
113
- mode: process.env.MCP_MODE || merged.mcp.mode,
114
- url: process.env.MCP_URL || merged.mcp.url,
115
- command: process.env.MCP_COMMAND || merged.mcp.command,
116
- args: process.env.MCP_ARGS ? process.env.MCP_ARGS.split(' ') : merged.mcp.args,
117
- };
118
-
119
96
  return merged;
120
97
  }
121
98
 
package/index.js CHANGED
@@ -46,17 +46,19 @@ program
46
46
  program.parse(process.argv);
47
47
 
48
48
  async function getAgent() {
49
- const config = program.opts();
49
+ const opts = program.opts();
50
+ const fileMcpConfig = getMcpConfig();
51
+
50
52
  const mcpConfig = {
51
- mode: config.mode,
52
- url: config.mcpUrl,
53
- command: config.mcpCommand,
54
- args: config.mcpArgs ? config.mcpArgs.split(' ') : [],
53
+ mode: opts.mode !== 'stdio' ? opts.mode : fileMcpConfig.mode,
54
+ url: opts.mcpUrl || fileMcpConfig.url,
55
+ command: opts.mcpCommand || fileMcpConfig.command,
56
+ args: opts.mcpArgs ? opts.mcpArgs.split(' ') : fileMcpConfig.args,
55
57
  };
56
58
 
57
59
  return createAgent({
58
60
  mcpConfig,
59
- agentConfig: { verbose: config.verbose },
61
+ agentConfig: { verbose: opts.verbose },
60
62
  });
61
63
  }
62
64
 
package/mcp/index.js CHANGED
@@ -7,10 +7,10 @@ export function createMcpClient(config = {}) {
7
7
  const mode = mcpConfig.mode || 'http';
8
8
 
9
9
  if (mode === 'stdio') {
10
- return new StdioMcpClient(config);
10
+ return new StdioMcpClient(mcpConfig);
11
11
  }
12
12
 
13
- return new HttpMcpClient(config);
13
+ return new HttpMcpClient(mcpConfig);
14
14
  }
15
15
 
16
16
  export async function connectMcp(client) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlisp/agent",
3
- "version": "0.1.8",
3
+ "version": "0.1.9",
4
4
  "description": "AI Agent for @lisp - Connects to MCP Server for CAD operations",
5
5
  "type": "module",
6
6
  "main": "index.js",
@@ -17,7 +17,7 @@ export function createProvider(config = {}) {
17
17
  throw new Error(`Unknown LLM provider: ${llmConfig.provider}. Available: ${Object.keys(PROVIDERS).join(', ')}`);
18
18
  }
19
19
 
20
- return new ProviderClass(config);
20
+ return new ProviderClass(llmConfig);
21
21
  }
22
22
 
23
23
  export function listProviders() {