2cli

💡AI Agent 如何调用 EDA 工具更为高效🚀?

如果通过 MCP 调用:

  • 大量上下文占用,消耗 token,增大幻觉
  • MCP 函数调用 Log 可读性低
  • 依赖 EDA 厂商适配

直接通过 CLI 跑脚本:

  • 只能一次性运行到结束,每次迭代都需要从头再跑,反复初始化浪费大量时间

2cli:让 AI Agent 像人类工程师一样操作 EDA 交互命令行

启动 EDA 工具:

% 2cli -start dashrtl -no_gui
2cli launched pid 12345

向 EDA 工具发送命令:

% 2cli read_lef sc7_tech.lef sc7_l013_base_rvt.lef
Info: checked out license 'DashRTL-Physical'. (LIC-CO)
Info: current technology has 5 routing layers. (TECHLEF-DONE)
Info: read 1 site and 631 cells from LEF files. (CELLLEF-DONE)
dashrtl-tcl> 

向 EDA 工具发送局部命令 + Tab,获取提示:

% 2cli 'get\t'
get_cells         get_lef_cells     get_lib_pins      get_object_type   get_ports         getenv 
get_classes       get_lef_pins      get_libs          get_objects       get_property      gets 
get_floorplan     get_lef_sites     get_modules       get_packages      get_tasks         
get_functions     get_lef_tech      get_nets          get_parameters    get_text_macros   
get_interfaces    get_lib_cells     get_object_name   get_pins          get_tool_var      
dashrtl-tcl> 

向 EDA 工具发送带 page mode 的命令,如 man

% 2cli man lappend
  PROCEDURE: lappend
     SYNTAX: lappend varName ?value ...?
DESCRIPTION: Append string elements to a list.
             Example:
             set a {1 2}      ;# -> 1 2
             lappend a "3 4"  ;# -> 1 2 {3 4}
    RELATED: append
             concat
             list 

安装 Skill:

  • 将安装包下的 examples/agent-skills/eda-2cli 复制到 AI Agent 对应的 skills 目录下即可

除了 DashRTL 外,2cli 也支持控制其它常见的流行 EDA 工具的交互命令行。

2cli 目前为免费工具,不需要任何 License。

2cli 已集成在 DashRTL+TclOK 安装包中: