Skip to main content

Image Analysis

CCS provides first-class image and PDF analysis for third-party launches that do not have reliable native vision support. Native Claude accounts keep Anthropic’s built-in image flow; third-party routes get a CCS-managed local ImageAnalysis MCP tool when the runtime is healthy. Supported file types include common image formats such as .jpg, .png, .webp, .gif, .heic, .bmp, .tiff, plus .pdf.

Overview

The current routing model is MCP-first:
CCS also appends a short steering hint so Claude prefers ImageAnalysis over raw Read for local images and PDFs.

Launch Behavior

Healthy Claude-target launches suppress the legacy CCS image Read hook so the managed MCP tool stays authoritative.

Quick Start

Configuration

Prompt Templates

CCS installs editable prompt templates under:
Templates:
  • default.txt
  • screenshot.txt
  • document.txt
CCS automatically selects the screenshot template for screenshot-like filenames, the document template for PDFs, and the default template otherwise.

What CCS Repairs Automatically

CCS now self-heals stale managed image-analysis state in three places:
  1. Healthy Claude-target launches remove stale CCS-managed image hooks from the active profile settings before launch.
  2. Saving or provisioning from Settings -> Image repairs the managed MCP runtime files, syncs the ccs-image-analysis entry into isolated Claude configs, and removes stale CCS-managed hooks from ~/.ccs/*.settings.json.
  3. ccs doctor --fix repairs invalid image-analysis config, removes stale CCS-managed hooks, and resyncs the managed MCP entry into isolated configs.

Runtime Details

Key runtime environment variables:

Troubleshooting

Claude still uses Read

  • Confirm ccs config image-analysis still shows enabled: true
  • Check the active profile resolves to a usable backend
  • Run ccs doctor --fix to repair stale managed hooks or missing MCP sync
  • Run with CCS_DEBUG=1 to inspect runtime preparation

ImageAnalysis is not exposed

  • Verify the resolved backend is authenticated
  • Verify the local or remote CLIProxy target is reachable
  • Check inherited Claude config directories for the managed ccs-image-analysis MCP entry

The wrong backend or model is being used

  • Inspect fallback_backend and profile_backends in ccs config image-analysis
  • Check whether the profile is bridge-backed or using a direct CLIProxy provider
  • Set an explicit provider model with --set-model if the default is not what you want

I need proof that requests go directly to the provider route

Run with CCS_DEBUG=1 and inspect the resolved runtime path. It should target a provider-scoped route such as: