KrugleAI KLiP User Guide - krugle-jp/Krugle-Library GitHub Wiki
ããŒãžã§ã³: v0.7.3-beta
-
KrugleAI KLiP ãŠãŒã¶ãŒã¬ã€ã
- ã¯ããã«
-
æ©èœ
- ã³ãŒããçŽ æ©ãç°¡åã«çè§£ãã
- ã¯ã©ã¹ããã¡ã€ã«ãªã©ãã³ã³ããã¹ãã«è¿œå
- ã€ã³ã©ã€ã³ç·šé
- AIæèŒã®ã³ãŒãèªåè£å®
- çµç¹ã®ã³ãŒããšããã¥ã¡ã³ããåç §
- ã³ãŒãããŒã¹æ€çŽ¢
- ããã¥ã¡ã³ããšãã£ãã
- ãšãŒãžã§ã³ãã£ãã¯ã³ãŒãã£ã³ã°äœéš
- ãã¹ãŠã®MCPããŒã«ããµããŒã
- ç¬èªã®ããã³ãããã«ã¹ã¿ãã€ãº
- å±¥æŽ
- ã¢ãã«ã«ã¹ã¿ãã€ãº
- ããã·ã¥ããŒã
- ã¯ã€ãã¯ã¹ã¿ãŒã (Quickstart)
-
KLiPã®äœ¿ãæ¹
- èŠçŽ
-
KLiPã䜿çšããã¿ã€ãã³ã°
- è€éãªç·šéã®ç°¡çŽ å
- ãã¡ã€ã«ãäžããäœæãã
- ãã€ã©ãŒãã¬ãŒããäžããäœæãã
- éžæããã³ãŒããä¿®æ£ãã
- éžæããã³ãŒããŸãã¯ãã¡ã€ã«å šäœã«ã€ããŠè³ªåãã
- ãšã©ãŒãžã®å¯ŸåŠ
- é©åãªã·ã§ã«ã³ãã³ãã®æ±ºå®
- åäžã¿ãŒã³ã®ãªãŒãã³ãšã³ããªè³ªåããã
- å°ããªæ¢åãã¡ã€ã«ã®ç·šé
- è€æ°ãã¡ã€ã«ããã®ã³ã³ããã¹ãã®æŽ»çš
- å°ãªãã¹ãããã§ã¿ã¹ã¯ãå®è¡ãã
- KLiPã䜿çšããªãã¿ã€ãã³ã°
- èšå®
- YAMLèšå®ãã¡ã€ã«
-
ã³ã³ããã¹ããããã€ããŒ
- ãã¡ã€ã«
- éããŠãããã¡ã€ã«
- çŸåšã®ãã¡ã€ã«
- ã³ãŒã
- Git å·®å
- Git ã³ããã
- ã³ãŒãããŒã¹
- ãã©ã«ã
- æ£èŠè¡šçŸãã¿ãŒã³ã«ããã¯ãŒã¯ã¹ããŒã¹å ã®å³å¯ãªæ€çŽ¢
- ãã¡ã€ã«ããªãŒ
- URL
- ããã¥ã¡ã³ããŒã·ã§ã³
- ã¯ãªããããŒã
- ã¿ãŒããã«
- GitHub Issues
- GitLab ããŒãžãªã¯ãšã¹ã
- Jira Issues
- ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã
- ã³ãŒãããŒã¹ã¹ã±ã«ãã³
- åé¡
- KrugleKnow
- PostgreSQL - éçºäžãè¿æ¥å ¬éäºå®
- ããŒã¿ããŒã¹ããŒãã« - éçºäžãè¿æ¥å ¬éäºå®
- Webæ€çŽ¢
- ãããã¬ãŒïŒããŒã«ã«å€æ°
- ã³ã³ããã¹ããããã€ããŒã®ãªã¯ãšã¹ã
-
ãããã質å
- KLiPãæååãããåºåãç¶ããçç±
- ã€ã³ããã¯ã¹ã«å«ãããã¡ã€ã«ãã«ã¹ã¿ãã€ãºããæ¹æ³
- Shastaãåžžã«ãã¹ãŠã®CPUã³ã¢ã䜿çšããªãçç±
- Shastaãåžžã«GPUã䜿çšããªãçç±
- ã³ãŒãè£å®ã衚瀺ãããªã
- èªåè£å®ãé ã
- èªåè£å®ãç§ã®ã³ãŒããèªèããªã
- èªåè£å®ã«ãã©ãŒããããšã©ãŒãå«ãŸãã
KLiPã¯ãœãããŠã§ã¢éçºã®ããã«èšèšããããšã³ã¿ãŒãã©ã€ãºã³ãŒããªãŒããã€ãããããŒã«ã§ãKrugleAIã®æ©èœãIDEã«çµ±åããŸãã
KLiPã䜿çšãããšãKrugleAIã®åŒ·åãªã³ãŒãèšèªã¢ãã«ïŒLLMïŒãçŽæ¥IDEå ã§æŽ»çšããªãããçæãããåçãã·ãŒã ã¬ã¹ã«ã³ãŒãããŒã¹ã«çµã¿èŸŒãããšãã§ããŸãã
éæã§ããããšã®äŸãšããŠä»¥äžããããŸãïŒ
-
cmd/ctrl + Iã䜿çšããŠèªç¶èšèªãããã€ã©ãŒãã¬ãŒãã³ãŒããçæããŸãã - ã³ãŒããéžæãããªãã¡ã¯ã¿ãªã³ã°æé ã説æãããšã倿Žããšãã£ã¿ã«å³åº§ã«é©çšãããŸãã
- ã³ãŒãããŒã¹ã«é¢ããé«ã¬ãã«ã®è³ªåãæãããããšãKLiPãèªåçã«é¢é£ãã¡ã€ã«ãç¹å®ããŸãïŒã¢ã«ãã¡çïŒã
- ä»»æã®é¢æ°ãã¯ã©ã¹ã«å¯ŸããŠå¹ççã«åäœãã¹ããçæããŸãã
- ãšãã£ã¿ãé¢ããããšãªããã¯ã€ãã¯è³ªåã«å³åº§ã«åçãåŸãããšãã§ããŸãã
- ã³ã³ãã€ã©ã®ç¯å²ãè¶ ãããšã©ãŒã«ã€ããŠãçŸåšã®å€æŽãã¬ãã¥ãŒããŠããããŸãã
- ***@***ãå
¥åããã ãã§ãLLMãšã®éä¿¡äžã«æ§ã
ãªãœãŒã¹ãåç
§ã§ããŸããä»åŸè¿œå ãããã³ã³ããã¹ããããã€ãã«ã¯ã
@docsïŒã³ãŒãèšèªãšãã¬ãŒã ã¯ãŒã¯ã®ããã¥ã¡ã³ãçšïŒã@krugleïŒKrugleKnowãã©ãããã©ãŒã ã«ã€ã³ããã¯ã¹åããããã¡ã€ã«ãããã¥ã¡ã³ãçšïŒã@jiraïŒJiraã®èª²é¡åç §çšïŒãªã©ããããŸãã - ç¹å®ã®ã¯ãŒã¯ãããŒã«åãããŠæ¡åŒµæ©èœãã«ã¹ã¿ãã€ãºããããã®åºç¯ãªæ§æãªãã·ã§ã³ãæäŸããŠããŸãã
- ã€ã³ã©ã€ã³ã®ææ¡ãè¿ éãªãã€ã©ãŒãã¬ãŒãã³ãŒãã®äœæã®ããã®ããŒã«ã«ã¿ãèªåè£å®æ©èœãå©çšã§ããŸãïŒã¢ã«ãã¡çïŒã

ã³ãŒãã®äžéšåãåããã«ããå Žåã§ããKLiPããããåè§£ããŠããããã°ãšçè§£ãéããæç¢ºã§ç°¡æœãªèª¬æãæäŸããŸãã
cmd + LïŒMacïŒãŸãã¯ctrl + LïŒWindowsïŒãæŒããŠãäœæ¥äžã®ã³ãŒãã«é¢ããæŽå¯ãåŸãããšãã§ããŸãã

ãã£ããããã¯ã¹ã«ã³ã³ããã¹ããã³ããŒïŒããŒã¹ããããšã¯ãŒã¯ãããŒãäžæãããå¯èœæ§ããããŸããKLiPã䜿çšãããšãã¯ã©ã¹ããã¡ã€ã«ãªã©ãçŸåšã®ã³ã³ããã¹ãã«è¿œå ã§ããå¿ èŠãªãã®ãã¹ãŠã«äžç®æããã¢ã¯ã»ã¹ã§ããŸãããŸããLLMã®ç¥èã«ãããªãã®åé¡ã«ã察åŠããŸãã
äœæ¥ããŠããå Žæã§çŽæ¥ã³ãŒãããªãã¡ã¯ã¿ãªã³ã°ã§ããŸãã

éžæããã³ãŒãã«å¯ŸããŠçµã¿èŸŒã¿ã®ã€ã³ã©ã€ã³ç·šéããŒã«ãå©çšå¯èœã§ãã

KLiPã¯AIæèŒã®ã³ãŒãèªåè£å®ããµããŒãããŠããŸããTabããŒãæŒãã ãã§ç°¡åã«ã³ãŒãææ¡ãååŸã§ããŸãã


KrugleKnowã¯ãçµç¹ã®ã³ãŒãããŒã¹ãã³ãŒãææç©ãæè¡ææžãžã®ãã§ãã¬ãŒã·ã§ã³ã¢ã¯ã»ã¹ãæäŸããäžå€®æ€çŽ¢ãšã³ãžã³ã§ããæè»ãªåæãšæ€çŽ¢æ©èœãæäŸããã¯ãªãã£ã«ã«ãªã³ãŒããã¿ãŒã³ãã»ãã¥ãªãã£è匱æ§ãã¢ããªã±ãŒã·ã§ã³ã®åé¡ããªã¢ã«ã¿ã€ã ã§ç¹å®ã§ããŸãããã®ãã©ãããã©ãŒã ã¯ãæè¡æ å ±ã«ç°¡åã«ã¢ã¯ã»ã¹ããŠå€§èŠæš¡ã«æŽ»çšã§ããããã«ããããšã§ãéçºããŒã å ã®ã³ã©ãã¬ãŒã·ã§ã³ãšå¹çãé«ããããã«èšèšãããŠããŸãã
KLiPã䜿çšãããšãKrugleKnowãã©ãããã©ãŒã ã«ã€ã³ããã¯ã¹åãããä»»æã®ã³ãŒããã¡ã€ã«ãããã¥ã¡ã³ãããã¯ããŒã³äœæãããŠã³ããŒãããŸãã¯ããŒã«ã«ã§ã€ã³ããã¯ã¹åããããšãªãæ€çŽ¢ããã³ãã©ãŠãºã§ããŸãã

以äžã®ã³ã³ããã¹ããããã€ãèšå®ãconfig.yamlãã¡ã€ã«ã«å¿
èŠã§ãã
context:
- provider: krugleknowã³ãŒãããŒã¹ã«é¢ãã質åãããŸãã

