lavish-axi 0.1.61 → 0.1.63
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 +1 -1
- package/dist/chrome-client.js +0 -1
- package/dist/cli.mjs +7 -2
- package/package.json +1 -1
- package/plugin.json +1 -1
package/README.md
CHANGED
|
@@ -201,7 +201,7 @@ pnpm link
|
|
|
201
201
|
The browser chrome keeps editing actions in the overflow menu (copy path, reload artifact, copy DOM snapshot, export standalone HTML, publish link, end session), while the composer exposes **Send & End** beside **Send to Agent** to submit queued prompts and user-ended attribution together.
|
|
202
202
|
- **Reviewing on a phone** - Below 860px wide, the artifact takes the whole screen above a **Conversation** dock, and the conversation opens as a bottom sheet over it: tap the dock, swipe it up, or press the chevron to raise it; tap the dimmed artifact, swipe the sheet down, press the chevron, or press Escape to lower it. The dock reports what matters while the sheet is down - how many prompts are queued, a reply that arrived while you were reading, or whether the agent is listening - and the sheet stays open across a reload of the review page. The sheet sizes itself to the visible viewport and respects safe-area insets; if the keyboard or attachments leave little room, conversation content yields or scrolls while the send actions remain pinned above the bottom edge. In landscape the sheet covers the top bar as well. Wider screens keep the side-by-side layout.
|
|
203
203
|
- **Keyboard shortcuts** - In the chrome composer, Enter sends queued prompts and Shift+Enter inserts a newline.
|
|
204
|
-
In the annotation card, Enter queues the annotation, Shift+Enter inserts a newline, and Ctrl+Enter (Cmd+Enter on macOS) queues it and sends all queued prompts immediately.
|
|
204
|
+
In the annotation card, Enter queues the annotation, Shift+Enter inserts a newline, and Ctrl+Enter (Cmd+Enter on macOS) queues it and sends all queued prompts immediately. Escape closes the card, same as Cancel, but only while it is empty (no text, no attachment); with unsent text or an attachment present, Escape does nothing rather than risk discarding it.
|
|
205
205
|
Cmd+I or Ctrl+I toggles between annotate and explore mode from either the browser chrome or the artifact iframe, including while focus is in a textarea or control.
|
|
206
206
|
- **Agent presence** - The browser shows when no agent is listening, keeps queued feedback for the next successful `lavish-axi poll` send even across reloads, and keeps human feedback actions available while the agent is working because the server queues them for the next poll. The agent's reply (`--agent-reply`) concludes delivered work and returns presence to waiting.
|
|
207
207
|
The no-timeout poll always writes an immediate stderr banner so it is visibly not hung; it adds the periodic stderr wait ticks only in an interactive terminal, so when stderr is piped (as under agent harnesses) the captured output carries no tick noise. Stdout always stays reserved for the final response; if the poll is interrupted or times out before feedback arrives, re-run it because feedback remains queued until delivery. Poll delivery consumes the response, so read the complete response before truncating or filtering it.
|
package/dist/chrome-client.js
CHANGED
package/dist/cli.mjs
CHANGED
|
@@ -6644,6 +6644,11 @@ function createArtifactSdk(deriveQueueKey, isNativeInteractive = isNativeInterac
|
|
|
6644
6644
|
const sendNow = (event.ctrlKey || event.metaKey) && (!!textarea.value.trim() || attachments.hasReady());
|
|
6645
6645
|
const queued = tryQueue();
|
|
6646
6646
|
if (queued && sendNow) sendQueuedPrompts();
|
|
6647
|
+
} else if (event.key === "Escape" && !event.isComposing) {
|
|
6648
|
+
if (textarea.value.trim() || attachments.hasPending() || attachments.hasErrors() || attachments.hasReady())
|
|
6649
|
+
return;
|
|
6650
|
+
event.preventDefault();
|
|
6651
|
+
closeCard();
|
|
6647
6652
|
}
|
|
6648
6653
|
});
|
|
6649
6654
|
textarea.addEventListener("input", scheduleReviewStateReport);
|
|
@@ -10384,8 +10389,8 @@ function setPollActive(key, activePolls, deliveredFeedback, events, active) {
|
|
|
10384
10389
|
activePolls.delete(key);
|
|
10385
10390
|
} else {
|
|
10386
10391
|
activePolls.set(key, nextCount);
|
|
10387
|
-
deliveredFeedback.delete(key);
|
|
10388
10392
|
}
|
|
10393
|
+
if (active && count === 0) deliveredFeedback.delete(key);
|
|
10389
10394
|
const nextPresence = computePresence(key, activePolls, deliveredFeedback);
|
|
10390
10395
|
if (nextPresence !== previousPresence) events.emit("agent-presence", key, nextPresence);
|
|
10391
10396
|
}
|
|
@@ -10884,7 +10889,7 @@ var POLL_WAKE_PATH_RULES = Object.freeze([
|
|
|
10884
10889
|
]);
|
|
10885
10890
|
var POLL_SEND_AND_END_RULE = "`Send & End` ends the session. Its final feedback is still delivered once. After that response, polling stops, and the agent must not reopen the session uninvited.";
|
|
10886
10891
|
var CODEX_POLL_WAKE_PATH_GUIDANCE = "Codex detected: completed background tasks may not resume Codex automatically, so keep the poll attached to the active turn.";
|
|
10887
|
-
var VERSION = "0.1.
|
|
10892
|
+
var VERSION = "0.1.63";
|
|
10888
10893
|
function detectInvokingAgent(env = process.env) {
|
|
10889
10894
|
return ["CODEX_SANDBOX", "CODEX_THREAD_ID"].some((key) => Object.hasOwn(env, key)) ? "codex" : "generic";
|
|
10890
10895
|
}
|
package/package.json
CHANGED
package/plugin.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
|
|
3
3
|
"name": "lavish-axi",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.63",
|
|
5
5
|
"description": "HTML is the new markdown. Lavish is the new editor for your HTML artifacts.",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Kun Chen",
|