Useful vibe coding cli commands.
Project description
vibe-cmds
Useful vibe coding cli commands.
1. Installation
pip install vibe-cmds
Or install from source:
git clone https://github.com/Vilando-Tech/vibe-cmds.git
cd vibe-cmds
pip install -e .
2. Commands
ass (Auto Save State)
Creates a temporary commit with an auto-generated version string.
This is extremely helpful when you make small incremental code changes.
$ ass
# Created temporary commit with version message: __init__ # If this is the first commit
# Created temporary commit with version message: a1b2c3d # If a previous commit exists
Version string rules:
- If no commits exist: "__init__" will be used as the version
- If the last commit is a temp commit made by
ass: the last version string will be reused - If the last commit is not a temp commit: the short hash of the last non-temp commit will be used
css (Commit Saved State)
Converts temporary commits into a permanent commit.
Use this to convert previous temporary commits into a final formal commit with a proper message.
$ css "feat: implement new feature"
Behavior:
-
If the oldest temporary commit is an "__init__" commit:
- Replaces it with the new commit
- Example:
__init__→feat: implement new feature
-
If there is a non-temporary commit before the temporary commits:
- Resets to that commit
- Creates a new commit with all changes
- Example:
normal → temp1 → temp2becomesnormal → new
-
If all commits are temporary:
- Creates a new commit replacing all temporary commits
- Example:
temp1 → temp2becomesnew
dss (Drop State to Stash)
Discards changes made since the last commit, saving them to the stash.
Useful when recent changes turn out to be a mess.
$ dss
Saved changes to stash
Behavior:
- If there are no changes: prints "No changes to drop"
- Otherwise: saves all changes to the stash with message
"gitCMD: auto stash" - Changes can be recovered later using
git stash poporgit stash apply
fss (Fuck off Saved State)
Moves temporary commits to a new branch and resets the main branch.
Use this when everything feels like a mistake and you want to restore the codebase to the last formal commit.
$ fss
#Saved current changes as temporary commit
#Created new branch: temp/abc123_250325
#Reset main to last non-temp commit
Behavior:
- If there are uncommitted changes:
- Creates a temporary commit with current changes
- If no commits exist: prints "No commits to fuck off" and stop
- If all commits are temporary: prints a warning and exits and stop
- If there are no temporary commits: prints "No temporary commits to fuck off" and stop
- Otherwise:
- Creates a new branch
temp/$version_YYMMDD_HHMMSS - Moves all temporary commits to the new branch
- Resets the main branch to the last non-temporary commit
- Creates a new branch
3. Use Case
Typical workflow:
# Step 0: The repo is in a clean state since the last commit
git log
commit aaa (HEAD -> main)
# Step 1: Make some changes
$ ass
# Saved temporary state
# Created temporary commit with version message: aaa
# Step 2: Make more changes
$ ass
# Saved another state
# Created temporary commit with version message: aaa
# Step 4: AI messed something up
$ dss
# Discard all changes and return to Step 2
# Step 5: Make more changes and get ready for a proper commit
$ css "feat: complete implementation"
# Squash all xxxxx temp commits into a formal commit
# Created commit: feat: complete implementation
# Optional Step 5: Decide the whole thing was a mistake
$ fss
# Discard all changes and return to Step 0
# Reset main to last non-temp commit
This allows you to:
- Save work-in-progress changes frequently
- Convert them into a clean commit when ready, or discard them entirely if needed
- Maintain a clean Git history
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vibe_cmds-1.0.0.tar.gz.
File metadata
- Download URL: vibe_cmds-1.0.0.tar.gz
- Upload date:
- Size: 5.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9584774dc21f0b7efb562e068f879a5a522211b81274f3c6ea550f6a0fcc483f
|
|
| MD5 |
27d7de5536e9fa6ce1bf4362cf862086
|
|
| BLAKE2b-256 |
693a47cdf52b789e183d94ae9cffaa0d9292e78096a0af2c48a058f0532dc45d
|
File details
Details for the file vibe_cmds-1.0.0-py3-none-any.whl.
File metadata
- Download URL: vibe_cmds-1.0.0-py3-none-any.whl
- Upload date:
- Size: 7.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bd91f473461bf28bd22aca5691a2c5b342aa96c1eeb66958867faa967529bf0e
|
|
| MD5 |
8f04643684a9e6ec2ce42444ea39b4a7
|
|
| BLAKE2b-256 |
d640e55f3ceddd8f7d0997f801e2ade07b3917a81307f9ecf75ff7a6cc48d0f5
|