Run intelligent workflows directly in your terminal with AI-powered code generation, automated refactoring, and seamless tool integration.Faster code generation, robust refactoring, and AI-powered system tools.

Trusted by 1000+ developers worldwide

Cohere logo
Cohere
Fireworks AI logo
Fireworks AI
Hume AI logo
Hume AI
Suno logo
Suno
Xata logo
Xata
MCP logo
MCP
Cohere logo
Cohere
Fireworks AI logo
Fireworks AI
Hume AI logo
Hume AI
codentis — ~/projects
$codentis chat "Explain how Codentis works"
──── Codentis ────
Codentis is a modular CLI AI agent built in Python.
 
It uses an event-driven architecture:
  → CLI captures your prompt via Click
  → Agent orchestrates the agentic loop
  → LLMClient streams from OpenAI / OpenRouter
  → TUI renders with Rich in real-time
 
Fully async, resilient, and extensible. ✨
$
Capabilities

Everything you need
Nothing you don't.

Codentis delivers essential AI-powered development tools without the bloat. Clean terminal interface, intelligent responses, and seamless workflow integration - everything focused on what developers actually need to build better software faster.

Streaming TUI

Experience real-time AI responses with our beautiful Rich-powered terminal interface. Watch code explanations, documentation, and solutions flow character by character with no loading spinners or waiting screens. Built for developers who value immediate feedback and seamless interaction.

Resilient Client

Never lose productivity to API failures or rate limits. Our intelligent retry system uses exponential backoff algorithms to handle connection errors, rate limiting, and temporary outages automatically. Your development workflow continues uninterrupted while Codentis manages the complexity behind the scenes.

Modular Design

Built with clean separation between Client, Agent, and UI layers for maximum flexibility. Extend functionality by swapping LLM providers, adding custom tools, or integrating new UI renderers without touching core logic. Perfect for teams that need customization and enterprise integration capabilities.

Tool System

Leverage Pydantic-validated, extensible tools that handle everything from file operations to web searches through natural language commands. Read files, execute shell commands, search codebases, and manipulate data structures with simple conversational prompts. Fully type-safe and easily extensible for custom workflows.

Smart Context

Intelligent token-aware context management that automatically tracks conversation history and optimizes prompt construction for maximum relevance. Codentis remembers your project context, coding patterns, and preferences across sessions, ensuring consistent and contextually appropriate responses every time.

Any LLM Provider

Freedom to choose your preferred AI model with support for OpenAI, OpenRouter, Ollama, and any OpenAI-compatible endpoint. Switch between GPT-4, Claude, local models, or custom deployments seamlessly. Your model preferences, your data sovereignty, your rules - Codentis adapts to your infrastructure needs.

codentis — ~/projects
$codentis chat "Explain async/await in Python"
Query: Explain async/await in Python

❯ Async/await in Python

Async/await is Python's way to write asynchronous code using coroutines. It allows you to write non-blocking code that can handle multiple tasks concurrently.

Basic Syntax
```python
import asyncio

async def main():
print('Start')
await asyncio.sleep(1) # Non-blocking sleep
print('End')

asyncio.run(main())

### Key Concepts

Coroutines: Functions defined with async def that can be paused and resumed.
await: Pauses the coroutine until the awaited task completes, allowing other tasks to run.
Event Loop: Manages and schedules all asynchronous tasks.

What our users are saying.

Sarah Chen
@techflowinc
2h

Just discovered @codentis and it's completely transformed my development workflow. The AI assistance is incredibly intuitive and saves me hours every day. #coding #AI

24
8
50
Marcus Rodriguez
@cloudscale
2h

The terminal integration in @codentis is seamless. I can get intelligent code suggestions without leaving my command line environment. This is what I've been waiting for! 🚀

24
11
57
Emily Watson
@innovatelabs
2h

Best AI coding assistant I've used. The context awareness and code generation quality are outstanding. @codentis is a game-changer for developers.

24
14
64
David Kim
@pixelcraft
2h

@codentis understands my codebase better than any other tool. It's like having a senior developer pair programming with me 24/7. Highly recommend! 💯

24
17
71
Lisa Thompson
@buildright
2h

The refactoring suggestions in @codentis are spot-on. It's helped me clean up legacy code and implement modern patterns effortlessly. Love it!

24
20
78
Alex Johnson
@securestack
2h

Open source and powerful. @codentis gives me the AI assistance I need while keeping my code and data secure. Perfect for enterprise development.

24
8
85
Rachel Park
@devcorp
2h

I love how @codentis integrates with my existing workflow. No need to switch between different tools or platforms. Everything I need is right there in my terminal.

24
11
52
Tom Wilson
@startuplab
2h

Game-changer for productivity. The code suggestions in @codentis are always relevant and help me write better code faster. Can't imagine coding without it now!

24
14
59
1000+
Active Developers
50K+
Lines of Code Generated
2500+
Bugs Fixed
98%
Developer Satisfaction
Powerful workflows

One command.
Infinite power.

From quick queries to complex debugging, Codentis handles every development scenario with intelligent responses and contextual understanding. One simple command unlocks unlimited AI-powered assistance.

codentis — ~/projects
$codentis
Starting interactive mode...

❯ Codentis Interactive Mode
Type your message and press Enter. Use /exit to quit.

> explain async/await in Python with examples

Async/await in Python allows you to write asynchronous code using coroutines. It enables non-blocking operations that can handle multiple tasks concurrently.

Basic Syntax:
import asyncio

async def main():
print('Start')
await asyncio.sleep(1) # Non-blocking sleep
print('End')

asyncio.run(main())

Key Concepts:
→ Coroutines: Functions defined with async def
→ await: Pauses execution until task completes
→ Event Loop: Manages all async tasks

> show me a real-world example with HTTP requests

Here's a practical example using aiohttp for concurrent HTTP requests:

import aiohttp
import asyncio

async def fetch_url(session, url):
async with session.get(url) as response:
return await response.text()

> This fetches multiple URLs concurrently, much faster than sequential requests!

Instant Answers

Ask any development question and get comprehensive, formatted answers streamed directly to your terminal. From syntax explanations to architectural guidance, Codentis provides context-aware responses that help you learn and build faster.

Production-Ready Code

Generate complete, production-ready code with full context awareness. From REST APIs to complex algorithms, Codentis understands your requirements and delivers clean, well-structured code that follows best practices and includes proper error handling.

Smart Debugging

Describe your bug or paste error messages, and Codentis analyzes the issue with context awareness. Get detailed explanations of what went wrong, why it happened, and step-by-step solutions to fix the problem quickly and effectively.

Conversational Coding

Enter interactive chat mode for back-and-forth conversations with Codentis. Ask follow-up questions, iterate on solutions, and build complex features through natural dialogue. Perfect for exploring ideas and collaborative problem-solving.

Code Improvement

Get intelligent suggestions for improving your code structure, performance, and maintainability. Codentis analyzes your codebase and provides detailed refactoring recommendations with modern patterns and best practices.

Codebase Understanding

Analyze entire projects and understand complex codebases. Codentis can explore directory structures, read multiple files, and provide comprehensive insights about architecture, dependencies, and potential improvements across your entire project.

Real-time Information

Get up-to-date information from the web about libraries, frameworks, and best practices. Codentis can search the internet, fetch documentation, and provide current solutions based on the latest developments in the tech ecosystem.

Ready to code with
AI in your terminal?

Free. Open source. Built by developers, for developers.

View on GitHub