CodeBuddy 的记忆原本只存在本机用户目录(不进版本控制),换机器即丢失。 把 5 个记忆文件备份进仓库,clone 后让助手「从 .ai-memory/ 导入记忆」即可恢复。 - README 说明用途、导入方法与维护约定 - CODEBUDDY.md 补充同步约定(改完记忆须同步本目录) - 内容仅含基础设施信息(IP/域名/用户名),无任何密码或密钥
27 lines
1.7 KiB
Markdown
27 lines
1.7 KiB
Markdown
---
|
|
name: 用户的命令行习惯与协作方式
|
|
description: 用户用 PuTTY 操作服务器,对多行粘贴/heredoc 不熟;偏好自己执行 sudo 操作,重要改动要先确认
|
|
type: user
|
|
---
|
|
|
|
用户通过 **PuTTY** 连接服务器,对 Linux shell 的细节不算熟练。
|
|
|
|
**表现**
|
|
- 我给的 `sudo tee ... <<'EOF'` 多行 heredoc 命令,粘贴到 PuTTY 后卡在 `>` 二级提示符
|
|
没能执行(用户当时不确定自己是否改好了)。
|
|
- **长单行命令也会被截断**(2026-09-27 实测):一条约 200 字符的
|
|
`sudo cp A B && sudo cp C D && sudo nginx -t && ...` 粘贴后被 PuTTY 折成三行,
|
|
前两行报 `cp: missing destination file operand`,第三行把配置文件路径当命令执行
|
|
报 `Permission denied`。**"单行"不等于安全**——长度也是风险。
|
|
- 涉及 `.env` 这类含密钥的文件,用户会拒绝我直接编辑。
|
|
|
|
**How to apply:**
|
|
- 需要用户 sudo 时,**不要给内联命令**(无论单行还是多行)。正确做法:
|
|
1. 我把脚本写到服务器 `~/xxx.sh`(用 `ssh ... 'cat > ~/xxx.sh' < 本地文件`,我有写权限);
|
|
2. 让用户只执行 `sudo bash ~/xxx.sh` —— 短到不可能折行;
|
|
3. 脚本里自带备份与失败回滚,并 `echo` 每一步进度,方便用户贴回显。
|
|
- 若确实要给单行命令,控制在 **60 字符以内**,或拆成多条分别给。
|
|
- 涉及 `sudo` 的操作(重启服务、改 nginx 配置等)用户需要自己执行——我没有密码,
|
|
非交互 `sudo -n` 会失败。把命令准备好交给用户,并附上回滚方案。
|
|
- 改动 `.env`、nginx 配置、重启服务这类动作,先说明清楚再让用户确认。
|