Ruler ist ein Open-Source-Befehlszeilen-Tool, das Entwicklern und Teams helfen soll, Regelkonfigurationen für mehrere KI-Codierungsagenten (z. B. GitHub Copilot, Claude, Cursor, Aider usw.) auf einheitliche Weise zu verwalten. Dies geschieht über eine zentralisierte .ruler/ Ruler unterstützt mehrere KI-Agenten mit einer einfachen Kommandozeilenschnittstelle. Entwickler müssen nur eine einzige Regeldatei pflegen, um sicherzustellen, dass alle KI-Agenten einer konsistenten Kodierungsspezifikation folgen.Ruler unterstützt eine breite Palette von KI-Kodierungsagenten und verfügt über eine einfach zu bedienende Befehlszeilenschnittstelle, wodurch es sich für Entwicklungsteams eignet, die toolübergreifend zusammenarbeiten müssen. Das von Eleanor Berger (@intellectronica) entwickelte und auf GitHub gehostete Projekt befindet sich derzeit in Version 0.2.10 und wurde in TypeScript unter der MIT-Lizenz geschrieben.

Funktionsliste
- Verwalten Sie die Regeln des KI-Codieragenten zentral über die
.ruler/Das Verzeichnis speichert Regeldateien einheitlich. - Verteilen Sie Regeln automatisch an Profile von unterstützten KI-Agenten (z. B. GitHub Copilot, Claude, Cursor, Aider, AugmentCode usw.).
- Unterstützt von
ruler.tomlDie Datei dient der Feinabstimmung des Zielagenten und des Ausgabepfads. - Bietet einfache Befehlszeilentools zur Unterstützung
applyundrevertund andere Befehle, um die Erstellung und Rückgängigmachung von Konfigurationen zu verwalten. - Unterstützt die globale Konfiguration, gespeichert in der
$XDG_CONFIG_HOME/ruler(Standard)~/.config/ruler) zur einfachen projektübergreifenden Verwendung. - automatische Verwaltung
.gitignoreDadurch wird verhindert, dass die erzeugte Proxy-Konfigurationsdatei vom Versionskontrollsystem verfolgt wird. - Unterstützung von Erweiterungen zum einfachen Hinzufügen neuer AI-Agent-Adapter.
- Detaillierte Protokolle und Fehlerwarnungen für eine einfache Fehlersuche und optimierte Konfiguration.
Hilfe verwenden
Einbauverfahren
Ruler ist ein auf Node.js basierendes Tool, das Node.js 18.x oder höher benötigt. Hier sind die detaillierten Installationsschritte:
- Klon-Lager
Klonen Sie das Ruler-Repository lokal, indem Sie den folgenden Befehl in einem Terminal ausführen:git clone https://github.com/intellectronica/ruler.git cd ruler - Installation von Abhängigkeiten
Verwenden Sie npm, um die erforderlichen Abhängigkeiten zu installieren:npm install - Erstellen Sie das Projekt
TypeScript-Code zur Erstellung des Lineals:npm run build - Globale Installation (optional)
Wenn Sie Ruler in einem beliebigen Verzeichnis verwenden möchten, können Sie es global installieren:npm install -g @intellectronica/ruler - Überprüfen der Installation
Führen Sie den folgenden Befehl aus, um zu prüfen, ob Ruler korrekt installiert ist:ruler --versionWenn Sie etwas zurückgeben wie
0.2.10Versionsnummer, die anzeigt, dass die Installation erfolgreich war.
Konfiguration und Verwendung
Die Kernfunktion von Ruler besteht darin, die Regeln von KI-Codieragenten auf einheitliche Weise zu verwalten. Hier sind die Schritte, um dies zu tun:
1. die Erstellung eines Regelkatalogs
Erstellen Sie im Stammverzeichnis des Projekts die Datei .ruler/ und fügen Sie ihm eine Regeldatei im Markdown-Format hinzu. Beispiel:
mkdir .ruler
touch .ruler/coding_guidelines.md
touch .ruler/style_guide.md
existieren coding_guidelines.md Schreiben Sie z. B. Regeln hinein:
# Python 项目规范
## 代码风格
- 遵循 PEP 8 规范
- 使用类型注解定义函数签名
- 函数保持单一职责,代码行数不超过 50 行
## 错误处理
- 使用具体异常类型,避免使用通用 `Exception`
- 记录错误时包含上下文信息
Die Inhalte der einzelnen Markdown-Dateien werden automatisch zusammengefügt, wobei beim Zusammenfügen Quell-Tags hinzugefügt werden (z. B. --- Source: coding_guidelines.md ---) zur einfachen Verfolgung.
2. die Konfiguration ruler.toml
Erstellen Sie im Stammverzeichnis des Projekts die Datei ruler.toml Datei, um den Ziel-AI-Agenten und den Ausgabepfad anzugeben. Beispiel:
[agents.copilot]
output = ".copilot/config.yml"
[agents.claude]
output = ".claude/config.json"
passieren (eine Rechnung oder Inspektion etc.) ruler.tomlSie können steuern, an welche Agenten die Regeln verteilt werden, und die entsprechenden Pfade der Konfigurationsdateien angeben.
3. die Anwendungsregeln
in Bewegung sein ruler apply Befehl, der die .ruler/ Die Regeln in diesem Verzeichnis werden an die Konfigurationsdatei des Ziel-KI-Agenten verteilt:
ruler apply
Wenn Sie einen bestimmten Proxy angeben müssen, können Sie die Option --agents Parameter:
ruler apply --agents copilot,claude
Ruler wird sie rekursiv lesen. .ruler/ Verzeichnis aller .md Datei, fügt den Inhalt zusammen und erstellt oder aktualisiert die Konfigurationsdatei für den entsprechenden Agenten.
4. dekonfigurieren
Wenn Sie zu dem Zustand vor der Anwendung der Regel zurückkehren müssen, können Sie die Funktion revert Befehl:
ruler revert
Dieser Befehl erzeugt eine Sicherungsdatei auf der Grundlage der Sicherungsdatei (.bak) Stellen Sie die ursprüngliche Konfigurationsdatei wieder her, oder löschen Sie die von Ruler erzeugte Datei.
5. die Verwendung der globalen Konfiguration
Wenn das Projekt nicht über eine .ruler/ Verzeichnis, verwendet der Ruler die globale Konfiguration (die sich standardmäßig in der Datei ~/.config/ruler). Erstellen Sie eine globale Konfiguration:
mkdir -p ~/.config/ruler
touch ~/.config/ruler/global_guidelines.md
existieren global_guidelines.md Schreiben Sie die Regeln in den ruler apply Die globale Konfiguration wird automatisch übernommen, wenn die
6. die Prüfung und Inbetriebnahme
Ruler bietet Test- und Debugging-Funktionen, um die korrekte Konfiguration sicherzustellen:
- Führen Sie den Test durch:
npm test - Testabdeckung anzeigen:
npm run test:coverage - Formatierungscode:
npm run format
7. die Ausweitung neuer Agenten
Ruler unterstützt die Erweiterung um neue KI-Agenten-Adapter. Entwickler können einen neuen KI-Agenten-Adapter zum src/agents/ Verzeichnis, um neuen Adaptercode hinzuzufügen, der der Struktur bestehender Adapter folgt (wie z.B. der copilot.ts). Aktualisieren Sie dann die ruler.toml und Befehlszeilenargumente, um die Unterstützung neuer Agenten zu aktivieren.
Featured Function Bedienung
- Automatische Verteilungsregeln: Herrscher von
ruler applyBefehl, der die.ruler/Der Inhalt der Markdown-Dateien im Verzeichnis wird an die Profile der angegebenen KI-Agenten verteilt, so dass die Einstellungen für jeden Agenten nicht mehr manuell angepasst werden müssen. - Unterstützt mehrere ProxysGitHub Copilot, Claude, Cursor, Aider, AugmentCode und andere Proxies werden derzeit unterstützt, und die neueste Version (v0.2.10) bietet Unterstützung für JetBrains Junie und AugmentCode.
- Rückgängig machen::
ruler revertBefehl macht alle von Ruler erzeugten Konfigurationsdateien rückgängig und eignet sich zum Aufräumen der Umgebung beim Experimentieren oder beim Projektwechsel. - globale Konfiguration: durch
$XDG_CONFIG_HOME/rulerUnterstützt projektübergreifend gemeinsame Regeln und reduziert so den Aufwand für doppelte Konfigurationen.
Anwendungsszenario
- Entwicklung der Teamarbeit
In mehrköpfigen Entwicklungsteams, in denen verschiedene Entwickler unterschiedliche KI-Agenten (z.B. Copilot und Claude) verwenden, bietet Ruler ein einheitliches Regelmanagement, das sicherstellt, dass alle Agenten dieselbe Kodierungsspezifikation befolgen und so Konflikte im Kodierungsstil reduziert. - Verwaltung von Open-Source-Projekten
Open-Source-Projekte müssen ihren Mitarbeitern klare Kodierungsspezifikationen zur Verfügung stellen.Ruler ermöglicht es den Projektbetreuern, Regeln in der.ruler/Verzeichnis, führen die Mitarbeiter einfachruler applyDer lokale KI-Agent kann automatisch konfiguriert werden. - Regeln für die projektübergreifende Wiederverwendung
Entwickler benötigen konsistente Kodierungsspezifikationen für mehrere Projekte.Die globale Konfigurationsfunktion von Ruler ermöglicht es Entwicklern~/.config/rulerDefinieren Sie allgemeine Regeln für die Wiederverwendung in verschiedenen Projekten. - Schnelles Experimentieren und Debugging
Wenn Sie verschiedene KI-Agenten oder Regelkonfigurationen ausprobieren, wird Ruler'srevertkann die Umgebung schnell bereinigt werden, was sich für Entwickler eignet, die neue Regeln testen oder den Agenten wechseln.
QA
- Welche KI-Codierungsagenten unterstützt Ruler?
Ruler unterstützt die Agenten GitHub Copilot, Claude, Cursor, Aider, OpenAI Codex CLI, Windsurf, Cline, Firebase, Gemini CLI, Junie und AugmentCode. Weitere Agenten können über Erweiterungen hinzugefügt werden. - Wie kann ich auf eine neue Version migrieren?
Ruler v0.2.0 und höher sind abwärtskompatibel. Bestehende.ruler/Katalog undruler.tomlDie Datei kann weiterhin verwendet werden. Neue Funktionen (z. B. detaillierte Protokollierung und Fehlerwarnungen) müssen über Befehlszeilenargumente aktiviert werden. - Wie lassen sich Probleme mit Regelanwendungen beheben?
in Bewegung seinruler applybeim Hinzufügen--verboseum das detaillierte Protokoll anzuzeigen. Es ist auch möglich, Folgendes auszuführennpm testPrüfen Sie die Integrität des Codes, oder verwenden Sie dienpm run test:coverageTestabdeckung anzeigen. - Wie füge ich neuen Agentensupport hinzu?
existierensrc/agents/Verzeichnis, um den Adaptercode für den neuen Agenten zu erstellen, wobei auf bestehende Adapter (wie z.B. dencopilot.ts). Aktualisierungenruler.tomlim Gesang antworten--agentsum den neuen Agenten zu aktivieren.
































