Konfiguration
Alles kann über das Einstellungsfenster konfiguriert werden — öffne es mit Vibes to Bucks: Cost Tracking & Billing Setup in der Cursor-Befehlsübersicht. Kein YAML-Editieren nötig.
1. Verbinde deine Abrechnungssoftware (Pro)
Unter Abrechnungssoftware wähle Moneybird oder Harvest.
Gib deinen API Token ein und klicke auf Verbindung testen. Sobald verbunden, werden die Dropdown-Menüs Administration und Benutzer automatisch aus deinem Konto befüllt. Wähle die richtige Administration und den Benutzer — Zeiteinträge werden unter diesem Benutzer erstellt.
Dein Token wird sicher im SecretStorage von VS Code gespeichert. Er wird nie in eine Konfigurationsdatei oder auf die Festplatte geschrieben.
Deinen Moneybird API Token erhalten
- Gehe in Moneybird zu Einstellungen (Zahnrad-Symbol, unten links)
- Klicke auf Externe und KI-Verbindungen
- Unter Externe Anwendungen klicke auf API-Token erstellen
- Gib dem Token einen Namen (z.B. Vibes to Bucks), bestätige und kopiere den Token
- Füge ihn in das API Token-Feld im Vibes to Bucks Einstellungsfenster ein
Deinen Harvest Token erhalten
- Gehe in Harvest zu Entwickler → Persönliche Zugriffstokens
- Klicke auf Neues persönliches Zugriffstoken erstellen, gib ihm einen Namen und kopiere den Token
- Du benötigst auch deine Kontonummer — sie wird auf derselben Seite neben deinem Kontonamen angezeigt
- Füge beides in das Vibes to Bucks Einstellungsfenster ein
2. Abrechnungsregeln hinzufügen
Abrechnungsregeln sagen der Erweiterung, welchem Kunden und Projekt die KI-Kosten zugeordnet werden sollen. Öffne das Einstellungsfenster und scrolle zu Abrechnungsregel hinzufügen.
Was möchtest du verfolgen?
- Repository — passt anhand des Git-Remotes. Nutze dies für die meisten Projekte. Die Erweiterung erkennt das Remote automatisch, wenn du einen Arbeitsbereich geöffnet hast.
- Ordner — passt anhand des Ordnerpfads. Nutze dies für Projekte ohne Git-Remote oder um einen lokalen Ordner mit einem bestimmten Branch eines Multiclient-Repos zu verknüpfen.
Regel-Felder
| Feld | Funktion |
|---|---|
| Kontakt | Der Kunde in Moneybird oder Harvest, dem diese Regel zugeordnet wird. Beginne zu tippen, um zu suchen. |
| Projekt | Das Projekt unter diesem Kunden. Beginne zu tippen, um zu suchen. |
| Stundensatz (EUR) | Dein Satz für diesen Kunden. Wird verwendet, um KI-Kosten in abrechenbare Stunden umzuwandeln. |
| Wie abrechenbare Zeit berechnen | KI-Kosten multiplizieren — wendet deinen Gewinnmultiplikator an, bevor in Stunden umgerechnet wird. Zum Nennwert durchreichen — gibt die Rohkosten an den Kunden weiter. |
| Kosten zu Gewinn Multiplikator | Nur sichtbar, wenn der Multiplikationsmodus ausgewählt ist. Standard ist 5 (jeder €1 KI-Kosten = €5 abgerechnet). |
| Wöchentliches Budgetlimit | Aktivieren, um maximale KI-Kosten pro Woche für diese Regel festzulegen. Die Erweiterung benachrichtigt dich bei 25%, 50%, 75%, 85%, 95% und wenn du das Limit überschreitest. |
| Abrechenbar | Standardmäßig aktiviert. Deaktiviere, um Kosten für diese Regel zu verfolgen, ohne einen Zeiteintrag zu erzeugen — nützlich für interne Projekte oder absorbierte Gemeinkosten. |
Klicke Regel speichern, wenn du fertig bist.
Mehrere Kunden in einem Repo
Wenn verschiedene Branches desselben Repos zu verschiedenen Kunden gehören, aktiviere Mehrere Kunden in diesem Repo und speichere. Die Regel zeigt dann ein Branch-Symbol in der Tabelle der Abrechnungsregeln — klicke darauf, um Branch-Regeln zu öffnen.
Jede Branch-Regel fügt ein Muster hinzu (exakter Branch-Name wie main, einzelnes Platzhalterzeichen wie client-a/* oder rekursiv wie feature/**) sowie eigenen Kontakt, Projekt, Satz, Abrechnungsmodus und Budgeteinstellungen.
Regeln werden von oben nach unten abgeglichen — der erste Treffer gewinnt.
3. Nicht zugewiesene Kosten
Der Abschnitt Nicht zugewiesene Kosten (auch erreichbar über Vibes to Bucks: Show Unassigned Costs) listet Repos mit verfolgten KI-Kosten auf, die noch keiner Abrechnungsregel zugeordnet sind. Klicke auf Zuweisen neben einem Repo, um das Formular zum Hinzufügen einer Abrechnungsregel mit dem vorausgefüllten Repository zu öffnen.
4. Einstellungen
| Einstellung | Funktion |
|---|---|
| Sprache | UI-Sprache der Erweiterung. 15 Sprachen verfügbar. |
| Alle (Minuten) nach neuen Kosten suchen | Wie oft die Erweiterung Cursor nach neuer Nutzung abfragt. Standard: 5. |
| Mit Abrechnungssoftware synchronisieren | Täglich — synchronisiert automatisch am Tagesende. Manuell — führe Vibes to Bucks: Sync Now aus der Befehlsübersicht aus, wenn du synchronisieren möchtest. |
| Fallback-Wechselkurs (USD → EUR) | Wird verwendet, wenn der Live-ECB-Kurs nicht verfügbar ist. Das Panel zeigt den aktuellen Live-Kurs und ermöglicht es dir, den neuesten mit einem Klick abzurufen. |
| Anzeigewährung | EUR oder USD. Beeinflusst, wie Kosten im Dashboard und in der Statusleiste angezeigt werden. |
Klicke Einstellungen speichern, nachdem du Änderungen vorgenommen hast.
5. KI-Zusammenfassung (Pro)
Beim Synchronisieren kann die Erweiterung aus deinen letzten Git-Commits mithilfe eines KI-Modells aussagekräftige Zeiteintragsbeschreibungen generieren.
| Feld | Funktion |
|---|---|
| KI-Anbieter | Anthropic oder OpenAI. |
| Modell | Wähle aus Voreinstellungen (z.B. Claude Haiku 4.5) oder gib eine benutzerdefinierte Modell-ID ein. |
| API-Schlüssel | Gib deinen Schlüssel ein und klicke auf Schlüssel speichern. Sicher im SecretStorage gespeichert — nie in Konfigurationsdateien geschrieben. |
Voraussetzungen
- Git muss lokal installiert sein. Die Erweiterung führt
git logaus, um Commit-Nachrichten für die KI-Zusammenfassung abzurufen. - SSH-Remote-Arbeitsbereiche: SSH-Schlüssel-basierte Authentifizierung (passwortlos) ist erforderlich. Git muss auf der Remote-Maschine installiert sein. Die Erweiterung führt automatisch
ssh <host> "git log ..."aus, wenn sie einen SSH-Arbeitsbereich erkennt.
Fortgeschritten: YAML-Referenz
Das Einstellungsfenster schreibt in ~/.vibes-to-bucks/config.yaml. Du kannst diese Datei direkt bearbeiten als Alternative — das Panel und YAML sind vollständig austauschbar.
Vollständiges Beispiel
destination: moneybird
moneybird:
administration_id: "123456789"
user_id: "987654321"
polling:
interval_minutes: 5
sync_schedule: daily
fx:
source: ecb
fallback_rate: 0.92
mappings:
# Single-client repo
- repo: github.com/acme/website
contact_id: "100"
billing:
mode: multiplier
project_id: "200"
hourly_rate: 120
multiplier: 5
budget:
max_ai_cost_per_week: 50
# Multi-client repo — different branches → different clients
- repo: github.com/org/platform
multiclient: true
branches:
- pattern: "client-a/*"
contact_id: "300"
billing:
mode: multiplier
project_id: "400"
hourly_rate: 100
multiplier: 5
- pattern: dev
contact_id: "600"
billing:
mode: passthrough
project_id: "700"
hourly_rate: 0
# Folder fallback
- folder: /home/user/experiments
contact_id: "800"
billing:
mode: passthrough
project_id: "900"
hourly_rate: 100
Remote-Normalisierung
Git-Remotes werden vor dem Abgleich normalisiert. Alle diese lösen sich zu github.com/acme/website auf:
[email protected]:acme/website.githttps://github.com/acme/website.gitssh://[email protected]/acme/website.git
Schreibe repo-Werte als host/org/repo — kein Protokoll, kein .git.
Moneybird-IDs finden
- Administrations-ID: sichtbar in der URL —
moneybird.com/{id}/... - Kontakt-ID: öffne einen Kontakt, die ID ist in der URL
- Projekt-ID: Einstellungen → Projekte → klicke auf ein Projekt → ID in der URL
- Benutzer-ID: Einstellungen → Benutzer → dein Benutzer → ID in der URL