Introduces new pd-cards CLI tool for all card creation workflows: - custom: manage fictional character cards via YAML profiles - live-series: live season card updates (stub) - retrosheet: historical data processing (stub) - scouting: scouting report generation (stub) - upload: S3 card image upload (stub) Key features: - Typer-based CLI with auto-generated help and shell completion - YAML profiles for custom characters (replaces per-character Python scripts) - Preview, submit, new, and list commands for custom cards - First character migrated: Kalin Young Install with: uv pip install -e . Run with: pd-cards --help 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
74 lines
1.9 KiB
Python
74 lines
1.9 KiB
Python
"""
|
|
Scouting report generation commands.
|
|
|
|
Commands for generating scouting reports and ratings comparisons.
|
|
"""
|
|
|
|
from pathlib import Path
|
|
from typing import Optional
|
|
|
|
import typer
|
|
from rich.console import Console
|
|
|
|
app = typer.Typer(no_args_is_help=True)
|
|
console = Console()
|
|
|
|
|
|
@app.command()
|
|
def batters(
|
|
cardset: str = typer.Option(..., "--cardset", "-c", help="Cardset name"),
|
|
output: Optional[Path] = typer.Option(None, "--output", "-o", help="Output directory"),
|
|
):
|
|
"""
|
|
Generate batting scouting reports.
|
|
|
|
Creates CSV files with batting ratings and comparisons.
|
|
"""
|
|
console.print()
|
|
console.print("=" * 70)
|
|
console.print(f"[bold]BATTING SCOUTING REPORT - {cardset}[/bold]")
|
|
console.print("=" * 70)
|
|
|
|
# TODO: Migrate logic from scouting_batters.py
|
|
console.print()
|
|
console.print("[yellow]Not yet implemented - run legacy script:[/yellow]")
|
|
console.print(" python scouting_batters.py")
|
|
|
|
raise typer.Exit(0)
|
|
|
|
|
|
@app.command()
|
|
def pitchers(
|
|
cardset: str = typer.Option(..., "--cardset", "-c", help="Cardset name"),
|
|
output: Optional[Path] = typer.Option(None, "--output", "-o", help="Output directory"),
|
|
):
|
|
"""
|
|
Generate pitching scouting reports.
|
|
|
|
Creates CSV files with pitching ratings and comparisons.
|
|
"""
|
|
console.print()
|
|
console.print("=" * 70)
|
|
console.print(f"[bold]PITCHING SCOUTING REPORT - {cardset}[/bold]")
|
|
console.print("=" * 70)
|
|
|
|
# TODO: Migrate logic from scouting_pitchers.py
|
|
console.print()
|
|
console.print("[yellow]Not yet implemented - run legacy script:[/yellow]")
|
|
console.print(" python scouting_pitchers.py")
|
|
|
|
raise typer.Exit(0)
|
|
|
|
|
|
@app.command()
|
|
def upload(
|
|
cardset: str = typer.Option(..., "--cardset", "-c", help="Cardset name"),
|
|
):
|
|
"""
|
|
Upload scouting reports to database.
|
|
|
|
Uploads generated scouting CSV data to Paper Dynasty API.
|
|
"""
|
|
console.print()
|
|
console.print("[yellow]Not yet implemented[/yellow]")
|