From 571c0346919bbac3272778e3d078b31a92bfa394 Mon Sep 17 00:00:00 2001 From: jasmine Date: Tue, 23 Dec 2025 11:14:49 +0800 Subject: [PATCH] feat(editors): add Claude slash command and refactor config structure Reorganize Claude configuration into dedicated subdirectory and add reusable slash command for updating Docker services. - Create editors/claude/ directory structure - Move CLAUDE.md and settings.json into claude/ - Add slash commands directory with update-docker-services command - Update default.nix to link individual files (allows Claude state files) --- .../features/editors/{ => claude}/CLAUDE.md | 0 .../claude/commands/update-docker-services.md | 16 ++++++++++++++++ .../settings.json} | 0 .../sajenim/features/editors/default.nix | 7 ++++--- 4 files changed, 20 insertions(+), 3 deletions(-) rename home-manager/sajenim/features/editors/{ => claude}/CLAUDE.md (100%) create mode 100644 home-manager/sajenim/features/editors/claude/commands/update-docker-services.md rename home-manager/sajenim/features/editors/{claude-settings.json => claude/settings.json} (100%) diff --git a/home-manager/sajenim/features/editors/CLAUDE.md b/home-manager/sajenim/features/editors/claude/CLAUDE.md similarity index 100% rename from home-manager/sajenim/features/editors/CLAUDE.md rename to home-manager/sajenim/features/editors/claude/CLAUDE.md diff --git a/home-manager/sajenim/features/editors/claude/commands/update-docker-services.md b/home-manager/sajenim/features/editors/claude/commands/update-docker-services.md new file mode 100644 index 0000000..e4d8216 --- /dev/null +++ b/home-manager/sajenim/features/editors/claude/commands/update-docker-services.md @@ -0,0 +1,16 @@ +Update all Docker service images on viridian to their latest pinned release versions. + +For each service, look up the latest release version from the official sources and update the +image tag to the specific version number (not "latest"). + +Services to update: +- Jellyfin (jellyfin/jellyfin) +- Lidarr (ghcr.io/hotio/lidarr) +- Prowlarr (ghcr.io/hotio/prowlarr) +- qBittorrent (ghcr.io/hotio/qbittorrent) +- Radarr (ghcr.io/hotio/radarr) +- Sonarr (ghcr.io/hotio/sonarr) +- OpenGist (ghcr.io/thomiceli/opengist) + +Use web search to find the latest release versions, then update the image tags in the +configuration files located in nixos/viridian/multimedia/ and nixos/viridian/services/. diff --git a/home-manager/sajenim/features/editors/claude-settings.json b/home-manager/sajenim/features/editors/claude/settings.json similarity index 100% rename from home-manager/sajenim/features/editors/claude-settings.json rename to home-manager/sajenim/features/editors/claude/settings.json diff --git a/home-manager/sajenim/features/editors/default.nix b/home-manager/sajenim/features/editors/default.nix index 4bf2d7f..a813899 100644 --- a/home-manager/sajenim/features/editors/default.nix +++ b/home-manager/sajenim/features/editors/default.nix @@ -41,8 +41,9 @@ home.file = { ".ideavimrc".source = ./ideavimrc; - # Global claude configuration - ".claude/settings.json".source = ./claude-settings.json; - ".claude/CLAUDE.md".source = ./CLAUDE.md; + # Claude configuration (link individual items to allow Claude Code to write state files) + ".claude/CLAUDE.md".source = ./claude/CLAUDE.md; + ".claude/settings.json".source = ./claude/settings.json; + ".claude/commands".source = ./claude/commands; }; }