
CursorãšãŒãžã§ã³ãè¬åº§ è¶ ç²ŸåºŠåäžç·šã Rulesãã¯ããã¯ã§ããªãããšãŒãžã§ã³ããã¹ã¿ãŒã«ïŒ
ã©ããããã«ã¡ã¯ïŒãšã¯ã¹ãã©ã¶ã®çæAIãšãã³ãžã§ãªã¹ãã®miyattiã§ãïŒãããŒæè¿ãã£ããCursorç¥ãã§ããïŒïŒïŒïŒ
ãããããŸã§ãCursorãšãŒãžã§ã³ãè¶ å ¥éè¬åº§ã¯ïŒïŒïŒïŒãããè¶ ããšãããèªåãšããŠã¯èŠãããšããªããããå€ãã®äººã«èªãã§ããã£ãŠã»ããšãããããã§ãããæ¬åœã«ä»Cursorãç±ããã ãªïŒïŒïŒïŒïŒãšå®æããŸããïŒ
ãšããããšã§ãä»åã¯ååã®ããããžã§ã¯ã管çãã¹ãã¬ã¹ãAIããµããŒãïŒãã³ãšã³ãžãã¢ã§ãOKãªCursorãšãŒãžã§ã³ãè¬åº§ å®è·µç·šã
ãã¡ãã®ç¶ç·šãšããæãã§ãåå玹ä»ããCursorã®Rulesæ©èœã®ãããæ¬æ Œçãå ·äœçãªãããããããã¡ããã¡ãããã¢ãã¯ã«ãäŒãããŠãããããšæããŸãïŒïŒïŒ
Rulesãšãããã®ã䜿ãå§ããã ãã§ããã¿ã¹ã¯ç®¡çã¢ãŒãããã¢ã€ãã¢çºæ£ã¢ãŒãããªã©å€åœ©ã«åãããããšãã玹ä»ããŸããããããã
ããã£ãšç²ŸåºŠãäžããããã©ãçµå±ã©ããã£ãŠRuleã£ãŠããã°ãããã§ãããâŠã
ãšãã声ã¯å€ãã§ããããä»åã¯Ruleã®æžãæ¹ãããããã¡ããã¡ã粟床ãã§ããæãéãã«ãšãŒãžã§ã³ããåãã«ãŒã«ã®æžãæ¹ããäŒãããŠãããããšæããŸãããã®éµã¯ãYAML圢åŒãã§ããããšã§ãïŒïŒ

ãã®YAML圢åŒãšãããã®ã§ãâã¡ãã£ãšæ§é çã«æžãâã ãã§ãAIãšãŒãžã§ã³ãã¯æã£ã以äžã«ãã¬ãã«ãã£ããåããŠããããã§ãã
â»ãããŠãä»åã¯è¥å¹²é£æåºŠããŒãã¢ãŒãã§ãïŒïŒïŒïŒã§ããããªãäžå¯§ã«åå¿è åãã«æãããã«å¿ãããŠã¯ããã®ã§ããããããã°ãã²æåŸãŸã§ããã¿ããã ããã°ãŒ
YAMLã£ãŠäœïŒ ãããããªæžãæ¹

â YAMLã¯â人éã«ããããâããŒã¯ã¢ããèšèª
YAMLãšã¯ãYAML Ainât Markup Languageãã®ç¥ãïŒãªãã ãããïŒ
ãŸãç°¡åã«ãããšãAIãçè§£ããããããã«ãããã«ããããã®ãã©ãŒããããã¡ãã£ãšç¥ã£ãŠã人ãªãjsonãxmlã®ä»²éã¿ãããªãã®ãšæã£ãŠãã ããã°ãç¹åŸŽãšããŠã¯
æ¹è¡ãšç©ºçœïŒã€ã³ãã³ãïŒã ãã§éå±€ã衚çŸ
ïŒXMLãšãJSONã¿ããã«ïŒã¿ã°ãã«ãã³ã§å²ãŸãªãããã人éãèªã¿ããã
ããšãã°ãããªäŸã§ãïŒ
menu: ã«ã¬ãŒ
people: 4
steps:
- name: buy_ingredients
message: "飿ãè²·ãã«è¡ããŸããã"
- name: cook
message: "ã«ã¬ãŒãç
®èŸŒã¿ãŸããã"
ãmenuããpeopleããšãã£ãçš®å¥ã¿ãããªãã®ïŒé ç®åïŒã«å¯ŸããŠããã®äžèº«ïŒå 容ïŒãæžããŠããã¹ã¿ã€ã«ã§ãã
ããã¿ãŠããã£ããšãªã£ããããããããã§ããããã¡ãã¥ãŒã¯ã«ã¬ãŒã人æ°ã¯4人ãã¹ããããšããŠã¯é£æè²·ãã«è¡ãã¹ããããšãã«ã¬ãŒãç ®èŸŒãã¹ããããã£ãŠã®ãããããããã£ãŠããšããããŠããã ãã§ãã
ã·ã³ãã«ãªããŒã¿æ§é ãªãâæžããŠããéãâã®æå³ã«ãªãããããããããã°ã©ãã³ã°æªçµéšã§ãæå€ãšæ±ããããã®ã匷ã¿ã§ãã
ã§ã¯ãããããªïŒïŒïŒãããããïŒâ»äžæŠããšãŒãžã§ã³ãæ§ç¯ã®çè«çãªãšãããé°å²æ°ã€ãã¿ããã²ãšã¯ããã¯é£ã°ããŠããã£ãŠã倧äžå€«ã§ãïŒ
â è¶ çµ¶ã·ã³ãã«YAMLæžãæ¹å ¥é
1. ãŸãã¯è¶ çãäŸ
# ããã¯ã³ã¡ã³ãã§ãïŒè¡é ã« # ããããšç¡èŠãããŸãïŒ
æ°å: "éŽæšå€ªé" # âæ°åâãšããé
ç®ã« "éŽæšå€ªé" ãæå®
幎霢: 28 # 幎霢ãšããæ°å€é
ç®ã«ã¯ 28 ãšèšå
¥
奜ç©:
- "ã©ãŒã¡ã³" # ãªã¹ãã®æžãæ¹ïŒé
ç®åã®äžã«ã-ãã§äžŠã¹ã
- "ã«ã¬ãŒ"
- "寿åž"
é ç®å: å 容 ã®åœ¢ã§æžã
ãªã¹ãã£ãœãã®ããããããã° -ïŒãã€ãã³ïŒã§å§ãã
2. éå±€æ§é ã§âãŸãšãŸãâã衚çŸ
YAMLã®åŒ·ã¿ã¯ãéå±€ã衚çŸã§ãã
äŸãã°ãããäŒç€Ÿã®âåŸæ¥å¡âããŒã¿ã管çãããªãïŒ
åŸæ¥å¡:
éŽæšå€ªé:
éšçœ²: "å¶æ¥éš"
幎霢: 28
ã¹ãã«:
- "ã³ãã¥ãã±ãŒã·ã§ã³"
- "Excelåæ"
äœè€è±å:
éšçœ²: "éçºéš"
幎霢: 32
ã¹ãã«:
- "ããã°ã©ãã³ã°"
- "UIãã¶ã€ã³"
ãåŸæ¥å¡ã ã®äžã«ãéŽæšå€ªéããšãäœè€è±åããšãããŸãšããäœããããããã«æ
å ±ãã¶ãäžãã圢ã
Excelã®ããã«è¡åãäœããªããŠããããã¹ãã ãã§éå±€çã«è¡šããŸãã
3. æ¹è¡ïŒã€ã³ãã³ããåœ
YAMLã§ã¯ã空çœã®æ°ããæ¹è¡ããäœçœ®ããæ§é ãæ±ºããŸãã
äžã®éå±€ããããšãã¯ãå·ŠåŽã«ã¹ããŒã¹ãäžå®æ°ãããæãã§ãã
äœæ:
éœéåºç: "æ±äº¬éœ"
åžåºçºæ: "æ°å®¿åº"
çªå°: "1-1-1"
äžã®éå±€ã¯2ååã®ã¹ããŒã¹ãäž»æµããã
â Cursorã®Rulesãã¡ã€ã«ã«ããYAMLã¯ãããŸã
ãªããšãªãæžãæ¹ã¯çè§£ãããŸãããïŒãããã§ããïŒ
ãŸãå°ã£ããCursorã«ãããããæãã®YAMLã£ãœããããã«ããŠããšãããšãã£ãŠãããã®ã§ããã£ãŠãããŸãããã
Cursorãå©çšãã.mdcãšããæ¡åŒµåã®ãã¡ã€ã«ã¯ãMarkdownãããŒã¹ã«ãªã£ãŠãŸãããå®ã¯YAMLãæžããŠãåé¡ãªãèªèããŠãããŸãã®ã§ãå®å¿ãïŒå®ã¯MDCãšãããã¡ã€ã«åœ¢åŒèªäœãYAMLã§æãããããšãæ³å®ããMDãã¡ã€ã«ã®æ¡åŒµçãªãã®ã ã£ããããŸãïŒ
TipsãšããŠã¯ãMDCãã¡ã€ã«ã®ãªãã§ãããªæãã§ãããšãYAMLãšããŠè²åãããŠè¡šç€ºãããã®ã§äŸ¿å©ã§ãïŒãããããªãªããŠãåãã¯åãïŒ

