Una interfaz de shell en lenguaje natural para sistemas *nix.
Orphic es una herramienta CLI que utiliza GPT para traducir tareas complejas en comandos de shell que se ejecutarán en el sistema. Sobresale en tareas que son relativamente sencillas pero que requieren comandos complejos y oscuros para ejecutarse.
$ 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
Nota: Orphic utiliza de forma predeterminada el modo seguro y no ejecutará comandos automáticamente sin confirmación a menos que se especifique el modo inseguro.
cargo install orphic
OPENAI_API_KEY
. Puedes generar uno aquí.Orphic está diseñado para usarse como lo haría con cualquier otra herramienta 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
o --unsafe
ejecutarán comandos sin verificación del usuario.
-4
o --gpt4
intentarán utilizar GPT-4 en lugar de GPT-3.5-Turbo. Tenga en cuenta que esto sólo funcionará si su cuenta OpenAI tiene acceso al modelo.
-i
o --interpret
describirán el resultado de la tarea en lenguaje natural (tenga en cuenta que esto generalmente es muy lento).
$ 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
o --debug
mostrará el texto GPT sin formato junto con la salida normal, incluso en modo inseguro.
$ 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
o --repl
iniciarán Orphic en un entorno REPL.
$ orphic -u -r
orphic> when did i last login
wtmp begins Sat Mar 18 14:55
orphic> quit
$
A veces lo órfico funciona. A veces no es así. GPT es inconsistente y las indicaciones que estoy usando dejan mucho que desear. Los resultados parecen ser mejores si formatea su tarea como un comando en lugar de una pregunta ("enumere los puertos abiertos actualmente" en lugar de "qué puertos están abiertos actualmente"). Un error que surge a menudo es que GPT intentará utilizar comandos o paquetes para un sistema operativo/distribución diferente, o intentará utilizar herramientas que no tiene instaladas actualmente. Una solución rápida es especificar su sistema operativo si cree que la tarea requerirá herramientas específicas del sistema operativo, pero estoy trabajando para que Orphic sea más consciente de qué comandos están a su disposición y cuáles no.
Se aceptan solicitudes de extracción. Si usa Orphic y obtiene un resultado bueno/interesante, envíemelo. Del mismo modo, si obtiene un resultado realmente malo, envíemelo también o abra un problema. Este sistema es muy experimental y todavía estoy tratando de descubrir qué funciona y qué no en lo que respecta a indicaciones y configuraciones.
MIT
Copyright (c) Will Savage, 2023