Skip to content

Security: englishimewn/model-agnostic-coding

Security

SECURITY.md

Security Policy

支持的版本

安全修复会应用到最新的发布版本(当前为 0.1.x)。请尽量基于最新版本复现问题。

报告漏洞

请通过仓库托管平台的私密渠道报告安全问题,例如 GitHub 的 Security → Report a vulnerability(Security Advisory)。

报告中请包含:

  • 受影响的文件、命令或工作流,以及版本号。
  • 复现步骤与最小示例(用占位符替换真实凭据)。
  • 影响范围:能否读取本机凭据、能否越权写文件、能否泄露数据。
  • 你建议的修复方向(可选)。

请不要在公开 issue 中披露未修复的漏洞细节。维护者会在确认后尽快回复并给出修复计划。

密钥处理

本插件按以下规则处理凭据,贡献者也必须遵守:

  • 凭据只存放在本机文件 ${HOME}/.config/codex/deepseek.env,权限建议 chmod 600。
  • 启动器 scripts/codex-deepseek-worker 只判断环境变量是否非空,从不打印、回显或写入其值。
  • 任务包、prompt、日志、提交信息、issue、PR、聊天消息里都不出现密钥、token、cookie。
  • 不要把密钥粘贴到聊天、issue 或 PR 中请求排障;缺凭据时启动器会打印本地配置步骤。
  • 不要把 .env、secrets/、*.pem、*.key 等文件提交进仓库;.gitignore 已默认忽略这些路径。

禁止提交凭据

提交前请确认变更中不含任何真实凭据:

git diff --cached --name-only
scripts/validate-plugin.sh   # 包含占位符与常见密钥模式的本地扫描

如果怀疑某个凭据已进入历史记录:

  1. 立即在服务端轮换该凭据,使其失效。
  2. 再清理仓库历史(例如 git filter-repo)并强推受影响的私有分支。
  3. 通知维护者,以便评估是否需要发布安全公告。

轮换优先于清理历史:只要凭据曾经被推送过,就必须视为已泄露。

运行边界

  • 本插件不保存密钥、不自动上传代码,也不发起与任务无关的网络请求。
  • worker 只在任务包允许的文件范围内改动;越界修改按失败处理并回退。
  • 一个可写 worker 同一时间只负责互不重叠的文件集合;并行 worker 的文件所有权必须互斥。
  • CI 工作流只读取仓库内容,不引用 secret、不调用 DeepSeek worker。

There aren't any published security advisories