π€ What is FUR?
Scrolling through endless chats to find that one reply is painful.
FUR makes it easy to track, branch, and preserve your conversations as trees you can navigate, fork, and export.
With FUR you can:
- Jot quick notes or attach Markdown files.
- Chat long-form messages interactively (paste documents straight in).
- Branch & fork conversations into multiple timelines.
- Jump backward or forward to any message.
- See threads as timelines or trees.
- Switch between multiple threads easily.
- Assign avatars (π¦ you, π€ bots, π€ others β customizable).
- Script conversations with
.frsfiles. - Export threads to Markdown or PDF.
- (New) Use Git passthrough commands directly through FUR.
- (New) View Git status integrated into
fur statuswhen inside a Git repo.
Think of it as a version control system for your thoughts β with optional Git integration when you want it.
π Whatβs New in v0.4.1 β Git-Powered Status & Passthrough β‘
β
Git-enhanced fur status
If the project is inside a Git repository, fur status now:
- Shows your active FUR thread and
- Shows
git statusoutput (fully colorized and real Git output)
No changes if thereβs no .git β FUR stays minimal.
β Git passthrough commands (optional, zero-config)
FUR now exposes thin wrappers for common Git commands:
Everything after the subcommand is forwarded raw to Git:
fur commit -m "message"fur commit --amendfur add .fur push --force-with-lease
Flags, hyphens, editor opens β everything works exactly like native git.
If no .git repo is found:
β οΈ No Git repository detected in this project.
Git passthrough is strictly opt-in.
FUR does not modify .gitignore and never writes to Git config.
π How it works
FUR keeps everything inside a local .fur/ folder:
.fur/index.jsonβ global state.fur/threads/*.jsonβ one file per thread.fur/messages/*.jsonβ one file per message.fur/avatars.jsonβ avatar mappings
This folder is local, simple, and human-readable.
Example commands
# Start fresh
# Manage avatars
# Quick jot
# Jot with a custom avatar
# Paste long text or Markdown interactively
# Attach an existing Markdown file
# Run an .frs script
# Export views
# Git passthrough (if inside a Git repo)
π Installation
From crates.io
From source
πΎ Philosophy
FUR is minimal. It's not an AI client. It's a memory tracker that respects:
- Your brain's tendency to branch.
- Your need to retrace steps.
- Your desire to keep everything.
Git integration is optional β FUR uses it only when present, and gets out of the way when not.
Goal: Make recursive thinking natural.
π£ Roadmap to v1.0
β Already complete (v0.4)
- Threads (
fur new,fur thread) - Avatars (
fur avatar) - Jot & Chat (
fur jot,fur chat) - Trees & Timelines
- Forking & jumping
.frsscripting system- Thread import/export
- PDF & Markdown exports
- Git passthrough (add/commit/push/pull)
- Git-enhanced
fur status
π Planned for future releases
fur rmβ delete messages in the CLIfur moveβ reorder/replace messagesfur branchβ interactive branch creation- More editing tools
- Richer exports (metadata, tags, avatars)
- Optional helper:
fur gitignore
π v1.0 Milestone
- Full editing suite
- Round-trip-safe
.frsimport/export - Robust test coverage
- Consider cross-platform packaging (Homebrew, Scoop, etc.)
π License
MIT, like almost everything else that's friendly and open-source.