@staff0rd/assist 0.281.3 → 0.282.1

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 CHANGED
@@ -86,7 +86,8 @@ After installation, the `assist` command will be available globally. You can als
86
86
  - `assist commit <message>` - Commit staged changes with validation
87
87
  - `assist commit <message> [files...]` - Stage files and create a git commit with validation
88
88
  - `assist prs` - List pull requests for the current repository
89
- - `assist prs create --title <title> --body <body>` - Create a pull request via `gh pr create`
89
+ - `assist prs raise --title <title> --what <what> --why <why> [--how <how>] [--resolves <key>] [--force]` - Raise a pull request, assembling the body from `## What`, `## Why` (with `--resolves` Jira URLs appended inline), and an optional `## How`; errors if a PR already exists unless `--force` overwrites its title and body
90
+ - `assist prs edit [--title <title>] [--what <what>] [--why <why>] [--how <how>] [--resolves <key>]` - Update only the supplied sections of the current branch's pull request, preserving every other section of its body
90
91
  - `assist prs list-comments` - List all comments on the current branch's pull request
91
92
  - `assist prs fixed <comment-id> <sha>` - Reply with commit link and resolve thread
92
93
  - `assist prs wontfix <comment-id> <reason>` - Reply with reason and resolve thread
@@ -104,9 +105,7 @@ After installation, the `assist` command will be available globally. You can als
104
105
  - `--since <date>` - Start of the window as `YYYY-MM-DD` instead of the default 30 days ago
105
106
  - `--top <n>` - Only report the top `n` repos by commit count; committers and the author breakdown then cover those repos only (also caps the per-repo author queries, which speeds up large orgs)
106
107
  - `--json` - Output all three views as structured JSON instead of tables
107
- - `assist news` - Start the news web UI showing latest RSS feed items (same as `news web`)
108
- - `assist news add [url]` - Add an RSS feed URL to the config
109
- - `assist news web [-p, --port <number>]` - Start a web view of the news feeds (default port 3001)
108
+ - `assist news add [url]` - Add an RSS feed URL (rendered in the sessions web News tab)
110
109
  Backlog data is stored in a global Postgres database (shared across all repos, scoped per repository by git origin), so a connection string is required. Set it via the `ASSIST_BACKLOG_DATABASE_URL` environment variable or the `backlog.databaseUrl` key in `assist.yml`; the environment variable takes precedence. Without one, every `assist backlog` command exits with a setup message. (There is no SQLite/JSONL fallback.) Commands default to the current repository's items; pass `--all-repos` to span every repository.
111
110
 
112
111
  The first backlog command in a repository that still has a local `.assist/backlog.jsonl` automatically migrates it into Postgres — but only as a one-time bootstrap into an empty origin. If Postgres has **no** items for the repo's origin yet, it runs `git pull` (best-effort) to fetch the latest committed copy, imports every item under the origin with fresh global IDs (rewriting links to other items), and verifies the result. If Postgres **already** has items for that origin (a prior run, another clone, or a pre-seeded database), the import is skipped to avoid creating duplicates. Either way the local `.assist/backlog.jsonl` and `.assist/backlog.db` are renamed to `*.bak`, so the migration never re-runs and a local copy is retained.
@@ -243,7 +242,7 @@ The first backlog command in a repository that still has a local `.assist/backlo
243
242
  - `assist voice devices` - List available audio input devices
244
243
  - `assist voice logs [-n <count>]` - Show recent voice daemon log entries
245
244
  - `assist sessions` - Start the web dashboard (same as `sessions web`)
246
- - `assist sessions web [-p, --port <number>] [--no-open]` - Start the web dashboard with Sessions and Backlog tabs, xterm.js terminals with clickable http(s) links (default port 3100); `--no-open` skips opening a browser on startup; press Ctrl+R in the foreground terminal for an in-terminal restart menu (Restart daemon, Restart webserver, Restart both); Restart webserver re-execs the foreground process (passing `--no-open` so no browser pops on restart) so the connected browser auto-reconnects
245
+ - `assist sessions web [-p, --port <number>] [--no-open]` - Start the web dashboard with Sessions, Backlog and News tabs, xterm.js terminals with clickable http(s) links (default port 3100); `--no-open` skips opening a browser on startup; press Ctrl+R in the foreground terminal for an in-terminal restart menu (Restart daemon, Restart webserver, Restart both); Restart webserver re-execs the foreground process (passing `--no-open` so no browser pops on restart) so the connected browser auto-reconnects
247
246
  - `assist sessions summarise [-f, --force] [-n, --limit <count>]` - Generate one-line summaries for unsummarised Claude sessions (force re-generates all; limit caps how many to process)
248
247
  - `assist daemon run` - Run the sessions daemon in the foreground (normally auto-spawned detached by `assist sessions`)
249
248
  - `assist daemon status` - Show sessions daemon status, live sessions, and any stray daemon processes or stolen socket
@@ -4,8 +4,20 @@ description: Raise a PR with a concise description
4
4
 
5
5
  Raise a pull request for the current branch. Use a concise description with no headers. Do not reference Claude or any AI assistance in the title or body.
6
6
 
7
- Use `assist prs create --title <title> --body <body>` to create the PR — do not use `gh pr create` directly. Keep the title short and the body to a brief plain-text summary of the changes. Wrap symbols, file paths, function names, class names, variable names, config keys, CLI commands, and flag names in backticks.
7
+ Use `assist prs raise` to create the PR — do not use `gh pr create` directly. The body is assembled from discrete section options; supply at minimum `--title`, `--what`, and `--why`:
8
+
9
+ - `--title <title>` — short PR title.
10
+ - `--what <what>` — what the change does (rendered as `## What`).
11
+ - `--why <why>` — why the change is needed (rendered as `## Why`).
12
+ - `--how <how>` — optional; how the change works (rendered as `## How`). Omit it unless the approach genuinely needs explaining.
13
+ - `--resolves <key>` — Jira issue key resolved by this PR; repeatable. Each key's browse URL is appended inline to the `## Why` section. Unless a Jira key is already known from the session (e.g. mentioned by the user or present on the branch), ask the user whether this PR resolves a Jira issue and for the key before raising; omit `--resolves` only if they say there isn't one.
14
+
15
+ Keep each section to a brief plain-text summary. Wrap symbols, file paths, function names, class names, variable names, config keys, CLI commands, and flag names in backticks.
8
16
 
9
17
  Write the description in terms of behaviour and user-facing impact: what the change does, what's different for someone using it, and why. Keep technical detail to a minimum — do not walk through the implementation approach step by step, and do not restate what is already obvious from the diff or changelog (which files changed, which functions were added). The reviewer can read the code; the description should tell them what to expect from the change, not narrate how it was built.
10
18
 
11
- Before creating the PR, the user must see the full proposed title and body — do not assume they can see your reasoning or earlier tool output. Write the complete title and body verbatim in your visible reply, then use the AskUserQuestion tool to ask whether to create the PR, putting the full title and body in the approve option's `preview` field so the dialog itself displays them. This confirmation is mandatory in every permission mode, including auto-accept and bypass-permissions — never run `assist prs create` until the user has explicitly approved the title and body through AskUserQuestion. If the user requests changes, revise and confirm again before creating.
19
+ `assist prs raise` errors if a pull request already exists for the branch. Pass `--force` to fully overwrite the existing PR's title and body.
20
+
21
+ To update an existing PR, use `assist prs edit` with the same section options (`--title`/`--what`/`--why`/`--how`/`--resolves`). Only the sections you pass are replaced; every other section of the existing body is preserved. Passing `--resolves` without `--why` keeps the existing `## Why` text and refreshes its appended Jira URLs; passing `--why` without `--resolves` replaces the prose but keeps the existing `Resolves` links.
22
+
23
+ Before creating the PR, the user must see the full proposed title and body — do not assume they can see your reasoning or earlier tool output. Write the complete title and body verbatim in your visible reply, then use the AskUserQuestion tool to ask whether to create the PR, putting the full title and body in the approve option's `preview` field so the dialog itself displays them. This confirmation is mandatory in every permission mode, including auto-accept and bypass-permissions — never run `assist prs raise` until the user has explicitly approved the title and body through AskUserQuestion. If the user requests changes, revise and confirm again before creating.