Skip to content

riccardogiuriola/vecs-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

vecs-cli

vecs-cli is a lightweight, synchronous Command Line Interface (CLI) client written in C for the VECS (Vector Semantic Cache) server.

It acts as a REPL (Read-Eval-Print Loop) tool, allowing developers to interact with the VECS server using human-readable commands, handling the binary RESP (Redis Serialization Protocol) encoding and decoding transparently.

πŸš€ Features

  • REPL Interface: Interactive shell to send commands to the server.
  • Smart Parsing: Handles quoted strings automatically (e.g., "Hello World" is treated as a single argument), so you don't need to manually calculate byte lengths or hex codes.
  • RESP Protocol: Native implementation of the serialization protocol used by VECS.
  • Lightweight: Zero external dependencies (uses standard C libraries).

πŸ“‚ Project Structure

vecs-cli/
β”œβ”€β”€ include/
β”‚   └── cli.h        # Shared header definitions
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ main.c       # Main entry point and loop
β”‚   β”œβ”€β”€ network.c    # TCP socket connection handling
β”‚   β”œβ”€β”€ parser.c     # Command tokenizer (handles quotes)
β”‚   └── resp.c       # RESP protocol Encoder/Decoder
β”œβ”€β”€ obj/             # Compiled object files (created during build)
└── Makefile         # Build configuration

About

CLI tool for communicating with VECS protocol

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors