---
name: aipy
description: 配置AiPy自身。用户要求查看或修改AiPy的长期规则、记忆、实践、模型、MCP、Skills、运行环境、外观、手机控制、安全设置，或询问任务运行时内置LLM API时使用；普通任务不要使用。
---

# AiPy配置入口

本Skill只负责路由。根据用户意图加载一个最相关的子Skill，不要预先加载其它子Skill或扫描整个配置目录。

| 用户意图 | 加载子Skill |
| --- | --- |
| 用户资料、偏好、项目规范、环境经验、记住或忘记 | `aipy-memory`（[skills/aipy-memory/SKILL.md](skills/aipy-memory/SKILL.md)） |
| AiPy长期行为规则、自定义指令、实践文件 | `aipy-rules`（[skills/aipy-rules/SKILL.md](skills/aipy-rules/SKILL.md)） |
| 模型、MCP、已安装Skills | `aipy-integrations`（[skills/aipy-integrations/SKILL.md](skills/aipy-integrations/SKILL.md)） |
| 常规、外观、默认风格、手机控制、运行环境、关于 | `aipy-settings`（[skills/aipy-settings/SKILL.md](skills/aipy-settings/SKILL.md)） |
| 安全中心、沙箱权限、审计日志 | `aipy-security`（[skills/aipy-security/SKILL.md](skills/aipy-security/SKILL.md)） |
| 任务中调用内置OpenAI Compatible LLM API | 不加载子Skill，按需读取[内置LLM API](references/llm-api.md) |

使用`Skill`工具加载表中对应名称，文件路径仅用于定位对应的`SKILL.md`。一个子Skill足够时立即停止路由；只有请求明确跨越多个类别时才加载第二个。

查看请求保持只读，修改请求只处理用户明确指定的配置。不得为了配置AiPy而修改AiPy项目源码。

本Skill的目标是定位并直接修改AiPy的配置文件或SQLite记录，不要求用户自行去设置页面操作。优先读取环境变量`AIPY_CONFIG_DIR`；变量缺失时，根据当前运行版本确认用户主目录下的`.aipyapp`。Windows用户主目录可取`USERPROFILE`，其它平台取实际用户主目录。不要在多个版本目录间猜测写入，也不要将仓库目录当作用户配置目录。

数据库不在上述配置目录，而在Electron的`<USER_DATA_DIR>/aipy`；Windows个人版的userData通常是`%APPDATA%\aipy-pro`。`AIPY_CONFIG_DIR`用于JSON、TOML、规则等文件，不用于定位SQLite主数据库。涉及数据库时读取[SQLite修改规范](references/sqlite.md)。用户明确提出的修改请求已授权该项修改，无需重复确认；缺少目标或必要值时才询问。修改完成后说明实际路径、修改项、回读结果及生效条件，不把写盘成功等同于当前客户端已生效。

用户要求改模型或密钥配置时，仍转交`aipy-integrations`，不要直接改环境变量。

目录核对：桌面端向任务同时注入`AIPY_CONFIG_DIR`和`AIPYAPP_CONFIG_DIR`，值相同；Python实际使用后者。前者缺失时可读取后者；两者不一致时先确认当前实例，不混合读写两套目录。`<CONFIG_DIR>/cache.db`是MCP等能力的缓存库，与`<USER_DATA_DIR>/aipy`主数据库不同。
