instruckt 0.4.9 → 0.4.15

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
@@ -1,6 +1,6 @@
1
1
  # instruckt
2
2
 
3
- Visual feedback tool for AI coding agents. Click on any element in your app, leave a note, and copy structured markdown to paste into your AI agent — no screenshots needed.
3
+ Visual feedback tool for AI coding agents. Click on any element in your app, leave a note, capture screenshots, and copy structured markdown to paste into your AI agent.
4
4
 
5
5
  Framework-agnostic JS core with adapters for Livewire, Vue, Svelte, and React.
6
6
 
@@ -40,7 +40,7 @@ Or with the IIFE build:
40
40
  1. A floating toolbar appears in your app
41
41
  2. Press **A** or click the annotate button to enter annotation mode
42
42
  3. Hover over any element — instruckt highlights it and detects its framework component
43
- 4. Click to annotate — type your feedback and save
43
+ 4. Click to annotate — type your feedback, optionally capture a screenshot, and save
44
44
  5. Annotations auto-copy as structured markdown to your clipboard (requires secure context — `https://` or `localhost`)
45
45
  6. Paste into any AI coding agent (Claude Code, Cursor, Codex, Copilot, OpenCode, etc.)
46
46
  7. The agent reads the markdown and makes the requested code changes
@@ -56,6 +56,7 @@ Or with the IIFE build:
56
56
  - Element: `button.btn-primary` in `pages::auth.login`
57
57
  - Classes: `btn btn-primary`
58
58
  - Text: "Submit Login"
59
+ - Screenshot: `storage/app/_instruckt/screenshots/01JWXYZ.png`
59
60
 
60
61
  ## 2. Make the login card have rounded corners
61
62
  - Element: `div.bg-white` in `pages::auth.login`
@@ -78,6 +79,21 @@ new Instruckt({
78
79
  // Toolbar position (default: 'bottom-right')
79
80
  position: 'bottom-right',
80
81
 
82
+ // Customize marker pin colors
83
+ colors: {
84
+ default: '#6366f1', // indigo — standard annotations
85
+ screenshot: '#22c55e', // green — annotations with screenshots
86
+ dismissed: '#71717a', // gray — dismissed annotations
87
+ },
88
+
89
+ // Customize keyboard shortcuts
90
+ keys: {
91
+ annotate: 'a', // toggle annotation mode
92
+ freeze: 'f', // freeze page
93
+ screenshot: 'c', // region screenshot capture
94
+ clearPage: 'x', // clear annotations on this page
95
+ },
96
+
81
97
  // Callbacks
82
98
  onAnnotationAdd: (annotation) => {},
83
99
  })
@@ -85,16 +101,20 @@ new Instruckt({
85
101
 
86
102
  ## Keyboard Shortcuts
87
103
 
104
+ Default shortcuts (customizable via `keys` config):
105
+
88
106
  | Key | Action |
89
107
  |-----|--------|
90
108
  | `A` | Toggle annotation mode |
91
109
  | `F` | Freeze page (pause animations, block navigation) |
110
+ | `C` | Screenshot region capture |
92
111
  | `X` | Clear all annotations on this page |
93
112
  | `Esc` | Exit annotation/freeze mode |
94
113
 
95
114
  ## Features
96
115
 
97
116
  - **Framework detection** — automatically identifies Livewire, Vue, Svelte, and React components
117
+ - **Screenshots** — capture element or region screenshots attached to annotations
98
118
  - **Shadow DOM isolation** — all UI renders in shadow roots so it never conflicts with your styles
99
119
  - **Copy as markdown** — annotations auto-copy as structured markdown optimized for AI agents
100
120
  - **Freeze mode** — pause animations, freeze popovers/dropdowns, and block all navigation
@@ -102,7 +122,7 @@ new Instruckt({
102
122
  - **Minimize** — collapse to a small floating button with annotation count badge
103
123
  - **Page-scoped markers** — annotation pins reposition on scroll/resize and only appear on the page where they were created
104
124
  - **Clear controls** — clear current page (`X` key or trash icon), or clear all pages via flyout
105
- - **SPA navigation** — survives `wire:navigate`, Vue Router, React Router, and browser back/forward
125
+ - **SPA navigation** — survives `wire:navigate`, Inertia, Vue Router, React Router, and browser back/forward
106
126
 
107
127
  ## Public API
108
128