LLM instructions: where the repos live, so finding one is not a search - #85
Open
landsman wants to merge 1 commit into
Open
LLM instructions: where the repos live, so finding one is not a search#85landsman wants to merge 1 commit into
landsman wants to merge 1 commit into
Conversation
Asked to update landsman/config, the agent ran a `find` over $HOME instead of opening ~/projects/landsman/config. The layout was never written down anywhere, so it was guesswork by design. The find is the part worth banning: worktrees under .claude/worktrees and /private/tmp match on name, so it can return a detached copy of the repo and the edits land somewhere that is never pushed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A new rule file plus its row in the index.
Why
Asked to "update my landsman/config repo", the agent ran
instead of opening
~/projects/landsman/config. The name in the request was already the path, and the layout is not written down in this repo or any other, so there was nothing to read and the sweep was the only move left.What it says
~/projects/<owner>/<repo>, one level deeper for a client with several products (softopus/mvcr/mvcr-web-be),github/andcodeberg/as the exceptions holding other people's clones.~because the path differs per platform —/Users/landsmanon macOS,/home/landsmanon Kubuntu — and both boxes are in daily use.The
findis the part worth banningNot for speed. This repo keeps git worktrees in
.claude/worktrees/and has three more registered under/private/tmp;git worktree listshows eight in total right now. A search matching on directory name reaches those before the real checkout, and an agent that edits a stale detached worktree produces a clean-looking diff in a place nothing will ever push. Not finding the repo fails loudly; that fails quietly.Placement
Unconditional, and first in the table — it fires before any other rule can, since nothing else applies until the right directory is open. No
paths:frontmatter: the trigger is a question, not a file, which is the test the index already states.Checks
make lint claude-settings-test stow-testpasses.shared/.claude/CLAUDE.mdis the only place the rule list exists, so the index row is the whole wiring. Not verified: that/contextshows it under Memory files — that needs a restarted session against the stowed copy, which is the check the index itself asks for after a layout change.