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.4.tar.gz (217.7 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.4-py3-none-any.whl (110.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: chowkidar-0.7.4.tar.gz
  • Upload date:
  • Size: 217.7 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.4.tar.gz
Algorithm Hash digest
SHA256 a0f65c0c440ba25da95325cc5032e0440b35bf9314b00de6926c82ed19483775
MD5 9d3525aca524d7ea20a9d3cd4edb6d05
BLAKE2b-256 74a99a4cd0edbadfb551046260b0a097179bb037a9917f9e0b34684beabe0e87

See more details on using hashes here.

File details

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

File metadata

  • Download URL: chowkidar-0.7.4-py3-none-any.whl
  • Upload date:
  • Size: 110.6 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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 d37a67bb2d0447175d847e768ab988e1bfe0095bc1f9970482ea828df934cc13
MD5 e180a0a10f99a1ea5a6e4c0ffa9f3f29
BLAKE2b-256 7df93fde82575b474e5053c1c69277dda11a0c0bf6ee0ec598902e89dac37b63

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