Skip to content

Silk-CLI goes Python

Latest

Choose a tag to compare

@oinant oinant released this 30 Dec 21:06
eb9cc5f

SILK CLI v2.0.0 - Release Notes

Complete Python Migration

This major release marks the complete rewrite of SILK CLI, from Bash (~12,000 lines) to Python/Typer (~4,000 lines).

What's New

Simplified Installation

pip install silk-cli

New Tech Stack

  • Python 3.11+ with Typer for CLI
  • Pydantic for model validation
  • Rich for console output
  • pytest for testing (148 tests, 83% coverage)

Commands

All existing commands are preserved:

Command Description
silk init Create new project with genre-specific templates
silk wordcount Progress statistics with chapter grouping
silk context Unified context generation for LLM
silk publish PDF, EPUB, HTML publishing via Pandoc
silk config Project configuration management
silk cache MD5 chapter cache management

Improvements

  • macOS Compatibility: No more Bash 3.2 issues
  • Better Maintainability: Python types, Pydantic validation
  • PyPI Distribution: Install and update via pip
  • CI/CD: Automated tests on Ubuntu and macOS

Breaking Changes

  • Installation: pip install silk-cli replaces curl script
  • Requirements: Python 3.11+ required
  • Dependencies: Pandoc and XeLaTeX still required for publish

Migration

Existing SILK projects are 100% compatible. No modifications needed.


SILK weaves your story together.