@oxecli/oxe 1.0.38 → 1.0.40

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/dist/engine.js CHANGED
@@ -614,6 +614,11 @@ export class InferenceEngine {
614
614
  if (this.interrupted) {
615
615
  this.workActive = false;
616
616
  this.workRows = 0;
617
+ if (!this.queryHasOutput) {
618
+ const fallback = "What else can I help with?";
619
+ process.stdout.write(aiMarkdown(fallback) + "\n\n");
620
+ story.push({ type: "assistant", text: fallback });
621
+ }
617
622
  }
618
623
  if (this.interrupted)
619
624
  throw new Error("interrupt");
package/dist/ui.js CHANGED
@@ -777,6 +777,9 @@ export function askBottomPrompt(label = "You", prefix = "❯", history = []) {
777
777
  readline.emitKeypressEvents(process.stdin);
778
778
  if (process.stdin.isTTY) {
779
779
  process.stdin.setRawMode(true);
780
+ // Ask the terminal to wrap clipboard input in explicit paste markers.
781
+ // This makes embedded newlines unambiguous instead of relying on timing.
782
+ process.stdout.write("\x1b[?2004h");
780
783
  // Enable the kitty keyboard protocol (CSI u) so Windows Terminal / modern
781
784
  // terminals send distinct sequences for Shift+Enter / Ctrl+Enter
782
785
  // (\x1b[13;<mod>u) instead of an indistinguishable plain \r.
@@ -808,6 +811,7 @@ export function askBottomPrompt(label = "You", prefix = "❯", history = []) {
808
811
  if (done)
809
812
  return;
810
813
  done = true;
814
+ process.stdout.write("\x1b[?2004l");
811
815
  process.stdin.setRawMode(false);
812
816
  if (pasteBurstTimer)
813
817
  clearTimeout(pasteBurstTimer);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxecli/oxe",
3
- "version": "1.0.38",
3
+ "version": "1.0.40",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },