Skip to content

loud-codes/loud-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LOUD

A terminal-first AI agent that lives on your infrastructure.

The model is yours. The data is yours. The terminal is yours.

License: MIT Version Python Platform loud.codes

Install · Quickstart · Tools · Permissions · Self-host · README en español


What is this

LOUD is a private, invite-only AI hosted by TL Music Entertainment. The loud CLI is the on-machine half — it lives in your shell and acts as an agent that can read, edit, and run things on your computer with explicit consent. The backend is closed and is not available for third-party hosting.

┌──────────────┐         ┌──────────────────┐         ┌─────────────────┐
│  your shell  │ ──────▶ │   loud CLI       │ ──────▶ │  LOUD private   │
│              │         │  (local agent)   │         │     backend     │
│  ↑ output    │ ◀────── │  read/write/run  │ ◀────── │  (invite only)  │
│              │         │  with permission │         │                 │
└──────────────┘         └──────────────────┘         └─────────────────┘

Install

LOUD is invite-only while in private beta. You need a user account on a running LOUD server before the CLI is useful. Get an invite at loud.codes.

macOS · Linux

curl -fsSL https://loud.codes/install.sh | bash

macOS (Homebrew)

brew tap loud-codes/cli
brew install loud

Windows (PowerShell)

iwr -useb https://loud.codes/install.ps1 | iex

From source

git clone https://github.com/loud-codes/loud-cli ~/.loud/install/src
python3 -m venv ~/.loud/install/venv
~/.loud/install/venv/bin/pip install httpx
printf '#!/usr/bin/env bash\nexec ~/.loud/install/venv/bin/python3 ~/.loud/install/src/cli/loud.py "$@"\n' > ~/.local/bin/loud
chmod +x ~/.local/bin/loud

Quickstart

$ loud

First run walks you through a 30-second setup: confirm the server URL, pick a permission mode (ask / yolo / safe), and log in. After that you land in an interactive LOUD REPL.

╭────────────────────────────────────────────────────────────╮
│                                                            │
│   ██╗      ██████╗ ██╗   ██╗██████╗                        │
│   ██║     ██╔═══██╗██║   ██║██╔══██╗                       │
│   ██║     ██║   ██║██║   ██║██║  ██║                       │
│   ██║     ██║   ██║██║   ██║██║  ██║                       │
│   ███████╗╚██████╔╝╚██████╔╝██████╔╝                       │
│   ╚══════╝ ╚═════╝  ╚═════╝ ╚═════╝                        │
│                                                            │
│   ✻ Welcome to LOUD — terminal-first AI                    │
│                                                            │
│   sesión:  ceo@loud.codes · admin                          │
│   modelo:  loud-go   permisos:  ask                        │
│   cwd:     ~/my-project                                    │
│   web:     https://loud.codes                              │
│                                                            │
│   /help para comandos · Esc detiene el agente · Ctrl+C sale│
│                                                            │
╰────────────────────────────────────────────────────────────╯

loud❯ refactor utils.py so the parsing logic is in a separate module

Daily usage

loud                              # interactive REPL
loud "explain the bug in app.py"  # one-shot prompt
loud login                        # auth
loud whoami                       # check session
loud --model loud-pro             # switch model: loud-go · loud-pro · loud-ultra
loud --reset                      # clear session history
loud update                       # self-update
loud --version

Slash commands inside the REPL

/help list commands
/reset clear history
/model NAME switch model
/tools list available tools
/permissions [ask|yolo|safe] view / change permission mode
/save FILE export conversation to markdown
/cwd print current directory
/exit quit

Tools

The agent has full access to your machine through these tools. Destructive operations are gated by the permission system.

Tool Description Permission
bash Run a shell command on the local machine. 🔐
ssh Run a command on a remote host. 🔐
read_file Read a text file.
write_file Create or overwrite a file. 🔐
edit_file Replace first occurrence of old with new. 🔐
glob Find files matching a pattern.
grep Recursive search (uses ripgrep if installed).
ls Show pwd + directory contents.
http_get Fetch the body of a URL.

