- Add
-delete
to the list of dangerous flags, eg.find . -delete
and similar. Add test as well - Tweak the dangerous and privileged flag display in interactive mode and use red text with colorama
- Update Python version requirement in README
- Improve verbosity behaviour by further specifying prompt and including an additional example
- Replace match statement with if/else to support older Python versions back to 3.7.1 (bounded by OpenAI python library)
- Remove newline characters being appended to the end of the command in print mode
- Add tests for print mode branch
- Add changes tracking file for tagged releases
- Add workflow to publish tagged releases to PyPI
- Add new print mode to output the command directly to stdout, complete with warnings to stderr for flagged commands
- Improve the README as well as the help prompt
- Add direct execution and copy mode to allow for usage in scripts etc. Due to the danger involved here, I added some somewhat stern warnings in the README and help prompts, as well as...
- New
dangerous
andprivileged
flags to try to cover most of the potential pain zones - think sudo rm -rf / and various permutations of deletions and privilege escalations. Will show to the user and refuses to run direct execution mode - A test suite! Covers most control flow branches, not totally comprehensive yet but I'm verifying execution and copy behaviour in direct and interactive mode, as well as flag parsing as described above
- Github workflow to insist on black linting as well as the passage of the above tests
- Overall misc. improvements to the main execution loop, arguments etc.
- Add a verbosity flag
-v | --verbose
, credit to user chris37879 on reddit for the idea! This will encourage the completion to include full verbose flags when available, ie--help
instead of-h
. - Add a shell flag
-s | --shell
and automatic shell detection, to hopefully account for some of the nuance between how ie. bash and zsh or fish handle environment variables, etc. - Also add an optional API key flag
-K | --api-key
in case people don't want to use the environment variable. Will still default to checking for that env var, and will now throw an exception if nothing is found. - Fix bug to ensure arguments are actually being used in the API call!
- Fix a potential issue where if duplicate commands are returned in a staggered order, the command cycling may select duplicates instead of the unique values
- Documentation and metadata tweaks
- Upgrades the default model to
davinci-003
for better performance - Adds a new copy to clipboard command
- Enhances the README and help text with more details on commands
- Very slight tweak to prompt
- Initial release!