Commit Graph

1098 Commits

Author SHA1 Message Date
Dave Smith 3391d071a4 Add SSH remote support with fixed port (#5)
* Add SSH remote session support with fixed port

- Auto-detect SSH sessions via SSH_TTY/SSH_CONNECTION env vars
- Use fixed port 19432 over SSH for predictable port forwarding
- Add PLANNOTATOR_PORT env var for custom port configuration
- Add retry loop (5 attempts) for port conflicts
- Print SSH config hint when running remotely
- Skip browser auto-open in SSH sessions

* integration test for ssh

---------

Co-authored-by: Michael Ramos <mdramos8@gmail.com>
2025-12-31 10:00:03 -08:00
Michael Ramos c61cbc3942 cleaner readme 2025-12-30 21:30:56 -08:00
Michael Ramos 9ff64aafc6 Remove bundled HTML from git tracking
Build artifact now generated at publish time via prepublishOnly script.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-30 21:30:13 -08:00
Michael Ramos 17ebb50b79 opencode plugin (#3)
* opencode plugin

* opencode plugin

* marketing copy updates

* opencode plugin marketing

* readme for open code

* readme enhancement;
2025-12-30 21:25:46 -08:00
Michael Ramos c86671aead Bump version to 0.2.0
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-29 22:07:37 -08:00
Michael Ramos 3b88fdc25a Clean up duplicate log and fix indentation in server
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-29 22:05:21 -08:00
Michael Ramos f7aa683b00 Merge pull request #1 from chocomilk4759/main
Add cross-platform browser support (Windows/Linux)
2025-12-29 22:02:36 -08:00
ChocoMilk#4759 4b184a7ca2 Merge pull request #1 from chocomilk4759/chocomilk4759-patch-1
Add cross-platform browser support (Windows/Linux)
2025-12-30 14:44:09 +09:00
ChocoMilk#4759 37a274ccab Add cross-platform browser support (Windows/Linux)
- Windows: use `cmd /c start`
- Linux: use `xdg-open`
- macOS: keep existing `open`
2025-12-30 14:41:22 +09:00
Michael Ramos 43951bcd92 Add restart reminder inside plugin install code block
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 17:59:25 -08:00
Michael Ramos 7714c309b3 Use custom YouTube thumbnail in README
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
v0.1.0
2025-12-28 17:51:10 -08:00
Michael Ramos 8fcd0ef878 Update YouTube video links to actual demo video
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 17:47:43 -08:00
Michael Ramos 0c052aa158 Add restart note to plugin installation instructions
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 17:43:29 -08:00
Michael Ramos bc193cf924 Add update notification banner
- Inject version at build time via Vite define
- Add useUpdateCheck hook to fetch latest release from GitHub API
- Add UpdateBanner component with copy install command button
- Shows when newer version is available

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 17:42:08 -08:00
Michael Ramos 748d4e4ae3 Fix share URL to always use share.plannotator.ai
Share links were using localhost when running from the hook,
making them unusable for actual sharing.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 17:04:56 -08:00
Michael Ramos f62ec06686 Fix annotation restoration breaking DOM structure
- Use multi-mark approach instead of destructive extractContents()
- Walk text nodes individually and wrap each with its own <mark>
- Update removeHighlight to handle multiple marks per annotation
- Fixes code blocks splitting and list items showing 1px ticks

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 17:03:43 -08:00
Michael Ramos 889569a562 Add markdown table parsing and rendering
- Add 'table' type to Block union
- Detect and collect table lines in parser
- Render tables with proper HTML structure and styling

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 16:59:29 -08:00
Michael Ramos 804f5c603c Update install scripts with test command and plugin instructions
- Remove incorrect --help reference
- Add test command to verify installation
- Add Claude Code plugin installation instructions
- Update all platforms (bash, PowerShell, CMD)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 16:16:30 -08:00
Michael Ramos e471c54eca Add image type declarations, update Landing YouTube button
- Add types.d.ts for .webp imports in components directory
- Remove overcomplicated assets.d.ts approach
- Update YouTube button styling

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 16:03:30 -08:00
Michael Ramos e3367936d5 Add TypeScript declarations for image assets
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 15:55:33 -08:00
Michael Ramos 06e83d1b32 Tone down YouTube button red
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 15:48:01 -08:00
Michael Ramos 1639d9b864 minimal copy edits 2025-12-28 15:46:04 -08:00
Michael Ramos 5eeec5164c minimal copy edits 2025-12-28 15:45:02 -08:00
Michael Ramos fede9ce837 remove development docs 2025-12-28 15:42:44 -08:00
Michael Ramos 6fde96eda5 remove legacy reference 2025-12-28 15:40:46 -08:00
Michael Ramos 049e45a8a0 Add YouTube 'See it in action' button to landing hero
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 15:39:52 -08:00
Michael Ramos ba25958fdb Update hook README install description
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 15:38:05 -08:00
Michael Ramos 984ba4109a Consolidate banner image to apps/marketing/public
README now uses og-image.webp from marketing public folder,
removing duplicate plannotator_banner.webp from repo root.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 15:37:12 -08:00
Michael Ramos f7f04d9fd2 Fix: use cross-compilation for all targets from single runner
Bun supports cross-compilation, so we build all 4 targets
(darwin-arm64, darwin-x64, linux-x64, win32-x64) from a single
Ubuntu runner. This avoids the retired macos-13 runner issue.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 15:33:36 -08:00
Michael Ramos 44abf97ade Fix: embed HTML at compile time for binary distribution
The server was reading dist/index.html from filesystem at runtime,
which fails in compiled standalone binaries. Changed to use Bun's
import attributes to embed the HTML at compile time.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 15:28:58 -08:00
Michael Ramos 4138dc0355 Remove development section from hook README 2025-12-28 15:23:28 -08:00
Michael Ramos ccf8e7ec7c Add TOC to hook README 2025-12-28 15:22:12 -08:00
Michael Ramos da01f9de90 Fix: version consistency to 0.1.0 2025-12-28 15:20:44 -08:00
Michael Ramos 4797daf1e3 Add video placeholder to README 2025-12-28 15:18:21 -08:00
Michael Ramos 518e77c0da Update README description 2025-12-28 15:02:42 -08:00
Michael Ramos 04475efe6d Add banner image to README 2025-12-28 15:01:24 -08:00
Michael Ramos 7d2a567f00 Add Open Graph and SEO meta tags with banner image 2025-12-28 15:00:37 -08:00
Michael Ramos 3e22c570b4 Update documentation for install script distribution 2025-12-28 14:50:39 -08:00
Michael Ramos 0afcf6acae Fix: add tailwindcss to editor package dependencies 2025-12-28 14:47:17 -08:00
Michael Ramos 042403a6a8 Switch to install script distribution, add CI/CD
- Remove npm package distribution
- Add install.sh/ps1/cmd scripts for binary installation
- Update release workflow for GitHub Releases
- Add deploy workflow for marketing + portal sites
- Remove Landing from editor (now editor-only)
- Update Landing: GitHub/Install links, Open Demo button

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-28 14:44:54 -08:00
Michael Ramos 6c4bb89cde Add npm distribution infrastructure and update landing page
npm distribution:
- Add npm/ directory with main package and platform-specific packages
- Add JS wrapper for cross-platform binary resolution
- Add GitHub Actions workflow for OIDC-based npm publishing
- Configure for darwin-arm64, darwin-x64, linux-x64, win32-x64

Plugin changes:
- Simplify apps/hook to config-only (calls `plannotator` from PATH)
- Add README with installation instructions

UI updates:
- Add theme toggle to Landing nav
- Update footer with author links and copyright
- Update copy: "How it works" step 3, Solution section
- Flip hero image horizontally
- Fix tater sprite z-index (behind dialogs)
- Change tater breakpoint from lg to md (show on tablets)
- Remove icon from editor header

Package metadata:
- Update root and npm package.json with full metadata
- Set version to 0.1.0
- Set license to BSL-1.1

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 13:28:51 -08:00
Michael Ramos d1a2f17626 refine claude.md 2025-12-28 10:03:43 -08:00
Michael Ramos fe8713b3c1 30min timeout for hook 2025-12-28 09:57:18 -08:00
Michael Ramos 6d07883c8d Remove obsolete install.sh (replaced by plugin system)
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 09:56:19 -08:00
Michael Ramos 4e654f369d Add Claude Code plugin structure for marketplace distribution
- Rename apps/hooks → apps/hook (singular)
- Add .claude-plugin/plugin.json manifest
- Add hooks/hooks.json for PermissionRequest hook
- Add root .claude-plugin/marketplace.json for install via:
  /plugin marketplace add backnotprop/plannotator
- Refactor server to read stdin directly (removes bash/jq dependency)
- Delete shell wrapper script

Plugin tested successfully with: claude --plugin-dir ./apps/hook

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 09:54:48 -08:00
Michael Ramos 34297b5c55 Restructure to Bun monorepo with apps and packages
- apps/hooks: Claude Code hook integration (ExitPlanMode)
- apps/portal: Standalone web portal (future)
- apps/marketing: Landing page (future)
- packages/ui: Shared React components and utilities

Key improvements:
- Cookie-based settings persistence (works across random ports)
- Bundled highlight.js with per-block language detection
- Inline markdown rendering (bold, italic, code, links)
- Fixed sprite z-index layering

Legacy code preserved in legacy/ for reference.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 21:24:05 -08:00
Michael Ramos 92fd9128f3 Add tater sprites and update docs
- Restore sprite packages (pullup, sitting, running)
- Update CLAUDE.md with sharing architecture docs

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 18:29:15 -08:00
Michael Ramos 92d4f73b66 Initial commit: Plannotator - Plan review UI for Claude Code
A React-based annotation tool that intercepts Claude Code's ExitPlanMode
to provide visual plan review with collaborative features.

Features:
- Markdown plan rendering with syntax highlighting
- Text selection annotations (delete, replace, insert, comment)
- Redline mode for quick deletion marking
- URL-based sharing via compressed hash (no server storage)
- Tater identity system for anonymous collaboration
- Export to diff format
- Dark/light theme support
- Tater sprite easter egg

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 18:14:10 -08:00