diff --git a/nix-darwin/home/git-sync.nix b/nix-darwin/home/git-sync.nix index 2d51a70b..47cb6496 100644 --- a/nix-darwin/home/git-sync.nix +++ b/nix-darwin/home/git-sync.nix @@ -10,6 +10,7 @@ else pkgs.git-sync; orgPath = "${config.home.homeDirectory}/org"; passwordStorePath = "${config.home.homeDirectory}/.password-store"; + claudePath = "${config.home.homeDirectory}/.claude"; in { services.git-sync = { enable = true; @@ -24,6 +25,11 @@ in { path = passwordStorePath; uri = "git@github.com:colonelpanic8/.password-store.git"; }; + claude-history = { + path = claudePath; + uri = "git@github.com:colonelpanic8/claude-history.git"; + interval = 600; + }; }; }; @@ -33,5 +39,9 @@ in { lib.mkForce ["${gitSyncPackage}/bin/git-sync" "-d" orgPath]; git-sync-password-store.config.ProgramArguments = lib.mkForce ["${gitSyncPackage}/bin/git-sync" "-d" passwordStorePath]; + # Live Claude sessions append to their transcript constantly; sync + # untracked session files and throttle event-driven syncs. + git-sync-claude-history.config.ProgramArguments = + lib.mkForce ["${gitSyncPackage}/bin/git-sync-rs" "-d" claudePath "watch" "--new-files" "true" "--min-interval" "300"]; }; }