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.1.0.tar.gz (18.8 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.1.0-py3-none-any.whl (20.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for contextmaker-1.1.0.tar.gz
Algorithm Hash digest
SHA256 f9d079b723b28ca7e08e7ef1a23eb19fc763e579a8d5bc432c4b95378b9dc7f8
MD5 a517be6c3182978055608df65655ad4f
BLAKE2b-256 ca2843c1eeb96b863905d28577cc0eef1ac7f46a69620bdf3535b5b1188d2251

See more details on using hashes here.

File details

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

File metadata

  • Download URL: contextmaker-1.1.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.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c3100b28ed1e730edd92e4d09028e91e6cb87fc3c3dd427676940f73182fe58b
MD5 ed0629fd3c19e63e04f9950c07e6f40b
BLAKE2b-256 282281814aac78a832b7f66ed8e53fa89abeaa93511217082fa4c1950f99063c

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