æåã¯ããïŒããã°ã©ãã³ã°ã£ãœãâŠâŠããšèº«æ§ãããããããŸããããã¡ãã£ãšããã«ãŒã«ãééããªããã°ããããŸã§é£ãããããŸããã
ã»ãã®å°ãæ
£ããã°ãããã ãã§AIãåæã«åããŠãããã®ãïŒããšæåã§ããã¯ãã
ã»ããšã«ãããªã«âYAMLâãå¿ èŠãªã®ïŒèªç¶èšèªãããã¡ãªã®ïŒ

ãŸãä»åã¯æ£çŽãã¡ããã¡ãããã©ãããŒã¯ãªããããã§ããã©ããããªã®ã§ããŸã
ãã·ã³ãã«ãªããã³ããã ãã§ãåãã®ã«ãããããé¢åãããªYAMLãæžãæå³ã£ãŠäœïŒã
ãšæãæ¹ãå€ãã®ã§ã¯ãªãã§ããããã
å®ã¯ãããAIãšãŒãžã§ã³ãã®ç¹æ§ãšå€§ããé¢ãã£ãŠããŸãã人éã«ãšã£ãŠã¯èªç¶èšèªã ãã§ãââããŠãçµãã£ããÃÃããŠããšäŒããæ¹ãæ¥œã«æããŸãããããšããããAIã¯èªç¶èšèªã ãã ãšåæã«èª€èªããããšãå€ãã®ã§ãã
1ïŒAIã¯èªç¶èšèªãåŸæãªããã§èŠæ
è¿å¹Žã®ChatGPTããŒã ã§ãAIã¯äœã§ãçè§£ããŠãããããšæãããããããŸããããå®éã¯ææ§ãªæç€ºã«ã¯åŒ±ãé¢ããããŸãããšãããé åºãæ¡ä»¶åå²ã絡ãå Žé¢ã§ã¯ã以äžã®ãããªæ··ä¹±ãèµ·ããã¡ã§ãïŒ
質åã®é åºãâæ°ãŸããâã«å€ãã
ãŠãŒã¶ãŒã®ç¢ºèªãåŸ ããã«ããã®ã¿ã¹ã¯çµããããšå€æããŠå ã«é²ã
âããã¯ããèŠããªãæ å ±ã ããâ ãšåæã«çç¥ãã
çµæãæ¬æ¥ã®æé ãèžãŸãã«é£ã°ããŠããŸããªã©ã®âè§£éãã¬âãé »çºããŸãã
2ïŒãæ§é ãåæç€ºãåŸæ
ããã§æŽ»ããã®ããYAMLã«ããâã¹ãããããšã®ã«ãŒã«âã®æç€ºã§ãã
ãããã§äœãèãããã®æ¡ä»¶ãªã次ã¯ã³ããããšãããŒãåœ¢ã§æžããŠããã°ãAIã¯âè§£éâãšããææ§äœæ¥ãã»ãŒããªããŠæžããããäžè²«ããåãããããããªããã§ãã
MDCãã¡ã€ã«ã«YAML圢åŒã§æžããŠããã°ãäœåºŠäœ¿ã£ãŠãã»ãŒåãé åºã§ã¿ã¹ã¯ãé²ããåãç¢ºèªæé ãèžãã§ãããã®ã§ãã·ã³ãã«ããã³ããã®ãããªãã¬ãæžããŸãã
ã·ã³ãã«ããã³ãã vs. YAMLäŸ
ããšãã°ãå®éã®èšè¿°æ¹æ³ãã©ãã ãéãããå€é£¯æºåã®äŸã䜿ã£ãŠæ¯ã¹ãŠã¿ãŸãããã
äŸïŒå€é£¯æºåãããå Žå
ã·ã³ãã«ãªæç€ºïŒã¡ãã£ãšäžå®å®ïŒ
ãŠãŒã¶ãŒããå€é£ã®ã¡ãã¥ãŒãšäººæ°ãèããŠã
ãããã調çæéãšé£äºæéãèããŠã
èšç»ãç«ãŠãŠã
ãããçµãã£ãã確èªãæ±ããŠã
OKãªãè²·ãç©ãªã¹ããšæé æžãäœã£ãŠãäžèŠãããšãäœãåé¡ãªã®ïŒããšæãã»ã©ããµãããªæžããŠããŠäŸ¿å©ããã§ãã
ããããAIã®è§£éãå
¥ã蟌ãäœå°ã倧ããããã以äžã®ãããªäºæ
ãèµ·ãããã¡ã§ãïŒ
ãã©ããããOKã ããããšåæã«å€æããŠãã¡ã€ã«äœæãé²ããŠããŸã
質åé åºãé£ã°ããã¡ãã¥ãŒãèããã«äººæ°ã ãèãïŒãŸãã¯éïŒ
ãŠãŒã¶ãŒãžã®ç¢ºèªãçããŠæ¬¡ãã§ãŒãºã«çªå ¥
çµæããããããŸã ç®ç«ããæ±ºãŸã£ãŠãªãã®ã«äºç®ãèšå®ãããâŠã ãªã©ãæå³ããªãé²ãæ¹ã«ãªããã¡ã
ã·ã³ãã«ã«æžãã»ã©â人éã«åªããâæããããŸãããAIã¯ææ§ãªãŸãŸåŠçããŠããŸãã®ã§ãã
YAML圢åŒïŒå®å®ïŒ
- name: "ask_menu"
action: "ask_question"
question: "仿¥ã®å€é£ã¡ãã¥ãŒãæããŠãã ãã"
variable: "dinner_menu"
- name: "ask_people"
action: "ask_question"
question: "äœäººåãäœããŸããïŒ"
variable: "people_count"
- name: "confirm_plan"
action: "confirm"
message: "ãããªç®ç«ã§ããã§ããïŒ"
variable: "plan_ok"
- name: "create_recipe"
action: "create_file"
...
äžæ¹ãããããYAML圢åŒã§ã¹ãããããšã«æç¢ºã«æžããŠããã°ã
ãé çªãé£ã°ããªãã
ã確èªã®ãªããŸãŸå
ã«é²ãŸãªãã
ããã¡ã€ã«äœæã¯æåŸã«ç¢ºå®ã«è¡ãã
ãšãã£ãå³å¯ãªãããŒãå®å®çã«åçŸã§ããŸãã
å®éã«ãã®åœ¢ã§åãããšã
å¿ ãã¡ãã¥ãŒãèã
次ã«äººæ°ãèã
ãŠãŒã¶ãŒã®OKãåŸãŠããã¬ã·ããã¡ã€ã«ãèªåçæ
ãšããæé ãæ¯ååãããã«èžãã§ããããããããã£ã¡ãã£ã«ãºã¬ãå±éºæ§ãã°ããšæžãã®ã§ãã
ãã³ãºãªã³ïŒãŒãããYAML圢åŒã§Rulesãäœæãã

RulesãåããŠäœãæ¹ã«ãšã£ãŠã¯ããäœããæãã€ããã°ããã®ãããæå€§ã®ããŒãã«ãããããŸããã
ããã§ã¯ããã€ãã®ããã«ããã³ãºãªã³ãã£ãŠã¿ãŸããããã·ã³ãã«ãªãå€é£æºåãšãŒãžã§ã³ããã顿ã«ãåæ©ã®åæ©ããYAMLã§æžãããMDCãã¡ã€ã«ãçµã¿äžããæé ã解説ããŸããããã°ããå€é£ã®æ¯åºŠãé Œãã ãã§ãµããŒãããŠãããAIç§æžããäœãæµããäžç·ã«äœéšããŠã¿ãŸãããã
çãäŸã§ããããã®ã¹ããããæŒããããšãããMDCãã¡ã€ã«ã£ãŠãããªæãã§æžãã°ãããã ããšäžæ°ã«ã€ã¡ãŒãžãæ¹§ãã¯ãã§ãã
â» å®éã«ã©ããã£ãŠRulesãCursorã«äœãã°ãããã«ã€ããŠã¯ååã®å®è·µç·šã®èšäºãåç §ããŠãã ããïŒ

ããŠãå ã«ãã®ã«ãŒã«ã§ãå®éã«ãšãŒãžã§ã³ããã©ããªæãã§åãã®ããããã¢ã³ã¹ãã¬ãŒã·ã§ã³ããŸãã
å®éã«æå ã§ãåãããŠã¿ãã人ã¯ãGithubã«ããããã宿ãããRulesãå ¬éããŸããã®ã§ããã¡ããæå ã§Cursorã§åãããŠã¿ããšãããšæããŸãã

å©ç𿹿³
Cursorã®æ°èŠãŠã£ã³ããŠããç°¡åã«ã»ããã¢ããã§ããŸãïŒ
Cursorãèµ·åãããNew Windowããéžæ
ãClone repoããéžã³ããã®ãªããžããªã®URLãå ¥å
ãã©ã«ãæå®ã®UIã衚瀺ãããããå³äžã®ãSelect as repository destinationããã¿ã³ãã¿ãã
Chatããã«ãéããå€é£ã®æºåããšå ¥åã察話çã«å€é£ã®èšç»ãå§ãŸããŸã
æ°ããäœæããããããžã§ã¯ãã¯Dinnerãã©ã«ãã«ä¿åãããŸã
ãšããããšã§YAMLã§æžããRulesïŒMDCãã¡ã€ã«ïŒãã©ã®ããã«å®éã®äŒè©±ãå°ãããçè§£ããããã«ãå®éã®å¯Ÿè©±äŸãèŠãŠã¿ãŸãããã以äžã¯ãäœæããå€é£æºåãšãŒãžã§ã³ãã䜿çšããå®éã®ããåãã§ãïŒ
1. æ å ±åéãã§ãŒãº

User: å€é£ã®æºåããé¡ãããŸã
Cursor: å€é£ã®æºåãããã«ããã£ãŠã質åãããŠãã ããã
仿¥ã®å€é£ã®ã¡ãã¥ãŒåãæããŠãã ããïŒäŸïŒã«ã¬ãŒã©ã€ã¹ããã¹ã¿ãçŒãéå®é£ãªã©ïŒ
User: ã«ã¬ãŒã§ã
Cursor: é£äºäººæ°ã¯äœåã§ããïŒ
User: 4人ïŒå€§äººäºäººåäŸäºäºº
Cursor: 調çäºå®æå»ã¯ãã€é ã§ããïŒïŒäŸïŒ18:00ïŒ
User: 20æããã
Cursor: é£äºäºå®æå»ã¯ãã€é ã§ããïŒïŒäŸïŒ19:00ïŒ
User: 21æããã
Cursor: äºç®ã¯ããããããã§ããïŒïŒäŸïŒ2000åïŒ
User: ç¹ã«æ±ºããŠãªããã©ããããŸã§é«ããªãæãã§
Cursor: é£äºã§é¿ãããææã¯ãããŸããïŒïŒã¢ã¬ã«ã®ãŒãªã©ïŒ
User: ãªãã§ã
Cursor: ãã®ä»ã®èŠæã¯ãããŸããïŒ
User: ãªãã§ã
ãã®éšåã¯ãã«ãŒã«ã«å®çŸ©ããã質åã»ãããé çªã«å®è¡ãããŠããŸããåŸã§ãäŒãããã質åã»ããã®åé¢ããšãããã¯ããã¯ã®å¹æãæç¢ºã«è¡šããŠãããMDCãã¡ã€ã«ãäžé£ã®è³ªåãé åºç«ãŠãŠè¡ãããŠãŒã¶ãŒã®åçãåéããŠããŸãã
2. 確èªãšèšç»çæãã§ãŒãº

Cursor: 以äžã®å
容ã§å€é£æºåãããžã§ã¯ããéå§ããŸãïŒ
- ã¡ãã¥ãŒ: ã«ã¬ãŒ
- 人æ°: 4人ïŒå€§äººäºäººåäŸäºäººïŒ
- 調çæé: 20æããã
- é£äºæé: 21æããã
- äºç®: 2000åïŒæšæºïŒ
- ã¢ã¬ã«ã®ãŒ: ãªã
- ç¹å¥ãªèŠæ: ãªã
ããããã§ããïŒ
User: ã¯ã
Cursor: [å€é£æºåèšç»ãã¬ã·ããã¿ã¹ã¯ãªã¹ããè²·ãç©ãªã¹ãã®è©³çްãªåºå]
åæãã©ã³ãäœæããŸãããèšç»ã®è©³çްãã確èªããã ããŸããïŒ
User: 確èªããŸãã
ããã§ã¯ïŒ
æåã«confirmã¢ã¯ã·ã§ã³ãå®è¡ããããŠãŒã¶ãŒã«æ å ±ã®ç¢ºèªãæ±ããŠããŸã
æ¿èªãåŸãåŸãè€æ°ã®ãã¡ã€ã«ïŒèšç»ãã¬ã·ããã¿ã¹ã¯ãªã¹ããè²·ãç©ãªã¹ãïŒããã³ãã¬ãŒãã䜿ã£ãŠçæãããŠããŸã
ãã³ãã¬ãŒãã«ã¯ã質åãã§ãŒãºã§åéãã倿°ïŒdinner_menu, people_countãªã©ïŒãèªåçã«åã蟌ãŸããŠããŸã
ãã®éšåã¯ããã³ãã¬ãŒãã®åé¢ããšããã¡ã€ã«æäœãã¿ãŒã³ããšãããã¯ããã¯ã®å®è·µäŸã§ããŠãŒã¶ãŒããåéããæ å ±ã䜿ã£ãŠæ§é åãããèšç»ãçæããŠããŸãã
3. æ¹åãã§ãŒãºãžã®èªå°
Cursor: ããããå€é£ã®æºåãé²ããã«ã¯ä»¥äžã®ã¹ãããããããŸãïŒ
1. ãå€é£ã®èšç»æ¹åããšèšã£ãŠèšç»ãæ¹åãã
2. ãå€é£ã®è²·ãç©ããšèšã£ãŠè²·ãç©ãã§ãŒãºã«é²ã
æºåãã§ãããæ¬¡ã«é²ãã§ãã ããã
User: å€é£ã®èšç»æ¹å
ããã¯notifyã¢ã¯ã·ã§ã³ãšãããã¯ããã¯ã䜿ã£ãŠæ¬¡ã®ã¹ããããžã®ã¬ã€ãã³ã¹ãæäŸãããŠãŒã¶ãŒãæ°ããããªã¬ãŒã¯ãŒãïŒãå€é£ã®èšç»æ¹åãïŒã«èªå°ããŠããŸããMDCãã¡ã€ã«ã®å¥ã®ããªã¬ãŒã«ç¶ãããã«èšèšãããŠãããã¯ãŒã¯ãããŒã®æµããäœã£ãŠããŸãã
4. ãã£ãŒãããã¯åéãšèšç»æ¹å

