Skip to main content

Local-first LLM model deprecation watchdog — scans your configs, alerts on sunsets, and instructs your IDE to update.

Project description

Chowkidar

PyPI Version GitHub Release PyPI Downloads License: MIT

Chowkidar is a secure, local-first LLM model deprecation watchdog. It scans your codebase and configuration files for LLM model references, cross-references them with a locally cached deprecation database, and alerts you before models sunset.

Everything runs on your machine. Zero data exfiltration.

Core Features

  • Multi-Format Scanner & Structured Writers Scans and parses model strings in .env, JSON, YAML, TOML, docker-compose, and source code. At the 1-day threshold, safely auto-updates structured configuration files with atomic writes, backups, and file locking.

  • Notification-First Governance & Per-Reference Audit Log Alerts via native OS toasts and webhooks (Slack/Discord/generic) at 30 days, 15 days, 7 days, and 1 day before expiration. Every notification and update attempt is logged in a detailed audit ledger.

  • Deployment Signal Detector Analyzes repo evidence (CI, Docker, Kubernetes, Vercel, Terraform) to flag likely deployed environments, preventing blind or risky local writes.

  • Cloud Environment Adapters (Planned) Explicit, contract-ready adapter interface designed for dry-running, updating, and verifying remote secret/config stores on Vercel, Kubernetes, AWS Secrets/SSM, GCP Secret Manager, and Azure Key Vault (currently running in disabled stub mode pending credential integration).

  • Unified Risk & Capability Analysis Guarantees migrations won't degrade your system by verifying context windows, output tokens, vision, tool usage, JSON mode, streaming, and cost impacts. Provides interactive cross-family model recommendations (including latest commercial and open-source models like Meta Llama, DeepSeek, and Qwen) with beautifully detailed capability deltas (improved, same, degraded, gained, lost).

  • AI-Assistant Rules & MCP Server Generates zero-config rule instructions (.mdc, CLAUDE.md, etc.) to guide Cursor, Claude Code, Copilot, and Windsurf, alongside an interactive MCP server.

Installation & Project Setup

# 1. Install chowkidar in your project directory
pip install chowkidar

# 2. Run the idempotent project-scoped setup
chowkidar setup

Project-Scoped Monitoring

The chowkidar setup command provides a zero-friction setup that configures everything for your project:

  1. Config & Database: Creates your config and database files under .chowkidar/ inside your project root.
  2. Initial Scan & Sync: Syncs provider deprecation tables and performs an immediate first-time scan on the repository to initialize alerts. (Note: IDE rule files are generated and updated automatically by the background daemon during monitoring cycles, or manually via chowkidar rules write).

You can customize behavior inside .chowkidar/config.toml or via the CLI:

# Change directory scan depth
chowkidar config discover_max_depth 5

Top 10 CLI Commands

Below are the 10 most relevant commands for daily use.

1. chowkidar setup

Project-scoped configuration, database initialization, provider sync, and initial repository scan.

2. chowkidar sync

Fetches and updates the local deprecation registry from providers.

3. chowkidar scan

Locates all LLM model references within your code and configuration files.

4. chowkidar check

Cross-references detected model strings against the deprecation registry.

5. chowkidar status

Displays watched projects, sync freshness, and background daemon health.

6. chowkidar watch

Registers a project path with the background daemon for periodic scans.

7. chowkidar daemon

Starts the background monitoring loop (sends alerts at 30, 15, 7, and 1 day before expiry).

8. chowkidar update

Previews (via --dry-run) or applies safe updates of deprecated model strings in structured configuration files (such as .env, JSON, YAML, TOML, and docker-compose.yml).

9. chowkidar mcp

Launches the stdio MCP server for active IDE-level AI assistant queries.

10. chowkidar report

Generates comprehensive Markdown, JSON, or interactive HTML reports.

See COMMANDS.md for the complete reference containing all available CLI commands.

Editor Integration

Passive AI Rules (Zero-Config)

AI editors auto-discover instructions in your project workspace. Chowkidar outputs non-destructive rule tables:

  • Cursor: .cursor/rules/chowkidar-alerts.mdc
  • Claude Code: .claude/rules/chowkidar-alerts.md
  • VS Code / Copilot: .github/copilot-instructions.md
  • Windsurf: .windsurfrules

MCP Server (Active)

Configure the stdio MCP server in your IDE's configuration file:

{
  "mcpServers": {
    "chowkidar": {
      "command": "chowkidar",
      "args": ["mcp"]
    }
  }
}

Security & Local Safety

  • Privacy First: No code, project paths, keys, or configurations are ever sent to external APIs.
  • Safe Writes: Modifying configuration files requires setting auto_update = true in your config. Every update atomic-writes via a temp file and saves a .chowkidar.bak file for automatic rollback.
  • Concurrent-Safe: Uses system-level filelock to protect files from concurrent daemon/CLI writes.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chowkidar-0.9.1.tar.gz (246.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

chowkidar-0.9.1-py3-none-any.whl (121.7 kB view details)

Uploaded Python 3

File details

Details for the file chowkidar-0.9.1.tar.gz.

File metadata

  • Download URL: chowkidar-0.9.1.tar.gz
  • Upload date:
  • Size: 246.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for chowkidar-0.9.1.tar.gz
Algorithm Hash digest
SHA256 a8219edab1d26500f0e6f9f295e548632163aef877723bda1d519734c17f1031
MD5 bb26ae82834c87300bbb017cdababfb5
BLAKE2b-256 e4fee96bd661e776159e5629f27f06427408eac597d13f972d97c5752b7b830c

See more details on using hashes here.

File details

Details for the file chowkidar-0.9.1-py3-none-any.whl.

File metadata

  • Download URL: chowkidar-0.9.1-py3-none-any.whl
  • Upload date:
  • Size: 121.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for chowkidar-0.9.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5856dc14c490d216d7d0602eb705aca8caf59e93477d07f1b7f4412036d31972
MD5 96f350d529a0fa81567a10108d531d34
BLAKE2b-256 82d7989dc2ce896a8a13ef2920f03edf48fcf02f921590002b0922e123b5b3d5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page