KLiPã¯ããŒã«ã«ã³ãŒãããŒã¹ãã€ã³ããã¯ã¹åããã¯ãŒã¯ã¹ããŒã¹å šäœããæãé¢é£æ§ã®é«ãã³ã³ããã¹ããèªåçã«åã蟌ãããšãã§ããŸããããã¯ãåã蟌ã¿ããŒã¹ã®æ€çŽ¢ãšããŒã¯ãŒãæ€çŽ¢ã®çµã¿åããã«ãã£ãŠå®çŸãããŸããããã©ã«ãã§ã¯ããã¹ãŠã®åã蟌ã¿ãããŒã«ã«ã§èšç®ããä¿åãããŸãã
ã³ãŒãããŒã¹æ€çŽ¢æ©èœã¯çŸåšããcodebaseãããã³ãfolderãã³ã³ããã¹ããããã€ããéããŠå©çšå¯èœã§ããå
¥åããã¯ã¹ã§@codebaseãŸãã¯@folderãšå
¥åããŠãã質åããããšã§äœ¿çšã§ããŸããå
¥åã¯ãã³ãŒãããŒã¹ïŒãŸãã¯ãã©ã«ãïŒã®æ®ãã®éšåããã®åã蟌ã¿ãšæ¯èŒãããé¢é£ãããã¡ã€ã«ãç¹å®ãããŸãã
äžè¬çãªãŠãŒã¹ã±ãŒã¹ïŒ
-
ã³ãŒãããŒã¹ã«é¢ããé«ã¬ãã«ãªè³ªå
- ãSpring securityã®æ©èœãã©ããã§äœ¿çšããŠããŸããïŒã
- ããµãŒããŒã«æ°ãããšã³ããã€ã³ãã远å ããã«ã¯ã©ãããã°ããã§ããïŒã
- ãXMLãJSONã«å€æããæ¢åã®ã³ãŒãã¯ãããŸããïŒã
-
æ¢åã®ãµã³ãã«ãåç §ãšããã³ãŒãçæ
- ã
xyzã®ãµãã¯ã©ã¹ã§èŠããããã¿ãŒã³ã«åŸã£ãŠãfooã¯ã©ã¹ã®barã¡ãœãããå®è£ ããŠãã ãããã - ãPythonã®argparseã䜿çšããŠããã®ãããžã§ã¯ãçšã®CLIã¢ããªã±ãŒã·ã§ã³ã®èæ¡ãäœæããŠãã ãããã
- ãæ¢åã®ã³ã³ããŒãã³ããšåããã¿ãŒã³ã䜿çšããŠãããããããŠã³ãªã¹ãä»ãã®æ°ããVue.jsã³ã³ããŒãã³ããçæããŠãã ãããã
- ã
-
ç¹å®ãã©ã«ãã®ã¯ãšãªã«
@folderã䜿çš- ããã®ãã©ã«ãã®äž»ãªç®çã¯äœã§ããïŒã
- ãKrugleã®ãã¡ã€ã«æ€çŽ¢APIã¯ã©ã®ããã«äœ¿çšããŸããïŒã
- äžèšã®äŸã®ããããã
@codebaseã®ä»£ããã«@folderã䜿çšã§ããŸãã
圹ç«ããªãå ŽåïŒ
-
LLMãã³ãŒãããŒã¹å ã®ãã¹ãŠã®ãã¡ã€ã«ã«ã¢ã¯ã»ã¹ããå¿ èŠãããå Žå - KrugleAI Webã®äœ¿çšãæ€èšããŠãã ãã
- ã
foo颿°ãåŒã³åºãããŠããå Žæããã¹ãŠèŠã€ããŠãã ãããã - ãã³ãŒãããŒã¹ãã¬ãã¥ãŒããŠãã¹ãã«ãã¹ãèŠã€ããŠãã ãããã
- ã
-
ãªãã¡ã¯ã¿ãªã³ã°
- ã
bar颿°ã«æ°ãããã©ã¡ãŒã¿ã远å ãããã®äœ¿çšç®æãæŽæ°ããŠãã ãããã
- ã
@docsã³ã³ããã¹ããããã€ãã䜿çšãããšãKLiPå
ã§çŽæ¥ããã¥ã¡ã³ããšããåãã§ããŸãããã®æ©èœã«ãããéçãµã€ããGitHubã®ããŒã¯ããŠã³ããŒãžãã€ã³ããã¯ã¹åã§ããã³ãŒãã£ã³ã°äžã«ããã¥ã¡ã³ãã«ç°¡åã«ã¢ã¯ã»ã¹ããŠæŽ»çšã§ããããã«ãªããŸãã

@docsã³ã³ããã¹ããããã€ãã¯ãæå®ãããããã¥ã¡ã³ããµã€ããã¯ããŒã«ããåã蟌ã¿ãçæããããŒã«ã«ã«ä¿åããããšã§æ©èœããŸãããã®ããã»ã¹ã«ãããããã¥ã¡ã³ãã®ã³ã³ãã³ãã«è¿
éãã€å¹ççã«ã¢ã¯ã»ã¹ã§ããŸãã
ãŸãã人æ°ã®ãããã¬ãŒã ã¯ãŒã¯ãã©ã€ãã©ãªã®äºåã€ã³ããã¯ã¹åãããããã¥ã¡ã³ããµã€ããæäŸããŠããŸãããããã¯@docsã³ã³ããã¹ããããã€ãã®ããããããŠã³ãªã¹ãããèŠã€ããããšãã§ããŸãã
ç¬èªã®ããã¥ã¡ã³ãã远å ããã«ã¯ããã¡ãã§è©³çްãã芧ãã ããã

èŠåïŒð§ ããã¯å®éšçæ©èœã§ã
ãšãŒãžã§ã³ãã¯ãã£ããã¢ãã«ã«ããŒã«ã远å ããå¹ åºãã³ãŒãã£ã³ã°ã¿ã¹ã¯ãåŠçã§ããããã«ããŠãã³ã³ããã¹ããæåã§æ€çŽ¢ãããã¢ã¯ã·ã§ã³ãå®è¡ãããããæéãçããŸãããã£ããã¢ãã«ã®ããŒã«èšå®ã§ãšãŒãžã§ã³ãã¢ãŒãïŒããŒã«äœ¿çšïŒãæå¹ãŸãã¯ç¡å¹ã«ã§ããŸãã


ã¢ãã«ã³ã³ããã¹ããããã³ã«ïŒMCPïŒã¯ãããã³ãããã³ã³ããã¹ããããŒã«äœ¿çšãçµ±äžããããã«Anthropicã«ãã£ãŠææ¡ãããæšæºã§ããKLiPã¯MCPèšå®ãéããŠä»»æã®MCPãµãŒããŒãšäºææ§ããããŸãã

ããã³ããã¯ããã£ããäžãã€ã§ãåç §ã§ããããŒã ãšç°¡åã«å ±æã§ããåå©çšå¯èœãªæç€ºãšæšæºåããããã¿ãŒã³ã§ããç¹ã«ç¹°ãè¿ããè€éãªã¿ã¹ã¯ã«åœ¹ç«ã¡ãŸãã

ãœãŒã¹ã³ãŒããã¬ãã¥ãŒããããã®ããã³ãããã¡ã€ã«ãèšå®ããç°¡åãªäŸã玹ä»ããŸãïŒ
- ã¯ãŒã¯ã¹ããŒã¹ã®æäžäœã«
.klip/prompts/ãšããååã®ãã©ã«ããäœæããŸãã - ãã®ãã©ã«ãã«
code-reivew.promptãšãããã¡ã€ã«ã远å ããŸãããã¡ã€ã«åãããã³ãããçæããããã«äœ¿çšããã¹ã©ãã·ã¥ã³ãã³ãã®ååã«ãªããŸãã -
code-reivew.promptã«ä»¥äžã®å 容ãèšè¿°ããŠä¿åããŸãïŒ
name: Code Review
description: Code Review
---
Please carefully analyze the provided code and conduct a comprehensive
code review. Please pay special attention to the following aspects and
provide detailed analysis and improvement suggestions:
- Syntax errors: Check for syntax issues, type mismatches, or undefined variables
- Logic defects: Identify potential logic flaws, improper boundary condition handling, infinite loops, or performance bottlenecks
- Security vulnerabilities: Detect SQL injection, XSS attacks, CSRF vulnerabilities, unvalidated user input, and other security risks
- Code quality: Evaluate code readability, modularity, naming conventions, and comment completeness
- Best practices: Point out areas that don't conform to industry best practices and provide improvement suggestions
Please list the issues found in order of severity, and provide specific
solutions for each problem.
@open
- VSCodeãåèªã¿èŸŒã¿ããŸã
ãã®ããã³ããã䜿çšããã«ã¯ãã¬ãã¥ãŒããããœãŒã¹ã³ãŒããã¡ã€ã«ãéããŸããKLiPã®ãã£ããããã¯ã¹ã§ã@promptsããšå ¥åãããCode Reviewãããã³ãããéžæããŸããEnterãæŒããšãKLiPãäºåå®çŸ©ãããããã³ããã«åºã¥ããŠå¿çãçæããŸãã
.promptãã¡ã€ã«ã¯2ã€ã®éšåã§æ§æãããŠããŸã
- YAMLèšå®ïŒã---ãããäžïŒïŒãtemperatureãããdescriptionããªã©ã®ãã©ã¡ãŒã¿ãèšå®ããŸãã
- ããã³ããæ¬æïŒã---ãããäžïŒïŒå®éã®ããã³ããå 容
ãYAMLèšå®ãã¯---ã»ãã¬ãŒã¿ã®äžã«ãããã¹ãŠã®ãã®ã§ãã¢ãã«ãã©ã¡ãŒã¿ãæå®ã§ããŸããYAMLæ§æã䜿çšããçŸåšã¯ä»¥äžã®ãã©ã¡ãŒã¿ããµããŒãããŠããŸãïŒ
-
name- 衚瀺ã¿ã€ãã« -
description- ããããããŠã³ã«è¡šç€ºããã説æ -
version- ã1ãïŒã¬ã¬ã·ãŒããã³ãããã¡ã€ã«çšïŒãŸãã¯ã2ãïŒãããããã©ã«ãã§ãããèšå®ããå¿ èŠã¯ãããŸããïŒã®ãããã
ãããã®ãã©ã¡ãŒã¿ãå¿
èŠãªãå Žåã¯ãYAMLèšå®ãš---ã»ãã¬ãŒã¿ãçç¥ã§ããŸãã
ããã³ããæ¬æã§ã¯ã以äžãåç §ã§ããŸãïŒ
-
ãã¡ã€ã«ïŒã¯ãŒã¯ã¹ããŒã¹ã®ã«ãŒããåºæºãšãã絶察ãã¹ãŸãã¯çžå¯Ÿãã¹ïŒïŒ
- @CHANGELOG.md
- @src/app/main.py
- @/Users/someone/Desktop/some-coderepo/src/app/main.py
-
URLïŒ
-
ã³ã³ããã¹ããããã€ãïŒ
- @main.py
- @open
- @tree
- @skeleton
- ...
å±¥æŽããŒãžã§ãã£ããå±¥æŽãéãããããã£ããã®ã¿ã€ãã«ãç·šéãããããã£ãããåé€ãããã§ããŸãã
ãªã¢ãŒããµãŒããŒããå¥ã®KrugleAI 15Bã¢ãã«ã远å ãããªã©ãç¹å®ã®ããŒãºãããå Žåã¯ãèšå®ããŒãžããè¡ãããšãã§ããŸãã

KLiPã¯ãAnthropicãDeepSeekãOpenAIã®ã¢ãã«ãããã³OpenAI APIãããã³ã«ãšäºææ§ã®ããä»ã®ã¢ãã«ããµããŒãããŠããŸããAPIããŒãå ¥åãã詳现èšå®ã§APIããŒã¹URLãèšå®ããã ãã§ãã

ããã·ã¥ããŒãã§ã¯ãããŒã¯ã³äœ¿çšç¶æ³ãªã©ã確èªã§ããŸãã

-
ãã¡ãã®ãããã€ã¡ã³ãã¬ã€ãã«åŸã£ãŠShastaãã€ã³ã¹ããŒã«ãããã¡ãã§KLiPãã€ã³ã¹ããŒã«ããŸãã
-
ã€ã³ã¹ããŒã«ãå®äºãããšãå·Šã®ãµã€ãããŒã«KLiPã®ããŽã衚瀺ãããŸãããããã¯ãªãã¯ãããšãKLiPæ¡åŒµæ©èœãéããŸãã
KLiPãVS Codeã®å³ãµã€ãããŒã«ç§»åããããšã匷ããå§ãããŸããããã«ãããKLiPã䜿çšããªãããã¡ã€ã«ãšã¯ã¹ãããŒã©ãŒã«ç°¡åã«ã¢ã¯ã»ã¹ã§ãããµã€ãããŒã¯ããŒããŒãã·ã§ãŒãã«ããïŒcmd/ctrl + option/alt + BïŒã§ç°¡åã«åãæ¿ããããŸãã

