noxi-cli
v0.8.1
Published
NOXI command line client for NOXUS, with agentic coding capabilities
Maintainers
Readme
🤖 NOXI CLI
AI-powered coding assistant with full agent capabilities
Modern command-line interface for NOXI with autonomous agent mode, file operations, and real-time collaboration. Built with Node.js for speed and cross-platform compatibility.
✨ Features
🎯 Core Capabilities
- 🔧 Agent Mode: Autonomous file reading, editing, creation, and command execution
- 📁 File Operations: Read, write, edit with inline diff preview and colored syntax
- 🔍 Smart Search: Full-text search and fuzzy path finding
- ⚡ Command Execution: Safe shell command running with risk assessment
- 💬 Interactive Chat: Streaming responses with real-time status updates
🎨 Enhanced UX
- 🎨 Colored Diffs: Syntax-highlighted file changes (red/green/cyan)
- ⏱️ Status Indicators: Real-time tool execution feedback with timing (✓/✗ with ms)
- 💾 Session Persistence: Full conversation history logged to
.noxi/session-history.json - 🔄 Visual Feedback: Animated spinners and progress bars for operations
- 📦 Clean UI: Boxed output with color-coded borders (cyan/yellow/red/green)
🛠️ Slash Commands
/status - Show workspace, permissions, and model state
/config - Edit local and project configuration
/read - Read and explain files
/edit - Propose, diff, and apply changes
/search - Full-text search across project
/find - Locate files by name (fuzzy matching)
/analyze - Inspect project structure
/run - Execute commands with confirmation
/reset - Clear conversation history
/help - Show command reference
/exit - Leave the CLI🔒 Security Features
- Approval Policies: Confirm risky operations before execution
- Workspace Trust: Restrict untrusted project instructions
- Command Risk Classification: Auto-detect dangerous commands
- Automatic Backups: File backups before edits in
.noxi-backups/
📦 Installation
From npm (Recommended)
npm install -g noxi-cliLocal Development
cd noxi-cli
npm install
npm install -g .Test Without Installing
cd noxi-cli
node ./bin/noxi.js🚀 Quick Start
1. Login
Generate API key from NOXUS dashboard at https://noxus.lat, then:
noxi loginConfig saved to ~/.noxi/config.json. Workspace settings in ./.noxi/config.json.
2. Interactive Mode
noxiStarts interactive session. Press / to open slash menu with available commands.
3. One-Shot Commands
# General chat
noxi "explain this codebase"
# Ask mode (non-agent)
noxi ask "what does this function do?"
# Agent mode (with tools)
noxi agent "fix the authentication bug"
# Status check
noxi status
# Configuration
noxi config
# Logout
noxi logout💡 Usage Examples
Interactive Session
$ noxi
╭────────────────────────────────────────────────╮
│ │
│ NOXI CLI Agent │
│ │
╰────────────────────────────────────────────────╯
Root: /home/user/project
Git: yes
Package manager: npm
Type / to open the slash menu.
NOXI > /edit src/app.js
Change instruction: fix the login bugColored Diff Preview
--- src/auth.js
+++ src/auth.js
@@ line 42
- if (token.expiry < Date.now()) {
+ if (token.expiry <= Date.now()) {Tool Execution Feedback
⠋ Reading file...
✓ Read 156 lines from src/auth.js (42ms)
⠹ Editing file...
✓ Edited src/auth.js (78ms)
⠦ Running command...
✓ Command completed (exit 0, 1234ms)Session History
All interactions logged to .noxi/session-history.json:
[
{
"type": "user_message",
"message": "fix auth bug",
"mode": "agent",
"conversationId": "abc123",
"timestamp": "2025-01-15T10:30:00.000Z"
},
{
"type": "tool_execution",
"tool": "edit_file",
"result": "success",
"timestamp": "2025-01-15T10:30:05.000Z"
}
]⚙️ Configuration
Global Config (~/.noxi/config.json)
{
"api_base_url": "https://noxus.lat",
"token": "your-api-token",
"default_model": "",
"approval_policy": "confirm",
"workspace_trust": "trusted",
"command_timeout_ms": 60000
}Workspace Config (.noxi/config.json)
{
"approval_policy": "safe",
"workspace_trust": "trusted",
"command_timeout_ms": 60000
}Approval Policies
confirm- Ask before all shell commandssafe- Only ask for risky commands (default for low-risk ops)
Workspace Trust
trusted- Load project instructions (AGENTS.md, NOXI.md)untrusted- Restrict project context
🏗️ Architecture
noxi-cli/
├── bin/noxi.js # CLI entry point
├── main.js # Command router
├── agent.js # Session runtime + tool execution
├── tools.js # File operations + project analysis
├── ui.js # Terminal UI (spinners, prompts, diffs)
├── config.js # Config + session persistence
└── src/
└── api-client.js # NOXUS API client🔧 Development
Syntax Check
npm run checkDry Run Package
npm pack --dry-runPublish to npm
npm publish --access public🆚 Comparison with Reference CLIs
| Feature | NOXI CLI | Gemini CLI | Aider | OpenCode | |---------|----------|------------|-------|----------| | Colored diffs | ✅ | ❌ | ✅ | ✅ | | Session persistence | ✅ (JSON) | ❌ | ❌ | ✅ (SQLite) | | Agent mode | ✅ | ✅ | ✅ | ✅ | | File operations | ✅ | ✅ | ✅ | ✅ | | Progress indicators | ✅ | ❌ | ❌ | ✅ | | Real-time status | ✅ | ✅ | ❌ | ✅ | | Tool timing | ✅ | ❌ | ❌ | ❌ | | Slash commands | ✅ | ✅ | ✅ | ✅ |
📝 License
MIT
🤝 Contributing
Issues and PRs welcome! Open an issue or submit a pull request.
