CodeLite is a free, open source, cross platform IDE specialized in C, C++, PHP and JavaScript (mainly for backend developers using Node.js) programming languages, which runs best on all major platforms (Windows, macOS and Linux).

Compilers

  • Generic support for compilers with built-in support for GCC/clang/VC++
  • Display errors as code annotations or as tooltip in the editor window
  • Errors are clickable via the Build tab

GDB Support

  • Built-in GDB support, with the following features included:
    • Watches table - add persistent watches with a single click
    • Quick Watch - right click on a variable to expand it
    • Locals tree - automatically displays the current stack variables (also displays *this if available)
    • Threads view - contains a list of currently-running threads; switch between them with a single click
    • Breakpoint management - disable, enable, conditional, temporary
    • Automatic tree like tooltips
    • Memory view
    • Tree View tooltips (auto de-references pointers)
    • Allow modifying tooltips

Refactoring

  • Rename symbol
  • Rename file (will also change all #include in the code)
  • Rename local symbol
  • Generate setters / getters
  • Implement inherited virtual functions
  • Implement inherited pure-virtual functions
  • Easily change function signature to match its header / implementation counterpart
  • Move functions implementation to another source file
  • Implement all unimplemented methods
  • Implement method

Source Control Plugins

  • Subversion plugin (based on the command line tool)
  • GIT plugin

Code Navigation

  • Outline
  • cscope plugin
  • Zoom Navigator - display a mini map of your code

Code Completion

CodeLite offers 2 code completion engines (both can be enabled at the same time)

  • Powerful and amazingly fast code completion based on our in-house parser (supports C++11 auto keyword, templates, inheritance etc)
  • clang based code completion - based on the CLANG/LLVM project - this feature provides a compiler level code completion
  • Parse and display doxygen comments in the code completion box (as a separated floating window)

What's New

New Features

  • Add MiniMap view support for editors – Adds a new minimap/code overview panel to improve navigation in large files. a10af20e4
  • Add Markdown support to workspace – Native Markdown file support with syntax highlighting and preview capabilities. 69cdd5f9f
  • Add C# language support to CodeLite – Full C# language server protocol support. fc586b51f
  • Add Pyright Support for Python Language Server – Improved Python development with Pyright LSP integration. fc586b51f
  • Add Support for Multiple Models Per LLM Endpoint – Configure and switch between different AI models within a single endpoint. ba5f634df
  • Add MCP Server Configuration and Management UI #3811 – New UI for managing Model Context Protocol servers. 72d33b0bb
  • Add EndpointModelSelector control for LLM endpoint and model selection – New UI control for selecting AI models and endpoints. 52c6b1a9e
  • Add LLM Cost Tracking and Display in Chat AI Window – Track and display API costs for AI interactions. 224749a23
  • Add Prompt Caching Support and Refactor Chat Window UI – Improves AI response times with caching. 45034a2f1
  • Add Chat History Dialog With Management Features – View, search, and manage AI chat history. ca5734525
  • Add Placeholder Auto-Completion and Selection UI to Chat AI Window – Smart auto-completion for AI prompt placeholders. 8bddc6f0f
  • Add Enable Tools checkbox to ChatAI window – Control whether AI can execute tools. cb2896bc5
  • Add Interactive User Prompt System with Trust Option – User confirmation for AI tool execution with trust options. 3ac7033d9
  • Add Syntax Highlighting for Code Blocks in Markdown Styler – Embedded code blocks in Markdown now have full syntax highlighting. bf0d00f6c
  • Add Dedicated Diff Styles for Markdown Code Blocks – Enhanced diff viewing in AI chat windows. 9a7cc2df3
  • Add AI-Powered Workspace Creation Tool – Create workspaces using AI assistance. 11daec7d1
  • Add Find-In-Files Functionality to AI Plugin – AI can now search across files. 4403eeb0b
  • Add Regex Search Support to Find in Files Functionality – Regular expression support for file searches. 3e3963cfd
  • Add Shell Execution Capability to LLM Tools – AI can execute shell commands with user permission. 178ea93d4
  • Add ApplyPatch Function – AI can apply git-style patches to files. efc43aac0
  • Add GetOS Tool to Report Operating System to LLM – AI can detect the host operating system. 244597e9d
  • Add User Cancellation Support for Shell Command Execution – Cancel long-running AI shell commands. 5637b78dc
  • Add Shutdown Flag Support to Process Execution on Unix – Proper process cleanup on Unix systems. 505a1ed47
  • LLM: Support Using Environment Variables in Config – Reference environment variables in AI configuration. f67ef7190
  • Add Workspace Functions to Lua API – Lua scripting can now manipulate workspaces. 6a050ae55
  • Add User Text Input Function To Lua Scripting API – Lua scripts can prompt users for input. 453448d6d
  • Add String Replace Function to Lua Scripting API – String manipulation utilities for Lua. 49a4bb179
  • Add Lua helper functions for editor access and logging – Enhanced Lua API with editor integration. 36864a417
  • Add CodeLite Lua API definitions – Complete Lua API documentation. 80e0afbfe
  • Add Lua file type support – Syntax highlighting and LSP support for Lua. e208f2106
  • Add Windows ARM64 build #3797 – Native ARM64 Windows support. 80c1482ce
  • Add option to skip SFTP writes when ignoring workspace – Performance optimization for remote workspaces. 51b5b1377
  • Add custom prompt creation and deletion support to Prompt Editor – Manage custom AI prompts. fa488c74c
  • Add pending answer counter to track active user prompts – UI indicator for pending AI responses. 7a52d8f9d
  • Add line range support to GetActiveEditorText function – AI tools can request specific line ranges. 7a29efb2d
  • Add support for 4 and 5 backtick code blocks in Markdown styler – Extended Markdown code block support. 34988e972
  • Add flat tab art provider for main book with dynamic text colour support – Modern flat tab design. 61f6916de
  • Add BlockTimer utility – Performance profiling tool for developers. 3e036dee8
  • Add gnome-console (kgx) as possible terminal #3781 – Support for GNOME Console terminal. d6a4aade5
  • Prevent commit when git index is locked – Safety feature to prevent conflicts. 34988e972

Bug Fixes

  • Fix macOS panel background colour handling and refactor LSP server validation – Proper theme colors on macOS. b93e99457
  • MSW: Fix FACTOR_ALTROW_DARK value in light theme color scheme – Corrects alternating row colors on Windows. 14d27bd9b
  • MSW: Fix alternate row highlight factor for consistent light theme appearance – Improved light theme consistency on Windows. 99362c603
  • Fix border colour rendering on Windows in dark mode – Dark mode border colors now render correctly. 79b02ee18
  • Fix Windows Alternate Row Colour for Tree Views – Tree view theming fixes for Windows. b003087ac
  • Fix dialog flags in PromptEditorDlg::OnDefaults – Corrects dialog behavior. 07ff68781
  • Fix patch trust logic and support diff comment syntax – Patch application reliability improvements. 36489326a
  • Fix page index type safety in PromptEditorDlg – Prevents type-related crashes. dfc6dd1ca
  • Fix AI prompt footer formatting in commit message template – Better formatted AI-generated commit messages. 5eb079cfc
  • Fix Find Dialog positioning to avoid hiding text selection – Find dialog no longer obscures selected text. d6324c314
  • Fix InfoBar constructor for wxWidgets 3.3.0 compatibility – Compatibility with latest wxWidgets. 7ae922a70
  • Fix crash when calling JSONItem::GetAsMap() on non-object #3838 – JSON API safety fix. 3e0150edf
  • Fix build error without SFTP support – Conditional compilation fixes. c11fa46c6
  • Fix Resource Leak By Closing File Pointer In Popen Function – Memory leak fix. a88c09d2c
  • Fix Non-ASCII Characters and Improve GTK Unicode Support – Better Unicode handling on Linux. 0c1a20ea1
  • Fix Markdown Code Block Delimiter Visibility – Delimiters now display correctly. b15992fa7
  • Fix Rust Syntax Highlighting in Markdown Styler – Rust code blocks now highlight properly. 092e3fd00
  • Fix build for GCC – GCC compilation compatibility. 95ca175ac
  • Fixed missing header inclusion when built without SFTP support – Build system fixes. f9e39010c
  • Fix Missing Namespace Closing Brace in Popen Function – Syntax error fix. ce300dcfa
  • Fix Autocomplete Trigger to Require Double Brace Input – Prevents accidental auto-completion. 2c4ddefa9
  • Fix Duplicate First Argument in Child Process Command Building – Process execution fix. 97dc06878
  • Fix Incorrect Section Number in AI Documentation – Documentation correction. 20e6528c1
  • Fix Remove Newline-To-Pipe Conversion In CommentConfigData Serialization – Comment template fix. be2cecbc4
  • Fix build and installation on CYGWIN #3813 – CYGWIN platform support restored. 42efcc2e9
  • Fix debug build configuration (macOS) – Debug builds work correctly on macOS. 830853dbb
  • Fix endpoint and MCP duplicate handling in LLM manager – Prevents duplicate entries in AI configuration. 6a88f0c1a
  • Fix misplaced break #3803 – Control flow correction. dcc1a1050
  • Fixed: https://github.com/eranif/codelite/issues/3776 – Specific issue resolution. 7472196f4
  • Fixed outline view event not fired by LSP – LSP outline view now updates correctly. 81c22d594
  • Fix Quick Find Bar Layout And Sizing Issues – Find bar UI improvements. daf77af07
  • Fix Race Condition During LSP Manager Shutdown – Thread safety fix for LSP. 612edca56
  • Fix Mini-Map Focus Handling And Cleanup On Page Closing – Minimap stability improvements. 62d0353ec
  • Fix Event Propagation In MiniMap Edit Update – Event handling fix. fec30875d
  • Fix URI decoding for colon, and fix Windows drive URI handling – Better file path handling on Windows. e208f2106
  • Fix build configuration choice width in filesystem workspace view – UI layout fix. 8e03350c9
  • Fix CMake release build directory path in workspace configuration – CMake configuration fix. 3e036dee8
  • Fix Japanese codelite.po #3731 – Japanese translation corrections. 57fe8d91a
  • Fix comparison between signed and unsigned integer types – Type safety improvement. 23f4ad6b1
  • Fix compilation with msvc #3832 – MSVC compatibility fix. b64cbbf3c
  • SideBar build fixes for wx3.2 – wxWidgets 3.2 compatibility. d088c3d8e
  • Fixed build with wx3.2 – Additional wx3.2 build fixes. 5637b78dc

Improvements / Refactorings

  • Update MSYS2 Detection to Support Multiple Registry Names – Better MSYS2 environment detection. 268b53190
  • Add initialization guard to LLMManager – Prevents double initialization. 25a5756ad
  • Refactor toolbar data management to use maps and std::optional – Modern C++ improvements. d088c3d8e
  • Refactor clSideBarCtrl to separate toolbar and action buttons – Better code organization. 49019b178
  • Add optional header to clSideBarCtrl – Optional header support for sidebar. ed705b929
  • Refactor API Key input field and improve initialization – Better API key management. 6e00d221d
  • Update Git commit dialog toolbar with custom art provider – Improved Git UI. 5016040b0
  • Replace clToolBar with wxAuiToolBar – Modern toolbar implementation. 51b5b1a9e
  • Unify Dark Mode Border Color Across Platforms – Consistent theming. 9dd964604
  • Refactor Find-In-Files Tool to Use Grep Command – Performance improvement for file searches. 0964a56cd
  • Refactor tab path display and apply code style cleanup – Code quality improvements. 672c9e4b6
  • Add border styling to flat tab art UI elements – Enhanced tab styling. 64c8624d8
  • Rename file path copy methods and add remote file support – Better remote file handling. 8a934942a
  • Refactor AI-powered features and prompt management system – Major AI subsystem refactoring. 8424b1738
  • Refactor toolbar options into dropdown menu – Cleaner toolbar UI. 2d7a8162a
  • Replace wxInfoBar With Custom InfoBar to Queue Messages – Better message management. 217e82c8a
  • Refactor User Prompt Timeout Handling and Add Global Shutdown Flag – Better async handling. dbc36d06d
  • Refactor AI Tool Confirmation Flow to Use Modal Dialog – Improved user interaction flow. 8ef743521
  • Add Unicode symbols support and enhance AI plugin functionality – Better Unicode support. a0cd7c049
  • Refactor Chat History To Support Per-Endpoint Conversations – Better conversation management. 45034a2f1
  • Refactor Stream Callback Signature to Use Enum-Based Reason Flags – Type-safe callbacks. 3d112eaf9
  • Center Main Frame Window On Screen During Initialization – Better initial window placement. 44a0d5362
  • Add validation for overly broad file pattern – Prevents accidental massive searches. 33b802dbd
  • Refactor RunOnMain to EventNotifier as a Template Method – Better event handling. 202b4aa3d
  • Refactor ChatAI Ownership to LLMManager and Fix Thread Safety – Thread safety improvements. 2faeddb15
  • Refactor Formatter Lookup Logic and Add Language Support for Shfmt – Shell script formatting support. c00ef95fc
  • Refactor Code Formatting and Fix Shfmt Formatter Configuration – Better formatter integration. 95ca175ac
  • Refactor LLM Tools and Add Shell Execution Capability – Enhanced AI tool system. 178ea93d4
  • Refactor File Operations and Add GetCurrentEditorPath Function – Better file API. bfb331144
  • Add PatchApplier Class for Unified Diff Parsing and Application – Robust patch handling. 60c376954
  • Refactor Chat History to Store Full Conversations Instead of Prompts – Richer chat history. bbc26a555
  • Allow Passphrase Prompt for SSH Public Key Login on Any Thread – Better SSH UX. 5cc30327b
  • Refactor SSH Account UI to Use Choicebook for Login Methods – Improved SSH configuration UI. fa11176fa
  • Update Comment Templates To Place Cursor After @brief – Better comment editing. a84b9a14a
  • Refactor temp file name generation to use modern C++ random utilities – Modern C++ usage. fdc964388
  • Remove Redundant Overloads From clFilesFinder – Code simplification. 224790e85
  • Update LSP request methods and clang-format standard – LSP improvements. 8d41dd967
  • Refactor PHP and Docker Plugins to Remove Clang Management – Plugin cleanup. 60843b2b0
  • Refactor toolbars to use wxAuiToolBar and centralize menu handling – Unified toolbar system. 493197ea0
  • Replace wxMessageBox with clMessageBox for consistent dark mode on MSW – Better dark mode support. 2c18b7a79
  • Refactor Menu Item Handling to Use Optional for Separator Detection – Modern C++ patterns. b7ba948c1
  • Refactor String Conversions – Code cleanup. 71e678844
  • Refactor Toolbar Tool Creation to Use Centralized Helper Method – Code reuse. c632e6f8c
  • Refactor MiniMap focus handling and add early page count guard – Stability improvements. 959c057ce
  • Replace clThemedComboBox With Standard wxComboBox In Find/Replace Dialogs – UI simplification. e20512cc8
  • Refactor MiniMap scrolling to use mouse position check – Better minimap interaction. ce56a2bd1
  • Standardize Sidebar Button Size – Consistent UI sizing. fb2679054
  • Refactor Markdown Code Fence Removal Logic – Code cleanup. f51b19274
  • Refactor Configuration and Prompt UI with Modern C++ and Add Defaults Reset – Modern C++ migration. c12ca097e
  • Refactor minimap implementation and clean up unused resources – Performance optimization. 5a813dad8
  • Improve performance by optimizing mini-map handling – Rendering optimization. 9104a6f4d
  • Improve Markdown code-block stripping logic – Better Markdown processing. 36864a417
  • Refactor XML resource handling to use a unified clXmlResource wrapper #3733 – Unified resource management. fb4f0a5fa
  • Replace wxSharedPtr by std::shared_ptr #3734 – Modern C++ smart pointers. 1dd98fb4d
  • Improve theme importers and add new themes – Expanded theme library. f0c807523
  • Adjust active tab text colour for better visibility on dark backgrounds – Better tab readability. 241b582b5
  • Update Git Commit Dialog to Use Custom Message Box and Diff Selected Files – Enhanced Git workflow. 4c5f46ce6
  • Move the build configuration choice control to the filesystem workspace toolbar – Better toolbar organization. 006922015
  • Refactor Git Console UI And Update TODO List – UI improvements. 746f78544
  • Update Clang-Format Version Support and Fix UI Initialisation – Latest clang-format support. 10a8c42c2
  • Rename QuickFindBar to FindAndReplaceDialog and Update References – Better naming. f84777e33
  • Refactor Quick Find Bar to Use wxFrame Instead of wxDialog – Improved find UI. 9da127403
  • Update UI modified indicator and modernize Git plugin event handling – Modern event patterns. b17476880
  • Refresh Outline View When Sidebar Page Changes – Better outline synchronization. 80e9fd0e3
  • Improve Up-To-Date Version Notification Message – Better update notifications. 8bddc6f0f
  • Add Overflow Style To Toolbar Controls And Update Icon Colors – Better toolbar aesthetics. 49ea1f126
  • Reduce Pen Width For Tree Button Rendering – Sharper tree controls. 33f448d34
  • Adjust Color Lightness Values for Improved UI Contrast – Better theme contrast. 7b8d0c6e
  • Improve Chat History Label Display And Filtering – Better chat history UX. 74c8d1628
  • Apply Font Settings to "Where" Combo Box in Find In Files Dialog – Consistent fonts. bc7154035
  • Add Truncation and Trimming for Chat History Display – Better long text handling. f51b19274
  • Add MIME image list retrieval – Better file type icons. 01a79ece0
  • MiniMap: add Mouse Wheel Forwarding to main edit control – Better minimap scrolling. 1dc1e57ae
  • Update Copyright Year to 2026 – Copyright updates. 606da2025
  • Improve Clang format – Code formatting improvements. Multiple commits.