Skip to content

ding113/ccline-packycc

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CCometixLine - PackyCode

English | 中文

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

This is a specially adapted version of CCometixLine for PackyCode service. The original CCometixLine was created by Haleclipse under MIT License. This project is also released under MIT License.

PackyCode is a third-party Claude Code proxy service. This project is a voluntary third-party adaptation and is not affiliated with Anthropic or PackyCode. PackyCode websites: packycode.com and share.packycode.com. This project implements automatic adaptation for both endpoints.

Language:Rust License:MIT CI

Screenshots

CCometixLine

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

Features

Core Functionality

  • Git integration with branch, status, and tracking info
  • Model display with simplified Claude model names
  • Usage tracking based on transcript analysis
  • Smart API quota monitoring with intelligent dual-endpoint detection
  • 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 @ding113/ccline-packycc

# Or using yarn
yarn global add @ding113/ccline-packycc

# Or using pnpm
pnpm add -g @ding113/ccline-packycc

Use npm mirror for faster download:

npm install -g @ding113/ccline-packycc --registry https://registry.npmmirror.com

After installation:

  • ✅ Global command ccline is available everywhere
  • ✅ Automatically configured for Claude Code at ~/.claude/ccline/ccline
  • ✅ Ready to use immediately!
  • 🎨 Run ccline -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/ccline/ccline",
    "padding": 0
  }
}

Windows:

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

Fallback (npm installation):

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

Use this if npm global installation is available in PATH

Update

npm update -g @ding113/ccline-packycc
Manual Installation (Click to expand)

Alternatively, download from Releases:

Linux

Option 1: Dynamic Binary (Recommended)

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

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

Option 2: Static Binary (Universal Compatibility)

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

Works on any Linux distribution (static, no dependencies)

macOS (Intel)

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

macOS (Apple Silicon)

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

Windows

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

Build from Source

git clone https://github.com/ding113/ccline-packycc.git
cd CCometixLine
cargo build --release

# Linux/macOS
mkdir -p ~/.claude/ccline
cp target/release/ccometixline ~/.claude/ccline/ccline
chmod +x ~/.claude/ccline/ccline

# Windows (PowerShell)
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.claude\ccline"
copy target\release\ccometixline.exe "$env:USERPROFILE\.claude\ccline\ccline.exe"

Usage

Configuration Management

# Initialize configuration file
ccline --init

# Check configuration validity  
ccline --check

# Print current configuration
ccline --print

# Enter TUI configuration mode
ccline --config

Theme Override

# Temporarily use specific theme (overrides config file)
ccline --theme cometix
ccline --theme minimal
ccline --theme gruvbox
ccline --theme nord
ccline --theme powerline-dark

# Or use custom theme files from ~/.claude/ccline/themes/
ccline --theme my-custom-theme

Claude Code Enhancement

# Disable context warnings and enable verbose mode
ccline --patch /path/to/claude-code/cli.js

# Example for common installation
ccline --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 | API Quota

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.

API Quota Display

Smart monitoring of API usage with dual-endpoint support:

  • Daily spent: Precise daily usage amount (e.g., $88.48)
  • Opus access: Shows Opus model availability (Opus✓ / Opus✗)
  • Auto-detection: Automatically detects the correct API endpoint
  • Fault tolerance: Seamless switching between endpoints on failure
  • Zero configuration: Just provide your API key, everything else is automatic

Supports multiple API key sources:

  • Environment variables: PACKYCODE_API_KEY, ANTHROPIC_API_KEY, ANTHROPIC_AUTH_TOKEN
  • Claude Code settings.json
  • Local API key file: ~/.claude/api_key

Configuration

CCometixLine supports full configuration via TOML files and interactive TUI:

  • Configuration file: ~/.claude/ccline/config.toml
  • Interactive TUI: ccline --config for real-time editing with preview
  • Theme files: ~/.claude/ccline/themes/*.toml for custom themes
  • Automatic initialization: ccline --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.

License

This project is licensed under the MIT License.

Star History

Star History Chart

About

Claude Code statusline tool written in Rust - for PackyCode

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 95.5%
  • JavaScript 4.5%