Skip to main content

deprecat

Developer tooling that scans Python codebases for third-party API (TPA) usage, and returns verified patch suggestions. Built for the Gemini 3 Hackathon.

Quickstart

  1. uv venv && source .venv/bin/activate
  2. uv sync --dev
  3. cp docs/config/.env.sample .env and insert your Google AI Studio credentials.
  4. deprecat doctor
  5. deprecat init — guided setup to choose monitored packages and scan cadence
  6. deprecat packages — inspect dependencies detected from pyproject.toml and highlight the monitored subset
  7. deprecat scan . --packages sentry-sdk,slack_sdk — produce a timestamped index under .deprecat/indexes/ for the packages you care about
  8. deprecat show -t — list available scan timestamps
  9. deprecat analyze --endpoint http://127.0.0.1:8080 — send the latest scan to the backend mock and view suggestions
  10. deprecat serve --reload — run the local FastAPI backend (for development/testing)

CLI

  • deprecat doctor — verifies Python version, detects .env, checks Google AI Studio credentials, and ensures .deprecat/logs plus .deprecat/checkpoints are writable. Outputs a summary table and stores the run in .deprecat/logs/doctor.log.
  • deprecat init — interactive setup for choosing monitored TPAs and scan frequency; writes .deprecat/config.json.
  • deprecat config [path] — display the stored configuration or tweak via --packages/--frequency.
  • deprecat packages [path] — list dependencies discovered from pyproject.toml/requirements and flag which ones are monitored.
  • deprecat analyze [path] — send the selected snapshot to the backend (--endpoint override) and render returned suggestions.
  • deprecat scan [path] — walks a Python repo, collects import usage, and writes a timestamped index JSON under .deprecat/indexes/. Use --packages pkg1,pkg2 (or set them in .deprecat/config.json) to limit scans to the TPAs you monitor.
  • deprecat show [path] — displays the most recent index snapshot (--timestamp <ts> for specific snapshots, -t/--timestamps to list all timestamps, --limit N/--all to control output size).
  • deprecat serve — start the mocked FastAPI backend (defaults to http://127.0.0.1:8080) so the CLI can call /analyze.

Future commands (review, schedule) will follow the same deprecat <command> pattern once implemented.

Configuration

  • deprecat init is the quickest way to bootstrap .deprecat/config.json.
  • Prefer editing the config via deprecat config --packages pkg1,pkg2 --frequency 7 when scripting.
  • A sample skeleton lives in docs/config/config.sample.json.
  • Runtime artifacts (logs, checkpoints, temporary folders) remain under .deprecat/ so deleting that directory resets state.

Backend Service

  • The mocked FastAPI backend lives at src/deprecat/backends/server.py with /health and /analyze endpoints.
  • Run deprecat serve-backend --reload while developing to expose the API locally. The CLI will target http://127.0.0.1:8000 by default until the real remote service is wired up.

Project Layout

src/deprecat/       # CLI, scanner, backend clients, scheduler
assets/samples/     # Mock manifests + payloads
.deprecat/          # Logs and checkpoints (git-ignored)
tests/              # Pytest suites mirroring source layout
docs/               # Architecture notes, UI flows, config samples

Contributing

  • Follow the workflow in AGENTS.md for coding standards, testing, and checkpoint hand-offs.
  • Every feature addition must create a checkpoint under .deprecat/checkpoints/<timestamp>-<feature>/ with diffs, verification output, and TODOs for the next agent.

Metadata

Release files for deprecat-agent 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for deprecat-agent 0.1.3
File Size Uploaded Provenance
deprecat_agent-0.1.3.tar.gz 51.5 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for deprecat-agent 0.1.3
File Interpreter ABI Platform
deprecat_agent-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 75.1 kB

Release files / deprecat_agent-0.1.3.tar.gz

Download URL deprecat_agent-0.1.3.tar.gz
Size 51.5 kB
Tags Source
SHA-256 checksum
How to use checksums
98c4bcf2559ecf4a300ea4549967e2b181976d7d4fd4d8d8e5a83473e077f7cc
BLAKE2b-256 checksum
How to use checksums
244fdfb35810727572219633a1f8b7c5cbe406e77d725ebe5a15d7355d731788
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.9.15 {"installer":{"name":"uv","version":"0.9.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / deprecat_agent-0.1.3-py3-none-any.whl

Download URL deprecat_agent-0.1.3-py3-none-any.whl
Size 23.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ce12e7c3ba35d61384fc10958c42bf5fbe208b62831a3d6cd08a5f62f0027787
BLAKE2b-256 checksum
How to use checksums
c8da2708e8dce19693158b54e8a48a03c47d8d1d5f86e0cf364d41e06dbed522
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.9.15 {"installer":{"name":"uv","version":"0.9.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for deprecat-agent 0.1.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.3 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page