Une interface shell en langage naturel pour les systèmes * nix.
Orphic est un outil CLI qui utilise GPT pour traduire des tâches complexes en commandes shell à exécuter sur le système. Il excelle dans les tâches relativement simples mais qui nécessitent des commandes complexes et obscures.
$ orphic delete all installers or tars from ~/Downloads that are more than a week old
find ~/Downloads -name '*.tar.*' -mtime +7 -delete; find ~/Downloads -name '*.dmg' -mtime +7 -delete
Execute? [Y/n] Y
Remarque : Orphic est par défaut en mode sans échec et n'exécutera pas automatiquement les commandes sans confirmation, sauf si le mode non sécurisé est spécifié.
cargo install orphic
OPENAI_API_KEY
soit définie. Vous pouvez en générer un ici.Orphic est conçu pour être utilisé comme vous utiliseriez n’importe quel autre outil CLI.
$ orphic sort ~/Downloads into folders based on media type
$ orphic how strong is my network connection
$ orphic what version kernel am i running
$ orphic show me the name and size of all files larger than 8MB in ~/Downloads/
$ orphic <do task that would otherwise require complex commands that you don't know off the top of your head>
-u
ou --unsafe
exécutera les commandes sans vérification de l'utilisateur.
-4
ou --gpt4
tentera d'utiliser GPT-4 au lieu de GPT-3.5-Turbo. Notez que cela ne fonctionnera que si votre compte OpenAI a accès au modèle.
-i
ou --interpret
décrira le résultat de la tâche en langage naturel (notez que cela est généralement très lent).
$ orphic -u -i how much disk space is available
You have 16GB available out of a total of 113GB on your main hard
drive, which is mounted on the root directory.
Other partitions and file systems are also listed with their
respective usage percentages and mount points.
-d
ou --debug
affichera le texte GPT brut avec la sortie normale, même en mode non sécurisé.
$ orphic -u -d count the lines of rust code in this directory excluding /target/.
{"command": "find . -name target -prune -o -name '*.rs' -type f -print0 | xargs -0 wc -l"}
61 ./src/prompts.rs
219 ./src/main.rs
280 total
-r
ou --repl
démarrera Orphic dans un environnement REPL.
$ orphic -u -r
orphic> when did i last login
wtmp begins Sat Mar 18 14:55
orphic> quit
$
Parfois, Orphic fonctionne. Parfois non. GPT est incohérent et les invites que j'utilise laissent beaucoup à désirer. Les résultats semblent meilleurs si vous formatez votre tâche sous forme de commande plutôt que de question (« répertoriez les ports actuellement ouverts » au lieu de « quels ports sont actuellement ouverts »). Une erreur qui survient souvent est que GPT essaiera d'utiliser des commandes ou des packages pour un système d'exploitation/distribution différent, ou essaiera d'utiliser des outils que vous n'avez pas actuellement installés. Une solution rapide consiste à spécifier votre système d'exploitation si vous pensez que la tâche nécessitera des outils spécifiques au système d'exploitation, mais je travaille à rendre Orphic plus conscient des commandes qui sont à sa disposition et de celles qui ne le sont pas.
Les demandes de tirage sont les bienvenues. Si vous utilisez Orphic et obtenez un résultat bon/intéressant, envoyez-le-moi. De même, si vous obtenez un très mauvais résultat, veuillez également me l'envoyer ou ouvrir un ticket. Ce système est très expérimental et j'essaie toujours de comprendre ce qui fonctionne et ce qui ne fonctionne pas en matière d'invites et de configurations.
MIT
Copyright (c) Will Savage, 2023