- KLiPãåããŠã€ã³ã¹ããŒã«ããŠéããšãã»ããã¢ãããŠã£ã¶ãŒãã衚瀺ãããŸãã
ã¹ããã1ïŒKrugleKnowãèšå®ããŸããKrugleKnow APIã®URLãå ¥åããŠãã ãããKrugleKnowãµãŒããŒã§èªèšŒãæå¹ã«ãªã£ãŠããå Žåã¯ããŠãŒã¶ãŒåãšãã¹ã¯ãŒããå ¥åããŠãã ãããããã§ãªãå Žåã¯ããããã®ãã£ãŒã«ãã空çœã®ãŸãŸã«ããŠãããŸãã
ã¹ããã2ïŒShasta/Shasta Proã®èšå®ãæ§æããŸãããã§ã«ããŒãžã§ã³ 0.7.0 以éã«ã¢ããã°ã¬ãŒãããã¢ãã«ã®èšå®ãå®äºããŠããå Žåããã®ã¹ãããã¯è¡šç€ºãããŸããã
ã»ããã¢ãããŠã£ã¶ãŒããå®äºãããšãVSCodeãåèµ·åããŸãã
- ããã§ã€ã³ã¿ãŒãããããåæããŠãKLiPã䜿çšããAIã³ãŒãéçºã®ãã¯ãŒã掻çšã§ããŸãã
ã³ãŒãã£ã³ã°ããã»ã¹ã«LLMãé©åã«åãå ¥ããããšã§å¹çãåäžãããããšãã§ããŸãããã®ã¬ã€ãã§ã¯ãKLiPã®å©çšãæšå¥šãããå Žé¢ãšãæ§ããæ¹ãè¯ãå Žé¢ã«ã€ããŠèª¬æããŸãã
KLiPã®å¹æã¯ãç·šéã説æãçæããããã«äœ¿çšãããåºç€ãšãªãKrugleAIã³ãŒãLLMã«äŸåããŠããŸããLLMãæã ãååšããªãã©ã€ãã©ãªãæ§æãå°å ¥ãããªã©ãäžæ£ç¢ºãªææ¡ãããããšãããããšã念é ã«çœ®ããŠãã ãããææ¡ãæ£ãããªããšæãããå Žåã¯ãé¢é£ææžãšç §åããããšããå§ãããŸãã
KLiPã䜿çšããŠãããã¡ã«ããã®ææ¡ããã€ä¿¡é Œãã¹ããã®æèŠã身ã«ã€ãã§ããããå®éšãéããŠäœãæãŸããçµæãããããããçè§£ããKLiPã«æ £ããããšãè¯ãã¢ãããŒãã§ããKLiPã¯ææ¡ãã倿Žãåãå ¥ãããæåŠããããä¿ããå¿ èŠã«å¿ããŠå€æŽãå ã«æ»ãæè»æ§ãæäŸããŸãã
KLiPãç¹å®ã®ã¿ã¹ã¯ã«åœ¹ç«ã€ãã©ããäžç¢ºããªå Žåã¯ã以äžã®æé ãæ€èšããŠãã ããïŒ
'éžæ'ãšã¯ããã¡ã€ã«å
ã®ããã¹ãç¯å²ãéžæããcmd + LïŒmacOSïŒãŸãã¯ctrl + LïŒWindowsïŒãæŒããŠKLiPãã£ããã¡ãã»ãŒãžã«å«ããããšãæããŸãã
-
éžæ:
cmd/crtl + Lã䜿çšããŠãããæ·±ãçè§£ãããã³ãŒãã»ã¯ã·ã§ã³ãéžæããå ¥åããã¯ã¹ã«ããã®ã³ãŒãã®åäœãæããŠããšå ¥åããŸãã - è©äŸ¡: 説æãåççã«æããå Žåãã³ãŒãã»ã¯ã·ã§ã³ãéžæãããŸãŸãããã®ã³ãŒããã©ã®ããã«å€æŽããã°ïŒ[ããªãã®ã¿ã¹ã¯]ããšå°ããŠãã ããã
-
ä¿®æ£: 説æãæåŸ
ã«æ²¿ã£ãŠããå Žåã¯ã
é©çšãã¿ã³ãã¯ãªãã¯ããŠã³ãŒããé©çšã§ããŸãããããã¯ãã³ãŒãã¹ãããããéžã³ç¶ããcmd/crtl + IãæŒããŠä¿®æ£ã³ãã³ããéå§ãã**[ããªãã®ã¿ã¹ã¯]**ãå ¥åããŠã³ãŒããçŽæ¥ã€ã³ã©ã€ã³ä¿®æ£ããŸãã -
å埩çã¢ãããŒã: æåã®è©Šã¿ãæãŸããçµæãçãŸãªãå Žåã¯ã
cmd/ctrl + shift + backspaceã䜿çšããŠå€æŽãæåŠããå詊è¡ããŠãã ãããKLiPã¯è©Šè¡ããšã«ç°ãªãææ¡ãããå¯èœæ§ããããŸãã - æç¢ºå: KLiPãæãŸããçµæãæäŸããªãå Žåã¯ãããã³ãããæé©åããããå ·äœçãªæç€ºãæäŸããŠãæåŸ ãæç¢ºã«è¡šçŸããŠãã ããã
- 现åå: ããã§ãããŸããããªãå Žåã¯ãã¿ã¹ã¯ãããå°ããªãµãã¿ã¹ã¯ã«åå²ããKLiPã®å©ããåãããæåã§åå¥ã«å¯ŸåŠããããšãæ€èšããŠãã ããã
ããªãèªèº«ãæžããã³ãŒãã§ãããããªããæç€ºããLLMã«ãã£ãŠæžãããã³ãŒãã§ããããã¹ãŠã®ã³ãŒãã®è²¬ä»»ã¯ããªãã«ããããšãå¿ããªãã§ãã ããããããã£ãŠãLLMã«ãã£ãŠçæãããåºåã確èªããããšãäžå¯æ¬ ã§ãããã®ããã»ã¹ã容æã«ããããã«ãKLiP GUIã¯LLMã«ãã£ãŠè¡ãããã¢ã¯ã·ã§ã³ã®èªç¶èšèªã«ãã説æãæäŸããŸãã
KLiPã¯ãã¿ã¹ã¯ãå¹ççã«å®äºããã®ã«åœ¹ç«ã€æ§ã ãªã·ããªãªã§éåžžã«äŸ¡å€ããããŸãïŒ
KLiPã¯ãåŸæ¥ã®æ€çŽ¢ãšçœ®æã®æ¹æ³ãäžååãªç¶æ³ã§ç¹ã«å¹æçã§ããäŸãã°ãã€ã³ã©ã€ã³ç·šécmd/crtl + Iãããããã¹ãŠããã®ããã«å€æŽããããªã©ã§ãã
äŸ
-
cmd/crtl + Iããã®å Žæã§çžŠæ£ã'Union'ã«çœ®ãæããã -
cmd/crtl + Iãããã§ãã説æçãªå€æ°åã䜿çšããŠèªã¿ããããåäžãããã
KLiPã¯ãReactã³ã³ããŒãã³ããPythonã¹ã¯ãªãããã·ã§ã«ã¹ã¯ãªãããMakefileããŠããããã¹ããªã©ãããŸããŸãªãã¡ã€ã«ã¿ã€ãã®äœæããã»ã¹ãåçåããŸãã
äŸ
-
cmd/crtl + Iããã¥ãŒãšãŒã¯ã»ã¿ã€ã ãºããææ°ãã¥ãŒã¹ãååŸããPythonã¹ã¯ãªãããäœæããã -
cmd/crtl + Iãæ§æåŒ·èª¿è¡šç€ºãããã³ãŒãçšã®Reactã³ã³ããŒãã³ããçµ±åããã
KLiPã¯ããã«ããã€ã©ãŒãã¬ãŒãæ§é ã®äœæãæ¯æŽããæ©èœãæ¡åŒµããŠããŸããäŸãã°ãåŒæ°ããœãŒãããŠè¡šç€ºããããã®typer CLIã¢ããªãåããPythonããã±ãŒãžã®ãã¬ãŒã ã¯ãŒã¯ãæ§ç¯ããã®ã«åœ¹ç«ã¡ãŸãã
äŸ
-
cmd/crtl + Iããã®ã¹ããŒãã䜿çšããŠãæè¿è§£çŽãããŠãŒã¶ãŒãååŸããSQLã¯ãšãªãçæããã -
cmd/crtl + IãããŒã ãã£ã¬ã¯ããªã/tmp/ã«ããã¯ã¢ããããã·ã§ã«ã¹ã¯ãªãããéçºããã
ã³ãŒãã®ã»ã¯ã·ã§ã³ãéžæããåŸãKLiPã䜿çšããŠãããæ¹è¯ããããšãç®æããŸãïŒäŸïŒcmd/crtl + Iã颿°ããã®æ¹æ³ã§åäœããããã«ä¿®æ£ããããŸãã¯cmd/crtl + Iããããæ®éçã«å®è£
ãããïŒã
äŸ
-
cmd/crtl + Iããã®Digital Oceanã®Terraformãã¡ã€ã«ãGCPã§æ©èœããããã«é©å¿ãããã -
cmd/crtl + Iããã®é¢æ°ãéåæã«æžãçŽãã
ç¹å®ã®ã³ãŒããã©ã®ããã«åäœãããäžç¢ºããªå Žåã¯ããããéžæããŠããã®ã³ãŒãã¯ã©ã®ããã«åäœããŸããïŒããšå°ããŸãã
äŸ
- ãããŒãžã®ã©ãã§ããã¯ãšã³ããžã®ãªã¯ãšã¹ããè¡ãã¹ãã§ããïŒã
- ããããã®iframeéã®éä¿¡ãã©ã®ããã«ä¿é²ã§ããŸããïŒã
KLiPã¯ãšã©ãŒ/äŸå€ã説æããæœåšçãªè§£æ±ºçãææ¡ããã®ã«åœ¹ç«ã¡ãŸããã¿ãŒããã«ã§ãšã©ãŒ/äŸå€ã«ééããããcmd + shift + RïŒmacOSïŒ/ctrl + shift + RïŒWindowsïŒãæŒããŸãããã®æäœã«ãããã¹ã¿ãã¯ãã¬ãŒã¹ãKLiPã«éä¿¡ãããåé¡ã®èª¬æãä¿ãããŸãã
çŠç¹ãå€ããŠæ°ãæ£ãããšãªãããããŒã8000ã§å®è¡äžã®ããã»ã¹ãèå¥ããã«ã¯ã©ãããã°ããã§ããïŒããªã©ã®è³ªåãã§ããŸãã
äŸ
- ãload_dotenvã©ã€ãã©ãªã®ååã¯äœã§ããïŒã
- ãããŒã8000ã§å®è¡äžã®ããã»ã¹ãèå¥ããã«ã¯ã©ãããã°ããã§ããïŒã
IDEãé¢ãã代ããã«ããã«ãã¿ãŒã³ã®äŒè©±ã«ãªããªããšäºæ³ããããªãŒãã³ãšã³ããªè³ªåãããããšãã§ããŸãã
äŸ
- ãã«ã¹ã±ãŒãåé€ãèšå®ããããã®Prismaã¹ããŒããã©ã®ããã«èšå®ããŸããïŒã
- ãå¯ãªåã蟌ã¿ãšçãªåã蟌ã¿ã®éãã¯äœã§ããïŒã
ãã¡ã€ã«ã倧ããããªãéãããã¡ã€ã«å šäœãéžæããŠKLiPã«æ¹åãäŸé Œããããšãã§ããŸãã
äŸ
-
cmd/crtl + Iãããã¯PostgreSQLã®ã³ãã¯ã¿ã§ããKafkaã®ã³ãã¯ã¿ãäœæããŠãã ããã -
cmd/crtl + Iããã®APIã³ãŒã«ãå šããŒãžãååŸããããã«ä¿®æ£ããã
æåã§ã®å€æŽãšåæ§ã«ãäžåºŠã«äžã€ã®ãã¡ã€ã«ã«éäžããŸãããã ããä»ã®ãã¡ã€ã«ã«é¢é£æ å ±ãå«ãŸããŠããå Žåã¯ã远å ã®ã³ã³ããã¹ããšããŠäœ¿çšããããã«ãããã®ã³ãŒãã»ã°ã¡ã³ããéžæããŸãã
Klipã¯ãå®äºããããã«å€ãã®ã¹ããããå¿ èŠãšããªãéåžžã®ã¿ã¹ã¯ã§ããã«å€ãã®æ¯æŽãæäŸã§ããŸãã
äŸ
-
cmd/crtl + IãS3ãžã®èªã¿åãå°çšã¢ã¯ã»ã¹ãæã€ãŠãŒã¶ãŒãäœæããããã®IAMããªã·ãŒãçæããã -
cmd/crtl + Iããã®ããã·ã¥ããŒãã³ã³ããŒãã³ãå ã§ãã®ãããããæ£ã°ã©ãã«å€æããã
以äžã¯ãçŸæç¹ã§KLiPã圹ç«ããªãå¯èœæ§ãããã·ããªãªã§ãïŒ
è€éãªåé¡ã®ãããã°ã«æ·±ãé¢ãã£ãŠããŠããããè€æ°ã®ãã¡ã€ã«ã«ãŸãããçŽ20åãããå ŽåãKLiPã¯ãŸã ãã¹ãŠã®é¢é£æ§ãçè§£ããŠæ¯æŽã§ããªããããããŸããããã ããé²æç¶æ³ãå ±æããææ¡ãæ±ããããšã§ãKLiPãæœåšçãªè§£æ±ºçã®ã¢ã€ãã¢ãæäŸããããšããããŸãã
çŸåšãKLiPã¯äžåºŠã«1ã€ã®ãã¡ã€ã«ã®ç·šéããåŠçã§ããŸããããã ããå¿ èŠãªå€æŽãç¹å®ããåŸãKLiPã«è€æ°ã®ãã¡ã€ã«ãé çªã«ä¿®æ£ããããæç€ºããããšãã§ããŸãã
éåžžã«å€§ããªãã¡ã€ã«ã®å ŽåãKLiPã¯LLMã³ã³ããã¹ããŠã£ã³ããŠã®å¶éã«ããããã¹ãŠã®ã³ã³ãã³ããåã蟌ãã®ã«èŠåŽããå ŽåããããŸããå®å šãªãã¡ã€ã«ãå¿ èŠãªããšã¯ãŸããªã®ã§ãé¢é£ããã³ã³ããã¹ããå«ãç¹å®ã®ã³ãŒãã»ã¯ã·ã§ã³ãéžæããããšãæ€èšããŠãã ããã
åæ§ã«ãäžåºŠã«å€ãã®è¡ãç·šéããããšãããšãã³ã³ããã¹ããŠã£ã³ããŠã®å¶éãè¶ ããææ¡ãé©çšããéã«ããã©ãŒãã³ã¹ãäœäžããå¯èœæ§ããããŸãã
é床ã«é·ãè¡ïŒäŸïŒè€éãªSVGïŒãéžæãããšãäžèšãšåæ§ã®åé¡ãçºçããå¯èœæ§ããããŸãã
KLiPãäžåºŠã«ã¿ã¹ã¯ãå æ¬çã«åŠçã§ããªãå ŽåããããŸããããããããµãã¿ã¹ã¯ã«åå²ããããšã§ãKLiPãåã¹ããããæ¯æŽã§ããããšããããããŸãã
å³äžé ã®ã®ã¢ã¢ã€ã³ã³ãã¯ãªãã¯ããŠãKLiPã®èšå®ãã«ã¹ã¿ãã€ãºã§ããŸãã
ã¢ãã«ã»ã¯ã·ã§ã³ã§æ°ããã¢ãã«ã远å ããããã¢ãã«ã®åœ¹å²ã管çãããã§ããŸãã
ããã£ããã¢ãã«ãã¯ãäŒè©±åœ¢åŒã§å¿çããããã«èšèšãããLLMã§ããäžè¬çãªè³ªåã«å¯Ÿå¿ããè€éãªã³ãŒããçæããããã«ã¯ãéåžžãéåžžã«å€§èŠæš¡ãªïŒå€ãã®å Žå4050å以äžã®ãã©ã¡ãŒã¿ãæã€ïŒã¢ãã«ããŸãã¯ç¹å®ã®ãŠãŒã¹ã±ãŒã¹åãã«èšç·Žã»åŸ®èª¿æŽãããKrugleã³ãŒãLLMã®ãããªå°çšã³ãŒãã¢ãã«ãæé©ã§ãã
KLiPã§ã¯ããããã®ã¢ãã«ã¯æšæºã®ãã£ãããšVS Codeã¢ã¯ã·ã§ã³ã«äœ¿çšãããŸããç·šéãŸãã¯é©çšæ©èœã«ç¹å®ã®ã¢ãã«ãå®çŸ©ãããŠããªãå Žåãéžæããããã£ããã¢ãã«ããããã®ã¿ã¹ã¯ãåŠçããŸãã
config.yamlãã¡ã€ã«ã®äŸïŒ
models:
# ...
# ...
- name: Krugle Code 15B Chat Local
model: krugle-code-15b-chat
provider: shasta
apiBase: http://localhost:5668
roles:
- chat
- edit
- apply
defaultCompletionOptions:
contextLength: 16384
temperature: 0.7
topK: 45
topP: 0.75
maxTokens: 4096
# ...
# ...ãšãŒãžã§ã³ãã¯ãã£ããã¢ãã«ã«ããŒã«ã远å ããŠãå¹ åºãã³ãŒãã£ã³ã°ã¿ã¹ã¯ãåŠçã§ããããã«ããã³ã³ããã¹ããæåã§æ€çŽ¢ãããã¢ã¯ã·ã§ã³ãå®è¡ãããããæéãçããŸãããã£ããã¢ãã«ã®åœ¹å²èšå®ã§ãšãŒãžã§ã³ãã¢ãŒãïŒããŒã«äœ¿çšïŒãæå¹ãŸãã¯ç¡å¹ã«ã§ããŸãã
ãšãŒãžã§ã³ãã¯ãã£ãããšåãã€ã³ã¿ãŒãã§ãŒã¹ã§åäœãããããã¡ãã»ãŒãžãéä¿¡ããããã«åãå ¥åãã£ãŒã«ãã䜿ãç¶ããããšãã§ããŸãã@ã³ã³ããã¹ããããã€ããŒãã¿ã°ä»ããããããšãã£ã¿ãŒããã³ãŒããéžæãããããã³ã³ããã¹ãæäŸã®æåæ¹æ³ãåŒãç¶ãæ©èœããŸããçŸåšãšãŒãžã§ã³ãã¢ãŒãã§ãµããŒããããŠããã¢ãã«ã«ã¯ãKrugle Code 15B/35BãOpenAI GPT-4oão1ão1-minião3ão3-miniãããã³Anthropic Claude 3.5/3.7 Sonetãå«ãŸããŸãã
ãšãŒãžã§ã³ãã䜿çšãããšãèªç¶èšèªã§æç€ºãåºããã¢ãã«ã«ã¿ã¹ã¯ãåŠçãããããšãã§ããŸããäŸãã°ïŒ
ãã®ãããžã§ã¯ãå
ã®ãã¹ãŠã®eslintèšå®ã§react/no-unescaped-entitiesã«ãŒã«ããoffãã«èšå®ããŠãã ããã
ãšãŒãžã§ã³ãã¯ã¿ã¹ã¯ãå®äºããããã®é©åãªããŒã«ã決å®ããŸãã
ããã©ã«ãã§ã¯ããšãŒãžã§ã³ãã¯ããŒã«ã䜿çšããåã«èš±å¯ãæ±ããŸãããæ¿èªããã¯ãªãã¯ããŠç¶è¡ããããããã£ã³ã»ã«ããã¯ãªãã¯ããŠã¢ã¯ã·ã§ã³ãæåŠããŸãã
ãšãŒãžã§ã³ããåããŒã«ã䜿çšããæ¹æ³ãã以äžã®ãªãã·ã§ã³ããéžæããŠèšå®ã§ããŸãïŒ
- Allow (èš±å¯)ïŒããã©ã«ãïŒïŒããã£ã³ã»ã«ããšãæ¿èªããã¿ã³ã衚瀺ããŠããŠãŒã¶ãŒã«èš±å¯ãæ±ããŸãã
- Automatic (èªå)ïŒèš±å¯ãªã¯ãšã¹ããã¹ãããããŸããããŒã«ã¯èªåçã«åŒã³åºããããã®å¿çã¯çŽæ¥ã¢ãã«ã«éä¿¡ãããŸãã
- Disabled (ç¡å¹)ïŒããŒã«ã¯ã¢ãã«ã§äœ¿çšã§ããŸããã
é¢é£è³ªåã®è¡šç€º/é衚瀺ãåãæ¿ããŸãã
ããªãŒãã³ã³ããªãŒãã¢ãã«ãã¯ãfill-in-the-middleïŒFIMïŒãšåŒã°ããç¹æ®ãªåœ¢åŒã䜿çšããŠèšç·ŽãããLLMã§ãããã®åœ¢åŒã§ã¯ãã³ãŒãã¹ããããã®å§ãïŒãã¬ãã£ãã¯ã¹ïŒãšçµããïŒãµãã£ãã¯ã¹ïŒãæäŸããã¢ãã«ã¯ãã®éã®äžè¶³ããŠããéšåãäºæž¬ããŸããã¿ã¹ã¯ãçãçŠç¹ãçµã£ãŠããããã30åãã©ã¡ãŒã¿ãããªãå°èŠæš¡ãªã¢ãã«ã§ãè¯å¥œãªããã©ãŒãã³ã¹ãçºæ®ã§ããŸããå¯Ÿç §çã«ãå€§èŠæš¡ãªãã£ããã¢ãã«ã¯ãåºç¯ã«ããã³ãããäžããããŠããŠãããã®ã¿ã¹ã¯ã«èŠæŠããããšããããããŸãã
KLiPã§ã¯ããªãŒãã³ã³ããªãŒãã¢ãã«ã¯å ¥åæã«ã€ã³ã©ã€ã³ã³ãŒãææ¡ãæäŸããããã«äœ¿çšãããŸãããããæå¹ã«ããã«ã¯ãconfig.yamlãã¡ã€ã«ã§ã¢ãã«ã®åœ¹å²ã«ãautocompleteããå«ããå¿ èŠããããŸãã
config.yamlãã¡ã€ã«ã®äŸïŒ
- name: Krugle Code 15B Chat Local
model: krugle-code-15b-chat
provider: shasta
apiBase: http://localhost:5668
roles:
- autocompleteãã®ä»ã®ãªãã·ã§ã³ïŒ
- ãªãŒãã³ã³ããªãŒããã£ãã·ã¥ãäœ¿çš â ãªãŒãã³ã³ããªãŒããã£ãã·ã¥ãæå¹ãŸãã¯ç¡å¹ã«ããŸãã
- è€æ°è¡ã®ãªãŒãã³ã³ããªãŒã â ãªãŒãã³ã³ããªãŒããè€æ°è¡ããµããŒããããã©ãããå¶åŸ¡ããŸãããªãã·ã§ã³ã¯
alwaysãneverããŸãã¯autoïŒããã©ã«ãïŒã§ãã - ãã¡ã€ã«ã§ãªãŒãã³ã³ããªãŒããç¡å¹ã«ãã â äžèŽãããã¡ã€ã«ã§ãªãŒãã³ã³ããªãŒããç¡å¹ã«ããã°ãããã¿ãŒã³ã®ã«ã³ãåºåããªã¹ãïŒäŸïŒã_/.md, */.confãïŒã
KLiPã³ãŒããªãŒãã³ã³ããªãŒãæ©èœãæå¹/ç¡å¹ã«ããã«ã¯ãVSCodeã®ã¹ããŒã¿ã¹ããŒã«ããKLiPãã¿ã³ãã¯ãªãã¯ããŸããæ¬¡ã«ãããããããŠã³ã¡ãã¥ãŒã®ããªãŒãã³ã³ããªãŒããæå¹ã«ããããŸãã¯ããªãŒãã³ã³ããªãŒããç¡å¹ã«ããããåãæ¿ããŸãã

