clicodelog

agent
Guvenlik Denetimi
Gecti
Health Gecti
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Community trust — 42 GitHub stars
Code Gecti
  • Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Gecti
  • Permissions — No dangerous permissions requested
Purpose
This tool provides a local web interface to browse and inspect session history, including thinking processes, file changes, and token costs, from AI coding agents like Claude Code, OpenAI Codex, and Gemini CLI.

Security Assessment
The application reads local conversation logs and file directories, meaning it inherently accesses sensitive data (your AI conversation history and potentially proprietary codebase snippets). It automatically executes shell commands to kill processes occupying its default port (6126). While the light code scan found no dangerous patterns, hardcoded secrets, or requested dangerous permissions, the tool is designed to bind to a local web server. Risk: Medium. The risk stems strictly from its core functionality: aggregating highly sensitive local data into an accessible web server, though it claims nothing leaves the machine.

Quality Assessment
The project is in active development (last push was today) and is transparent about its functionality. It is legally clear for integration, using a standard MIT license. Community trust is currently low but growing, currently sitting at 42 GitHub stars. The codebase is small (12 files scanned), which makes it easy to manually review.

Verdict
Safe to use, but developers should ensure they do not expose the local web server (port 6126) to public networks, as it displays sensitive proprietary code and chat history.
SUMMARY

Browse & Inspect CLI agents : Claude Code, Codex, Gemini CLI code & conversation history

README.md

Your AI coding agent just edited 30 files across 6 directories.
What actually happened?

Browse every session from Claude Code, OpenAI Codex, and Gemini CLI the thinking, the tool calls, the file changes, the token costs. All in one local interface. Nothing leaves your machine.

FeaturesSupported ToolsInstallationUsageScreenshots

Python 3.7+ FastAPI License MIT PRs Welcome


Light Mode Dark Mode
Light Mode Dark Mode

Installation

Via uv tool (Recommended)

uv is a fast Python package installer. Install it first if you haven't:

curl -LsSf https://astral.sh/uv/install.sh | sh

Then install clicodelog as an isolated tool:

uv tool install clicodelog

To upgrade:

uv tool upgrade clicodelog

Via pip

pip install clicodelog

From source

git clone https://github.com/monk1337/clicodelog.git
cd clicodelog
uv tool install -e .
# or with pip:
pip install -e .

Usage

After installation, simply run:

clicodelog

The app will:

  • Auto-kill any process on port 6126 (if occupied)
  • Sync data from all AI coding agent sources
  • Start a web server at http://localhost:6126

Command Options

clicodelog --help               # Show all options
clicodelog --port 8080          # Use custom port
clicodelog --host 0.0.0.0       # Bind to all interfaces
clicodelog --no-sync            # Skip initial data sync
clicodelog --debug              # Run in debug mode

Alternative: Run from source

git clone https://github.com/monk1337/clicodelog.git
cd clicodelog
python -m clicodelog.cli

Why Developers Use It

🧠 See the full chain of reasoning
Read the agent's thinking blocks, tool calls, and decisions in a clean conversation view. No more squinting at raw JSONL.
🔍 Track what actually ran
Every file read, shell command, and edit — laid out clearly so you can audit what the agent did before you commit.
📊 Spot wasted tokens
Session-level token stats (input, output, cached) so you can see which runs were efficient and which went in circles.
🔀 All your agents, one place
Claude Code, Codex, and Gemini CLI side by side. Same interface, same workflow, no context switching.
🔒 Nothing leaves your machine
Fully local. Reads from your existing log directories, syncs to a local backup. No cloud, no accounts, no telemetry.

Supported Tools

Tool Source Directory Status
Claude Code ~/.claude/projects/ ✅ Supported
OpenAI Codex ~/.codex/sessions/ ✅ Supported
Gemini CLI ~/.gemini/tmp/ ✅ Supported

Claude Code

  • Sessions organized by project directory
  • Displays summaries, messages, thinking blocks, and tool usage
  • Shows model metadata and token usage

