Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Claude Code statusline tool written in Rust

Notifications You must be signed in to change notification settings

kiritoko1029/glmcode

Repository files navigation

glmcode

English | 中文

A high-performance Claude Code statusline tool written in Rust with Git integration, usage tracking, interactive TUI configuration, and Claude Code enhancement utilities.

Language:Rust License:MIT

Screenshots

glmcode

The statusline shows: Model | Directory | Git Branch Status | Context Window Information

Features

Core Functionality

  • Git integration with branch, status, and tracking info
  • Model display with simplified Claude model names
  • Usage tracking based on transcript analysis
  • Directory display showing current workspace
  • Minimal design using Nerd Font icons

Interactive TUI Features

  • Interactive main menu when executed without input
  • TUI configuration interface with real-time preview
  • Theme system with multiple built-in presets
  • Segment customization with granular control
  • Configuration management (init, check, edit)

Claude Code Enhancement

  • Context warning disabler - Remove annoying "Context low" messages
  • Verbose mode enabler - Enhanced output detail
  • Robust patcher - Survives Claude Code version updates
  • Automatic backups - Safe modification with easy recovery

Installation

Quick Install (Recommended)

Install via npm (works on all platforms):

# Install globally
npm install -g @kiritoko1029/glmcode
# Or using yarn
yarn global add @kiritoko1029/glmcode
# Or using pnpm
pnpm add -g @kiritoko1029/glmcode

Use npm mirror for faster download:

npm install -g @kiritoko1029/glmcode --registry https://registry.npmmirror.com

After installation:

  • ✅ Global command glmcode is available everywhere
  • ⚙️ Follow the configuration steps below to integrate with Claude Code
  • 🎨 Run glmcode -c to open configuration panel for theme selection

Claude Code Configuration

Add to your Claude Code settings.json:

Linux/macOS:

{
 "statusLine": {
 "type": "command", 
 "command": "~/.claude/glmcode/glmcode",
 "padding": 0
 }
}

Windows:

{
 "statusLine": {
 "type": "command", 
 "command": "%USERPROFILE%\\.claude\\glmcode\\glmcode.exe",
 "padding": 0
 }
}

Fallback (npm installation):

{
 "statusLine": {
 "type": "command", 
 "command": "glmcode",
 "padding": 0
 }
}

Use this if npm global installation is available in PATH

Update

npm update -g @kiritoko1029/glmcode
Manual Installation (Click to expand)

Alternatively, download from Releases:

Linux

Option 1: Dynamic Binary (Recommended)

mkdir -p ~/.claude/glmcode
wget https://github.com/kiritoko1029/glmcode/releases/latest/download/glmcode-linux-x64.tar.gz
tar -xzf glmcode-linux-x64.tar.gz
cp glmcode ~/.claude/glmcode/
chmod +x ~/.claude/glmcode/glmcode

Requires: Ubuntu 22.04+, CentOS 9+, Debian 11+, RHEL 9+ (glibc 2.35+)

Option 2: Static Binary (Universal Compatibility)

mkdir -p ~/.claude/glmcode
wget https://github.com/kiritoko1029/glmcode/releases/latest/download/glmcode-linux-x64-static.tar.gz
tar -xzf glmcode-linux-x64-static.tar.gz
cp glmcode ~/.claude/glmcode/
chmod +x ~/.claude/glmcode/glmcode

Works on any Linux distribution (static, no dependencies)

macOS (Intel)

mkdir -p ~/.claude/glmcode
wget https://github.com/kiritoko1029/glmcode/releases/latest/download/glmcode-macos-x64.tar.gz
tar -xzf glmcode-macos-x64.tar.gz
cp glmcode ~/.claude/glmcode/
chmod +x ~/.claude/glmcode/glmcode

macOS (Apple Silicon)

mkdir -p ~/.claude/glmcode 
wget https://github.com/kiritoko1029/glmcode/releases/latest/download/glmcode-macos-arm64.tar.gz
tar -xzf glmcode-macos-arm64.tar.gz
cp glmcode ~/.claude/glmcode/
chmod +x ~/.claude/glmcode/glmcode

