Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion Example/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
**/.codex/skills/ai-rules-generated-*
**/.cursor/commands/ai-rules/
**/.cursor/mcp.json
**/.cursor/rules/
**/.cursor/skills/ai-rules-generated-*
**/.firebender/skills/ai-rules-generated-*
**/.gemini/settings.json
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ curl -fsSL https://raw.githubusercontent.com/block/ai-rules/main/scripts/install
ai-rules generate # All agents
ai-rules generate --agents claude,cursor # Specific agents
```
Creates `CLAUDE.md`, `.cursor/rules/*.mdc`, `AGENTS.md`, etc.
Creates `CLAUDE.md`, `AGENTS.md`, and other agent-specific files. Cursor uses `AGENTS.md`.

4. **Check status** to ensure everything is in sync:
```bash
Expand Down
2 changes: 1 addition & 1 deletion docs/agents.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
| **Cline** | `.clinerules/AGENTS.md` -> inlined file | `.clinerules/AGENTS.md` -> `../ai-rules/AGENTS.md` | - | |
| **Codex** | `AGENTS.md` -> inlined file | `AGENTS.md` -> `ai-rules/AGENTS.md` | - | |
| **Copilot** | `AGENTS.md` -> inlined file | `AGENTS.md` -> `ai-rules/AGENTS.md` | - | |
| **Cursor** | `.cursor/rules/*.mdc` | `AGENTS.md` -> `ai-rules/AGENTS.md` | `.cursor/mcp.json` | Symlink mode: only project root level |
| **Cursor** | `AGENTS.md` -> inlined file | `AGENTS.md` -> `ai-rules/AGENTS.md` | `.cursor/mcp.json` | |
| **Firebender** | `firebender.json` | `firebender.json` (references `ai-rules/AGENTS.md`) | Embedded in `firebender.json` | Supports overlay files |
| **Gemini** | `GEMINI.md` -> inlined file | `GEMINI.md` -> `ai-rules/AGENTS.md` | Embedded in `.gemini/settings.json` | |
| **Goose** | `AGENTS.md` -> inlined file | `AGENTS.md` -> `ai-rules/AGENTS.md` | - | |
Expand Down
2 changes: 0 additions & 2 deletions docs/project-structure.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ monorepo/
│ │ └── styling.md
│ ├── CLAUDE.md # Symlink -> ai-rules/.generated-ai-rules/ai-rules-generated-AGENTS.md
│ ├── AGENTS.md # Symlink -> ai-rules/.generated-ai-rules/ai-rules-generated-AGENTS.md
│ ├── .cursor/rules/ # Generated (*.mdc)
│ └── src/
├── backend/ # Backend services
Expand All @@ -40,7 +39,6 @@ monorepo/
├── CLAUDE.md # Symlink -> ai-rules/.generated-ai-rules/ai-rules-generated-AGENTS.md
├── AGENTS.md # Symlink -> ai-rules/.generated-ai-rules/ai-rules-generated-AGENTS.md
├── .cursor/rules/ # Root Cursor rules (generated *.mdc files)
├── .clinerules/ # Root Cline rules (symlink)
├── .mcp.json # Root MCP config (generated)
└── firebender.json # Root Firebender config (generated)
Expand Down
4 changes: 2 additions & 2 deletions docs/rule-format.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ All fields are optional:
|-------|-------------|---------|
| `description` | Context description that helps agents understand when to apply this rule if `alwaysApply` is `false` | - |
| `alwaysApply` | `true` = referenced directly in agent rule files; `false` = included as optional rules based on context | `true` |
| `fileMatching` | Glob patterns for which files this rule applies to (e.g., `"**/*.ts"`, `"src/**/*.py"`). Currently supported in Cursor. | - |
| `fileMatching` | Glob patterns for which files this rule applies to (e.g., `"**/*.ts"`, `"src/**/*.py"`). Currently used for conditional rule matching in Firebender. | - |

If frontmatter is omitted entirely, the file is treated as a regular markdown rule with default settings (`alwaysApply: true`).

Expand All @@ -38,7 +38,7 @@ In Standard Mode, `ai-rules generate` produces a single inlined file at `ai-rule

Most agent output files (e.g., `CLAUDE.md`, `AGENTS.md`, `GEMINI.md`) are created as **symlinks** pointing to this inlined file. This ensures every agent reads the same complete content without needing `@` file expansion support.

Cursor and Firebender generate their own formats (`.mdc` files and JSON respectively) and do not use the inlined file.
Firebender generates its own JSON format and does not use the inlined file. Cursor uses the inlined `AGENTS.md` path.

## Symlink Mode

Expand Down
Loading
Loading