An open API service indexing awesome lists of open source software.

https://github.com/getjared/scylla

simple chatgpt-cli
https://github.com/getjared/scylla

c chatgpt

Last synced: 7 days ago
JSON representation

simple chatgpt-cli

Awesome Lists containing this project

README

        

## scylla

**[ simple chatgpt-cli built in c ]**

[![License: Unlicense](https://img.shields.io/badge/License-Unlicense-pink.svg)](http://unlicense.org/)
[![Made with C](https://img.shields.io/badge/Made%20with-C-purple.svg)](https://en.wikipedia.org/wiki/C_(programming_language))

## ✧ features

- 🤖 gpt-3.5-turbo model support (gpt-4 coming soon™)
- 💬 interactive message sending and receiving
- 📝 terminal markdown rendering
- 🎨 colorful terminal output
- 🚀 minimal dependencies (just libcurl & json-c)
- 📦 conversation export in multiple formats

## ✧ preview

```ascii
┌─────────────────────────────────────────┐
│ you: what's the meaning of life? │
│ │
│ assistant: let me think about that... │
│ │
│ [assistant is typing...] │
└─────────────────────────────────────────┘
```

## ✧ requirements

- 🔧 gcc compiler
- 📚 libcurl library
- 📚 json-c library
- 🌐 working internet connection
- 🔑 openai api key

## ✧ installation

```bash
git clone https://github.com/getjared/scylla.git
cd scylla
make
sudo make install

# important: replace the api key in the code with your actual openai api key
```

## ✧ quick start guide

### launch
```bash
./scylla
```

### commands

| command | description |
|---------|-------------|
| `save` | save conversation in txt format |
| `export json` | export conversation in json format |
| `export md` | export conversation in markdown format |
| `quit` | exit the client |

## ✧ protips

- 📝 use markdown in your messages for better formatting
- 💾 export conversations regularly to avoid losing important chats
- 🔄 conversations are not persistent between sessions
- 🔒 keep your api key secure and never commit it to git

## ✧ export formats

### txt format
```
you: hello
assistant: hi! how can i help you today?
```

### json format
```json
{
"messages": [
{"role": "user", "content": "hello"},
{"role": "assistant", "content": "hi! how can i help you today?"}
]
}
```

### markdown format
```markdown
**you**: hello
**assistant**: hi! how can i help you today?
```

```ascii
╭─────────────────────────╮
│ made with ♥ by jared │
╰─────────────────────────╯
```