The CLI auto-detects destructive bash commands by pattern (rm -rf, sudo, curl | sh, git push --force, terraform destroy, etc.) and prompts even in default mode.


Permissions

Three modes, set during first-run setup or with /permissions <mode>:

┌──────┬─────────────────────────────────────────────────────────────────┐
│ ask  │ prompts on every destructive call (default, recommended)        │
│      │ [y]es · [n]o · [a]lways · [s]top                                │
│      │ "always" is cached per command-prefix + per directory           │
├──────┼─────────────────────────────────────────────────────────────────┤
│ yolo │ never asks, executes everything (use only on disposable boxes)  │
├──────┼─────────────────────────────────────────────────────────────────┤
│ safe │ refuses every destructive tool — read-only agent                │
└──────┴─────────────────────────────────────────────────────────────────┘

State lives in:

~/.loud/
├── auth.json           # JWT + user        (0600 on Unix)
├── config.json         # api_url, model, permission_mode
├── permissions.json    # cached "always allow" decisions
└── current_session.json

Models

The CLI exposes a set of aliases that map to whatever the backend has loaded. Since LOUD 2.0 (May 2026) the server runs on an LOUD's dedicated GPU cloud, which unlocks 32B-class models at production latency.

Alias Class Use for
loud-go compact fast chat, quick refactors
loud-pro balanced reasoning, multi-file edits
loud-ultra deep deep refactors, complex debugging
loud-2.0 flagship LOUD 2.0 — the new flagship · GPU only
loud-eye 👁️ vision screenshots & images (vision)

Switch with loud --model loud-2.0 or /model loud-2.0 inside the REPL.

The "loud-2.0" and "loud-eye" aliases require the GPU backend. If you're running the CLI against a CPU-only LOUD server, only the first three are available.


Public consult API

LOUD also exposes a public HTTP endpoint so other apps / scripts / agents can query it without a user session.

curl -sS -X POST https://api.loud.codes/v1/api/chat \
  -H "X-User-Email: you@invite.com" \
  -H "X-API-Key: loud_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{"prompt":"...", "model":"loud-pro"}'

API keys are minted from the admin dashboard at https://loud.codesAPI Keys+ Crear API key. The raw key is shown ONCE and stored as a hash; auth requires both your email AND the key, so a leaked key alone is unusable.

The key only authorises /v1/api/chat — never admin or knowledge endpoints. Naming each key per integration (eg. n8n-flow, my-app-prod) makes targeted revocation simple.


Security

  • Internal IPs and infra hostnames are scrubbed from every line the CLI prints.
  • Auth lives in ~/.loud/auth.json with 0600 perms on Unix.
  • The CLI talks only to the private LOUD backend assigned to your invite.
  • The agent never names external model providers in its output.
  • Destructive operations route through the permission gate unless you explicitly opted into yolo.

Self-update

The CLI keeps itself up to date — no need to uninstall and reinstall.

loud update         # check + install the latest version

Or from inside the REPL:

loud❯ /update

What it does:

  • Detects how you installed it (Homebrew · curl-installer · git clone · Windows ps1)
  • Re-runs the right updater path
  • Preserves your ~/.loud/ config, sessions, and permissions
  • Survives all your settings — only the binary swaps

There's a quiet daily check baked in: if a newer release is on main, the welcome banner shows ↑ nueva versión disponible: X — corre 'loud update'. So you'll always know without polling manually.

Manual one-liners (if loud update ever fails)

# macOS · Linux
curl -fsSL https://loud.codes/install.sh | bash

# macOS Homebrew
brew update && brew upgrade loud

# Windows
iwr -useb https://loud.codes/install.ps1 | iex

Your ~/.loud/auth.json and config persist across updates.


Uninstall

rm -rf ~/.loud
rm   -f ~/.local/bin/loud
# or
brew uninstall loud

