getgloss 0.8.0 → 0.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/web/setup.md CHANGED
@@ -180,6 +180,9 @@ Use `--no-watch` when the caller only needs to open the review. The background
180
180
  daemon exits automatically after a short idle window with no pending reviews.
181
181
  If cleanup looks stale, run `gloss doctor`; use `gloss stop --all` when you
182
182
  want to terminate all Gloss daemon processes for the current user.
183
+ Use `gloss clear --dry-run` to preview old completed review artifacts, and
184
+ `gloss clear` to delete completed artifacts older than 30 days. Pending reviews
185
+ are always preserved.
183
186
 
184
187
  Mark a submitted review handled after applying feedback:
185
188
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "getgloss",
3
- "version": "0.8.0",
3
+ "version": "0.8.2",
4
4
  "description": "Local browser-based diff review for coding-agent loops.",
5
5
  "type": "module",
6
6
  "packageManager": "pnpm@10.33.2",
package/skill/SKILL.md CHANGED
@@ -1,84 +1,82 @@
1
1
  ---
2
2
  name: gloss
3
- description: Open local working-tree or branch changes in Gloss for browser review, wait for submitted feedback, continue existing reviews with new turns, and address returned comments or discuss them before editing. Use when the user asks to review local code changes, says "gloss this" or "open Gloss", wants to inspect a browser diff, wants comments handled before a PR, asks for a follow-up review pass, or asks to discuss/propose feedback fixes first.
3
+ description: Open local working-tree or branch changes in Gloss for browser review, wait for submitted feedback, continue existing reviews with new turns, inspect Gloss status/state, and address returned comments or discuss them before editing. Use when the user asks to review local code changes, says "gloss this" or "open Gloss", wants to inspect a browser diff, wants comments handled before a PR, asks for a follow-up review pass, asks to find Gloss review state/artifacts, or asks to discuss/propose feedback fixes first.
4
4
  ---
5
5
 
6
6
  # Gloss
7
7
 
8
8
  ## Workflow
9
9
 
10
- 1. Run `gloss open --json` from the repo root unless the user names a base ref.
11
- 2. Leave the command running. It blocks until the browser review is submitted.
12
- 3. Parse the JSON output and read `feedbackPath` when present.
13
- 4. Check `feedback.reviewScope`:
14
- - Missing or `{ "mode": "all" }` means the human submitted feedback while viewing the whole turn.
15
- - `{ "mode": "single", "sha": "..." }` means feedback was submitted from one commit preview.
16
- - `{ "mode": "range", "fromSha": "...", "toSha": "..." }` means feedback was submitted from a contiguous commit range preview.
17
- Treat scoped feedback as comments on that submitted slice; do not infer that unreviewed commits were approved.
18
- 5. Decide the mode (see "Discussion Mode" below). Default is apply-directly.
19
- 6. Address every comment in file and line order, or per the discussion plan.
20
- 7. Validate the fix with the narrowest relevant checks.
21
- 8. When useful, run `gloss resolve <reviewId> --comment <commentId> --summary "<what changed>"` as each comment is handled.
22
- 9. Run `gloss resolve <reviewId> --summary "<what changed>"`, then summarize the feedback addressed and validation performed.
23
- 10. If the user asks for another pass on the same work, run `gloss open --review <reviewId> --json` so the next diff is added as a new turn in the same review.
10
+ 1. From the repo root, run `gloss open --json` unless the user names a base ref.
11
+ 2. Leave it running; it waits until browser submission. Use `--no-watch` only when the user only wants the review opened.
12
+ 3. Parse the JSON output and read `feedbackPath`.
13
+ 4. Apply feedback in file/line order unless "Discussion Mode" applies.
14
+ 5. Validate with the narrowest relevant checks.
15
+ 6. Resolve handled feedback with `gloss resolve <reviewId> --comment <commentId> --summary "<what changed>"` when useful, then `gloss resolve <reviewId> --summary "<what changed>"`.
16
+ 7. For another pass on the same work, run `gloss open --review <reviewId> --json`; use a fresh `gloss open --json` only for unrelated work.
24
17
 
25
18
  ## Discussion Mode
26
19
 
27
- Some feedback is ambiguous, opinionated, or wide-reaching enough that the right
28
- move is to talk through it before editing code. Enter discussion mode when any
29
- of these are true:
20
+ Enter discussion mode when the user asks to discuss/propose first, or when a
21
+ comment is too ambiguous to apply safely. Trigger phrases include "discuss
22
+ first", "talk through it", "don't apply yet", "review the comments with me",
23
+ and "propose first".
30
24
 
31
- - The user asked for it before running gloss — phrases like "discuss first",
32
- "talk through it", "don't apply yet", "let's discuss", "review the comments
33
- with me", or "propose first".
34
- - A comment is genuinely ambiguous and you'd otherwise have to guess intent.
25
+ When discussing:
35
26
 
