logo
0
0
WeChat Login
初始化 Debian 13 开发环境和 CI/CD 配置

CNB CodeBuddy 技能包开发项目

本项目是北京智捷通云科技有限公司针对腾讯云 cnb.cool 和 CodeBuddy 相关技能的开发迭代仓库,实现从官网获取知识开发 CodeBuddy 技能包,并具备自动更新技能包的能力。

项目概述

本项目致力于为 cnb.cool 云原生构建平台提供智能化辅助工具,通过 CodeBuddy 技能包的形式,帮助用户快速创建、优化和维护 cnb.cool 配置文件,提升开发效率和部署质量。

核心目标

  • 🤖 智能化配置 - 自动生成和优化 cnb.cool 配置文件
  • 📚 知识同步 - 与 cnb.cool 官方文档保持实时同步
  • 🔄 自动更新 - 自动爬取官网最新文档,更新技能包知识库
  • 💾 持续维护 - 支持版本管理和技能包回滚
  • 🐳 容器化开发 - 基于 Debian 13 的标准化开发环境
  • 🧪 自动化测试 - 完整的测试框架和 CI/CD 流水线

快速开始

本地开发

# 1. 克隆项目 git clone <repository-url> cd <project-name> # 2. 运行测试 bash scripts/build.sh test # 3. 验证项目结构 bash scripts/build.sh validate # 4. 构建开发环境镜像 bash scripts/build.sh build

项目结构

/workspace/ ├── .codebuddy/ │ └── skills/ │ ├── cnb/ # cnb.cool 配置专家技能包 │ │ └── SKILL.md # 技能主文件(17.8 KB) │ ├── cnb-self-update/ # cnb.cool 技能自我更新包 │ │ ├── SKILL.md # 自更新技能主文件(10.0 KB) │ │ ├── README.md # 说明文档 │ │ ├── docs-index.json # 文档索引 │ │ ├── IMPORTANT_URLS.md # 重要文档链接 │ │ └── history.json # 更新历史 │ └── cnb/ │ └── dev-environment/ # 开发环境配置技能包 │ ├── SKILL.md # 技能主文件 │ └── README.md # 说明文档 ├── .ide/ # 开发环境配置 │ ├── Dockerfile # Debian 13 开发环境 │ └── startup.sh # 启动脚本 ├── .cnb.yml # cnb.cool CI/CD 配置 ├── .yamllint.yaml # YAML 检查配置 ├── .markdownlint.yaml # Markdown 检查配置 ├── .gitignore # Git 忽略文件 ├── tests/ │ └── run-tests.sh # 测试脚本 ├── scripts/ │ └── build.sh # 构建脚本 └── README.md # 本文件

技能包说明

1. cnb 技能包

名称: cnb
描述: 腾讯云 cnb.cool 云原生构建配置专家
功能: 擅长创建和优化 .cnb.yml 配置文件、自定义开发环境 Dockerfile、部署流程配置等

核心能力

  • .cnb.yml 配置编写

    • 设计触发规则(push, pull_request, tag_push, web_trigger 等)
    • 配置流水线(Pipeline)结构
    • 编写 Stage 和 Job 任务
    • 配置构建环境(Docker 镜像、Dockerfile)
    • 设置缓存策略(volumes, copy-on-write)
    • 配置环境变量和密钥引用(env, imports)
    • 配置构建节点和资源限制(runner.tags, runner.cpus)
  • 触发规则设计

    • Git 操作事件(push, pull_request, tag_push 等)
    • 页面操作事件(web_trigger, ai_issue, ai_review)
    • 云原生开发事件(vscode)
    • API 请求事件(api_trigger)
    • 定时任务事件(cron 表达式)
  • 构建环境配置

    • 使用现有 Docker 镜像
    • 使用 Dockerfile 自定义构建
    • 配置构建参数(buildArgs, target, sync)
    • 配置依赖文件(by, versionBy)
  • 缓存策略

    • copy-on-write(读写,并发安全)
    • read-write(读写,需自行处理并发)
    • read-only(只读)
    • data(临时数据卷)
  • 密钥和环境变量管理

    • 环境变量直接配置
    • 引用密钥仓库文件
    • 引用本地环境文件
  • 部署流程配置

    • tcloud-cmd 腾讯云部署
    • SSH 远程部署
    • 自定义部署环境(.cnb/tag_deploy.yml)
    • 多环境部署和审批流程
  • VS Code 开发环境配置

    • .ide/Dockerfile 自定义
    • 插件自动安装
    • 开发环境初始化任务

