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 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.

  • 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.7.5.tar.gz (220.6 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.7.5-py3-none-any.whl (110.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: chowkidar-0.7.5.tar.gz
  • Upload date:
  • Size: 220.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.13.7 Darwin/25.4.0

File hashes

Hashes for chowkidar-0.7.5.tar.gz
Algorithm Hash digest
SHA256 df194a2a38b86f51851024c993ffac1d7c2a65e3c67312e44869c27d523d226e
MD5 7458aa4917cfa4eee508e5e0246cce6a
BLAKE2b-256 a14fdb7b3d5b6fd3359e4533ca418df8b4ec53b5d04737b23a66cbb944711ec7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: chowkidar-0.7.5-py3-none-any.whl
  • Upload date:
  • Size: 110.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.13.7 Darwin/25.4.0

File hashes

Hashes for chowkidar-0.7.5-py3-none-any.whl
Algorithm Hash digest
SHA256 b60d24bed21dd4d9cbbcbb95c8863cbfbc15101be5153cd10d569c44268c1223
MD5 9ecdbbc9000fd63c15308340b330eb02
BLAKE2b-256 adc15ac0b146bfe65efed18c50c672770955e5bb0bc3b835a7c46fd9d9c64e6b

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