ç·šéããã³ããã«ã¯ããã£ããããã³ãããšã¯ç°ãªãã¢ãã«ã䜿çšãããšå¹æçãªããšãå€ãã§ããç·šéã¿ã¹ã¯ã¯éåžžããã³ãŒãã«çŠç¹ãåœãŠãŠãããäŒè©±ã®æµæ¢ããããŸãå¿ èŠãšããªãããã§ãããããã£ãŠãKrugle Code 15B/35Bã®ãããªã³ãŒãã«ç¹åããLLMãæšå¥šãããŸãã
KLiPã§ã¯ãã¢ãã«ã«ãeditãã®åœ¹å²ãå²ãåœãŠãŠãç·šéãªã¯ãšã¹ããåŠçãã¹ãã§ããããšã瀺ãããšãã§ããŸããç·šéå°çšã®ã¢ãã«ãå®çŸ©ãããŠããªãå Žåãã·ã¹ãã ã¯ããã©ã«ãã§éžæããããã£ããã¢ãã«ã䜿çšããŸãã
config.yamlãã¡ã€ã«ã®äŸïŒ
models:
# ...
# ...
- name: Krugle Code 15B Chat Local
model: krugle-code-15b-chat
provider: shasta
apiBase: http://localhost:5668
roles:
- chat
- edit
- apply
defaultCompletionOptions:
contextLength: 16384
temperature: 0.7
topK: 45
topP: 0.75
maxTokens: 4096
# ...
# ...ã³ãŒããç·šéããéããã£ããã¢ãã«ãšç·šéã¢ãã«ããã®åºåã¯ãæ¢åã®ã³ãŒããšããŸãæŽåããªãããšããããããŸãããapplyãã®åœ¹å²ãæã€ã¢ãã«ã¯ããã¡ã€ã«ã«å€æŽãé©çšããããã®ããæ£ç¢ºãªå·®åãçæããããã«äœ¿çšãããŸãã
config.yamlãã¡ã€ã«ã®äŸïŒ
models:
# ...
# ...
- name: Krugle Code 15B Chat Local
model: krugle-code-15b-chat
provider: shasta
apiBase: http://localhost:5668
roles:
- chat
- edit
- apply
defaultCompletionOptions:
contextLength: 16384
temperature: 0.7
topK: 45
topP: 0.75
maxTokens: 4096
# ...
# ...åã蟌ã¿ã¢ãã«ã¯ãããã¹ãããã¯ãã«ã«å€æããããã«èšèšãããŠãããä»ã®ãã¯ãã«ãšã®è¿ éãªæ¯èŒã«ãã£ãŠããã¹ãã®é¡äŒŒæ§ã倿ã§ããŸãããããã®ã¢ãã«ã¯äžè¬çã«ãLLMãããå°èŠæš¡ã§ãé«éãããã³ã³ã¹ãå¹çãè¯ãã§ãã
KLiPã§ã¯ãåã蟌ã¿ã¯ã€ã³ããã¯ã¹äœæäžã«çæããã@CodebaseãŸãã¯@docsã³ã³ããã¹ããããã€ããŒã«ãã£ãŠãããŒã«ã«ã³ãŒãããŒã¹ãããã¥ã¡ã³ãå
ã§é¡äŒŒæ§æ€çŽ¢ãŸãã¯æå³æ€çŽ¢ãå®è¡ããããã«äœ¿çšãããŸããKLiPã¯åã蟌ã¿ã«2ã€ã®ãªãã·ã§ã³ãæäŸããŠããŸãïŒ
- transformers.js â VS Codeæ¡åŒµæ©èœã«çµ±åãããçµã¿èŸŒã¿ã®åã蟌ã¿ã¢ãã«ã
- shasta â Shastaã«ãã£ãŠåŒ·åãããé«åºŠãªåã蟌ã¿ã¢ãã«ãäŸïŒ
models:
# ...
# ...
- name: Krugle Text Embedding Local
model: krugle-text-embedding
provider: shasta
apiBase: http://127.0.0.1:5668
roles:
- embed
# ...
# ...
ã³ãŒãããŒã¹ã®ã€ã³ããã¯ã¹äœæãæå¹ãŸãã¯ç¡å¹ã«ããããã€ã³ããã¯ã¹äœæã®ç¶æ ã確èªããããåã€ã³ããã¯ã¹ãããªã¬ãŒãããã§ããŸãã
ããã¥ã¡ã³ãã®ã€ã³ããã¯ã¹äœæã远å ãŸãã¯åé€ããããã€ã³ããã¯ã¹äœæã®ç¶æ ã確èªããããåã€ã³ããã¯ã¹ãããªã¬ãŒãããã§ããŸããããã©ã«ãã§ã¯ãKLiPã¯JavaScriptã¬ã³ããªã³ã°ãå¿ èŠãšããªãããã¥ã¡ã³ããµã€ããã¯ããŒã«ããããã®è»œéããŒã«ã䜿çšããŸãã
åçã«çæããããµã€ããã¯ããŒã«ããå¿
èŠãããå Žåãããšã©ãŒãçºçããå Žåã¯ãããã¥ã¡ã³ãã¯ããŒã«ã«Chromiumã䜿çšãããæå¹ã«ã§ããŸããããã«ãããKLiPãã£ãã·ã¥ãã£ã¬ã¯ããªã«ChromiumãããŠã³ããŒããããã€ã³ã¹ããŒã«ãããŸãã
ãµã€ãã®ã€ã³ããã¯ã¹ãäœæããããããã£ããããã¯ã¹ãã@docsãšå
¥åããããããããŠã³ããããã¥ã¡ã³ããéžæãããšãKLiPã¯èªåçã«é¡äŒŒæ§æ€çŽ¢ã䜿çšããŠãã¯ãšãªã«é¢é£ããã»ã¯ã·ã§ã³ãèŠã€ããŸãã

