Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Xyan

A personal local coding agent built as a Rust 2024 workspace. The first usable path is xyan exec, backed by llama-server from llama.cpp running on http://localhost:8080.

Workspace

  • xyan-cli in crates/cli: command-line entrypoint and launch modes.
  • xyan-core in crates/core: conversation state and agent loop.
  • xyan-llm in crates/llm: provider trait, model events, and llama.cpp streaming adapter.
  • xyan-tools in crates/tools: read-only and approval-gated tool primitives.
  • xyan-state in crates/state: SQLite schema and persistence helpers.
  • xyan-memory in crates/memory: higher-level agent recall primitives.
  • xyan-config in crates/config: TOML config loading and precedence.
  • xyan-tui in crates/tui: initial terminal UI shell.

Usage

Start llama-server separately and point it at your local GGUF model:

llama-server -m /absolute/path/to/model.gguf --host 127.0.0.1 --port 8080

Run a non-interactive prompt:

cargo run -p xyan-cli -- exec "summarize this repo"

Start the TUI shell:

cargo run -p xyan-cli

Show the global config path:

cargo run -p xyan-cli -- config path

Config

Global config lives at ~/.xyan/config.toml. Workspace overrides live at .xyan/config.toml.

model = "qwen2.5-coder:7b"
llama_base_url = "http://localhost:8080"
approval_mode = "prompt"
max_context_bytes = 120000
shell_timeout_seconds = 60

Model precedence:

  1. CLI --model
  2. config file
  3. XYAN_MODEL
  4. qwen2.5-coder:7b

Development

just fmt
just test
just run

About

A CLI-based local AI assistant built with Rust

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages