{"id":30878437,"url":"https://github.com/andrewrgarcia/fur-cli","last_synced_at":"2025-09-08T05:09:58.125Z","repository":{"id":308231473,"uuid":"1031577170","full_name":"andrewrgarcia/fur-cli","owner":"andrewrgarcia","description":"Chats with memory, identity, and branching timelines. Like git for your chats, but stranger, and alive.","archived":false,"fork":false,"pushed_at":"2025-08-30T20:10:49.000Z","size":51,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-02T12:50:18.870Z","etag":null,"topics":["chats","cli","conversations","memory","version-control"],"latest_commit_sha":null,"homepage":"https://crates.io/crates/fur-cli","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/andrewrgarcia.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-08-04T02:43:17.000Z","updated_at":"2025-08-30T21:48:56.000Z","dependencies_parsed_at":"2025-08-04T22:34:32.119Z","dependency_job_id":"02b9a3b7-8f9c-466b-82a4-c5ce3d7f582d","html_url":"https://github.com/andrewrgarcia/fur-cli","commit_stats":null,"previous_names":["andrewrgarcia/fur-cli"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/andrewrgarcia/fur-cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrewrgarcia%2Ffur-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrewrgarcia%2Ffur-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrewrgarcia%2Ffur-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrewrgarcia%2Ffur-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andrewrgarcia","download_url":"https://codeload.github.com/andrewrgarcia/fur-cli/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrewrgarcia%2Ffur-cli/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274135710,"owners_count":25228209,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-08T02:00:09.813Z","response_time":121,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chats","cli","conversations","memory","version-control"],"created_at":"2025-09-08T05:09:53.292Z","updated_at":"2025-09-08T05:09:58.102Z","avatar_url":"https://github.com/andrewrgarcia.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- LOGO --\u003e\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/user-attachments/assets/c3582cb8-c1cc-41ab-9ed1-f8fbde4d8c21\" width=\"200\" alt=\"fur logo\"/\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eFUR\u003c/h1\u003e\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eForkable, Unearthable, Recursive memory tracker\u003c/strong\u003e\u003cbr/\u003e\nA memory tracker for your conversations, ideas, and AI chats.\n\u003c/p\u003e\n\n\n\n---\n\n## 🤔 What is FUR?\n\nFUR is a tiny command-line tool that helps you **save and organize your chat messages** — especially your conversations with ChatGPT and other AIs — in a way that makes sense when things get complex.\n\nUnlike note-taking apps, FUR lets your conversations **branch** into trees. You can:\n\n- **Jot** text or link Markdown files as messages.  \n- **Fork** conversations into multiple possible futures.  \n- **Jump** backward or forward across messages.  \n- **See** threads as a timeline or tree.  \n- **Switch** between multiple threads.  \n- **Assign avatars** (🦊 main, 👹 others) to track who said what.  \n\nIt's a **version control system for your thoughts** — like `git`, but for conversations.\n\n\u003e 🧠 _Think of FUR as “save points” for your mind. Every fork, every idea path, preserved forever._\n\n---\n\n## 🌟 Why would I want this?\n\n- ✍️ **Writers**: Explore branching plotlines.  \n- 🧑‍💻 **Developers**: Track coding convos with AI.  \n- 🧠 **Students**: Study with side questions.  \n- 📚 **Researchers**: Organize responses and notes.  \n- 🤯 **Overthinkers**: Save *every possible what-if*.  \n\n---\n\n## 🛠 How does it work?\n\nAll data lives in a `.fur/` folder:  \n\n- `.fur/index.json` → global state  \n- `.fur/threads/*.json` → one per thread  \n- `.fur/messages/*.json` → individual messages  \n- `.fur/avatars.json` → avatar mappings  \n\n### Example commands\n\n```bash\n# Start a new thread\nfur new \"Penguin talks\"\n\n# Add messages\nfur jot --text \"Penguins are weird birds.\"\nfur jot jeff --text \"Yo\"        # from another avatar\n\n# Manage avatars\nfur avatar andrew                         # sets 🦊 main avatar\nfur avatar --other ai --emoji 👹          # adds another avatar\nfur avatar --view                         # list all avatars\n\n# Manage threads\nfur thread --view                         # list threads\nfur thread d1f032d3                       # switch active thread\n\n# Navigate inside a thread\nfur tree                                  # tree view\nfur timeline --verbose                    # linear view\nfur jump --past 1                         # go back\nfur status                                # current state\n```\n\n---\n\n## 🚀 Installation\n\nYou'll need [Rust](https://www.rust-lang.org/tools/install).\n\n```bash\ncargo install --path .\n```\n\nThen ensure `~/.cargo/bin` is in your `PATH`.\n\nUpgrade after edits:\n\n```bash\ncargo install --path . --force\n```\n\n---\n\n## 🐾 Philosophy\n\nFUR is **minimal**. It's not an AI client. It's a **memory tracker** that respects:\n\n* Your brain's tendency to branch.\n* Your need to retrace steps.\n* Your desire to keep *everything*.\n\nGoal: Make recursive thinking natural.\n\n---\n\n## 🛣 Roadmap (v0.2 → v1.0)\n\n* ✅ Threads (`fur new`, `fur thread --view`, `fur thread \u003cid\u003e`)\n* ✅ Avatars (`fur avatar`, `fur avatar --view`)\n* ✅ Jotting text \u0026 files (`fur jot`)\n* ✅ Tree / Timeline views\n* ✅ Jumping \u0026 forking\n* ⏳ Thread export / import\n* ⏳ DSL for batch imports\n* ⏳ Rich markdown rendering\n\n---\n\n## 📜 License\n\nMIT, like almost everything else that's friendly and open-source.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandrewrgarcia%2Ffur-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandrewrgarcia%2Ffur-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandrewrgarcia%2Ffur-cli/lists"}