ddenny-s/project-atlas
GitHub: ddenny-s/project-atlas
Project Atlas 是一个 AI 工具无关的协议,通过证据分类和源码链接将陌生代码库转化为可审计的结构化项目映射图。
Stars: 0 | Forks: 0
Project Atlas
Русская версия · 快速开始 · 协议 · 方法论 · 安全 · MIT
Project Atlas 将陌生的代码库转化为带有源码链接的映射图,供工程师进行审计和后续开发。它会追踪产品行为、runtime、数据、状态、权限、风险和恢复机制,同时严格区分事实、推断、目标和未知项。 **Codex 是主要的全功能适配器。Claude Code 是第一个次要适配器。** 两者都打包了相同的、独立于 AI 工具的核心协议。 ## 为何信任其输出 - 实质性声明均有源码链接,并被明确归类为 `CONFIRMED`、`INFERENCE`、`HYPOTHESIS`、`TARGET` 或 `UNKNOWN`。 - 完成度验证会检查产出物结构、安全清单的源码归属,以及受支持的有限命令重放。它并不宣称自然语言结论是真实的。 ### 可复现的有效性 对于 v0.1.0 版本,“有效”意味着该协议能够生成在契约上完整、受源码限制、适配器稳定且可安全安装的结果。[发布测试套件](./tests/) 在配置的 [CI 矩阵](./.github/workflows/ci.yml) 中测试了这些机制: - **完成度契约:** QUICK、STANDARD 和 FORENSIC 模式接受实质性的测试用例映射集,并拒绝不完整或结构性伪造的输出。证据:[CLI 契约测试](./tests/test_atlas_cli.py) 和 [公开测试用例预言机](./tests/oracles/)。 - **源码边界:** 不安全、被忽略、符号链接、越界和 CommonMark 隐藏的引用会被拒绝,而不会被视为证据。证据:[安全回归测试](./tests/test_atlas_security.py)。 - **适配器稳定性:** Codex 和 Claude Code 携带字节完全相同的规范技能负载,并在发布前检测偏移。证据:[适配器打包测试](./tests/test_adapter_packaging.py)。 - **安装器事务:** 隔离路径测试涵盖了独立安装器的覆盖拒绝、有限预检、备份、回滚和中断行为。证据:[安装器事务测试](./tests/test_installers.py)。运行验证检查
``` python3 -m unittest tests.test_atlas_cli python3 -m unittest tests.test_atlas_security python3 scripts/sync_adapters.py --check python3 -m unittest tests.test_installers ```
Codex marketplace:检查、更新和移除
检查已安装的插件: ``` codex plugin list --marketplace project-atlas --json ``` 刷新并重新安装: ``` codex plugin marketplace upgrade project-atlas codex plugin remove project-atlas@project-atlas codex plugin add project-atlas@project-atlas ``` 移除插件和 marketplace: ``` codex plugin remove project-atlas@project-atlas codex plugin marketplace remove project-atlas ```Claude Code marketplace:检查、更新和移除
``` claude plugin details project-atlas@project-atlas claude plugin marketplace update project-atlas claude plugin update project-atlas@project-atlas ``` 更新后重启 Claude Code。要移除它: ``` claude plugin uninstall project-atlas@project-atlas claude plugin marketplace remove project-atlas ```独立的 Codex 和 Claude Code 技能
克隆一次: ``` git clone https://github.com/ddenny-s/project-atlas.git cd project-atlas ``` 将独立的 Codex 技能安装到 `$HOME/.agents/skills/map-project`: ``` ./scripts/install.sh --user-scope ``` 作为 `$map-project` 调用。显式更新: ``` git pull --ff-only ./scripts/install.sh --user-scope --force ``` 将独立的 Claude Code 技能安装到 `${CLAUDE_CONFIG_DIR:-$HOME/.claude}/skills/map-project`: ``` ./scripts/install-claude.sh ``` 作为 `/map-project` 调用。显式更新: ``` git pull --ff-only ./scripts/install-claude.sh --force ``` 这两个安装程序都会拒绝静默覆盖。强制更新会将先前的目录树保留在相应的 `.skill-backups/project-atlas/` 目录下。在进行手动恢复或移除之前,请参阅[适配器架构和独立生命周期](./docs/adapters.md)。 要仅移除已验证的独立 Project Atlas 副本,请运行此交互式检查。它会打印确切的目标位置,验证 Project Atlas 标记,并在删除任何内容之前要求输入 `REMOVE`: ``` codex_skill="${HOME:?}/.agents/skills/map-project" claude_root="${CLAUDE_CONFIG_DIR:-${HOME:?}/.claude}" claude_skill="$claude_root/skills/map-project" printf 'Codex: %s\nClaude Code: %s\n' "$codex_skill" "$claude_skill" verified_skills=() for skill in "$codex_skill" "$claude_skill"; do if test -d "$skill" && test ! -L "$skill" && test -f "$skill/SKILL.md" && test ! -L "$skill/SKILL.md" && grep -q '^name: map-project$' "$skill/SKILL.md" && grep -q 'Project Atlas' "$skill/SKILL.md"; then printf 'Verified Project Atlas skill: %s\n' "$skill" verified_skills+=("$skill") else printf 'Skipped unverified or absent path: %s\n' "$skill" fi done test "${#verified_skills[@]}" -gt 0 || exit 1 printf '%s' 'Type REMOVE to delete the verified paths: ' >&2 IFS= read -r confirmation test "$confirmation" = 'REMOVE' || exit 1 for skill in "${verified_skills[@]}"; do rm -r -- "$skill" done ``` 备份仍保留在相应的 `.skill-backups/project-atlas/` 目录下,以便进行明确的检查和清理。操作上限与恢复边界
安全清单遍历被限制为 100,000 个文件、20,000 个目录、深度 64 以及 16 MiB 的 UTF-8 相对路径字节。序列化的 JSON 限制为 8 MiB。Git ignore 分类针对具有有限输出和 15 秒截止时间的隔离临时工作树运行;源 `.git` 元数据和用户级别的排除项不是证据输入。 独立安装限制为 2,048 个文件、512 个目录、深度 32、每个文件 4 MiB,总计 64 MiB。适配器同步限制为深度 32、2,048 个目录、4,096 个文件、8,192 个条目、每个文件 8 MiB,总计 64 MiB。 可捕获的安装和同步故障会尝试回滚。`SIGKILL`、断电或文件系统持久性故障仍然可能留下过时的锁、暂存树、备份或模棱两可的目标。在恢复之前检查目标、备份、暂存、锁和日志状态;切勿仅凭修改时间推断权限。 这些机制可保护公共路径免受普通并发写入者的影响。它们无法对具有直接文件系统访问权限的恶意同账户进程进行沙盒处理。标签:AI编程助手, Claude, Codex, CVE检测, SOC Prime, 代码分析, 代码地图, 凭证管理, 开发工具, 逆向工具