Skip to content

prompt: point moves/renames at the move tool, not shell mv (0.4.2) - #161

Merged
vedaant00 merged 1 commit into
mainfrom
vs-003
Sep 3, 2026
Merged

vedaant00 merged 1 commit into
mainfrom
vs-003

Conversation

@vedaant00

Copy link
Copy Markdown
Owner

Fixes #160.

Problem

There's a dedicated move tool (local.py — "Move or rename a file or directory (surgical, undoable)"), but two pieces of tool guidance steered the model toward shell mv instead:

  • the default system prompt (prompt.py) listed mv as a run_shell example and never mentioned move;
  • the run_shell tool description itself said "npm, git, build, mv, cp, etc."

So for an ordinary rename the model would reach for shell mv — which routes through the classifier/confirm path and isn't the surgical, undoable operation the move tool provides.

Fix

  • Add move to the prompt's tool list, marked PREFER over mv.
  • Drop mv from both run_shell example lists. cp stays — there is no dedicated copy tool, so shell cp remains correct.

Guidance-only; no code behavior changes. 369 passed, ruff clean. Bumped to 0.4.2.

Thanks @22373448 for the well-grounded report (and the manual verification note).

The default system prompt and the run_shell tool description both listed `mv`
as a run_shell example while never mentioning the dedicated `move` tool, so the
model was steered toward shell mv for ordinary renames — losing the surgical,
undoable move. Add `move` to the prompt's tool list (PREFER over mv) and drop
`mv` from both run_shell examples (cp stays: there is no dedicated copy tool).
Guidance-only; no behavior change. Bump to 0.4.2.
Copilot AI lite review requested due to automatic review settings September 3, 2026 09:57

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The changes are guidance-only, consistent across prompt/tool descriptions, and the version bump is applied coherently.

Pull request overview

Adjusts opendot’s tool guidance so routine file moves/renames are steered to the dedicated structured move tool (surgical + undoable) instead of shell mv, aligning the prompt with the actual tool surface and fixing #160.

Changes:

  • Adds move to the default system prompt tool list and explicitly marks it as preferred over mv.
  • Removes mv from run_shell usage examples and adds guidance to prefer move when applicable.
  • Bumps package version from 0.4.1 to 0.4.2.
File summaries
File Description
src/opendot/tools/local.py Updates run_shell tool description to stop advertising mv and to prefer the structured move tool.
src/opendot/agent/prompt.py Updates the default system prompt tool list to include move and removes mv from run_shell examples.
src/opendot/init.py Bumps __version__ to 0.4.2.
pyproject.toml Bumps package version to 0.4.2.
Review details
  • Files reviewed: 4/4 changed files
  • Comments generated: 0
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@vedaant00
vedaant00 merged commit a70aea0 into main Sep 3, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Model may ignore the dedicated move tool due to inconsistent tool guidance

2 participants