docs(agents): 完善 AGENTS.md 并添加别名依赖表
- 添加 .zshrc 别名与包的绑定表,防止误删依赖 - 简化 Agent 须知第5、6条表述 - 修正仓库结构描述
This commit is contained in:
@@ -14,17 +14,17 @@
|
|||||||
.
|
.
|
||||||
├── source.py # decman 主配置入口
|
├── source.py # decman 主配置入口
|
||||||
├── modules/
|
├── modules/
|
||||||
│ ├── base.py # 基础模块(系统包 + 现代 CLI 工具 + 配置文件)
|
│ ├── base.py # 基础模块(系统包 + CLI 工具 + dotfiles)
|
||||||
│ ├── dev.py # 开发模块(语言运行时 + 编辑器 + 工具链)
|
│ ├── dev.py # 开发模块(语言运行时 + LSP + 工具链)
|
||||||
│ ├── docker.py # Docker 模块(packages + systemd units)
|
│ ├── docker.py # Docker 模块(packages + systemd units)
|
||||||
│ ├── locale.py # locale 模块(files + on_change hook)
|
│ ├── locale.py # locale 模块(on_change hook 示例)
|
||||||
│ └── zsh.py # Zsh 模块(shell + 插件 + 自动 chsh)
|
│ └── zsh.py # Zsh 模块(shell + 插件 + 自动 chsh)
|
||||||
├── system/etc/ # 系统配置文件源 → 部署到 /etc/
|
├── system/etc/ # 系统配置文件源 → /etc/
|
||||||
├── home/ # 用户配置文件源 → 部署到 ~/
|
├── home/ # 用户配置文件源 → ~/(必须指定 owner)
|
||||||
├── scripts/
|
├── scripts/
|
||||||
│ ├── install.sh # 引导脚本(git → decman → 首次 sync)
|
│ ├── install.sh # 引导脚本(curl | bash)
|
||||||
│ └── wsl-init.sh # WSL 首次初始化(创建用户)
|
│ └── wsl-init.sh # WSL 首次初始化
|
||||||
└── pyproject.toml # 开发依赖(decman + 插件,仅用于类型检查)
|
└── pyproject.toml # 开发依赖(decman 插件,仅类型检查)
|
||||||
```
|
```
|
||||||
|
|
||||||
## 命令
|
## 命令
|
||||||
@@ -121,6 +121,19 @@ class DockerModule(Module):
|
|||||||
- 示例:`feat(docker): 添加 Docker 支持并重排声明顺序`
|
- 示例:`feat(docker): 添加 Docker 支持并重排声明顺序`
|
||||||
- 分支:直接在 `main` 上工作
|
- 分支:直接在 `main` 上工作
|
||||||
|
|
||||||
|
## 关键依赖关系
|
||||||
|
|
||||||
|
`.zshrc` 别名与包的绑定(修改前务必检查):
|
||||||
|
|
||||||
|
| 别名 | 依赖包 | 位置 |
|
||||||
|
|------|--------|------|
|
||||||
|
| `rm="gomi"` | `gomi-bin` (AUR) | `base.py` |
|
||||||
|
| `cat="bat"` | `bat` | `base.py` |
|
||||||
|
| `ls="eza"` | `eza` | `base.py` |
|
||||||
|
| `vi="nvim"` | `neovim` | `dev.py` |
|
||||||
|
| `lg="lazygit"` | `lazygit` | `dev.py` |
|
||||||
|
| `x="ouch decompress"` | `ouch` | `base.py` |
|
||||||
|
|
||||||
## Agent 须知
|
## Agent 须知
|
||||||
|
|
||||||
1. **decman 是唯一真相**:不要手动装包,加到 `source.py` 或模块里,跑 `sudo decman`。
|
1. **decman 是唯一真相**:不要手动装包,加到 `source.py` 或模块里,跑 `sudo decman`。
|
||||||
@@ -131,9 +144,9 @@ class DockerModule(Module):
|
|||||||
|
|
||||||
4. **用户配置**:源文件放 `home/`,必须指定 `owner=USERNAME`。
|
4. **用户配置**:源文件放 `home/`,必须指定 `owner=USERNAME`。
|
||||||
|
|
||||||
5. **Runs as root**:`sudo decman` 以 root 执行 `source.py`。`SUDO_USER` 是调用 sudo 的原始用户名,不要 fallback。
|
5. **环境变量**:`sudo decman` 以 root 执行,`SUDO_USER` 是原始用户名。配置内不要 fallback 到 `os.getenv("USER")`。
|
||||||
|
|
||||||
6. **开发环境**:`pyproject.toml` + `uv sync` 管理开发依赖(decman、decman-pacman、decman-systemd),仅用于 IDE 类型检查,不影响运行时。
|
6. **开发依赖**:`pyproject.toml` 仅用 uv 管理类型检查依赖,不影响运行时。修改依赖后运行 `uv sync`。
|
||||||
|
|
||||||
7. **幂等性**:所有脚本和配置必须可安全重复执行。
|
7. **幂等性**:所有脚本和配置必须可安全重复执行。
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user