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
uv venv && source .venv/bin/activateuv sync --devcp docs/config/.env.sample .envand insert your Google AI Studio credentials.deprecat doctordeprecat init— guided setup to choose monitored packages and scan cadencedeprecat packages— inspect dependencies detected frompyproject.tomland highlight the monitored subsetdeprecat scan . --packages sentry-sdk,slack_sdk— produce a timestamped index under.deprecat/indexes/for the packages you care aboutdeprecat show -t— list available scan timestampsdeprecat analyze --endpoint http://127.0.0.1:8080— send the latest scan to the backend mock and view suggestionsdeprecat 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/logsplus.deprecat/checkpointsare 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 frompyproject.toml/requirementsand flag which ones are monitored.deprecat analyze [path]— send the selected snapshot to the backend (--endpointoverride) 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/--timestampsto list all timestamps,--limit N/--allto control output size).deprecat serve— start the mocked FastAPI backend (defaults tohttp://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 initis the quickest way to bootstrap.deprecat/config.json.- Prefer editing the config via
deprecat config --packages pkg1,pkg2 --frequency 7when 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.pywith/healthand/analyzeendpoints. - Run
deprecat serve-backend --reloadwhile developing to expose the API locally. The CLI will targethttp://127.0.0.1:8000by 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.mdfor 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)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| deprecat_agent-0.1.3.tar.gz | 51.5 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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.