Skip to content

CTX: The missing link between your codebase and your LLM. Context as Code (CaC) tool with MCP server inside.

License

Notifications You must be signed in to change notification settings

context-hub/generator

Repository files navigation

ctx: The missing link between your codebase and your LLM. Context as Code (CaC) tool with MCP server inside.

Docs Json schema Telegram License Latest Version

Good morning, LLM

Table of Contents

CTX is a tool made to solve a big problem when chatting with LLMs like ChatGPT or Claude: giving them enough context about your project.

There is an article about Context Generator on Medium that explains the motivation behind the project and the problem it solves.

When you're using AI in development, context isn't just helpful — it's everything. Instead of manually copying or explaining your entire codebase each time, ctx automatically builds neat, organized context files from:

  • Code files,
  • GitHub and Gitlab repositories,
  • Git commits and diffs
  • Web pages (URLs) with CSS selectors,
  • MCP servers
  • and plain text.

It was created to solve a common problem: efficiently providing AI language models like Claude with necessary context about your codebase.

How it works

  1. Gathers code from files, directories, GitHub or Gitlab repositories, web pages, or plain text.
  2. Targets specific files through pattern matching, content search, size, or date filters
  3. Applies optional modifiers (like extracting PHP signatures without implementation details)
  4. Organizes content into well-structured markdown documents
  5. Saves context files ready to be shared with LLMs
  6. Optionally serves context through an MCP server, allowing AI assistants like Claude to directly access project information

Quick Start

Getting started with CTX is straightforward. Follow these simple steps to create your first context file.

1. Install CTX

Download and install the tool using our installation script:

curl -sSL https://raw.githubusercontent.com/context-hub/generator/main/download-latest.sh | sh

This installs the ctx command to your system (typically in /usr/local/bin).

Want more options? See the complete Installation Guide for alternative installation methods.

2. Initialize a Configuration File

Create a new configuration file in your project directory:

ctx init

This generates a context.yaml file with a basic structure to get you started.

Check the Command Reference for all available commands and options.

3. Describe Your Project Structure

Edit the generated context.yaml file to specify what code or content you want to include.

For example:

$schema: 'https://raw.githubusercontent.com/context-hub/generator/refs/heads/main/json-schema.json'

documents:
  - description: "User Authentication System"
    outputPath: "auth-context.md"
    sources:
      - type: file
        description: "Authentication Controllers"
        sourcePaths:
          - src/Auth
        filePattern: "*.php"

      - type: file
        description: "Authentication Models"
        sourcePaths:
          - src/Models
        filePattern: "*User*.php"

This configuration will gather all PHP files from the src/Auth directory and any PHP files containing "User" in their name from the src/Models directory.

Need more advanced configuration?

4. Build the Context

Generate your context file by running:

ctx

CTX will process your configuration and create the specified output file (auth-context.md in our example).

Tip: Configure Logging with -v, -vv, or -vvv for detailed output

5. Share with an LLM

Upload or paste the generated context file to your favorite LLM (like ChatGPT or Claude). Now you can ask specific questions about your codebase, and the LLM will have the necessary context to provide accurate assistance.

Example prompt:

I've shared my authentication system code with you. Can you help me identify potential security vulnerabilities in the user registration process?

Next steps: Check out Development with Context Generator for best practices on integrating context generation into your AI-powered development workflow.

That's it! You're now ready to leverage LLMs with proper context about your codebase.

6. Connect to Claude AI (Optional)

For a more seamless experience, you can connect Context Generator directly to Claude AI using the MCP server:

There is a built-in MCP server that allows you to connect Claude AI directly to your codebase.

Point the MCP client to the Context Generator server:

{
  "mcpServers": {
    "ctx": {
      "command": "ctx server -c /path/to/your/project"
    }
  }
}

Note: Read more about MCP Server for detailed setup instructions.

Now you can ask Claude questions about your codebase without manually uploading context files!

Full Documentation

For complete documentation, including all available features and configuration options, please visit:

https://docs.ctxgithub.com


License

This project is licensed under the MIT License.