Skip to content

Improve experience#3

Merged
Koukyosyumei merged 8 commits into
mainfrom
improve-experience
Jul 14, 2026
Merged

Improve experience#3
Koukyosyumei merged 8 commits into
mainfrom
improve-experience

Conversation

@Koukyosyumei

Copy link
Copy Markdown
Contributor

No description provided.

launcher="resident" brings agent sessions up detached, forcing a manual
tmux attach -t hunt per agent. Conductor now defaults watch=True for that
launcher: a background SessionWatcher polls for h5i-orch-<run>-<agent>
sessions and surfaces each as it appears — linked window when already
inside tmux, Windows Terminal tab on WSL, GUI terminal on a display, or a
printed attach hint headless. watch=False disables; a string (or
$H5I_TERMINAL) is a custom command template with {session}. Viewer
failures degrade to the hint and never fail the score.
Every resident-launcher score now narrates session status on stderr: a
watch-start line naming the viewer that will open, per-agent 'session up'
lines that always include the manual tmux attach command, 'session ended'
lines when an agent's tmux session goes away, and an explicit notice when
tmux is missing entirely.
…r dies

Agent.work/ask/review/revise now tell the session watcher a turn is in
flight (resident launcher only). The watcher warns once if the agent's
session hasn't appeared within a grace period (default 15s) or ended while
the turn is still pending — both point at 'h5i env shell <env> -- true' to
diagnose — instead of the score hanging with no output. This is the
SDK-side complement to h5i's new fail-closed env checks in hire and
LaunchResident.
Agents' first turns are gathered, so their tmux sessions surface in the
same watcher poll and the viewers spawned back-to-back — Windows Terminal
drops tabs dispatched near-simultaneously, leaving only one agent visible.
The watcher now waits for each viewer command to finish dispatching (up to
2s; long-lived terminals keep reaping in the background), treats a fast
non-zero exit as a failed viewer (degrading to the printed attach hint),
and pauses spawn_gap (0.5s) between opens in one batch.
Conductor(isolation=...) sets the run's default sandbox tier: every hire
inherits it unless it passes its own (or 'auto' to re-enable
auto-picking). Explicit tiers are fail-closed on hosts that cannot
enforce them — never silently downgraded.

Every example now pins isolation="supervised" so hired agents run
seccomp-gated and network-jailed instead of whatever tier the host
auto-picks; arena and ensemble also assert the floor across the roster
with preflight(min_isolation="supervised"), which catches resumed runs
whose envs predate the tier.
…cksort demo

All eight examples now accept the task as an optional CLI argument and
fall back to the same demo task, 'implement quicksort with pytest', so a
bare invocation always works. The previously hard-coded h5i-specific
tasks (judge_panel, tournament, pipeline, debate, custom_control_flow)
are parameterized: pipeline's architect designs the given task, debate
derives its question from it (simplest-vs-robust), and custom_control_flow
decomposes it into subtasks instead of triaging test hotspots. Verify
commands switch from 'cargo test --quiet' to 'pytest -q' to match the demo
task (submissions carry their own tests); the README notes to change
verify= when passing a task from another ecosystem.
Conductor.hire grows an effort= param (recorded on the roster seat; codex
sessions launch with -c model_reasoning_effort=<effort>, overriding the
box's config.toml). Every codex hire in the examples pins effort="medium"
so a user-level 'high' default doesn't slow the demos down; claude seats
stay effort-free since that adapter has no effort knob and fails closed.
@Koukyosyumei Koukyosyumei merged commit 53b5e1b into main Jul 14, 2026
7 checks passed
@Koukyosyumei Koukyosyumei deleted the improve-experience branch July 14, 2026 20:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant