Skip to content

docs(action-items): add bookmark insights action plan#26

Closed
trevoraspencer wants to merge 24 commits intoalexknowshtml:mainfrom
trevoraspencer:docs/action-items
Closed

docs(action-items): add bookmark insights action plan#26
trevoraspencer wants to merge 24 commits intoalexknowshtml:mainfrom
trevoraspencer:docs/action-items

Conversation

@trevoraspencer
Copy link

Adds ACTION_ITEMS.md with 8 prioritized action items derived from the unified bookmarks insights analysis (~390+ bookmarks).

Key actions for this repo:

  • P0: Smart fork detection via session RAG, Now/Next/Later triage backlog system, self-improving error tracking scratch pad
  • P1: NotebookLLM-style expert AI workflow, cross-file pattern discovery, scheduled triage ritual automation
  • P2: Agent-readable docs update, fork workflow improvement with conflict detection

Each item includes: affected files, implementation details, code patterns, and acceptance criteria.

Source: BOOKMARKS_INSIGHTS_FINAL.md (Feb 8, 2026)

theirongolddev and others added 24 commits January 27, 2026 15:13
The process-bookmarks command was ambiguous about which tool to use
when modifying bookmarks.md. Using the Write tool (which replaces the
entire file) instead of the Edit tool (which preserves existing content)
caused catastrophic data loss.

This was observed in multiple commits where 50-150 historical bookmark
entries were lost because Claude used Write instead of Edit during
the merge step.

Changes:
- Add prominent warning section about Edit vs Write at top of file
- Update "Write bookmark entry" section header to "Add bookmark entry (USE EDIT TOOL)"
- Add explicit Edit tool requirement to Phase 2 merge instructions
- Add "Use Write tool" to both DO NOT sections

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
- Add Windows-specific paths for claude.cmd and claude.exe
- Use 'where' instead of 'which' on Windows
- Use correct PATH separator (semicolon vs colon)
- Enable shell mode for spawn on Windows to resolve .cmd files

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
When count > 50, smaug switches to paginated mode but was ignoring the
count entirely and just using maxPages. Now:

1. Calculate maxPages from count (assuming ~20 bookmarks per page)
2. Truncate results to exactly the requested count

This ensures `smaug fetch 100` returns exactly 100 bookmarks, not
however many fit in 10 pages.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Extract findClaude() and getPathSeparator() as testable exports
- Add tests for Windows path detection (claude.cmd, where vs which)
- Add tests for PATH separator selection (semicolon vs colon)
- Add tests for count truncation in paginated fetches
- Add integration tests for X article fetching (skipped without credentials)

66 tests total, all passing.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Adds support for OpenCode as an alternative AI CLI alongside Claude Code.

- New `cliTool` config option: `claude` (default) or `opencode`
- Refactors `invokeClaudeCode` into unified `invokeAICLI` with `getCLISettings` factory
- Extracts display constants and helpers to module level (no behavior change)
- All existing Claude Code behavior preserved when `cliTool` is `claude`

Co-authored-by: ElderOrb
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Highlights OpenCode support near the top with a disclaimer that
results may vary by model — test carefully.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add validators.js with comprehensive input validation
- Fix command injection in processor.js (folderId, count, tweetId, birdPath)
- Fix command injection in job.js (zaiBin)
- Fix TOCTOU race condition in lock file acquisition
- Use cryptographically secure temp file names
- Extract magic numbers to named constants (TIMEOUTS, LIMITS)
- Add comprehensive test coverage for validators

Co-authored-by: trevoraspencer <258687189+trevoraspencer@users.noreply.github.com>
Co-authored-by: trevoraspencer <258687189+trevoraspencer@users.noreply.github.com>
Security: Fix command injection, race conditions, and implement input validation
feat: hard-switch automation to Bun + Z.ai
@trevoraspencer trevoraspencer closed this by deleting the head repository Feb 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants