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.5.tar.gz (97.8 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.5-py3-none-any.whl (105.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: codrninja-0.9.5.tar.gz
  • Upload date:
  • Size: 97.8 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.5.tar.gz
Algorithm Hash digest
SHA256 28f616096f14926691a81ff59e01dac7dc985f777a370a13d4c91e045a6bec77
MD5 1a17fd3ee0f6dd14266f47418bfb786d
BLAKE2b-256 d9c16b02e410fd7518495bc0dc57c1a92c5b69b4f455498427e65a6189e0ccdf

See more details on using hashes here.

File details

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

File metadata

  • Download URL: codrninja-0.9.5-py3-none-any.whl
  • Upload date:
  • Size: 105.3 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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 5200de5b1b658c9927b41101b0645331cfa66aa7e1f641639604cefbc15dc1ff
MD5 5928637b6cfb7e36dcc1ad4c3cad964e
BLAKE2b-256 870362e2494f8fa0c4d6c97fda4c3e85a7bb30c213c099096c3b9b67b2e7804f

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