Windows

# Create directory and download
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.claude\glmcode"
Invoke-WebRequest -Uri "https://github.com/kiritoko1029/glmcode/releases/latest/download/glmcode-windows-x64.zip" -OutFile "glmcode-windows-x64.zip"
Expand-Archive -Path "glmcode-windows-x64.zip" -DestinationPath "."
Move-Item "glmcode.exe" "$env:USERPROFILE\.claude\glmcode\"

Build from Source

git clone https://github.com/kiritoko1029/glmcode.git
cd glmcode
cargo build --release
# Linux/macOS
mkdir -p ~/.claude/glmcode
cp target/release/ccometixline ~/.claude/glmcode/glmcode
chmod +x ~/.claude/glmcode/glmcode
# Windows (PowerShell)
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.claude\glmcode"
copy target\release\ccometixline.exe "$env:USERPROFILE\.claude\glmcode\glmcode.exe"

Usage

Configuration Management

# Initialize configuration file
glmcode --init
# Check configuration validity 
glmcode --check
# Print current configuration
glmcode --print
# Enter TUI configuration mode
glmcode --config

Theme Override

# Temporarily use specific theme (overrides config file)
glmcode --theme cometix
glmcode --theme minimal
glmcode --theme gruvbox
glmcode --theme nord
glmcode --theme powerline-dark
# Or use custom theme files from ~/.claude/glmcode/themes/
glmcode --theme my-custom-theme

Claude Code Enhancement

# Disable context warnings and enable verbose mode
glmcode --patch /path/to/claude-code/cli.js
# Example for common installation
glmcode --patch ~/.local/share/fnm/node-versions/v24.4.1/installation/lib/node_modules/@anthropic-ai/claude-code/cli.js

Default Segments

Displays: Directory | Git Branch Status | Model | Context Window

Git Status Indicators

  • Branch name with Nerd Font icon
  • Status: Clean, くろまる Dirty, Conflicts
  • Remote tracking: ↑n Ahead, ↓n Behind

Model Display

Shows simplified Claude model names:

  • claude-3-5-sonnetSonnet 3.5
  • claude-4-sonnetSonnet 4

Context Window Display

Token usage percentage based on transcript analysis with context limit tracking.

Configuration

glmcode supports full configuration via TOML files and interactive TUI:

  • Configuration file: ~/.claude/glmcode/config.toml
  • Interactive TUI: glmcode --config for real-time editing with preview
  • Theme files: ~/.claude/glmcode/themes/*.toml for custom themes
  • Automatic initialization: glmcode --init creates default configuration

Available Segments

All segments are configurable with:

  • Enable/disable toggle
  • Custom separators and icons
  • Color customization
  • Format options

Supported segments: Directory, Git, Model, Usage, Time, Cost, OutputStyle

Requirements

  • Git: Version 1.5+ (Git 2.22+ recommended for better branch detection)
  • Terminal: Must support Nerd Fonts for proper icon display
    • Install a Nerd Font (e.g., FiraCode Nerd Font, JetBrains Mono Nerd Font)
    • Configure your terminal to use the Nerd Font
  • Claude Code: For statusline integration

Development

# Build development version
cargo build
# Run tests
cargo test
# Build optimized release
cargo build --release

Roadmap

  • TOML configuration file support
  • TUI configuration interface
  • Custom themes
  • Interactive main menu
  • Claude Code enhancement tools

Contributing

Contributions are welcome! Please feel free to submit issues or pull requests.

Acknowledgments

This project is based on CCometixLine by Haleclipse. Special thanks to:

Related Projects

  • tweakcc - Command-line tool to customize your Claude Code themes, thinking verbs, and more.

License

This project is licensed under the MIT License.

Star History

Star History Chart

About

Claude Code statusline tool written in Rust

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 93.1%
  • JavaScript 6.9%

AltStyle によって変換されたページ (->オリジナル) /