summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorLines
2023-10-26refactor: improve code quanitysigoden-49/+21
remove tokio::runtime::Runtime from client
2023-10-26feat: support multi bots and custom url (#150)sigoden-324/+715
2023-10-24feat: suppport vi keybindings (#148)sigoden-7/+25
2023-10-24feat: use backslash at end of line for multiline text (#147)sigoden-57/+2
BREAKING CHANGE: use backslash at end of line for multiline text ``` 〉.set dry_run true 〉abc \ def \ ijk >>> The following message consumes 12 tokens. abc def ijk ``` Deprecate old {}/() multi-line editing
2023-10-17chore: update depssigoden-3/+3
2023-07-10fix: grammar/wording corrections (#135)Jackson Goode-4/+4
2023-07-10fix: minor code cleanup and pedantic lints (#134)Anthony Rubick-210/+214
2023-06-19feat: add new model gpt-3.5-turbo-16k (#126)sigoden-1/+2
2023-05-04feat: add `.copy` command (#119)sigoden-18/+21
2023-05-04feat: add `config.auto_copy` (#102)shane s-0/+19
* added config option to copy all ChatGPT output to clipboard * formatted with * updates --------- Co-authored-by: sigoden <sigoden@gmail.com>
2023-05-04fix: config file with strict perms (#118)sigoden-0/+6
2023-05-04chore: trivial updatessigoden-2/+2
2023-05-04feat: support backeted paste (#117)sigoden-3/+6
2023-04-26chore: fix typosigoden-1/+1
2023-03-22fix: mask api_key/organization_id in info text (#93)sigoden-2/+25
2023-03-20feat: add `--dry-run` (#83)sigoden-3/+6
2023-03-20feat: check token usage in dry_run mode (#82)sigoden-11/+17
2023-03-20feat: add `--info` (#79)sigoden-0/+8
2023-03-17feat: add `config.organization_id` (#77)sigoden-14/+20
2023-03-16feat: add `config.connect_timeout` (#76)sigoden-2/+11
2023-03-16feat: support multiple models (#71)sigoden-24/+80
2023-03-13chore: optimzie role argssigoden-6/+9
2023-03-13feat: support role args (#69)sigoden-8/+47
* feat: support role args We can use role args to pass some additional arguments to the prompt. ``` - name: convert:json:yaml prompt: convert __ARG1__ below to __ARG2__ ``` `:json:yaml` is `role args`. It has two args: - arg1 `json`, it will replace __ARG1__ in prompt - arg2 `yaml`, it will replace __ARG2__ in prompt ``` 〉.role convert:json:yaml name: convert:json:yaml prompt: convert json below to yaml temperature: null 〉.role convert:yaml:json name: convert:yaml:json prompt: convert yaml below to json temperature: null ``` different role args, will generate different prompts. * small updates
2023-03-12feat: support HTTPS_PROXY and ALL_PROXY (#68)sigoden-1/+12
2023-03-12chore: optimize readline multilinesigoden-4/+66
2023-03-11feat: add support for NO_COLOR (#67)sigoden-80/+204
2023-03-11feat: support light theme (#65)sigoden-24/+79
There are two ways to enable the light theme: - add `light_theme: true` to config.yaml - use `AICHAT_LIGHT_THEME=true` env var
2023-03-11feat: support more env vars (#63)sigoden-31/+97
- AICHAT_CONFIG_DIR: sepecify the configuration directory - AICHAT_ROLES_FILE: set the `roles.yaml` file path - AICHAT_API_KEY: set the api key
2023-03-11feat: provide `--prompt` for adding a prompt from cli (#62)sigoden-2/+8
2023-03-10chore: update `.help` output textsigoden-2/+6
2023-03-10feat: type `{` `[` `(` to enter multi-line editing mode (#58)sigoden-89/+81
Abandon `.editor` command, it's too complicated.
2023-03-10chore: recovery cursor in case of stream abortsigoden-3/+8
2023-03-10chore: improve code quality, omit head 2 newlines in handler but in not clientsigoden-8/+4
2023-03-10chore: opitmize code, move MAX_TOKENS related to config/message.rssigoden-9/+15
2023-03-10fix: forbid .clear role in middle of conversationsigoden-1/+16
2023-03-10chore: improve code quality, split rep/prompt.rs from repl/init.rssigoden-62/+72
2023-03-10fix: cli specify role is not applied when conversation_first set true (#57)sigoden-3/+8
close #56
2023-03-09feat: add config.conversation_first (#55)sigoden-15/+32
If set true, start a conversation immediately upon repl.
2023-03-09refactor: no need to confirm conversation when token used outsigoden-6/+8
2023-03-09fix: csharp and php do not render correctlysigoden-3/+29
2023-03-09refactor: optimize counting tokens (#53)sigoden-58/+42
2023-03-09feat: support two types of role prompts (#52)sigoden-103/+192
1. embeded prompt use __INPUT__ placeholder will generate one user message when send to gpt ``` - name: shell prompt: > I want you to act as a linux shell expert. Q: How to unzip a file A: unzip file.zip Q: __INPUT__ A: ``` 2. system prompt no __INPUT__ placeholder will generate on system message and one user message when send to gpt ``` - name: shell prompt: | I want you to act as a linux shell expert. I want you to answer only with bash code. Do not write explanations. ```
2023-03-09refactor: trivial updatessigoden-9/+3
- change prompt's temp role name - questionnaire of 'save chat messages' default set true - `.info` do not show role name
2023-03-09feat: add remain tokens indicator and max tokens guard (#50)sigoden-42/+667
2023-03-09fix: abort by ctrlc unexpectedly prints error message (#49)sigoden-4/+15
2023-03-09feat: support conversation (#48)sigoden-56/+200
2023-03-09feat: add role info to readline indicator (#47)sigoden-16/+57
``` coder〉 ```
2023-03-09refactor: imports order and groupsigoden-27/+24
2023-03-09refactor: replace Arc<Refcell<Config>> with Arc<Mutex<Config>> (#46)sigoden-26/+27
2023-03-09refactor: extra spaces are allowed around repl commandsigoden-4/+6