Skip to main content

AI-powered directory scanner and project analyzer

Project description

AILS - AI-Powered Directory Scanner & Project Analyzer

PyPI version Python Support License: MIT

A powerful command-line tool that intelligently scans directories, analyzes project structures, and leverages AI to provide deep insights about your codebase. Perfect for developers who want to understand complex projects quickly or document their code automatically.

eatures

  • AI-Powered Analysis - Leverages advanced language models to understand and describe your project structure
  • Smart Directory Scanning - Efficiently scans and categorizes files with intelligent .gitignore support
  • Multi-language Support - Full interface support for English and Chinese
  • Interactive Configuration - Easy-to-use wizard for setting up API credentials
  • Secure & Private - User-specific configuration storage keeps credentials safe
  • Vector Search - Advanced semantic search capabilities for code analysis
  • Beautiful CLI - Clean, colorful terminal interface with progress indicators
  • Auto-Recovery - Smart error handling with automatic configuration retry

Quick Start

Installation

Install AILS directly from PyPI:

uvx ails-cli-tool

First Run

  1. Start analyzing your projects:
    ails
    

That's it! AILS will guide you through the rest.

Detailed Installation

PyPI (Recommended)

For stable releases:

uvx ails-cli-tool

System Requirements

  • Python 3.8 or higher
  • uvx (included with uv)
  • Internet connection for AI API calls

Configuration

Initial Setup

Run the configuration wizard to set up your AI API credentials:

ails-config

The wizard will guide you through:

  1. Choosing between recommended configuration or manual setup
  2. Entering your API credentials
  3. Testing the connection
  4. Saving the configuration securely

Configuration Options

AILS requires three main settings:

Setting Description Example
AI_API_KEY Your API key for the AI service sk-xxxxxxxxxxxxxxxx
AI_API_URL Base URL for the API endpoint https://api.openai.com/v1
AI_MODEL Model name to use gpt-4, gpt-3.5-turbo

Recommended Configuration

AILS offers a one-click recommended configuration that:

  • Uses pre-configured, tested API settings
  • Automatically validates the connection
  • Gets you up and running in seconds

Simply select "Yes" when prompted during ails-config.

Manual Configuration

For custom API providers or specific requirements:

  1. Run ails-config
  2. Choose manual configuration
  3. Enter your specific:
    • API Key
    • API URL (must end in /v1)
    • Model name

Configuration Storage

Configurations are stored securely in:

  • Windows: %APPDATA%\AILS\config
  • macOS/Linux: ~/.config/ails/config

This ensures your credentials are:

  • Separated from project files
  • Accessible across all projects
  • Easy to update or remove

Usage

Basic Usage

Scan and analyze your current directory:

ails

Language Settings

Switch interface language using environment variables:

English (default):

export AILS_LANG=en
ails

Chinese:

export AILS_LANG=zh
ails

Windows users:

$env:AILS_LANG="zh"
ails

Error Recovery

If AILS encounters an authentication error (401), it will:

  1. Detect the issue automatically
  2. Ask if you want to use recommended configuration
  3. Retry immediately after successful configuration

No need to restart the program!

Advanced Features

Vector Search Integration

AILS includes semantic search capabilities using sqlite-vec:

  • Find related code segments
  • Discover similar functionality
  • Navigate large codebases efficiently

Smart File Filtering

Automatically respects:

  • .gitignore patterns
  • .kilocodeignore custom patterns
  • Standard exclusion rules for common build artifacts

Enhanced Prompts

AILS intelligently enhances prompts to:

  • Add relevant context
  • Include file metadata
  • Optimize token usage

Troubleshooting

Invalid Token Error (401)

Symptom: Error code: 401 - invalid token

Solution:

  1. Select "Yes" when prompted to use recommended configuration
  2. Or run ails-config manually
  3. Verify your API key is correct and active

Connection Timeout

Symptom: API request timeout

Solution:

  • Check your internet connection
  • Verify the API URL is accessible
  • Try using a different network or VPN if blocked

Configuration Not Loading

Symptom: Program keeps asking for configuration

Solution:

# Verify configuration file exists
# Windows:
type %APPDATA%\AILS\config

# macOS/Linux:
cat ~/.config/ails/config

# Re-run configuration wizard
ails-config

Import Errors

Symptom: ModuleNotFoundError

Solution:

# Reinstall with all dependencies
uvx --force ails-cli-tool

Dependencies

AILS requires the following packages (automatically installed):

  • openai>=1.0.0 - AI API client
  • python-dotenv>=1.0.0 - Environment configuration
  • requests>=2.25.0 - HTTP requests
  • sqlite-vec>=0.1.0 - Vector search
  • pathspec>=0.11.0 - Pattern matching
  • pyperclip>=1.8.0 - Clipboard operations

Acknowledgments

  • Built with ❤️ by the AILS team
  • Powered by OpenAI and compatible AI services
  • Thanks to all contributors and users

Links


Made with ❤️ for developers who want to understand their code better.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

ails_cli_tool-1.0.2-cp312-cp312-win_amd64.whl (788.5 kB view details)

Uploaded CPython 3.12Windows x86-64

ails_cli_tool-1.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

ails_cli_tool-1.0.2-cp312-cp312-macosx_11_0_arm64.whl (805.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

ails_cli_tool-1.0.2-cp312-cp312-macosx_10_9_x86_64.whl (860.0 kB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

ails_cli_tool-1.0.2-cp311-cp311-win_amd64.whl (820.1 kB view details)

Uploaded CPython 3.11Windows x86-64

ails_cli_tool-1.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

ails_cli_tool-1.0.2-cp311-cp311-macosx_11_0_arm64.whl (838.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

ails_cli_tool-1.0.2-cp311-cp311-macosx_10_9_x86_64.whl (919.0 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

ails_cli_tool-1.0.2-cp310-cp310-win_amd64.whl (816.7 kB view details)

Uploaded CPython 3.10Windows x86-64

ails_cli_tool-1.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

ails_cli_tool-1.0.2-cp310-cp310-macosx_11_0_arm64.whl (846.8 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

ails_cli_tool-1.0.2-cp310-cp310-macosx_10_9_x86_64.whl (926.5 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

ails_cli_tool-1.0.2-cp39-cp39-win_amd64.whl (820.3 kB view details)

Uploaded CPython 3.9Windows x86-64

ails_cli_tool-1.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.6 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

ails_cli_tool-1.0.2-cp39-cp39-macosx_11_0_arm64.whl (851.8 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

ails_cli_tool-1.0.2-cp39-cp39-macosx_10_9_x86_64.whl (931.7 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

ails_cli_tool-1.0.2-cp38-cp38-win_amd64.whl (842.4 kB view details)

Uploaded CPython 3.8Windows x86-64

ails_cli_tool-1.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.7 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

ails_cli_tool-1.0.2-cp38-cp38-macosx_11_0_arm64.whl (884.0 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

ails_cli_tool-1.0.2-cp38-cp38-macosx_10_9_x86_64.whl (963.1 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

File details

Details for the file ails_cli_tool-1.0.2-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 3be1042271b502c33ddf79534fc63f4d24980b1a9f683c54bbecf234ee01c238
MD5 cf53390dcd27a1d56b37860633ca7e5c
BLAKE2b-256 0a7f6616d2ee51f33eeab6e060289157f0d2a8deabc315096045fa031e0654a4

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 172bfefad48f4ac48519c650bced7c508e7795c87e88e0e93e3754bade458d2b
MD5 4b5589c8b7ec0904d9ae1b036df72fe4
BLAKE2b-256 40cb30f7fe44455417e37a842e2e293e8ee2fd0a2b962bf1f992cd5ee1b1d66d

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 01f04cb8347517c31d268962fe8a5c8d545d315b284d9fae6c27b6a1f340f30c
MD5 6a87f688c389ffabd79b46bd940558a5
BLAKE2b-256 c5f62fdac69573f407228df11be3e540ca53429ff100b11ce121116bd529926f

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 5af3c5a882c83b0b00208f1566cef9408af164b1b589ac5b23ad55c8c44f6a1a
MD5 11ecdb056a0f8edd5d6dc6833b5fdc50
BLAKE2b-256 11845570c30de1782b26d23cf70ef8e164ccdffa0a91f0e081461b36659ded12

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 5b8a98223aea93b3582f5fdd708de355ba471b8503da88370711159e6d4bf4cb
MD5 0a07b165785169080650413a4ebc8a11
BLAKE2b-256 b7ce8e108290b33945f640e4fc7031bf9e23e3a40d37fb5b7084d7498bf1f2f8

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f453ea59e0caee1ca819daeaae14b1397e0b0a5de5faa8a87d5342a015514e06
MD5 74d4637db2dc24e40f00038eff31de9b
BLAKE2b-256 b9e06f41d3fae2e78d30f7d7c7937b158df989fb9414b0d3bd9d4ef6ee60a03d

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 59a1b4aaf355b92c1866687ef20247b91311775c7ba2a38ba84b504064439512
MD5 9186fe5d3c1a0ea8bb9a47bb445396b1
BLAKE2b-256 2f553336afb44ffae637d507602e9e94fcb893797316ab8ec806eeb010c3449f

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 293648e652eaf67d26f6fca42c9a6e5577c7895bbcd35c5b2642e64643af7db0
MD5 4357e1446120a4ee623d96ba7fa54b84
BLAKE2b-256 28fc424b35a1eeb835aa949c78e0660157344aa30903daa724617b5d57c53a46

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 3a417d59273345fdbe6b52805a1a72cd673ab76d2a6d86e5480ee1e927888d95
MD5 744075ddd91c0ccd5f5feca17d08bb7f
BLAKE2b-256 e44098ae613cc72e2363268bddaa3c8a4f516b6fea5b2c455542788bf154562b

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 aae4447c3918ce72218420ddbebf2b2d351a466eee3c2c0a8a5118d8cebcdb28
MD5 e7baab924923bd48978b873b12136619
BLAKE2b-256 408412051e4c45f7fdf2bf6800d63050fe00d3bb60b88498d890b658e759a41b

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3b0aecb498da7960feeaa33da38cfbea5e88cddb8c4b09509369606d7172e340
MD5 cec267c703edd84f2d02f07148789216
BLAKE2b-256 6f7a847114bc21cb0022079085cd6e9a66a278a4ac1c25d8c8e9a51655281a87

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 aa47402d59e789bf4682283c9ebf5f5565008305cebb580323aafadf2dc0d62c
MD5 31bff1bc8ff8005d3cdaeb8cc775566c
BLAKE2b-256 9799223428ec0b74fb1ddf952a4d5dc975c928ade45d1ab9f0439699ab0fdb48

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 1e137d6c62e7ef4ddf230a0285e49c298a7af5511a11411c313b61c58d22fa54
MD5 447d87f07ae496600fb5d1d9cdd7cc21
BLAKE2b-256 72a566b5f82021aca7dd9495b50d5900917ad4a9f65575ce73d109113c2ae0b4

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 66e74eb0a1674919b22df8f8afbbbfa3549b1ef219813b130e00af3d421a834f
MD5 e23c5b8234156e9326c8d3e091cd13b5
BLAKE2b-256 4a1373c3534e7426489bbbbde9f156e1668d5bcc7583396504a3b7b03e5ececc

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 753e411ece13a50b2538671ceb5607ff345e4a258668e64d05e19c6505337bea
MD5 eba2f5065034ca110a524bc448392887
BLAKE2b-256 843283292a71d50d13e80f6faa8835807b7c09cb4a79c3f685a09a27bdd8b465

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 0bc49447d36b980be83641c06d1b9ca8ef60a82a519c03540397a5fce16d8019
MD5 208fe2b5dc6891518454b3a820bc38ae
BLAKE2b-256 49f8542ecf0758f556992dbac3f1f4cabd416e6c5592fa92b911e7ac471dcaea

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 3fe45ef785ff18f6e79f581a8877fde03b0ddacb105b7ff96a87e7023ea5af21
MD5 29f278902e01c1595f5a772e880effd3
BLAKE2b-256 620a218f40fa206ee94c93b8d24ba69aafa7c7aa165c4d5ec73156b4e3c1af79

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ff546fb0fd843e1f409c6964cf6d791a95653fd05e186ac86d05b84f37ede378
MD5 6961483add8a874f554c01b3fc0abc82
BLAKE2b-256 533af5d76c0c3dce92345ce182093f053f89d32207dc5e8dd8f78e7fcefdd549

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8465ec01c6bb49a3ccd0ba0cdf46cbf662f2b34850544e1e1d6c92920b5408dc
MD5 20e2d583ef29d11d44b62fff20c0c69b
BLAKE2b-256 643955394ef0f684e6dd27d6b23c99b4eb593cf59c269b7ba071a757f383e1df

See more details on using hashes here.

File details

Details for the file ails_cli_tool-1.0.2-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ails_cli_tool-1.0.2-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f8ae4deabcec947b84bbfb4fc431f516029dc9ebfe3e2a7267eb11bee67c526f
MD5 d19b083fca0270f13e1a92424f09ef84
BLAKE2b-256 411de0aebdcbce567c8116631781561841141fea45f5db2ff03d4e5779dffeaa

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