CLI installieren und Anmeldedaten konfigurieren

CodeMender ist ein autonomer KI-Agent für die Codesicherheit, der tiefgreifende Cybersicherheitslücken in Ihrer Codebasis scannt, überprüft und behebt. Bevor Sie CodeMender ausführen, laden Sie die Befehlszeile herunter und initialisieren Sie die Arbeitsbereichsoptionen.

Architektur und Sicherheitsmodell

CodeMender verwendet ein Local-First-Ausführungsmodell:

  • Gehostete Reasoning Engine: Agentenbasierte Argumentation, Bedrohungsmodellierung und Orchestrierungslogik werden sicher in Google Cloud der Gemini Enterprise Agent Platform ausgeführt.
  • Lokale Ausführungs-Befehlszeile: Quellcode verlässt Ihre Workstation oder Ihren CI/CD-Container nicht in großen Mengen. Das lokale cm-Befehlszeilentool führt Dateilesevorgänge, lokale Build-Prüfungen und Proof-of-Concept-Exploit-Überprüfungen (PoC) in Ihrer lokalen Sandbox aus. Dabei werden nur gezielte Code-Snippets und Tool-Ausführungsergebnisse über die Interactions API in der Gemini Enterprise Agent Platform an das Cloud-Back-End gesendet.

Umgebung einrichten

Laden Sie die Befehlszeile herunter und installieren Sie sie, konfigurieren Sie Ihre Google Cloud Anmeldedaten und initialisieren Sie Ihren Arbeitsbereich, um CodeMender zu verwenden.

CodeMender-Befehlszeile herunterladen und installieren

Die Binärdateien der CodeMender-Befehlszeile werden in Artifact Registry gehostet. Wählen Sie den Tab für Ihr Betriebssystem aus, um die Befehlszeile herunterzuladen und zu installieren.

Linux x86_64

So laden Sie die CodeMender-Befehlszeile für Linux (x86_64) herunter und installieren sie:

  1. Laden Sie das Paket mit einer der folgenden Methoden herunter:
    • gcloud CLI:Führen Sie den folgenden Befehl aus:
      gcloud artifacts generic download \
        --project=cmoc-prod \
        --location=us \
        --repository=codemender-cli-production \
        --package=cm \
        --version=stable \
        --name=cm-linux-amd64.zip \
        --destination=./
    • curl:Führen Sie den folgenden Befehl aus:
      curl -L -o cm-linux-amd64.zip "https://artifactregistry.googleapis.com/download/v1/projects/cmoc-prod/locations/us/repositories/codemender-cli-production/files/cm%3Astable%3Acm-linux-amd64.zip:download?alt=media"
  2. Installieren Sie die Befehlszeile:
    unzip cm-linux-amd64.zip
    chmod +x cm
    sudo mv cm /usr/local/bin/cm

Linux ARM64

So laden Sie die CodeMender-Befehlszeile für Linux (ARM64) herunter und installieren sie:

  1. Laden Sie das Paket mit einer der folgenden Methoden herunter:
    • gcloud CLI:Führen Sie den folgenden Befehl aus:
      gcloud artifacts generic download \
        --project=cmoc-prod \
        --location=us \
        --repository=codemender-cli-production \
        --package=cm \
        --version=stable \
        --name=cm-linux-arm64.zip \
        --destination=./
    • curl:Führen Sie den folgenden Befehl aus:
      curl -L -o cm-linux-arm64.zip "https://artifactregistry.googleapis.com/download/v1/projects/cmoc-prod/locations/us/repositories/codemender-cli-production/files/cm%3Astable%3Acm-linux-arm64.zip:download?alt=media"
  2. Installieren Sie die Befehlszeile:
    unzip cm-linux-arm64.zip
    chmod +x cm
    sudo mv cm /usr/local/bin/cm

macOS Intel

So laden Sie die CodeMender-Befehlszeile für macOS (Intel) herunter und installieren sie:

  1. Laden Sie das Paket mit einer der folgenden Methoden herunter:
    • gcloud CLI:Führen Sie den folgenden Befehl aus:
      gcloud artifacts generic download \
        --project=cmoc-prod \
        --location=us \
        --repository=codemender-cli-production \
        --package=cm \
        --version=stable \
        --name=cm-darwin-amd64.zip \
        --destination=./
    • curl:Führen Sie den folgenden Befehl aus:
      curl -L -o cm-darwin-amd64.zip "https://artifactregistry.googleapis.com/download/v1/projects/cmoc-prod/locations/us/repositories/codemender-cli-production/files/cm%3Astable%3Acm-darwin-amd64.zip:download?alt=media"
  2. Installieren Sie die Befehlszeile:
    unzip cm-darwin-amd64.zip
    chmod +x cm
    mv cm /usr/local/bin/cm

macOS Apple Silicon

So laden Sie die CodeMender-Befehlszeile für macOS (Apple Silicon) herunter und installieren sie:

  1. Laden Sie das Paket mit einer der folgenden Methoden herunter:
    • gcloud CLI:Führen Sie den folgenden Befehl aus:
      gcloud artifacts generic download \
        --project=cmoc-prod \
        --location=us \
        --repository=codemender-cli-production \
        --package=cm \
        --version=stable \
        --name=cm-darwin-arm64.zip \
        --destination=./
    • curl:Führen Sie den folgenden Befehl aus:
      curl -L -o cm-darwin-arm64.zip "https://artifactregistry.googleapis.com/download/v1/projects/cmoc-prod/locations/us/repositories/codemender-cli-production/files/cm%3Astable%3Acm-darwin-arm64.zip:download?alt=media"
  2. Installieren Sie die Befehlszeile:
    unzip cm-darwin-arm64.zip
    chmod +x cm
    mv cm /usr/local/bin/cm

Windows x86_64

So laden Sie die CodeMender-Befehlszeile für Windows (x86_64) herunter und installieren sie:

  1. Laden Sie das Paket mit einer der folgenden Methoden herunter:
    • gcloud CLI:Führen Sie den folgenden Befehl in PowerShell aus:
      gcloud artifacts generic download `
        --project=cmoc-prod `
        --location=us `
        --repository=codemender-cli-production `
        --package=cm `
        --version=stable `
        --name=cm-windows-amd64.zip `
        --destination=./
    • PowerShell:Führen Sie den folgenden Befehl aus:
      Invoke-WebRequest -Uri "https://artifactregistry.googleapis.com/download/v1/projects/cmoc-prod/locations/us/repositories/codemender-cli-production/files/cm%3Astable%3Acm-windows-amd64.zip:download?alt=media" -OutFile cm-windows-amd64.zip
  2. Installieren Sie die Befehlszeile:
    Expand-Archive -Path cm-windows-amd64.zip -DestinationPath ./
    # Move cm.exe to a permanent folder and add it to your system PATH (e.g. Environmental Variables)

Windows ARM64

So laden Sie die CodeMender-Befehlszeile für Windows (ARM64) herunter und installieren sie:

  1. Laden Sie das Paket mit einer der folgenden Methoden herunter:
    • gcloud CLI:Führen Sie den folgenden Befehl in PowerShell aus:
      gcloud artifacts generic download `
        --project=cmoc-prod `
        --location=us `
        --repository=codemender-cli-production `
        --package=cm `
        --version=stable `
        --name=cm-windows-arm64.zip `
        --destination=./
    • PowerShell:Führen Sie den folgenden Befehl aus:
      Invoke-WebRequest -Uri "https://artifactregistry.googleapis.com/download/v1/projects/cmoc-prod/locations/us/repositories/codemender-cli-production/files/cm%3Astable%3Acm-windows-arm64.zip:download?alt=media" -OutFile cm-windows-arm64.zip
  2. Installieren Sie die Befehlszeile:
    Expand-Archive -Path cm-windows-arm64.zip -DestinationPath ./
    # Move cm.exe to a permanent folder and add it to your system PATH (e.g. Environmental Variables)

Anmeldedaten konfigurieren Google Cloud

Da die CodeMender-Befehlszeile über die Interactions API mit der in der Cloud gehosteten Reasoning Engine interagiert, müssen Sie in Ihrer Umgebung Google Cloud Standardanmeldedaten für Anwendungen (Application Default Credentials, ADC) konfigurieren.

Führen Sie den folgenden Befehl aus und folgen Sie der Anmeldeaufforderung, um sich zu authentifizieren:

gcloud auth application-default login

CodeMender initialisieren und konfigurieren

Nach der Authentifizierung müssen Sie CodeMender in Ihrer lokalen Umgebung initialisieren. Durch die Initialisierung von CodeMender wird Ihr lokaler Arbeitsbereich vorbereitet, indem Dateien zur Statusverfolgung erstellt und Verbindungseinstellungen zur in der Cloud gehosteten Reasoning Engine eingerichtet werden.

Arbeitsbereich initialisieren

Führen Sie cm init im Stammverzeichnis Ihrer Codebasis aus, um lokale Dateien zur Statusverfolgung zu erstellen und Basiskonfigurationen einzurichten:

cm init

Verwenden Sie das Flag `--verify`, um die Verbindung zur in der Cloud gehosteten Reasoning Engine zu testen und die Arbeitsbereichseinstellungen zu überprüfen:

cm init --verify

Konfigurationsparameter (config.yaml)

CodeMender liest die Konfigurationseinstellungen aus ~/.codemender/config.yaml. Sie können die folgenden Abschnitte anpassen:

Konfiguration des Versionsverwaltungssystems (Version Control System, VCS)

Geben Sie unter vcs den Typ des Versionsverwaltungssystems Ihres Projekts an. CodeMender unterstützt Git-, Mercurial- oder benutzerdefinierte VCS-Konfigurationen:

Git-Repositories

vcs:
  type: "git"

Mercurial-Repositories

vcs:
  type: "mercurial"

Benutzerdefinierte Versionsverwaltungssysteme

Geben Sie benutzerdefinierte Befehlszuordnungen für nicht standardmäßige VCS-Tools an:

vcs:
  type: "custom"
  commands:
    status: "svn status"
    diff:   "svn diff"
    stage:  "echo 'no staging needed'"
    reset:  "svn revert -R ."

Befehl für Build- und Regressionstests

Definieren Sie den genauen Shell-Befehl, den CodeMender verwendet, um Ihr Projekt zu erstellen und Unit- und Regressionstests auszuführen:

build:
  command: "make build && make test"

Bestätigungen für die interaktive Ausführung

Konfigurieren Sie das Tool-Bestätigungsverhalten, um festzulegen, ob die Befehlszeile vor dem Ausführen lokaler Befehle oder dem Ändern von Dateien eine Bestätigung anfordert:

tools:
  confirm_execution: true