Skip to main content

CLI tool for codebase indexing and natural language retrieval.

Project description

codebase-intelligence

🧩 Tibo – a powerful command-line tool designed to index your codebase, generate call graphs, and chunk code into a vector database. With tibo, you can query your codebase using natural language and retrieve contextually relevant files, functions, and code snippets effortlessly.

Tibo Workflow

Features

  • Codebase Indexing: Scans and organizes your project for easy querying.
  • Call Graph Generation: Maps relationships between functions and files.
  • Vector Database: Embeds code chunks for fast, intelligent retrieval.
  • Natural Language Queries: Ask questions about your code in plain English.
  • Context-Aware Results: Returns relevant files and snippets with added context from the call graph.

Installation

Get started with tibo by installing:

pip install tibo

Find the latest version and additional details on the PyPI project page.

Usage

Follow these steps to integrate tibo into your workflow:

  1. Configure the Tool - Set up tibo with your OpenAI API key:
tibo config
  1. Index Your Project - Navigate to your project directory and index your codebase:
cd /path/to/your/project
tibo index

Note: This creates a .tibo folder in your project root to store indexed data, call graphs, and vector embeddings.

  1. Query Your Codebase - Fetch relevant context by asking questions in natural language:
tibo fetch "my query to the codebase"

Results include the most relevant file names and code chunks. Full output is saved in .tibo/query_output/query_output.json.

  1. NEW Interact with Tibo Agent - chat with the ai agent to understnad the codebase better and get help with implementing new features:
tibo agent

NOTE: requires running tibo config and adding ANTHROPIC_API_KEY when prompted. The agent can use the tibo fetching tools if you have run 'tibo index' before. In the shell:

  • type 'exit' or 'quit' to quit the agent shell
  • type '#' followed by a command to execute a command directly in your terminal
  • type 'reset' to reset the conversation history

How It Works

Configuration: Link Tibo to your OpenAI API for LLM-powered enhancements.

Indexing: Processes codebase, builds call graph, chunks files, enhances with GPT-4o-mini, and stores vector embeddings locally.

Querying: Enhances your query with an LLM, matches it to the top relevant chunks, and supplements results with call graph context.

Requirements

Python 3.7+ An OpenAI API key (required for LLM functionality)

Contributing

We welcome contributions! Feel free to open issues or submit pull requests on our GitHub repository.

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tibo-1.1.3.tar.gz (175.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tibo-1.1.3-py3-none-any.whl (185.3 kB view details)

Uploaded Python 3

File details

Details for the file tibo-1.1.3.tar.gz.

File metadata

  • Download URL: tibo-1.1.3.tar.gz
  • Upload date:
  • Size: 175.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.11

File hashes

Hashes for tibo-1.1.3.tar.gz
Algorithm Hash digest
SHA256 a0675ebc8dfa158ca8acc39ee94ab032a39801401e71f009711759833cdcd86e
MD5 c6f97acc92fae7d343f441d1f2572eb9
BLAKE2b-256 f3ada8b7f2c1960d71192ae44490d66327b35b6319201ad0e9c1aedbbc9ff7cb

See more details on using hashes here.

File details

Details for the file tibo-1.1.3-py3-none-any.whl.

File metadata

  • Download URL: tibo-1.1.3-py3-none-any.whl
  • Upload date:
  • Size: 185.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.11

File hashes

Hashes for tibo-1.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 06f807b51f32b07a1bf1732d9d2319f920ff71688fc4de6615ff521909724915
MD5 13298dae2dde113529901d47a358b6a0
BLAKE2b-256 6d20b6661c50c62121b6b5bb33e46b66b33493b8596e9f4408c55a9102c7d0e8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page