-
Notifications
You must be signed in to change notification settings - Fork 0
feat: Claude Code plugin (comment monitor) + viewer comment reframe#16
Open
benvinegar wants to merge 7 commits into
Open
feat: Claude Code plugin (comment monitor) + viewer comment reframe #16benvinegar wants to merge 7 commits into
benvinegar wants to merge 7 commits into
Conversation
...block Every comment composer gains a second button: posting the comment also puts an agent-ready block on the clipboard (snippet title + id + the comment text), for handing feedback straight to a terminal agent that is not watching the feedback channel. The comment still lands in the thread, so an agent can also pick it up later through the normal delivery path. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Replaces the Send & copy composer button. The server now counts open author=user feedback waits per session (with a short grace window so re-armed polls don't flicker) and exposes agentListening on session rows plus a session-listening feed event. The composer shows a "listening" indicator when an agent has a wait open — a post is seen immediately — and posting is a single Post button again. Each rendered user comment instead carries a copy button that puts the agent-ready paste block on the clipboard for agents not watching the channel. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The thread under each card (and the session thread) now shows whether its newest user comment has actually reached the agent: "posted — agent hasn't picked it up yet" until the delivery cursor passes it, then a green "received by agent". The cursor (session.agentSeq) is the proof of delivery — piggyback, waits, and the background watch all advance it — and the server now broadcasts session-updated when it moves, so receipts flip live in the viewer. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@benvinegar
benvinegar
changed the title
(削除) feat(viewer): add a Send & copy button that posts and copies a paste block (削除ここまで)
(追記) feat(viewer): make the feedback loop legible — listening indicator, read receipts, per-comment copy (追記ここまで)
Jun 13, 2026
The read receipt is now a single checkmark on the latest user comment — faded grey until the delivery cursor reaches it, green once the agent has collected it — instead of a text status line. The per-comment copy button is hover-only on every viewport now (dropped the always-visible override at narrow/touch widths). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
...ening Shift the viewer's whole angle from "message the agent" to "leave a comment": composers read "Leave a comment..." with a "Comment" button, and the synchronous-delivery affordances are gone — no green delivery checkmarks and no "●くろまる listening" indicator. A comment is an annotation the agent picks up through the feedback loop, not a live message. Removes the server-side listener tracking (agentListening, the session-listening event, the per-session wait counter and grace timer) and the cursor-advance broadcasts that drove the receipts. The per-comment copy button stays, reworded to "comment". Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
A continuous long-poll that re-arms forever and prints each new user comment as a single line — the foundation for a Claude Code background monitor. Waits for the first publish when no session exists yet, and backs off on transient errors instead of exiting. After the first poll it carries no client cursor: reading with author=user resumes from the session's server-side agent cursor and advances it via markAgentSeen, so a comment is delivered exactly once across watch, wait, and piggyback. Honoring a local cursor would re-deliver anything a piggybacked write had already consumed. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@benvinegar
benvinegar
changed the title
(削除) feat(viewer): make the feedback loop legible — listening indicator, read receipts, per-comment copy (削除ここまで)
(追記) feat(viewer): reframe around leaving comments + per-comment copy; add Jun 14, 2026
sideshow watch (追記ここまで)
Ship the remaining phases of the Claude Code plugin plan on top of `sideshow watch`: - Plugin package in `plugin/`: manifest with userConfig (sideshowUrl, apiToken), the sideshow MCP server, and a background monitor that runs `sideshow watch` to stream browser comments to the agent as notifications. A focused skill teaches the notification workflow. Validated with `claude plugin validate`. - Repo-hosted marketplace at `.claude-plugin/marketplace.json` (plugin source `./plugin`). Install: `/plugin marketplace add modem-dev/sideshow` then `/plugin install sideshow@sideshow`. - A "connect Claude Code" integrations modal in the viewer (sidebar footer + onboarding) with the install commands, what the monitor runs, and honest caveats (two commands not one-click; needs Claude Code >= 2.1.105). e2e covers it on chromium + webkit. - `sideshow watch` now falls back to resolving the most recently active session matching cwd (via GET /api/sessions), so the monitor finds the right session even when its process tree doesn't share the local state file written by the agent's CLI calls. README + CHANGELOG document the plugin; the plan file records all four phases done and the remaining release/smoke-test steps. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@benvinegar
benvinegar
changed the title
(削除) feat(viewer): reframe around leaving comments + per-comment copy; add
(追記) feat: Claude Code plugin (comment monitor) + viewer comment reframe (追記ここまで)
Jun 14, 2026
sideshow watch (削除ここまで)
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.
Uh oh!
There was an error while loading. Please reload this page.
Builds the comment loop out in two layers.
Viewer
Claude Code plugin
sideshow watchCLI: a continuous long-poll that streams each new user comment as one line (one line = one monitor notification), re-arming forever. Rides the shared server-sideagentSeqcursor (exactly-once across watch / wait / piggyback) and falls back to resolving the most-recently-active session matching cwd.plugin/): MCP server + skill + an always-on background monitor runningsideshow watch. Validated withclaude plugin validate..claude-plugin/marketplace.json):/plugin marketplace add modem-dev/sideshowthen/plugin install sideshow@sideshow.Plan and remaining release/smoke-test steps:
docs/plans/claude-code-plugin.md.Validation:
npm test(65), typecheck, lint, format, and e2e (24, chromium + webkit) all green.🤖 Generated with Claude Code