[ð Website] ⢠[ð± GitHub] [ðŠ Twitter] ⢠[ð Official Blog]
[!IMPORTANT] ãã®ãªããžããªã®ãªãªãŒã¹ããŒããREADMEãã³ãããã¡ãã»ãŒãžã®9å²è¿ãã¯claude.aiãChatGPT4ã掻çšããAIRA, SourceSage, Gaiah, HarmonAI_IIã§çæããŠããŸãã
I.R.I.SïŒIntelligent Repository Issue SolverïŒã¯ãGitHubãªããžããªã®ã€ã·ã¥ãŒç®¡çãåçã«åäžãããã€ã³ããªãžã§ã³ãã¢ã·ã¹ã¿ã³ãã§ããæ©æ¢°åŠç¿ãšèªç¶èšèªåŠçã掻çšããã€ã·ã¥ãŒã®èªååé¡ãåªå é äœä»ãã解決çã®ææ¡ãè¡ããŸãã
åããŠã®æ¹ã§ãç°¡åã«äœ¿ãå§ããããããã以äžã§ã¯è©³ãã説æãšæé ãèšèŒããŠããŸãã
IRISã¯ä»¥äžã®3ã€ã®äž»èŠãªèªååé åã§åŒ·åãªæ©èœãæäŸããŸãïŒ
ã€ã³ããªãžã§ã³ããªèªåã©ããªã³ã°ïŒ
詳现ãªã€ã·ã¥ãŒåæãšå¯Ÿå¿ïŒ
READMEã®èªåã¡ã³ããã³ã¹ïŒ
å€èšèªãµããŒãïŒ
IRISãå°å ¥ããããšã§ãéçºããŒã ã¯ã³ã¢éçºæ¥åã«éäžã§ãããããžã§ã¯ã管çã®å¹çãå€§å¹ ã«åäžããŸãã
IRIS/
ââ .github/
â ââ scripts/
â â ââ deep_comment.py
â â ââ suggest_changes.py
â â ââ label_adder.py
â â ââ generate_github_release_notes.py
â ââ workflows/
â â ââ issue-deep-comment.yml
â â ââ issue-review.yml
â â ââ generate-release-notes.yml
â ââ services/
â â ââ github_service.py
â ââ config.py
ââ docs/
â ââ .sourcesage_releasenotes.yml
ââ README.md
IRISã¯ä»¥äžã®2ã€ã®æ¹æ³ã§ã»ããã¢ããã§ããŸãïŒ
iris-coonã³ãã³ãã䜿çšããæ¹æ³
IRISãã»ããã¢ããããæãç°¡åãªæ¹æ³ã¯ãiris-coon
ã³ãã³ãã䜿çšããããšã§ãã以äžã®ã³ãã³ãã§ã€ã³ã¹ããŒã«ãšã»ããã¢ãããã§ããŸãïŒ
pip install iris-coon
iris-coon
ãã®ã³ãã³ããå®è¡ãããšãå¿ èŠãªãã¡ã€ã«ãšãã©ã«ããçŸåšã®ãã£ã¬ã¯ããªã«ã³ããŒãããŸãã
æåã§.githubãã©ã«ããã³ããŒããæ¹æ³
IRISã®æ©èœãæ¢åã®ãããžã§ã¯ãã«è¿œå ãããå Žåã¯ã以äžã®æé ã§.githubãã©ã«ããçŽæ¥ã³ããŒã§ããŸãïŒ
git clone https://github.com/Sunwood-ai-labs/IRIS.git
cp -r IRIS/.github /path/to/your/project/
ãã®æ¹æ³ã§ã¯ãIRISã®.githubãã©ã«ããšãã®å 容ããæå®ãããããžã§ã¯ããã£ã¬ã¯ããªã«ã³ããŒãããŸããå¿ èŠã«å¿ããŠãã³ããŒãããã¡ã€ã«ãç·šéããŠãããžã§ã¯ãã«åãããŠã«ã¹ã¿ãã€ãºã§ããŸãã
IRISãæ£åžžã«æ©èœãããããã«ã¯ã以äžã®GitHubã·ãŒã¯ã¬ãããèšå®ããå¿ èŠããããŸããããã¯ã©ã¡ãã®ã»ããã¢ããæ¹æ³ãéžæããå Žåãå¿ èŠãªæé ã§ãã
ã·ãŒã¯ã¬ããå | 説æ | çšé |
---|---|---|
GITHUB_TOKEN |
GitHubã®ããŒãœãã«ã¢ã¯ã»ã¹ããŒã¯ã³ | ãªããžããªãžã®ã¢ã¯ã»ã¹æš©é |
GEMINI_API_KEY |
Google AI Studioã®APIã㌠| AIæ©èœã®å©çš |
YOUR_PERSONAL_ACCESS_TOKEN |
GitHubããŒãœãã«ã¢ã¯ã»ã¹ããŒã¯ã³ | ãªããžããªãžã®æžã蟌ã¿æš©é |
YOUR_PERSONAL_ACCESS_TOKEN_IRIS |
IRISå°çšã®ã¢ã¯ã»ã¹ããŒã¯ã³ | IRISåºæã®æäœæš©é |
[!WARNING] ãããã®ããŒã®ååŸæ¹æ³ã«ã€ããŠã¯ãåãµãŒãã¹ã®å ¬åŒããã¥ã¡ã³ããåç §ããããå¿ èŠã«å¿ããŠéçºè ã«ãåãåãããã ããã
IRISãPythonã©ã€ãã©ãªãšããŠäœ¿çšãããå Žåã¯ãexample/demo.py
ãã¡ã€ã«ãåèã«ããŠãã ããããã®ãã¢ãã¡ã€ã«ã«ã¯ãIRISã®äž»èŠãªæ©èœã䜿çšããæ¹æ³ã瀺ãããŠããŸãã
äŸãã°ïŒ
from iris_coon import IrisCoon
# IRISã®ã»ããã¢ãã
coon = IrisCoon(target_dir="path/to/your/project", force=True)
coon.run()
詳现ãªäœ¿çšæ¹æ³ãšé«åºŠãªèšå®ã«ã€ããŠã¯ãexample/demo.py
ãã¡ã€ã«ã確èªããŠãã ããã
IRISãã»ããã¢ãããããšã以äžã®èªååãããæ©èœãå©çšå¯èœã«ãªããŸãïŒ
ã€ã·ã¥ãŒç®¡çã®èªåå:
ãªãªãŒã¹ç®¡çã®èªåå:
ããã¥ã¡ã³ããŒã·ã§ã³ã®èªåå:
README.en.md
ïŒãçæãããŸããæ°ããããŒãžã§ã³ããªãªãŒã¹ããæºåãã§ãããã以äžã®ããã«ã¿ã°ãä»ããã ãã§ãïŒ
git tag v1.0.0
git push origin v1.0.0
ããã«ãããv1.0.0
ã«å¯Ÿå¿ãã詳现ãªãªãªãŒã¹ããŒããèªåçã«çæãããŸãã
ãªãªãŒã¹ããŒããçæããããšãIRISã¯READMEãèªåæŽæ°ããæ°æ©èœãéèŠãªå€æŽç¹ãåæ ããŸãã
ãã®åŸãæŽæ°ãããREADMEã®å
容ã«åºã¥ããŠãè±èªçã®README.en.md
ãèªåçæãããŸãã
ãããã®èªååããã»ã¹ã«ããã以äžã®ã¡ãªãããåŸãããŸãïŒ
IRISãå°å ¥ããããšã§ãéçºããŒã ã¯ã³ã¢æ©èœã®éçºã«ããå€ãã®æéãå²ãããšãã§ãããããžã§ã¯ã管çã®å¹çãå€§å¹ ã«åäžããŸãã
iris-coon
ã³ãã³ãã¯ã以äžã®ãªãã·ã§ã³ããµããŒãããŠããŸãïŒ
ãªãã·ã§ã³ | ç瞮圢 | 説æ | ããã©ã«ãå€ |
---|---|---|---|
--target |
-t |
ãã¡ã€ã«ãã³ããŒããã¿ãŒã²ãããã£ã¬ã¯ã㪠| çŸåšã®äœæ¥ãã£ã¬ã¯ã㪠|
--force |
-f |
æ¢åã®ãã¡ã€ã«ã匷å¶çã«äžæžã | False |
--exclude |
-e |
ã³ããŒããé€å€ãããã¡ã€ã«ã®ãªã¹ã | ["publish-to-pypi.yml"] |
ããã©ã«ãèšå®ã§IRISãã»ããã¢ããïŒ
iris-coon
ç¹å®ã®ãã£ã¬ã¯ããªã«IRISãã»ããã¢ããïŒ
iris-coon --target /path/to/your/project
匷å¶çã«æ¢åãã¡ã€ã«ãäžæžãããŠã»ããã¢ããïŒ
iris-coon -f
ç¹å®ã®ãã¡ã€ã«ãé€å€ããŠã»ããã¢ããïŒ
iris-coon --exclude config.yml secrets.yml
è€æ°ã®ãªãã·ã§ã³ãçµã¿åãããŠäœ¿çšïŒ
iris-coon -t /path/to/project -f --exclude config.yml
[!WARNING]
--force
ãªãã·ã§ã³ã䜿çšããéã¯ãæ¢åã®ãã¡ã€ã«ãäžæžããããå¯èœæ§ããããã泚æããŠãã ããã
iris-coon
ãå°å
¥ãããŸããã IRISã®åäœãããŒã以äžã®å³ã§èª¬æããŸãïŒ
%%{init:{'theme':'base','themeVariables':{'primaryColor':'#024959','primaryTextColor':'#F2C335','primaryBorderColor':'#F2AE30','lineColor':'#A1A2A6','secondaryColor':'#593E25','tertiaryColor':'#F2C335','noteTextColor':'#024959','noteBkgColor':'#F2C335','textColor':'#024959','fontSize':'18px'}}}%%
sequenceDiagram
participant User as ð€ User
participant GitHub as ð GitHub
participant IRIS as ð€ I.R.I.S
participant AI as ð§ AI Models
participant Labels as ð Labels
alt ã€ã·ã¥ãŒç®¡çã®èªåå
User->>GitHub: ã€ã·ã¥ãŒãäœæ
GitHub->>IRIS: GitHub Action ããªã¬ãŒ
IRIS->>GitHub: ã€ã·ã¥ãŒå
容ãååŸ
GitHub-->>IRIS: ã€ã·ã¥ãŒè©³çŽ°
IRIS->>AI: å
容ãåæãªã¯ãšã¹ã
AI-->>IRIS: åæçµæ
IRIS->>Labels: ææ¡ãããã©ãã«ãç
§å
Labels-->>IRIS: æå¹ãªã©ãã«
IRIS->>GitHub: æ€èšŒæžã¿ã©ãã«ãé©çš
IRIS->>AI: 詳现ã³ã¡ã³ãçæãªã¯ãšã¹ã
AI-->>IRIS: çæããã詳现ã³ã¡ã³ã
IRIS->>GitHub: 詳现ã³ã¡ã³ããè¿œå
IRIS->>AI: å€æŽææ¡çæãªã¯ãšã¹ã
AI-->>IRIS: çæãããå€æŽææ¡
IRIS->>GitHub: å€æŽææ¡ãè¿œå
GitHub-->>User: ã€ã·ã¥ãŒæŽæ°éç¥
end
alt ãªãªãŒã¹ç®¡çã®èªåå
User->>GitHub: ã¿ã°ãäœæ/ããã·ã¥
GitHub->>IRIS: ã¿ã°ã€ãã³ãéç¥
IRIS->>AI: ãªãªãŒã¹ããŒãçæãªã¯ãšã¹ã
AI-->>IRIS: çæããããªãªãŒã¹ããŒã
IRIS->>GitHub: ãªãªãŒã¹ããŒããäœæ
GitHub-->>User: ãªãªãŒã¹éç¥
end
alt ããã¥ã¡ã³ããŒã·ã§ã³ã®èªåå
IRIS->>AI: READMEæŽæ°ãªã¯ãšã¹ã
AI-->>IRIS: æŽæ°ãããREADMEå
容
IRIS->>GitHub: READMEãæŽæ°
IRIS->>AI: è±èªçREADMEçæãªã¯ãšã¹ã
AI-->>IRIS: çæãããè±èªçREADME
IRIS->>GitHub: è±èªçREADMEãè¿œå /æŽæ°
GitHub-->>User: ããã¥ã¡ã³ãæŽæ°éç¥
end
IRISã®éçºã«æºããæ¹åãã®ã³ãã³ãã§ãïŒ
AIRAã䜿çšããŠã³ãããã¡ãã»ãŒãžãçæïŒ
aira --mode sourcesage commit --config=.aira\config.dev.commit.yml --ss-model-name="gemini/gemini-1.5-pro-latest" --llm-output="llm_output.md"
SourceSageã䜿çšããŠãªãªãŒã¹ããŒããçæïŒ
sourcesage --ss-mode=DocuMind --yaml-file=docs\.sourcesage_releasenotes.yml
ãããžã§ã¯ããžã®è²¢ç®ãæè¿ããŸãïŒä»¥äžã®æ¹æ³ã§è²¢ç®ã§ããŸãïŒ
åããŠã®æ¹ã¯ãFirst Contributions ã®ã¬ã€ããåèã«ããŠã¿ãŠãã ããã
ãã®ãããžã§ã¯ãã¯MITã©ã€ã»ã³ã¹ã®äžã§å ¬éãããŠããŸãã䜿çšãè€è£œãå€æŽãé åžã®éã¯ã©ã€ã»ã³ã¹æ¡é ãã確èªãã ããã
質åããµããŒããå¿ èŠãªå Žåã¯ã以äžã®æ¹æ³ã§ãåãåãããã ããïŒ
åå¿è ã®æ¹ãæ°è»œã«ãåãåãããã ãããçæ§ã®ãã£ãŒãããã¯ããåŸ ã¡ããŠããŸãïŒ