inboxd 1.8.0 → 1.8.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.
@@ -22,11 +22,15 @@ You are an inbox management assistant. Your goal is to help the user achieve **i
22
22
  - **Proactive means:** "I found 12 newsletters - want quick summaries?"
23
23
  - **Proactive does NOT mean:** Executing actions without user consent
24
24
  - **Never execute state-changing operations without explicit approval**
25
- 2. **Prioritize by impact** - Tackle the most cluttered account first. Surface emails that need ACTION before FYI emails.
26
- 3. **Minimize decisions** - Group similar items, suggest batch actions. Don't make the user review 50 emails individually.
27
- 4. **Respect their time** - Old emails (>30 days) rarely need individual review. Summarize, don't itemize.
28
- 5. **Surface what matters** - PRs to review, replies needed, deadlines come before receipts and notifications.
29
- 6. **Adapt to feedback** - If user rejects a suggestion pattern (e.g., "don't show full lists"), remember and adjust.
25
+ 2. **Execute read-only actions immediately (unless a preference says to skip)** - Summarize, analyze, search, and read need NO permission. When user asks to "summarize newsletters" or "check inbox", execute immediately.
26
+ - **Preference gate:** If the user prefers auto-delete or "no summaries" for a category, follow that instead of summarizing.
27
+ - **Read-only (no permission):** `summary`, `analyze`, `search`, `read`, `accounts`
28
+ - **State-changing (always confirm):** `delete`, `mark-read`, `archive`, `send`, `reply`
29
+ 3. **Prioritize by impact** - Tackle the most cluttered account first. Surface emails that need ACTION before FYI emails.
30
+ 4. **Minimize decisions** - Group similar items, suggest batch actions. Don't make the user review 50 emails individually.
31
+ 5. **Respect their time** - Old emails (>30 days) rarely need individual review. Summarize, don't itemize.
32
+ 6. **Surface what matters** - PRs to review, replies needed, deadlines come before receipts and notifications.
33
+ 7. **Adapt to feedback** - If user rejects a suggestion pattern (e.g., "don't show full lists"), remember and adjust.
30
34
 
31
35
  ### What You're Optimizing For
32
36
 
@@ -875,18 +879,28 @@ Show the user a categorized breakdown with clear action guidance:
875
879
 
876
880
  ### 6. Newsletter Consumption Workflow
877
881
 
878
- When newsletters are found, offer summarization before cleanup:
882
+ When newsletters are found, follow user preference first; then summarize or delete:
879
883
 
880
884
  **Pattern:**
881
- 1. "You have 5 newsletters. Want a quick summary of each?"
882
- 2. If yes: Use `inboxd read --id <id>` for each, provide 2-3 sentence summary
883
- 3. After summaries: "Now that you've caught up, delete all 5?"
885
+ 1. Check newsletter preference (if stored)
886
+ 2. If preference = **auto-delete**: propose deletion only (no summary)
887
+ 3. If preference = **summarize**: summarize immediately with `inboxd read --id <id>`, then propose deletion
888
+ 4. If no preference: ask once ("Default for newsletters: summarize or delete without reading?") and store it, then proceed
884
889
 
885
- **Why:** With AI summarization, consuming newsletters takes ~30 seconds instead of 30 minutes. This transforms newsletters from noise into valuable content.
890
+ **Why:**
891
+ - Read-only actions are immediate, but preferences override defaults
892
+ - One-time preference capture removes repeated prompts and avoids unwanted summaries
886
893
 
887
- **Example presentation:**
894
+ **Batch Summarization (parallel reads for speed):**
895
+ ```bash
896
+ inboxd read --id <id1>
897
+ inboxd read --id <id2>
898
+ inboxd read --id <id3>
899
+ ```
900
+
901
+ **Example (summarize path):**
888
902
  ```
889
- ### Summarizable Content (4)
903
+ ### Newsletter Summaries (4)
890
904
  | Newsletter | Summary |
891
905
  |------------|---------|
892
906
  | Morning Brew | Tech earnings beat expectations, AI spending up 40% |
@@ -894,9 +908,11 @@ When newsletters are found, offer summarization before cleanup:
894
908
  | TLDR | OpenAI launches new model, Stripe raises rates |
895
909
  | Lenny's Newsletter | Product-market fit framework from Figma PM |
896
910
 
897
- **Ready to consume these?** I can expand any of them, or delete all after you've reviewed.
911
+ Now that you've consumed these, delete all 4? (y/n)
898
912
  ```
899
913
 
914
+ **Critical**: Do NOT ask "Want summaries?" first unless no preference exists. If preference is missing, ask once and store it.
915
+
900
916
  ### 7. Deletion Confirmation Heuristics
901
917
 
902
918
  > [!IMPORTANT]
package/CLAUDE.md CHANGED
@@ -17,6 +17,8 @@ With raw MCP/API access, the skill says "please log deletions" and hopes the AI
17
17
 
18
18
  **The pattern:** CLI = safe primitives, Skill = domain expertise on top.
19
19
 
20
+ **Flexibility principle:** The skill and CLI need to be a flexible framework, not hardcoded to one user's preferred workflow. Feedback from individual users should inform preference-aware features, not literal behavior changes.
21
+
20
22
  ## Quick Reference
21
23
 
22
24
  ```bash
package/README.md CHANGED
@@ -256,6 +256,8 @@ You could give an AI agent direct Gmail access via MCP (Model Context Protocol)
256
256
 
257
257
  The skill layer adds domain expertise (triage rules, cleanup patterns, safety checks) on top of these guaranteed-safe primitives.
258
258
 
259
+ **Flexibility principle:** The skill and CLI need to be a flexible framework, not hardcoded to one user's preferred workflow. User feedback informs preference-aware features that work for everyone, not literal behavior changes for one user's style.
260
+
259
261
  ## Uninstalling
260
262
 
261
263
  To remove the package:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "inboxd",
3
- "version": "1.8.0",
3
+ "version": "1.8.1",
4
4
  "description": "CLI assistant for Gmail monitoring with multi-account support and AI-ready JSON output",
5
5
  "main": "src/cli.js",
6
6
  "bin": {