@maximoai/maximo-syntax-cli 0.1.18 → 0.1.20
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 +126 -0
- package/bin/maximo-syntax-cli +12 -0
- package/dist/cli.mjs +26665 -28401
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -44,6 +44,11 @@ bun run build
|
|
|
44
44
|
npm link
|
|
45
45
|
```
|
|
46
46
|
|
|
47
|
+
`bun run build` creates a production bundle suitable for packaging and keeps
|
|
48
|
+
auto-updates available by default. Use `bun run dev` for local development;
|
|
49
|
+
that command deliberately creates a development bundle and disables self-update
|
|
50
|
+
checks for the source checkout.
|
|
51
|
+
|
|
47
52
|
---
|
|
48
53
|
|
|
49
54
|
## Usage
|
|
@@ -58,6 +63,127 @@ After installation, you can invoke the CLI using any of the following commands:
|
|
|
58
63
|
|
|
59
64
|
All five commands are equivalent and natively supported.
|
|
60
65
|
|
|
66
|
+
## Prompt mouse controls
|
|
67
|
+
|
|
68
|
+
The prompt supports terminal-native mouse editing in both inline and
|
|
69
|
+
fullscreen layouts:
|
|
70
|
+
|
|
71
|
+
- Click anywhere in the prompt to place the caret, including wrapped and
|
|
72
|
+
multiline input.
|
|
73
|
+
- Drag to select text. Double-click selects a word; triple-click selects the
|
|
74
|
+
logical line.
|
|
75
|
+
- Selected text is copied on mouse-up by default and stays highlighted. The
|
|
76
|
+
selection can also be replaced by typing, deleted with Backspace/Delete, or
|
|
77
|
+
copied/cut with the usual `Ctrl/Cmd-C` and `Ctrl/Cmd-X` shortcuts.
|
|
78
|
+
- Click a visible slash-command or file suggestion to accept that row
|
|
79
|
+
immediately. Keyboard navigation remains available.
|
|
80
|
+
|
|
81
|
+
Application-level dispatch is limited to the prompt and suggestion boxes. The
|
|
82
|
+
terminal’s mouse-reporting mode is global while it is enabled, so users who
|
|
83
|
+
need native terminal scrollback selection should use this switch before
|
|
84
|
+
starting Maximo Syntax:
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
# Keep the prompt from enabling mouse reporting.
|
|
88
|
+
export MAXIMO_SYNTAX_DISABLE_MOUSE=1
|
|
89
|
+
|
|
90
|
+
# In fullscreen, keep wheel scrolling but disable prompt click/drag actions.
|
|
91
|
+
export MAXIMO_SYNTAX_DISABLE_MOUSE_CLICKS=1
|
|
92
|
+
|
|
93
|
+
# Keep the terminal's native caret visible for screen readers and magnifiers.
|
|
94
|
+
export MAXIMO_SYNTAX_ACCESSIBILITY=1
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
The `copyOnSelect` setting can be changed from the configuration screen. OSC
|
|
98
|
+
52 and the local clipboard utility are used where available, with terminal
|
|
99
|
+
mouse tracking restored automatically after fullscreen overlays, resize, or
|
|
100
|
+
terminal suspend/resume.
|
|
101
|
+
|
|
102
|
+
## Interactive TUI controls
|
|
103
|
+
|
|
104
|
+
The command palette searches live actions, slash commands, and skills. Open it
|
|
105
|
+
with `Ctrl+P` in most terminals. In VS Code's integrated terminal, where
|
|
106
|
+
`Ctrl+P` belongs to the editor, use the chord `Ctrl+X`, then `P`. The active
|
|
107
|
+
shortcut is shown contextually in the prompt footer and can be changed under
|
|
108
|
+
`/config` with the terminal shortcut profile.
|
|
109
|
+
|
|
110
|
+
Prompt editing includes attachment-aware undo and redo. Use `Ctrl+_` to undo
|
|
111
|
+
and `Ctrl+Y` to redo. Images and large pasted-text references behave as atomic
|
|
112
|
+
chips: navigation snaps to chip boundaries, deleting a selected chip removes
|
|
113
|
+
the matching content, and undo/redo restores the text, caret, and attachment
|
|
114
|
+
state together.
|
|
115
|
+
|
|
116
|
+
While prompts are queued, open the interactive queue with `Ctrl+Q` (`Ctrl+X`,
|
|
117
|
+
then `Q` in VS Code). The pane supports:
|
|
118
|
+
|
|
119
|
+
- `Enter` to move an editable queued prompt back into the editor.
|
|
120
|
+
- `N` to prioritize it for immediate sending.
|
|
121
|
+
- `D` or Delete to remove it.
|
|
122
|
+
- `Ctrl+Up` / `Ctrl+Down` to reorder it.
|
|
123
|
+
- Typing to filter the queue.
|
|
124
|
+
|
|
125
|
+
Open the detailed transcript with `Ctrl+O`. Fullscreen scrollback supports
|
|
126
|
+
mouse-wheel and keyboard scrolling, `/` incremental search, `N`/`Shift+N`
|
|
127
|
+
match navigation, text selection and copy, and automatic follow while pinned
|
|
128
|
+
to the bottom. Manual scrolling pauses follow; returning to the bottom resumes
|
|
129
|
+
it. Press `Shift+Up` or click a message to focus it, then use Up/Down or `J`/`K`
|
|
130
|
+
to move between turns, Enter to fold or expand supported rows, `C` to copy,
|
|
131
|
+
`R` for raw view, and Escape to return. Press `[` to dump the complete expanded
|
|
132
|
+
transcript into native terminal scrollback, or `V` to open it in `$VISUAL` or
|
|
133
|
+
`$EDITOR`.
|
|
134
|
+
|
|
135
|
+
`/config` also exposes display mode (auto, fullscreen, inline, compact), UI
|
|
136
|
+
density, prompt border style, reduced motion, contextual shortcut hints, and
|
|
137
|
+
response-completion notifications. Notifications can be limited to times when
|
|
138
|
+
the terminal is unfocused.
|
|
139
|
+
|
|
140
|
+
## Skills and cross-CLI compatibility
|
|
141
|
+
|
|
142
|
+
Maximo Syntax reads the shared `SKILL.md` format and normalizes skills from
|
|
143
|
+
Maximo, Agent Skills, Codex, Claude Code, Gemini CLI/Antigravity, Grok CLI, and
|
|
144
|
+
OpenCode layouts. Existing native Maximo roots keep their normal precedence;
|
|
145
|
+
provider-qualified aliases (for example `claude:review`) keep same-named skills
|
|
146
|
+
addressable.
|
|
147
|
+
|
|
148
|
+
Supported project roots are:
|
|
149
|
+
|
|
150
|
+
- `.maximo/skills/`
|
|
151
|
+
- `.agents/skills/`
|
|
152
|
+
- `.claude/skills/`
|
|
153
|
+
- `.gemini/skills/`
|
|
154
|
+
- `.grok/skills/`
|
|
155
|
+
- `.opencode/skills/`
|
|
156
|
+
|
|
157
|
+
The same provider roots are checked in their documented user locations, such
|
|
158
|
+
as `~/.agents/skills/`, Codex's `~/.codex/skills/` (or `$CODEX_HOME/skills/`),
|
|
159
|
+
`~/.claude/skills/`, `~/.gemini/skills/`, `~/.grok/skills/`,
|
|
160
|
+
`~/.config/opencode/skills/`, and the Antigravity Gemini skill roots.
|
|
161
|
+
|
|
162
|
+
In the TUI:
|
|
163
|
+
|
|
164
|
+
- Type `/skill-name` or `/skill-name arguments` to invoke a skill directly.
|
|
165
|
+
- Type `$skill-name` inside a normal prompt to explicitly guide Maximo to load
|
|
166
|
+
that known skill before handling the rest of the prompt. Unknown `$words` and
|
|
167
|
+
shell variables such as `$HOME` remain ordinary text.
|
|
168
|
+
- Run `/skills` to open the picker. Select a skill to insert its `/command`, or
|
|
169
|
+
select the creator.
|
|
170
|
+
- Run `/skills create` or `/skill-creator` to create a reusable skill.
|
|
171
|
+
`/create-skill` and the legacy `/skillify` names remain aliases.
|
|
172
|
+
- Run `/skills reload` after external changes. `/skills info <name>`,
|
|
173
|
+
`/skills use <name>`, `/skills link <path> [--scope user|workspace]`, and the
|
|
174
|
+
session-only `enable`/`disable` helpers are also available.
|
|
175
|
+
|
|
176
|
+
Skills use a directory containing `SKILL.md`, for example:
|
|
177
|
+
|
|
178
|
+
```text
|
|
179
|
+
.agents/skills/release-notes/SKILL.md
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
The recommended portable frontmatter includes `name` and `description`; Maximo
|
|
183
|
+
also supports compatible fields such as `allowed-tools`, `when_to_use`,
|
|
184
|
+
`argument-hint`, `arguments`, `context`, `user-invocable`, and
|
|
185
|
+
`disable-model-invocation`.
|
|
186
|
+
|
|
61
187
|
---
|
|
62
188
|
|
|
63
189
|
## Login
|
package/bin/maximo-syntax-cli
CHANGED
|
@@ -11,6 +11,18 @@ import { existsSync } from "fs";
|
|
|
11
11
|
import { join, dirname } from "path";
|
|
12
12
|
import { fileURLToPath, pathToFileURL } from "url";
|
|
13
13
|
|
|
14
|
+
// Raise the V8 old-space ceiling for child processes (sub-agents, etc.) so
|
|
15
|
+
// long sessions don't hit the default ~2GB heap. Setting NODE_OPTIONS here
|
|
16
|
+
// affects processes the CLI spawns; the main process heap is governed by the
|
|
17
|
+
// shebang's node invocation, which we can't change at runtime. Never override
|
|
18
|
+
// an explicit user-set value.
|
|
19
|
+
if (!/\b--max-old-space-size=\d+\b/.test(process.env.NODE_OPTIONS || "")) {
|
|
20
|
+
const existing = process.env.NODE_OPTIONS || "";
|
|
21
|
+
process.env.NODE_OPTIONS = existing
|
|
22
|
+
? `${existing} --max-old-space-size=6144`
|
|
23
|
+
: "--max-old-space-size=6144";
|
|
24
|
+
}
|
|
25
|
+
|
|
14
26
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
15
27
|
const distPath = join(__dirname, "..", "dist", "cli.mjs");
|
|
16
28
|
|