AI-powered CLI tool to analyze Apple crash files
Project description
Sandevistan
AI-powered CLI tool that analyzes Apple IPS crash files using LangGraph and Google Gemini Flash.
Installation
Option 1: Homebrew (macOS)
brew tap Dil4rd/sandevistan
brew install sandevistan
Option 2: uvx (fast, cross-platform)
# Install from PyPI (when published)
uvx sandevistan
# Or run locally without installation
uvx --from . sandy --help
Option 3: pipx
pipx install sandevistan
Option 4: Development mode
uv pip install -e .
Setup
- Configure your Google API key:
sandy config --api-key YOUR_KEY
Get your API key at: https://makersuite.google.com/app/apikey
Usage
Analyze crash files
sandy analyze <path/to/crash/folder>
Example:
sandy analyze ~/Library/Logs/DiagnosticReports/
Configuration commands
sandy config --show # Display current config
sandy config --path # Show config file location
sandy config --api-key YOUR_KEY # Set/update API key
How it works
Sandevistan will:
- Scan the specified folder for
.ipsfiles - Analyze each crash file using Google Gemini Flash
- Output plain-language explanations including:
- What crashed
- Why it crashed (root cause)
- Key technical details
Requirements
- Python 3.11+
- Google API key
uvpackage manager (install from https://github.com/astral-sh/uv)
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sandevistan-0.2.3.tar.gz.
File metadata
- Download URL: sandevistan-0.2.3.tar.gz
- Upload date:
- Size: 6.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ea2069c3cce7746061334521c1f6d1a2abbdcfc8c2487015a3212c7de0106499
|
|
| MD5 |
1d6963b86dabc413dcb36d80af830058
|
|
| BLAKE2b-256 |
ef46387b896fc6a40d91042e6a6cb11edba8a555bd7b9e922aff8ca43e222fc7
|
Provenance
The following attestation bundles were made for sandevistan-0.2.3.tar.gz:
Publisher:
pypi-publish.yml on Dil4rd/sandevistan
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sandevistan-0.2.3.tar.gz -
Subject digest:
ea2069c3cce7746061334521c1f6d1a2abbdcfc8c2487015a3212c7de0106499 - Sigstore transparency entry: 798790296
- Sigstore integration time:
-
Permalink:
Dil4rd/sandevistan@23517d3e13596382533b3312b1a823db5cb9f2e0 -
Branch / Tag:
refs/tags/v0.2.3 - Owner: https://github.com/Dil4rd
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@23517d3e13596382533b3312b1a823db5cb9f2e0 -
Trigger Event:
push
-
Statement type:
File details
Details for the file sandevistan-0.2.3-py3-none-any.whl.
File metadata
- Download URL: sandevistan-0.2.3-py3-none-any.whl
- Upload date:
- Size: 6.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
452d3f75b82647e312f81052ae6fef28082811585fd3050300f8368b644d30b0
|
|
| MD5 |
454a3612ca94c1d61f4dfd1250cbf789
|
|
| BLAKE2b-256 |
8fdceea6c98eb97f5f03e87c716125e6fcca7cbe134d73b378c8e964d1aaa453
|
Provenance
The following attestation bundles were made for sandevistan-0.2.3-py3-none-any.whl:
Publisher:
pypi-publish.yml on Dil4rd/sandevistan
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sandevistan-0.2.3-py3-none-any.whl -
Subject digest:
452d3f75b82647e312f81052ae6fef28082811585fd3050300f8368b644d30b0 - Sigstore transparency entry: 798790323
- Sigstore integration time:
-
Permalink:
Dil4rd/sandevistan@23517d3e13596382533b3312b1a823db5cb9f2e0 -
Branch / Tag:
refs/tags/v0.2.3 - Owner: https://github.com/Dil4rd
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@23517d3e13596382533b3312b1a823db5cb9f2e0 -
Trigger Event:
push
-
Statement type: