Metadata-Version: 2.4
Name: astonai
Version: 0.1.19
Summary: Test Intelligence Engine
Author: Aston AI
License: MIT
Keywords: aston,test coverage,static analysis
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: numpy>=1.22.0
Requires-Dist: neo4j>=5.5.0
Requires-Dist: pydantic>=1.10.0
Requires-Dist: click>=8.1.3
Requires-Dist: rich>=12.5.1
Requires-Dist: PyYAML>=6.0
Requires-Dist: gitpython>=3.1.0
Requires-Dist: astgraph<0.2.0,>=0.1.0
Provides-Extra: minimal
Provides-Extra: test
Requires-Dist: pytest>=8.0.0; extra == "test"
Requires-Dist: pytest-cov>=4.1.0; extra == "test"
Requires-Dist: pytest-xdist>=3.0.0; extra == "test"
Provides-Extra: coverage
Requires-Dist: pytest-cov>=4.1.0; extra == "coverage"
Requires-Dist: coverage-conditional-plugin>=0.9.0; extra == "coverage"
Provides-Extra: all
Requires-Dist: pytest>=8.0.0; extra == "all"
Requires-Dist: pytest-cov>=4.1.0; extra == "all"
Requires-Dist: pytest-xdist>=3.0.0; extra == "all"
Requires-Dist: coverage-conditional-plugin>=0.9.0; extra == "all"

# Aston AI

Aston is a code intelligence system for parsing, analyzing, and finding test coverage gaps in your code.

## Installation

```bash
# Install from PyPI
pip install astonai
```

## Quick Start

```bash
# Initialize your repository
aston init --offline

# Generate knowledge graph relationships
aston graph build

# View knowledge graph statistics
aston graph stats
```

## Core Commands

### Repository Initialization

```bash
# Initialize repository and create knowledge graph
aston init [--offline]
```

Options:
- `--offline`: Skip Neo4j integration and work with local files only (default)
- `--online`: Use Neo4j if available (broken right now)

### Test Coverage

```bash
# Run tests with coverage
aston test

# Find testing gaps
aston coverage [--threshold 80] [--json results.json] [--exit-on-gap]
```

Options:
- `--threshold`: Minimum coverage percentage (default: 0)
- `--json`: Output results in JSON format
- `--exit-on-gap`: Return code 1 if gaps found (useful for CI)
- `--coverage-file`: Specify custom coverage file location

### Knowledge Graph

```bash
# Build edge relationships between nodes
aston graph build

# View statistics about the knowledge graph
aston graph stats

# Export graph to DOT format
aston graph export [--output graph.dot] [--filter CALLS,IMPORTS] [--open]

# Open interactive graph viewer in browser
aston graph view [--filter CALLS,IMPORTS]
```

The graph command provides:
- `build`: Analyzes your codebase to extract CALLS and IMPORTS edges
- `stats`: Displays node and edge statistics
- `export`: Converts the graph to Graphviz DOT format
- `view`: Opens an interactive D3.js visualization in your browser

### Environment Check

```bash
# Check if all required dependencies are installed
aston check
```

Options:
- `--no-env-check`: Skip environment dependency check (also works with any command)

## Repository-Centric Design

Aston follows a repository-centric approach:
- All operations are relative to the repository root (current directory)
- Data is stored in `.testindex` directory at the repository root
- Path resolution is normalized for consistent matching
- Works with both offline and Neo4j storage

## Environment Variables

```
DEBUG=1                      # Enable debug logging
NEO4J_URI=bolt://localhost:7687  # Optional Neo4j connection
NEO4J_USER=neo4j            # Optional Neo4j username
NEO4J_PASS=password         # Optional Neo4j password
ASTON_NO_ENV_CHECK=1        # Skip environment dependency check
```