Cursor: ãã«ã¬ãŒãã®èšç»ãæ¹åããŸããã©ã®ãããªç¹ãæ¹åãããã§ããïŒ
User: çŸå³ããã«ã¬ãŒã«ããã
Cursor: ãã£ãŒãããã¯åéãéå§ããŸããå質åã«å
·äœçã«åçããŠãã ãããæºåã¯ããããã§ããïŒ
User: ã¯ã
Cursor: ã¡ãã¥ãŒãã«ã¬ãŒãã«è¿œå ãããæçã¯ãããŸããïŒ
User: ãµã©ãã§ã
[äžç¥ïŒãã£ãŒãããã¯åéã®è³ªåãšåç]
Cursor: [æ¹åãããã¬ã·ããã¿ã¹ã¯ãè²·ãç©ãªã¹ãã®åºå]
ãã©ã³ã®æŽæ°ãå®äºããŸããã以äžã®æ¹åãè¡ããŸããïŒ
1. ã«ã¬ãŒã¬ã·ãã®æ¹å
- èŸããæ§ããã«ãããããçå£ã«ãŒã®äœ¿çšã»ã¯ã¡ã¿ã€ã»çä¹³ã®è¿œå æ¹æ³ãèšèŒ
- ãããã®éãå¢ãããŠçã¿ã匷å
[...]
ãã®éšåã¯:
ãæç€ºçãªç¢ºèªã¹ãããã®æ¿å ¥ãã®äŸã§ããã£ãŒãããã¯åéåã«æºå確èªãããŠããŸã
ããã£ãŒãããã¯åéãã¿ãŒã³ãã䜿ã£ãŠãŠãŒã¶ãŒã®åžæãæ§é åããŠåéããŠããŸã
åéããæ å ±ã«åºã¥ããŠæ°ãããã³ãã¬ãŒããé©çšããæ¹åãããèšç»ãçæããŠããŸã
MDCãã¡ã€ã«ã«ãã£ãŠèšèšãããããæãã®å¯Ÿè©±ãããŒã«ããããšãŒãžã§ã³ãã¯ãŠãŒã¶ãŒã段éçã«å°ããå¿
èŠãªæ
å ±ãåéããæ§é åãããåºåãæäŸããŠãã®ããããããšããããŸãã

