Skip to content

syzygyhack/ccp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Claude Code Platform (CCP)

CCP is an application platform built on top of Claude Code. It provides a language-agnostic HTTP API that lets you build apps in any language that leverage Claude Code's capabilities.

Status: Alpha - Core functionality works. Suitable for local development and experimentation.

What It Does

  • ccm - CLI for managing apps and the Claude Code runtime
  • ccpd - HTTP daemon that provides the API for apps

Apps declare their permissions in a manifest, and CCP enforces them at runtime.

Prerequisites

  • Claude Code CLI installed and authenticated
  • Go 1.22+ (for building from source)

Installation

git clone https://github.com/syzygyhack/ccp.git
cd ccp
make install

Or build manually:

go build -o ccm ./cmd/ccm
go build -o ccpd ./cmd/ccpd

Quick Start

# Check that Claude Code is installed
ccm runtime status

# Install an official app
ccm install hello-world

# Or install from a local directory
ccm install ./apps/hello-world

# Or a Github repo
ccm install user/repo@v2.0.0

# Run it (daemon starts automatically)
ccm run hello-world

Installing Apps

# Official apps (from this repo's apps/ directory)
ccm install hello-world              # Latest
ccm install hello-world@v1.0.0       # Specific tag
ccm install hello-world@a1b2c3d      # Specific commit

# Third-party apps (from any GitHub repo)
ccm install user/repo                # Latest from github.com/user/repo
ccm install user/repo@main           # Specific branch
ccm install user/repo@v2.0.0         # Specific tag

# Local development
ccm install ./path/to/app            # From local directory

Apps installed from GitHub are version-locked to the exact commit SHA for security and reproducibility. Use ccm update to pull newer versions.

Managing Apps

ccm list                     # List installed apps
ccm search                   # List official apps
ccm search <query>           # Search official apps
ccm run <app>                # Run an app
ccm update                   # Update all apps to latest
ccm update <app>             # Update specific app
ccm uninstall <app>          # Remove an app

Creating Apps

Apps are directories with an app.yaml manifest:

name: my-app
version: 1.0.0
description: My CCP app
author: Your Name <you@example.com>

entrypoint:
  script: main.py          # or binary: ./my-app, or command: echo hello

permissions:
  tools:
    - Read
    - Glob
    - Grep

Your app communicates with Claude Code via the HTTP API at $CCP_API_URL:

import httpx
import os

response = httpx.post(
    f"{os.environ['CCP_API_URL']}/v1/run",
    json={
        "prompt": "What files are in this directory?",
        "cwd": "/path/to/project",
        "allowed_tools": ["Read", "Glob"]
    }
)
print(response.json()["text"])

See apps/ for official example apps.

Publishing Your App

To add an official app, submit a PR adding your app to the apps/ directory.

To share a third-party app, users can install directly from your GitHub repo:

ccm install yourusername/your-app

Documentation

Contributing

See CONTRIBUTING.md for guidelines.

License

MIT License - see LICENSE for details.

About

application layer for claude code

Resources

License

Contributing

Stars

Watchers

Forks