Skip to content

Latest commit

History

36 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

GhostNotes

Version: 1.0.2 | Last Updated: April 23, 2026

A Git tool that strips tagged comments before committing.


Installation

pip install ghostnotes

Then initialize in any git repo:

cd your-project
ghostnotes init

What it does

GhostNotes lets you leave personal notes in your code using a tag (default: GN:). Before every commit, it automatically strips them out so they never reach your repository.

x=some_function() # GN: this is how you assign the output from a function in Python (embarrassing to not know)

This comment line gets stripped before the commit so it looks like:

x=some_function()

Your local file stays untouched.


Commands

CommandDescription
ghostnotes initInitialize GhostNotes in the current project
ghostnotes statusShow all GhostNotes in the current project
ghostnotes set-tag --tag <tag>Change the default comment tag
ghostnotes add-lang --ext <.ext> --symb <symbol>Add support for a new language
ghostnotes pullGit pull that safely strips and re-applies your ghostnotes

Configuration

Edit .ghostnotes to tune how notes are detected. Under [settings], space_mode controls the spacing between the comment symbol and the tag:

ModeMatches
space (default)# GN: only
nospace#GN: only
both# GN: and #GN:

Supported Languages

LanguageExtensionComment Symbol
Python.py#
Java.java//
JavaScript.js//
TypeScript.ts//
C.c//
C++.cpp//
C#.cs//
Go.go//
Rust.rs//
Swift.swift//
Kotlin.kt//
Ruby.rb#
Shell.sh#
YAML.yaml / .yml#
R.r#
PHP.php//
Lua.lua--
SQL.sql--
Scala.scala//
Dart.dart//
Zig.zig//
Perl.pl#
Elixir.ex#
Haskell.hs--

Need a language not listed? Add it with ghostnotes add-lang --ext <.ext> --symb <symbol>.

About

git tool that lets developers annotate code locally without polluting commits

Resources

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages