lmcli is a (Large) Language Model CLI
Go to file
Matt Low 8780856854 Set config defaults using a "default" struct tag
Add new SetStructDefaults function to handle the "defaults" struct tag.

Only works on struct fields which are pointers (in order to be able to
distinguish between not set (nil) and zero values). So, the Config
struct has been updated to use pointer fields and we now need to
dereference those pointers to use them.
2023-11-19 04:37:14 +00:00
pkg/cli Set config defaults using a "default" struct tag 2023-11-19 04:37:14 +00:00
.gitignore Update .gitignore 2023-11-04 13:35:23 -06:00
README.md Removed blank line 2023-11-14 17:04:44 +00:00
go.mod Alter format and add colouring to user/role message headings 2023-11-18 16:16:46 +00:00
go.sum Alter format and add colouring to user/role message headings 2023-11-18 16:16:46 +00:00
main.go Minor refactor 2023-11-14 17:04:12 +00:00

README.md

lmcli

lmcli is a (Large) Language Model CLI.

Current features:

  • Perform one-shot prompts with lmcli prompt <message>
  • Manage persistent conversations with the new, reply, view, and rm sub-commands.

Planned features:

  • Ask questions about content received on stdin
  • "functions" to allow reading (and possibly writing) to local files

Maybe features:

  • Natural language image generation, iterative editing

Install

$ go install git.mlow.ca/mlow/lmcli@latest

Usage

Invoke lmcli at least once:

$ lmcli help

Edit ~/.config/lmcli/config.yaml and set openai.apiKey to your API key.

Refer back to the output of lmcli help for usage.

Enjoy!