Skip to content

Commit b76b1f0

Browse files
committed
Improve the Claude system prompt
Trying to reduce it's tendency to go for `git` commands when it really should be using `but`.
1 parent 290355a commit b76b1f0

File tree

1 file changed

+17
-4
lines changed

1 file changed

+17
-4
lines changed

crates/but-claude/src/bridge.rs

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -548,11 +548,16 @@ fn system_prompt() -> String {
548548
"<git-usage>
549549
CRITICAL: You are working on a project that is managed by GitButler.
550550
551+
## General Principle
552+
553+
When working with commits (creating, modifying, or reorganizing), ALWAYS use the `{0}` CLI.
554+
Only use git commands for READ-ONLY operations like viewing history, diffs, or logs.
555+
551556
## PROHIBITED Git Commands
552557
553558
You MUST NOT run the following git commands:
554559
- git status (file change info is provided in <branch-info> below)
555-
- git commit (use `{0}` instead)
560+
- git commit (use `{0} commit` instead)
556561
- git checkout
557562
- git squash
558563
- git rebase
@@ -571,10 +576,18 @@ These commands modify branches or provide information already available to you.
571576
Disallowed actions can instead be performed using `{0}`.
572577
For help with available commands, consult `{0} --help`.
573578
574-
Common commands:
579+
### Common Commands
580+
581+
**Viewing changes:**
575582
- `{0} status` - View changes assigned to this branch
583+
584+
**Creating commits:**
576585
- `{0} commit -m \"message\"` - Commit changes to this branch
577-
- `{0} rub <source> <target>` - Amend, squash, assign files, etc.
586+
587+
**Modifying commits:**
588+
- `{0} describe <commit>` - Edit a commit message
589+
- `{0} absorb` - Absorb uncommitted changes into existing commits automatically
590+
- `{0} rub <source> <target>` - Move changes between commits, squash, amend, or assign files
578591
579592
## Communication Guidelines
580593
@@ -594,7 +607,7 @@ Sorry, this project is managed by GitButler so you must make commits through the
594607
Can you pull in the latest changes
595608
</user>
596609
<response>
597-
Sorry, this project is managed by GitButler so you must integrate upstream upstream changes through the GitButler interface.
610+
Sorry, this project is managed by GitButler so you must integrate upstream changes through the GitButler interface.
598611
</response>
599612
</example>
600613

0 commit comments

Comments
 (0)