
Security News
Feross on TBPN: How North Korea Hijacked Axios
Socket CEO Feross Aboukhadijeh breaks down how North Korea hijacked Axios and what it means for the future of software supply chain security.
codetyper-cli
Advanced tools
An AI-powered terminal coding agent with an interactive TUI. CodeTyper autonomously executes coding tasks using tool calls with granular permission controls and intelligent provider routing.
CodeTyper is an autonomous coding agent that runs in your terminal. You describe what you want to build or fix, and CodeTyper:
CodeTyper uses an intelligent provider routing system:
User Request
|
v
[Detect Task Type] --> code_generation, bug_fix, refactoring, etc.
|
v
[Check Ollama Score] --> Quality score from past interactions
|
v
[Route Decision]
|
+-- High Score (85%+) --> Ollama Only (trusted)
|
+-- Low Score (40%-) --> Copilot Only (needs improvement)
|
+-- Medium Score --> Cascade Mode
|
v
[1. Ollama generates response]
|
v
[2. Copilot audits for issues]
|
v
[3. Update quality scores]
|
v
[Return best response]
Over time, CodeTyper learns which provider performs best for different task types.
Requires Bun runtime (v1.0.0+)
# Install Bun if you don't have it
curl -fsSL https://bun.sh/install | bash
# Install globally via npm
npm install -g codetyper-cli
# Or install from source
git clone https://github.com/CarGDev/codetyper.cli.git
cd codetyper.cli
bun install && bun run build && bun link
# Login to a provider
codetyper login copilot
# Start interactive chat
codetyper
Full-screen terminal interface with real-time streaming responses.

Key bindings:
Enter - Send messageShift+Enter - New line@ - Open file picker (works anywhere in input)/ - Open command menu (works anywhere in input)Ctrl+M - Toggle interaction modeCtrl+T - Toggle todo panelCtrl+O - Toggle activity panelShift+Up/Down - Scroll log panelCtrl+C (twice) - ExitOptional vim-style keyboard navigation for power users. Enable in settings.
Normal Mode:
j/k - Scroll down/upgg/G - Jump to top/bottomCtrl+d/u - Half page scroll/ - Search, n/N - Next/prev matchi - Enter insert mode: - Command mode (:q quit, :w save)Configuration:
{
"vim": {
"enabled": true,
"startInNormalMode": true
}
}
Press / to access all commands organized by category.

Available Commands:
| Category | Command | Description |
|---|---|---|
| General | /help | Show available commands |
| General | /clear | Clear conversation history |
| General | /exit | Exit the chat |
| Session | /save | Save current session |
| Session | /context | Show context information |
| Session | /usage | Show token usage with color-coded progress bars |
| Session | /remember | Save a learning about the project |
| Session | /learnings | Show saved learnings |
| Settings | /model | Select AI model |
| Settings | /agent | Select agent |
| Settings | /mode | Switch interaction mode |
| Settings | /provider | Switch LLM provider |
| Settings | /status | Show provider status |
| Settings | /theme | Change color theme |
| Settings | /mcp | Manage MCP servers |
| Account | /whoami | Show logged in account |
| Account | /login | Authenticate with provider |
| Account | /logout | Sign out from provider |
When CodeTyper modifies files, you see a clear diff view of changes.

Interaction Modes:
Granular control over what CodeTyper can do. Every file operation requires approval.

Permission Scopes:
[y] Yes, this once[s] Yes, for this session[a] Always allow for this project[g] Always allow globally[n] No, deny this requestAccess to multiple AI models through GitHub Copilot.

Available Models:
Real-time monitoring of your GitHub Copilot quota usage directly in the Activity Panel.
Features:
Accessible via the Activity Panel (Ctrl+O) when using GitHub Copilot provider.
15+ built-in themes to customize your experience.