ã§ã¯ãå®éã«ããåãããã«äœã£ãŠãããŸãããã
STEP 1: ç®çãšæ©èœãèªç¶èšèªã§æç¢ºã«ãã
ãŸãã¯ãŽãŒã«ãã¯ã£ãããããŸãããããããããããã®ãšãŒãžã§ã³ãã«äœãããŠã»ããã®ãïŒãããã§ããã ãã¹ãã¬ãŒãã«æžãåºããŠã¿ãŠãã ããã
ç§ããå€é£ã®æºåããšèšã£ãããAIã以äžã®ããšãããŠã»ããïŒ
1. 仿¥ã®å€é£ã®ã¡ãã¥ãŒã人æ°ã調çæéãªã©ã質åããŠããã
2. éããæ
å ±ã確èªããŠããèšç»ãç«ãŠãŠããã
3. è²·ãç©ãªã¹ããã¬ã·ããã¿ã€ã ã©ã€ã³ããã¡ã€ã«ã«ãŸãšããŠããã
4. å¿
èŠã«å¿ããŠèšç»ãæ¹åã§ããããã«ãã
ããã§ã¯ãŸã MDCãã¡ã€ã«ã«æžããŸããããèªåã®é ã®äžããã¡ã¢åž³ãªã©ã«ãŸãæŽçããŠãã ããã
âèªç¶èšèªã§æžãåºãâããšã§ãåŸã»ã©ã«ãŒã«åãããšãã«è¿·ããå°ãªããªããŸãã
ãã€ã³ã:
- ãäœãæçµçã«åŸããããããã£ããæžã
- 質åããã¡ã€ã«çæãªã©ãæ©èœã®ãªã¹ãåãããŠãã
STEP 2: ããªã¬ãŒã¯ãŒããšã¹ãããåã®ãªã¹ãäœæ
次ã«ãCursorãã©ããªããŒã¯ãŒãã§åãåºãã®ãïŒïŒããªã¬ãŒïŒãšã倧ãŸããªã¹ãããåããã£ããæžããŠã¿ãŸãããã
# å€é£ã®æºåããªã¬ãŒ
trigger: "å€é£ã®æºå"
steps:
- name: "æ
å ±åé"
# 詳现ã¯åŸã§èšå
¥
- name: "確èª"
# 詳现ã¯åŸã§èšå
¥
- name: "èšç»äœæ"
# 詳现ã¯åŸã§èšå
¥
- name: "次ã®ã¹ãããæ¡å
"
# 詳现ã¯åŸã§èšå
¥
# èšç»æ¹åããªã¬ãŒ
trigger: "å€é£ã®èšç»æ¹å"
steps:
- name: "æ¹åç¹ç¢ºèª"
# 詳现ã¯åŸã§èšå
¥
- name: "ãã£ãŒãããã¯åé"
# 詳现ã¯åŸã§èšå
¥
- name: "èšç»æŽæ°"
# 詳现ã¯åŸã§èšå
¥
ããã§ã¯ãâãµãã¹ãããã®ã¢ã¯ã·ã§ã³âãæ¡ä»¶ã¯ãŸã æžããããããããé åºã§é²ããã ãªããšä¿¯ç°ã§ããçšåºŠã§OKã
ãŸãã§ã¢ãŠãã©ã€ã³ãäœãæèŠã§ãã
ãã€ã³ã:
- trigger ãã©ããªããŒã¯ãŒãã§èµ·åãããããæ±ºãã
- 倧ããªæµãïŒæ å ±åéâ確èªâèšç»äœæïŒãåããããã«äžŠã¹ã
STEP 3: å¿ èŠãªè³ªåã»ãããå®çŸ©ãã
ãããããäœãèããïŒããå ·äœåããŸããããMDCãã¡ã€ã«ã§ã¯ã質åäºé ããŸãšããâ質åã»ããâãå¥ã»ã¯ã·ã§ã³ãšããŠæžãããšãã§ããŸãã
# 質åã»ããã®å®çŸ©
dinner_questions:
- question: "仿¥ã®å€é£ã®ã¡ãã¥ãŒåãæããŠãã ãã"
key: "dinner_menu"
required: true
- question: "é£äºäººæ°ã¯äœåã§ããïŒ"
key: "people_count"
required: true
- question: "調çäºå®æå»ã¯ãã€é ã§ããïŒïŒäŸïŒ18:00ïŒ"
key: "cooking_time"
required: true
- question: "é£äºäºå®æå»ã¯ãã€é ã§ããïŒïŒäŸïŒ19:00ïŒ"
key: "dinner_time"
required: true
- question: "äºç®ã¯ããããããã§ããïŒïŒäŸïŒ2000åïŒ"
key: "budget"
default: "2000åïŒæšæºïŒ"
required: false
- question: "é£äºã§é¿ãããææã¯ãããŸããïŒïŒã¢ã¬ã«ã®ãŒãªã©ïŒ"
key: "allergies"
default: "ãªã"
required: false
- question: "ãã®ä»ã®èŠæã¯ãããŸããïŒ"
key: "special_requests"
default: "ãªã"
required: false
question ã¯ãŠãŒã¶ãŒã«å¯ŸããŠå®éã«æããæèš
key ã¯åçãæ ŒçŽãã倿°å
required ã true ãªãåçãå¿ ããšã
default ã§åæå€ãçšæããŠãããšäŸ¿å©
ãã®ã¹ãããã§ããæäœéäœãèãã°å€é£¯æºåãæç«ãããïŒããæŽãåºããŠããããã§ããããããããŸã è¿·ã£ãŠãâŠããšããå Žåã¯ãããšããè¶³ãããæ¶ãããããŠOKã§ãã
ãã€ã³ã:
- 質åãªã¹ãã1ãæã«éäžããã
- 質åé åºãææ§ã«ãªããªããããäžæ°ã«äžèЧå
- å¿ é ïŒä»»æãã¯ã£ããåãã
STEP 4: åºåãã³ãã¬ãŒãã®äœæ
ç¶ããŠãAIãæçµçã«çæãããã¡ã€ã«ã®ã²ãªåœ¢ïŒãã³ãã¬ãŒãïŒãå®çŸ©ããŸãããã
ããšãã°èšç»ãã¡ã€ã«ãè²·ãç©ãªã¹ããªã©ã人éãåŸã§èŠããã圢ã«ããŠããã®ãã³ãã§ãã
templates:
dinner_plan_template: |
# å€é£æºåèšç»
## åºæ¬æ
å ±
- æ¥ä»: {{current_date}}
- ã¡ãã¥ãŒ: {{dinner_menu}}
- 人æ°: {{people_count}}
- 調çæé: {{cooking_time}}
- é£äºæé: {{dinner_time}}
- äºç®: {{budget}}
- ã¢ã¬ã«ã®ãŒ: {{allergies}}
- ç¹å¥ãªèŠæ: {{special_requests}}
## ã¹ã±ãžã¥ãŒã«
1. è²·ãç©: {{shopping_time}}
2. äžæºå: {{prep_time}}
3. 調çéå§: {{start_cooking_time}}
4. é
è³: {{serving_time}}
shopping_list_template: |
# è²·ãç©ãªã¹ã
## {{dinner_menu}}çšé£æ
{{shopping_items}}{{...}} ã®éšåã¯ãå ã»ã©ã®è³ªåã»ãããåŸã»ã©AIãèšç®ãã倿°ãåã蟌ãå Žæ
Markdown圢åŒã§èŠåºãïŒ#ã##ãªã©ïŒã䜿ããšå¯èªæ§ãé«ãŸã
ãã©ããªãã©ãŒãããã§åºããããïŒãã¯äººãããããããšãã°ç®æ¡æžãã衚çµã¿ã«ããã®ãããã
ã人éããã®ãã¡ã€ã«ãèŠããšãã«åœ¹ç«ã€ãã¶ã€ã³ããæèãããšãåŸã®äœæ¥ãã°ããšæ¥œã«ãªããŸãã
STEP 5: åã¹ãããã®è©³çްå
ãããããæ¬çªãSTEP 2ã§äœæãã骚çµã¿ã«ãå ·äœçãªã¢ã¯ã·ã§ã³ïŒactionïŒãæ¡ä»¶ã倿°ãªã©ãæžã蟌ãã§ãããŸãã
# å€é£ã®æºåããªã¬ãŒ
trigger: "å€é£ã®æºå"
steps:
- name: "start_info_collection"
action: "call"
target: "dinner_questions"
message: "å€é£ã®æºåãããã«ããã£ãŠã質åãããŠãã ãã"
- name: "get_current_date"
action: "execute_shell"
command: "date +%Y-%m-%d"
variable: "current_date"
message: "çŸåšã®æ¥ä»ãååŸããŠããŸã..."
- name: "confirm_dinner_plan"
action: "confirm"
message: |
以äžã®å
容ã§å€é£æºåãããžã§ã¯ããéå§ããŸãïŒ
- ã¡ãã¥ãŒ: {{dinner_menu}}
- 人æ°: {{people_count}}
- ...
ããããã§ããïŒ
variable: "plan_confirmed"
- name: "calculate_times"
action: "execute"
script: |
# æéèšç®ããžãã¯
# äŸïŒå€é£æé-60åã調çéå§ã«ãããã«-30åãäžæºåã«âŠ
...
condition: "{{plan_confirmed}} == true"
- name: "create_dinner_dir"
action: "execute_shell"
command: "mkdir -p Dinner/{{current_date}}_{{dinner_menu}}"
variable: "dinner_dir"
condition: "{{plan_confirmed}} == true"
- name: "create_dinner_plan"
action: "create_file"
path: "{{dinner_dir}}/plan.md"
template: "dinner_plan_template"
message: "å€é£æºåèšç»ãã¡ã€ã«ãäœæããŸãã"
condition: "{{plan_confirmed}} == true"
- name: "plan_created"
action: "confirm"
message: "åæãã©ã³ãäœæããŸãããèšç»ã®è©³çްãã確èªããã ããŸããïŒ"
variable: "review_plan"
condition: "{{plan_confirmed}} == true"
- name: "dinner_plan_next_steps"
action: "notify"
message: |
ããããå€é£ã®æºåãé²ããã«ã¯ä»¥äžã®ã¹ãããããããŸãïŒ
1. ãå€é£ã®èšç»æ¹åããšèšã£ãŠèšç»ãæ¹å
2. ãå€é£ã®è²·ãç©ããšèšã£ãŠè²·ãç©ãã§ãŒãºãž
condition: "{{review_plan}} == true"
action: "call" ã§è³ªåã»ãããåŒã³åºã
execute_shell ã§ã·ã§ã«ã³ãã³ãïŒæ¥ä»ååŸããã©ã«ãäœæãªã©ïŒ
confirm ã§ãŠãŒã¶ãŒã®Yes/Noããšããvariable: "plan_confirmed" ã«å ¥ãã
condition ã䜿ã£ãŠãplan_confirmed == true ã®ãšãã ãæ¬¡ã¹ããããžé²ãã
现ããåäœãããããŠè€æ°ã¹ãããã«åå²ããŠæžãããšã§ãAIãé£ã°ãèªã¿ãããªã¹ã¯ãæå°éã«æããããŸãã
ãã€ã³ã:
- ã¹ãããã现åãã«ããã»ã©å®å®åºŠUP
- condition ã variable ã§ãŠãŒã¶ãŒã®å¿çããã£ããæŸã
-ãäœãçµãã£ãŠãªããããAIãã¡ãããšç¢ºèªããŠããã
STEP 6: æ¹åãããŒçšã®ã¹ããããåæ§ã«è©³çްå
ä»åã®äŸã§ã¯ãå€é£ã®èšç»æ¹åããšããå¥ããªã¬ãŒã«ã察å¿ããŸãã
èšç»ãåºããåŸããŠãŒã¶ãŒããå°ãå³ä»ããå€ãããããå¥ã®ã¬ã·ããè¶³ãããããšèšããã¿ãŒã³ã§ããã
trigger: "å€é£ã®èšç»æ¹å"
steps:
- name: "start_improvement"
action: "notify"
message: "ã{{dinner_menu}}ãã®èšç»ãæ¹åããŸããã©ã®ãããªç¹ãæ¹åãããã§ããïŒ"
- name: "start_feedback_collection"
action: "confirm"
message: "ãã£ãŒãããã¯åéãéå§ããŸããå質åã«å
·äœçã«åçããŠãã ãããæºåã¯ããããã§ããïŒ"
variable: "start_feedback"
- name: "collect_plan_feedback"
action: "call"
target: "plan_feedback_questions"
variable: "plan_feedback"
message: "ãã©ã³ã«ã€ããŠã®ãã£ãŒãããã¯ãåéããŸã..."
condition: "{{start_feedback}} == true"
- name: "update_dinner_plan"
action: "modify_file"
path: "{{dinner_dir}}/plan.md"
template: "dinner_plan_template"
data: "{{plan_feedback}}"
message: "å€é£æºåèšç»ãæŽæ°ããŸãã"
condition: "{{start_feedback}} == true"
- name: "improvement_summary"
action: "notify"
message: |
ãã©ã³ã®æŽæ°ãå®äºããŸããã
ããã倿Žç¹: ...
次ã¯ãå€é£ã®è²·ãç©ããšèšãã°è²·ãç©ãªã¹ããžé²ããŸãïŒ
condition: "{{start_feedback}} == true"ãã®ããã«å¥ã®ã·ãã¥ãšãŒã·ã§ã³ã§ããäŒŒãæ§é ïŒè³ªåâ確èªâãã¡ã€ã«ç·šéïŒãèžãã ãã§ãã
âmodify_fileâã¢ã¯ã·ã§ã³ã䜿ãã°ãæ¢åã®èšç»ãã¡ã€ã«ãéšåçã«æžãæããããšã容æã«ãªããŸãã
STEP 7: ãã£ãŒãããã¯çšã®è³ªåã»ããã远å
èšç»æ¹åçšã®ãã£ãŒãããã¯åéã§ã¯ããŸãå¥ã®è³ªåãªã¹ããèŠããããããŸããã
ããã§ãâã奜ã¿ã®è³ªåâã䞊ã¹ãŠOKã§ãã
plan_feedback_questions:
- question: "ã¡ãã¥ãŒã{{dinner_menu}}ãã«è¿œå ãããæçã¯ãããŸããïŒ"
key: "additional_dishes"
default: "ãªã"
required: false
- question: "èŸãã»å³ä»ããªã©å€æŽèŠæã¯ãããŸããïŒ"
key: "recipe_preferences"
default: "ãªã"
required: false
- question: "ä»ã«æ°ã«ãªãç¹ãæ¹è¯ããããã€ã³ããããã°æããŠãã ãã"
key: "other_feedback"
default: "ãªã"
required: false
STEP 8: è©äŸ¡ãšãã¹ã
MDCãã¡ã€ã«ã宿ããããå®éã«Cursorã§ãå€é£ã®æºåããšåŒã³ãããŠã¿ãŠãã ããã
ã¡ãããšæåã«è³ªåã»ãããèµ·åãããïŒ
ãŠãŒã¶ãŒãYes/Noãçãããé©åã«æ¬¡ã¹ããããžïŒ
ãã¡ã€ã«çæãæ³å®éãã«åããïŒ
conditionãå¹ããŠãããïŒ
ãã®ãã§ãã¯ãããŸãã«ããŠãããšãäžåãèŠã€ãããããã§ãã
ãšãã«YAMLã¯ã€ã³ãã³ããã³ãã³ã®ä»ãå¿ããªã©ã§ãšã©ãŒã«ãªããã¡ãªã®ã§ãæåã¯çްãããã¹ãããã®ãããããã
STEP 9: ãªãã¡ã¯ã¿ãªã³ã°ãšæ¹å
ãã¹ãããŠã¿ããšãã質åæããã£ãšåªããèšãåãã«ããããããã®é çªã¯åŸ®åŠããâŠããªã©ãããããæ°ã¥ãç¹ãåºãŠããã§ãããã
åé·ãªéšåãç°¡ç¥å
倿°åã®äžè²«æ§ããã§ãã¯
ã³ã¡ã³ãã远èš
ã¢ã¯ã·ã§ã³ã®éè€ããã³ãã¬å
ãããããªãã¡ã¯ã¿ãªã³ã°ãç¹°ãè¿ããšãMDCãã¡ã€ã«ãæŽã£ãŠããŠãAIã®åäœããã£ããå®å®ããŸãã
STEP 10: æ¡åŒµãšå¿çš
åºç€ãã§ãããã£ãããæ¬¡ã¯âãã£ãšäŸ¿å©ã«âãããŒã¯ãŒããããšãã°âŠ
è²·ãç©ãã§ãŒãºã®å°çšããªã¬ãŒ
ãå€é£ã®è²·ãç©ãã§åŒã³åºã â å¿ èŠãªé£æãªã¹ããåšåº«ç¢ºèª
調çæé ã¬ã€ã
ã¿ã€ããŒå®è¡(execute_shell)ã§3åèšã£ãŠã¢ã©ãŒã ãåºããªã©
API飿ºã§ã¬ã·ãæ€çŽ¢
ã¯ãã¯ããããGoogleæ€çŽ¢çãªãã®ãšçµ¡ããŠãããå€åœ©ãªææ¡
è€æ°ã¡ãã¥ãŒææ¡
ã仿¥ã¯3ãã¿ãŒã³ã®å€é£ã¢ã€ãã¢ãåºããŠããšãã£ãåå²
ãšã©ãŒå¯Ÿç
ãããŠãŒã¶ãŒãäœãçããŠãããªãå Žåã®å¯Ÿå¿ããªã©
ããããããšãå¢ããã°ãMDCãã¡ã€ã«ãé·ããªããããããŸããããããã¡ã€ã«ãåå²ããããã質åã»ãããå
±éåããããããã°OKã
æåã®äŸããã£ããåãããã«ãªã£ãŠããã°ãæ¡åŒµãã¹ã ãŒãºã«ã§ããŸãã
Ruleãã¡ã€ã«ã§æŒãããŠãããã5ã€ã®å·¥å€«

