feedbackbasket-cli 0.11.0 → 3.0.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/CHANGELOG.md ADDED
@@ -0,0 +1,289 @@
1
+ # Changelog
2
+
3
+ ## Unreleased
4
+
5
+ ## [3.0.0] - 2026-08-22
6
+
7
+ ### Added
8
+
9
+ - Added all 31 versioned product-operation mappings, including note update and note deletion.
10
+ - Added contract checks for commands, HTTP paths, confirmations, documentation, and package release safety.
11
+
12
+ ### Changed
13
+
14
+ - High-impact agent commands now need `--yes`.
15
+ - The CLI version now matches the MCP and agent contract version.
16
+
17
+ ---
18
+
19
+ ## [0.12.0] - 2026-07-13
20
+
21
+ ### Added
22
+
23
+ - **Conversation controls** - enable or disable website visitor replies and native in-app follow-up replies independently from the CLI
24
+ - **Threaded conversation output** - `feedback replies` now shows both team messages and visitor follow-ups in chronological order
25
+
26
+ ### Changed
27
+
28
+ - **Mobile conversation guidance** - mobile status, breadcrumbs, README, and the packaged skill now cover SDK unread badges and same-thread replies
29
+ - **Agent thread safety** - agents preserve follow-up context on the original feedback item instead of creating duplicate feedback entries
30
+
31
+ ---
32
+
33
+ ## [0.11.0] - 2026-07-13
34
+
35
+ ### Added
36
+
37
+ - **Autonomous mobile setup** - `mobile setup`, `status`, `bundle-ids`, and `verify` let agents configure and confirm native or hosted mobile feedback without using the dashboard
38
+ - **Safe mobile lifecycle controls** - mobile integrations can be disabled or have their publishable project key rotated through explicit confirmation commands
39
+ - **Mobile setup guidance** - agent output includes Swift package details, hosted-form configuration, supported frameworks, and connection metadata
40
+ - **Native in-app replies** - the CLI recognizes mobile reply threads and supports `--delivery in-app` for responses displayed by the Swift SDK
41
+
42
+ ### Changed
43
+
44
+ - **Publishable key safety** - mobile project keys are masked by default and are returned only when `--include-publishable-key` is explicitly supplied
45
+ - **Safe mobile breadcrumbs** - generated follow-up commands fall back to resolved project IDs when a typed project reference contains shell-active characters
46
+ - **Agent skill coverage** - the packaged skill now detects mobile frameworks, performs CLI-backed setup, protects private CLI/API credentials, and verifies SDK heartbeats
47
+ - **Reply-channel guidance** - feedback details distinguish native in-app replies from website-widget replies so agents choose the correct delivery method
48
+
49
+ ---
50
+
51
+ ## [0.10.0] - 2026-07-10
52
+
53
+ ### Added
54
+
55
+ - **Waitlist capture mode** - `widget settings --capture-mode waitlist|feedback` switches the installed project script between waitlist and feedback capture
56
+ - **Waitlist management** - `waitlist list` supports search and pagination, while `waitlist export` provides the dashboard CSV from the terminal
57
+ - **Widget security settings** - configure automatic error tracking and visitor-approved console error sharing from the CLI
58
+
59
+ ### Changed
60
+
61
+ - **Inline widget trigger safety** - docs and packaged skill now explicitly tell agents to use `openFeedbackForm()` instead of internal widget methods such as `open()` or `openModal()`
62
+ - **Waitlist integration guidance** - `widget script`, README, and the packaged skill explain how to annotate existing forms for waitlist capture
63
+ - **Native HTTP client** - removed Axios and its transitive dependency tree in favor of Node's built-in `fetch`
64
+
65
+ ---
66
+
67
+ ## [0.9.3] - 2026-06-19
68
+
69
+ ### Changed
70
+
71
+ - **Agent issue filing guidance** - the packaged skill now explains how agents should file discovered issues into the right FeedbackBasket project with short descriptions and structured metadata
72
+
73
+ ---
74
+
75
+ ## [0.9.2] - 2026-06-12
76
+
77
+ ### Changed
78
+
79
+ - **Project URL safety** - `projects create` and `projects update --url` now require explicit confirmation before saving localhost URLs, and agent mode requires `--allow-local-url`
80
+ - **Packaged skill docs** - agents now ask for the real website URL instead of using localhost, and keep basic modal feedback as the default unless guided feedback is requested
81
+ - **Widget project selection** - agents now resolve the FeedbackBasket project for the current app instead of relying on the CLI default project when installing widgets
82
+ - **Widget guidance** - README, help text, and breadcrumbs no longer nudge users to enable guided feedback by default
83
+
84
+ ---
85
+
86
+ ## [0.9.1] - 2026-06-12
87
+
88
+ ### Changed
89
+
90
+ - **Inline widget trigger guidance** - `widget script` now shows custom button examples for inline widgets, including trigger-aware popup anchoring
91
+ - **Packaged skill docs** - agents now use `openFeedbackForm({ trigger: event.currentTarget })` when installing custom inline trigger buttons
92
+
93
+ ---
94
+
95
+ ## [0.9.0] - 2026-06-11
96
+
97
+ ### Added
98
+
99
+ - **Widget reply delivery** - `feedback reply` now supports `--delivery email|widget|both` so agents can reply in the widget thread, by email, or both
100
+ - **Widget thread visibility** - `feedback show` now includes whether feedback has an active widget thread
101
+
102
+ ### Changed
103
+
104
+ - **Agent reply safety guidance** - the packaged skill now requires agents to verify reply delivery method before responding
105
+
106
+ ---
107
+
108
+ ## [0.8.0] - 2026-06-11
109
+
110
+ ### Added
111
+
112
+ - **`feedbackbasket feedback create`** - create feedback from the terminal with project, type, category, status, email, page URL, metadata, and agent JSON output support
113
+
114
+ ### Changed
115
+
116
+ - **Agent reply safety guidance** - the packaged skill now tells agents to ask for a reply-to email before sending email replies when no project default is configured, and to use widget/dashboard replies for widget-only feedback
117
+
118
+ ---
119
+
120
+ ## [0.7.0] - 2026-06-10
121
+
122
+ ### Added
123
+
124
+ - **Prefilled email widget settings** - `widget settings` can now configure read-only prefilled emails and hide the email field only when a runtime email is provided
125
+ - **Feedback metadata output** - `feedback show` displays submitted widget metadata when available, and agent JSON output includes the metadata payload returned by the API
126
+
127
+ ---
128
+
129
+ ## [0.6.1] - 2026-06-08
130
+
131
+ ### Fixed
132
+
133
+ - **Attachment links in feedback output** — `feedback show` now displays submitted screenshot/image URLs, and feedback/bug JSON responses include attachment metadata for agents
134
+
135
+ ---
136
+
137
+ ## [0.6.0] - 2026-06-07
138
+
139
+ ### Added
140
+
141
+ - **`feedbackbasket widget flow`** — view, enable, reset, or apply JSON configs for guided feedback types and follow-up questions
142
+ - **Expanded widget settings flags** — configure button size, radius, icon, email visibility, attachments, branding, z-index, and guided mode from the CLI
143
+ - **Submitted details in feedback output** — `feedback show` now displays visitor-selected feedback type and follow-up answers
144
+
145
+ ### Changed
146
+
147
+ - **Agent skill docs** — updated widget setup guidance so agents can customize guided feedback flows during installation
148
+
149
+ ---
150
+
151
+ ## [0.5.0] - 2026-05-10
152
+
153
+ ### Added
154
+
155
+ - **`feedbackbasket login --manual`** — authenticate remote servers by approving in a browser and pasting the generated CLI token back into the terminal
156
+
157
+ ### Changed
158
+
159
+ - **Clearer manual-login guidance** — `--manual` is documented as the flow for servers that cannot receive the localhost browser callback, while still requiring outbound HTTPS
160
+ - **CLI token validation** — login now rejects MCP API keys (`fb_key_...`) with a clear hint because CLI login requires `fb_cli_...` tokens
161
+
162
+ ---
163
+
164
+ ## [0.4.0] - 2026-04-15
165
+
166
+ ### Added
167
+
168
+ - **`feedback reply <id> "<content>"`** — send an email reply directly to the feedback submitter. The customer receives a branded email with your reply and the original feedback, and their response goes to the configured reply-to address
169
+ - **`feedback replies <id>`** — list all replies sent for a feedback item (content, reply-to, who sent it, timestamp)
170
+ - **`--reply-to <email>` on `feedback reply`** — override the project's default reply-to for a single reply
171
+ - **`--reply-to <email>` on `projects update`** — set or clear the default reply-to email for a project (e.g. `projects update myapp --reply-to vlad@example.com`)
172
+ - **Interactive reply-to prompt** — when sending a reply with no `--reply-to` and no project default, the CLI asks the human whether to use their account email or enter a custom one (agent mode returns a clear error asking the agent to pass `--reply-to` or set a project default)
173
+ - **`replyToEmail` in project detail** — `projects show` now displays the configured reply-to address
174
+
175
+ ### API Endpoints
176
+
177
+ - `POST /api/v1/feedback/:id/replies` — send reply (requires `full` scope)
178
+ - `GET /api/v1/feedback/:id/replies` — list replies
179
+ - `PATCH /api/v1/projects/:id` — now accepts `replyToEmail` in the body
180
+
181
+ ---
182
+
183
+ ## [0.3.5] - 2026-03-27
184
+
185
+ ### Fixed
186
+
187
+ - **Name resolution for `--project` flag**: `feedback list --project prontoshoot` and `bugs list --project prontoshoot` now resolve names to IDs — previously returned empty results when using names
188
+
189
+ ### Changed
190
+
191
+ - **Project name in list output**: Bug list and feedback list now show the project name (in green) instead of just the ID — much easier to scan across projects
192
+
193
+ ---
194
+
195
+ ## [0.3.3] - 2026-03-27
196
+
197
+ ### Added
198
+
199
+ - **`--all` flag**: `feedback list --all` and `bugs list --all` to query across all projects, bypassing the default project filter
200
+
201
+ ---
202
+
203
+ ## [0.3.2] - 2026-03-27
204
+
205
+ ### Changed
206
+
207
+ - **Custom help output**: Basecamp-style grouped sections (CORE COMMANDS, SHORTCUTS, SEARCH & EXPORT, AUTH & CONFIG, FLAGS, EXAMPLES, LEARN MORE)
208
+ - **Short flags**: `-j` for `--json`, `-q` for `--quiet`, `-m` for `--md`
209
+ - **Branded header**: "FeedbackBasket CLI v0.3.2" with logo in help output
210
+
211
+ ---
212
+
213
+ ## [0.3.1] - 2026-03-27
214
+
215
+ ### Fixed
216
+
217
+ - **Login redirect flow**: Users who aren't logged in are now seamlessly redirected back to the CLI authorize page after login — no more needing to click the link twice
218
+
219
+ ### Added
220
+
221
+ - **Skills repo**: Standalone [feedbackbasket-skills](https://github.com/deifos/feedbackbasket-skills) repo with install.md and enhanced SKILL.md
222
+ - **CLI docs page**: New `/docs/cli` page on feedbackbasket.com with full command reference and terminal demo
223
+ - **Landing page updates**: CLI feature card, dark terminal mockup, "Agent-Ready CLI" positioning
224
+ - **Published to npm**: `npm install -g feedbackbasket-cli` now available
225
+
226
+ ---
227
+
228
+ ## [0.3.0] - 2026-03-26
229
+
230
+ ### Added
231
+
232
+ - **Feedback delete**: `feedback delete <id>` — permanently remove feedback items with confirmation prompt
233
+ - **Bulk status update**: `feedback bulk-update --status CLOSED --ids id1,id2,id3` — update multiple items at once
234
+ - **Feedback export**: `feedback export [project] --format csv|md|json` — export all feedback to CSV, Markdown, or JSON
235
+ - **Widget management**: `widget settings [project]` — view and update widget configuration (color, label, position, messages, etc.)
236
+ - **Widget embed code**: `widget script [project]` — get the embed script tag ready to paste into HTML
237
+ - **Team management**: `team list`, `team role <id> --role admin`, `team remove <id>` — manage organization members
238
+ - **Note edit/delete**: API support for editing and deleting feedback notes (via PATCH/DELETE endpoints)
239
+
240
+ ### Changed
241
+
242
+ - **Feedback commands expanded**: `feedback` now has 8 subcommands (list, show, search, update, note, delete, bulk-update, export)
243
+
244
+ ---
245
+
246
+ ## [0.2.0] - 2026-03-26
247
+
248
+ ### Added
249
+
250
+ - **Project CRUD**: `projects create`, `projects show`, `projects update`, `projects delete` — full project management from the CLI
251
+ - **Name resolution**: All project commands accept name or ID (e.g. `projects show feedbackbasket` instead of passing a cuid)
252
+ - **Fuzzy matching**: Typo suggestions ("Did you mean: feedbackbasket?") and ambiguity detection when multiple projects match
253
+ - **Top-level aliases**: `feedbackbasket login` and `feedbackbasket logout` (no need to type `auth login`)
254
+ - **Project alias**: `feedbackbasket project` works as alias for `feedbackbasket projects`
255
+ - **Onboarding wizard**: Multi-step first-login flow — authenticate, select default project, install Claude Code skill
256
+ - **Default project**: Set during onboarding or via config — auto-applied to `feedback list`, `bugs list`, etc. (override with `--project`)
257
+
258
+ ### Changed
259
+
260
+ - **Full access by default**: Auth login now defaults to `--scope full` (like Basecamp), no more read-only by default
261
+ - **Brand colors**: All terminal output uses FeedbackBasket green (#22c55e) accent instead of generic cyan
262
+ - **Centralized theme**: New `src/output/theme.ts` with brand colors, semantic helpers, and logo renderer
263
+ - **Doctor command**: Now shows branded "FeedbackBasket CLI Diagnostics" header with logo
264
+ - **Login flow**: Shows branded "FeedbackBasket CLI" header with green URL during browser auth
265
+ - **Better error messages**: Auth and project fetch errors now show the actual error message instead of silent failures
266
+ - **Delete confirmation**: `projects delete` prompts for confirmation in interactive mode (skipped with `--yes` or `--agent`)
267
+
268
+ ---
269
+
270
+ ## [0.1.0] - 2026-03-25
271
+
272
+ ### Added
273
+
274
+ - Initial release of the FeedbackBasket CLI
275
+ - **Authentication**: Browser-based OAuth flow (`auth login`) and manual token input (`auth login --token`)
276
+ - **Auth management**: `auth status`, `auth logout`, `auth token` commands
277
+ - **Projects**: `projects list` — view all accessible projects with feedback stats
278
+ - **Feedback**: `feedback list` with filtering (--project, --category, --status, --sentiment, --search, --limit, --offset, --notes)
279
+ - **Feedback detail**: `feedback show <id>` — view single feedback item with full details
280
+ - **Feedback search**: `feedback search <query>` — cross-project text search
281
+ - **Feedback write**: `feedback update <id>` — update status, category, sentiment (requires full scope)
282
+ - **Feedback notes**: `feedback note <id> "<content>"` — add internal notes (requires full scope)
283
+ - **Bug reports**: `bugs list` with severity/status filtering, `bugs stats` for summary
284
+ - **Diagnostics**: `doctor` command — health checks for auth, connectivity, and integrations
285
+ - **Agent integration**: `setup claude` — install SKILL.md for Claude Code
286
+ - **Output modes**: Auto-detect (styled TTY / JSON piped), `--json` (envelope with breadcrumbs), `--quiet`/`--agent` (raw data), `--md` (Markdown)
287
+ - **JSON envelope**: Basecamp-inspired `{ ok, data, summary, breadcrumbs }` response format
288
+ - **Structured errors**: Error codes, exit codes, and recovery hints
289
+ - **Credential storage**: `~/.config/feedbackbasket/credentials.json` with `FEEDBACKBASKET_TOKEN` env var support