This commit is contained in:
Juan Carlos Graells Pérez 2025-12-30 15:49:42 +07:00 committed by GitHub
commit 461c9de762
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 93 additions and 0 deletions

30
plugins/jules/README.md Normal file
View file

@ -0,0 +1,30 @@
# Jules
Zsh autocompletion for the `jules` command-line interface.
## Installation
Add `jules` to the plugins list in your `.zshrc`:
```zsh
plugins=(... jules)
Reload your shell:
source ~/.zshrc
```
Features:
- Command and subcommand completion
- Flags and options completio
- Support for remote command
Requirements:
- Zsh
- Oh My Zs
- Jules CLI available in $PATH (download on https://jules.google/docs/cli/reference)
Maintainer
JuanCaarPapers
https://github.com/JuanCaarPapers

59
plugins/jules/_jules Normal file
View file

@ -0,0 +1,59 @@
#compdef jules
_jules() {
local line
_arguments -C \
"1: :->command" \
"*::arg:->args"
case $state in
command)
local -a commands
commands=(
'login:Sign in to Jules with your Google account'
'logout:Sign out of the current session'
'remote:Manage repositories and remote sessions'
'version:Show the installed version of Jules'
'help:Show general help or help for a specific command'
'completion:Generate shell autocompletion scripts'
)
_describe -t commands 'jules command' commands
;;
args)
case $words[1] in
remote)
_arguments \
"1: :->remote_cmd" \
"*::arg:->remote_args"
case $state in
remote_cmd)
local -a remote_commands
remote_commands=(
'list:List connected repositories or active sessions'
'new:Start a new Jules session in a repository'
'pull:Download the results of a session'
)
_describe -t remote_commands 'remote command' remote_commands
;;
remote_args)
_arguments \
'--repo[Specify the repository (e.g. user/repo)]:repo:_files' \
'--session[Session name or ID]:session:' \
'--parallel[Number of parallel sessions]:count:' \
'--theme[Interface theme (light/dark)]:theme:(light dark)'
;;
esac
;;
*)
_arguments \
'(-h --help)'{-h,--help}'[Show help]' \
'--theme[Set the visual theme]:theme:(light dark)'
;;
esac
;;
esac
}
_jules "$@"

View file

@ -0,0 +1,4 @@
# Jules Oh My Zsh plugin
# Provides Zsh completion for the jules CLI
fpath+=(${0:A:h})