OpenAI Codex

  • Sessions organized by date (YYYY/MM/DD/)
  • Groups sessions by working directory (cwd) as projects
  • Displays messages, function calls, and reasoning blocks
  • Filters out system prompts for cleaner inspection

Gemini CLI

  • Sessions stored as JSON files in {hash}/chats/session-*.json
  • Groups sessions by project hash
  • Displays messages, thoughts (thinking), and tool calls
  • Shows token usage (input, output, cached)

CLI Options

clicodelog --help               # Show help message
clicodelog --version            # Show version
clicodelog --port 8080          # Run on custom port (default: 6126)
clicodelog --host 0.0.0.0       # Bind to all interfaces (default: 127.0.0.1)
clicodelog --no-sync            # Skip initial data sync
clicodelog --debug              # Run in debug mode

Note: The app automatically kills any process running on the specified port before starting.


How It Works

  • Startup sync — Copies logs from source directories into local ./data/
  • Background sync — Automatically refreshes every hour
  • Manual sync — Trigger a sync for the active source via UI
  • Source switching — Switch between Claude Code, Codex, and Gemini CLI

Data Storage

data/
├── claude-code/          # Claude Code backup
│   ├── -Users-project1/
│   │   ├── session1.jsonl
│   │   └── session2.jsonl
│   └── -Users-project2/
├── codex/                # OpenAI Codex backup
│   └── 2026/
│       └── 01/
│           ├── 16/
│           │   └── rollout-xxx.jsonl
│           └── 17/
└── gemini/               # Gemini CLI backup
    ├── {project-hash-1}/
    │   └── chats/
    │       ├── session-2026-01-17T12-57-xxx.json
    │       └── session-2026-01-17T13-04-xxx.json
    └── {project-hash-2}/

Controls

Control Action
Source dropdown Switch between supported tools
📥 Export Download current session as .txt
🔄 Sync Manually refresh logs from source
☀️ / 🌙 Theme Toggle light/dark mode

Screenshots

Light Mode Dark Mode
Light Mode Dark Mode

Project Structure

clicodelog/
├── app.py              # Flask backend (multi-source support)
├── run.sh              # Run script
├── requirements.txt    # Dependencies
├── data/               # Synced logs (auto-created)
│   ├── claude-code/
│   ├── codex/
│   └── gemini/
└── templates/
    └── index.html      # Frontend

API Endpoints

Endpoint Method Description
/api/sources GET List available sources
/api/sources/<id> POST Set active source
/api/projects?source= GET List projects
/api/projects/<id>/sessions?source= GET List sessions
/api/projects/<id>/sessions/<id>?source= GET Fetch session
/api/sync?source= POST Trigger sync
/api/status?source= GET Sync status

Requirements

  • Python 3.7+
  • Flask 2.0+
  • flask-cors

Adding New Sources

To add support for another CLI-based AI tool, update app.py:

SOURCES = {
    "claude-code": {
        "name": "Claude Code",
        "source_dir": Path.home() / ".claude" / "projects",
        "data_subdir": "claude-code"
    },
    "codex": {
        "name": "OpenAI Codex",
        "source_dir": Path.home() / ".codex" / "sessions",
        "data_subdir": "codex"
    },
    "gemini": {
        "name": "Gemini CLI",
        "source_dir": Path.home() / ".gemini" / "tmp",
        "data_subdir": "gemini"
    },
    # Add new tool here
}

Then implement the corresponding parser for its log format.

 @misc{clicodelog2026,                                                                                                                                                      
    title        = {clicodelog: Unified Session Inspector for CLI AI Coding Agents},
    author       = {Pal, Ankit},                                                                                                                                             
    year         = {2026},
    howpublished = {\url{https://github.com/monk1337/clicodelog}},                                                                                                           
    note         = {Local web UI for browsing Claude Code, OpenAI Codex, and Gemini CLI session logs - thinking blocks, tool calls, file edits, and token costs}             
  }       

License

MIT


Built for inspecting what AI coding agents actually did.

Yorumlar (0)

Sonuc bulunamadi