実現したいこと
エディタの Cursor で無限ループを検知させ、処理を停止させたいです。
発生している問題
エディタの Cursor を使っているのですが、下記のような無限ループに困っています。
「原因がみつかりました!!」
「Aを修正します」
「原因がみつかりました!!」
「Aを修正します」
・
・
・
試したこと
昨日:
下記の User Rules を記載したら無限ループが検知ができるかなと思って保存してみました。
今日:
また無限ループが起こりました。
下記の User Rules では対処しきれない様子です。
## 重要な注意事項 - 下記の【ループ検出条件】に合致したとき、ループを検出して処理を停止し、問題を報告してください。 【ループ検出条件】 同一ファイル (同一メソッド) に対して、同じ編集内容 (または類似の編集内容) を3回以上繰り返し実行する場合 - 編集内容が同じ, または類似 - 実行回数が3回以上
ただし、今日の無限ループに気付き「大至急、Cursor Settings の User Rules を確認してください。」とチャットで送ったところ、「Cursor Settings の User Rules を直接確認することはできませんが、現在、aaa.ts の bbb メソッドに対して、同じ編集内容を3回以上繰り返し実行しています。」と返答してきたので、一応 User Rules を反省することはできるみたいです。
補足情報
- Currsor: Pro Plan
- Windows: 11
Cursorを使ったことがないため参考になるかわかりませんが、
「してください」より「しなければならない」とかの方が効果が出ると見たことがあります、
また、検出条件自体も少しわかりづらいのかも?
まあ、人間に指示を与えて自動運転させるのもさることながらまだ人類はAIに完璧な「前提/設定」を与えることなんてできないんだと思います
諦めてAIには「前提/設定」のプロンプトではロールプレイングの設定くらいしか書いてませんね。
まあ要するにそんな使い方しなかったら無限ループもしないのでは?という意見だがこれだとダメだったりします...?
自分は最近作ってるツールではGUIでそれなりに規模が大きいので全てAIに書かせてますが、0からと言うよりは指示が上手いのか自分の意図通り、想像通りのコードを書いてくれますしそれ以外は書かせません。
検索とタイピングをやらせてるのであって、プログラミングをやらせてるのとはちょっと違うかも知れません。
ただタイピングをやってもらうというだけでかなり作業効率は高いと思っています。
逆に主さんのようにプログラミング全てをやらせるのはハードルがそもそも高く逆に効率が下がるのかも知れません。
コメントが迷惑であればお声がけください。
私の想像とは違い上手くコントロールするすべがあるのかもしれません。
Cursorはとりあえず置いておいて、
> 下記の【ループ検出条件】に合致したとき、ループを検出して処理を停止し、問題を報告してください。
この指示自体が日本語として大丈夫なのでしょうか。つまり、そのまま読むと
「ループの検出の条件に合致・ヒットしたら再度、ループの検出処理をせよ。検出したならば処理を停止し、問題を報告せよ」とのように解釈できます。再帰的に無限ループな処理となるルールと捉えられてもおかしくないように思います。
まぁ、良く読んでみると「実現したいこと」に「エディタの Cursor で無限ループを検知させ、処理を停止させたいです。」とあるので、言い換えると、このご質問自体が「要望通りの動きをさせるには、どのようなUser Rulesを記述すれば良いのか。あるいは今、提示しているUser Rulesをどのように修正すればよいのか。何がいけないのか。他の方法はあるか」と言う主旨なのですね。

あなたの回答
tips
プレビュー