Commit Graph
213 Commits
Author SHA1 Message Date
ciregenz a5f5f90f81 [eric] agents: extract the consolidated-thinking pill + ticker into manager/streaming/thinking (Phase B) 2026-06-23 01:20:49 -07:00
ciregenz ca03e0a86b [eric] agents: fix thinking-pill per-turn token delta (baselines unified into TurnState) + harness pin 2026-06-23 01:17:10 -07:00
ciregenz 86a46449db [eric] agents: thread the hot turn streaming state through a TurnState model (Phase A slice 2, nonlocals eliminated) 2026-06-23 01:02:24 -07:00
ciregenz dace271407 [eric] agents: thread the turn's thinking state through a ThinkingState model (Phase A slice 1) 2026-06-23 00:56:19 -07:00
ciregenz 88b994d0b3 [eric] agents: extract capacity-retry backoff decision into error_classify.capacity_retry_wait + tests 2026-06-23 00:14:01 -07:00
ciregenz 439d925183 [eric] agents: extract token-accounting + compaction trigger into manager/context_budget + 10-test suite 2026-06-23 00:01:51 -07:00
ciregenz 21f59ae602 [eric] agents: extract the sensitive-path permission gate into manager/permissions/path_gate + 17-test suite 2026-06-22 23:54:05 -07:00
ciregenz 556f388552 [eric] agents: extract resume + duplicate session builders into manager/session/lifecycle + tests 2026-06-22 23:29:15 -07:00
ciregenz 03d66fdd5f [eric] agents: move apply_context_window into manager/session (drops the _ prefix, convention-clean) 2026-06-22 23:26:25 -07:00
ciregenz 4dfb5a83a8 [eric] agents: extract turn_label + group_meta into manager/metadata (convention-clean) + tests 2026-06-22 23:13:53 -07:00
ciregenz 0539dc2be0 [eric] agents: extract generate_title into manager/metadata (convention-clean) + test 2026-06-22 23:05:30 -07:00
ciregenz 5ec91e5fce [eric] agents: lift browser fast-path out of agent_manager into manager/browser_dispatch 2026-06-22 14:44:22 -07:00
ciregenz 05432cd680 [eric] approvals: Always-approve persists per-tool via a shared read/write slot resolver 2026-06-22 04:00:09 -07:00
ciregenz 7b3e298037 [eric] sessions: purge all per-session memory on close/delete via one chokepoint 2026-06-22 02:51:42 -07:00
ciregenz 1d7fadca77 [eric] tokens: pill shows new (uncached) tokens not cached re-reads; context bar keeps full size 2026-06-21 21:40:33 -07:00
ciregenz a0af8476c2 [eric] settings-agent: thread selected_setting_ids -> focused context block so users can point the agent at specific Settings rows (targeting aid, not a gate) 2026-06-19 03:01:05 -07:00
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