å ã»ã©ã®å€é£æºåãšãŒãžã§ã³ããã³ãºãªã³äŸã§ã¯ãåºæ¬çãªMDCãã¡ã€ã«äœæã®æµããã玹ä»ããŸããããã³ãºãªã³ã®èª¬æã®äžã§ãèšåããŠããŸãããããããããŠãRuleãã¡ã€ã«ã®äœæTipsããŸãšããŸãã
1ïŒã¹ãããããªãã¹ãâ现åãâã«
ãã·ã³ãã«ã«æžããã»ãã人éçã«ããããããã¯ãâŠã ãšããæ°æã¡ã¯ããããŸãããAIã¯éã«ããŸãšããããããæç€ºãèªååæã«çç¥ããã¡ã
ããšãã°ã質åâ確èªâãã¡ã€ã«çæâå確èªãã®æµãã1ã¹ãããã«è©°ã蟌ããšã
ãŠãŒã¶ãŒç¢ºèªãã¹ãããããŠãããªããã¡ã€ã«ãäœã
ãããã¯äœãèããªããŠããã ããããšç¬æã§å ã«é²ã
ãªã©ãâé£ã°ãâãâé£èºçåéãâãèµ·ããããããªããŸãã
å ·äœäŸ:
- name: "ask_menu"
action: "ask_question"
question: "å€é£¯ã®ã¡ãã¥ãŒã¯ïŒ"
variable: "dinner_menu"
- name: "ask_people"
action: "ask_question"
question: "äœäººåäœããŸããïŒ"
variable: "people_count"
- name: "confirm_plan"
action: "confirm"
message: "ãã®ãã©ã³ã§è¯ãã§ããïŒ"
variable: "plan_ok"
ãããªå
·åã«ã1ã¹ããã=1ã¢ã¯ã·ã§ã³ã«è¿ã圢ã§åºåãã»ã©ãAIã¯æ··ä¹±ãã«ãããªããŸãã
ãèŠãç®ãåé·ã«ãªãããâŠããšæããããããŸããããçç¥ãããšéã«ãã©ãã«å¢ãšããã®ããããããã¿ãŒã³ã现ããåãåããã»ã©ããŠãŒã¶ãŒãšAIåæ¹ã«ããããæ§é ã«ãªããŸãã
2ïŒã確èªã¹ãããããå ¥ããŠâæŽèµ°âãé²ã
ããŠãŒã¶ãŒãYesãšèšãåã«å
ã«é²ãã§ããŸããââããã¯AIã«éãããä»äºã®ã§ããïŒïŒïŒç§æžããã€ãã³ã·ã§ã³ã«ç¬èµ°ããæãã«ã䌌ãŠããŸãã
confirm ã¢ã¯ã·ã§ã³ã condition ãæŽ»çšããŠããOKã§ãªããã°ãã®å
ã«ã¯è¡ããªãã ãšããã«ãŒã«ããã£ããçµã¿èŸŒã¿ãŸãããã
- name: "check_budget"
action: "confirm"
message: "äºç®ã¯{{budget}}åã§ããããããã§ããïŒ"
variable: "budget_ok"
- name: "create_plan"
action: "create_file"
template: "plan_template"
condition: "{{budget_ok}} == true"
ãããªãµãã«äºç®ç¢ºèªããŠãŒã¶ãŒãæ¿èªãããæ¬¡ãžããšããã¹ããŒã ã«ãããšãæ³å®å€ã«è²·ãç©ãªã¹ããäœããããªã©ã®äºæ ãæžããŸãã
ã¯ã³ãã€ã³ã
:condition: "{{budget_ok}} == true"
ãšããå ·åã«ãæåéãâOKã®ãšãã®ã¿â 次ã®ã¹ããããæå¹ã«ãªã
ããNGãªãAIã¯åŸ æ©ã»å調æŽããŠããã
3ïŒãã³ãã¬ãŒãã質åã»ããã¯å¥ãã¡ã€ã«ã«åãã
ãã³ãºãªã³äŸã§ã¯ãåãMDCå ã«è³ªåã»ããããã³ãã¬ãŒããå®çŸ©ããŸããããã ããããžã§ã¯ãã倧ãããªããš1ã€ã®ãã¡ã€ã«ãäœçŸè¡ã«ããªããå¯èªæ§ãã¬ã¿èœã¡ããŸãã
ããããåå²äŸ:
main.mdcïŒã¡ã€ã³ã®ãããŒèšè¿°
questions.yamlïŒè€æ°ã®è³ªåã»ããããŸãšãã
templates.mdcïŒãŸãã¯templates.yamlïŒïŒåºåãã¡ã€ã«ã®ãã³ãã¬ãŒã矀
ããããããšã§ã質åæãçŽãã ããªãquestions.yamlãéãã°æžããããã³ãã¬å€æŽã¯templatesã®ãã¡ã€ã«ã ããããã°ããããšãã圢ã«ã§ããä¿å®ãæ¡åŒµãã©ã¯ã«ãªããã§ãã
4ïŒåã質åãäœåºŠãããªã工倫
ãšãã©ãããã£ãã¢ã¬ã«ã®ãŒèããã®ã«ããŸãèãã®âŠïŒããšããã«ãŒãäºæ ãèµ·ããããšããããŸããããã«ã¯å€æ°ã®ç¶æ ãconditionãæå¹ã§ãã
- name: "ask_allergies"
action: "ask_question"
question: "ã¢ã¬ã«ã®ãŒã¯ãããŸããïŒ"
variable: "allergies"
condition: "{{allergies}} == null"
condition: "{{allergies}} == null"
ã€ãŸã**âallergiesã«äœãå ¥ã£ãŠããªãå Žåã ãâ** 質åããããæ¢ã«ãŠãŒã¶ãŒãçãããªãåã質åãã¹ããã
ãã®ä»çµã¿ã¯ã倿°ã®ããã©ã«ãå€ãèšå®æžã¿ãïŒããªã©ã§ãå¿çšã§ããç¡é§ãªãªããŒããæããŠã¹ããŒãã«ããåãã§ããŸãã
5ïŒã«ãŒã«ãã¡ã€ã«ãæ©èœããšã«åå²ããŠã«ãªã¹ãåé¿
ãdinner_plan.mdcããdinner_improvement.mdcã ã®ããã«ããšãŒãžã§ã³ãã®æ©èœãã·ãŒã³å¥ã«ãã¡ã€ã«ãåãåãããšã巚倧MDCã1ãã¡ã€ã«ã«è©°ã蟌ããããå€§å¹ ã«ç®¡çãããããªããŸãã
äŸãã°ããå€é£æºåããšãè²·ãç©ãã§ãŒãºãã調çãã§ãŒãºããå¥ã ã«
ãããã¯ãã¡ã€ã³.mdcããfeedback.mdcããªã©æ©èœåäœã«
(ïŒ)ãããªãèŠæš¡ã«ãªããšããprojectA_main.mdcããprojectA_feedback.mdcããprojectA_deploy.mdcãã®ããã«ãããžã§ã¯ãã»ãã§ãŒãºã»çšéã§èªç¶ã«åãåãããšãâ倿Žãããéšåâããµããšæ¢ããŠç·šéã§ããããã«ãªããŸãã
ã«ã¹ã¿ãã€ãºããŠã¿ãã
ããã£ããããªãããããªããããªïŒãšããæ¹ã¯ããã»ã©ç޹ä»ãããã¡ãã®Rulesãå®éã«DLããŠã«ã¹ã¿ãã€ãºããŠã¿ãããããšããããã¯ãããã®ãããããããŸãïŒ
質åå 容ã®ã«ã¹ã¿ãã€ãº
質åã远å ã»åé€ããŠã¿ã
ããã©ã«ãå€ãéžæè¢ã倿Žãã
ãã³ãã¬ãŒãã®ä¿®æ£
åºåãã©ãŒããããèªå奜ã¿ã«èª¿æŽ
æ°ãã倿°ã远å ããŠãã³ãã¬ãŒãã«åæ
æ°ããããªã¬ãŒã®è¿œå
äŸãã°ãæé£ã®æºåããªã©ãå¥ã®ã·ãŒã³ã§ã®æŽ»çš
ã¢ã¯ã·ã§ã³è¿œå
æ 逿 å ±ãååŸããAPIãšã®é£æº
ç»åçæããŒã«ãšã®é£æº
å¿çšã¢ã€ãã¢
ãµã³ãã«ãªããžããªãå ã«ã以äžã®ãããªã«ã¹ã¿ãã€ãºãèããããŸãïŒ
æçã¬ã·ãæ€çŽ¢æ©èœã®è¿œå
飿ã®åšåº«ç®¡çã·ã¹ãã ãšã®é£æº
æ é€ãã©ã³ã¹èšç®æ©èœã®å®è£
è€æ°äººã§ã®é£äºãã©ã³èª¿æŽæ©èœ
ãã®ãªããžããªãéããŠãYAMLãã¡ã€ã«ã«ãããšãŒãžã§ã³ãå¶åŸ¡ã®ããŠããŠãå®è·µçã«èº«ã«ã€ããŠããã ããã°å¹žãã§ãã
ãã¿ã¹ã¯ã«å¿ããé©åãªã¬ãã«ããéžãŒã

