Skip to content

[Feature]: 评估并纳入各 AI Agent 的 Rules / rule 目录扫描与管理 #197

Description

@legeling

Feature Description

建议对各类 AI 编程智能体的 Rules / rule 相关目录 做一次系统评估,并将确认属于智能体规则来源的目录纳入 PromptHub 的 Rules 管理与扫描范围。

目前 Rules 扫描不应只依赖少数固定入口。以 Claude Code 为例,用户目录下的:

~/.claude/rules/

可以存放多个规则文件,但目前已有反馈表明 PromptHub 无法识别该目录(见 #196)。建议将此问题从单个平台修复扩展为一次完整的规则目录兼容性评估。

Motivation

不同智能体对规则文件的目录、文件名、扩展名和作用域约定并不一致:

  • 有些使用用户级 rules/ 目录;
  • 有些使用项目级 .xxx/rules/ 目录;
  • 有些使用 .md / .mdc 等不同扩展名;
  • 有些使用 AGENTS.mdCLAUDE.md.cursorrules 等单文件约定;
  • 同名的 rules 目录也可能只是项目文档,不应被误识别为 Agent Rules。

如果 PromptHub 能统一扫描和管理经过确认的规则来源,用户就不需要在不同工具目录之间手动查找、复制和维护规则。

Proposed Solution

  1. 建立“规则来源兼容性清单”,区分:
    • 用户级规则目录;
    • 项目级规则目录;
    • 单文件规则入口;
    • 平台专属规则格式和扩展名。
  2. 优先评估并纳入以下候选路径(以实际验证结果为准,不要仅按目录名称推断):
    • ~/.claude/rules/<project>/.claude/rules/
    • ~/.cursor/rules/<project>/.cursor/rules/
    • <project>/.windsurf/rules/
    • <project>/.clinerules/
    • <project>/.roo/rules/
    • <project>/.kilocode/rules/
    • .github/instructions/ 及相关 Copilot 指令文件
    • AGENTS.mdCLAUDE.md.cursorrules 等已知单文件入口
  3. 对已确认的来源纳入扫描、预览、搜索、编辑、版本历史和工作区管理。
  4. 每条规则记录来源平台、作用域、原始路径和文件格式,避免多个平台的规则混在一起。
  5. 扫描使用明确的 allowlist 和来源标记,不要把项目中普通文档目录(例如 docs/rules/)全部当作 Agent Rules。
  6. 支持递归规则文件、文件删除后的清理,以及用户级和项目级规则的去重/冲突提示。

Validation Required

这项需求需要逐个平台实际验证,建议记录:

  • 该目录/文件是否被对应智能体默认读取;
  • 支持的文件扩展名、frontmatter 和目录层级;
  • 用户级规则与项目级规则的优先级;
  • 规则是否支持递归子目录和路径模式;
  • 同一规则同时出现在多个来源时如何去重;
  • Windows、macOS、Linux 的路径解析;
  • 符号链接、权限不足、文件删除后的扫描行为;
  • PromptHub 的编辑或同步是否会改变智能体的原有语义。

建议至少验证 Claude Code、Cursor、Windsurf、Cline、Roo Code、Kilo Code、GitHub Copilot、Codex 等 PromptHub 已关注的平台,并在文档中标注平台版本和实测结果。

Acceptance Criteria

  • 建立 Rules 来源兼容性矩阵,并标注平台、作用域、路径、扩展名和版本;
  • Claude Code 的 ~/.claude/rules/ 和项目级 .claude/rules/ 得到明确处理(与 [Bug]: 无法识别 ~/.claude/rules 目录中的 Rules #196 对齐);
  • 至少完成主要平台候选目录的扫描验证;
  • 已确认的规则来源可以被扫描、预览、搜索和管理;
  • 用户级、项目级和平台来源在 UI 中可区分;
  • 普通 docs/rules 等文档目录不会被无条件误收录;
  • 删除、移动、重命名规则后重新扫描能够正确反映变化;
  • 文档说明哪些目录是已支持、实验性或暂不支持。

Alternatives Considered

  • 只修复单个目录(例如 ~/.claude/rules/):可以快速解决一个平台的问题,但后续仍会不断出现类似兼容性缺口。
  • 扫描所有名称包含 rule / rules 的目录:实现简单,但会把大量普通项目文档误识别为智能体规则,不建议采用。

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions