配置目录与设置
Pi 的 agent 目录与项目 .pi 目录里各文件的职责,系统提示覆盖,上下文文件,以及 settings.json 的主要设置项。
Pi 支持用户级和项目配置:用户级在 agent 目录(默认 ~/.pi/agent,可用环境变量 PI_CODING_AGENT_DIR 或 SDK 的 agentDir 改变),项目配置在工作目录下的 .pi(在项目信任之后加载)。交互模式下 /settings 改常用偏好;其他选项让 Pi 帮你更新,或直接编辑文件;手动改完运行 /reload。
| agent 目录里的路径 | 职责 |
|---|---|
settings.json | 用户级设置:偏好、默认值、资源路径、Pi 包声明 |
keybindings.json | 自定义终端界面和应用键位 |
mcp.json | 所有项目可用的 MCP 服务器 |
models.json | 兼容端点、模型与模型覆盖 |
auth.json | 保存的 API Key 和 OAuth 凭证(保密,不要提交) |
AGENTS.override.md、AGENTS.md、CLAUDE.md 等 | 跨工作目录应用的用户指令 |
SYSTEM.md | 替换 Pi 的默认系统提示 |
APPEND_SYSTEM.md | 往系统提示追加指令 |
extensions/、skills/、prompts/、themes/ | 用户的扩展、技能、提示模板和主题 |
项目 .pi/ 目录有对应的 settings.json、mcp.json、SYSTEM.md、APPEND_SYSTEM.md 以及 extensions/、skills/、prompts/、themes/;SYSTEM.md 和 APPEND_SYSTEM.md 里受信的项目文件优先于 agent 目录里的同名文件,同名文件不合并。上下文文件与项目 .pi 配置是分开的:Pi 从 agent 目录、工作目录及其父目录加载,在其目录或其下任何位置运行 Pi 时都适用;AGENTS.override.md 只在同一目录里取代 AGENTS.md 或 CLAUDE.md,不抑制其他目录或 agent 目录里的上下文文件。
主要设置(见 Settings Reference):模型与思考——defaultProvider、defaultModel、defaultThinkingLevel(off、minimal、low、medium、high、xhigh、max,默认 medium)、modelThinkingLevels、thinkingBudgets、enabledModels(模型循环的范围)、hideThinkingBlock、cacheWarming;交互——steeringMode、followUpMode、externalEditor、doubleEscapeAction、treeFilterMode、defaultProjectTrust(ask、always、never,默认 ask,只能在 agent 目录设置里设置);工具——defaultTools(默认 read、bash、edit、write;+name 添加、-name 移除)、codemode.*;会话与压缩——sessionDir、compaction.enabled、compaction.reserveTokens、compaction.keepRecentTokens。