@spinalfluid/ultrac 0.1.6 → 0.1.11
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 +77 -6
- package/dist/cli.js +1945 -513
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -35,7 +35,7 @@ For local testing before a registry release, build and install the verified tarb
|
|
|
35
35
|
pnpm check
|
|
36
36
|
pnpm verify:install
|
|
37
37
|
npm pack
|
|
38
|
-
npm install -g ./spinalfluid-ultrac-0.1.
|
|
38
|
+
npm install -g ./spinalfluid-ultrac-0.1.7.tgz
|
|
39
39
|
ultrac login
|
|
40
40
|
```
|
|
41
41
|
|
|
@@ -141,13 +141,34 @@ ultrac "Find the main entry points and summarize the architecture"
|
|
|
141
141
|
Inside a session:
|
|
142
142
|
|
|
143
143
|
- Type to talk to Ultrac; it inspects the repository with tools as needed.
|
|
144
|
+
- On supported terminals, the full-width input box stays at the bottom while tools and replies
|
|
145
|
+
run above it. The footer shows the current model, elapsed task time, reported token usage,
|
|
146
|
+
and estimated context usage. Unreported token counts appear as unknown.
|
|
147
|
+
- Type `/` to browse built-in commands and available skills. Type to filter, use arrow keys
|
|
148
|
+
to select, and press Tab or Enter to fill the command. Press Enter again to run it;
|
|
149
|
+
Esc dismisses the menu. `/skill <name> [args]` runs a skill without a custom command.
|
|
150
|
+
- Multiple-choice questions accept arrow keys and Enter, or a mouse click where the terminal
|
|
151
|
+
supports mouse reporting. You can also type a number or your own answer.
|
|
144
152
|
- You can type another message while Ultrac is working. It is queued and inserted after the current
|
|
145
|
-
tool
|
|
146
|
-
the main prompt instead of entering model context.
|
|
147
|
-
-
|
|
153
|
+
tool call finishes, before the next model request. Remaining tools in that batch are skipped.
|
|
154
|
+
Slash commands wait for the main prompt instead of entering model context.
|
|
155
|
+
- Esc stops the current turn at a safe boundary and returns to the prompt. Ctrl-C exits and saves
|
|
156
|
+
the session.
|
|
148
157
|
- Gated tools (file writes, shell, network) prompt for approval: `once` / `always` / `no`.
|
|
158
|
+
- `/mcp` shows the connected servers in this session; `/doctor` checks local setup.
|
|
159
|
+
- `/continue [focus]` continues an unfinished task using its current transcript. `/autonomous on`
|
|
160
|
+
enables up to five rounds when a task reaches its step ceiling. Checkpoints, a six-hour elapsed
|
|
161
|
+
limit, stall detection, and Esc cancellation remain active. `/autonomous off` restores one round.
|
|
162
|
+
Failed rounds are not automatically replayed; provider retry/failover handles request failures.
|
|
163
|
+
- The agent can use `create_skill` in default/coding modes (or with `--tools all`) to create a
|
|
164
|
+
project playbook with full instructions and an optional slash command. It requires write
|
|
165
|
+
permission, refuses overwrites, and retains the workspace trust requirement for loading.
|
|
149
166
|
- Coding commands: `/plan [task]`, `/coding`, `/review [focus]`, `/diff [--staged]`,
|
|
150
167
|
`/test [instructions]`, `/init`, `/max-steps [number]`.
|
|
168
|
+
- Quiet output: `/ghost [on|off|status]` hides activity headers and progress for the current
|
|
169
|
+
session. Answers, errors, permission prompts, and private diagnostics remain visible or
|
|
170
|
+
recorded. `/logs` shows the current diagnostic log path. Ghost mode does not change
|
|
171
|
+
network routing, identities, or permissions.
|
|
151
172
|
- Context and sessions: `/context`, `/compact [focus]`, `/usage`, `/status`, `/save`,
|
|
152
173
|
`/sessions`, `/resume <id>`, `/new`, `/clear`.
|
|
153
174
|
- Controls: `/help`, `/model [name]`, `/mode [name]`, `/permissions [readonly|workspace|full]`,
|
|
@@ -168,6 +189,15 @@ Inside a session:
|
|
|
168
189
|
rules or automatically delete session data: exclude `.ultrac/sessions/` from version control and
|
|
169
190
|
manage retention yourself.
|
|
170
191
|
|
|
192
|
+
Tool activity stays compact. Interactive sessions keep successful tool bodies out of the
|
|
193
|
+
main conversation. Use `/output` to inspect the latest saved tool result, `/output list`
|
|
194
|
+
to find its number, or `/output 3` to inspect a particular result. This display preference
|
|
195
|
+
does not shorten model answers or alter the tool results stored in the session.
|
|
196
|
+
|
|
197
|
+
One-shot runs and `tools run` show at most six preview lines per result, with a hidden-line
|
|
198
|
+
count. Failed results retain the end of the log. Pass `--verbose-tools` for complete
|
|
199
|
+
results; `run --json` and `tools run --result-json` also keep their complete structured output.
|
|
200
|
+
|
|
171
201
|
Non-interactive, scriptable one-shot runs:
|
|
172
202
|
|
|
173
203
|
```bash
|
|
@@ -388,7 +418,12 @@ Successful `ask_user` answers are kept whole so a constraint at the end is not l
|
|
|
388
418
|
count against the context window, so an oversized request fails locally before it reaches the API.
|
|
389
419
|
|
|
390
420
|
**Every request is measured before it is sent.** The provider adds up the system prompt, the
|
|
391
|
-
serialised tools, and the transcript.
|
|
421
|
+
serialised tools, and the transcript. During longer tasks, the harness also attempts a
|
|
422
|
+
periodic summary every 12 completed steps when eligible older evidence exceeds 12,000
|
|
423
|
+
characters. Set `ULTRAC_SUMMARY_INTERVAL_STEPS` to an integer from 0 to 1000; 0 disables
|
|
424
|
+
periodic summaries. Every user instruction and the latest two complete assistant/tool
|
|
425
|
+
units are retained. Failed summaries leave the transcript intact. Checkpoints preserve
|
|
426
|
+
successful summaries across resume, while archived tool results remain available. Over 60% of the window, the harness first tries to compact
|
|
392
427
|
the oldest turns that would otherwise be dropped into a bounded `[compacted-context]` summary.
|
|
393
428
|
If summarising fails or there is not enough room, it falls back to dropping whole old turns, so an
|
|
394
429
|
assistant `tool_calls` entry and its `tool` replies are removed together. The system prompt, pinned
|
|
@@ -496,7 +531,7 @@ custom skills. Each skill is a folder with a `SKILL.md` (YAML frontmatter + Mark
|
|
|
496
531
|
```
|
|
497
532
|
|
|
498
533
|
```bash
|
|
499
|
-
ultrac skills create open-pr --description "Open a pull request" \
|
|
534
|
+
ultrac skills create open-pr --description "Open a pull request" --command open-pr \
|
|
500
535
|
--when "the user asks to open a PR" --permissions shell,network
|
|
501
536
|
ultrac skills list
|
|
502
537
|
ultrac skills show open-pr
|
|
@@ -673,3 +708,39 @@ revocable, non-transferable right to *run* the published build - nothing more. C
|
|
|
673
708
|
modification, redistribution, and reverse engineering are reserved. The full terms are in the
|
|
674
709
|
`LICENSE` file that ships inside the package, and they are the whole agreement: nothing on this
|
|
675
710
|
page grants a right the licence withholds.
|
|
711
|
+
|
|
712
|
+
### Recovery during unattended tasks
|
|
713
|
+
|
|
714
|
+
Autonomous runs resume from completed-step checkpoints, use cancellation-aware exponential
|
|
715
|
+
backoff for transient failed rounds (1 second up to 30 seconds), and stop on permanent
|
|
716
|
+
provider failures or repeated unchanged progress. Recovery defaults to five rounds and a
|
|
717
|
+
six-hour elapsed budget. Diagnostics record round timing, retry categories, summary events,
|
|
718
|
+
and stop reasons without prompts or tool bodies. Checkpoints do not guarantee rollback or
|
|
719
|
+
exactly-once execution for a tool interrupted before its completed result was saved.
|
|
720
|
+
|
|
721
|
+
### Configuring MCP servers
|
|
722
|
+
|
|
723
|
+
The harness connects to local stdio MCP servers, discovers their tools, and makes them
|
|
724
|
+
available to agent turns after workspace approval. Add and inspect a server with:
|
|
725
|
+
|
|
726
|
+
```sh
|
|
727
|
+
ultrac mcp add my-server node -- /absolute/path/to/server.js
|
|
728
|
+
ultrac trust
|
|
729
|
+
ultrac mcp list
|
|
730
|
+
ultrac mcp call my-server tool-name --input '{"query":"example"}'
|
|
731
|
+
ultrac mcp remove my-server
|
|
732
|
+
```
|
|
733
|
+
|
|
734
|
+
Use `--env-pass TOKEN_VARIABLE` to forward a named environment variable without writing
|
|
735
|
+
its value to configuration. Setup changes preserve unrelated settings and require renewed
|
|
736
|
+
workspace approval. HTTP/SSE MCP servers are not supported by this transport yet.
|
|
737
|
+
|
|
738
|
+
Create a reusable skill and expose it as a slash command with:
|
|
739
|
+
|
|
740
|
+
```sh
|
|
741
|
+
ultrac skills create project-check --description "Run project checks" --command project-check
|
|
742
|
+
```
|
|
743
|
+
|
|
744
|
+
Edit the generated `SKILL.md` instructions, approve the project workspace, and invoke
|
|
745
|
+
`/project-check` in the terminal. The agent can also write a new `SKILL.md` with its file tools and load it with
|
|
746
|
+
`skill`; normal write and tool permissions still apply.
|