36
- When in discussion mode:
27
+ 1. Read every comment in `feedback.json` before editing. Do not edit files yet.
28
+ 2. Group comments by file. Restate each comment in one line, propose the change, and flag conflicts/out-of-scope items.
29
+ 3. Ask which items to apply, modify, or skip, then wait for the answer.
30
+ 4. Apply only approved items, validate, then resolve as usual. Mention skipped items in the resolution summary.
37
31
 
38
- 1. Read every comment in `feedback.json` first. Do not edit any files yet.
39
- 2. Group comments by file. For each, restate the comment in one line and
40
- propose how you'd address it — the approach plus the lines that would
41
- change. Flag any that conflict, are out of scope, or need a decision.
42
- 3. Ask the user which to apply, modify, or skip. Wait for an answer.
43
- 4. Apply only what's approved. Skip or defer the rest, and note skipped items
44
- in the resolution summary so they aren't silently dropped.
45
- 5. Validate, then resolve as usual.
32
+ Default when the user did not request discussion and comments are clear:
33
+ apply feedback directly.
46
34
 
47
- Default (no discussion request and no ambiguous comments): the current
48
- apply-directly workflow.
35
+ ## Feedback Scope
49
36
 
50
- Feedback is stored under `~/.gloss/reviews/<reviewId>/`:
37
+ Check `feedback.reviewScope` before editing:
51
38
 
52
- - `turns/<turnId>/feedback.json` is the machine-readable handoff.
53
- - `turns/<turnId>/feedback.md` is the human-readable copy.
54
- - `turns/<turnId>/resolved.json` tracks mutable comment-level and turn-level resolution progress.
39
+ - Missing or `{ "mode": "all" }`: feedback covers the whole turn.
40
+ - `{ "mode": "single", "sha": "..." }`: feedback covers one commit preview.
41
+ - `{ "mode": "range", "fromSha": "...", "toSha": "..." }`: feedback covers a contiguous commit range.
55
42
 
56
- The same browser URL stays open for the whole loop. Each `gloss open --review
57
- <reviewId> --json` creates or resumes the next turn, and the browser turn history
58
- shows the lineage. Historical turns are read-only. Keep using the same review ID
59
- until the user starts unrelated work or explicitly wants a new review.
43
+ Treat scoped feedback as comments on that submitted slice; do not infer that
44
+ unreviewed commits were approved.
45
+
46
+ ## State And Artifacts
47
+
48
+ For existing loops, run `gloss status --json` first; it reports daemon state and
49
+ active review metadata. If the daemon is down or the review ID is missing,
50
+ inspect durable state under `${GLOSS_STATE_DIR:-$HOME/.gloss}`:
51
+
52
+ - `server.json`: daemon pid, port, version, and state dir.
53
+ - `reviews/<reviewId>/meta.json`: review status, cwd, active turn, and turn summaries.
54
+ - `reviews/<reviewId>/turns/<turnId>/`: `turn.json`, `diff.json`, `feedback.json`, `feedback.md`, `resolved.json`.
55
+
56
+ Use this pattern to discover review files:
57
+
58
+ ```bash
59
+ state_dir="${GLOSS_STATE_DIR:-$HOME/.gloss}"
60
+ find "$state_dir/reviews" -maxdepth 4 -type f
61
+ ```
62
+
63
+ The same browser URL stays open for each review loop. Historical turns are
64
+ read-only.
60
65
 
61
66
  Gloss opens staged, unstaged, and untracked working changes first. If the
62
67
  working tree is clean, it falls back to the branch diff against the best
63
68
  available merge-base. Use `--base <ref>` only when the user asks for a specific
64
69
  comparison such as `origin/main`, `origin/master`, or `HEAD`.
65
70
 
66
- If the user asks only to open the review and not wait, run
67
- `gloss open --json --no-watch`.
68
-
69
71
  `gloss open --json` intentionally stays alive until the browser review is
70
- submitted or the watch timeout expires. If a long-running `gloss open` looks
71
- unexpected, first check whether it is waiting on an active browser review
72
- before killing processes.
72
+ submitted or times out. If it looks stuck, check whether it is waiting on an
73
+ active browser review before killing processes.
73
74
 
74
75
  The background daemon shuts down on its own after a short idle window with no
75
- pending reviews. If process cleanup still looks stale, run `gloss doctor` to
76
- report unmanaged daemons. Use `gloss stop --all` only when intentionally
77
- cleaning up all Gloss daemon processes for the current user.
78
-
79
- If the user asks for a follow-up review after fixes, commits, or additional
80
- changes in the same review loop, run `gloss open --review <reviewId> --json`.
81
- Use a fresh `gloss open --json` only for unrelated work or a truly new review.
76
+ pending reviews. Use `gloss doctor` for stale process cleanup diagnostics,
77
+ `gloss stop --all` only for intentional daemon cleanup, and
78
+ `gloss clear --dry-run` before deleting completed artifacts older than 30 days
79
+ with `gloss clear`. Pending reviews are always preserved.
82
80
 
83
81
  For less-common options, run `gloss open --help` or `gloss --help` instead of
84
82
  guessing flags.