English · 中文 · 🌐 dvalincode.dev
为人类和 AI Agent 编写的代码提供开放安全工程能力。
每一次修复,都自带证明。
| 🏠 Home | 统一容纳只读 Ask 与逐操作审批的 Collaborate,切换意图时不离开当前项目和对话。 |
| ⚡ Code | 专注自主编码,支持 Ask / Plan / Auto / Bypass 权限级别;旧 Security 与 Routines 已从 Code 移除。 |
| 🛡️ Dvalin | 专用白盒安全工程工作区:编排内置扫描器、Semgrep CE、Trivy、OSV-Scanner,分诊并修复发现项,运行测试和复扫,最后显式发布可审查的 Draft PR。Dvalin 指南 → |
| 🏦 高合规团队 | 为金融、医疗、安全敏感 SaaS、内部平台团队设计:AI 编码不仅要方便开发者,还要满足策略约束、审计、数据最小化和供应链审查。 |
| 🛡️ 安全修复闭环 | 运行本地安全扫描,或导入 CodeQL、GitHub Code Scanning、Semgrep 及兼容扫描器的 SARIF;随后创建隔离 remediation worktree,把发现项转成带源码上下文和 PR 就绪报告的聚焦修复任务。流程 → |
| 📚 Skills | 上传、下载和查看本地 skill bundle。DvalinCode 内置 secure-code-scan 与 secure-code-remediation skills,并提供列出 skill、读取 skill 说明、扫描、列出 case、准备 remediation worktree 的 agent tools。格式 → |
| 🛡️ 审计日志 | 每次运行都生成防篡改、哈希链式的 JSONL 日志 —— 每次文件读写、每条命令、每次审批都被记录。Run Report 将其渲染为 Markdown;dvalincode report verify 可验证链条完好。威胁模型 → |
🔒 组织级策略 & trust | 由公司、而非开发者来约束 Agent。一个 dvalin.policy.json 限定模式、shell 命令、文件路径、工具与模型;仓库级策略只能让机器级策略更严、永不放宽。每次运行都记录所遵循策略的哈希。dvalincode trust 直接打印本机的实时安全态势 —— 生效策略 + 哈希、审计状态、运行时 —— 让审批人自行核验。策略参考 → · 可审批性方案 → |
| 🏛️ 治理证据 | 仓库维护 OpenSSF Scorecard、CodeQL、Dependabot、固定 SHA 的 GitHub Actions、CODEOWNERS,以及 ISO/IEC 42001 AIMS 对齐文档,作为可审查的项目治理证据;每个 release 还附带一份由该二进制给自己生成的 Evidence Pack。Scorecard 映射 → · ISO 42001 对齐 → · 发布证据 → |
| 📐 开放规范 | PCP-1 —— 把模型提供方边界的约束(出网收敛、凭据收敛、审计、策略绑定)写成与厂商无关、带测试步骤的开放规范,任何 agent 运行时都可以拿它跑自己的 adapter 并公开结果。它不是 DvalinCode 的一个测试文件,而是别人同样可以用来衡量我们的清单。Provider Conformance Profile → |
| 🖥️ 一流的 GUI | 现代化 Web UI,包含代码语法高亮、@ 文件引用、/ 斜杠命令、Git 分支显示、实时 Token 与费用统计、多 LLM Profile,以及暗色 / 浅色 / 跟随系统的主题切换。 |
| 🖥️ 终端或 Web,同一个二进制 | 直接运行进入交互式终端代理,支持流式输出、行内审批和红绿 diff;或 dvalincode serve 启动 Web GUI 供浏览器/远程使用。两个前端共用同一套 agent 内核。 |
| 🖥️ 原生桌面应用 | DvalinCode.app —— 真正的 Dock 应用(系统原生 webview,非 Electron),驱动同一套引擎。macOS 上一行安装命令会自动装进 /Applications,从启动台直接打开。 |
| 🪶 零依赖二进制 | 每平台单文件可执行程序 ~25MB。无需 Node、Python、Docker。 |
| 🔐 本地优先 | Session、配置、Profile、审计日志均保存在 ~/.dvalincode/。.dvalincodeignore 阻止 Agent 访问敏感文件。仓库根目录的 AGENTS.md 作为项目级持久指令自动加载。 |
| 💾 可导出、可迁移 | 把所有本地数据(记忆、Session、配置、审计)导出为一个文件,在另一台机器导入 —— 整套环境随身带走。任意对话都能下载为干净的 Markdown 记录。 |
serve · 共享回合执行器/compact · dvalin.json 团队 playbook · 自包含二进制
~/.dvalincode/。如需排除敏感文件,在仓库根目录放置 .dvalincodeignore(语法同 gitignore)。
ollama pull qwen2.5-coder),在 LLM Configuration 中选择 Ollama Provider。无需 Key、无需网络、无 Token 费用。
sandbox-exec;Linux 在限制性网络策略下会在已安装 Bubblewrap 时启用它。Windows 暂无受支持的子进程网络沙箱,因此限制性策略会安全关闭执行,不会静默降级为无限制运行。原生命令运行器本身支持这三个平台。
/bin/sh 执行;Windows 命令通过系统 ComSpec(默认为 cmd.exe)执行。完整原生命令行支持管道、重定向与条件操作符;拆分的 command + args 形式会按宿主 shell 规则引用可执行文件路径及参数。
~/.dvalincode/audit/run-<timestamp>-<id>.jsonl 写入 JSONL 审计日志。用 dvalincode report --last 渲染(或在 GUI 看可折叠的 Run Report 卡片)。每条记录都用 SHA-256 哈希与上一条相连,因此任何事后修改都可被检测 —— dvalincode report verify <run-id> 会报告 ✓ chain intact 或断裂的确切位置。它是防篡改可检测,而非不可篡改:能重写整个文件的本地攻击者可重算整条链。其价值在于取证与可问责。完整威胁模型见 docs/AUDIT-TRAIL.md。
xattr -dr com.apple.quarantine ~/.dvalincode
或在 Finder 中右键 → 打开 → 确认。
PATH 中检测到 Semgrep CE、Trivy 或 OSV-Scanner,工作区会自动加入相应引擎。也可以导入任意兼容的 SARIF 2.1 结果。
AGENTS.md 每轮都会发送吗?AGENTS.md,注入系统 prompt 的 === PROJECT INSTRUCTIONS === 段。保持精简 —— 它会占用 token 预算。
每一个 Issue、想法、文档改进、测试和代码贡献,都在帮助 DvalinCode 变得更好。
| 贡献者 | GitHub 主页 | | --- | --- | | Arthur Pan | [@arthurpanhku](https://github.com/arthurpanhku) | | Shivas | [@shivasb42](https://github.com/shivasb42) | | Aditya | [@adity982](https://github.com/adity982) | | badhope | [@weed33834](https://github.com/weed33834) | | Samran Asif | [@webdevsamran](https://github.com/webdevsamran) | | dchaudhari7177 | [@dchaudhari7177](https://github.com/dchaudhari7177) | 查看[完整贡献记录](https://github.com/arthurpanhku/dvalincode/graphs/contributors),其中也包含自动依赖更新和维护记录。也想加入?阅读贡献指南,提交你的第一个 Pull Request。