䜿çšãããã³ã³ããã¹ããã¯ãªãã¯ãããšããœãŒã¹ããã¥ã¡ã³ãã衚瀺ãããŸãã
KLiPã¯äžè¬çãªããã¥ã¡ã³ããµã€ãã®å€ããäºåã«ã€ã³ããã¯ã¹åããŠããŸãããããã®ãµã€ãã®åã蟌ã¿ã¯åœç€Ÿã«ãã£ãŠãã¹ããããæåã®ãªã¯ãšã¹ãåŸã«ããŒã«ã«ã«ããŠã³ããŒããããŸãããã®ä»ã®ãã¹ãŠã®ã€ã³ããã¯ã¹äœæã¯å®å
šã«ããŒã«ã«ã§è¡ãããŸãããã¡ã€ã¢ãŠã©ãŒã«ã§ãã¡ã€ã³krugle-klip.s3.ap-northeast-1.amazonaws.comããã¯ã€ããªã¹ãã«ç»é²ãããŠããããšã確èªããŠãã ããã
- ã»ãã·ã§ã³ã¿ããè¡šç€ºïŒæå¹ã«ãããšããã£ããã®äžã«ã¿ãã衚瀺ãããã»ãã·ã§ã³ã®æŽçãšã¢ã¯ã»ã¹ã«åœ¹ç«ã¡ãŸããããã©ã«ãã§ã¯ç¡å¹ã§ãã
- ã³ãŒããããã¯ãæãè¿ãïŒæå¹ã«ãããšãã³ãŒããããã¯å ã®ããã¹ããæãè¿ãããŸããããã©ã«ãã§ã¯ç¡å¹ã§ãã
- ãã£ããã¹ã¯ããŒã«ããŒãè¡šç€ºïŒæå¹ã«ãããšããã£ãããŠã£ã³ããŠã«ã¹ã¯ããŒã«ããŒã衚瀺ãããŸããããã©ã«ãã§ã¯ç¡å¹ã§ãã
- ã»ãã·ã§ã³ã¿ã€ãã«çæãç¡å¹åïŒç¡å¹ã«ãããšãæåã®ã¡ãã»ãŒãžåŸã«çŸåšã®ãã£ããã¢ãã«ã䜿çšããŠãåãã£ããã»ãã·ã§ã³ã®èŠçŽã¿ã€ãã«ãèªåçã«çæãããŸããããã©ã«ãã§ã¯ç¡å¹ã§ãã
- çã®Markdownãè¡šç€ºïŒæå¹ã«ãããšãã¬ã¹ãã³ã¹ãçã®Markdownããã¹ããšããŠè¡šç€ºãããŸããããã©ã«ãã§ã¯ç¡å¹ã§ãã
èšå®ãã¡ã€ã«ïŒconfig.yamlïŒã¯æåã§äœæãŸãã¯ç·šéããããšãã§ããŸããKLiPèšå®ããŒãžã®äžéšã«ãã èšå®ãéã (YAML) ãªã³ã¯ãã¯ãªãã¯ããããšã§ã¢ã¯ã»ã¹ã§ããŸãã
modelsã»ã¯ã·ã§ã³ã§ã¯ãèšå®ã§äœ¿çšããèšèªã¢ãã«ãå®çŸ©ããŸããã¢ãã«ã¯ãã£ãããç·šéãåã蟌ã¿ãªã©ã®æ©èœã«äœ¿çšãããŸãã
ããããã£:
-
name(å¿ é ): èšå®å ã§ã®ã¢ãã«ã®äžæã®èå¥åã§ãã -
provider(å¿ é ): ã¢ãã«ãããã€ããŒïŒäŸ:openai,shasta,anthropicïŒã -
model(å¿ é ): ç¹å®ã®ã¢ãã«åïŒäŸ:gpt-4o,krugle-code-15b-chatïŒã -
apiBase: ãªãã·ã§ã³ãã¢ãã«ã«å®çŸ©ãããããã©ã«ãã®APIåºæ¬URLãäžæžãããŸãã -
roles: ã¢ãã«ãå®è¡ã§ãã圹å²ãå®çŸ©ããé åã§ãchatãautocompleteãembedãeditãapplyãªã©ããããŸããããã©ã«ã:[chat, edit, apply]ã -
capabilities: ã¢ãã«ã®æ©èœã瀺ãæååã®é åã§ãKLiPã®èªåæ€åºãäžæžãããŸãããµããŒããããå€ã«ã¯tool_useãimage_inputããããŸãã -
systemMessage: ãã£ããã¢ãŒãã§ã®ããã©ã«ãã®ã·ã¹ãã ããã³ãããäžæžãããŸãã -
defaultCompletionOptions: ã¢ãã«è£å®ã®ããã©ã«ãèšå®:-
contextLength: æå€§ã³ã³ããã¹ããµã€ãºïŒããŒã¯ã³åäœïŒã -
maxTokens: ãã®ãã©ã¡ãŒã¿ã¯ãã¢ãã«ã1åã®æšè«ãªã¯ãšã¹ãã§çæã§ããããŒã¯ã³ã®æå€§æ°ãèšå®ããŸããçæãããããã¹ãã®é·ããå¶åŸ¡ããã¢ãã«ãé床ã«é·ãå¿çãçæããããšãé²ããŸããäžèšã®äŸã§ã¯ãæå€§ããŒã¯ã³æ°ã¯2048ã«èšå®ãããŠããŸãã -
temperature: ãã®ãã©ã¡ãŒã¿ã¯çæãããããã¹ãã®ã©ã³ãã æ§ãå¶åŸ¡ããŸããäœã枩床å€ã¯ã¢ãã«ãããä¿å®çãã€æ±ºå®è«çã«ããããäºæž¬å¯èœãªåºåãçæããŸããäžæ¹ãé«ã枩床å€ã¯ã©ã³ãã æ§ãå¢å ããããã倿§ã ãããäžè²«æ§ãäœãåºåããããããŸããäžèšã®äŸã§ã¯ã枩床ã¯äžç«çãªèšå®ã§ãã1ã«èšå®ãããŠããŸãã0.0ã¯æ±ºå®è«çã1.0ã¯éåžžã«ã©ã³ãã ã§ãã -
topP: æ žãµã³ããªã³ã°ãšãåŒã°ãããã®ãã©ã¡ãŒã¿ã¯çޝç©ç¢ºç質éã«åºã¥ããŠèæ ®ãããããŒã¯ã³ã®æ°ãåçã«èª¿æŽããŸããããã«ãããã¢ãã«ã¯å€æ§ãªåºåãçæããªãããçæãããããŒã¯ã³ã®ç·ç¢ºç質éãç¹å®ã®éŸå€ïŒtopPã§æå®ïŒãè¶ ããããšãä¿èšŒããŸããäžèšã®äŸã§ã¯ãtopPã¯0.75ã«èšå®ãããŠãããã¢ãã«ã¯çޝç©ç¢ºç質éã75%ãè¶ ãããŸã§ããŒã¯ã³ãèæ ®ããŸãã -
topK: ãã®ãã©ã¡ãŒã¿ã¯çæããã»ã¹ã®åã¹ãããã§èæ ®ãããããŒã¯ã³ã®æ°ãå¶éããŸãã確çååžã«åŸã£ãŠæãå¯èœæ§ã®é«ããããkã®ããŒã¯ã³ã®ã¿ãèæ ®ããããã¢ãã«ãå¶éããŸããããã«ãããã¢ãã«ãäžç¢ºããŸãã¯ç¡æå³ãªããŒã¯ã³ãçæããããšãé²ããŸããäžèšã®äŸã§ã¯ãtopKã¯45ã«èšå®ãããŠãããåã¹ãããã§ç¢ºçãæãé«ãããã45ã®ããŒã¯ã³ã®ã¿ãèæ ®ãããŸãã -
stop: çæãçµäºãããã¹ãããã·ãŒã±ã³ã¹ã®é åã -
n: çæããè£å®ã®æ°ã -
reasoning: Anthropic Claude 3.7+ã¢ãã«ã®æšè«ã¢ãŒããæå¹ã«ããããŒã«å€ã -
reasoningBudgetTokens: Anthropic Claude 3.7+ã¢ãã«ã®æšè«ã®ããã®ããŒã¯ã³äºç®ã
-
-
embedOptions: ã¢ãã«ãembedããŒã«ãæã€å Žåã«é©çšãããŸããåãèŸŒã¿æäœã«äœ¿çš:-
maxChunkSize: ããã¥ã¡ã³ããã£ã³ã¯ãããã®æå€§ããŒã¯ã³æ°ïŒæå°: 128ïŒã -
maxBatchSize: ãªã¯ãšã¹ããããã®æå€§ãã£ã³ã¯æ°ïŒæå°: 1ïŒã
-
äŸ:
models:
# ...
# Krugle LLMã®äŸ
- name: Krugle Code 15B Chat Local
model: krugle-code-15b-chat
provider: shasta
apiBase: http://localhost:5668
roles:
- chat
- edit
- apply
defaultCompletionOptions:
contextLength: 16384
temperature: 0.7
topK: 45
topP: 0.75
maxTokens: 4096
# èªåè£å®ã®äŸ
- name: Autocomplete Model
model: krugle-code-15b-chat
provider: shasta
apiBase: http://localhost:5668
roles:
- autocomplete
# OpenAIäºæLLMã®äŸ
- name: My LLM
provider: openai
apiBase: http://localhost:8081/v1
model: some-model
capabilities:
- tool_use
roles:
- chat
- edit
# Anthropicæšè«ã®äŸ
- name: Claude 3.7 Sonet
model: claude-3-7-sonnet-20250219
apiKey: sk-ant-apixxxxxxxxxxxxxxxxxxxxxxxx
provider: anthropic
template: anthropic
reasoning: true
roles:
- chat
defaultCompletionOptions:
contextLength: 200000contextã»ã¯ã·ã§ã³ã¯ã³ã³ããã¹ããããã€ããŒãæå®ããLLMã«è¿œå æ
å ±ãæäŸããŸããåãããã€ããŒã¯ç¹å®ã®ãã©ã¡ãŒã¿ã§ã«ã¹ã¿ãã€ãºã§ããŸãã
åã³ã³ããã¹ããããã€ããŒã®è©³çްãªäœ¿çšæ³ãšãã©ã¡ãŒã¿æ å ±ã«ã€ããŠã¯ãã³ã³ããã¹ããããã€ããŒã®ç« ãåç §ããŠãã ããã
ããããã£:
-
provider(å¿ é ): ã³ã³ããã¹ããããã€ããŒã®èå¥åãŸãã¯ååïŒäŸ:code,docs,webïŒ -
name: ãããã€ããŒã®ãªãã·ã§ã³ã®ã«ã¹ã¿ã å -
params: ãããã€ããŒã®åäœãèšå®ãããªãã·ã§ã³ã®èšå®ã
äŸ:
context:
- provider: code
- provider: folder
- provider: tree
- provider: docs
- provider: terminal
- provider: diff
- provider: search
- provider: url
- provider: open
- provider: problems
- provider: clipboard
- provider: os
- provider: debugger
- provider: krugleknow
- provider: skeleton
- provider: commit
- provider: codebase
params:
nFinal: 10
- provider: web
params:
engine: google
apiKey: YOUR_SERP_API_KEY
n: 5
country: us
language: en
useChromium: trueã«ãŒã«ã¯ãã£ãããç·šéããšãŒãžã§ã³ããªã¯ãšã¹ãã®ããã«ã¢ãã«ã«æç€ºãæäŸããŸãããããã¯éåžžããªãŒãã³ã³ããªãŒããã¢ãã©ã€ãªã©ã®ä»ã®ãªã¯ãšã¹ãã¿ã€ãã«ã¯äœ¿çšãããŸããã
rulesãããã¯ã¯é åã§ãããåèŠçŽ ã¯åçŽãªããã¹ãæååã«ããããšãã§ããŸãã
äŸ:
rules:
- åçã¯ç°¡æœã«ããŠãã ãããæãããªæŠå¿µã®èª¬æã¯é¿ããŠãã ãããã»ãšãã©ã®ããã°ã©ãã³ã°ãããã¯ã«ç²ŸéããŠãããšæ³å®ããŠãã ããããããžã§ã¯ãã®ã«ãŒãã«.kliprulesãã¡ã€ã«ã远å ããããšã§ããããžã§ã¯ãåºæã®ã«ãŒã«ãå®çŸ©ããããšãã§ããŸãããã®ãã¬ãŒã³ããã¹ããã¡ã€ã«ã¯ãã®å å®¹å šäœã§config.yamlã§èšå®ãããã«ãŒã«ãäžæžãããŸãã
äŸ:
åçã¯ç°¡æœã«ããŠãã ãããæãããªæŠå¿µã®èª¬æã¯é¿ããŠãã ãããã»ãšãã©ã®ããã°ã©ãã³ã°ãããã¯ã«ç²ŸéããŠãããšæ³å®ããŠãã ããã
ãã£ãããŠã£ã³ããŠã§/ããã³ããåã䜿çšããŠããªã¬ãŒã§ããã«ã¹ã¿ã ããã³ããã®ãªã¹ãã§ããåããã³ããã«ã¯ååã説æãããã³ããããã¹ãèªäœãå«ãŸããŸãã
äŸ:
prompts:
- name: inspect
description: ã³ãŒãå質ãšã»ãã¥ãªãã£ãã§ãã¯
prompt: >-
æäŸãããã³ãŒããæ
éã«åæããå
æ¬çãªã³ãŒãã¬ãã¥ãŒãè¡ã£ãŠãã ããã以äžã®åŽé¢ã«ç¹ã«æ³šæããŠã詳现ãªåæãšæ¹åææ¡ãæäŸããŠãã ããïŒ
- æ§æãšã©ãŒïŒæ§æã®åé¡ãåã®äžäžèŽãæªå®çŸ©å€æ°ããã§ãã¯ãã
- è«ççæ¬ é¥ïŒæœåšçãªè«çã®æ¬ é¥ãäžé©åãªå¢çæ¡ä»¶ã®åŠçãç¡éã«ãŒãããŸãã¯ããã©ãŒãã³ã¹ã®ããã«ããã¯ãç¹å®ãã
- ã»ãã¥ãªãã£è匱æ§ïŒSQLã€ã³ãžã§ã¯ã·ã§ã³ãXSSæ»æãCSRFè匱æ§ãæ€èšŒãããŠããªããŠãŒã¶ãŒå
¥åããã®ä»ã®ã»ãã¥ãªãã£ãªã¹ã¯ãæ€åºãã
- ã³ãŒãå質ïŒã³ãŒãã®èªã¿ããããã¢ãžã¥ãŒã«æ§ãåœåèŠåãã³ã¡ã³ãã®å®å
šæ§ãè©äŸ¡ãã
- ãã¹ããã©ã¯ãã£ã¹ïŒæ¥çã®ãã¹ããã©ã¯ãã£ã¹ã«æºæ ããŠããªãé åãææããæ¹åææ¡ãæäŸãã
çºèŠãããåé¡ãé倧床é ã«ãªã¹ãã¢ããããååé¡ã«å¯Ÿããå
·äœçãªè§£æ±ºçãæäŸããŠãã ããããã£ãããŠã£ã³ããŠã§/inspectã³ãã³ãã䜿çšããŠããã®ããã³ãããã¢ã¯ãã£ãã«ããŸãã
ã€ã³ããã¯ã¹ãäœæããããã¥ã¡ã³ããµã€ãã®ãªã¹ãã
ããããã£:
-
name(å¿ é ): ããã¥ã¡ã³ããµã€ãã®ååã§ã@docsããããããŠã³ã¡ãã¥ãŒããã®ä»ã®UIèŠçŽ ã«è¡šç€ºãããŸãã -
startUrl(å¿ é ): ã¯ããŒã«ãéå§ããããŒãžâéåžžã¯ããã¥ã¡ã³ãã®ã«ãŒããŸãã¯ç޹ä»ããŒãžã§ãã -
maxDepth: ã¯ããŒã«äžã«ãã©ããªã³ã¯ã®æå€§æ·±ããããã©ã«ãã¯4ã§ãã -
favicon: ãµã€ãã®ãã¡ãã³ã³ã®URLãããã©ã«ãã¯startUrlã«å¯Ÿããçžå¯Ÿçãª/favicon.icoã§ãã -
useLocalCrawling: ããã©ã«ãã®ã¯ããŒã©ããã€ãã¹ããããŒã«ã«ã¯ããŒã©ã®ã¿ã䜿çšããŸãã
äŸ:
docs:
- name: Krugle
startUrl: https://krugle.co.jp
favicon: ""ãã¡ã€ã«ãä¿åããããšãã€ã³ããã¯ã¹äœæãéå§ãããŸãã
ã¢ãã«ã³ã³ããã¹ããããã³ã«ã¯ãããã³ãããã³ã³ããã¹ããããŒã«äœ¿çšãçµ±äžããããã«Anthropicã«ãã£ãŠææ¡ãããæšæºã§ããKLiPã¯ããããMCPãµãŒããŒãšäºææ§ããããŸãã
ããããã£:
-
name(å¿ é ): MCPãµãŒããŒã®ååã -
command(å¿ é ): ãµãŒããŒãèµ·åããããã«äœ¿çšãããã³ãã³ãã -
args: ãªãã·ã§ã³ãã³ãã³ãã®åŒæ°ã®é åã -
env: ãªãã·ã§ã³ããµãŒããŒããã»ã¹ã®ç°å¢å€æ°ã®ãããã -
connectionTimeout: ãªãã·ã§ã³ããµãŒããŒæ¥ç¶ã¿ã€ã ã¢ãŠãïŒããªç§ïŒã
äŸ:
mcpServers:
- name: Time
command: uvx
args:
- mcp-server-time
- --local-timezone
- Asia/Tokyomodels:
- name: Krugle Code 15B Chat Local
model: krugle-code-15b-chat
provider: shasta
apiBase: http://localhost:5668
roles:
- chat
- edit
- apply
- autocomplete
defaultCompletionOptions:
contextLength: 16384
temperature: 0.7
topK: 45
topP: 0.75
maxTokens: 4096
- name: Krugle Text Embedding Local
model: krugle-text-embedding
provider: shasta
apiBase: http://127.0.0.1:5668
roles:
- embed
defaultCompletionOptions:
contextLength: 16384
temperature: 0.7
topK: 45
topP: 0.75
maxTokens: 4096
- model: claude-3-7-sonnet-20250219
apiKey: API_KEY
provider: anthropic
template: anthropic
name: Claude 3.7 Sonet
reasoning: true
roles:
- chat
- edit
- apply
defaultCompletionOptions:
contextLength: 200000
- model: gpt-4o
systemMessage: You are an expert software developer. You give helpful and
concise responses.
provider: openai
apiKey: API_KEY
name: GPT-4o
roles:
- chat
- edit
- apply
defaultCompletionOptions:
contextLength: 128000
context:
- provider: codebase
params:
nFinal: 20
- provider: code
- provider: folder
- provider: tree
- provider: docs
- provider: terminal
- provider: diff
- provider: search
- provider: url
- provider: open
- provider: problems
- provider: clipboard
- provider: os
- provider: debugger
- provider: krugleknow
- provider: skeleton
- provider: commit
- provider: web
params:
engine: google
apiKey: YOUR_SERP_API_KEY
n: 5
country: us
language: en
useChromium: true
prompts:
- name: inspect
description: Code Quality and Security Check
prompt: >-
Please carefully analyze the provided code and conduct a comprehensive
code review. Please pay special attention to the following aspects and
provide detailed analysis and improvement suggestions:
- Syntax errors: Check for syntax issues, type mismatches, or undefined variables
- Logic defects: Identify potential logic flaws, improper boundary condition handling, infinite loops, or performance bottlenecks
- Security vulnerabilities: Detect SQL injection, XSS attacks, CSRF vulnerabilities, unvalidated user input, and other security risks
- Code quality: Evaluate code readability, modularity, naming conventions, and comment completeness
- Best practices: Point out areas that don't conform to industry best practices and provide improvement suggestions
Please list the issues found in order of severity, and provide specific
solutions for each problem.
docs:
- name: Krugle
startUrl: https://krugle.co.jp
favicon: ""
mcpServers:
- name: Time
command: uvx
args:
- mcp-server-time
- --local-timezone
- Asia/Tokyo
name: KLiP Assistant
version: 1.0.0
schema: v1ã³ã³ããã¹ããããã€ããŒã䜿çšãããšãã@ããå ¥åããã ãã§ãèšèªã¢ãã«ïŒLLMïŒã®ã³ã³ããã¹ããšããŠæ©èœããã³ã³ãã³ãã®ããããããŠã³ã¡ãã¥ãŒã«ã¢ã¯ã»ã¹ã§ããŸããåã³ã³ããã¹ããããã€ããŒã¯ãã©ã°ã€ã³ãšããŠæ©èœããŸããå¿ èŠãªæ å ±ãœãŒã¹ãå©çšã§ããªãå Žåã¯ãKrugleãµããŒãããŒã ã«æ°ããã³ã³ããã¹ããããã€ããŒããªã¯ãšã¹ãã§ããŸãã
äŸãã°ãæ°ããGitHub Issueã«å¯Ÿå¿ããŠããå Žåã@issueãšå
¥åããŠé¢é£ãããã®ãéžæããŸããããã«ãããKLiPã¯issueã®ã¿ã€ãã«ãšå
容ã«ã¢ã¯ã»ã¹ã§ããããã«ãªããŸãããã®issueããreadme.mdãããfoobar.pyããªã©ã®ãã¡ã€ã«ã«é¢é£ããŠããããšãããã£ãŠããå Žåã¯ã@readmeã@foobarãšå
¥åããŠããããèŠã€ããŠéžæã§ããŸããçµæãšããŠãããã3ã€ã®ãã³ã³ããã¹ãã¢ã€ãã ãã¯ä»ã®å
¥åãšã·ãŒã ã¬ã¹ã«çµ±åãããŸãã
çµã¿èŸŒã¿ã®ã³ã³ããã¹ããããã€ããŒã䜿çšããã«ã¯ãconfig.yamlã«ç§»åããcontextProvidersãªã¹ãã«å«ããŠãã ããã
@fileãšå
¥åããŠãçŸåšã®ã¯ãŒã¯ã¹ããŒã¹å
ã®ä»»æã®ãã¡ã€ã«ãåç
§ããŸãã
context:
- provider: file@openã䜿çšããŠãéããŠãããã¹ãŠã®ãã¡ã€ã«ã®å
容ã«ã¢ã¯ã»ã¹ããŸããonlyPinnedãtrueã«èšå®ãããšããã³çãããããã¡ã€ã«ã®ã¿ãåç
§ããŸãã
context:
- provider: open
params:
onlyPinned: true@currentFileã䜿çšããŠãçŸåšç·šé/衚瀺ããŠãããã¡ã€ã«ã®å
容ã«ã¢ã¯ã»ã¹ããŸãã
context:
- provider: currentFile@codeã䜿çšããŠããããžã§ã¯ãå
šäœããç¹å®ã®é¢æ°ãã¯ã©ã¹ãåç
§ããŸãã
context:
- provider: code@diffã䜿çšããŠãçŸåšã®ãã©ã³ãã§è¡ããããã¹ãŠã®å€æŽãåç
§ããŸããäœæ¥ã®æŠèŠã説æããããã³ãããåã«äžè¬çãªã¬ãã¥ãŒããªã¯ãšã¹ãããã®ã«åœ¹ç«ã¡ãŸãã