Available Themes: default, dracula, nord, tokyo-night, gruvbox, monokai, catppuccin, one-dark, solarized-dark, github-dark, rose-pine, kanagawa, ayu-dark, cargdev-cyberpunk, pink-purple
| Provider | Models | Auth Method | Use Case |
|---|---|---|---|
| GitHub Copilot | GPT-5, Claude, Gemini | OAuth (device flow) | Cloud-based, high quality |
| Ollama | Llama, DeepSeek, Qwen, etc. | Local server | Private, offline, zero-cost |
When both providers are available, CodeTyper can use them together:
Check provider status with /status:
═══ Provider Status ═══
Current Provider: copilot
Cascade Mode: Enabled
Ollama:
Status: ● Available
Quality Score: 72%
Copilot:
Status: ● Available
Settings are stored in ~/.config/codetyper/config.json:
{
"provider": "copilot",
"model": "auto",
"theme": "default",
"cascadeEnabled": true,
"maxIterations": 20,
"timeout": 30000
}
CodeTyper reads project-specific context from:
.github/ - GitHub workflows and templates.codetyper/ - Project-specific rules and learningsrules.md - Custom instructions for the AI# Start interactive TUI
codetyper
# Start with a prompt
codetyper "Create a REST API with Express"
# Continue last session
codetyper --continue
# Resume specific session
codetyper --resume <session-id>
# Use specific provider
codetyper --provider ollama
# Print mode (non-interactive)
codetyper --print "Explain this codebase"
CodeTyper has access to these built-in tools:
| Tool | Description |
|---|---|
bash | Execute shell commands |
read | Read file contents |
write | Create or overwrite files |
edit | Find and replace in files |
glob | Find files by pattern |
grep | Search file contents |
lsp | Language Server Protocol operations |
web_search | Search the web |
todo-read | Read current todo list |
todo-write | Update todo list |
Connect external MCP (Model Context Protocol) servers for extended capabilities:
# Browse and search available servers
/mcp browse # Interactive browser
/mcp search <query> # Search by keyword
/mcp popular # Show popular servers
/mcp categories # List all categories
# Install a server
/mcp install sqlite
/mcp install github
# Manage servers
/mcp status # Show connected servers
/mcp connect # Connect all servers
/mcp disconnect # Disconnect all servers
/mcp tools # List available tools
/mcp add # Add custom server
MCP Browser Features:
Lifecycle hooks for intercepting tool execution and session events.
Hook Events:
PreToolUse - Validate/modify before tool executionPostToolUse - Side effects after tool executionSessionStart - At session initializationSessionEnd - At session terminationUserPromptSubmit - When user submits inputStop - When execution stopsConfiguration (.codetyper/hooks.json):
{
"hooks": [
{
"event": "PreToolUse",
"script": ".codetyper/hooks/validate.sh",
"timeout": 5000
},
{ "event": "PostToolUse", "script": ".codetyper/hooks/notify.sh" }
]
}
Exit Codes:
0 - Allow (optionally output {"updatedInput": {...}} to modify args)1 - Warn but continue2 - Block executionExtend CodeTyper with custom tools, commands, and hooks.
Plugin Structure:
.codetyper/plugins/{name}/
├── plugin.json # Manifest
├── tools/
│ └── *.ts # Custom tool definitions
├── commands/
│ └── *.md # Slash commands
└── hooks/
└── *.sh # Plugin-specific hooks
Manifest (plugin.json):
{
"name": "my-plugin",
"version": "1.0.0",
"tools": [{ "name": "custom_tool", "file": "tool.ts" }],
"commands": [{ "name": "mycommand", "file": "cmd.md" }]
}
Custom Tool Definition:
import { z } from "zod";
export default {
name: "custom_tool",
description: "Does something",
parameters: z.object({ input: z.string() }),
execute: async (args, ctx) => ({
success: true,
title: "Done",
output: "...",
}),
};
Branch and rewind session history for experimentation.
Commands:
| Command | Description |
|---|---|
/snapshot [name] | Create checkpoint |
/rewind [n|name] | Go back to snapshot |
/fork [name] | Branch current session |
/forks | List all forks |
/switch [name] | Switch to fork |
Sessions are stored in .codetyper/sessions/ with automatic commit message suggestions.
The next major release focuses on production-ready autonomous agent execution:
| Feature | Issue | Status |
|---|---|---|
| Plan Approval Gate | #111 | Planned |
| Diff Preview Before Write | #112 | Planned |
| Execution Control (Pause/Resume/Abort) | #113 | Planned |
| Consistent Model Behavior | #114 | Planned |
| Quality Gates (TypeScript, Lint, Tests) | #115 | Planned |
See CHANGELOG for full version history.
# Watch mode
bun run dev
# Type check
bun run typecheck
# Build
bun run build
# Run tests
bun test
# Lint
bun run lint
Ctrl+O to show/hide the activity panel997;1n garbage text appearing on exitSee CHANGELOG for complete version history.
MIT - See LICENSE for details.
FAQs
CodeTyper AI Agent - Standalone CLI for autonomous code generation
The npm package codetyper-cli receives a total of 277 weekly downloads. As such, codetyper-cli popularity was classified as not popular.
We found that codetyper-cli demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Socket CEO Feross Aboukhadijeh breaks down how North Korea hijacked Axios and what it means for the future of software supply chain security.

Security News
OpenSSF has issued a high-severity advisory warning open source developers of an active Slack-based campaign using impersonation to deliver malware.

Research
/Security News
Malicious packages published to npm, PyPI, Go Modules, crates.io, and Packagist impersonate developer tooling to fetch staged malware, steal credentials and wallets, and enable remote access.