@intentic/machine 1.337.0 → 1.339.0
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 +105 -1
- package/dist/agent-trial.d.ts.map +1 -1
- package/dist/agent-trial.js +5 -15
- package/dist/agent-trial.js.map +1 -1
- package/dist/autostart/autostart.d.ts +2 -0
- package/dist/autostart/autostart.d.ts.map +1 -1
- package/dist/autostart/autostart.js +20 -0
- package/dist/autostart/autostart.js.map +1 -1
- package/dist/autostart/before-sign-in.d.ts +12 -0
- package/dist/autostart/before-sign-in.d.ts.map +1 -0
- package/dist/autostart/before-sign-in.js +103 -0
- package/dist/autostart/before-sign-in.js.map +1 -0
- package/dist/commands.d.ts.map +1 -1
- package/dist/commands.js +10 -1
- package/dist/commands.js.map +1 -1
- package/dist/daemon-base.d.ts.map +1 -1
- package/dist/daemon-base.js +2 -1
- package/dist/daemon-base.js.map +1 -1
- package/dist/device/commands.js +1 -1
- package/dist/device/commands.js.map +1 -1
- package/dist/device/config.d.ts +1 -1
- package/dist/device/config.d.ts.map +1 -1
- package/dist/device/config.js +3 -7
- package/dist/device/config.js.map +1 -1
- package/dist/device/connection.d.ts.map +1 -1
- package/dist/device/connection.js +1 -1
- package/dist/device/connection.js.map +1 -1
- package/dist/device/grant.d.ts +226 -1
- package/dist/device/grant.d.ts.map +1 -1
- package/dist/device/grant.js +2 -1
- package/dist/device/grant.js.map +1 -1
- package/dist/device/loopback-catch.d.ts +1 -1
- package/dist/device/loopback-catch.d.ts.map +1 -1
- package/dist/device/loopback-catch.js +1 -1
- package/dist/device/loopback-catch.js.map +1 -1
- package/dist/device/mcp.d.ts +2 -0
- package/dist/device/mcp.d.ts.map +1 -1
- package/dist/device/mcp.js +28 -17
- package/dist/device/mcp.js.map +1 -1
- package/dist/device/policy.d.ts +1 -1
- package/dist/device/policy.d.ts.map +1 -1
- package/dist/device/router.d.ts +227 -1
- package/dist/device/router.d.ts.map +1 -1
- package/dist/device/router.js +11 -0
- package/dist/device/router.js.map +1 -1
- package/dist/device/sandbox-rounds/auto-backup.d.ts +1 -1
- package/dist/device/sandbox-rounds/auto-backup.d.ts.map +1 -1
- package/dist/device/sandbox-rounds/auto-backup.js +3 -18
- package/dist/device/sandbox-rounds/auto-backup.js.map +1 -1
- package/dist/device/sandbox-rounds/auto-prepare.d.ts +1 -1
- package/dist/device/sandbox-rounds/auto-prepare.d.ts.map +1 -1
- package/dist/device/sandbox-rounds/ic-swaps.d.ts +1 -1
- package/dist/device/sandbox-rounds/ic-swaps.d.ts.map +1 -1
- package/dist/device/sandbox-rounds/ic-swaps.js +3 -8
- package/dist/device/sandbox-rounds/ic-swaps.js.map +1 -1
- package/dist/device/sandbox-rounds/keeper.d.ts +1 -1
- package/dist/device/sandbox-rounds/keeper.d.ts.map +1 -1
- package/dist/device/sandbox-rounds/keeper.js +2 -9
- package/dist/device/sandbox-rounds/keeper.js.map +1 -1
- package/dist/device/sandbox-rounds/probation-watch.d.ts.map +1 -1
- package/dist/device/sandbox-rounds/probation-watch.js +2 -9
- package/dist/device/sandbox-rounds/probation-watch.js.map +1 -1
- package/dist/device/sandbox-rounds/sleep.d.ts.map +1 -1
- package/dist/device/sandbox-rounds/sleep.js +3 -7
- package/dist/device/sandbox-rounds/sleep.js.map +1 -1
- package/dist/device/sandbox-rounds/swaps-fallback.d.ts +1 -1
- package/dist/device/sandbox-rounds/swaps-fallback.d.ts.map +1 -1
- package/dist/device/sandbox-rounds/swaps-fallback.js +3 -2
- package/dist/device/sandbox-rounds/swaps-fallback.js.map +1 -1
- package/dist/device/session.d.ts +5 -0
- package/dist/device/session.d.ts.map +1 -0
- package/dist/device/session.js +13 -0
- package/dist/device/session.js.map +1 -0
- package/dist/device/tools/agent.d.ts +1 -1
- package/dist/device/tools/agent.d.ts.map +1 -1
- package/dist/device/tools/agent.js +2 -2
- package/dist/device/tools/agent.js.map +1 -1
- package/dist/device/tools/android-parse.d.ts +4 -0
- package/dist/device/tools/android-parse.d.ts.map +1 -1
- package/dist/device/tools/android-parse.js +12 -3
- package/dist/device/tools/android-parse.js.map +1 -1
- package/dist/device/tools/android.d.ts +1 -1
- package/dist/device/tools/android.d.ts.map +1 -1
- package/dist/device/tools/android.js +71 -14
- package/dist/device/tools/android.js.map +1 -1
- package/dist/device/tools/apps.d.ts +1 -1
- package/dist/device/tools/apps.d.ts.map +1 -1
- package/dist/device/tools/browser.d.ts +1 -1
- package/dist/device/tools/browser.d.ts.map +1 -1
- package/dist/device/tools/command-ledger.d.ts.map +1 -1
- package/dist/device/tools/command-ledger.js +3 -11
- package/dist/device/tools/command-ledger.js.map +1 -1
- package/dist/device/tools/describe.d.ts +2 -1
- package/dist/device/tools/describe.d.ts.map +1 -1
- package/dist/device/tools/describe.js +13 -3
- package/dist/device/tools/describe.js.map +1 -1
- package/dist/device/tools/device.d.ts +1 -1
- package/dist/device/tools/device.d.ts.map +1 -1
- package/dist/device/tools/device.js +1 -1
- package/dist/device/tools/device.js.map +1 -1
- package/dist/device/tools/elements.d.ts +1 -1
- package/dist/device/tools/elements.d.ts.map +1 -1
- package/dist/device/tools/files.d.ts +1 -1
- package/dist/device/tools/files.d.ts.map +1 -1
- package/dist/device/tools/ic-binary.d.ts +3 -1
- package/dist/device/tools/ic-binary.d.ts.map +1 -1
- package/dist/device/tools/ic-binary.js +14 -7
- package/dist/device/tools/ic-binary.js.map +1 -1
- package/dist/device/tools/logs/logs.d.ts +1 -1
- package/dist/device/tools/logs/logs.d.ts.map +1 -1
- package/dist/device/tools/logs/logs.js +5 -11
- package/dist/device/tools/logs/logs.js.map +1 -1
- package/dist/device/tools/os/os.d.ts +10 -2
- package/dist/device/tools/os/os.d.ts.map +1 -1
- package/dist/device/tools/os/os.js +10 -14
- package/dist/device/tools/os/os.js.map +1 -1
- package/dist/device/tools/os/settings.d.ts +35 -0
- package/dist/device/tools/os/settings.d.ts.map +1 -0
- package/dist/device/tools/os/settings.js +357 -0
- package/dist/device/tools/os/settings.js.map +1 -0
- package/dist/device/tools/programs/artifacts.d.ts +2 -1
- package/dist/device/tools/programs/artifacts.d.ts.map +1 -1
- package/dist/device/tools/programs/artifacts.js.map +1 -1
- package/dist/device/tools/programs/device-tunnel.d.ts +2 -1
- package/dist/device/tools/programs/device-tunnel.d.ts.map +1 -1
- package/dist/device/tools/programs/device-tunnel.js.map +1 -1
- package/dist/device/tools/programs/programs.d.ts +1 -1
- package/dist/device/tools/programs/programs.d.ts.map +1 -1
- package/dist/device/tools/programs/programs.js +7 -11
- package/dist/device/tools/programs/programs.js.map +1 -1
- package/dist/device/tools/sandboxes.d.ts +5 -3
- package/dist/device/tools/sandboxes.d.ts.map +1 -1
- package/dist/device/tools/sandboxes.js +8 -4
- package/dist/device/tools/sandboxes.js.map +1 -1
- package/dist/device/tools/shell.d.ts +5 -1
- package/dist/device/tools/shell.d.ts.map +1 -1
- package/dist/device/tools/shell.js +10 -3
- package/dist/device/tools/shell.js.map +1 -1
- package/dist/engine-env.d.ts.map +1 -1
- package/dist/engine-env.js +2 -7
- package/dist/engine-env.js.map +1 -1
- package/dist/environments/auto-upgrade.d.ts +1 -1
- package/dist/environments/auto-upgrade.d.ts.map +1 -1
- package/dist/environments/auto-upgrade.js +1 -1
- package/dist/environments/auto-upgrade.js.map +1 -1
- package/dist/environments/crossing.js +1 -1
- package/dist/environments/crossing.js.map +1 -1
- package/dist/environments/machine-upgrade.js +1 -1
- package/dist/environments/machine-upgrade.js.map +1 -1
- package/dist/environments/machine.d.ts +1 -0
- package/dist/environments/machine.d.ts.map +1 -1
- package/dist/environments/machine.js +14 -4
- package/dist/environments/machine.js.map +1 -1
- package/dist/environments/wsl.js +4 -5
- package/dist/environments/wsl.js.map +1 -1
- package/dist/install.d.ts +2 -1
- package/dist/install.d.ts.map +1 -1
- package/dist/install.js +11 -22
- package/dist/install.js.map +1 -1
- package/dist/keyring/answer.d.ts +18 -0
- package/dist/keyring/answer.d.ts.map +1 -0
- package/dist/keyring/answer.js +46 -0
- package/dist/keyring/answer.js.map +1 -0
- package/dist/keyring/askpass.d.ts +31 -0
- package/dist/keyring/askpass.d.ts.map +1 -0
- package/dist/keyring/askpass.js +120 -0
- package/dist/keyring/askpass.js.map +1 -0
- package/dist/keyring/commands.d.ts +24 -0
- package/dist/keyring/commands.d.ts.map +1 -0
- package/dist/keyring/commands.js +384 -0
- package/dist/keyring/commands.js.map +1 -0
- package/dist/keyring/feature.d.ts +10 -0
- package/dist/keyring/feature.d.ts.map +1 -0
- package/dist/keyring/feature.js +36 -0
- package/dist/keyring/feature.js.map +1 -0
- package/dist/keyring/flags.d.ts +63 -0
- package/dist/keyring/flags.d.ts.map +1 -0
- package/dist/keyring/flags.js +177 -0
- package/dist/keyring/flags.js.map +1 -0
- package/dist/keyring/keyring-status.d.ts +32 -0
- package/dist/keyring/keyring-status.d.ts.map +1 -0
- package/dist/keyring/keyring-status.js +41 -0
- package/dist/keyring/keyring-status.js.map +1 -0
- package/dist/keyring/relay.d.ts +22 -0
- package/dist/keyring/relay.d.ts.map +1 -0
- package/dist/keyring/relay.js +104 -0
- package/dist/keyring/relay.js.map +1 -0
- package/dist/keyring/secret-input.d.ts +14 -0
- package/dist/keyring/secret-input.d.ts.map +1 -0
- package/dist/keyring/secret-input.js +78 -0
- package/dist/keyring/secret-input.js.map +1 -0
- package/dist/keyring/service.d.ts +44 -0
- package/dist/keyring/service.d.ts.map +1 -0
- package/dist/keyring/service.js +258 -0
- package/dist/keyring/service.js.map +1 -0
- package/dist/machine-id.d.ts.map +1 -1
- package/dist/machine-id.js +4 -5
- package/dist/machine-id.js.map +1 -1
- package/dist/release/release-signature.d.ts +17 -0
- package/dist/release/release-signature.d.ts.map +1 -0
- package/dist/release/release-signature.js +78 -0
- package/dist/release/release-signature.js.map +1 -0
- package/dist/release/release-verify.d.ts +11 -0
- package/dist/release/release-verify.d.ts.map +1 -0
- package/dist/release/release-verify.js +74 -0
- package/dist/release/release-verify.js.map +1 -0
- package/dist/release.d.ts +6 -0
- package/dist/release.d.ts.map +1 -1
- package/dist/release.js +8 -2
- package/dist/release.js.map +1 -1
- package/dist/resident/handover.d.ts +19 -0
- package/dist/resident/handover.d.ts.map +1 -0
- package/dist/resident/handover.js +32 -0
- package/dist/resident/handover.js.map +1 -0
- package/dist/resident/last-exit.d.ts.map +1 -1
- package/dist/resident/last-exit.js +6 -23
- package/dist/resident/last-exit.js.map +1 -1
- package/dist/resident/resident.d.ts +4 -1
- package/dist/resident/resident.d.ts.map +1 -1
- package/dist/resident/resident.js +82 -20
- package/dist/resident/resident.js.map +1 -1
- package/dist/status.d.ts +4 -1
- package/dist/status.d.ts.map +1 -1
- package/dist/status.js +9 -2
- package/dist/status.js.map +1 -1
- package/dist/sync/attach-commands.js +1 -1
- package/dist/sync/attach-commands.js.map +1 -1
- package/dist/sync/commands.d.ts.map +1 -1
- package/dist/sync/commands.js +4 -1
- package/dist/sync/commands.js.map +1 -1
- package/dist/sync/config.d.ts +2 -1
- package/dist/sync/config.d.ts.map +1 -1
- package/dist/sync/config.js +1 -1
- package/dist/sync/config.js.map +1 -1
- package/dist/sync/docker-ports.d.ts.map +1 -1
- package/dist/sync/docker-ports.js +2 -8
- package/dist/sync/docker-ports.js.map +1 -1
- package/dist/sync/environment.d.ts.map +1 -1
- package/dist/sync/environment.js +3 -10
- package/dist/sync/environment.js.map +1 -1
- package/dist/sync/forget-command.d.ts.map +1 -1
- package/dist/sync/forget-command.js +2 -6
- package/dist/sync/forget-command.js.map +1 -1
- package/dist/sync/gone.js +1 -1
- package/dist/sync/gone.js.map +1 -1
- package/dist/sync/mirror.d.ts +1 -1
- package/dist/sync/mirror.d.ts.map +1 -1
- package/dist/sync/mirror.js +3 -3
- package/dist/sync/mirror.js.map +1 -1
- package/dist/sync/mutagen.d.ts +1 -2
- package/dist/sync/mutagen.d.ts.map +1 -1
- package/dist/sync/mutagen.js +4 -6
- package/dist/sync/mutagen.js.map +1 -1
- package/dist/sync/project/project-delivery.d.ts +1 -1
- package/dist/sync/project/project-delivery.d.ts.map +1 -1
- package/dist/sync/project/project-delivery.js +1 -1
- package/dist/sync/project/project-delivery.js.map +1 -1
- package/dist/sync/project/project-files.d.ts +1 -1
- package/dist/sync/project/project-files.d.ts.map +1 -1
- package/dist/sync/project/project-local.d.ts.map +1 -1
- package/dist/sync/project/project-local.js +2 -8
- package/dist/sync/project/project-local.js.map +1 -1
- package/dist/sync/project/project-remote.d.ts.map +1 -1
- package/dist/sync/project/project-remote.js +2 -8
- package/dist/sync/project/project-remote.js.map +1 -1
- package/dist/sync/project/project-transfer.d.ts +1 -1
- package/dist/sync/project/project-transfer.d.ts.map +1 -1
- package/dist/sync/report.d.ts +1 -1
- package/dist/sync/report.d.ts.map +1 -1
- package/dist/sync/report.js +2 -2
- package/dist/sync/report.js.map +1 -1
- package/dist/sync/residue.d.ts +1 -1
- package/dist/sync/residue.d.ts.map +1 -1
- package/dist/sync/residue.js +1 -1
- package/dist/sync/residue.js.map +1 -1
- package/dist/sync/restore-points.d.ts.map +1 -1
- package/dist/sync/restore-points.js +2 -8
- package/dist/sync/restore-points.js.map +1 -1
- package/dist/sync/siblings.d.ts.map +1 -1
- package/dist/sync/siblings.js +4 -10
- package/dist/sync/siblings.js.map +1 -1
- package/dist/sync/ssh.d.ts.map +1 -1
- package/dist/sync/ssh.js +4 -3
- package/dist/sync/ssh.js.map +1 -1
- package/dist/sync/swap-pause.js +1 -1
- package/dist/sync/swap-pause.js.map +1 -1
- package/dist/upgrade.d.ts +2 -0
- package/dist/upgrade.d.ts.map +1 -1
- package/dist/upgrade.js +36 -4
- package/dist/upgrade.js.map +1 -1
- package/dist/upkeep/doctor.d.ts.map +1 -1
- package/dist/upkeep/doctor.js +4 -1
- package/dist/upkeep/doctor.js.map +1 -1
- package/dist/upkeep/login.d.ts +0 -1
- package/dist/upkeep/login.d.ts.map +1 -1
- package/dist/upkeep/login.js +4 -18
- package/dist/upkeep/login.js.map +1 -1
- package/dist/upkeep/reconcile.d.ts +1 -1
- package/dist/upkeep/reconcile.d.ts.map +1 -1
- package/dist/upkeep/reconcile.js +4 -15
- package/dist/upkeep/reconcile.js.map +1 -1
- package/dist/upkeep/retention.d.ts.map +1 -1
- package/dist/upkeep/retention.js +13 -17
- package/dist/upkeep/retention.js.map +1 -1
- package/dist/upkeep/trash.d.ts.map +1 -1
- package/dist/upkeep/trash.js +2 -1
- package/dist/upkeep/trash.js.map +1 -1
- package/dist/windows-registry.d.ts +8 -0
- package/dist/windows-registry.d.ts.map +1 -0
- package/dist/windows-registry.js +44 -0
- package/dist/windows-registry.js.map +1 -0
- package/package.json +9 -8
package/README.md
CHANGED
|
@@ -15,6 +15,17 @@ flowchart LR
|
|
|
15
15
|
|
|
16
16
|
- One resident process per environment (`resident.ts`) serves both halves and re-reads its state every tick. A login
|
|
17
17
|
entry from [local-agent](../local-agent) restarts it; inside a WSL distro the Windows side does.
|
|
18
|
+
- (2026-10-15) **Before anyone signs in**, on Windows: `intentic-machine before-sign-in on` asks Windows (one UAC
|
|
19
|
+
prompt on that PC) for a boot task that starts the agent when the PC starts, with no session
|
|
20
|
+
([`autostart/before-sign-in.ts`](src/autostart/before-sign-in.ts)). That agent serves what needs no desktop, its
|
|
21
|
+
sandbox links and the WSL distros, and refuses the screen, window, clipboard and browser tools in one sentence
|
|
22
|
+
([`device/session.ts`](src/device/session.ts)). It leaves the keeper (which starts Docker Desktop), the sandbox
|
|
23
|
+
rounds, file sync and its own updates to the signed-in session's agent, which takes over at the next sign-in:
|
|
24
|
+
it writes a request the boot agent reads every tick and leaves on, and stops it only if it does not
|
|
25
|
+
([`resident/handover.ts`](src/resident/handover.ts)). While someone is signed in, the boot task's repetitions find
|
|
26
|
+
an agent running and exit without a word. `uninstall` removes the task too, asking Windows again. Measured on a
|
|
27
|
+
Windows 11 laptop: the session-less agent was connected 3 s after its task fired, its distro 3 s later, and the
|
|
28
|
+
handover at the next logon-task start took 4 s.
|
|
18
29
|
- **device** (`src/device/`): `device setup` redeems a one-time pairing token, then the agent keeps a WebSocket
|
|
19
30
|
dialled out to the sandbox and answers MCP tools on it: `run_command`, files, windows and clipboard, `browser_*`
|
|
20
31
|
through [browser](../browser), `screenshot`, `device`, `ui_elements` and `ui_act` through
|
|
@@ -71,6 +82,19 @@ flowchart LR
|
|
|
71
82
|
they are not registered, since `ic os` refuses there. The same switch covers `ic os …` and `bootc
|
|
72
83
|
upgrade|switch|rollback` sent through `run_command` or another program door, and the facts carry `intenticOs`
|
|
73
84
|
(edition, version, channel) read off the same file.
|
|
85
|
+
- (2026-10-16) **Its settings**, on the same machines ([`tools/os/settings.ts`](src/device/tools/os/settings.ts)):
|
|
86
|
+
every setting a person can change from This computer on the machine's own screen is a tool too, so the agent in the
|
|
87
|
+
machine's own sandbox can join the guest Wi-Fi or copy a USB stick in. Each is one `ic os` verb, argv and JSON as
|
|
88
|
+
the contract's (`icOsWifiConnectArgs`, `IntenticOsDrivesSchema`): `os_network_status`, `os_wifi_list`,
|
|
89
|
+
`os_wifi_connect`, `os_wifi_forget`, `os_wifi_radio`; `os_sound_status`, `os_sound_set`, `os_sound_outputs`,
|
|
90
|
+
`os_sound_output`; `os_display_list`, `os_display_set`; `os_keyboard_status`, `os_keyboard_layouts` (with a `search`
|
|
91
|
+
applied here, since ic lists every layout xkb knows), `os_keyboard_set`; `os_drives_list`, `os_drive_import` and
|
|
92
|
+
`os_drive_eject`. Reads are gated like the listing, every change behind `sandboxes`; reads and short changes have a
|
|
93
|
+
deadline, and an import, which takes minutes for a big drive, has none and holds the sandbox it copies into in
|
|
94
|
+
flight, like any ic flow on it. ic's own exit codes are said in words: no screen on the server edition, a Wi-Fi
|
|
95
|
+
network that needs its password, a drive that would not fit. A Wi-Fi password reaches ic on its stdin
|
|
96
|
+
(`--password-stdin`, `runIc`'s `input`), never its argv; it is cut out of whatever ic prints back, and the audit log
|
|
97
|
+
records only its length.
|
|
74
98
|
- **sync** (`src/sync/`): `sync setup` enrolls this machine and runs Mutagen against the sandbox: over ssh to its
|
|
75
99
|
sshd, reached through a loopback port tunnelled over a WebSocket, or, for a project whose sandbox container runs on
|
|
76
100
|
this machine's own Docker engine, through Docker itself (below). It keeps a folder two-way synced (a project
|
|
@@ -582,6 +606,19 @@ whose it is.
|
|
|
582
606
|
cutover and the first quarter hour of probation, and past that while the sandbox does not answer, then resumed; a
|
|
583
607
|
pause somebody made is left alone. Only this environment's records count: a distro syncing a sandbox the Windows side
|
|
584
608
|
swaps is not paused.
|
|
609
|
+
- (2026-10-15) **Nothing downloaded replaces a binary until the release vouches for it**
|
|
610
|
+
([`release-verify.ts`](src/release/release-verify.ts)). Before an upgrade runs the new agent (and the Windows launcher
|
|
611
|
+
beside it), before ic is put in place ([`tools/ic-binary.ts`](src/device/tools/ic-binary.ts)), and before setup
|
|
612
|
+
installs the launcher, the agent fetches the release's `SHA256SUMS` and `SHA256SUMS.sig`, checks the signature
|
|
613
|
+
against the release key built into it (the desktop updater's minisign key, held equal to `tauri.conf.json` by a
|
|
614
|
+
test), and then the file's SHA-256 against the sums. The minisign reader is
|
|
615
|
+
[`release-signature.ts`](src/release/release-signature.ts): Ed25519 from `node:crypto`, the prehashed `ED` signatures
|
|
616
|
+
Tauri's signer writes and the legacy `Ed` ones, and the signature over the trusted comment, which must name
|
|
617
|
+
`SHA256SUMS` and this release's version. From `SIGNED_SUMS_FROM` (1.338.0) on, a release without the signature is
|
|
618
|
+
refused; an older one has no signature, and its sums list only the installers, so nothing moves onto an agent or
|
|
619
|
+
ic that old. Anything that does not check out is deleted unrun, the binary in place stays, and the reason is the
|
|
620
|
+
upgrade's failure (or ic's stale note). Rotating the key needs a release that agents with the old key can still
|
|
621
|
+
verify.
|
|
585
622
|
- **A self-update is kept undoable** ([`agent-trial.ts`](src/agent-trial.ts)). The replaced binary stays as
|
|
586
623
|
`<bin>.previous` until the new agent has run for ten minutes and written its "healthy since" marker. Three starts of a
|
|
587
624
|
release within ten minutes, none ended by a stop, restart or upgrade, put `.previous` back (at that start, or at the
|
|
@@ -690,6 +727,8 @@ The keeper now puts an unneeded sandbox to sleep and wakes it when somebody open
|
|
|
690
727
|
for every sleeper on this side, each under its own report key), starting each one asked for through `ic sandbox
|
|
691
728
|
start`. It asks every fifteen seconds while anything sleeps, and every five minutes otherwise, to catch a sleep made
|
|
692
729
|
by hand. It runs whatever the keeper's switch says, so a sandbox asleep when the keeper was switched off still wakes.
|
|
730
|
+
The desktop app on the same computer runs the same command the moment its workspace page has asked
|
|
731
|
+
(`--source app`, the app's `sandbox_wakes.rs`), so a sandbox opened there need not wait for this round.
|
|
693
732
|
- **The setting** is this environment's `sandboxSleepMinutes` in `machine.json`: absent means 30, `0` means never. Set
|
|
694
733
|
it with `intentic-machine sandbox sleep-after <minutes|off>` and read it with `sleep-after status`.
|
|
695
734
|
`intentic-machine sandbox sleep <slug>` puts one sandbox to sleep now. An `ic` without the verbs is said once and
|
|
@@ -777,9 +816,72 @@ lists `machine.log`(`.1`), `machine-update.log`, `audit.jsonl`(`.1`) and ic's pe
|
|
|
777
816
|
the audit `tool` and `failedOnly`. It is gated like `sandbox_logs`. `describe` names the `ic` that answers (path,
|
|
778
817
|
version, file time) and the `IC_*`/`INTENTIC_*` variables in the agent's environment, secrets by length only.
|
|
779
818
|
|
|
819
|
+
### The keyring
|
|
820
|
+
|
|
821
|
+
[intentic-keyring](../keyring) is a process of its own beside this agent (2026-10-16): the agent installs it, keeps
|
|
822
|
+
it running and relays to it, and holds no vault key and no value. `intentic-machine keyring setup` puts the
|
|
823
|
+
`intentic-keyring` asset of this agent's own release into `bin/` (checked against the release's signed `SHA256SUMS`, as
|
|
824
|
+
the launcher is; a from-source agent copies `_devices/keyring/dist-bin`'s build instead), makes `intentic-askpass` a
|
|
825
|
+
hard link beside it, registers a login entry of its own (`keyring`, `IntenticKeyring` on Windows, running
|
|
826
|
+
`intentic-keyring serve`), starts it, and sets up the vault with a passphrase typed twice without echo (or once on
|
|
827
|
+
stdin with `--passphrase-stdin`), plus Windows Hello where there is one unless `--no-hello`. Nothing in the agent's
|
|
828
|
+
own upgrade, its `bin/` sweep or its rollback touches the keyring's files: it moves to a new release only through
|
|
829
|
+
`keyring upgrade`, which downloads and checks the new binary, asks the running keyring (which asks the person), and only
|
|
830
|
+
then swaps it, keeping `.previous` and putting it back if the new one does not answer.
|
|
831
|
+
|
|
832
|
+
- **Relayed for the sandbox** ([`keyring/relay.ts`](src/keyring/relay.ts)): the contract's `keyring*` procedures go
|
|
833
|
+
to the keyring's pipe and back, with the sandbox named from the link the call came in on (`shares`, `copies`) and an
|
|
834
|
+
inbox item naming another sandbox refused (`not-shared`). No keyring answering is a `no-keyring` refusal where the
|
|
835
|
+
answer has room for one, an empty answer for `copies`, `syncOutbox` and `syncDeliver`, and an error for `syncState`; a
|
|
836
|
+
keyring's own no on those is an error carrying its code, so it is never read as "none". Nothing in a request or an
|
|
837
|
+
answer is logged.
|
|
838
|
+
- **Advertised** as the `keyring` feature only while the binary is in `bin/` and its pipe answers `state` within
|
|
839
|
+
1.5 s, the answer kept for 30 s ([`keyring/feature.ts`](src/keyring/feature.ts)).
|
|
840
|
+
- **Marked**: what `run_command` and `app_start` start carries `INTENTIC_AGENT_COMMAND=1`, for the keyring's record
|
|
841
|
+
and prompts. A hint, not a boundary: the agent's command can unset it.
|
|
842
|
+
- **Hardened** (Windows, `keyring harden`): the plain keyring is stopped and its login entry removed first, so the
|
|
843
|
+
vault the service takes is the last one written; then one UAC prompt runs `intentic-keyring service install`, which
|
|
844
|
+
moves the vault under the startup task that runs the keyring as `LOCAL SERVICE` (the keyring's README says how), and
|
|
845
|
+
the login entry becomes `intentic-keyring session`. Hardened mode is read from the marker the install writes for this
|
|
846
|
+
user (`%ProgramData%\Intentic\Keyring\<SID>.hardened`). `keyring upgrade` on a hardened keyring also runs the new
|
|
847
|
+
binary's `service install`, elevated, so the service's own copy follows.
|
|
848
|
+
- `status` and `doctor` show one keyring row (not installed, not running, not set up, locked or unlocked), and
|
|
849
|
+
`status --json` and `doctor --json` carry it as `keyring: { installed, running, setUp, locked?, unlockedUntil?, version? }`.
|
|
850
|
+
|
|
851
|
+
Every `keyring` command takes `--json` and prints one line: `{ "ok": true, … }`, or `{ "ok": false, "code", "refusal" }`
|
|
852
|
+
with exit code 1, `code` being the keyring's refusal code or `usage`/`failed` for this command's own. A value is typed
|
|
853
|
+
twice without echo, or piped with `--stdin` (one trailing newline dropped), and sealed to the vault's inbox key before
|
|
854
|
+
it reaches the pipe.
|
|
855
|
+
|
|
856
|
+
| Command | Success output |
|
|
857
|
+
|---|---|
|
|
858
|
+
| `keyring setup [--passphrase-stdin] [--no-hello]` | `{ "ok": true, "path", "askpass": { "installed", "path"? }, "autostart", "setUp": true, "alreadySetUp", "state"? }` |
|
|
859
|
+
| `keyring status` | `{ "ok": true, "installed", "running", "setUp", "state"?, "askpass": { "installed", "path"? }, "hardened" }` |
|
|
860
|
+
| `keyring unlock [--minutes N]` / `keyring lock` | `{ "ok": true, "unlockedUntil" }` / `{ "ok": true }` |
|
|
861
|
+
| `keyring list` | `{ "ok": true, "entries": [EntryInfo], "backends" }` |
|
|
862
|
+
| `keyring add NAME [--stdin] [rules] [--backend B --ref R [--field F] [--attribute A]] [--replace]` | `{ "ok": true, "name" }` |
|
|
863
|
+
| `keyring edit NAME [--stdin] [rules] [--any-field on\|off]` | `{ "ok": true, "name", "valueChanged" }` |
|
|
864
|
+
| `keyring remove NAME` | `{ "ok": true, "name" }` |
|
|
865
|
+
| `keyring share NAME --sandbox URL\|LINK_ID --mode each-use\|while-here\|copy` | `{ "ok": true, "name", "sandbox", "machine", "mode", "fingerprint" }` |
|
|
866
|
+
| `keyring unshare NAME --sandbox URL\|LINK_ID` | `{ "ok": true, "name", "sandbox" }` |
|
|
867
|
+
| `keyring backend 1password\|bitwarden\|keepassxc [--cli] [--account] [--token-entry] [--password-entry] [--database] [--key-file]` | `{ "ok": true, "backend" }` |
|
|
868
|
+
| `keyring askpass install\|uninstall\|status` | `{ "ok": true, "installed", "path"?, "variables", "file"?, "profile"? }` |
|
|
869
|
+
| `keyring sync status` | `{ "ok": true, "sync": { "key", "peers", "revision" } }` |
|
|
870
|
+
| `keyring upgrade` | `{ "ok": true, "upgraded", "from", "to" }` |
|
|
871
|
+
| `keyring harden` (Windows) | `{ "ok": true, "service": "IntenticKeyring", "autostart" }` |
|
|
872
|
+
| `keyring uninstall` | `{ "ok": true, "removed", "vault", "hardened" }` |
|
|
873
|
+
|
|
874
|
+
The rule flags are `--kind password|text`, `--program P`, `--package P`, `--host H`, `--askpass M` (each repeatable;
|
|
875
|
+
on `edit` a list flag replaces the whole list, and a lone `""` empties it), `--username U`, `--remember-minutes N`, and
|
|
876
|
+
`--any-field` (`add`) or `--any-field on|off` (`edit`). `edit` with neither a rule flag nor `--stdin` asks for a new
|
|
877
|
+
value. `askpass install` sets `SSH_ASKPASS`, `SSH_ASKPASS_REQUIRE=prefer`, `SUDO_ASKPASS` and `GIT_ASKPASS` for the
|
|
878
|
+
user: through `[Environment]::SetEnvironmentVariable` on Windows, and on Linux and macOS in
|
|
879
|
+
`~/.config/environment.d/intentic-askpass.conf`, printing the `export` lines a shell profile needs. `keyring
|
|
880
|
+
uninstall` keeps the vault in `~/.intentic/keyring`.
|
|
881
|
+
|
|
780
882
|
## Key files
|
|
781
883
|
|
|
782
|
-
- [src/commands.ts](src/commands.ts) — the CLI: `device`, `sync`, `sandbox`, `run`, `status`, `doctor`, `upgrade`, `updates`, `uninstall`.
|
|
884
|
+
- [src/commands.ts](src/commands.ts) — the CLI: `device`, `sync`, `keyring`, `sandbox`, `run`, `status`, `doctor`, `upgrade`, `updates`, `uninstall`.
|
|
783
885
|
- [src/resident/resident.ts](src/resident/resident.ts) — the resident process that holds links, pairings and WSL distros; `supervision.ts` beside it starts and stops it through whatever restarts this environment's agent.
|
|
784
886
|
- [src/device/mcp.ts](src/device/mcp.ts) — every tool a sandbox can call on this device.
|
|
785
887
|
- [src/device/policy.ts](src/device/policy.ts) — scope checks and the file-root boundary.
|
|
@@ -790,6 +892,8 @@ version, file time) and the `IC_*`/`INTENTIC_*` variables in the agent's environ
|
|
|
790
892
|
- [src/environments/machine.ts](src/environments/machine.ts) — the Windows root and its WSL children.
|
|
791
893
|
- [src/upkeep/manifest.ts](src/upkeep/manifest.ts) — what the device upkeep finds and puts right; `reconcile.ts` runs it.
|
|
792
894
|
- [src/resident/watchdog.ts](src/resident/watchdog.ts) — the agent's own hang watchdog.
|
|
895
|
+
- [src/release/release-verify.ts](src/release/release-verify.ts) — a downloaded release binary checked against the release's signed `SHA256SUMS`.
|
|
896
|
+
- [src/keyring/commands.ts](src/keyring/commands.ts) — `intentic-machine keyring …`; `service.ts` installs, starts, upgrades and removes intentic-keyring, `relay.ts` carries the sandbox's `keyring*` calls to its pipe.
|
|
793
897
|
|
|
794
898
|
## Commands
|
|
795
899
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-trial.d.ts","sourceRoot":"","sources":["../src/agent-trial.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAexB,eAAO,MAAM,gBAAgB,QAAc,CAAC;AAE5C,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAOnC,QAAA,MAAM,iBAAiB;;;;;;;iBAAkE,CAAC;AAC1F,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAK5D,eAAO,MAAM,SAAS,WAAY,WAAW,GAAG,SAAS,WAAW,MAAM,OAAO,MAAM,OAAO,MAAM,KAAG,WAGrG,CAAC;AAIH,eAAO,MAAM,aAAa,WAAY,WAAW,OAAO,MAAM,KAAG,WAG/D,CAAC;AAIH,eAAO,MAAM,YAAY,WAAY,WAAW,WAAW,MAAM,GAAG,SAAS,OAAO,MAAM,KAAG,OAC2D,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-trial.d.ts","sourceRoot":"","sources":["../src/agent-trial.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAexB,eAAO,MAAM,gBAAgB,QAAc,CAAC;AAE5C,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAOnC,QAAA,MAAM,iBAAiB;;;;;;;iBAAkE,CAAC;AAC1F,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAK5D,eAAO,MAAM,SAAS,WAAY,WAAW,GAAG,SAAS,WAAW,MAAM,OAAO,MAAM,OAAO,MAAM,KAAG,WAGrG,CAAC;AAIH,eAAO,MAAM,aAAa,WAAY,WAAW,OAAO,MAAM,KAAG,WAG/D,CAAC;AAIH,eAAO,MAAM,YAAY,WAAY,WAAW,WAAW,MAAM,GAAG,SAAS,OAAO,MAAM,KAAG,OAC2D,CAAC;AASzJ,eAAO,MAAM,aAAa,QAAe,MAAM,KAAG,OAAO,CAAC,IAAI,CAM7D,CAAC;AAiEF,MAAM,WAAW,KAAK;IAClB,QAAQ,CAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpC,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,IAAI,CAAC;CAC5C;AAOD,eAAO,MAAM,UAAU,QAAe,GAAG,KAAG,OAAO,CAAC,KAAK,GAAG,UAAU,CAsBrE,CAAC;AAIF,eAAO,MAAM,sBAAsB,QAAe,GAAG,KAAG,OAAO,CAAC,OAAO,CAMtE,CAAC"}
|
package/dist/agent-trial.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { existsSync } from "node:fs";
|
|
2
|
-
import {
|
|
2
|
+
import { rename, rm } from "node:fs/promises";
|
|
3
3
|
import { join } from "node:path";
|
|
4
4
|
import { errorMessage } from "@intentic/base/errors";
|
|
5
|
-
import { writeFileAtomic } from "@intentic/base/fs";
|
|
6
|
-
import { DEV_VERSION } from "@intentic/sandbox-contract";
|
|
5
|
+
import { readJsonIfExists, writeFileAtomic } from "@intentic/base/fs";
|
|
6
|
+
import { DEV_VERSION } from "@intentic/sandbox-contract/state/versions";
|
|
7
7
|
import { z } from "zod";
|
|
8
8
|
import { baseDir } from "./config.js";
|
|
9
9
|
import { readMachineConfig, updateMachineConfig } from "./environments/machine.js";
|
|
@@ -26,18 +26,8 @@ export const withCleanExit = (ledger, pid) => ({
|
|
|
26
26
|
starts: ledger.starts.map((start) => (start.pid === pid ? { ...start, clean: true } : start)),
|
|
27
27
|
});
|
|
28
28
|
export const crashLooping = (ledger, healthy, now) => ledger.version !== healthy && ledger.starts.filter((start) => start.clean !== true && now - start.at < HEALTHY_AFTER_MS).length >= CRASH_LOOP_STARTS;
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
try {
|
|
32
|
-
const parsed = raw === undefined ? undefined : schema.safeParse(JSON.parse(raw));
|
|
33
|
-
return parsed?.success === true ? parsed.data : undefined;
|
|
34
|
-
}
|
|
35
|
-
catch {
|
|
36
|
-
return undefined;
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
|
-
const readLedger = async () => await readJson(startsPath, StartLedgerSchema);
|
|
40
|
-
const readHealthyVersion = async () => (await readJson(healthyPath, HealthySchema))?.version;
|
|
29
|
+
const readLedger = async () => await readJsonIfExists(startsPath, StartLedgerSchema);
|
|
30
|
+
const readHealthyVersion = async () => (await readJsonIfExists(healthyPath, HealthySchema))?.version;
|
|
41
31
|
const writeLedger = async (ledger) => await writeFileAtomic(startsPath, JSON.stringify(ledger));
|
|
42
32
|
export const recordStopped = async (pid) => {
|
|
43
33
|
const ledger = await readLedger();
|
package/dist/agent-trial.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-trial.js","sourceRoot":"","sources":["../src/agent-trial.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"agent-trial.js","sourceRoot":"","sources":["../src/agent-trial.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
import type { AutostartSpec } from "@intentic/local-agent";
|
|
2
2
|
export declare const MACHINE_AUTOSTART: AutostartSpec;
|
|
3
|
+
export declare const KEYRING_AUTOSTART: AutostartSpec;
|
|
4
|
+
export declare const KEYRING_SESSION_AUTOSTART: AutostartSpec;
|
|
3
5
|
//# sourceMappingURL=autostart.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autostart.d.ts","sourceRoot":"","sources":["../../src/autostart/autostart.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"autostart.d.ts","sourceRoot":"","sources":["../../src/autostart/autostart.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAM3D,eAAO,MAAM,iBAAiB,EAAE,aAc/B,CAAC;AAOF,eAAO,MAAM,iBAAiB,EAAE,aAW/B,CAAC;AAIF,eAAO,MAAM,yBAAyB,EAAE,aAKvC,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { keyringPaths } from "@intentic/keyring";
|
|
1
2
|
import { runLogPath } from "../config.js";
|
|
2
3
|
export const MACHINE_AUTOSTART = {
|
|
3
4
|
id: "intentic-machine",
|
|
@@ -8,6 +9,25 @@ export const MACHINE_AUTOSTART = {
|
|
|
8
9
|
launchAgent: { label: "dev.intentic.machine" },
|
|
9
10
|
detachedArgs: ["run"],
|
|
10
11
|
foregroundArgs: ["run", "--foreground"],
|
|
12
|
+
beforeSignInArgs: ["run", "--foreground", "--before-sign-in"],
|
|
11
13
|
failureNote: (reason) => `Couldn't register this device's agent to start at login (${reason}); it runs until this device restarts, and starts again with intentic-machine run. Its log is ${runLogPath}.`,
|
|
12
14
|
};
|
|
15
|
+
const keyringLog = keyringPaths().log;
|
|
16
|
+
export const KEYRING_AUTOSTART = {
|
|
17
|
+
id: "keyring",
|
|
18
|
+
windowsRunValue: "IntenticKeyring",
|
|
19
|
+
desktopName: "Intentic Keyring",
|
|
20
|
+
desktopComment: "The password vault on this computer: types and hands over secrets for your intentic sandboxes, at your word",
|
|
21
|
+
logPath: keyringLog,
|
|
22
|
+
launchAgent: { label: "dev.intentic.keyring" },
|
|
23
|
+
detachedArgs: ["serve"],
|
|
24
|
+
foregroundArgs: ["serve"],
|
|
25
|
+
failureNote: (reason) => `Couldn't register the keyring to start at login (${reason}); it runs until this computer restarts, and \`intentic-machine keyring setup\` starts it again. Its log is ${keyringLog}.`,
|
|
26
|
+
};
|
|
27
|
+
export const KEYRING_SESSION_AUTOSTART = {
|
|
28
|
+
...KEYRING_AUTOSTART,
|
|
29
|
+
desktopComment: "The intentic keyring's prompts and typing on this desktop, for the IntenticKeyring service that holds the vault",
|
|
30
|
+
detachedArgs: ["session"],
|
|
31
|
+
foregroundArgs: ["session"],
|
|
32
|
+
};
|
|
13
33
|
//# sourceMappingURL=autostart.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autostart.js","sourceRoot":"","sources":["../../src/autostart/autostart.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"autostart.js","sourceRoot":"","sources":["../../src/autostart/autostart.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK1C,MAAM,CAAC,MAAM,iBAAiB,GAAkB;IAC5C,EAAE,EAAE,kBAAkB;IACtB,eAAe,EAAE,iBAAiB;IAClC,WAAW,EAAE,wBAAwB;IACrC,cAAc,EAAE,yFAAyF;IAEzG,OAAO,EAAE,UAAU;IACnB,WAAW,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE;IAC9C,YAAY,EAAE,CAAC,KAAK,CAAC;IACrB,cAAc,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC;IAEvC,gBAAgB,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,kBAAkB,CAAC;IAC7D,WAAW,EAAE,CAAC,MAAM,EAAE,EAAE,CACpB,4DAA4D,MAAM,iGAAiG,UAAU,GAAG;CACvL,CAAC;AAKF,MAAM,UAAU,GAAG,YAAY,EAAE,CAAC,GAAG,CAAC;AAEtC,MAAM,CAAC,MAAM,iBAAiB,GAAkB;IAC5C,EAAE,EAAE,SAAS;IACb,eAAe,EAAE,iBAAiB;IAClC,WAAW,EAAE,kBAAkB;IAC/B,cAAc,EAAE,6GAA6G;IAC7H,OAAO,EAAE,UAAU;IACnB,WAAW,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE;IAC9C,YAAY,EAAE,CAAC,OAAO,CAAC;IACvB,cAAc,EAAE,CAAC,OAAO,CAAC;IACzB,WAAW,EAAE,CAAC,MAAM,EAAE,EAAE,CACpB,oDAAoD,MAAM,+GAA+G,UAAU,GAAG;CAC7L,CAAC;AAIF,MAAM,CAAC,MAAM,yBAAyB,GAAkB;IACpD,GAAG,iBAAiB;IACpB,cAAc,EAAE,iHAAiH;IACjI,YAAY,EAAE,CAAC,SAAS,CAAC;IACzB,cAAc,EAAE,CAAC,SAAS,CAAC;CAC9B,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type BeforeSignInState, type Footnote, type Item, type Log } from "@intentic/local-agent";
|
|
2
|
+
import type { CommandContext } from "@stricli/core";
|
|
3
|
+
interface SwitchReading {
|
|
4
|
+
readonly item: Item;
|
|
5
|
+
readonly said: string;
|
|
6
|
+
readonly later: readonly Footnote[];
|
|
7
|
+
}
|
|
8
|
+
export declare const beforeSignInStatus: (state: BeforeSignInState) => SwitchReading;
|
|
9
|
+
export declare const retireBeforeSignIn: (note: Log) => Promise<void>;
|
|
10
|
+
export declare const beforeSignInCommand: import("@stricli/core").Command<CommandContext>;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=before-sign-in.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"before-sign-in.d.ts","sourceRoot":"","sources":["../../src/autostart/before-sign-in.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqC,KAAK,iBAAiB,EAAW,KAAK,QAAQ,EAAE,KAAK,IAAI,EAAE,KAAK,GAAG,EAAW,MAAM,uBAAuB,CAAC;AACxJ,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAoBpD,UAAU,aAAa;IACnB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,SAAS,QAAQ,EAAE,CAAC;CACvC;AAED,eAAO,MAAM,kBAAkB,UAAW,iBAAiB,KAAG,aA2B7D,CAAC;AAiBF,eAAO,MAAM,kBAAkB,SAAgB,GAAG,KAAG,OAAO,CAAC,IAAI,CAehE,CAAC;AAEF,eAAO,MAAM,mBAAmB,iDAuC9B,CAAC"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { beforeSignIn, BeforeSignInRefused, explain } from "@intentic/local-agent";
|
|
2
|
+
import { buildCommand, machineUi } from "../cli-ui.js";
|
|
3
|
+
import { machineLauncher } from "../resident/supervision.js";
|
|
4
|
+
import { MACHINE_AUTOSTART } from "./autostart.js";
|
|
5
|
+
const word = (value) => {
|
|
6
|
+
if (value === "on" || value === "off" || value === "status") {
|
|
7
|
+
return value;
|
|
8
|
+
}
|
|
9
|
+
throw new Error(`${value} is not on, off or status.`);
|
|
10
|
+
};
|
|
11
|
+
export const beforeSignInStatus = (state) => {
|
|
12
|
+
if (state === "on") {
|
|
13
|
+
return {
|
|
14
|
+
item: { tone: "ok", name: "before sign-in", meta: "on" },
|
|
15
|
+
said: "When this PC starts, Windows starts this agent before anyone signs in: sandboxes can run commands and read and write files here from then on. The screen tools wait for a sign-in, when the agent of the signed-in session takes over.",
|
|
16
|
+
later: [["turn it off", "intentic-machine before-sign-in off"]],
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
if (state === "stale") {
|
|
20
|
+
return {
|
|
21
|
+
item: { tone: "warn", name: "before sign-in", meta: "on, from an older install" },
|
|
22
|
+
said: "Windows starts this agent before sign-in, but with what an older install or another folder wrote: it may start a copy of the agent that is no longer here.",
|
|
23
|
+
later: [["write it again", "intentic-machine before-sign-in on"]],
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
if (state === "unknown") {
|
|
27
|
+
return {
|
|
28
|
+
item: { tone: "warn", name: "before sign-in", meta: "unreadable" },
|
|
29
|
+
said: "Windows holds a start for before sign-in that this agent could not read back.",
|
|
30
|
+
later: [["write it again", "intentic-machine before-sign-in on"]],
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
return {
|
|
34
|
+
item: { tone: "skip", name: "before sign-in", meta: "off" },
|
|
35
|
+
said: "This agent starts when somebody signs in on this PC. After a restart nobody came to (Windows Update restarts a PC at night by itself), sandboxes cannot reach it until somebody signs in.",
|
|
36
|
+
later: [["turn it on (Windows asks for permission)", "intentic-machine before-sign-in on"]],
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
const draw = (ui, reading) => {
|
|
40
|
+
ui.items([reading.item]);
|
|
41
|
+
ui.note(reading.said);
|
|
42
|
+
ui.later(reading.later);
|
|
43
|
+
};
|
|
44
|
+
const stopFor = (refused, turningOn) => {
|
|
45
|
+
const headline = turningOn ? "This agent does not start before sign-in." : "This agent still starts before sign-in.";
|
|
46
|
+
const fix = `intentic-machine before-sign-in ${turningOn ? "on" : "off"}, then answer Windows' prompt on this PC with Yes`;
|
|
47
|
+
return new Error(explain(headline, refused.message, fix));
|
|
48
|
+
};
|
|
49
|
+
export const retireBeforeSignIn = async (note) => {
|
|
50
|
+
const entry = beforeSignIn(MACHINE_AUTOSTART, machineLauncher());
|
|
51
|
+
if (entry === undefined || entry.state() === "off") {
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
note("Windows also starts this agent before sign-in; removing that asks Windows for permission on this PC.");
|
|
55
|
+
try {
|
|
56
|
+
await entry.disable();
|
|
57
|
+
}
|
|
58
|
+
catch (error) {
|
|
59
|
+
note(error instanceof BeforeSignInRefused
|
|
60
|
+
? `The start before sign-in stays (${error.message}): intentic-machine before-sign-in off removes it.`
|
|
61
|
+
: `The start before sign-in stays: ${String(error)}`);
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
export const beforeSignInCommand = buildCommand({
|
|
65
|
+
docs: {
|
|
66
|
+
brief: "Whether Windows starts this agent when the PC starts, before anyone signs in (Windows asks for permission to change it): on, off, or status",
|
|
67
|
+
},
|
|
68
|
+
parameters: {
|
|
69
|
+
positional: {
|
|
70
|
+
kind: "tuple",
|
|
71
|
+
parameters: [{ brief: "on, off or status (status unless given)", parse: word, optional: true, placeholder: "on|off|status" }],
|
|
72
|
+
},
|
|
73
|
+
},
|
|
74
|
+
async func(_flags, given) {
|
|
75
|
+
const ui = machineUi(this.process);
|
|
76
|
+
const entry = beforeSignIn(MACHINE_AUTOSTART, machineLauncher());
|
|
77
|
+
if (entry === undefined) {
|
|
78
|
+
ui.report("intentic · start before sign-in");
|
|
79
|
+
ui.quiet(process.platform === "win32"
|
|
80
|
+
? "This install has no intentic-launch.exe beside the agent, which the start before sign-in runs through. Re-run the install command from a sandbox's card."
|
|
81
|
+
: "Nothing to switch here: on Linux the agent's systemd unit starts at boot whether anyone is signed in or not.");
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
if (given === "on" || given === "off") {
|
|
85
|
+
const turningOn = given === "on";
|
|
86
|
+
ui.act(turningOn ? "Asking Windows to start this agent before anyone signs in" : "Asking Windows to stop starting this agent before sign-in");
|
|
87
|
+
ui.note("Windows asks for permission on this PC's screen: answer it there.");
|
|
88
|
+
try {
|
|
89
|
+
await (turningOn ? entry.enable() : entry.disable());
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
throw error instanceof BeforeSignInRefused ? stopFor(error, turningOn) : error;
|
|
93
|
+
}
|
|
94
|
+
const now = entry.state();
|
|
95
|
+
ui.done(turningOn ? "This agent starts when the PC starts, before anyone signs in." : "This agent starts at the next sign-in, as before.");
|
|
96
|
+
draw(ui, beforeSignInStatus(now));
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
ui.report("intentic · start before sign-in");
|
|
100
|
+
draw(ui, beforeSignInStatus(entry.state()));
|
|
101
|
+
},
|
|
102
|
+
});
|
|
103
|
+
//# sourceMappingURL=before-sign-in.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"before-sign-in.js","sourceRoot":"","sources":["../../src/autostart/before-sign-in.ts"],"names":[],"mappings":"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"}
|
package/dist/commands.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AA0JnE,eAAO,MAAM,QAAQ,kDA4BnB,CAAC"}
|
package/dist/commands.js
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { explain } from "@intentic/local-agent";
|
|
2
2
|
import { buildRouteMap } from "@stricli/core";
|
|
3
|
+
import { beforeSignInCommand, retireBeforeSignIn } from "./autostart/before-sign-in.js";
|
|
3
4
|
import { buildCommand, machineUi } from "./cli-ui.js";
|
|
4
5
|
import { runLogPath } from "./config.js";
|
|
5
6
|
import { deviceCommands, deviceUninstall } from "./device/commands.js";
|
|
6
7
|
import { sandboxRoutes } from "./device/sandbox-cli.js";
|
|
7
8
|
import { environmentRoutes, updates } from "./environments/commands.js";
|
|
9
|
+
import { keyringCommands } from "./keyring/commands.js";
|
|
8
10
|
import { realMachineIo, upgradeMachine } from "./environments/machine-upgrade.js";
|
|
9
11
|
import { runForeground } from "./resident/resident.js";
|
|
10
12
|
import { readResident, restartResident, stopResident } from "./resident/supervision.js";
|
|
@@ -19,11 +21,12 @@ const run = buildCommand({
|
|
|
19
21
|
flags: {
|
|
20
22
|
foreground: { kind: "boolean", brief: "Run the agent in this terminal instead of the background" },
|
|
21
23
|
stop: { kind: "boolean", brief: "Stop the background agent" },
|
|
24
|
+
beforeSignIn: { kind: "boolean", brief: "Run as the agent this PC starts before anyone signs in", default: false, hidden: true },
|
|
22
25
|
},
|
|
23
26
|
},
|
|
24
27
|
async func(flags) {
|
|
25
28
|
if (flags.foreground) {
|
|
26
|
-
await runForeground((message) => void this.process.stdout.write(`[${new Date().toISOString()}] ${message}\n`));
|
|
29
|
+
await runForeground((message) => void this.process.stdout.write(`[${new Date().toISOString()}] ${message}\n`), { beforeSignIn: flags.beforeSignIn });
|
|
27
30
|
return;
|
|
28
31
|
}
|
|
29
32
|
const ui = machineUi(this.process);
|
|
@@ -99,6 +102,7 @@ const uninstall = buildCommand({
|
|
|
99
102
|
ui.act("Removing the agent from this device");
|
|
100
103
|
ui.note(await syncUninstall(ui, undefined, { forGood: true }));
|
|
101
104
|
ui.note(await deviceUninstall(ui, undefined, { forGood: true }));
|
|
105
|
+
await retireBeforeSignIn(ui.note);
|
|
102
106
|
const still = await readResident();
|
|
103
107
|
if (still === undefined) {
|
|
104
108
|
ui.done("Removed the agent. Nothing intentic stays running on this device.");
|
|
@@ -118,9 +122,14 @@ export const commands = buildRouteMap({
|
|
|
118
122
|
routes: syncCommands,
|
|
119
123
|
docs: { brief: "Mirror a sandbox's files and ports onto this device (the Desktop sync card)" },
|
|
120
124
|
}),
|
|
125
|
+
keyring: buildRouteMap({
|
|
126
|
+
routes: keyringCommands,
|
|
127
|
+
docs: { brief: "The password vault on this computer, which types and hands over secrets for your sandboxes at your word" },
|
|
128
|
+
}),
|
|
121
129
|
sandbox: sandboxRoutes,
|
|
122
130
|
environment: environmentRoutes,
|
|
123
131
|
run,
|
|
132
|
+
"before-sign-in": beforeSignInCommand,
|
|
124
133
|
status,
|
|
125
134
|
doctor,
|
|
126
135
|
version,
|
package/dist/commands.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAW,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAuB,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAA0B,aAAa,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAC1G,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACxF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon-base.d.ts","sourceRoot":"","sources":["../src/daemon-base.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"daemon-base.d.ts","sourceRoot":"","sources":["../src/daemon-base.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAejD,MAAM,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,WAAW,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAG5F,eAAO,MAAM,UAAU,eAAgB,MAAM,KAAG,MAAM,GAAG,SAGxD,CAAC;AAIF,eAAO,MAAM,cAAc,eAAgB,MAAM,KAAG,SAAS,MAAM,EASlE,CAAC;AAIF,eAAO,MAAM,eAAe,SAAgB,MAAM,cAAc,MAAM,cAAa,SAAS,KAAW,OAAO,CAAC,OAAO,CAWrH,CAAC;AAIF,MAAM,WAAW,UAAU;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CAC3B;AAID,eAAO,MAAM,iBAAiB,eAAsB,MAAM,cAAa,SAAS,KAAW,OAAO,CAAC,UAAU,CAc5G,CAAC;AAEF,MAAM,WAAW,UAAU;IAEvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB,QAAQ,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,SAAS,CAAC;IAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACzC;AAMD,eAAO,MAAM,gBAAgB,eAAsB,MAAM,QAAQ,MAAM,QAAQ,WAAW,OAAO,UAAU,KAAG,OAAO,CAAC,QAAQ,CA0B7H,CAAC;AAMF,eAAO,MAAM,qBAAqB,QAAS,CAAC;AAI5C,MAAM,WAAW,YAAY;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC/B;AAUD,MAAM,WAAW,WAAW;IACxB,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7D,QAAQ,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAChD;AAID,eAAO,MAAM,iBAAiB,QAAS,GAAG,cAAa,SAAS,QAAe,MAAM,MAAM,KAAc,WA8BxG,CAAC;AAGF,MAAM,WAAW,MAAM,CAAC,CAAC,SAAS,YAAY;IAC1C,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACzB;AAGD,eAAO,MAAM,cAAc,GAAU,CAAC,SAAS,YAAY,YAAY,SAAS,CAAC,EAAE,SAAS,WAAW,KAAG,OAAO,CAAC,SAAS,MAAM,CAAC,CAAC,CAAC,EAAE,CAC7B,CAAC"}
|
package/dist/daemon-base.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { anySignal } from "@intentic/base/async";
|
|
2
|
-
import { SANDBOX_ID
|
|
2
|
+
import { SANDBOX_ID } from "@intentic/sandbox-contract/ids/sandbox-id";
|
|
3
|
+
import { sandboxIdFromUrl } from "@intentic/sandbox-contract/ids/hostnames";
|
|
3
4
|
import { redeemWhileWarming } from "@intentic/sandbox-contract/pairing-redeem";
|
|
4
5
|
import { localDaemonUrlInsecure } from "@intentic/sandbox-run";
|
|
5
6
|
const PROBE_TIMEOUT_MS = 1500;
|
package/dist/daemon-base.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon-base.js","sourceRoot":"","sources":["../src/daemon-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"daemon-base.js","sourceRoot":"","sources":["../src/daemon-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAQ/D,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAM9B,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,UAAkB,EAAsB,EAAE;IACjE,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;IAC3C,OAAO,KAAK,KAAK,SAAS,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7E,CAAC,CAAC;AAIF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,UAAkB,EAAqB,EAAE;IACpE,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC5C,MAAM,EAAE,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;IAClC,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;QACnB,OAAO,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IACD,MAAM,KAAK,GAAG,sBAAsB,CAAC,EAAE,CAAC,CAAC;IAEzC,OAAO,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACtD,CAAC,CAAC;AAIF,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAE,IAAY,EAAE,UAAkB,EAAE,SAAS,GAAc,KAAK,EAAoB,EAAE;IACtH,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,IAAI,SAAS,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;QACtG,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA4B,CAAC;QAChE,OAAO,IAAI,CAAC,SAAS,KAAK,UAAU,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC,CAAC;AAWF,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,UAAkB,EAAE,SAAS,GAAc,KAAK,EAAuB,EAAE;IAC7G,MAAM,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;IACxC,KAAK,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;QACpD,IAAI,KAAK,KAAK,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAC7C,CAAC;QAED,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,MAAM,eAAe,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC;YACpF,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC5C,CAAC;IACL,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AACjE,CAAC,CAAC;AAcF,MAAM,yBAAyB,GAAG,MAAM,CAAC;AAGzC,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EAAE,UAAkB,EAAE,IAAY,EAAE,IAAiB,EAAE,GAAe,EAAqB,EAAE;IAC9H,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,GAAG,GAAG,EAAE,CAAC,SAAS,EAAE,QAAQ,GAAG,EAAE,EAAE,OAAO,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC;IACrF,MAAM,OAAO,GAAG,MAAM,kBAAkB,CACpC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE;QAEvB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAC;QACrD,OAAO,KAAK,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,EAAE,CAAC,CAAC;IACrH,CAAC,EACD;QACI,QAAQ;QACR,OAAO;QAEP,SAAS,EAAE,yBAAyB;QACpC,OAAO,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE;YACtB,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,mCAAmC,GAAG,CAAC,MAAM,GAAG,CAAC;YAC/H,GAAG,CAAC,GAAG,KAAK,KAAK,IAAI,eAAe,OAAO,IAAI,QAAQ,IAAI,CAAC,CAAC;QACjE,CAAC;KACJ,CACJ,CAAC;IACF,IAAI,OAAO,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACjC,MAAM,OAAO,CAAC,KAAK,CAAC;IACxB,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,OAAO,CAAC,QAAQ,CAAC;AAC5B,CAAC,CAAC;AAMF,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAwB5C,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,GAAQ,EAAE,SAAS,GAAc,KAAK,EAAE,GAAG,GAAiB,IAAI,CAAC,GAAG,EAAe,EAAE;IACnH,MAAM,IAAI,GAAG,IAAI,GAAG,EAAmB,CAAC;IACxC,OAAO;QACH,OAAO,EAAE,KAAK,EAAE,OAAqB,EAAmB,EAAE;YACtD,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC;YACjB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACzC,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,qBAAqB,CAAC,EAAE,CAAC;gBAC5F,OAAO,IAAI,CAAC,IAAI,CAAC;YACrB,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YACvE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YAE9D,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;gBACnD,OAAO,OAAO,CAAC,IAAI,CAAC;YACxB,CAAC;YACD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBAChB,GAAG,CAAC,KAAK,OAAO,CAAC,SAAS,2BAA2B,OAAO,CAAC,IAAI,sCAAsC,OAAO,CAAC,UAAU,GAAG,CAAC,CAAC;YAClI,CAAC;iBAAM,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC5B,GAAG,CAAC,KAAK,OAAO,CAAC,SAAS,oEAAoE,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC;YACnH,CAAC;YACD,OAAO,OAAO,CAAC,IAAI,CAAC;QACxB,CAAC;QAED,MAAM,EAAE,CAAC,SAAiB,EAAQ,EAAE;YAChC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACjC,IAAI,IAAI,EAAE,KAAK,KAAK,IAAI,EAAE,CAAC;gBACvB,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAClD,CAAC;QACL,CAAC;KACJ,CAAC;AACN,CAAC,CAAC;AASF,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAA0B,QAAsB,EAAE,KAAkB,EAAiC,EAAE,CACtI,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC"}
|
package/dist/device/commands.js
CHANGED
|
@@ -2,7 +2,7 @@ import { rm } from "node:fs/promises";
|
|
|
2
2
|
import { pollUntil } from "@intentic/base/async";
|
|
3
3
|
import { plural } from "@intentic/base/format";
|
|
4
4
|
import { explain } from "@intentic/local-agent";
|
|
5
|
-
import { PeerEnrollmentAnswerSchema } from "@intentic/sandbox-contract";
|
|
5
|
+
import { PeerEnrollmentAnswerSchema } from "@intentic/sandbox-contract/schemas/peer-enrollment";
|
|
6
6
|
import { buildCommand, machineUi, sandboxUrlOf } from "../cli-ui.js";
|
|
7
7
|
import { postWhileWarming } from "../daemon-base.js";
|
|
8
8
|
import { completeSetup, prepareSetup } from "../install.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/device/commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAoC,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAE,0BAA0B,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/device/commands.ts"],"names":[],"mappings":"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"}
|
package/dist/device/config.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { DeviceScopes } from "@intentic/sandbox-contract";
|
|
1
|
+
import type { DeviceScopes } from "@intentic/sandbox-contract/schemas/capabilities";
|
|
2
2
|
import { type PeerLinkState, type PeerOutage } from "@intentic/sandbox-contract/peer-dial";
|
|
3
3
|
export declare const configPath: string;
|
|
4
4
|
export declare const auditPath: string;
|