context:
- provider: diff@commitã䜿çšããŠãç¹å®ã®Gitã³ãããã®ã¡ã¿ããŒã¿ãå·®åããŸãã¯æè¿ã®ãã¹ãŠã®ã³ããããåç
§ããŸãã
context:
- provider: commit
params:
Depth: 50
LastXCommitsDepth: 10æ·±ãã¯ãµãã¡ãã¥ãŒã«èªã¿èŸŒãŸããã³ãããã®æ°ãæå®ããããã©ã«ãã¯50ã§ããLastXCommitsDepthã¯å«ãŸããæè¿ã®ã³ãããã®æ°ã決å®ããããã©ã«ãã¯10ã§ãã
@codebaseã䜿çšããŠãã³ãŒãããŒã¹ããæãé¢é£æ§ã®é«ãã¹ãããããèªåçã«ååŸããŸãã
context:
- provider: codebaseèšå®
ã³ãŒãããŒã¹ã³ã³ããã¹ããããã€ããŒã®åäœã¯ããã€ãã®ãªãã·ã§ã³ã§æ§æã§ããŸãããããã®èšå®ã¯@codebaseãš@folderã³ã³ããã¹ããããã€ããŒã®äž¡æ¹ã«é©çšãããconfig.yamlã§èª¿æŽã§ããŸãïŒ
ãã¡ã€ã«ã®å ŽæïŒ ~/.klip/config.yaml
context:
- provider: codebase
params:
nFinal: 5
nRetrieve: 25
useReranking: true-
nRetrieveïŒ ãã¯ãã«ããŒã¿ããŒã¹ããæåã«ååŸããçµæã®æ°ïŒããã©ã«ãïŒ25ïŒã -
nFinalïŒ åã©ã³ã¯ä»ãåŸã«äœ¿çšããæçµçµæã®æ°ïŒããã©ã«ãïŒ5ïŒã -
useRerankingïŒ åã©ã³ã¯ä»ãã䜿çšãããã©ãããããã¯æåã«nRetrieveçµæãéžæããæ¬¡ã«LLMã䜿çšããŠäžäœnFinalçµæãéžæããŸãïŒããã©ã«ãïŒtrueïŒã
ã€ã³ããã¯ã¹äœæäžã«ãã¡ã€ã«ãç¡èŠãã
KLiPã¯.gitignoreãã¡ã€ã«ãå°éããã©ã®ãã¡ã€ã«ãã€ã³ããã¯ã¹ã«å«ããªãããæ±ºå®ããŸãã远å ã®ãã¡ã€ã«ãé€å€ããã«ã¯ã.klipignoreãã¡ã€ã«ãäœæã§ããŸããããã¯.gitignoreãšåãã«ãŒã«ã«åŸããŸãã
ã€ã³ããã¯ã¹ã®åŒ·å¶æŽæ°ãè¡ãã«ã¯ãcmd/ctrl + shift + PãæŒããŠããããŠã£ã³ããŠã®åèªã¿èŸŒã¿ããéžæããŠVS CodeãŠã£ã³ããŠããªããŒãããŠãã ããã
@folderãšå
¥åããŠã@codebaseãšåãæ€çŽ¢ã¡ã«ããºã ãåäžã®ãã©ã«ãã«éå®ããŠäœ¿çšããŸãã
context:
- provider: folder@searchãšå
¥åããŠãã³ãŒãããŒã¹æ€çŽ¢ã®çµæãåç
§ããŸããããã¯VS Codeã§ã®æ€çŽ¢çµæãšåæ§ã§ãã
泚æïŒãã®ã³ã³ããã¹ããããã€ããŒã®ããŒã¿ãµã€ãºã倧ãããªãå¯èœæ§ããããããGPUã¢ã¯ã»ã©ã¬ãŒã·ã§ã³ãªãã§ShastaãããŒã«ã«ã«ãããã€ãããšãããã©ãŒãã³ã¹ãäœäžããå¯èœæ§ããããŸãããã®ãããGPUãæèŒããShastaãããŒã«ã«ã«ãããã€ããããããé«éãªæšè«éåºŠãšæ¹åãããããã©ãŒãã³ã¹ãåŸãããã«GPUã€ã³ã¹ã¿ã³ã¹äžã§ãªã¢ãŒãã«ãããã€ãããKrugleAI Base ProãµãŒãã¹ã䜿çšããããšããå§ãããŸãã
context:
- provider: search@treeãšå
¥åããŠãçŸåšã®ã¯ãŒã¯ã¹ããŒã¹ã®éå±€æ§é ãåç
§ããŸããããã«ããLLMã¯ãããžã§ã¯ãã®ãã¹ãããããã£ã¬ã¯ããªã¬ã€ã¢ãŠãã衚瀺ã§ããŸãã
泚æïŒãã®ã³ã³ããã¹ããããã€ããŒã®ããŒã¿ãµã€ãºã倧ãããªãå¯èœæ§ããããããGPUã¢ã¯ã»ã©ã¬ãŒã·ã§ã³ãªãã§ShastaãããŒã«ã«ã«ãããã€ãããšãããã©ãŒãã³ã¹ãäœäžããå¯èœæ§ããããŸãããã®ãããGPUãæèŒããShastaãããŒã«ã«ã«ãããã€ããããããé«éãªæšè«éåºŠãšæ¹åãããããã©ãŒãã³ã¹ãåŸãããã«GPUã€ã³ã¹ã¿ã³ã¹äžã§ãªã¢ãŒãã«ãããã€ãããKrugleAI Base ProãµãŒãã¹ã䜿çšããããšããå§ãããŸãã
context:
- provider: tree@urlãšå
¥åããŠURLãå
¥åããŸããKLiPã¯ãããLLMçšã®Markdownããã¥ã¡ã³ãã«å€æããŸãã
context:
- provider: urlä»»æã®ããã¥ã¡ã³ããµã€ãããã¹ãããããã€ã³ããã¯ã¹åããŠååŸããã«ã¯ã@docsãšå
¥åããŸãã
context:
- provider: docsã¯ãªããããŒãã¢ã€ãã ãåç §ããŸã
context:
- provider: clipboard@terminalã䜿çšããŠãIDEã®ã¿ãŒããã«ã®å
容ã«ã¢ã¯ã»ã¹ããŸãã
context:
- provider: terminal@issueãšå
¥åããŠãGitHub issueså
ã®äŒè©±ãçŽæ¥åç
§ããŸããã¬ãŒãå¶éãåé¿ããããã«GitHubããŒãœãã«ã¢ã¯ã»ã¹ããŒã¯ã³ãå«ããŠãã ããïŒ
context:
- provider: issue
params:
repos:
- owner: krugle2
repo: klip
githubToken: ghp_xxxxxxxxxxxxxx@gitlab-mrãšå
¥åããŠãGitLabäžã®çŸåšã®ãã©ã³ãã®ãªãŒãã³ããŒãžãªã¯ãšã¹ãïŒMRïŒãåç
§ããŸãã
èšå®
read_apiã¹ã³ãŒããæã€ããŒãœãã«ã¢ã¯ã»ã¹ããŒã¯ã³ãäœæããæ¬¡ã®å
容ãèšå®ã«è¿œå ããŸãïŒ
context:
- provider: gitlab-mr
params:
token: "xxxxxxxxxxxxxxxxxxxx"ã»ã«ããã¹ãã£ã³ã°GitLabã®äœ¿çš
ã»ã«ããã¹ãã£ã³ã°ãããGitLabã€ã³ã¹ã¿ã³ã¹ãšéä¿¡ããã«ã¯ãèšå®ã§domainãã©ã¡ãŒã¿ãèšå®ããŸããããã©ã«ãã§ã¯gitlab.comã«èšå®ãããŠããŸãã
context:
- provider: gitlab-mr
params:
token: "xxxxxxxxxxxxxxxxxxxx"
domain: "gitlab.example.com"ã³ã¡ã³ãã®ãã£ã«ã¿ãªã³ã°
ç¹å®ã®ã³ãŒããç·šéããŠããå Žåã¯ãfilterCommentsãtrueã«èšå®ããŠãä»ã®ãã¡ã€ã«ããã®ã³ã¡ã³ãããã£ã«ã¿ãªã³ã°ã§ããŸãã
@jiraãšå
¥åããŠãJira issueã®äŒè©±ãåç
§ããŸããAtlassianã®APIããŒã¯ã³ãå«ããããåºæ¬èªèšŒã§ãã¹ã¯ãŒããšããŠããŒã¯ã³ãèšå®ããemailãštokenã䜿çšããŠãã ãããAtlassianã®APIããŒã¯ã³ã䜿çšããŠããå Žåã¯ãã¡ãŒã«ãèšå®ããªãã§ãã ããã
context:
- provider: jira
params:
domain: company.atlassian.net
token: ATATT...Jira ããŒã¿ã»ã³ã¿ãŒãµããŒã
ãã®ã³ã³ããã¹ããããã€ããŒã¯Jira APIããŒãžã§ã³2ãš3ã®äž¡æ¹ããµããŒãããŠããŸããããã©ã«ãã§ã¯ããŒãžã§ã³3ïŒã¯ã©ãŠãããŒãžã§ã³ïŒã䜿çšããŸãããJiraããŒã¿ã»ã³ã¿ãŒããŒãžã§ã³ã䜿çšããŠããå Žåã¯ãapiVersionããããã£ã䜿çšããŠAPIããŒãžã§ã³ã2ã«èšå®ããå¿
èŠããããŸãã
context:
- provider: jira
params:
apiVersion: "2"Issue ã¯ãšãª
ããã©ã«ãã§ã¯ãissueãæ€çŽ¢ããããã«æ¬¡ã®ã¯ãšãªã䜿çšãããŸãïŒ
assignee = currentUser() AND resolution = Unresolved order by updated DESCissueQueryãã©ã¡ãŒã¿ãèšå®ããããšã§ããã®ã¯ãšãªããªãŒããŒã©ã€ãã§ããŸãã
@osãšå
¥åããŠãçŸåšã®ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®ã¢ãŒããã¯ãã£ãšãã©ãããã©ãŒã ãåç
§ããŸãã
context:
- provider: osã³ãŒãããŒã¹ãŸãã¯ãµããã©ã«ãå ã®ãã¹ãŠã®ãã¡ã€ã«ã®æŠèŠãæäŸããåãã¡ã€ã«ã®ãããã¬ãã«ã®ã¯ã©ã¹ã颿°ãã¡ãœããã®äž»èŠãªã·ã³ãã«ã匷調衚瀺ããŸãããããã®ã·ã³ãã«ãå®çŸ©ãããŠããéèŠãªã³ãŒãè¡ãå«ã¿ãã¢ãã«ãã³ãŒãã®åéšåãå šäœã®ã³ãŒãããŒã¹ã«ã©ã®ããã«æ¥ç¶ãããããçè§£ããã®ã«åœ¹ç«ã¡ãŸãã
context:
- provider: skeletonçŸåšã®ãã¡ã€ã«ã®åé¡ãåç §ããŸãã
context:
- provider: problemsããã¯KrugleKnowæ€çŽ¢æ©èœãæå¹ã«ããããã«å¿ èŠã§ãã
context:
- provider: krugleknowããŒãã«ã®ã¹ããŒããšãµã³ãã«è¡ãåç
§ããã«ã¯ã@postgresãšå
¥åããŸãã
@databaseãšå
¥åããŠãããŒãã«ã¹ããŒããåç
§ããŸããããããããŠã³ã¡ãã¥ãŒã䜿çšããããèšå®ã«åºã¥ããŠããŒãã«åã®å
¥åãéå§ã§ããŸãã
ãšãŒãžã§ã³ãã¢ãŒããæå¹ã«ãªããšãKLiPã¯ææ°ã®ã€ã³ã¿ãŒãããããŒã¿ã䜿çšããŠãããæ£ç¢ºã§ææ°ã®åçãæäŸã§ããŸãã
config.yamlã«ã以äžã®äŸã®ããã«webã³ã³ããã¹ããããã€ããŒã远å ããŸããserper.devã§ç¡æã®APIããŒãååŸã§ããŸãã
- provider: web
params:
engine: google
apiKey: YOUR_SERPER_DEV_API_KEY
n: 5
country: us
language: en
useChromium: true@debuggerãšå
¥åããŠããã®ã¹ã¬ããã®ã³ãŒã«ã¹ã¿ãã¯ã®äžäœnéå±€ïŒããã©ã«ãã¯3ïŒå
ã®ããŒã«ã«å€æ°ãåç
§ããŸãã
context:
- provider: debugger
params:
stackDepth: 3å¿ èŠãªãã®ãèŠã€ãããªãå Žåã¯ãKrugleãµããŒãããŒã ã«é£çµ¡ãããããã¡ãã§æ°ããã³ã³ããã¹ããããã€ããŒããªã¯ãšã¹ãããissueãäœæããŠãã ããã
ãŸãã¯shasta.logãã¡ã€ã«ã確èªããŠãã ãããmacOSãWindowsã§ã¯ã$SHASTA_HOME/shasta.logã«é
眮ãããŠããŸããLinuxã§ã¯ã/var/log/shasta/shasta.logã«ãããŸãã以äžã®ãããªãšã©ãŒã衚瀺ãããŠããå Žåã¯ããã·ã³ã®RAMãäžè¶³ããŠããããšã瀺ããŠããŸãã
ggml_metal_graph_compute: command buffer 3 failed with status 5
ggml_metal_graph_compute: command buffer 3 failed with status 5
ggml_metal_graph_compute: command buffer 3 failed with status 5
解決ç:
KLiPã®config.yamlãã¡ã€ã«ã§contextLengthãšmaxTokensãã©ã¡ãŒã¿ã調æŽããŠãã ããã以äžã¯äŸãšãªãå€ã®ãã¢ã§ãïŒ16384/4096ã8192/4096ã8192/2048ã4096/2048ã2048/1024ã2048/512ã1024/512ã
models:
# ...
# ...
- name: Krugle Code 15B Chat Local
model: krugle-code-15b-chat
provider: shasta
apiBase: http://localhost:5668
roles:
- chat
- edit
- apply
- autocomplete
defaultCompletionOptions:
contextLength: 16384
temperature: 0.7
topK: 45
topP: 0.75
maxTokens: 4096
# ...
# ...Klipã¯ã€ã³ããã¯ã¹ã«å«ããªããã¡ã€ã«ã決å®ããããã«.gitignoreãã¡ã€ã«ã®ã«ãŒã«ã«åŸããŸãã远å ã®ãã¡ã€ã«ãé€å€ããã«ã¯ã.gitignoreãšåãã«ãŒã«ã«åŸã.klipignoreãã¡ã€ã«ã远å ã§ããŸãã
äŸãã°ããããžã§ã¯ãã®ãããã¬ãã«ã«.klipignoreãã¡ã€ã«ã远å ã§ããŸãã
.vscode/
node_modules/
dist
media
.git
*.log
# ä»ã®ã«ãŒã«ãããã«è¿œå
# ...åã«numThreadsãªãã·ã§ã³ã远å ããŠãã ããã
models:
# ...
# ...
- name: Krugle Code 15B Chat Local
model: krugle-code-15b-chat
provider: shasta
apiBase: http://localhost:5668
roles:
- chat
- edit
- apply
- autocomplete
defaultCompletionOptions:
contextLength: 16384
temperature: 0.7
topK: 45
topP: 0.75
maxTokens: 4096
numThreads: 8
# ...
# ...Shastaã¯æšè«ã«å°çšGPUïŒNVIDIA/AMDïŒã®VRAMã䜿çšããŸããã¢ãã«ãã©ã¡ãŒã¿ã®èªã¿èŸŒã¿ãªã©ã®ã¿ã¹ã¯ã¯ãVRAMã«è»¢éããåã«ã¢ãã«ãã¡ã€ã«ãRAMã«èªã¿èŸŒãå¿ èŠããããããCPUã¯åžžã«å¿ èŠãšãããŸãã
krugle-code-10b:latest c1669e6bec24 10 GB 100% GPU
ãã¹ãŠã®ã¢ãã«ã®éã¿ãVRAMã«èªã¿èŸŒãŸããŸããæ¬¡ã®èŠå ã¯ã³ã³ããã¹ããŠã£ã³ããŠã®ãµã€ãºã§ãã
ã³ã³ããã¹ããŠã£ã³ããŠã®ãµã€ãºãåŠçããã®ã«ååãªVRAMãããå ŽåãGPUã䜿çšãããŸããããã§ãªããã°ãCPUãæšè«ãåŠçããŸãã
ã³ã³ããã¹ããŠã£ã³ããŠã®ãµã€ãºã¯ã¯ã©ã€ã¢ã³ãåŽïŒAI WebãŸãã¯KLiPïŒã§èª¿æŽã§ããŸããäŸãã°ãKLiPã®config.yamlã倿ŽããŠcontextLengthãæžããããšãã§ããŸãïŒ
models:
# ...
# ...
- name: Krugle Code 15B Chat Local
model: krugle-code-15b-chat
provider: shasta
apiBase: http://localhost:5668
roles:
- chat
- edit
- apply
- autocomplete
defaultCompletionOptions:
contextLength: 16384
temperature: 0.7
topK: 45
topP: 0.75
maxTokens: 4096
# ...
# ...VRAMãã»ãŒæºæ¯ãŸãã¯å®å šã«æºæ¯ã®å Žåãã¢ãã«ã®æ®ãã®éšåã¯ã·ã¹ãã ã¡ã¢ãªã«ããŒããããCPUãç¡æéã«æšè«ãåŠçããŸãããã ããGPUã¯CPUã®ã¿ã䜿çšãããããäŸç¶ãšããŠé«éã§å¹ççã§ãã
krugle-code-10b:latest c1669e6bec24 10 GB 100% GPUGPU䜿çšçã¯100%ã§ããäŸãã°ç©ºãVRAMã500 MBãããªãå ŽåããããŸãã
ãŸãã¯
krugle-code-10b:latest c1669e6bec24 10 GB 46%/54% CPU/GPUãã¹ãŠãæ£ããèšå®ãããŠããããšã確èªããããã«ã以äžã®æé ã«åŸã£ãŠãã ããïŒ
- ãEnable Tab Autocompleteãèšå®ããã§ãã¯ãããŠããããšã確èªããŸãïŒVS Codeã§ã¯ãã¹ããŒã¿ã¹ããŒã®ãKlipããã¿ã³ãã¯ãªãã¯ããŠåãæ¿ããŸãïŒã
- Shastaãã€ã³ã¹ããŒã«ãã»ããã¢ãããå®è¡ãããŠããããšã確èªããŸãã
-
shasta lsãå®è¡ããŠãã¢ãã«ãããŠã³ããŒããããŠããããšã確èªããŸãã - ä»ã®è£å®ãããã€ããŒãå¹²æžããå¯èœæ§ããããããããããç¡å¹ã«ããŸãã
- KLiPãåæã«ãã£ããçšã«äœ¿çšããªãã§ãã ãããããã«ãããShastaã¯ã¡ã¢ãªããã¢ãã«ãç¹°ãè¿ãèªã¿èŸŒã¿ãšè§£æŸããããšã«ãªããäž¡æ¹ã®å¿çãé ããªããå¿çããªããªããŸãã
- æœåšçãªãšã©ãŒããªãããã°åºåã確èªããŸãïŒVS Codeã§ãcmd/ctrl + shift + PãâãToggle Developer ToolsãâãConsoleãã¿ãïŒã
- ããã§ãåé¡ãããå Žåã¯ããç¥ãããã ãããã§ããã ãæ©ããæäŒãããŸãã
ããã¯ããŒããŠã§ã¢ã«ãã£ãŠç°ãªããŸãã
ãã®ã·ã¹ãã ã®ç²ŸåºŠãåäžãããããã«åãçµãã§ãããä»åŸæ°é±éã§å€§å¹ ãªæ¹åãæåŸ ãããŸãã
ç¹°ãè¿ããã¿ãŒã³ã®ãã¹ã«æ°ä»ããå Žåã¯ããã²ãå ±åãã ãããã§ããã ãæ©ã察åŠããŠä¿®æ£ããŸãã
ã©ã€ã»ã³ã¹