Skip to main content

A simple context builder and converter toolkit

Project description

ContextMaker

License Python

Feature to enrich the CMBAgents: Multi-Agent System for Science, Made by Cosmologists, Powered by AG2.

Acknowledgments

This project uses the CAMB code developed by Antony Lewis and collaborators. Please see the CAMB website and documentation for more information.


Installation

Install ContextMaker from PyPI:

python3 -m venv context_env
source context_env/bin/activate
pip install contextmaker

Usage

From the Command Line

ContextMaker automatically finds libraries on your system and generates complete documentation with function signatures and docstrings.

# Convert a library's documentation (automatic search)
contextmaker library_name

# Example: convert pixell documentation
contextmaker pixell

# Example: convert numpy documentation
contextmaker numpy

Advanced Usage

# Specify custom output path
contextmaker pixell --output ~/Documents/my_docs

# Specify manual input path (overrides automatic search)
contextmaker pixell --input_path /path/to/library/source

Output

  • Default location: ~/your_context_library/library_name.txt
  • Content: Complete documentation with function signatures, docstrings, examples, and API references
  • Format: Clean text optimized for AI agent ingestion

From a Python Script

You can also use ContextMaker programmatically in your Python scripts:

import contextmaker

# Minimal usage (automatic search, default output path)
contextmaker.convert("pixell")

# With custom output path
contextmaker.convert("pixell", output_path="/tmp")

# With manual input path
contextmaker.convert("pixell", input_path="/path/to/pixell/source")

This will generate a text file with the complete documentation, just like the CLI.


Supported Inputs

  • Sphinx documentation (conf.py + .rst) - Complete documentation with signatures
  • Markdown README files (README.md)
  • Jupyter notebooks (.ipynb)
  • Python source files with docstrings (auto-generated docs if no user docs)

Library Requirements

For complete documentation extraction, the library should have:

  • A docs/ or doc/ directory containing conf.py and index.rst
  • Source code accessible for docstring extraction

If only the installed package is found (without Sphinx docs), ContextMaker will extract available docstrings from the source code.


Troubleshooting

Library not found

# Use manual path
contextmaker pixell --input_path /path/to/pixell/repo

No documentation detected

  • Ensure the library has a docs/ or doc/ directory with conf.py and index.rst
  • Clone the official repository if using an installed package

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

contextmaker-1.2.0.tar.gz (18.9 kB view details)

Uploaded Source

Built Distribution

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

contextmaker-1.2.0-py3-none-any.whl (20.6 kB view details)

Uploaded Python 3

File details

Details for the file contextmaker-1.2.0.tar.gz.

File metadata

  • Download URL: contextmaker-1.2.0.tar.gz
  • Upload date:
  • Size: 18.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.4

File hashes

Hashes for contextmaker-1.2.0.tar.gz
Algorithm Hash digest
SHA256 eb1a7be51a92c6e9e0af5037967bdd5e10f644ecc32d0c94d26374437aa241e9
MD5 17ef9b01167b4d615231ab537f317410
BLAKE2b-256 36ebd116b17f577a0fd599b22dc657a80de90bb9ab507a40c3f4c4cf7cbe3d2c

See more details on using hashes here.

File details

Details for the file contextmaker-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: contextmaker-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 20.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.4

File hashes

Hashes for contextmaker-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1cc115671e222f37ac7aa3c138af50be2c7e23bdad80ad9896d1cb2a37103032
MD5 509f241152404d1dcdafbb9d7d4d1f8b
BLAKE2b-256 5aa6935d14bd291da4a70b453b0da2b3efd2a007f71a8eae032f45b10e80ca57

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