Roadmap

  • Streaming responses with typewriter rendering
  • Per-action permission gate with cached "always" decisions
  • Self-update (loud update)
  • Windows + macOS + Linux installers
  • LOUD 2.0 — GPU backend with dedicated GPU cloud (May 2026)
  • loud-2.0 model (flagship) usable in production
  • loud-eye vision model — chat with screenshots
  • Local model fallback when the LOUD server is unreachable (WIP)
  • Dreamer: autonomous background learning + daily report
  • Built-in diff view for edit_file before applying
  • Multi-file refactor sessions
  • Shell completions (zsh / bash / fish / powershell)
  • Subscriptions + paid tier integration

Changelog

v0.7.0 — Interactive LOUD REPL · 2026-05-22

  • 🎯 No more forced login at startup — type loud and you enter the REPL immediately. The welcome banner shows your status ("● signed in" or "● not signed in — type /login"). Login is just a slash command.
  • 🪪 Auth gate only when sending a chat — same UX as claude: you can look around, run /help, /version, etc. without authenticating. The moment you try to send a prompt is the moment we ask you to /login.
  • 🔗 Banner now shows GitHub links + update commands inline — web, docs, issues, and brew upgrade loud / loud update shortcuts.
  • New slash commands in the REPL: /login, /logout, /whoami, /version (in addition to existing ones).
  • 🧹 Removed the first-run setup wizard — modern flow is "enter and explore", not "fill in a form before you can use the tool".

v0.6.0 — Browser-based device login · 2026-05-22

  • 🔐 loud login ya no pide contraseña en la terminal — usa device flow OAuth-style. Abre el browser (o muestra el URL para copiar/pegar), tú apruebas la sesión en la web, y el CLI recibe el JWT sin que nunca escribas el password en la terminal.
  • ⚡ Tres endpoints nuevos en el backend: /v1/auth/cli/init, /cli/approve, /cli/poll
  • 🖼️ Página loud.codes/cli para aprobar sesiones con verificación de código (anti-CSRF)
  • Funciona igual que gh auth login o claude auth — la UX que ya conoces

v0.5.0 — Vision + authority · 2026-05-22

  • 👁️ Vision live in production — drop any .jpg/.png/.webp/.gif/.bmp into the web chat and LOUD describes + reasons about it (not just captioning, actual reasoning about what you want from the image)
  • 🔀 Auto-routing — when an image is attached, the backend auto-swaps to loud-eye (llama3.2-vision:11b) without the user having to pick the model
  • 🧠 System prompt strengthened — LOUD now recognizes Nassib (owner) as absolute authority. Admin role users get 100% obedience, no hedging
  • ⚙️ Backend: /v1/chat accepts an images: [base64,…] field and forwards it to Ollama's chat API natively
  • 📦 Frontend: images travel as base64 in a separate field (not embedded in text), so the model sees them as actual pixels not as garbage text

v0.4.0 — LOUD 2.0 GPU release · 2026-05-22

  • 🚀 Backend migrated to LOUD's dedicated GPU cloud — 3–10× faster across all models
  • New model loud-2.0 (flagship) — flagship quality at production speed
  • 👁️ New model loud-eye — vision (vision), drop screenshots into chat
  • 📝 /update slash command added inside the REPL
  • 📋 README + roadmap updated with the LOUD 2.0 timeline

v0.3.0 — Agentic CLI · 2026-05-21

  • Streaming chat with token-by-token typewriter rendering
  • Local tool suite: bash · ssh · read_file · write_file · edit_file · glob · grep · ls · http_get
  • Per-action permission system: ask / yolo / safe
  • Welcome banner with status panel (session · model · permissions · cwd · server)
  • First-run setup wizard
  • loud update self-updater + daily background check
  • Cross-platform installers (macOS · Linux · Windows)

v0.1.0 — Initial release · 2026-05-19

  • Basic REPL connected to the LOUD API
  • Login / logout / whoami
  • Three model aliases: loud-go · loud-pro · loud-ultra

Built for builders who don't want their code to leave the building.

loud.codes · MIT license

About

Terminal-first AI for builders. Web dev · scraping · ops. loud.codes

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Packages

 
 
 

Contributors