Tags: U-C4N/U-Pool
Tags
Release U-Pool 0.4.0: permission switches and launch at sign-in.
Advanced options in the provider form now carry checkboxes that project one key
each onto the target CLI's own config, and Windows gets a launch-at-sign-in
switch in Settings.
Codex (config.toml root, never inside [model_providers.<slug>]):
- Bypass approvals & sandbox -> approval_policy = "never" plus
sandbox_mode = "danger-full-access", the pair
--dangerously-bypass-approvals-and-sandbox sets
- Live web search -> web_search = "live" (the [tools] boolean form parses but
Codex discards it)
Claude Code (settings.json):
- Bypass permission prompts -> permissions.defaultMode = "bypassPermissions",
the settings equivalent of --dangerously-skip-permissions
- Skip the bypass warning screen -> permissions.skipDangerousModePermissionPrompt
- Auto-accept file edits -> permissions.defaultMode = "acceptEdits"
- Trust MCP servers from the project -> enableAllProjectMcpServers
A checkbox owns its key while ticked and takes it back out when unticked. The
allow/deny/ask rules, a hand-picked approval_policy and any defaultMode U-Pool
does not itself write ("plan", "auto") are left alone; the Codex bypass pair is
only reclaimed when both halves are present, so a lone hand-written
sandbox_mode survives. import_live reads every flag back on first run, and a
permissions value that is not an object is refused with a warning rather than
replaced. Providers running wide open are badged in the list.
Launch at sign-in writes one REG_SZ value under HKCU\...\CurrentVersion\Run -
no elevation, no scheduled task, no shortcut - and removes it again when the
switch goes off. The command is quoted for CreateProcess and repointed at the
current build on every launch, but only ever repointed: an entry deleted
outside U-Pool stays deleted. A veto recorded by Task Manager is reported, not
cleared, and the switch still removes the entry. New settings.py keeps the
remembered choice in ~/.u-pool/settings.json.
Version is now single-sourced from upool.__version__.
Tests: 96 passing, including registry isolation so no run can touch the real
per-user startup entry.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>