---
description: 远程 Linux 路径必须用 POSIX，禁止 os.path 拼接
globs: server/**/*.py
alwaysApply: false
---

# 远程路径 = POSIX only

## 规则

- **SSH / SFTP / rsync 目标路径**（含 `target_path`、`remote_path`、命令里的文件路径）：
  - 使用 `server.utils.posix_paths`（`normalize_remote_abs_path`、`remote_join`、`posix_join` 等）
  - **禁止** `os.path.join` / `dirname` / `basename` / `normpath` 处理这类字符串
- **Nexus 本机真实 I/O**（`open`、`os.walk`、`os.scandir`）：可用 `os.path`，逻辑拼接仍优先 `posix_join`
- **仓库本地路径**（`Path(__file__)`、MCP `DEPLOY_DIR`）：可用 `os.path` / `pathlib`

## 参考

- 实现：`server/utils/posix_paths.py`
- 审计：`docs/audit/2026-06-01-posix-path-batch-review.md`
