diff --git a/src/use_cases.rs b/src/use_cases.rs index a15b9f7..a5e93fb 100644 --- a/src/use_cases.rs +++ b/src/use_cases.rs @@ -4535,11 +4535,11 @@ Use the Obsidian CLI for compact operational memory in the `agman` vault. Always Start by listing notes: {listing_examples} +After listing notes, do not read all notes. Before starting work, read any note whose title directly matches the work about to be done. Use narrow `search:context` queries only when title relevance is unclear. PR, pull request, and description titles are direct matches before creating or updating PR descriptions; for example, if `general/Write PR description.md` is listed, read it first. + Read and search selectively: {read_search_examples} -Do not read all notes. Read by relevant title, or use narrow `search:context` queries before opening a note. - Project folder lifecycle: - Do not create Obsidian project folders during agman project creation; prompt-only v1 must not make core agman project creation depend on Obsidian. - Treat an empty result from `obsidian vault=agman files folder="{project_folder}"` as "no project notes yet", not as a failure. diff --git a/tests/use_cases_test.rs b/tests/use_cases_test.rs index 357a1ea..1cfbca5 100644 --- a/tests/use_cases_test.rs +++ b/tests/use_cases_test.rs @@ -354,7 +354,10 @@ fn assert_obsidian_common_base(prompt: &str) { assert!(prompt.contains( "current user/PM direction, repo state, live systems, CI, and agman task state override Obsidian notes" )); - assert!(prompt.contains("Do not read all notes")); + assert!(prompt.contains("do not read all notes")); + assert!(prompt.contains("title directly matches")); + assert!(prompt.contains("before creating or updating PR descriptions")); + assert!(prompt.contains("general/Write PR description.md")); } fn assert_obsidian_cos_examples(prompt: &str) {