@staff0rd/assist 0.549.0 → 0.550.0
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/README.md +13 -5
- package/allowed.cli-reads +1 -0
- package/claude/commands/review-pr-comments.md +14 -2
- package/dist/allowed.cli-reads +1 -0
- package/dist/commands/sessions/web/bundle.js +1 -1
- package/dist/index.js +551 -427
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -110,9 +110,16 @@ Every command supports `--help` for full detail on its flags and behaviour.
|
|
|
110
110
|
- `assist prs edit [--title <t>] [--what <w>] [--why <y>] [--how <h>] [--resolves <key>]` - Update only the supplied sections of the current PR's body. In a web session the resulting title and body are previewed for approve/reject first (with inline comments and pasted screenshots, as for `raise`); on approval the edit is applied with any screenshots appended, on rejection the reviewer's comments are printed and nothing is changed. Outside a session the edit applies directly
|
|
111
111
|
- `assist prs list-comments` - List all comments on the current branch's pull request
|
|
112
112
|
- `assist prs fixed <comment-id> <sha>` - Reply with commit link and resolve thread
|
|
113
|
-
- `assist prs wontfix <comment-id> <reason>` - Reply with reason and resolve thread
|
|
114
|
-
|
|
115
|
-
|
|
113
|
+
- `assist prs wontfix <comment-id> <reason>` - Reply with reason and resolve thread. Pass `-` as the reason to read it from stdin. A body containing markdown — backticks around identifiers, `$(...)`, `$VAR` — must be piped in rather than passed as an argument, or the calling shell expands it before assist sees it:
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
assist prs wontfix 3718677497 - <<'EOF'
|
|
117
|
+
Deferring to #197, which renames `query_duckdb` to `query_data`.
|
|
118
|
+
EOF
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
- `assist prs reply <comment-id> <body>` - Reply to a comment thread without resolving it. Pass `-` as the body to read it from stdin
|
|
122
|
+
- `assist prs comment <path> <line> <body>` - Add a line comment to the pending review. Pass `-` as the body to read it from stdin
|
|
116
123
|
- `assist review [number]` - Run Claude and Codex in parallel to review the current branch's PR, then post line-bound comments. The diff comes from GitHub, so stale local base branches don't pollute the review; cached `claude.md` / `codex.md` / `synthesis.md` are reused when present
|
|
117
124
|
- `[number]` - `gh pr checkout <number>` first, placed by the worktree allocator on a repo with parallel work enabled (see [docs/parallel-work.md](docs/parallel-work.md))
|
|
118
125
|
- `--no-prompt` - Skip all confirmations
|
|
@@ -187,8 +194,9 @@ Backlog item ids are written and displayed in an `a`-prefixed form (e.g. item 55
|
|
|
187
194
|
|
|
188
195
|
A run entry's relative `cwd` (and a `link` path) resolves against the **repo root** - the directory holding `assist.yml` or `.claude/`, or the enclosing git repository when the repo has no project config at all (entries coming only from a `repos:` override in `~/.assist.yml`). The base does not shift with which config file the entry came from. A resolved `cwd` that does not exist fails with `run config "<name>": cwd <path> does not exist` rather than a `spawn <command> ENOENT`, and the daemon logs that reason when a `run:` session errors.
|
|
189
196
|
|
|
190
|
-
- `assist config
|
|
191
|
-
- `assist config
|
|
197
|
+
- `assist config keys [filter]` - List every key in the config schema with its type, schema default, what it does and the `assist config set` line that sets it. The optional filter narrows to keys containing it (case-insensitive), so `assist config keys worktree` shows just the worktree block. The listing is derived from `assistConfigSchema` and the `configHelp` registry that `assist verify config-keys` forces to cover every key, so no key can go missing from it
|
|
198
|
+
- `assist config get <key>` - Get a config value. Secret values (`database.url`, `roam.*` tokens, `sql.connections[].password`, `seq.connections[].apiToken`) print as `<hidden>`; `--reveal` prints the raw value undecorated for command substitution and always needs an explicit permission prompt (the CLI hook never auto-approves it). An unset key exits non-zero and reports `Key "<key>" is not set`; when the key is a valid schema key that message carries its schema default (or `has no schema default`) plus the key's note and setter
|
|
199
|
+
- `assist config list` - List the config values that are **set**, with secret values shown as `<hidden>` (no reveal option). Unset optional blocks are omitted entirely, so the output leads with a comment pointing at `assist config keys` for the full schema
|
|
192
200
|
- `assist config set <key> <value>` - Set a config value. `--global` writes to `~/.assist.yml`; `-g --repo [name]` writes a per-repo override there. The confirmation line and any validation error mask secret values
|
|
193
201
|
- `assist config unset <key>` - Remove a config value so the key falls back to the global value or schema default (`-g` targets `~/.assist.yml`; `-g --repo [name]` removes it from a per-repo override there)
|
|
194
202
|
|
package/allowed.cli-reads
CHANGED
|
@@ -43,13 +43,25 @@ Create a task for each unresolved **thread** (not each comment). For each thread
|
|
|
43
43
|
3. Run `assist prs fixed <comment-id> <sha>` to reply with commit link and resolve the thread
|
|
44
44
|
- If not addressing:
|
|
45
45
|
1. Write a **1-sentence** summary of why, max 15 words (must not contain "claude" or "opus")
|
|
46
|
-
2. Run `assist prs wontfix <comment-id> "<reason>"` to reply and resolve the thread
|
|
46
|
+
2. Run `assist prs wontfix <comment-id> "<reason>"` to reply and resolve the thread — or, if the reason contains backticks, `$(...)` or `$VAR`, use the stdin form below so your shell cannot expand it
|
|
47
47
|
- If skipping:
|
|
48
48
|
1. Do nothing — move on to the next comment immediately
|
|
49
49
|
- **Commit references**: Always use full markdown links (e.g., `[abc1234](https://github.com/owner/repo/commit/abc1234)`), never bare SHAs
|
|
50
50
|
|
|
51
51
|
5. **Repeat** until all comments have been processed
|
|
52
52
|
|
|
53
|
+
## Bodies containing markdown
|
|
54
|
+
|
|
55
|
+
Reply bodies routinely contain backticks around identifiers, and a double-quoted argument lets your shell expand backticks, `$(...)` and `$VAR` before assist ever sees the body — it posts mangled and resolves the thread with no error. Whenever the body contains any of those, pass `-` as the body and pipe it in on stdin, with the heredoc at the left margin so `EOF` terminates it:
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
assist prs wontfix <comment-id> - <<'EOF'
|
|
59
|
+
Deferring to #197, which renames `query_duckdb` to `query_data`.
|
|
60
|
+
EOF
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
The same `-` form works for `assist prs reply <comment-id> -` and `assist prs comment <path> <line> -`.
|
|
64
|
+
|
|
53
65
|
## Announcing when done
|
|
54
66
|
|
|
55
67
|
If `$ARGUMENTS` contains `--announce <number>`, then once every thread has been processed (addressed, wontfixed, or skipped) run `/prs-slack <number> --no-confirm` exactly once to announce the PR in Slack. Do this only at the very end, and only once, no matter how many threads there were. Without `--announce`, never announce.
|
|
@@ -62,4 +74,4 @@ If `$ARGUMENTS` contains `--announce <number>`, then once every thread has been
|
|
|
62
74
|
- If a comment is unclear, note this in your analysis
|
|
63
75
|
- Reply messages must not contain "claude" or "opus" (case-insensitive) - the command will reject them
|
|
64
76
|
- When referencing previous comments, use markdown link syntax: `[previous comment](url)`
|
|
65
|
-
- Use backticks to wrap inline code or keywords (e.g., `functionName`, `variable`)
|
|
77
|
+
- Use backticks to wrap inline code or keywords (e.g., `functionName`, `variable`) — and because that puts shell metacharacters in the body, use the stdin form from [Bodies containing markdown](#bodies-containing-markdown) whenever the body contains markdown
|