{"id":"quote","repo":"keefeere/paseo-quote","url":"https://github.com/keefeere/paseo-quote","package":"paseo-quote","npm":{"package":"paseo-quote","version":"0.1.0","integrity":"sha512-KJxTwJtTqzcyazYunGO246y0xUZwLuypj8K3tVQ5ZJxuEzNwKzxhFdQ+PzSXO26dd6CHSk/wrKqDFm3tiQpUJw==","publishedAt":"2026-09-29T23:10:42.345Z","downloadsLast30Days":0},"name":"quote","description":"Quote selected chat text into the Paseo message box, reply to a passage, or ask about it in a side chat","categories":["productivity"],"platforms":[],"caveats":["Requires Paseo 0.10.1 or later","Works in the desktop and web apps only; iOS and Android cannot extend the text selection menu","Uses the Paseo app's chat markup because there is no message box API, so a later release may need an update","A side chat sees the quote and the last 8 turns of the main chat, not the whole conversation"],"images":[],"themes":[],"health":{"manifestValid":true,"hasReadme":true,"hasLicense":true,"hasTests":false,"hasTypecheckScript":true,"updatedRecently":true},"scannedAt":"2026-09-30T04:17:52.046Z","addedAt":"2026-09-30T07:13:28+03:00","npmSecurity":{"status":"passed","blockingFindings":0,"advisoryFindings":0,"scannedAt":"2026-09-30T04:17:24.381Z","version":"0.1.0","integrity":"sha512-KJxTwJtTqzcyazYunGO246y0xUZwLuypj8K3tVQ5ZJxuEzNwKzxhFdQ+PzSXO26dd6CHSk/wrKqDFm3tiQpUJw=="},"version":"0.1.0","security":{"status":"passed","blockingFindings":0,"advisoryFindings":0,"scannedAt":"2026-09-30T04:17:24.381Z","commit":"a66f5424033773bdafe66611fb710c3ec0ff4847"},"author":"Chechulin Serhii","license":"MIT","paseoVersionRequirement":">=0.10.1","descriptionNodes":[{"type":"text","text":"Quote selected chat text into the Paseo message box, reply to a passage, or ask about it in a side chat"}],"caveatNodes":[[{"type":"text","text":"Requires Paseo 0.10.1 or later"}],[{"type":"text","text":"Works in the desktop and web apps only; iOS and Android cannot extend the text selection menu"}],[{"type":"text","text":"Uses the Paseo app's chat markup because there is no message box API, so a later release may need an update"}],[{"type":"text","text":"A side chat sees the quote and the last 8 turns of the main chat, not the whole conversation"}]],"manifest":{"id":"quote","description":"Quote selected chat text into the message box, reply to a passage, or ask about it in a side chat","requirements":{"paseo":">=0.10.1"}},"repoMeta":{"stars":1,"defaultBranch":"main","pushedAt":"2026-09-29T14:52:10Z"},"owner":{"login":"keefeere","avatarUrl":"https://avatars.githubusercontent.com/u/78239416?v=4"},"installNotesHtml":"<p>Requires Paseo 0.10.1 or later. Enable plugins under <strong>Settings → Plugins</strong>, then:</p>\n<pre><code class=\"language-bash\">paseo plugin install npm:paseo-quote\n</code></pre>","limitationsNotesHtml":"<ul>\n<li>Desktop and web apps only. iOS and Android route selection through the system menu, which a\nplugin cannot extend.</li>\n<li>Paseo has no plugin API for the message box, so the plugin works with the app's markup. The\nselectors it relies on are listed at the top of <code>client/web.ts</code>; a later Paseo release may need\nan update.</li>\n<li>With <strong>Default send</strong> set to queue, a reply sent while the agent runs waits in the plugin, not in\nthe message box's queue, and is lost if the app reloads first.</li>\n<li>A side chat is a fresh session: Paseo cannot fork a conversation. It sees the quote, the\nmessage it came from, and the last 8 turns of the main chat.</li>\n<li>The side chat panel renders Markdown simply: code blocks and quotes, no emphasis. Open it as a\ntab for the full renderer.</li>\n</ul>","readmeText":"# Quote for Paseo\n\nReply to a piece of an agent's answer instead of the whole thing. Select text in a chat and a\nsmall bar appears above it:\n\n- **Quote** puts the selection into this chat's message box as a `> quote` and leaves the cursor\n  under it. Type your answer, select the next paragraph, quote again, and send everything as one\n  message. The quote always lands in the chat it came from, even with several tabs or split panes.\n- **Reply** opens a field right at the selection, like Claude's \"Reply\". **Enter** sends the quote\n  and your reply at once; **Ctrl/⌘+Enter** adds them to the message box instead. While the agent\n  is running, Enter follows **Settings → Default send** (interrupt, steer, or queue), as the\n  message box does.\n- **Side chat** asks about the passage in a separate agent next to the main chat, so the main\n  thread stays on track. It uses the same provider, model, mode, and thinking level, opens in the\n  right-hand panel, and takes follow-ups there. **Open as tab** turns it into a regular chat tab.\n  It is a subagent of the main chat and is archived with it.\n- **Copy** copies the selection as Markdown: lists, tables, emphasis, and code fences survive.\n\nQuotes of assistant messages keep their Markdown. Multi-line code becomes a fenced block rather\nthan a quote.\n\n## Install\n\nRequires Paseo 0.10.1 or later. Enable plugins under **Settings → Plugins**, then:\n\n```bash\npaseo plugin install npm:paseo-quote\n# or from GitHub\npaseo plugin install github:keefeere/paseo-quote\n```\n\nPlugins are trusted code. This one runs only in the app: it reads the chat you select from and\nwrites into its message box. It has no daemon-side code.\n\n## Keys\n\n| Where        | Key                  | Effect                                        |\n| ------------ | -------------------- | --------------------------------------------- |\n| Reply field  | Enter                | Send the quote and reply                      |\n| Reply field  | Ctrl/⌘+Enter         | Add the quote and reply to the message box    |\n| Side chat    | Enter                | Ask                                           |\n| Both         | Shift+Enter          | New line                                      |\n| Both         | Esc                  | Cancel                                        |\n\nDismiss the bar by clicking elsewhere. Esc in the chat itself is Paseo's \"interrupt agent\".\n\n## Limitations\n\n- Desktop and web apps only. iOS and Android route selection through the system menu, which a\n  plugin cannot extend.\n- Paseo has no plugin API for the message box, so the plugin works with the app's markup. The\n  selectors it relies on are listed at the top of `client/web.ts`; a later Paseo release may need\n  an update.\n- With **Default send** set to queue, a reply sent while the agent runs waits in the plugin, not in\n  the message box's queue, and is lost if the app reloads first.\n- A side chat is a fresh session: Paseo cannot fork a conversation. It sees the quote, the\n  message it came from, and the last 8 turns of the main chat.\n- The side chat panel renders Markdown simply: code blocks and quotes, no emphasis. Open it as a\n  tab for the full renderer.\n\n## Develop\n\n```bash\nnpm install\nnpm run typecheck\npaseo plugin install \"$PWD\"   # first time\npaseo plugin reload quote\n```\n\nOn the Linux AppImage, `paseo` treats an existing absolute directory argument as \"open project\".\nInstall from a local checkout with the parent-and-subpath form instead:\n`paseo plugin install \"$(dirname \"$PWD\"):$(basename \"$PWD\")\"`.\n\n## License\n\nMIT\n"}