ãŸããããŸã§ãããšãYAMLããŒããã©ããããªãŒAIããã©ããããããããããŒãšããã²ãšãã§ãŠãããããããŸããã
ãYAMLãæåŒ·ãäœã§ãããã§ãå šéšçްããæžãã°ãããã ïŒã
ãšããããã§ã¯ãªãããšãã倧åãªãã€ã³ããæŒãããŸããããã±ãŒã¹ãã€ã±ãŒã¹ã§ãïŒ
â ã±ãŒã¹å¥ã®ç®å®
åçºã®äžåäžç: ã·ã³ãã«ããã³ããã§åå
äŸïŒã仿¥ã®å€©æ°æããŠããææ°ãã¥ãŒã¹ããŸãšããŠããªã©ã1ã¹ãããã§äºè¶³ããå Žå3ïœ5ã¹ãããçšåºŠã®çã察話: ããŒã¹ã®YAML
äŸïŒå€é£¯æºåã®äŸãããã®å°ïœäžèŠæš¡ã®ãããŒåå²ãå€ãé·æçããã»ã¹: æ¬æ ŒçãªYAMLèšèš
äŸïŒãããžã§ã¯ã管çãè€æ°ãã¡ã€ã«èªåçæãAPI飿ºãªã©æ¡ä»¶ãè€æ°éãªãå€§èŠæš¡ãªæµã
â ãã©ã³ã¹éèŠ
ãåŠç¿ã³ã¹ãïŒã¡ãªããããšãªãç¶æ³ãªããã ãªã«YAMLåããå¿
èŠã¯ãããŸããã
ãããããŸãã¯ã·ã³ãã«ãªãã£ããæç€ºã§è©ŠããŠãã©ãããŠãå®å®ããªããšãªã£ãããäžéšãæ§é åããŠã¿ãâŠãšããã¹ãããã¢ãããããããã§ãã
ãã ããå®åãå€§èŠæš¡ã¿ã¹ã¯ã§ç¹°ãè¿ãåãæç€ºããããããªå Žé¢ã ãšãæ§é åããŠãããšå§åçã«å®å®ããŸãã
ãäœåºŠãåãããšã§æ··ä¹±ããããããäžåºŠYAMLã§ãã£ããæžããŠããŸãã»ããé·æçãªã¹ãã¬ã¹è»œæžã«ç¹ããã®ã¯ééããªãã§ãããã
ãŸãšãïŒãã£ãšå®å®ïŒé«ç²ŸåºŠãªãšãŒãžã§ã³ãã«è²ãŠãã

