Skip to content

zideajang/aZentCoder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

aZentCoder

开发一个会写代码的 Agent

  • r"...": 这里 r 是 Python 中的 raw 字符串标记,意味着把反斜杠作为普通字符

  • [ \t]*(\w+)?[ \t]*\r?\n: 这部分匹配 Markdown 代码块的开始。是代码块的起始标记。[ \t]* 匹配任意数量的空格或制表符(如果有的话

  • (\w+)? 用于匹配表示语言的文本(比如代码块中的 python)

  • \r?\n 用于匹配换行束符,这样写的好处是兼容 Unix(\n)和 Windows(\r\n)风格

  • (.*?): 这是一个非贪婪匹配,可以匹配任意字符序列,代码块中的实际代码。非贪婪意味着会匹配尽可能短的字符串

  • \r?\n[ \t]*``` : 用于分匹配代码块的结束

与开始模式相似,但顺序相反,确保匹配 Markdown 代码块的结束。

搭建 Docker 容器的命令环境,也就是通过终端来运行 Docker,然后在容器中执行代码文件,将代码块保存到工作目录下文件后,然后执行容器里面的包含代码块的文件,现在 executor 支持对 python 和 bash、shell 或者 sh 脚本支持。

  • container_name 容器的名字
  • timeout: 设置超时,默认值为 60
  • image 镜像是可选的,默认值为 python:3-slim
  • auto_remove 如果为 True docker 停止后自动移除文件
  • stop_container 也就是 python 进程退退出后停止容器,默认值为 True

本地执行的代码 将每个代码块都保存为一个文件,然后放在工作目录下来执行,这些文件执行的顺序是按照接受的顺序。通过正则表达式来检查代码中可能存在危害或者风险的代码。避免对用户环境造成潜在影响,目前只支持 python 和 shell 脚本语言

  • 对于 python 代码,使用 python 来执行代码
  • 对于 shell 脚本,代码块应使用 bash 、 shell 或 sh 语言执行代码块

About

开发一个会写代码的 Agent

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages