Skip to content

Expose agent loop UX#7

Merged
ryanbaumann merged 1 commit into
mainfrom
agent/agent-loop-ux
Jul 8, 2026
Merged

Expose agent loop UX#7
ryanbaumann merged 1 commit into
mainfrom
agent/agent-loop-ux

Conversation

@ryanbaumann

@ryanbaumann ryanbaumann commented Jul 8, 2026

Copy link
Copy Markdown
Owner

What changed

  • Added typed AgentLoopState with loop phase, turn, HITL status, stop rule, and state backend metadata.
  • Surfaced the bounded agent loop in Studio so generation/refinement shows research, plan, render, review, and refine state instead of a generic spinner.
  • Locked the web app to gemini-3.5-flash for research/planning and gemini-3.1-flash-lite-image for image generation/refinement, including stale localStorage migration.
  • Limited web resolution choices to 0.5K, 1K, and 2K.
  • Added a portable-skill-only --image-model option so CLI users can choose gemini-3.1-flash-image for quality-focused runs while keeping Lite Image as the default.
  • Documented the browser-local state boundary and the Gemini Enterprise Interactions API adapter path using previousInteractionId.
  • Updated README, architecture docs, learnings, skill docs, changelog, and the create-step SVG asset.

Why

The app already had a two-agent research/image pipeline, but the agent loop contract was implicit and the web app still had stale paths for alternate image models and higher resolutions. This makes state preservation, HITL iteration, research-vs-image separation, model routing, and portability explicit and enforceable.

Verification

  • npm run lint
  • npm test
  • npm run build
  • python3 -m py_compile skill/infographic-agent/portable_infographic.py
  • git diff --check

Note: npm test passes while existing jsdom/downloadService warnings still print during the download tests. Direct portable_infographic.py --help requires google-genai to be installed because the script imports the SDK before parsing flags.

@ryanbaumann ryanbaumann force-pushed the agent/agent-loop-ux branch from 95f61ee to 6c4edb4 Compare July 8, 2026 19:53
@ryanbaumann ryanbaumann marked this pull request as ready for review July 8, 2026 19:53
@ryanbaumann ryanbaumann merged commit 48a830b into main Jul 8, 2026
2 checks passed
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