Coding
PromptBeginner5 minmarkdown
Nano Banana Pro
Agent skill for nano-banana-pro
6
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Sign in to like and favorite skills
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
gs-batch-pdf is a CLI tool for batch processing PDF files using Ghostscript. It supports compression, PDF/A conversion, and custom Ghostscript operations with multi-threaded processing.
The project uses
uv for dependency management.
# Environment setup uv sync # Install dependencies and sync environment uv sync --dev # Install with development dependencies # Testing uv run pytest # Run all tests uv run pytest tests/test_gsb.py # Run specific test file uv run pytest -v # Verbose test output # Development uv run python -m gs_batch.gs_batch --help # Test CLI locally uv run gs_batch --help # Test installed CLI command
uv build # Create wheel and source distributions uv publish # Publish to PyPI (requires credentials)
gs_batch/gs_batch.py: Main CLI application using Click frameworkgs_batch/assets/: Contains Ghostscript configuration files:
PDFA_def.ps: PDF/A conversion definitionssrgb.icc: Color profile for PDF/A compliancegs_batch (alias: gsb)multiprocessingtqdm--keep_smaller)--force for in-place operations)tests/test_gsb.py: Main test suite using pytest and Click's CliRunnertests/assets/originals/: Sample PDF files for testingtests/assets/output/: Expected test outputs--keep_smaller/--keep_new flagsclick: CLI frameworktqdm: Progress barsshow-in-file-manager: Cross-platform file manager integrationpytest: Testing frameworkipykernel: Jupyter notebook support_todo Directory StructureThe project uses a structured planning system located in
_todo/:
_todo/ ├── todo.md # Master task list written by user ├── proposal/ # Initial task proposals │ └── [task-name].md # Claude's detailed plan awaiting user approval ├── pending/ # Active development files │ └── [task-name].md # Approved tasks with progress updates └── completed/ # Finished tasks archive └── YYYY-MM-DD/ # Date-based folders for completion date └── [task-name].md # Final summary + insights
_todo/todo.md with clear objectives and priorities_todo/proposal/[task-name].md
_todo/pending/[task-name].md
_todo/completed/YYYY-MM-DD/
IMPORTANT: At the start of each session, always check:
_todo/todo.md for new or updated tasks from the user_todo/proposal/ for user-reviewed proposals ready to approve/implement_todo/pending/ for active tasks requiring progress updates