Skip to content

docs(openui-chat): document Pokee AI as an OpenAI-compatible provider - #938

Open
devin-ai-integration[bot] wants to merge 1 commit into
mainfrom
devin/1786028354-pokee-isaac-openui-chat
Open

docs(openui-chat): document Pokee AI as an OpenAI-compatible provider#938
devin-ai-integration[bot] wants to merge 1 commit into
mainfrom
devin/1786028354-pokee-isaac-openui-chat

Conversation

@devin-ai-integration

Copy link
Copy Markdown

What

examples/openui-chat already routes through any OpenAI-compatible endpoint via OPENAI_BASE_URL, so running it on Pokee-Isaac needs no code change — only config. This documents that config and adds the missing env.example (other examples like hands-on-table-chat already ship one).

Pokee's /v1/chat/completions is OpenAI-shaped and the only model id is pokee-isaac (verified against api.pokee.ai/v1/models and a live completion), so runTools streaming in src/app/api/chat/route.ts works unchanged.

Changes

  • examples/openui-chat/README.md: Pokee example alongside the existing OpenRouter one (OPENAI_BASE_URL=https://api.pokee.ai/v1, OPENAI_MODEL=pokee-isaac)
  • examples/openui-chat/env.example: new, with the OpenAI defaults and the Pokee override commented out

Test Plan

  • Verified locally

Live pokee-isaac completion through api.pokee.ai/v1 succeeded; the example app was then run against Pokee end to end (recording shared with the requester).

Checklist

  • I linked a related issue, if applicable
  • I updated docs/README when needed
  • I considered backwards compatibility

Link to Devin session: https://app.devin.ai/sessions/0226b24eba644deaa4af169313f98838
Requested by: @zahlekhan

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
@devin-ai-integration

Copy link
Copy Markdown
Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment, CI, and merge conflict monitoring

@vercel

vercel Bot commented Aug 6, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated (UTC)
openui-docs Ready Ready Preview Aug 6, 2026 3:03pm

Request Review

@devin-ai-integration

Copy link
Copy Markdown
Author

Runtime testing: OpenUI chat example against Pokee AI (pokee-isaac)

Ran examples/openui-chat locally with the README's Pokee config (OPENAI_BASE_URL=https://api.pokee.ai/v1, OPENAI_MODEL=pokee-isaac) and exercised three prompts end-to-end in the browser. The documented config workspokee-isaac streams OpenUI Lang and the components render, and tool-calling via the OpenAI SDK's runTools is compatible with Pokee.

Prompt Result
Stock market analysis ✅ full dashboard
Plan a trip to Japan ✅ full itinerary
Latest sports news ⚠️ intermittent empty response

✅ "Stock market analysis" — parallel tool calls → table + chart

8 × get_stock_price (one per ticker), values matching the mocked bases in route.ts (NVDA $878.83, AAPL $188.15):

Stock dashboard
Stock bar chart

⚠️ Pre-existing issue this surfaced (not caused by this PR)

"Latest sports news" intermittently (~50%) returns a completely empty assistant bubble with no error. pokee-isaac keeps re-calling search_web until runTools hits DEFAULT_MAX_CHAT_COMPLETIONS = 10; the route's end handler then emits a bare [DONE] having forwarded zero content chunks.

Empty response
search_web called 10 times

Reproduced at the API level: attempt 1 → 3 tool calls / 288 content chunks (fine); attempt 2 → 16 tool calls / 0 content chunks (empty).

Two independent hardening options for route.ts, both out of scope for this docs change:

  1. In the end handler, if zero content chunks were forwarded, emit an error/fallback chunk instead of a bare [DONE].
  2. Pass an explicit maxChatCompletions and/or nudge the system prompt to answer after tool results.
✅ "Plan a trip to Japan" — no-loop path

One search_web call, six accordions, numbered day-by-day timeline:

Japan itinerary
Japan tips

Caveats
  • The example's tools are mocked, so content is fabricated by design; assertions target structure and mocked value ranges.
  • Dev server logs were not captured, so "no server errors" is unverified.

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