No description
  • Shell 99.5%
  • Makefile 0.5%
Find a file
dschlueter d8bfe5fc3e test: guard BEDIENUNGSANLEITUNG.md against drift
bash tests/test_install_doc.sh            # structure + live checks
bash tests/test_install_doc.sh --offline   # structure only, no network
make test-doc

Two layers:
  FAIL  — local, deterministic: code-fence balance, internal section
          references resolve, file-listing paths exist in repo, key tokens
          (npm pkg, NodeSource URL, repo URL) present, model slugs
          consistent between manual and profiles.example.yml.
  WARN  — online, flaky-tolerant: npm package resolves, NodeSource/nvm
          URLs reachable, OpenRouter slugs still in the public model list.
          A transient outage is a warning, not a failure.

Catches the failure classes that silently crept in before: a referenced
section number that no longer exists, a repo path renamed without updating
the manual, a stale npm package name, a renamed model slug.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-28 04:37:12 +02:00
bin fix: harden installer symlink logic and interactive sourcing (#1) 2026-06-28 03:49:13 +02:00
config docs: update env-based OpenRouter profile setup 2026-06-28 02:41:12 +02:00
lib fix: harden installer symlink logic and interactive sourcing (#1) 2026-06-28 03:49:13 +02:00
shell Initial Claude launcher profiles 2026-06-28 01:50:13 +02:00
tests test: guard BEDIENUNGSANLEITUNG.md against drift 2026-06-28 04:37:12 +02:00
.gitignore docs: update env-based OpenRouter profile setup 2026-06-28 02:41:12 +02:00
BEDIENUNGSANLEITUNG.md docs: Setup auf jungfräulichem Host + Warum USA+China parallel (#4) 2026-06-28 04:25:40 +02:00
Makefile test: guard BEDIENUNGSANLEITUNG.md against drift 2026-06-28 04:37:12 +02:00
README.md docs: update env-based OpenRouter profile setup 2026-06-28 02:41:12 +02:00

claude-launcher-profiles

Portable Claude Code launcher profiles for Anthropic Pro and OpenRouter models.

Ziel

Claude Code über einfache Profile starten:

  • claude-pro
  • claude-glm
  • claude-kimi
  • claude-free
  • claude-profile <name>

Die eigentliche Konfiguration der Modelle liegt in einer YAML-Datei. Der OpenRouter-API-Key kommt aus der Shell-Umgebung.

Voraussetzungen

  • claude installiert
  • funktionierendes Claude-Pro-Login für das pro-Profil
  • bash
  • yq zum Parsen der YAML-Datei

Beispiel Debian/Ubuntu:

sudo apt-get update
sudo apt-get install -y yq

Setup

git clone https://kitux.de/forgejo/dschlueter/claude-launcher-profiles.git
cd claude-launcher-profiles

cp config/profiles.example.yml config/profiles.yml
$EDITOR config/profiles.yml

chmod +x bin/claude-profile bin/install-claude-profiles lib/profiles.sh
./bin/install-claude-profiles
source ~/.bashrc

OpenRouter-Key setzen

Der OpenRouter-Key wird nicht in config/profiles.yml gespeichert. Stattdessen wird er über die Shell-Umgebung gesetzt.

Temporär für die aktuelle Session:

export OPENROUTER_API_KEY="sk-or-v1-..."

Dauerhaft in ~/.bashrc:

export OPENROUTER_API_KEY="sk-or-v1-..."
source ~/.bashrc

Nutzung

claude-pro
claude-glm
claude-kimi
claude-free

Oder generisch:

claude-profile pro
claude-profile glm
claude-profile kimi
claude-profile free

Konfiguration

Die Datei config/profiles.yml enthält nur noch:

  • den Startbefehl für Claude Code,
  • die OpenRouter-Base-URL,
  • die Profile,
  • die Modellnamen.

Beispiel:

defaults:
  claude_cmd: "claude"
  openrouter_base_url: "https://openrouter.ai/api"

profiles:
  pro:
    mode: "pro"

  glm:
    mode: "openrouter"
    model: "z-ai/glm-5.2"

  kimi:
    mode: "openrouter"
    model: "moonshotai/kimi-k2.7-code"

  free:
    mode: "openrouter"
    model: "openrouter/free"

Sicherheit

config/profiles.yml enthält lokale Einstellungen und bleibt unversioniert. Nur config/profiles.example.yml gehört ins Repository.

Keine echten API-Keys committen.