From 36819548a4ab321338077186682de1a69190f966 Mon Sep 17 00:00:00 2001 From: MMinasyan Date: Fri, 23 Oct 2026 15:53:35 +0400 Subject: [PATCH] refactor(prompt): remove legacy rules fallback --- internal/prompt/assembler.go | 15 +++++---------- internal/prompt/assembler_test.go | 7 +------ internal/prompt/rules_file_guide.md | 2 +- 3 files changed, 7 insertions(+), 17 deletions(-) diff --git a/internal/prompt/assembler.go b/internal/prompt/assembler.go index 71c5f733..d91fef87 100644 --- a/internal/prompt/assembler.go +++ b/internal/prompt/assembler.go @@ -280,17 +280,12 @@ func osDescription() string { } func readRulesFile(dir string) (string, error) { - for _, name := range []string{"AGENTS.md", "CLAUDE.md"} { - path := filepath.Join(dir, name) - data, err := os.ReadFile(path) - if err == nil { - return string(data), nil - } - if !os.IsNotExist(err) { - return "", fmt.Errorf("read %s: %w", path, err) - } + path := filepath.Join(dir, "AGENTS.md") + data, err := os.ReadFile(path) + if err != nil && !os.IsNotExist(err) { + return "", fmt.Errorf("read %s: %w", path, err) } - return "", nil + return string(data), nil } func detectOverrides(rulesContent string) map[string]bool { diff --git a/internal/prompt/assembler_test.go b/internal/prompt/assembler_test.go index 6238fb26..8895828c 100644 --- a/internal/prompt/assembler_test.go +++ b/internal/prompt/assembler_test.go @@ -150,17 +150,12 @@ func TestAssembledBaselinePromptDoesNotAdvertiseMemoryTools(t *testing.T) { } } -func TestReadRulesFilePrefersAgentsThenClaude(t *testing.T) { +func TestReadRulesFileAgentsOnly(t *testing.T) { dir := t.TempDir() { got, err := readRulesFile(dir) testassert.Require(t, err == nil && got == "", "empty readRulesFile = %q, %v", got, err) } - testassert.NoError(t, os.WriteFile(filepath.Join(dir, "CLAUDE.md"), []byte("claude"), 0o600)) - { - got, err := readRulesFile(dir) - testassert.Require(t, err == nil && got == "claude", "CLAUDE readRulesFile = %q, %v", got, err) - } testassert.NoError(t, os.WriteFile(filepath.Join(dir, "AGENTS.md"), []byte("agents"), 0o600)) { got, err := readRulesFile(dir) diff --git a/internal/prompt/rules_file_guide.md b/internal/prompt/rules_file_guide.md index 244548f2..f45969e7 100644 --- a/internal/prompt/rules_file_guide.md +++ b/internal/prompt/rules_file_guide.md @@ -1,6 +1,6 @@ ## Rules File Guide -AGENTS.md is always present in your context (if AGENTS.md is missing, CLAUDE.md is used instead). It is where project-specific knowledge lives. +AGENTS.md is where project-specific knowledge lives. Its contents are included in your context when the file is present. What belongs in it: