@oxecli/oxe 1.0.28 → 1.0.30

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/cli.js CHANGED
@@ -425,7 +425,7 @@ export class CLI {
425
425
  process.stdout.write("\n");
426
426
  process.stdout.write(wasActive
427
427
  ? "\x1b[2mInterrupted agent. Press Ctrl+C again to close the app, or type a new prompt.\x1b[0m\n"
428
- : "\x1b[2mNo active response. Press Ctrl+C again to close the app, or type a new prompt.\x1b[0m\n");
428
+ : "\x1b[2mNo active response. Press Ctrl+C again to exit the app.\x1b[0m\n");
429
429
  continue;
430
430
  }
431
431
  throw err;
package/dist/ui.js CHANGED
@@ -300,15 +300,11 @@ export function tickDuration(seconds) {
300
300
  // ---------------------------------------------------------------------------
301
301
  const FENCE_MARKER_RE = /`{3,}/g;
302
302
  export function printAiChunk(chunk) {
303
- // rich's Markdown renderer ignores leading blank lines; a commit boundary in
304
- // "…\n\n…" text can leave the second chunk starting with "\n", so strip it to
305
- // avoid double-printing a blank row (mirrors the original's output).
306
- const trimmed = chunk.replace(/^\n+/, "");
307
- if (!trimmed)
303
+ // Streaming commits are slices of the model's exact text. Do not trim or
304
+ // append newlines here, otherwise paragraph breaks from the AI disappear.
305
+ if (!chunk)
308
306
  return;
309
- process.stdout.write(markdownToAnsi(trimmed) + "\n");
310
- if (/^```/m.test(trimmed))
311
- process.stdout.write("\n");
307
+ process.stdout.write(markdownToAnsi(chunk));
312
308
  }
313
309
  export function safeCommitPoint(text) {
314
310
  let idx = text.lastIndexOf("\n\n");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxecli/oxe",
3
- "version": "1.0.28",
3
+ "version": "1.0.30",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
package/README.md DELETED
@@ -1,58 +0,0 @@
1
- # Oxe — terminal AI coding agent
2
-
3
- A terminal-based AI coding agent. This is a **native TypeScript** implementation
4
- (pure Node.js, no Python required).
5
-
6
- ## Install
7
-
8
- ```bash
9
- npm install -g @oxecli/oxe
10
- ```
11
-
12
- The `oxe` command is provided by this package's `bin`.
13
-
14
- ## Usage
15
-
16
- ```bash
17
- oxe
18
- ```
19
-
20
- On first launch you'll be prompted for an **Oxe API key** (must start with
21
- `oxe_live_`), generated on your Oxe dashboard.
22
-
23
- ## Interactive commands
24
-
25
- | Command | Description |
26
- | --- | --- |
27
- | `/help` | Show available commands |
28
- | `/resume` | List saved conversations |
29
- | `/resume <n>` | Resume conversation number `n` |
30
- | `/effort <none\|low\|high>` | Set reasoning effort |
31
- | `/clear` | Save current conversation and start a new one |
32
- | `/exit`, `/quit` | Save and exit |
33
-
34
- ## Configuration
35
-
36
- Environment variables:
37
-
38
- | Variable | Description | Default |
39
- | --- | --- | --- |
40
- | `OXE_DATA_DIR` | Where sessions are stored | `~/.oxe` |
41
- | `OXE_BASE_URL` | Chat proxy base URL | bundled backend |
42
- | `OXE_MODEL_NAME` | Model to use | `deepseek-v4-flash` |
43
- | `OXE_REASONING_EFFORT` | Default reasoning effort | `low` |
44
- | `OXE_TIMEOUT` / `OXE_MAX_RETRIES` / `OXE_TEMPERATURE` | Request tuning | |
45
-
46
- Sessions and user data live under `~/.oxe/sessions`, never in `node_modules`.
47
-
48
- ## Development
49
-
50
- ```bash
51
- npm install
52
- npm run build # tsc -> dist/
53
- npm install -g . # link as `oxe`
54
- ```
55
-
56
- ## License
57
-
58
- MIT