Metadata-Version: 2.3
Name: safa
Version: 0.1.0
Summary: A command line tool for running SAFA in the command line.
Author-email: Alberto Rodriguez <alberto@safa.ai.com>
License: MIT
Requires-Python: >=3.10
Requires-Dist: anthropic==0.30.1
Requires-Dist: certifi==2024.6.2
Requires-Dist: gitpython==3.1.43
Requires-Dist: langchain-anthropic==0.1.19
Requires-Dist: langchain-chroma==0.1.2
Requires-Dist: langchain-community==0.2.6
Requires-Dist: langchain-core==0.2.11
Requires-Dist: langchain-huggingface==0.0.3
Requires-Dist: langchain-text-splitters==0.2.2
Requires-Dist: langchain==0.2.6
Requires-Dist: python-dotenv==1.0.1
Requires-Dist: requests==2.32.3
Requires-Dist: sentence-transformers==3.0.1
Description-Content-Type: text/markdown

# Overview

Generates commit summary for currently staged changes. Commits changes if user approves.

# Instructions

1. Create venv with python>=3.10
2. Install requirements.txt
3. Create `.env` file with:
    - SAFA_EMAIL: Email of SAFA account.
    - SAFA_PASSWORD: Password of SAFA account.
    - SAFA_VERSION_ID: Version ID of project to include documentation for.

# TODO:

- [ ] Move store to config so that it can be accessed everywhere
- [ ] Be able to configure defaults
    - [x] Account
    - [x] Project
    - [x] Cache File
    - [X] LLM Settings
- [ ] Chat with your project
- [ ] Task manager (e.g. embedding change impact analysis, llm lookie look, and change recommendation)
- [ ] What does this line do? (feat; AST Summarization)
- [x] Be able to re-summarize the artifacts that got changed in commit.
- [x] Be able to search only artifacts of specific type.
- [x] MVP:
    - Create new project / select existing
    - Import project
    - Summarize project
    - Search Project
    - Commit Project
