feat(cli): alice-uta — trading lands on the CLI surface (cron stays MCP-only)#320
Merged
Conversation
…CP-only) Boundary review passed (director decision, 2026-06-11): broker mutations are deliberate product surface. New `uta` export over the global ToolCenter's trading group: account list / info / portfolio contract search / details / quote order list / place / modify / cancel position close git status / log / show / commit / push / sync (trading-as-git) market clock sim price-change (MockBroker only) cron is deliberately NOT exported — a structure test now pins that instead of the old 'no uta export yet' assertion. Shim copy added (byte-identical, argv[0]-self-detecting) and registered in shim.spec. Guidance sweep: openalice-cli skill gains the Trading section (resolve contract before any order, report every result), chat instruction teaches the four-CLI split, chat template description/README and the create-form i18n strings drop the 'CLI = data-only' framing. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
2 tasks
pull Bot
pushed a commit
to jinzaizhichi/OpenAlice
that referenced
this pull request
Jun 12, 2026
Headless sessions become reopenable + the ~/.openalice data root + sealed broker credentials + the UTA order lifecycle closes. release.yml tags v0.42.0-beta.1 + publishes the prerelease on master push. Highlights: - Headless runs are now real sessions: all four agent CLIs' session ids are captured from headless stdout while running, full output logs persist on disk, and a finished run reopens as a normal interactive session (resume-by-id). UI: collapsed "headless · N" tier under each workspace + output viewer in the Automation panel (TraderAlice#326). - User data moves to ~/.openalice (OPENALICE_HOME); broker credentials are sealed at rest (AES-256-GCM, machine-bound key, migration 0009); desktop relocates packaged data on first launch. - UTA order lifecycle closed: auto-sync poller + fill data + PnL invariant (TraderAlice#325); externally-placed orders observed as squashed [observed] commits with configurable cadence (TraderAlice#327); Alpaca error bodies surfaced, bybit spot+swap order sweep, listing-driven sync perf (TraderAlice#328). - CLI is the default workspace tool access; trading lands on the CLI surface as the alice-uta export family (TraderAlice#319, TraderAlice#320). - Self-host hardening: configurable ports, MCP loopback bind + lock, Docker self-host image, Guardian owns the Vite dev port (TraderAlice#303–TraderAlice#308, TraderAlice#322). - Market data: status-first settings page with coverage map (TraderAlice#323), hub FX table, keyless yfinance fallbacks, long-tail fetcher fixes (TraderAlice#310–TraderAlice#317). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
utaCLI export (alice-utabinary, byte-identical shim copy): trading reaches the CLI surface —account(list/info/portfolio),contract(search/details/quote),order(list/place/modify/cancel),position(close),git(status/log/show/commit/push/sync — the trading-as-git approval flow),market(clock),sim(price-change, MockBroker only).Follow-up to #319 (the alice-uta commit missed that merge).
Test plan
npx tsc --noEmitcleanpnpm test— 113 files / 1823 tests pass on top of current master (incl. new uta anti-rot specs + cron-off-every-export pin)Boundary touch
Trading. Broker mutations (placeOrder / modifyOrder / cancelOrder / closePosition) become reachable from every workspace shell in both CLI and MCP modes — per the director decision that agent trading is deliberate product surface, with trading-as-git as the approval flow. The bin dir is PATH-injected for all sessions, so there is no longer a workspace mode without trading capability.
🤖 Generated with Claude Code