@xingular/harness 0.1.3 → 0.1.5
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 +7 -3
- package/dist/cli.js +270 -125
- package/package.json +1 -1
- package/src/accounts/accounts.test.ts +1 -1
- package/src/accounts/env.test.ts +1 -1
- package/src/accounts/env.ts +1 -1
- package/src/core/path.test.ts +14 -0
- package/src/core/path.ts +56 -22
- package/src/mcp/connections.ts +2 -2
- package/src/mcp/manager.ts +2 -2
- package/src/memory/blocks.ts +2 -2
- package/src/memory/caller.ts +1 -1
- package/src/memory/dispatch.ts +1 -1
- package/src/memory/facts.ts +1 -1
- package/src/memory/store.ts +1 -1
- package/src/prompt/compile.test.ts +2 -2
- package/src/prompt/compile.ts +2 -2
- package/src/sessions/contracts.ts +12 -1
- package/src/sessions/runner.ts +16 -3
- package/src/sessions/sessions.test.ts +21 -0
- package/src/terminal/cli.ts +5 -5
- package/src/terminal/client.ts +2 -2
- package/src/terminal/launch.test.ts +34 -0
- package/src/terminal/launch.ts +88 -0
- package/src/terminal/socket.test.ts +44 -1
- package/src/terminal/socket.ts +32 -12
- package/src/terminal/standalone.test.ts +10 -0
- package/src/terminal/standalone.ts +11 -1
- package/src/terminal/terminal.test.ts +33 -5
- package/src/terminal/terminals.ts +32 -18
- package/src/tools/definitions.ts +2 -2
- package/src/tools/types.ts +3 -0
package/README.md
CHANGED
|
@@ -13,7 +13,7 @@ needs to work for someone over time, and nothing about any particular applicatio
|
|
|
13
13
|
| Plugins | `src/plugins/` | What a Pi session loads, chosen by the harness and never by Pi's own discovery; trust for a working folder's code; the list of every plugin and what reaches one caller. |
|
|
14
14
|
| Tools | `src/tools/` | Tool definitions, the memory tools, `ask_user`; a gate that asks the application's policy, then standing approvals, then the person. |
|
|
15
15
|
| Connected apps | `src/mcp/` | MCP connections, OAuth, per-session grants, redaction, a trace of what each call returned. |
|
|
16
|
-
| Terminal | `src/terminal/` | Interactive Pi sessions with isolated accounts, compiled instructions, a telemetry and tool extension, and the session socket with the `
|
|
16
|
+
| Terminal | `src/terminal/` | Interactive Pi sessions with isolated accounts, compiled instructions, a telemetry and tool extension, and the session socket with the `xagent-wiki` and `xagent-mcp` commands. |
|
|
17
17
|
| Server | `src/server/` | The same API over newline-delimited JSON, for a host that is not a Node program. |
|
|
18
18
|
|
|
19
19
|
It was split out of Xingular Agent, which is now an application built on it.
|
|
@@ -58,6 +58,9 @@ An application adds what it knows through six points:
|
|
|
58
58
|
updates.
|
|
59
59
|
2. **Tool providers** (`harness.sessions.provide`). A provider returns `ToolSpec`s for a session;
|
|
60
60
|
only the names in the session's `allow` list are registered, in that order.
|
|
61
|
+
A tool may return `attachments` as `{ id, name, mimeType }` references. The harness records
|
|
62
|
+
those references on `tool.completed`; attachment bytes remain with the provider and never enter
|
|
63
|
+
the run-event stream.
|
|
61
64
|
The harness provides the web tools itself: `webTools({ secrets })` gives `web_search` (Brave Search,
|
|
62
65
|
key read from the secret store) and `web_fetch` (checked reads of public pages). An application
|
|
63
66
|
passes it to `harness.sessions.provide` and switches the names on for each agent.
|
|
@@ -207,8 +210,9 @@ npm install --global @xingular/harness
|
|
|
207
210
|
xingular-harness
|
|
208
211
|
```
|
|
209
212
|
|
|
210
|
-
The machine needs Node 22.
|
|
211
|
-
|
|
213
|
+
The machine needs Node 22.19 or newer. On macOS and Linux, the `pi` command must be on `PATH`;
|
|
214
|
+
on Windows, Harness runs the pinned Pi CLI package through the active Node runtime. On first
|
|
215
|
+
launch, the harness creates a `Default` Pi account; Pi handles provider sign-in.
|
|
212
216
|
|
|
213
217
|
To build and run from a source checkout instead:
|
|
214
218
|
|