从命令行到代码:Easy LLM CLI程序化API(ElcAgent)完全开发手册

【免费下载链接】easy-llm-cli An open-source AI agent that is compatible with multiple LLM models 【免费下载链接】easy-llm-cli 项目地址: https://gitcode.com/gh_mirrors/ea/easy-llm-cli

Easy LLM CLI是一款开源AI代理工具,兼容多种LLM模型,可通过程序化API(ElcAgent)将强大的AI能力直接集成到Node.js应用中。本指南将帮助开发者快速掌握ElcAgent的核心功能与使用方法,轻松构建智能化应用。

为什么选择ElcAgent?

ElcAgent作为Easy LLM CLI的程序化接口,提供了比命令行交互更灵活的集成方式。通过API调用,开发者可以:

  • 在应用中无缝集成多模型AI能力
  • 自定义LLM提供商和模型参数
  • 控制工具调用权限与系统行为
  • 实现复杂的自动化工作流

Easy LLM CLI界面展示 图1:Easy LLM CLI命令行界面,展示多模型支持与交互方式

快速开始:安装与基础配置

环境准备

确保已安装Node.js 20或更高版本,然后通过npm安装Easy LLM CLI:

npm install easy-llm-cli

基本初始化

创建ElcAgent实例的最简配置:

import { ElcAgent } from 'easy-llm-cli';

const agent = new ElcAgent({
  model: 'your-model-name',
  apiKey: 'your-api-key',
  endpoint: 'https://your-llm-endpoint.com/v1'
});

// 运行简单对话
const response = await agent.run('请分析这个项目的结构');
console.log(response);

核心配置详解

ElcAgent构造函数接受丰富的配置选项,可通过AgentConfig接口进行精细化控制:

必选参数

参数 类型 描述
model string 自定义LLM模型名称
apiKey string 模型API密钥
endpoint string LLM服务API地址

常用可选配置

参数 类型 默认值 描述
temperature number 0 生成温度(0-1),值越高结果越随机
maxTokens number 8096 最大生成token数
log boolean false 是否启用详细日志
readonly boolean false 只读模式,禁用文件修改
systemPrompt string - 自定义系统提示词

实用功能与示例

1. 基础对话交互

async function basicChat() {
  const agent = new ElcAgent({
    model: 'gpt-4',
    apiKey: 'your-api-key',
    endpoint: 'https://api.openai.com/v1',
    log: true
  });

  const response = await agent.run('解释什么是递归函数');
  console.log('AI响应:', response);
}

2. 文件操作与项目管理

在非只读模式下,ElcAgent可以创建和修改文件:

async function createProjectDocs() {
  const agent = new ElcAgent({
    model: 'claude-3-sonnet',
    apiKey: 'your-api-key',
    endpoint: 'https://api.anthropic.com/v1',
    readonly: false,
    rootPath: '/path/to/your/project'
  });

  // 创建项目README文件
  const result = await agent.run(
    '创建一个简洁的README.md,包含项目介绍、安装步骤和使用示例'
  );
  console.log(result);
}

Gemini CLI交互示例 图2:ElcAgent底层交互逻辑展示,包括工具调用与上下文管理

3. 扩展与MCP服务器集成

通过扩展配置连接MCP服务器,增强AI能力:

async function withChartExtension() {
  const agent = new ElcAgent({
    model: 'claude-3-sonnet',
    apiKey: 'your-api-key',
    endpoint: 'https://api.anthropic.com/v1',
    extension: {
      mcpServers: {
        chart: {
          command: 'npx',
          args: ['-y', '@antv/mcp-server-chart'],
          trust: false
        }
      },
      excludeTools: ['run_shell_command'] // 禁用shell命令工具
    }
  });

  // 生成销售数据图表
  const response = await agent.run('分析销售数据并生成柱状图');
  console.log(response);
}

4. 自定义系统提示

通过systemPrompt塑造AI行为:

async function codeReviewAgent() {
  const agent = new ElcAgent({
    model: 'your-model',
    apiKey: 'your-api-key',
    endpoint: 'your-endpoint',
    systemPrompt: `你是专业代码审查助手,遵循以下规则:
1. 专注代码质量和最佳实践
2. 提供具体改进建议
3. 解释为什么某些做法更好
4. 保持友好建设性语气`,
    log: true
  });

  const response = await agent.run('请审查这个JavaScript函数的质量');
  console.log(response);
}

ElcAgent核心方法

run(userInput: string): Promise

执行完整的AI任务流程,包括输入处理、工具调用和响应生成。

const result = await agent.run('帮我优化这个函数的性能');

getAllResults(): AgentResult[]

获取所有执行结果,包括中间步骤和工具调用详情。

const allResults = agent.getAllResults();
console.log(allResults);

getLastResult(): string

快速获取上一次AI响应内容。

const lastResponse = agent.getLastResult();

高级应用场景

代码库分析与文档生成

利用ElcAgent分析项目结构并自动生成文档:

async function generateProjectDocs() {
  const agent = new ElcAgent({
    model: 'gemini-2.5-pro',
    apiKey: 'your-gemini-key',
    endpoint: 'https://generativelanguage.googleapis.com/v1',
    rootPath: './your-project',
    log: true
  });
  
  const docs = await agent.run(`分析当前项目并生成:
  1. 架构概述文档
  2. API使用手册
  3. 开发指南`);
  
  console.log('文档生成完成:', docs);
}

自动化工作流集成

结合定时任务实现自动化代码质量检查:

// 使用node-cron定时执行代码审查
const cron = require('node-cron');

cron.schedule('0 0 * * *', async () => {
  const agent = new ElcAgent({
    model: 'gpt-4',
    apiKey: 'your-api-key',
    endpoint: 'https://api.openai.com/v1',
    readonly: true
  });
  
  const review = await agent.run('审查昨天的代码提交,找出潜在问题');
  // 发送审查结果到邮件或Slack
  sendNotification(review);
});

故障排除与最佳实践

常见问题解决

  1. API连接问题:检查endpoint格式和网络连接,确保没有防火墙限制
  2. 权限错误:当需要文件操作时,确保readonly设为false
  3. 响应质量不佳:调整temperature参数或提供更具体的systemPrompt
  4. token超限:减少maxTokens值或优化提示词长度

性能优化建议

  • 对于大型项目分析,先使用工具获取目录结构,再针对性分析
  • 复杂任务拆分为多个步骤执行,避免单次请求处理过多内容
  • 合理设置log参数,开发时启用,生产环境禁用
  • 使用MCP服务器分担计算任务,提高响应速度

完整API文档

详细API文档请参考:Programmatic API文档

ElcAgent源码定义位于:packages/cli/src/api/index.ts

通过本指南,您已经掌握了ElcAgent的核心使用方法。无论是构建智能代码助手、自动化文档生成工具,还是集成AI能力到现有应用,ElcAgent都能提供灵活而强大的支持。开始探索AI驱动的开发新方式吧!

【免费下载链接】easy-llm-cli An open-source AI agent that is compatible with multiple LLM models 【免费下载链接】easy-llm-cli 项目地址: https://gitcode.com/gh_mirrors/ea/easy-llm-cli

更多推荐