humanish 0.97.0 → 0.99.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/AGENTS.md +86 -79
- package/CONTRIBUTING.md +7 -2
- package/README.md +8 -1
- package/dist/actor-contract.d.ts +35 -1
- package/dist/actor-contract.js +38 -0
- package/dist/actor-contract.js.map +1 -1
- package/dist/adapter-extension.js +1 -0
- package/dist/adapter-extension.js.map +1 -1
- package/dist/browser-control-client.d.ts +14 -0
- package/dist/browser-control-client.js +134 -0
- package/dist/browser-control-client.js.map +1 -0
- package/dist/browser-control-dispatcher.d.ts +14 -0
- package/dist/browser-control-dispatcher.js +109 -0
- package/dist/browser-control-dispatcher.js.map +1 -0
- package/dist/browser-control-protocol.d.ts +371 -0
- package/dist/browser-control-protocol.js +155 -0
- package/dist/browser-control-protocol.js.map +1 -0
- package/dist/browser-control-transport.d.ts +24 -0
- package/dist/browser-control-transport.js +156 -0
- package/dist/browser-control-transport.js.map +1 -0
- package/dist/comms-lease-store.d.ts +1 -0
- package/dist/comms-lease-store.js +9 -3
- package/dist/comms-lease-store.js.map +1 -1
- package/dist/computer-use-actor.d.ts +2 -2
- package/dist/computer-use-actor.js +6 -1
- package/dist/computer-use-actor.js.map +1 -1
- package/dist/computer-use.d.ts +23 -1
- package/dist/computer-use.js +253 -70
- package/dist/computer-use.js.map +1 -1
- package/dist/cua-actor-lab.d.ts +6 -1
- package/dist/cua-actor-lab.js +55 -15
- package/dist/cua-actor-lab.js.map +1 -1
- package/dist/cua-executor-error.d.ts +31 -0
- package/dist/cua-executor-error.js +48 -0
- package/dist/cua-executor-error.js.map +1 -0
- package/dist/cua-provider-error.d.ts +12 -0
- package/dist/cua-provider-error.js +28 -0
- package/dist/cua-provider-error.js.map +1 -0
- package/dist/desktop-session.js +3 -1
- package/dist/desktop-session.js.map +1 -1
- package/dist/doctor-lab.d.ts +2 -0
- package/dist/doctor-lab.js +26 -8
- package/dist/doctor-lab.js.map +1 -1
- package/dist/e2b-desktop-executor.d.ts +1 -24
- package/dist/e2b-desktop-executor.js +2 -127
- package/dist/e2b-desktop-executor.js.map +1 -1
- package/dist/e2b-terminal-lab.js +1 -0
- package/dist/e2b-terminal-lab.js.map +1 -1
- package/dist/frame-signature.d.ts +24 -0
- package/dist/frame-signature.js +128 -0
- package/dist/frame-signature.js.map +1 -0
- package/dist/guest-bootstrap.d.ts +43 -0
- package/dist/guest-bootstrap.js +240 -0
- package/dist/guest-bootstrap.js.map +1 -0
- package/dist/guest-browser-tools.d.ts +8 -0
- package/dist/guest-browser-tools.js +66 -0
- package/dist/guest-browser-tools.js.map +1 -0
- package/dist/guest-chromium-text.d.ts +27 -0
- package/dist/guest-chromium-text.js +281 -0
- package/dist/guest-chromium-text.js.map +1 -0
- package/dist/guest-desktop-executor.d.ts +22 -0
- package/dist/guest-desktop-executor.js +177 -0
- package/dist/guest-desktop-executor.js.map +1 -0
- package/dist/guest-desktop-native.d.ts +14 -0
- package/dist/guest-desktop-native.js +131 -0
- package/dist/guest-desktop-native.js.map +1 -0
- package/dist/guest-runtime-desktop.d.ts +35 -0
- package/dist/guest-runtime-desktop.js +231 -0
- package/dist/guest-runtime-desktop.js.map +1 -0
- package/dist/guest-runtime-main.d.ts +1 -0
- package/dist/guest-runtime-main.js +31 -0
- package/dist/guest-runtime-main.js.map +1 -0
- package/dist/guest-runtime-revision.d.ts +1 -0
- package/dist/guest-runtime-revision.js +3 -0
- package/dist/guest-runtime-revision.js.map +1 -0
- package/dist/guest-runtime.d.ts +25 -0
- package/dist/guest-runtime.js +96 -0
- package/dist/guest-runtime.js.map +1 -0
- package/dist/lab-config.js +10 -3
- package/dist/lab-config.js.map +1 -1
- package/dist/lab-engine.js +6 -0
- package/dist/lab-engine.js.map +1 -1
- package/dist/lab-summary.d.ts +2 -0
- package/dist/lab-summary.js +5 -0
- package/dist/lab-summary.js.map +1 -1
- package/dist/local-agent-cli.js +1 -1
- package/dist/local-agent-cli.js.map +1 -1
- package/dist/local-firecracker-desktop.d.ts +13 -0
- package/dist/local-firecracker-desktop.js +166 -0
- package/dist/local-firecracker-desktop.js.map +1 -0
- package/dist/local-firecracker-study.d.ts +9 -0
- package/dist/local-firecracker-study.js +93 -0
- package/dist/local-firecracker-study.js.map +1 -0
- package/dist/local-runtime-config.d.ts +6 -0
- package/dist/local-runtime-config.js +56 -0
- package/dist/local-runtime-config.js.map +1 -0
- package/dist/local-runtime-host.d.ts +31 -0
- package/dist/local-runtime-host.js +128 -0
- package/dist/local-runtime-host.js.map +1 -0
- package/dist/local-runtime-release.d.ts +5 -0
- package/dist/local-runtime-release.js +18 -0
- package/dist/local-runtime-release.js.map +1 -0
- package/dist/local-runtime-ssh.d.ts +21 -0
- package/dist/local-runtime-ssh.js +89 -0
- package/dist/local-runtime-ssh.js.map +1 -0
- package/dist/local-runtime.d.ts +24 -0
- package/dist/local-runtime.js +131 -0
- package/dist/local-runtime.js.map +1 -0
- package/dist/observer-app.html +4 -4
- package/dist/pricing.d.ts +22 -1
- package/dist/pricing.js +22 -0
- package/dist/pricing.js.map +1 -1
- package/dist/program.js +26 -0
- package/dist/program.js.map +1 -1
- package/dist/restricted-codex-participant-policy.d.ts +39 -0
- package/dist/restricted-codex-participant-policy.js +69 -0
- package/dist/restricted-codex-participant-policy.js.map +1 -0
- package/dist/restricted-codex-participant-run.d.ts +20 -0
- package/dist/restricted-codex-participant-run.js +78 -0
- package/dist/restricted-codex-participant-run.js.map +1 -0
- package/dist/restricted-codex-participant.d.ts +14 -0
- package/dist/restricted-codex-participant.js +178 -0
- package/dist/restricted-codex-participant.js.map +1 -0
- package/dist/restricted-codex-session.d.ts +2 -2
- package/dist/restricted-codex-session.js +34 -26
- package/dist/restricted-codex-session.js.map +1 -1
- package/dist/run-detail.js +4 -2
- package/dist/run-detail.js.map +1 -1
- package/dist/run.d.ts +12 -5
- package/dist/run.js +17 -1
- package/dist/run.js.map +1 -1
- package/dist/shared-world-lab.js +2 -2
- package/dist/shared-world-lab.js.map +1 -1
- package/dist/study-analysis-job.d.ts +2 -2
- package/dist/study-analysis-validation.d.ts +14 -14
- package/dist/study-costs.js +6 -0
- package/dist/study-costs.js.map +1 -1
- package/dist/tui-app.js +37 -37
- package/docs/architecture/browser-control.md +117 -0
- package/docs/architecture/guest-desktop.md +87 -0
- package/docs/architecture/local-browser-runtime.md +147 -0
- package/docs/architecture/restricted-codex-analysis.md +8 -4
- package/docs/architecture/runtime-broker-core.md +30 -0
- package/docs/contracts/schemas.md +1 -1
- package/docs/goals/current.md +26 -9
- package/docs/product/open-source-install-experience.md +7 -0
- package/docs/ramp/README.md +28 -13
- package/docs/release/0.98.0-local-browser-studies.md +31 -0
- package/docs/release/0.99.0-local-browser-mac.md +34 -0
- package/package.json +4 -2
- package/skills/humanish/SKILL.md +23 -3
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# 0.99.0 — Local browser studies on Apple Silicon Macs
|
|
2
|
+
|
|
3
|
+
Explicit local browser labs now run on M3-or-newer Macs through Lima/VZ and
|
|
4
|
+
ARM64 Firecracker desktops. The same scheduler, Observer recordings and automatic
|
|
5
|
+
analysis used on Linux remain in place. Codex and its file-backed ChatGPT login
|
|
6
|
+
stay on the Mac; E2B and OpenAI API keys are unnecessary for the account route.
|
|
7
|
+
Inference remains remote and uses account quota, with unknown dollar cost.
|
|
8
|
+
|
|
9
|
+
Install Lima 2.2 or newer and use native ARM64 Node. `humanish runtime setup`
|
|
10
|
+
creates a dedicated Linux host, installs Docker there and downloads the pinned
|
|
11
|
+
ARM64 image with size/hash verification. Docker Desktop is not required. The
|
|
12
|
+
first live local run can perform the same setup; status and doctor remain
|
|
13
|
+
read-only. See the [setup guide](../architecture/local-browser-runtime.md).
|
|
14
|
+
|
|
15
|
+
The host mounts no Mac directories. Standard OpenSSH forwards browser control
|
|
16
|
+
and the selected loopback app port. Each participant retains its own VM and
|
|
17
|
+
private state volume. Closing a study removes participant resources and keeps
|
|
18
|
+
the reusable Lima host; `limactl stop humanish-runtime` stops it when idle.
|
|
19
|
+
Native Codex discovery also handles hoisted npm packages correctly.
|
|
20
|
+
|
|
21
|
+
An installed candidate on an M5 Max passed first-attempt public runtime setup,
|
|
22
|
+
cache reuse and a two-participant study with distinct app-side saves, overlapping
|
|
23
|
+
sessions, verified recordings and complete automatic analysis. Established Mac
|
|
24
|
+
desktop close/cancel/controller-death cleanup passed. Focused real Linux checks
|
|
25
|
+
of the shared lifecycle cover cancellation after creation and after start but before guest readiness, plus
|
|
26
|
+
recovery when Docker creates a container but its reply is lost; Lima cleanup has
|
|
27
|
+
separate regression coverage. These are scoped observations, not a capacity or
|
|
28
|
+
cold-install performance benchmark.
|
|
29
|
+
|
|
30
|
+
This remains browser-only with explicit lab configuration. Local inboxes,
|
|
31
|
+
camera/microphone support and simpler default onboarding follow separately.
|
|
32
|
+
Larger cohorts, smaller/Intel Macs, sleep/wake, keychain-only login, full-study
|
|
33
|
+
cancellation and forced controller death during startup remain unqualified.
|
|
34
|
+
Existing Linux and hosted labs retain their configuration and providers.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "humanish",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.99.0",
|
|
4
4
|
"description": "Open-source-safe CLI for persona simulation, observer review, and public-safe feedback drafts.",
|
|
5
5
|
"author": "Daniel G Wilson <daniel@danielgwilson.com>",
|
|
6
6
|
"keywords": [
|
|
@@ -76,13 +76,15 @@
|
|
|
76
76
|
"tui:smoke": "node scripts/tui-smoke.mjs",
|
|
77
77
|
"tui:test": "pnpm --filter humanish-tui test",
|
|
78
78
|
"release:dogfood": "node scripts/release-dogfood.mjs",
|
|
79
|
+
"browser-control:proof": "node scripts/browser-control-proof.mjs",
|
|
79
80
|
"docs:generate": "tsx scripts/generate-cli-docs.ts",
|
|
80
81
|
"docs:check": "tsx scripts/generate-cli-docs.ts --check",
|
|
81
82
|
"observer:browser:proof": "node scripts/observer-browser-proof.mjs",
|
|
82
83
|
"observer:iframe:proof": "node scripts/observer-iframe-proof.mjs",
|
|
83
84
|
"observer:chrome:proof": "node scripts/observer-chrome-proof.mjs",
|
|
84
85
|
"observer:reliability:proof": "node scripts/observer-reliability-proof.mjs",
|
|
85
|
-
"tui:connections:proof": "python3 scripts/tui-connections-proof.py"
|
|
86
|
+
"tui:connections:proof": "python3 scripts/tui-connections-proof.py",
|
|
87
|
+
"guest-desktop:proof": "node scripts/guest-desktop-proof.mjs"
|
|
86
88
|
},
|
|
87
89
|
"repository": {
|
|
88
90
|
"type": "git",
|
package/skills/humanish/SKILL.md
CHANGED
|
@@ -95,9 +95,10 @@ exact returned path, not a basename that could resolve to another manifest.
|
|
|
95
95
|
|
|
96
96
|
## Choosing a findings analyst
|
|
97
97
|
|
|
98
|
-
Analysis is separate from the participant.
|
|
99
|
-
|
|
100
|
-
|
|
98
|
+
Analysis is separate from the participant. Hosted and manual defaults use the
|
|
99
|
+
OpenAI API with its own admission budget. An explicitly local browser study with
|
|
100
|
+
a Codex participant defaults to a separate Codex account analyst. To select that
|
|
101
|
+
restricted Codex ChatGPT account analyst on other supported studies,
|
|
101
102
|
set `review.analysis.provider: codex` or pass `analyze --provider codex` on a
|
|
102
103
|
completed recording. This uses remote inference and the qualified CLI/login,
|
|
103
104
|
not local inference or the participant's existing conversation. See
|
|
@@ -112,6 +113,25 @@ local evidence/configuration only; `doctor --lab` checks setup without a model
|
|
|
112
113
|
request. Inspect a failed attempt before explicitly retrying `--provider codex
|
|
113
114
|
--rerun`. Opening Observer never starts analysis.
|
|
114
115
|
|
|
116
|
+
## Local browser setup
|
|
117
|
+
|
|
118
|
+
On Linux x64 with a local rootful Docker Engine, KVM and TUN, an `app-url` lab can
|
|
119
|
+
set `execution.target: local` and `actors[0].type: local-agent` with
|
|
120
|
+
`localAgent: codex`. It uses the supported Codex ChatGPT login, not E2B or an
|
|
121
|
+
OpenAI API key. Inference is remote and consumes account quota. Existing hosted
|
|
122
|
+
labs stay hosted; never silently change their execution or billing provider.
|
|
123
|
+
|
|
124
|
+
Use `humanish runtime status --json` and `humanish doctor --lab <path> --json`
|
|
125
|
+
for read-only setup inspection. `humanish runtime setup` downloads and verifies
|
|
126
|
+
the pinned runtime; a live local run also prepares it automatically. The normal
|
|
127
|
+
`humanish lab run <path>` command and TUI use the same study runner and Observer.
|
|
128
|
+
See [the complete example and limits](../../docs/architecture/local-browser-runtime.md).
|
|
129
|
+
|
|
130
|
+
Local browsers currently require a loopback app URL with an explicit port above
|
|
131
|
+
1023, use a 960×720 Chromium desktop, and reject inbox/media declarations. Mac
|
|
132
|
+
setup is not integrated. Do not claim that installing the CLI also installs
|
|
133
|
+
Docker or makes these prerequisites available.
|
|
134
|
+
|
|
115
135
|
## Format Stack
|
|
116
136
|
|
|
117
137
|
When creating or editing Humanish files:
|