Ai-Punk ist ein quelloffener KI-gestützter Softwareentwicklungsassistent, der auf GitHub gehostet und vom Entwickler Netsky entwickelt wird. Er basiert auf dem LangChain ReAct-Modell und kombiniert moderne KI-Modelle, um Benutzern bei der Automatisierung von Programmieraufgaben zu helfen. Das Hauptmerkmal von Ai-Punk ist ein vollständig transparenter Denkprozess, der es Benutzern ermöglicht, jeden Schritt der KI in Echtzeit zu verfolgen. Das Projekt ist modular aufgebaut und bietet Funktionen wie Dateimanipulation, Codesuche, Terminalbefehle usw. und unterstützt mehrsprachige Interaktionen (Englisch und Russisch).Ai-Punk legt großen Wert auf Sicherheit und beschränkt alle Operationen auf ein bestimmtes Arbeitsverzeichnis, wodurch es sich für Entwickler, Programmierer und Benutzer eignet, die Aufgaben automatisieren müssen. Der Code ist öffentlich, die Gemeinschaft kann sich frei einbringen, das Projekt ist aktiv und wird häufig aktualisiert.
Funktionsliste
- Völlig transparenter DenkprozessAnzeige der KI-Schritte in Echtzeit, um dem Benutzer zu helfen, die Logik des Vorgangs zu verstehen.
- Autonome AufgabenstellungKI kann selbständig komplexe Programmieraufgaben planen und ausführen.
- Modulare ArchitekturDer Code ist klar strukturiert, mit separaten Funktionsmodulen für einfache Wartung und Erweiterung.
- Sicherer ArbeitsbereichAlle Operationen sind auf vom Benutzer ausgewählte Verzeichnisse beschränkt, um die Datensicherheit zu gewährleisten.
- Reichhaltiger WerkzeugsatzUnterstützung für Dateimanipulation, Suche, Terminalbefehle und Codebearbeitung.
- Schöne TerminalschnittstelleBietet eine intuitive Terminal-Benutzeroberfläche, die den gesamten Prozess anzeigt.
- Unterstützung mehrerer SprachenAutomatische Erkennung der Sprache des Benutzers und Unterstützung von Englisch und Russisch.
- Intelligente DokumentensucheUnterstützt semantische Suche und Fuzzy Matching, um die Effizienz der Dokumentensuche zu verbessern.
- Leistungsstarke IntegrationLäuft schnell mit den LangChain-Optimierungswerkzeugen.
Hilfe verwenden
Einbauverfahren
Um Ai-Punk zu verwenden, müssen Sie den Code aus dem GitHub-Repository herunterladen und die Laufzeitumgebung konfigurieren. Hier sind die detaillierten Schritte:
- Code klonen oder herunterladen
Interviewshttps://github.com/netsky-devel/Ai-Punk
Klicken Sie auf die Schaltfläche "Code" und wählen Sie "ZIP herunterladen", um den Quellcode herunterzuladen, oder klonen Sie ihn mit dem Befehl Git:git clone https://github.com/netsky-devel/Ai-Punk.git
Wechseln Sie nach dem Klonen in das Projektverzeichnis:
cd Ai-Punk
- Installation von Abhängigkeiten
Ai-Punk ist auf Python 3.8+ und bestimmte Bibliotheken angewiesen. Stellen Sie sicher, dass Python installiert ist und führen Sie dann den folgenden Befehl aus, um die Abhängigkeiten zu installieren:pip install -r requirements.txt
Zu den Abhängigkeiten gehören LangChain (für die Integration des KI-Modells), Rich (für die Verschönerung der Endpunktschnittstelle) und weitere, wie in der
requirements.txt
. - Konfigurieren von AI-Dienstanbietern
Ai-Punk benötigt eine Verbindung zu einem KI-Dienst (wie OpenAI, Google oder Anthropic). Starten Sie die Hauptanwendung und wählen Sie die Konfigurationsoptionen:python main.py
Wählen Sie "1 - Setup AI Provider" in der Schnittstelle und geben Sie Ihren API-Schlüssel ein. Der Schlüssel sollte von der Website des KI-Dienstanbieters bezogen werden. Die Konfigurationsinformationen werden in der Datei
config/models.py
oder in einer Umgebungsvariablen. - Auswählen eines Arbeitsverzeichnisses
Nachdem Sie das Programm gestartet haben, wählen Sie "2 - Arbeitsverzeichnis wählen", um das Arbeitsverzeichnis für die Operation anzugeben. Ai-Punk stellt sicher, dass alle Dateioperationen aus Sicherheitsgründen auf dieses Verzeichnis beschränkt sind. - Initialisierung des AI-Agenten
Wählen Sie "3 - Agent initialisieren", um den AI-Agenten zu initialisieren. Das System lädt die Konfiguration und bereitet das Toolset vor. - Interaktion starten
Wählen Sie "4 - Chat mit Agent starten", um den interaktiven Modus zu aktivieren. Der Benutzer kann Aufgabenbefehle eingeben, und die KI wird den Denkprozess automatisch ausführen und anzeigen.
Hauptfunktionen
Das Hauptmerkmal von Ai-Punk ist die Automatisierung von Programmieraufgaben, die im Folgenden näher erläutert wird:
- Völlig transparenter Denkprozess
Was Ai-Punk einzigartig macht, ist die Echtzeitanzeige der Denkschritte der KI. Wenn ein Benutzer zum Beispiel die Struktur eines Projekts analysieren möchte, zeigt das Terminal diese an:╭─ 🧠 Agent Thinking (Step 1) ───────────────────────────────╮ │ 需要先分析项目结构,了解代码库内容。开始列出目录文件。│ ╰──────────────────────────────────────────────────────────╯
Die KI ruft dann
list_directory
Tool, das den Inhalt des Katalogs auflistet und die Ergebnisse erläutert. Der Benutzer kann über die Terminalschnittstelle jeden Schritt des Vorgangs klar erkennen. - Autonome Aufgabenstellung
Die KI kann komplexe Aufgaben selbständig ausführen. Wenn der Benutzer zum Beispiel "add error handling to main.py" eingibt, wird die KI dies tun:- abrufen.
main.py
Datei (unter Verwendung derread_file
(Werkzeuge). - Analysieren Sie die Struktur des Codes und ermitteln Sie, wo eine Fehlerbehandlung hinzugefügt werden muss.
- ausnutzen
edit_file
Werkzeug fügt eine try-catch-Anweisung ein. - Zeigt den geänderten Code an und erklärt die Änderungslogik.
- abrufen.
- Intelligente Dokumentensuche
Ai-Punk bietet semantische Suche und Fuzzy Matching. Der Nutzer tippt "alle Profile finden" und die KI ruft diefile_search
das das Verzeichnis durchsucht und relevante Dateien zurückgibt (z. B.config.json
). Die Suche unterstützt reguläre Ausdrücke und semantische Analysen. Beispiel:python main.py --search "config.*\.json"
Die Ergebnisse werden nach Relevanz sortiert und zeigen den Dateipfad und eine Zusammenfassung des Inhalts an.
- Dateioperation
Ai-Punk unterstützt eine breite Palette von Dateioperationen:- Auflistung der Kataloge: Lauf
list_directory
Werkzeug, das Verzeichnisinhalte und Dateidetails anzeigt. - Datei lesen: Verwendung
read_file
unterstützt die Syntaxhervorhebung von Code. - Datei bearbeiten: durch
edit_file
unterstützt das Suchen und Ersetzen sowie die Stapelverarbeitung. - Datei löschen: Verwendung
delete_file
Das System gewährleistet eine sichere Löschung und automatische Backups.
Zum Beispiel das Löschen von alten Sicherungsdateien:
python main.py --delete "backup_*.bak"
Die KI validiert die Datei und fordert den Benutzer zur Bestätigung auf.
- Auflistung der Kataloge: Lauf
- Ausführung von Terminalbefehlen
Die Benutzer können auf dierun_terminal
Werkzeug zur Ausführung von Terminalbefehlen. Beispiel:python main.py --terminal "git status"
Die Befehle werden in einer kontrollierten Umgebung ausgeführt, um eine versehentliche Bedienung zu verhindern.
Featured Function Bedienung
- Schöne Terminalschnittstelle
Ai-Punk verwendet die Rich-Bibliothek, um eine intuitive Terminal-Oberfläche zu erstellen, die Argumentationsprozesse, Operationsergebnisse und Fehlermeldungen anzeigt. Die Schnittstelle unterstützt farbliche Hervorhebung und strukturierte Ausgabe. Wenn Sie beispielsweise eine Dateisuche durchführen, werden die Ergebnisse in einer Tabelle mit Dateinamen, Pfad und Relevanzwert angezeigt. - Unterstützung mehrerer Sprachen
Ai-Punk erkennt automatisch die Sprache der Benutzereingabe und unterstützt sowohl Englisch als auch Russisch. Wenn der Benutzer zum Beispiel "создай новый файл config.json" eingibt, antwortet die KI auf Russisch und erstellt die Datei:python main.py --create "config.json"
Die Sprache wird in der Datei
src/localization/
Katalogverwaltung, Unterstützung für die Erweiterung um weitere Sprachen. - Sicherer Arbeitsbereich
Alle Operationen sind auf das vom Benutzer gewählte Arbeitsverzeichnis beschränkt. Das AI verwendet diesrc/workspace/manager.py
Führen Sie eine Pfadüberprüfung durch, um sicherzustellen, dass nicht auf externe Dateien zugegriffen wird. Versuchen Sie zum Beispiel, auf die Datei../sensitive.txt
Es wird eine Fehlermeldung ausgelöst.
caveat
- AbhängigkeitsüberprüfungVergewissern Sie sich vor der Ausführung, dass alle Abhängigkeiten installiert sind.
requirements.txt
Vollständig. - API-KonfigurationEin nicht konfigurierter API-Schlüssel führt dazu, dass der Lauf fehlschlägt. Siehe die
env.example
Setzen von Umgebungsvariablen. - FehlererkennungWenn ein Laufzeitfehler gemeldet wird, überprüfen Sie die Terminalausgabe auf detaillierte Fehlermeldungen, oder überprüfen Sie die
logs/
Protokolldatei in dem Verzeichnis. - Code aktualisieren: Regelmäßiger Betrieb
git pull
Holen Sie sich den neuesten Code und bleiben Sie auf dem Laufenden mit den offiziellen Repositories.
Anwendungsszenario
- Analyse der Codebasis
Wenn Entwickler die Struktur eines großen Projekts schnell verstehen müssen, scannt Ai-Punk automatisch das Verzeichnis und erstellt einen Bericht über die Dateistruktur, der sich ideal für die Übernahme neuer Projekte oder Code-Reviews eignet. - Automatisierte Codeänderungen
Wenn Programmierer Fehlerbehandlung hinzufügen oder Code in großen Mengen umgestalten müssen, bearbeitet Ai-Punk schnell mehrere Dateien, fügt Standard-Codeausschnitte ein und spart Zeit bei manuellen Vorgängen. - Dokumentenverwaltung und -bereinigung
Wenn Entwicklungsteams alte Sicherungsdateien bereinigen oder Projektverzeichnisse organisieren müssen, erledigt Ai-Punks Tool zur sicheren Dateimanipulation diese Aufgabe effizient. - Unterstützung für die Entwicklung in mehreren Sprachen
Wenn multinationale Teams auf Englisch oder Russisch interagieren, passt Ai-Punk die Sprache automatisch an, um eine einheitliche Entwicklungserfahrung zu gewährleisten. - Lernen und Fehlersuche
Programmieranfänger können lernen, wie KI Probleme durch einen transparenten Denkprozess analysiert und löst, der sich für Lernszenarien eignet.
QA
- Welche KI-Modelle werden von Ai-Punk unterstützt?
Die Unterstützung für Modelle von OpenAI, Google und Anthropic wird in dersrc/config/models.py
Eingestellt. - Wie kann ich einen sicheren Betrieb gewährleisten?
Ai-Punk beschränkt alle Operationen auf ausgewählte Verzeichnisse und verwendet eine relative Pfadüberprüfung, um den Zugriff auf externe Dateien zu verhindern. Alle Dateioperationen werden protokolliert. - Wie kann ich die neuen Funktionen erweitern?
Fork-Repository, in dersrc/tools/
Neues Werkzeugmodul hinzufügen, aktualisierensrc/agent/wrappers/factory.py
und reichen dann den Pull Request ein. - Wie sieht es mit der Langsamkeit aus?
Überprüfen Sie die Netzwerkkonnektivität (AI-API-Aufrufe erfordern ein stabiles Netzwerk) und stellen Sie sicher, dass optimierte Abhängigkeiten (wie die neueste Version von LangChain) installiert sind. - Wie kann ich die Sprache wechseln?
Ai-Punk erkennt die Eingabesprache automatisch, so dass eine manuelle Umstellung nicht erforderlich ist. Die Sprachdatei ist im Verzeichnissrc/localization/messages/
Mittleres Management.