feat: add claude-companion#33
Conversation
|
• 1. blocking - claude-companion/shim/noctalia-mcp.py:103 The Sway mutators interpolate caller-controlled window and workspace references directly into swaymsg's command language. claude-companion/shim/noctalia-mcp.py:104 and claude-companion/shim/noctalia-mcp.py:105 have the same issue. swaymsg supports command separators and immediately executes the resulting
The
The advertised
The README says an offline widget spec suite keeps the state machine tested, and claude-companion/shim/noctalia-mcp.py:50 points to |
|
I included tests/ and fixed the other issues you found. I also used the opportunity to run another pass of my own and a couple things came up. So I appreciate the impetus that helped make the plugin better. A state.watch subscription the bar pulse relied on never actually fired, so quick-ask progress didn't show. I switched it to polling and fixed a lazy test in my dev repo that took a shortcut. I am switching to my terminal to commit and push the changes now. |
|
Almost there.
|
|
Thanks |
Plugin
lowcache/claude-companionplugin.toml)What it does
Claude Code's live status on your desktop: a breathing pulse widget on the bar and an ambient orb desktop widget that reflect what your agent is doing (working, needs you, idle), an answer panel for /claude ? quick questions, and launch a /claude session from within Noctalia's Launcher. An MCP shim gives Claude live desktop senses and hands (windows, media, power, network; theme/workspace/wallpaper control) across niri, Hyprland, and Sway. The terminal still does the real agentic work — this gives claude a hands that reach right into your shell.
External dependencies
claude, python3, niri/hyprctl/swaymsg, playerctl, nmcli, notify-send
Testing
Screenshots / Videos
Checklist
idafter the/inplugin.tomlexactly.plugin.toml,README.md,thumbnail.webp, andtranslations/en.json.README.mdfollows theREADME template, documents
every entry id and dependency, and includes exact panel IPC commands and launcher prefixes where applicable.
thumbnail.webpwith the thumbnail generator.versionfollows semver and is bumped in this PR;plugin_apiis the oldest API level this plugin requires.understand that language well enough to review and maintain it (no unreviewed machine/LLM translations).
catalog.toml; CI generates it.Code review attestation
Plugins run as trusted, unsandboxed Luau in the user's session. Confirm:
licensedeclared inplugin.toml.