使用场景

当用户遇到以下情况时,会自动调用此技能:

  1. "帮我创建 .cnb.yml 配置文件"
  2. "配置 cnb.cool CI/CD 流水线"
  3. "如何配置 cnb.cool 的缓存策略"
  4. "cnb.cool 部署流程怎么写"
  5. "配置 cnb.cool 的多环境部署"
  6. "优化 cnb.cool 构建速度"
  7. "cnb.cool 的 PR 检查怎么配置"
  8. "配置 cnb.cool VS Code 开发环境"
  9. "cnb.cool 自动化部署脚本"
  10. "monorepo 项目如何配置 cnb.cool"

2. cnb-self-update 技能包

名称: cnb-self-update
描述: cnb.cool 技能自我更新专家,主动查阅官方文档、深度爬取知识、自动更新技能包内容

核心能力

  • 官方文档深度爬取

    • 系统性地爬取 cnb.cool 官方文档
    • 深度解析文档结构和内容
    • 提取关键知识点和最佳实践
    • 识别文档更新和新增内容
  • 知识对比与更新

    • 对比现有技能内容与官方文档
    • 识别过时、错误或缺失的信息
    • 自动更新技能内容
    • 添加新的功能和特性说明
  • 文档结构分析

    • 分析官方文档的导航结构
    • 识别核心文档和补充文档
    • 建立文档索引和知识图谱
    • 追踪文档版本变更

文档覆盖范围

