Skip to main content

AI-first coding assistant with TypeScript TUI

This project has been archived.

The maintainers of this project have marked this project as archived. No new releases are expected.

Project description

🥷 codrninja

AI-first coding assistant for automation. A lightweight, programmatic alternative to interactive coding tools like OpenCode or Claude Code.

🔌 Multi-Provider Support

Works with any AI provider:

Provider Setup Models
Ollama (default) Local server codellama, llama2, mistral
OpenAI API key gpt-4, gpt-4-turbo, gpt-3.5
Anthropic API key claude-3-opus, claude-3-sonnet
OpenRouter API key Access to all major models

Provider Configuration

# Ollama (default)
export OLLAMA_URL=http://localhost:11434
export OLLAMA_MODEL=codellama

# OpenAI
export OPENAI_API_KEY=sk-...
export CODRNINJA_PROVIDER=openai
export CODRNINJA_MODEL=gpt-4

# Anthropic
export ANTHROPIC_API_KEY=sk-ant-...
export CODRNINJA_PROVIDER=anthropic
export CODRNINJA_MODEL=claude-3-sonnet-20240229

# OpenRouter
export OPENROUTER_API_KEY=sk-or-...
export CODRNINJA_PROVIDER=openrouter
export CODRNINJA_MODEL=openai/gpt-4

🚀 Quick Install

🚀 Quick Install

macOS / Linux

pip3 install codrninja

If codrninja-tui is not found after installation, your pip user directory isn't in PATH. Fix it:

# For macOS (Python 3.x)
echo 'export PATH="$HOME/Library/Python/3.14/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

# For Linux
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

Or use the automatic installer:

curl -fsSL https://raw.githubusercontent.com/20ZollCoder/codrninja/main/install.sh | bash

From source

git clone https://github.com/20ZollCoder/codrninja.git
cd codrninja
pip3 install -e .

⚡ Quick Start

# Set your provider (Ollama is default)
export OLLAMA_URL=http://localhost:11434

# Or use OpenAI
# export OPENAI_API_KEY=sk-...
# export CODRNINJA_PROVIDER=openai

# Start interactive TUI
codrninja-tui my-project

# Or use agent mode
codrninja agent my-project "Create a Button component"

🎯 Features

For Humans (TUI Mode)

  • 🎨 Beautiful terminal UI with ASCII art welcome
  • 💻 Syntax highlighting for code blocks
  • 📊 Tool usage tables
  • ⌨️ Slash commands (/help, /files, /read, /exec)
  • ⚡ Progress indicators

For AI Systems (Automation Mode)

  • 🤖 Agent loop with tool execution
  • 🛠️ Read, write, edit files automatically
  • 🔧 Execute shell commands
  • 📤 JSON output for scripting
  • 🧠 Session-based conversations

📖 Usage

Interactive TUI

# Start TUI
codrninja-tui my-project

# Inside TUI:
You: Create a Button component in React
🤖 AI: I'll create that for you...
✅ Tool: write_file  src/components/Button.jsx
✅ Tool: execute_command  npm test (passed)

You: /read src/components/Button.jsx
📄 (shows file with syntax highlighting)

You: /exec npm run build
⚡ (runs build command)

You: /help
📖 (shows all commands)

Agent Mode (Scripting)

# Set automation mode
export AI_CODE_MODE=automation

# Run agent with auto-approval
codrninja agent my-project "Create a login form"

# Continue conversation
codrninja agent my-project "Add validation to the form"

Commands

Command Description
codrninja-tui <session> Start interactive TUI
codrninja agent <session> "msg" Run agent with tools
codrninja send <session> "msg" Send message
codrninja create-session <name> Create session
codrninja show-session <name> Show history

TUI Slash Commands

Command Description
/help Show help
/files List files
/read <file> Read file
/write <file> Write file (interactive)
/exec <cmd> Execute command
/model Show AI model config
/session Show session info
/clear Clear screen
/exit Quit

🔧 Configuration

# Environment variables
export OLLAMA_URL=http://localhost:11434    # Ollama endpoint
export OLLAMA_MODEL=codellama                 # Default model
export AI_CODE_MODE=automation                # JSON output mode

🆚 Comparison with OpenCode

Feature OpenCode codrninja
Size ~146MB Go binary ~8KB Python
TTY Required ❌ Yes ✅ No
JSON Output ❌ No ✅ Yes
Agent Loop ✅ Yes ✅ Yes
Tool Execution ✅ Yes ✅ Yes
Session API Hidden Simple CLI
Installation Complex pip install
Automation Limited First-class

📦 Installation Details

The install script will:

  1. ✅ Check Python and pip
  2. ✅ Install codrninja from PyPI or git
  3. ✅ Install Rich (optional, for TUI)
  4. ✅ Add ~/.local/bin to PATH
  5. ✅ Create config directory
  6. ✅ Install codrninja-setup helper

🔗 Links

📄 License

MIT

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

codrninja-0.9.3.tar.gz (96.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

codrninja-0.9.3-py3-none-any.whl (104.1 kB view details)

Uploaded Python 3

File details

Details for the file codrninja-0.9.3.tar.gz.

File metadata

  • Download URL: codrninja-0.9.3.tar.gz
  • Upload date:
  • Size: 96.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for codrninja-0.9.3.tar.gz
Algorithm Hash digest
SHA256 976ca3422fa562935c3c29a6ea176dc3b85b79916089eee5d96864778df041dc
MD5 433909fd2ec4af64fafeaf7b0a172b7f
BLAKE2b-256 8851e65f2a8dd3be69abd89ce2eaebdfeffd2a7bbf7efa7600f926340656288b

See more details on using hashes here.

File details

Details for the file codrninja-0.9.3-py3-none-any.whl.

File metadata

  • Download URL: codrninja-0.9.3-py3-none-any.whl
  • Upload date:
  • Size: 104.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for codrninja-0.9.3-py3-none-any.whl
Algorithm Hash digest
SHA256 c9c7ae704673bd7758077f3223f0ea2dab4e6f86439cc02e129e2be65c2f1cc4
MD5 e29c557f19a68351dd012de93f2f4ce3
BLAKE2b-256 6063eba7320a12e3e327515de1dad97d443f2ab32a10bd1aac2106dc0acc75b6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page