Skip to main content

A python CLI tool that helps developers to get and install useful AI resources

Project description

aidriven

CI codecov PyPI Python License: MIT

aidriven is a Python library that helps developers discover and manage AI-oriented IDEs and install useful AI resources such as skills, agents, and specs.


Features

  • IDE Discovery — detects locally installed AI-oriented IDEs (VS Code, Cursor, Kiro) across Windows, macOS, and Linux
  • Multi-installation support — handles multiple variants and channels (e.g., VS Code Stable and Insiders) as separate entries
  • Graceful degradation — partial or corrupted installations are returned with a reduced confidence level rather than silently dropped
  • Extensible providers — register custom IDE providers without touching built-in detection logic
  • Zero dependencies — stdlib only (pathlib, shutil, platform, subprocess, dataclasses, enum)

Installation

Requires Python 3.11+.

pip install aidriven

Or with uv:

uv add aidriven

Usage

Discover installed IDEs

from aidriven.discovery import discover_ides

result = discover_ides()

for ide in result.detected_ides:
    print(ide.identifier, ide.display_name, ide.version, ide.confidence)

Each DetectedIDE entry contains:

Field Type Description
identifier str Normalized IDE key (e.g. vscode, cursor, kiro)
display_name str Human-readable name
install_path Path Path to the installation
version str | None Resolved version string, or None if unavailable
channel str Variant channel (e.g. stable, insiders)
confidence ConfidenceLevel HIGH, MEDIUM, or LOW
detected_platform str Platform the detection ran on

Register a custom provider

from aidriven.discovery import discover_ides, ProviderRegistry

registry = ProviderRegistry()
registry.register(MyCustomIDEProvider())

result = discover_ides(registry=registry)

Development

This project uses uv for dependency management.

# Install dependencies (including dev extras)
uv sync

# Run tests with coverage
uv run pytest

# Lint
uv run ruff check .

# Format check
uv run ruff format --check .

# Type check
uv run mypy src/

# Serve docs locally
uv run mkdocs serve

Contributing

  1. Fork the repository and create a feature branch.
  2. Install dev dependencies and set up pre-commit hooks:
uv sync
uv tool install pre-commit
pre-commit install
  1. Make your changes, add tests, and ensure all checks pass:
pre-commit run --all-files
uv run pytest
  1. Open a pull request against main.

Bug reports and feature requests are welcome via GitHub Issues.


License

MIT — see LICENSE.

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

aidriven-0.1.3.tar.gz (284.3 kB view details)

Uploaded Source

Built Distribution

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

aidriven-0.1.3-py3-none-any.whl (14.8 kB view details)

Uploaded Python 3

File details

Details for the file aidriven-0.1.3.tar.gz.

File metadata

  • Download URL: aidriven-0.1.3.tar.gz
  • Upload date:
  • Size: 284.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for aidriven-0.1.3.tar.gz
Algorithm Hash digest
SHA256 201bf44794f1e8c8f04b058913d4c92b7510e8f09ac2b635e0748917789253d2
MD5 494e046a2bb64e7ce8aee8dcf516199e
BLAKE2b-256 d994a8f60f502a7529a8af9ca3a84ce9dba2188bf0dfec052666fd6ac1a2ddb9

See more details on using hashes here.

Provenance

The following attestation bundles were made for aidriven-0.1.3.tar.gz:

Publisher: publish.yml on ThiagoPanini/aidriven

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file aidriven-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: aidriven-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 14.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for aidriven-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 98b2684c296569736d7909e3eec4d484f840ceff2ab320d78a4d0fe557a9c8b3
MD5 922ffd64239c2cd222ef79548fc6a6d0
BLAKE2b-256 6a395910d939d17c938489d93fd5fd0276c1b40e628e7a288e288c2c49a538f5

See more details on using hashes here.

Provenance

The following attestation bundles were made for aidriven-0.1.3-py3-none-any.whl:

Publisher: publish.yml on ThiagoPanini/aidriven

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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