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.
demo.mp4
To run Spellcaster:
pip install spellcaster
spellcaster -d /path/to/your/docs/directory/
- 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.
-
Install package:
pip install spellcaster
-
Set up environment variables:
Create a
.env
file 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.
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.
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.mdx
and.md
files. 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.