Oh My Pi v17.2.13: Bedrock role_arn credential resolution, Cursor double-execute fix, GLM-5.2 support
Significant fixes across transports and providers: Bedrock role chaining via STS is now supported for multi-account and EKS/IRSA setups; Nitro-based EC2 instances are also detected. Cursor double-execution of settled tools is fixed in both the dialect projector and inband tool stream paths. DeepSeek Responses thinking-mode continuation after compaction is repaired. Catalog gains image-capable metadata for Muse Spark 1.2 and GLM-5.2-specific thinking tiers. New features include Exa MCP search, Cloudflare AI Gateway, and an improved omp update migration path.
@oh-my-pi/pi-agent-core
- Cursor re-execution: settled tools no longer re-execute when an owned dialect projector rebuilds toolCall blocks;
snapshotAssistantContentBlocknow copieskCursorExecResolved.
@oh-my-pi/pi-ai
- User-Agent: standardized on
omp/<version>via shared utility. - Bedrock/Cursor StreamOptions.headers: fixed — caller-supplied tracing/attribution headers were silently dropped.
- Antigravity Flash: hang fixed — after successful response headers with no SSE events, provider now cancels stalled body and fails over after 60 seconds (longer allowance for Pro reasoning starts).
- Cursor exec-bridge: ArkType validation fixed — undefined optional fields (
cwd,case,skip,timeout) are now dropped instead of written asvalue || undefined. - Cursor tools.format dialect:
wrapInbandToolStreamnow copieskCursorExecResolvedso agent-loop no longer double-executes settled bash/grep/todo calls. - Codex Responses Lite: fixed — requests for opaque codenames (e.g., Daybreak) now include
reasoning.context: "all_turns"and no longer fail with HTTP 400. - Cursor usage reporting: adapted for current Pro/Pro+/Ultra
/api/usage-summarypayloads usingindividualUsage.planinstead of the olderindividualUsage.overallbucket. - Google passive callers: empty or thinking-only
STOPresponses now accepted as successful silence instead of exhausting retry budget. - AWS credentials:
role_arnprofiles now resolve via STSAssumeRole/AssumeRoleWithWebIdentity, honouringrole_session_name/duration_seconds/external_id; Bedrock detected on EKS/IRSA and multi-account setups. - Bedrock EC2 detection: Nitro DMI markers (
board_asset_taginstance ids,Amazon EC2vendor fields) now recognized in addition to Xenec2UUID prefix. - DeepSeek Responses thinking: after prewalk hand-off plus mid-run compaction, replayed assistant turns now include a
reasoning_textitem when the target requires reasoning replay in thinking mode.
@oh-my-pi/pi-catalog
- User-Agent: standardized on
omp/<version>. - Muse Spark 1.2:
meta/muse-spark-1.2andmuse-spark-1.2-contributornow correctly listed as image-capable (input: ["text", "image"]) with same Responses reasoning metadata as 1.1; contributor uses its discounted pricing. - GLM-5.2 thinking: levels fixed across Baseten, CoreWeave, HuggingFace, and other uppercase-ID resellers — no longer using generic
xhigheffort ladder. Added Basetenzai-org/GLM-5.2-Fastand Fireworksglm-5.2-fastas reasoning models.
@oh-my-pi/pi-coding-agent
- SearXNG safesearch: new
searxng.safesearchsetting added. - omp update: now honours
omp.distfield in npm manifest. Major-version bumps without one are treated as binary-only; bun/npm-managed installs migrate to standalone GitHub release binary. Windows shim installs (omp.cmd/omp.ps1) taken over byomp.exe. - Cloudflare AI Gateway: routing support added for Gemini search.
- Exa MCP: search provider added.
- TinyFish search: domain inclusion/exclusion filtering and URL deduplication added.
/vibemode: pre-vibe toolset now recorded onmode_changeentry and restored properly on exit —bash,edit,write,grep,glob,task,hubno longer silently unavailable.- Composer drafts: extension-filtered pasted image payloads and source links preserved when
/goal,/plan, or/vibesubmits. - Agent Hub: lineage registration timestamps now display in user's local timezone (fix for UTC-only display, raw note truncated at source).
COMMUNITY
No curated reactions recorded for this event. Facts and takes are kept in separate layers — community context is added by hand, never blended into the record above.