Skip to content

perf(demo): reach the first tool call sooner - #658

Open
anthonyiscoding wants to merge 3 commits into
mainfrom
perf/demo-faster-first-tool-call
Open

perf(demo): reach the first tool call sooner#658
anthonyiscoding wants to merge 3 commits into
mainfrom
perf/demo-faster-first-tool-call

Conversation

@anthonyiscoding

@anthonyiscoding anthonyiscoding commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

The landing demo spent over two seconds typing the prompt and another two on
the opening thought before anything happened. Both are preamble; the run is
what the reader came for.

  • Prompt types at 18ms/char instead of 42.
  • The opening thought streams on a 1.1s total budget, via a small
    paceOver(body, totalMs) helper, instead of a per-token cadence whose
    length decided the duration.

Measured on the built demo, from page load: prompt fully typed at 1.6s, the
opening thought streams in 1.09s, engine::workers::list on screen at 5.1s.

The website vendors this build, so it ships alongside
iii-hq/iii#2029 there.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Enhancements
    • Improved the introductory thought-streaming animation for a smoother, more consistent presentation.
    • Increased prompt typing speed to make demo interactions feel more responsive.

The prompt is preamble; the run is what the reader came for. Type it at
18ms/char instead of 42, and stream the opening thought on a 1.1s budget
instead of a per-token cadence that stretched it past 2s.

Measured on the built demo: prompt typed at 1.67s, the opening thought
streams in 1.09s, and engine::workers::list is on screen at 5.18s.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@vercel

vercel Bot commented Jul 31, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
workers Ready Ready Preview Jul 31, 2026 4:43pm
workers-tech-spec Ready Ready Preview Jul 31, 2026 4:43pm

Request Review

@github-actions

Copy link
Copy Markdown
Contributor

skill-check — worker

0 verified, 51 skipped (no docs/).

Layer Result
structure
vale
ai
render

Four for four. Nicely done.

@coderabbitai

coderabbitai Bot commented Jul 31, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

@anthonyiscoding, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 32 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 44dedaeb-35b9-4b8c-a540-1ea679979878

📥 Commits

Reviewing files that changed from the base of the PR and between e28cec5 and cea7e9c.

📒 Files selected for processing (2)
  • console/web/src/demo/LandingDemo.tsx
  • console/web/src/demo/demo.css
📝 Walkthrough

Walkthrough

The demo now calculates opening-thought streaming pace for a 1.1-second duration and types prompts at a shorter per-character interval.

Changes

Demo timing

Layer / File(s) Summary
Opening thought streaming
console/web/src/demo/scenario.ts
Adds paceOver, defines OPENING_THOUGHT, and applies a calculated 1.1-second streaming pace to the first thought.
Prompt typing speed
console/web/src/demo/usePlayer.ts
Reduces the prompt typing interval from 42 ms to 18 ms per character.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

  • iii-hq/workers#624: Introduced the demo files whose timing behavior this change updates.

Poem

A rabbit watches tokens flow,
At measured pace, they softly go.
Prompts now type with quicker feet,
The opening thought stays timed and neat.
Hop, hop—the demo is complete!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main performance change: reducing the time to the first tool call.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
🛠️ Fix failing CI checks 💡
  • Fix failing CI checks
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch perf/demo-faster-first-tool-call

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

The close button was ink on cream, indistinguishable from pause and replay
beside it. Alert red now, with black rather than cream text on it: at 10px the
label needs the contrast (7.8:1 against the red, versus 4.0:1 for white).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
anthonyiscoding added a commit to iii-hq/iii that referenced this pull request Jul 31, 2026
Picks up iii-hq/workers#658: the close control in the embedded console's
window chrome is alert red on black, so the way out is the loudest thing in
the frame.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Raw #ff0026 read as an error rather than as the way out. Mixed 72% with a
near-black in oklab it lands on #b8071f, which stays the loudest thing in the
chrome bar while letting white hold 6.8:1 at the 10px the bar uses. Derived
from the alert token and identical in both themes, since the control means the
same thing in each.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
anthonyiscoding added a commit to iii-hq/iii that referenced this pull request Jul 31, 2026
Picks up iii-hq/workers#658: the close control sits at #b8071f instead of raw
alert red, still the loudest thing in the window chrome.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
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