Commit Graph
147 Commits
Author SHA1 Message Date
ciregenz 1a4cccf3cd [eric] settings-agent: always-on SettingsRead/SettingsWrite MCP server + guarded /api/settings-meta endpoint, wired into every run 2026-06-19 02:47:38 -07:00
ciregenz 4ae97e5de0 [eric] throttle: emit rate_limited on exhausted backoff + muted auto-clearing pill (no error card)
(cherry picked from commit 03a9233b860683ae0f9d15b9e9efda32763c7d41)
2026-06-19 00:25:55 -07:00
ciregenz 40c863e9cf [eric] integrations: add GitHub MCP (remote http server + one-click OAuth)
(cherry picked from commit 901e3bf98244d3e599db5f3f05f4dc2ce943888e)
2026-06-19 00:25:54 -07:00
ciregenz db6c5c4d9d [eric] agents: idempotent id-keyed message commit so a stop racing the SDK envelope can't append a duplicate reply 2026-06-18 18:44:25 -07:00
ciregenz c1503eae97 [eric] agents: make Stop instant: commit the partial + free the task before the slow SDK teardown, and ignore a superseded task's late teardown 2026-06-18 18:24:54 -07:00
ciregenz a716b43df1 [eric] agents: after a mid-stream stop, rebuild history from session.messages so resume/follow-ups see the partial reply 2026-06-18 04:36:23 -07:00
ciregenz 9a622c48e2 [eric] agents: keep the partial reply when a stream is stopped mid-flight 2026-06-18 04:00:47 -07:00
ciregenz 8c93d42226 [eric] phase2: fire connect offer on MCPSearch/MCPList (not just loop), 8s preflight, render below the reply 2026-06-17 00:30:42 -07:00
ciregenz 78c0971e88 [eric] phase2: wire in-task MCP connect offer into the ToolSearch loop-breaker (suggest-only, slug-matched) 2026-06-16 22:34:28 -07:00
ciregenz 3998a8d6d9 [eric] sessions: get_all_sessions promotes only disk sessions the layout still cards, so deleted chats stop resurrecting on reopen 2026-06-16 04:44:15 -07:00
ciregenz a99e310940 [eric] diagnostics: attach secret-scrubbed 9router stderr tail to model_error telemetry (was masked 'check stderr') 2026-06-16 04:35:54 -07:00
ciregenz 07ef98f7e5 [eric] approvals: persist tool policy on Always-approve (set_always_allow through the approval path) 2026-06-16 04:00:08 -07:00
AidanandGitHub d2d0ce74aa [aidan] ux/app-builder-dashboard: improve app builder dashboard (#89)
* [aidan] ux: when agent creates app always opens in dashboard

* [aidan] enhancement: app editing ui mimicing browseragents

* [aidan] ui/ux: when building app window appears immediately

* [aidan]: app view spacing dashboard mimicing browser

* [aidan] ux: app error agent loop

* [aidan] fix: remove duplicate logic
2026-06-16 03:44:40 -07:00
ciregenz 131b3136eb [eric] sessions: get_all_sessions reads disk too so imported (and post-restart) dashboard cards render instead of blank 2026-06-16 03:03:28 -07:00
ciregenz 3bf1b0da79 [eric] mcp: break the ToolSearch loop, redirect a stuck agent to MCPActivate for gated servers 2026-06-15 18:58:50 -07:00
ciregenz b0401b06d0 [eric] openai: route the thinking-slider effort param to gpt/codex (not just claude) 2026-06-15 14:46:48 -07:00
ciregenz 685314b313 [eric] free-trial: skip the idle cache-warm ping on the free lane (useless across rotating pool accounts, and it'd burn a run at idle) 2026-06-13 19:06:57 -07:00
ciregenz bf8b450e33 [eric] free-trial: tag the remaining per-query aux calls (turn-label, group-meta, cache-warm, preflight) so one query stays one run 2026-06-13 19:03:35 -07:00
ciregenz 846c13e8ad [eric] free-trial: tag title-gen with the session id so a query + its title-gen = one run 2026-06-13 18:52:51 -07:00
ciregenz 01df3cde17 [eric] free-trial: fresh task-id per query so each query is its own run (cancel or not) 2026-06-13 18:42:49 -07:00
ciregenz e4740b74c1 [eric] free-trial: pin the trial to Haiku end-to-end (desktop + subagent) so the CLI never sends effort 2026-06-13 17:38:06 -07:00
ciregenz c8a86cd3ff [eric] free-trial: set ENABLE_TOOL_SEARCH=auto on the proxy branch (tool-defer+cache_control 400) 2026-06-13 17:17:28 -07:00
ciregenz 8b6a65fc4b [eric] free-trial: tag free-lane calls with the session id so 1 task = 1 run 2026-06-13 16:03:02 -07:00
ciregenz 5291a4ae60 [aidan] merge #79: QoL, sidebar ui/ux, titles, text compaction, bug fixes 2026-06-13 02:06:54 -07:00
Aidan 7b88be7003 [aidan] ui/ux: hide noisy memory/mode from chat title, fix token bug
Drop the inline 'Memory N% full' pill from AgentChat and the mode label from AgentCard so the chat header stays quiet until tools are connected. Backend now emits agent:context_update after compact and clear so the session token counters reflect the trimmed history instead of stale pre-compact totals, with a new _estimate_post_compact_input helper and matching invariants in test_v2_invariants.
2026-06-13 00:40:19 -07:00
AidanandGitHub 08526b6149 [aidan] bug/feat: sidebar reordering, title improvements, openai gen bug (#76)
* [aidan] ui: sidebar reorder

* [aidan] ux: sidebar naming bug fix

* [aidan] ui: title changing improvements

* [aidan] ui/ux: aux title gen streams for cx/ route + agent writes meta.json first

- All aux LLM calls (chat title, turn label, group meta, dashboard name) now stream
  instead of using messages.create; 9router's cx/ subscription response translator
  drops content for GPT-5-family models on the non-streaming path but works per-event.
- aux_max_tokens_for floors GPT-5 budget at 4K so reasoning still leaves headroom for
  a label; non-reasoning models get the base 100.
- App Builder skill: write meta.json FIRST (step 1 of Quick start) so the app's name
  surfaces in the sidebar + ViewEditor header on the agent's first tool call instead
  of waiting until end-of-turn.
- Session-end sync_output_from_meta_json takes a fallback_name (= session.name) so an
  agent that never writes meta.json still leaves the app with the aux-LLM chat title
  rather than "Untitled App".
- Title display: truncateForTitle caps at 4 words / 30 chars; displayChatTitle picks
  the right Phase 1 placeholder by session.mode; normalizeSessionName strips legacy
  Agent-XXXX names at slice intake.
- Typewriter component (char-by-char delete-then-type) drives the chat header,
  dashboard card title, sidebar Apps entry, and ViewEditor TextField + description
  field; honors useReducedMotion.

* [aidan] tune: reduce gpt-5 aux token floor
2026-06-12 23:33:32 -07:00
ciregenz a1f390ef0f [eric] browser: claim only the user-picked card, not every dashboard card (fix 5cf6e2a) 2026-06-12 20:06:56 -07:00
ciregenz 5cf6e2a4b1 [eric] browser: honor the user's selected browser card instead of spawning a new one (selection now reaches sub-agent dispatch + is claimed for the task) 2026-06-12 17:31:46 -07:00
ciregenz 0a81bfa17a Merge PR #70 [Aidan] appbuilder: inject selected-app context into dashboard agent chat 2026-06-11 02:51:05 -07:00
ciregenz ddd0641cac [eric] merge free-trial + value-first onboarding (flag off, reorder gated so no-trial = today's flow)
# Conflicts:
#	frontend/src/app/pages/AgentChat/bubbles/MessageBubble.tsx
2026-06-10 23:20:18 -07:00
ciregenz 6b5f10e287 [eric] bash defaults to always-allow like other actions (catastrophic/scheduling/sensitive-path guards still prompt); drop the working status dot 2026-06-10 23:13:02 -07:00
AidanandGitHub e8e19661e6 Inject selected-app context into dashboard agent chat (#69)
When a user selects an App card on the dashboard via the "Select UI element" picker, thread the selected Output ids to the backend (mirroring the selected_browser_ids path) and inject a per-app context block into the system prompt: each app's absolute workspace path, entry point, meta.json, and a pointer to its SKILL.md. This lets the agent edit existing apps in place from the main view (the dashboard card's Vite runtime live-reloads on save) without switching to the Apps tab.
2026-06-10 21:29:02 -07:00
ciregenz 100d6491f7 [eric] models: track model errors (diagnostic) + friendly 'not on your plan' card for the 1211 unknown-model wall 2026-06-10 19:10:57 -07:00
ciregenz a126c42a07 [eric] free-trial: hand the wheel back when a real model is connected mid-trial (key or 9router sub) 2026-06-10 16:32:25 -07:00
ciregenz fb178648df [eric] free-trial: backend dispatch injection, hardware fingerprint, mint/clear, exhaustion upsell 2026-06-09 23:54:10 -07:00
Aidanandciregenz 0a704d4690 [aidan] chat: isolate branch history, fresh session on edit/switch (#62) 2026-06-09 22:29:31 -07:00
ciregenz 1be1ce581d [eric] providers: Fable 5 turns thinking off by omitting the param, not thinking:disabled (which 400s) 2026-06-09 14:06:18 -07:00
ciregenz 91073becec [eric] browser: finish via a Done(message) tool so the user gets a plain conversational reply, not the OUTCOME tag 2026-06-08 22:15:52 -07:00
ciregenz 110dc1c745 [eric] browser: fast-path emits a synthetic BrowserAgent tool-call/result so the 'Browser Agent' bubble always shows, even when the orchestrator is skipped 2026-06-08 13:07:12 -07:00
ciregenz 62758cc517 [eric] browser: fast-path brief ENTRY url flows into dispatch, new cards skip the google detour 2026-06-06 00:17:05 -07:00
ciregenz 92df6ea4f0 [eric] browser: send-probe gate catches focus-type payloads, batched Enter blocked while composer pending 2026-06-05 23:30:23 -07:00
ciregenz 6fd1047543 [eric] browser: mechanical verify-first gate on send-class recovery, probe verdict gates the retry in code 2026-06-05 22:55:05 -07:00
ciregenz 99ba826be2 [eric] backend: INFO logging visible in dev plus ms-level traces across the fast path 2026-06-05 16:12:32 -07:00
ciregenz 2c55d17f50 [eric] browser: dead-dashboard dispatches fail in 1s instead of burning turns, recovery skips systemic causes 2026-06-05 15:56:38 -07:00
ciregenz 6ac76d3dbd [eric] backend: aux-generated names get squeezed short, refusals fall back instead of becoming titles 2026-06-05 15:49:13 -07:00
ciregenz 84eeb2925e [eric] browser: three-way fast path, READ answers public pages via local fetch in seconds 2026-06-05 15:17:33 -07:00
ciregenz fe63ae63d7 [eric] browser: fast path sharpens tasks via aux brief and retries one recovery dispatch 2026-06-05 13:00:49 -07:00
ciregenz 8ee209a83c [eric] browser: fast path skips orchestrator for browser-only first messages 2026-06-05 12:02:17 -07:00
ciregenz 928df4f324 [eric] websearch: gate built-in tool by model route so subscription Claude stops 401ing 2026-06-03 18:15:30 -07:00
ciregenz 33f6e4598e [eric] web: subscription-OAuth WebSearch 401s on token rotation, so keep the reliable DuckDuckGo fallback for those users 2026-06-03 15:29:20 -07:00