๐ HarmonAI III ๐
๏ฝ AI-Powered Automated Repository Management Template ๏ฝ
> [!IMPORTANT]
> HarmonAI III is a template repository developed using [cline (formerly Claude Dev)](https://github.com/clinebot/cline), [SourceSage](https://github.com/Sunwood-ai-labs/SourceSage), and [claude.ai](https://claude.ai/). The majority of release notes, README, and commit messages are generated using the latest AI technologies.
## ๐ Project Overview
HarmonAI III is an innovative **AI repository starter kit** integrating AIRA and IRIS. This repository aims to dramatically improve developer efficiency by providing the structure and workflow for AI development projects leveraging LLMs. Version: `v1.2.0`
## ๐ Latest News
- ๐ v1.2.0 released: Added GitHub Shields to the README, added collaborator invitation functionality, and updated documentation.
## โจ Key Features
1. **Integrated AI Toolset**: Provides the functionality of AIRA and IRIS in a single package.
2. **Ready to Use**: Easily create a repository with a high-quality initial structure by using it as a template.
3. **Automated Development Workflow**: Automates commit message generation, release note creation, and issue management.
4. **Multilingual Support**: Supports international project deployment through automatic README translation.
5. **Flexible Customization**: Easily adaptable to the needs of your project.
6. **Automated Collaborator Invitation**: Collaborator invitation script using the GitHub API.
## ๐ง How to Use
### AIRA Example:
```bash
aira --mode sourcesage commit --config=.aira\config.dev.commit.yml --ss-model-name="gpt-4o-mini" --llm-output="llm_output.md"
```
### IRIS Example:
Refer to the documentation for each component for detailed usage instructions.
## ๐ฆ Installation Instructions
1. Use this repository as a template to create a new repository.
2. Clone the repository locally.
3. Install the necessary dependencies:
```bash
pip install -r requirements.txt
```
4. Customize the AIRA and IRIS configuration files.
5. Check the GitHub Actions settings and configure environment variables as needed.
6. Open the `.github/release_notes/.sourcesage_releasenotes_iris.yml` file and change the value of `repo-name:` to your new repository name.
## ๐ฟ Setting up the Environment
Follow these steps to set up the HarmonAI III environment:
1. Create a virtual environment:
```bash
python3 -m venv .venv
```
This creates a virtual environment in the `.venv` directory.
2. Activate the virtual environment:
```bash
source .venv/bin/activate # Linux/macOS
.venv\Scripts\activate # Windows
```
3. Install dependencies:
```bash
pip install -r requirements.txt
```
These steps will prepare your development environment for HarmonAI III.
## ๐ Main Components
### ๐ค [AIRA (AI-Integrated Repository for Accelerated Development)](https://github.com/Sunwood-ai-labs/AIRA)
- Automated repository creation
- Automated commit message generation
### ๐ [IRIS (Intelligent Repository Issue Solver)](https://github.com/Sunwood-ai-labs/IRIS)
- Automated issue classification
- Automated solution suggestions
- Automated release note generation
- Automated README translation
## ๐ค Automated Collaborator Invitation
HarmonAI III includes a script to automatically invite collaborators to the GitHub repository. Use it as follows:
1. Create a `.env` file and set the necessary tokens:
```
# GitHub access token (for collaborator invitation)
GITHUB_TOKEN=your_github_personal_access_token_here
# The following are examples of tokens that may be used by other functions. It's convenient to list them for later use.
# GITHUB_ACCESS_TOKEN=ghp_xxxxx
# YOUR_PERSONAL_ACCESS_TOKEN_IRIS=ghp_yyyyy
# GEMINI_API_KEY=AIzzzzz
```
Note: Include the `.env` file in `.gitignore` to prevent it from being committed to the repository.
2. Run the following command to invite a collaborator:
```bash
python .github/github_add_collaborator.py Sunwood-ai-labs/HarmonAI_III username_to_invite
```
Replace `username_to_invite` with the GitHub username you want to invite.
3. Once the script runs successfully, a collaborator invitation will be sent to the specified user.
Cautions:
- This script requires the GitHub token to have appropriate permissions (the `repo` scope).
- When using it for an organization's repository, ensure that appropriate permissions are granted in the organization's settings.
- For security reasons, update tokens regularly and grant only the minimum necessary permissions.
- Never commit information including the `.env` file or tokens to a public repository.
This feature simplifies the process of adding new contributors to the project. You can efficiently expand your team while maintaining security.
## ๐ Process Flow
```mermaid
%%{init:{'theme':'base','themeVariables':{'primaryColor':'#024959','primaryTextColor':'#F2C335','primaryBorderColor':'#F2AE30','lineColor':'#A1A2A6','secondaryColor':'#593E25','tertiaryColor':'#F2C335','noteTextColor':'#024959','noteBkgColor':'#F2C335','textColor':'#024959','fontSize':'18px'}}}%%
graph LR
A[Start] --> B[Repository Conception and Naming]
B -->|Human Action| C[HarmonAI III Repository Initialization]
C -->|Automated| D[Development Work]
D -->|Human Action| E[AIRA Automated Commits]
E --> H[IRIS Release Note Generation]
H --> I[IRIS Documentation Translation]
I --> J[Release]
J --> K[End]
class B,D,G human;
class E aira;
class F,H,I iris;
class C auto;
class A,J,K process;
```
## ๐ค Contributions
HarmonAI III welcomes contributions from the community as an open-source project. Help improve this template repository through bug reports, feature requests, and pull requests.
## ๐ License
HarmonAI III is released under the [MIT License](LICENSE).
## ๐ Acknowledgments
HarmonAI III has been inspired by many open-source projects. We especially thank the developers of AIRA and IRIS. We also thank iris-s-coon and Maki.
---
HarmonAI III is an excellent starter kit for achieving an AI-driven development process. Let's start developing innovative AI projects based on this template!