一键部署言埠 YanPub Docker:万言归埠,一站集成。Adapter Quality CI中文编程语言统一基础设施。一个框架,接入任意中文语言,即刻获得完整工具链。

发布时间:2026/7/5 14:00:14
一键部署言埠 YanPub Docker:万言归埠,一站集成。Adapter Quality CI中文编程语言统一基础设施。一个框架,接入任意中文语言,即刻获得完整工具链。 言埠 YanPub万言归埠一站集成。中文编程语言统一基础设施。一个框架接入任意中文语言即刻获得完整工具链。AtomGit - 全球开发者的开源社区,开源代码托管平台Docker 一键部署从 gitcode 拿到 yanpub 后三步即可启动含 11 种中文编程语言的完整环境git clone https://gitcode.com/skywalk163/yanpub.git cd yanpub # 1. 自动 git clone 11 种语言后端 ./deploy.sh sync # 2. 构建 Docker 镜像默认约 3-5 分钟纯 Python 镜像 ./deploy.sh build # 3. 启动服务 ./deploy.sh up已接入语言11种语言ID版本关键字适配方式段言 Duanduan1.3.8162子进程言 Yanyan3.0.047子进程墨言 Moyanmoyan3.0.025子进程心语 Xinyuxinyu1.0.046子进程知行 Zhixingzhixing1.0.037子进程言律 Yanlvyanlv2.0.062子进程言知 Yanzhiyanzhi1.0.052子进程明道 Mingdaomingdao1.0.047子进程(Racket可选)翰语 Hanyuhanyu1.0.048子进程(LLVM可选/Python回退)趣言 Traeyantraeyan1.0.0119子进程华语 Huahua0.5.069子进程架构详见 DESIGN.mdyanpub ├── core/ # 核心抽象 │ ├── adapter/ # 适配器协议、注册中心、缓存、懒加载、兼容性、健康检查 │ ├── dev/ # 调试器、DAP、格式化、Linter、重构、导航 │ ├── perf/ # 基准测试、可视化、基线管理、性能分析、监控 │ ├── security/ # 沙箱、代码签名、审计 │ └── lifecycle/ # 热重载、热更新、插件、进程池、配置 ├── adapters/ # 各语言适配器11种 ├── pkg/ # 统一包管理器语义发布、工作空间、版本约束 ├── playground/ # 统一 Playground协作、分享、项目、AI辅助、挑战赛 ├── lsp/ # 统一 LSP 服务补全、导航、重构、诊断、语义高亮、折叠 ├── repl/ # 统一 REPL友好错误提示 ├── i18n_pkg/ # 国际化中/英/日/韩 ├── docs/ # 统一文档系统 语言对比 SEO ├── cli/ # CLI 命令24模块 └── vscode/ # VSCode 扩展CLI 命令一览命令说明yanpub run lang file运行指定语言的代码文件yanpub repl [lang]启动交互式 REPLyanpub languages列出所有已注册语言yanpub playground启动在线 Playgroundyanpub lsp lang启动 LSP 服务yanpub pkg install pkg安装包yanpub pkg list列出已安装包yanpub pkg search q搜索包yanpub pkg publish dir发布包yanpub docs生成文档站yanpub compare语言对比相似度排行 语法对比表yanpub compare --from X --to Y迁移指南yanpub compare concept特定概念对比yanpub compare --matrix语法对比矩阵15概念×10语言yanpub compare --html out.html生成对比矩阵 HTML 页面yanpub examples [lang]查看/运行各语言示例代码yanpub examples lang -r name运行指定示例yanpub examples -S keyword按关键字搜索示例yanpub contribute lang贡献示例到指定语言交互式向导yanpub validate-examples lang验证示例元数据和代码yanpub adapter create创建新语言适配器交互式模板yanpub adapter check lang检查适配器可发现性yanpub health检查语言后端健康状态yanpub bench运行性能基准测试yanpub bench-visualize性能基准可视化HTML 报告yanpub lint代码风格检查yanpub sandbox沙箱执行代码yanpub sign / verify代码签名/验证yanpub i18n国际化管理yanpub quality [lang]适配器质量评分5维度0-100分yanpub quality --html report.html生成质量报告 HTMLyanpub hot-update [lang]适配器热更新yanpub debug调试相关命令yanpub aiAI 辅助调试yanpub refactor lang代码重构yanpub workspace init初始化工作空间yanpub workspace add lang添加语言到工作空间yanpub workspace status查看工作空间状态yanpub challenge list列出代码挑战赛题目yanpub challenge show id查看挑战详情yanpub challenge submit id lang提交解答yanpub challenge leaderboard查看排行榜yanpub private-registry init初始化私有注册中心yanpub private-registry publish dir发布包yanpub private-registry mirror add name url添加镜像yanpub private-registry mirror sync name同步镜像适配器开发使用adapter create命令一键生成完整适配器目录yanpub adapter create # 交互式创建 yanpub adapter create mylang 0.1.0 .my # 参数式创建 yanpub adapter check mylang # 验证适配器可发现性或手动创建最少只需 2 个文件adapters/mylang/ ├── adapter.yaml # 语言元信息 ├── adapter.py # 适配器实现继承 SubprocessAdapter └── examples/ # 示例代码可选 └── hello.my # 带 YAML front matter最小适配器示例from yanpub.core.adapter import SubprocessAdapter class MyLangAdapter(SubprocessAdapter): def __init__(self): super().__init__( name我的语言, lang_idmylang, version0.1.0, extensions[.my], run_command[python, -m, mylang, run], keywords[定义, 如果, 否则, 当, 返回], primary_color#FF6600, )适配器会被自动发现和加载无需额外注册。详见 适配器开发指南。示例贡献任何人都可以为已接入语言贡献示例代码# 交互式创建示例推荐 yanpub contribute duan # 参数式创建 yanpub contribute duan -n sort -t 排序 -c 打印(hi) # 从文件读取代码 yanpub contribute duan -n hello -f code.duan # 仅预览不写入 yanpub contribute duan --dry-run # 验证已有示例 yanpub validate-examples duan私有注册中心支持私有 Git 仓库作为包索引存储可与公网镜像GitHub/Gitee/GitCode双向同步# 初始化私有注册中心 yanpub private-registry init --url https://git.example.com/registry.git # 发布包 yanpub private-registry publish ./my-package # 添加公网镜像自动同步 yanpub private-registry mirror add github https://github.com/org/registry.git --direction bidirectional yanpub private-registry mirror add gitee https://gitee.com/org/registry.git --auth ssh # 同步到所有镜像 yanpub private-registry mirror sync --all # 权限管理基于角色 yanpub private-registry permission grant alice owner yanpub private-registry permission grant bob developer --scope lang:duan4 种角色owner全部权限、maintainer发布镜像管理、developer发布、guest只读。代码挑战赛内置 6 道挑战题支持在线评判和排行榜# 列出挑战 yanpub challenge list # 查看详情 yanpub challenge show hello-world # 提交解答 yanpub challenge submit hello-world duan --code 打印(你好世界) yanpub challenge submit fibonacci duan -f fib.duan # 查看排行榜 yanpub challenge leaderboardPlayground 也提供 Web 界面和 API/challenges— 挑战赛独立页面题目浏览/提交/排行榜/quality— 适配器质量评分页面5 维度进度条/等级/改进建议/api/challenges、/api/challenges/{id}/submit、/api/leaderboard/api/quality适配器质量评分5 维度自动评分总分 100S/A/B/C/D/F 等级维度满分检查项基础完整度25adapter.py/yaml 存在、类定义、可实例化元数据质量20必需字段、版本号成熟度、扩展名、颜色示例丰富度20数量、front matter、多样性文档覆盖15README、CONTRIBUTING、关键字文档、描述功能验证20关键字丰富度梯度、capabilities 覆盖、eval/run/repl 可用性# 查看所有适配器评分 yanpub quality # 查看特定适配器 yanpub quality duan # 生成 HTML 报告 yanpub quality --html quality-report.html # JSON 输出 yanpub quality --json # CI 模式生成报告文件 徽章数据 PR 评论 yanpub quality --ciCI 集成推送到 main 后自动评分并部署徽章到 gh-pagesPR 自动评论评分结果。独立quality.ymlworkflow 监听适配器变更并检测质量回归。性能启动时间 ~0.24s10个适配器懒加载关键字首次访问 ~0.38s动态从项目加载缓存后 0s调试提示未安装doker(base) skywalkiZ2ze2j4cywindg339jqloZ:~/github/yanpub$ bash deploy.sh build[ERROR] Docker 未安装请先安装 Dockerhttps://docs.docker.com/get-docker/Docker Desktop‌适用于 Windows 和 macOS 的图形界面版本‌Docker Engine‌适用于 Linux 服务器的命令行版本安装提示failed to solve: python:3.11-slim reading from stdin 504B 0.0s [internal] load build definition from Dockerfile 0.0s transferring dockerfile: 4.58kB 0.0s ERROR [internal] load metadata for docker.io/library/python:3.11-slim 30.0s------ [internal] load metadata for docker.io/library/python:3.11-slim:------[] build 0/1⠙ Image yanpub-yanpub Building 30.3sDockerfile:15--------------------13 |14 | # ── Stage 1: 系统依赖 Python 包 ─────────────────────15 | FROM python:3.11-slim AS deps16 |17 | ENV DEBIAN_FRONTENDnoninteractive \--------------------failed to solve: python:3.11-slim: failed to resolve source metadata for docker.io/library/python:3.11-slim: failed to do request: Head https://registry-1.docker.io/v2/library/python/manifests/3.11-slim: dial tcp 199.59.150.49:443: i/o timeout内部加速sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json -EOF { registry-mirrors: [https://zf7jcpxx.mirror.aliyuncs.com] } EOF sudo systemctl daemon-reload sudo systemctl restart docker还是不行使用手工下载docker pull docker.m.daocloud.io/library/python:3.11-slim