feat: share ~/.claude across accounts, add folders, icons and release… - #3
Merged
Merged
Conversation
… alerts Sharing is now two modes, "Overall (~/.claude)" (the default) and "Each account its own". Overall links CLAUDE.md, settings.json, skills/, plugins/, agents/ and commands/ from the machine's ~/.claude into every account, including accounts added later. The user's real CLAUDE.md and plugins live there, not in a Wraithgrid account. settings.json is shared too, because an installed plugin only loads when settings.json enables it. A stale link pointing elsewhere is replaced without a backup (links hold no data); real files are still renamed to .wraithgrid-backup. The old per-source-account setting is dropped and existing links move over on the next pane start. Account dirs have their shared links removed before a recursive delete. Changing the mode offers a "Restart claude panes" button rather than restarting on its own, since a restart ends the running conversation. Terminal: Shift+Enter sends ESC CR in claude panes, which the CLI reads as a new line. Ctrl+= / Ctrl++ / Ctrl+- / Ctrl+0 change the font size. Ctrl+Shift+- still reaches claude as its undo key. Sidebar accounts can be grouped into one-level folders and moved with drag and drop (dnd-kit, as the pane grid already uses). Accounts and workspaces can each take an emoji icon; without one they show a letter badge, so every row lines up. Icons are rendered as text only and are length-limited in the schema. Old configs load with no folders or icons. Running panes show a spinner and a sheen on the account strip. Both are off under prefers-reduced-motion. A newer GitHub release raises an OS notification once per version. It fires on the launch check, and every 6 hours while the app stays open, in packaged builds only. The last announced version is stored in userData/update-notified.json, not config.json, because the renderer rewrites config.json whole. Clicking opens the release page, and only URLs under the project's releases path are allowed. Windows needs an AppUserModelID for toasts, so one is set. UI clean-up: one header per sidebar section, workspace shortcut digits shown on hover, only "login needed" shown as account status, a balanced Accounts table, a wrapped claude version line, untruncated font names and shorter sharing copy. The icon picker returns focus after a pick, so Esc still closes the workspace switcher. Known open item: a report that the Claude mascot does not animate in panes still needs a repro (see docs/TODO.md).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
… alerts
Sharing is now two modes, "Overall (~/.claude)" (the default) and "Each account its own". Overall links CLAUDE.md, settings.json, skills/, plugins/, agents/ and commands/ from the machine's ~/.claude into every account, including accounts added later. The user's real CLAUDE.md and plugins live there, not in a Wraithgrid account. settings.json is shared too, because an installed plugin only loads when settings.json enables it. A stale link pointing elsewhere is replaced without a backup (links hold no data); real files are still renamed to .wraithgrid-backup. The old per-source-account setting is dropped and existing links move over on the next pane start. Account dirs have their shared links removed before a recursive delete.
Changing the mode offers a "Restart claude panes" button rather than restarting on its own, since a restart ends the running conversation.
Terminal: Shift+Enter sends ESC CR in claude panes, which the CLI reads as a new line. Ctrl+= / Ctrl++ / Ctrl+- / Ctrl+0 change the font size. Ctrl+Shift+- still reaches claude as its undo key.
Sidebar accounts can be grouped into one-level folders and moved with drag and drop (dnd-kit, as the pane grid already uses). Accounts and workspaces can each take an emoji icon; without one they show a letter badge, so every row lines up. Icons are rendered as text only and are length-limited in the schema. Old configs load with no folders or icons.
Running panes show a spinner and a sheen on the account strip. Both are off under prefers-reduced-motion.
A newer GitHub release raises an OS notification once per version. It fires on the launch check, and every 6 hours while the app stays open, in packaged builds only. The last announced version is stored in userData/update-notified.json, not config.json, because the renderer rewrites config.json whole. Clicking opens the release page, and only URLs under the project's releases path are allowed. Windows needs an AppUserModelID for toasts, so one is set.
UI clean-up: one header per sidebar section, workspace shortcut digits shown on hover, only "login needed" shown as account status, a balanced Accounts table, a wrapped claude version line, untruncated font names and shorter sharing copy. The icon picker returns focus after a pick, so Esc still closes the workspace switcher.
Known open item: a report that the Claude mascot does not animate in panes still needs a repro (see docs/TODO.md).