cnb.cool 官方文档结构(https://docs.cnb.cool/zh/):

  • 快速开始

    • 快速开始指南
    • 项目创建和管理
  • 构建相关

    • 配置文件详解
    • 触发规则
    • 语法手册
    • 构建环境
    • 缓存和卷管理
    • 环境变量
    • 密钥管理
    • 简化配置
    • Web 触发
    • 部署功能
    • 容器镜像仓库
  • 开发环境

    • VS Code 集成
    • SSH 访问
    • 流水线开发
    • 插件开发
  • 企业功能

    • 多分支管理
    • 团队协作
    • 权限管理
    • 审计日志
  • 最佳实践

    • 缓存优化
    • 构建速度优化
    • 安全实践
    • Monorepo 支持
  • API 参考

    • 触发 API
    • 状态 API
    • 插件 API
  • 常见问题

    • 常见问题
    • 错误排查
    • 性能问题

工作流程

  1. 文档发现与索引

    • 获取主页,提取所有文档链接
    • 建立文档索引(docs-index.json)
  2. 深度爬取与分析

    • 按类别批量爬取文档
    • 解析文档内容,提取结构化知识
  3. 知识对比与更新

    • 读取现有技能文件
    • 对比分析,识别需要更新的内容
    • 生成更新报告
  4. 自动更新

    • 备份现有技能
    • 应用更新
    • 提交更新到仓库

使用场景

当用户请求以下操作时,会自动调用此技能:

  1. "更新 cnb 技能包到最新版本"
  2. "检查 cnb.cool 官方文档是否有更新"
  3. "同步 cnb 技能与官方文档"
  4. "自动维护 cnb 技能内容"
  5. "cnb.cool 有新功能,请更新技能"
  6. "爬取 cnb.cool 最新文档"
  7. "对比当前技能与官方文档的差异"

3. dev-environment 技能包

名称: dev-environment 描述: Debian 13 开发环境配置专家,负责创建和维护项目开发环境、IDE工具配置、Docker容器构建、CI/CD流水线和测试框架集成

核心能力

  • 开发环境配置

    • 基于 Debian 13 (trixie) 的轻量级开发环境
    • 预装常用开发工具和检查工具
    • 集成 VS Code Server
    • 配置 Git 和其他基础工具
  • Docker 容器构建

    • 编写优化的 Dockerfile
    • 配置多阶段构建
    • 实现镜像缓存策略
    • 配置容器镜像推送到制品库
  • CI/CD 流水线设计

    • 配置 cnb.cool .cnb.yml
    • 设计自动化触发规则
    • 配置构建、测试、部署流程
    • 实现环境变量和密钥管理
  • 测试框架集成

    • 配置单元测试框架
    • 集成代码覆盖率工具
    • 配置端到端测试
    • 实现测试报告生成

使用场景

当用户请求以下操作时,会自动调用此技能:

  1. "为项目配置开发环境"
  2. "创建 Debian 13 开发环境 Dockerfile"
  3. "配置 cnb.cool CI/CD 流水线"
  4. "集成测试框架"
  5. "构建和推送 Docker 镜像"
  6. "设置代码质量检查"
  7. "配置 VS Code 开发环境"
  8. "创建自动化测试脚本"

技术特性

持久化存储规则

在 cnb.cool 云原生开发环境中,只有 /workspace 目录可以持久化!

  • 可以持久化:

    • 项目源代码
    • 配置文件(.cnb.yml, .ide/Dockerfile 等)
    • 技能文件(.codebuddy/)
    • 文档文件(README.md 等)
    • 环境配置文件
  • 会丢失的数据:

    • /tmp - 临时目录
    • /root - 用户主目录(除非挂载了持久化卷)
    • /var - 系统变量目录
    • 任何非 /workspace 下的文件

代码提交规范

任何重要文件的修改都必须及时提交并推送到仓库:

  1. 配置文件类 - 立即提交
  2. 文档文件类 - 完成后提交
  3. 代码文件类 - 功能完成后提交

标准提交推送流程:

git status git add <文件路径> git commit -m "简洁明了的提交信息" git push origin <分支名>

自动更新策略

  • 定期更新 - 每周自动检查一次
  • 手动触发 - 用户请求更新
  • 版本检测 - 检测到文档版本变化时

更新安全措施

  1. 备份机制 - 更新前自动备份
  2. 差异报告 - 生成详细的更新对比
  3. 人工确认 - 重大更新需要用户确认
  4. 回滚机制 - 支持快速回滚

开发指南

技能包开发

技能包采用 Markdown 格式,包含以下元数据:

--- name: <技能名称> description: <技能描述> allowed-tools: <允许使用的工具列表> ---

工具权限

  • Read - 文件读取
  • Write - 文件写入
  • Bash(git:*) - Git 操作
  • WebFetch - 网页内容获取
  • SearchContent - 内容搜索
  • SearchFile - 文件搜索
  • ListFiles - 文件列表

文件组织

  • 技能主文件:.codebuddy/skills/<skill-name>/SKILL.md
  • 说明文档:.codebuddy/skills/<skill-name>/README.md
  • 文档索引:.codebuddy/skills/<skill-name>/docs-index.json
  • 更新历史:.codebuddy/skills/<skill-name>/history.json
  • 备份目录:.codebuddy/skills/<skill-name>/backups/

维护历史

v1.0.0 (2025-01-23)

  • 创建初始项目结构
  • 实现 cnb.cool 配置专家技能包
  • 实现技能自我更新功能
  • 建立文档索引结构
  • 添加版本管理和备份机制

相关资源

官方文档

CodeBuddy 文档

许可证

本项目为北京智捷通云科技有限公司内部项目。

联系方式

如有问题或建议,请联系开发团队。