AI spelling and grammar checker for documentation
🐦 Twitter • 📢 Discord • 🖇️ AgentOps
Spellcaster is an open-source CLI tool that uses AI to improve your codebase's documentation. It scans repositories for:
- Grammar errors
- Spelling mistakes
- Issues in code examples
Spellcaster helps identify potential problems to help you write clear, concise, and professional documentation.
https://github.com/user-attachments/assets/60dbfdb1-d5a6-4dfd-9707-37e60d60b24e
To run Spellcaster:
pip install spellcaster
spellcaster -d /path/to/your/docs/directory/
🦉 Features
- Grammar and Spelling Checks: Spellcaster reviews your documentation and comments to ensure they are clear, correct, and professional.
- Comprehensive File Scanning: Spellcaster reads across multiple file formats (Markdown, plain text, etc.) to detect issues.
Installation
-
Install package:
pip install spellcaster
-
Set up environment variables:
Create a
.envfile in your project root and add the following variables:AGENTOPS_API_KEY=your_agentops_api_key ANTHROPIC_API_KEY=your_anthropic_api_key OPENAI_API_KEY=your_openai_api_key GROQ_API_KEY=your_groq_api_key
Spellcaster uses AgentOps for cost and latency tracking. You can sign up for an API key here.
Replace your_*_api_key with your actual API keys for each service.
Usage
To run Spellcaster:
-
In your terminal, use the following command structure:
spellcaster [options]
Options:
-d,--directory: The directory to scan-u,--url: The GitHub repository URL to clone and scan-l,--llm_provider: The LLM provider to use (choices: claude, sonnet, 3.5, gpt4o, gpt4, gpt3.5; default: MODEL from config)-p,--proper_nouns: A string of proper nouns to include in the prompt (default: "* Llama3.1-70B\n* Cerebras\n* Cohere\n* OpenAI\n* AgentOps\n* Spellcaster")-f,--file_types: File types to scan (default: from FILE_TYPES in config)-m,--max_files: Maximum number of files to scan (default: MAX_FILES from config)
-
Examples:
Scan a local directory with custom LLM provider:
spellcaster --directory /path/to/your/docs --llm_provider gpt4
Scan a GitHub repository:
spellcaster --url https://github.com/username/repo
-
Spellcaster will analyze the specified directory or repository and output any detected issues, along with suggestions for fixing them.
Configuration
You can customize Spellcaster's behavior by adjusting the config.py file:
FILE_TYPES: A list of file extensions to scan. By default, it includes.mdxand.mdfiles. You can add or remove file extensions as needed.MAX_FILES: The maximum number of files to scan. By default, it's set to 500. You can change this number to suit your needs.MODEL: The default LLM provider to use. Model list available here.
Metadata
Release files for spellcaster 0.0.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| spellcaster-0.0.7.tar.gz | 11.0 kB | Without provenance | Details for spellcaster-0.0.7.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| spellcaster-0.0.7-py3-none-any.whl | Python 3 | none | any | Details for spellcaster-0.0.7-py3-none-any.whl |
Total release size: 21.7 kB
Release files / spellcaster-0.0.7.tar.gz
| Download URL | spellcaster-0.0.7.tar.gz |
|---|---|
| Size | 11.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
927668dae8fa8aed4feb32578dedadb6924598eae2450e9d2bea6a63bd676b54
|
|
BLAKE2b-256 checksum How to use checksums |
1c5b22a19d1b6360fa80b18070feddd96626801132361357c28d216f8b8ff800
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.9.20
|
Release files / spellcaster-0.0.7-py3-none-any.whl
| Download URL | spellcaster-0.0.7-py3-none-any.whl |
|---|---|
| Size | 10.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
104d0e5df2296a171350d0903b4f20204eec5eaf74a915e8ffd272bdbbac7062
|
|
BLAKE2b-256 checksum How to use checksums |
4742c3064ddd4401330a4222d9ff0c5602894e1d706a4ec7df979b8838a798d9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.9.20
|
Security for spellcaster 0.0.7
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.