ä»å玹ä»ãããå€é£ã®æºåããšãŒãžã§ã³ãã¯ããããŸã§ã«ãŒã«èšèšã®äžäŸã§ããå®éã«ã¯ããžãã¹ã·ãŒã³ã§ã®ãããžã§ã¯ã管çãAPI飿ºã䜿ã£ãèªååãªã©å€å²ã«ããã£ãŠå¿çšã§ããŸãã
äžèŠãYAMLãæžãã®ã¯æéã«æããŸãããã»ãã®å°ãæ§é åããã ãã§CursorãšãŒãžã§ã³ãã®âããæ°âãšâæ£ç¢ºæ§âãæ®µéãã«ãªããŸãã
Cursorã¯èªå奜ã¿ã«è²ãŠãã»ã©ãããããAIãã©ãã©ãä»äºããµããŒãããŠãããâŠïŒã ãšãã®åšåã宿ã§ããã¯ãã
ãã³ãºãªã³ã§äœã£ãå€é£æºåãšãŒãžã§ã³ããªã©ãæ¯éãããã®ãã³ãã§ç£šãäžããŠãèªåå°çšã®âè¶
å®å®AIç§æžâãè²ãŠãŠã¿ãŠãã ããïŒïŒïŒïŒïŒ
(ããŸã)
ããŠãç§ã®ã¢ã«ãŠã³ãã§æè¿ãã話é¡ã«ã ãããŠããã ããŠããã俺ã®èããæåŒ·ã®AIPMã·ã¹ãã ãã¯ãå®å šã«ä»å玹ä»ããå 容ã®çºå±ç·šãšãªã£ãŠãããŸãããããä»åã®ãããªã«ãŒã«ãºã®äœ¿ãæ¹ãããã«ããã¡ãã£ãšå¿çšäºäŸãããããªãŒãšããããããã£ããããŸãããããã¡ãããã²ãã²ãããããã ãããŒã
ãããããŸã§1äžãã©ãã¯ãŒïŒãšããããšã§ã倧æè¬èšå¿µã«ïŒïŒïŒãæè¿é£ç¶æçš¿ããŸãããä»å®éã«äœ¿ã£ãŠãã俺ã®èããæåŒ·AIPMã·ã¹ãã ïŒCursorRulesïŒãæééå®ã§å ¬éããŠã¿ãŸãïŒç¹åŸŽãšããŠã¯ãXXXããŠïŒããšããã ãã§PMæ¥åãAIãã¢ã·ã¹ãããŠããããšããã§ãïŒ https://t.co/Gi5ct1j6zv
â ã¿ãã£ã¡ | çæAIãšãã³ãžã§ãªã¹ã @ ðª ðœ ðµ ð± ðŠ ð¿ ðŠ (@miyatti) May 5, 2025
---⊠pic.twitter.com/2QqjZ8j5A4
ïŒè¿œèšïŒ
ãã¡ãã®AIPMã·ã¹ãã ã«ã€ããŠã®æ°ããèšäºãå ¬éããŸããã®ã§ãããããããã°ã芧ãã ãã
ãæåŸã«ãã€ãã®å®£äŒã ãšã¯ã¹ãã©ã¶ã§ã¯ä»²éãåéããŠããŸãïŒïŒ

ãAIãšã³ãžãã¢ããããAIãããã¥ãŒãµãŒããŸã§å€æ§ãªããžã·ã§ã³
ç§ãæå±ãããšã¯ã¹ãã©ã¶ã¯æ¥æ¡å€§ãã§ãŒãºã§ãäžèšã®ãããªåœ¹å²ãæ ã仲éãåéããŠããŸãã

詳ããåéèŠé ãçŠå©åçãªã©ã¯ããã¡ãã®æ±äººããŒãžãã芧ãã ããã
ãšã¯ã¹ãã©ã¶ã£ãŠã©ããªäŒç€ŸïŒ
çæAIã®ç€ŸäŒå®è£ ãæ ããå®è£ åã³ã³ãµã«ïŒãããã¯ãäŒæ¥ã§ããŠã2020å¹Žåµæ¥ã§ãŸã ã¡ã³ãããŒã10人匷ã®è¥ãäŒç€Ÿã§ãããAIæè¡ãšãããã¯ãéçºã®äž¡èŒªãæŠåšã«ããçæAIã®ç€ŸäŒå®è£ ããæ²ããæ³šç®ã®ã¹ã¿ãŒãã¢ããã§ãã

ã«ã«ãã£ãŒããã¯ã¯ãã¡ã
2023幎ã«ã¯æŸå°Ÿç ç©¶æãšãè³æ¬æ¥åææºããããã«2025幎以éã¯çæAIãå šé¢åŒ·åããŠããã¿ã€ãã³ã°ã«ãªã£ãŠãŸãïŒ

ãšã¯ã¹ãã©ã¶ã§ã¯ãã®èšäºã§ããšããããCursorãããžãã¹ããšã³ãžãã¢åããå šç€Ÿã§äœ¿ãæŸé¡ã«ãªããŸããïŒ
ð ãšã¯ã¹ãã©ã¶ãå šç€Ÿå¡ã«Cursorå°å ¥ããŸããïŒ
â 髿© äžç | EXPLAZA | çæAI (@vvxo) March 21, 2025
ã³ãŒãã£ã³ã°ããããã¥ã¡ã³ããŸã§
ãã¹ãŠã®æ¥åãAIãšå ±ã«å®æœããŠãããŸãã
â ïžç€Ÿå å匷äŒã§ã®Tipså ±æ
â ïž AIãæŽ»çšããéçºããã»ã¹ã®æé©å
â ïžæ¥åå šè¬ãžã®AIé©çš
çµç¹å€é©ã®äžæ©ãšããŠ
AIãã¡ãŒã¹ããªåãæ¹ãç®æããŸãã pic.twitter.com/7cLzLWc4DX
ãã®èšäºã§Cusrorã®æ®æ®µäœ¿ãæ¥æ¬æ°ã«ãªã£ãçæ§ïŒæ¯éç§ãã¡ãšäžç·ã«ãAIãã€ãã£ããªç€ŸäŒãã€ãã£ãŠãããŸãããïŒïŒCursorãäœ¿ãæŸé¡ã§ããïŒwããã²ãã²ããããããããããŸãïŒ