Releases: APUS-AI-Lab/PhoneBuddySDK
Releases · APUS-AI-Lab/PhoneBuddySDK
Release list
PhoneBuddy SDK v0.2.0 — Multimodal Input & Responses Protocol Upgrade
What's New in v0.2.0
This release brings multimodal image support, a fully refactored LLM Responses protocol, improved reliability, and a richer developer toolset.
🖼️ Multimodal Image Input
- Image input support — Pass image data directly into the agent alongside text prompts.
- Orientation-adaptive dimension validation — Automatically validates image dimensions based on portrait/landscape orientation, ensuring API compliance without manual checks.
⚡ LLM & Responses Protocol Refactor
- Responses protocol upgrade — Rewrote the SSE streaming transport, stream parser, and type layer to align 1:1 with the upstream Grok Responses API.
- Prefix-continue on SSE idle timeout — The engine now automatically issues a prefix-continue request once when the SSE stream goes idle, recovering gracefully from temporary stalls.
- Fixed duplicated tool-call JSON — Resolved a bug where Responses tool-call payloads were being emitted twice per invocation.
- Omit placeholder args for hosted
web_search— Server-side hosted tools no longer send spurious empty arguments at turn start. - Aligned search behavior with Grok Build — Response search flow is now in sync with the upstream reference implementation.
🔄 Reliability & Retry
- Transient retry + multi-provider failover — The HTTP client retries on transient network errors and can automatically fail over to a secondary LLM provider, improving uptime in mobile network
conditions. - DuckDuckGo connectivity probe with cooldown — The web-search tool now probes DuckDuckGo availability before use and applies a cooldown on repeated failures, with a simplified user-facing fallback
notice. - Immediate turn completion for server-side tools — Pure server-side tool calls (e.g., hosted web search) no longer enter an unnecessary client-side loop, reducing latency.
- Improved
call_idparsing andweb_fetcherror handling — More robust parsing of Responsescall_idfields and cleaner error messages from the web fetch tool.
🛠️ Developer Experience
EngineConfigBuilderAPI — New fluent builder for constructing engine configuration without manually constructing JSON.- 1:1 client profile emulation — The engine can now mimic specific LLM client profiles for reproducible behavior across environments.
- Native tracing / logging callback (FFI) — Debug builds now export a native callback so iOS/Android host apps can receive structured log output directly via the C FFI layer.
- Expanded unit test suite — New tests covering the C FFI layer, busybox applets, the Boa JS script sandbox, and file tools.
v0.1.2: Support Agent Name Customization & Packaging Fixes
What's New in v0.1.2
### 🌟 New Features
- **Configurable Agent Identity (`agent_name`)**:
- Support setting a custom Agent identity in `EngineConfig` (e.g. `"agent_name": "Rivon"`), dynamically interpolated into the system prompt (`You are {agent_name}…`).
- Added runtime identity switching APIs across all platforms:
- **C ABI**: `void pb_engine_set_agent_name(struct PbEngine *engine, const char *name);`
- **iOS (Swift)**: `await agent.setAgentName("Rivon")`
- **Android (Kotlin)**: `agent.setAgentName("Rivon")`
### 🛠️ Bug Fixes & Improvements
- **SDK Packaging & Binary Consistency**:
- Resolved an issue where iOS static libraries and header files in the prebuilt ZIP package could be out-of-sync with the latest API declarations.
- Rebuilt all iOS (`aarch64-apple-ios`, `aarch64-apple-ios-sim`, `x86_64-apple-ios`) and Android (`arm64-v8a`, `x86_64`, `armeabi-v7a`, `x86`) release binaries.
- **C Header Sanitation**:
- Refined `cbindgen` export configuration to exclude internal Android JNI bridge declarations from the public `phone_buddy.h` header, preventing type conflicts with Android NDK `<jni.h>`.
- **Dynamic User-Agent Versioning**:
- Client HTTP `User-Agent` now automatically synchronizes with the workspace package version.
---
### 📦 Prebuilt Distribution Package
Download the prebuilt SDK package attached below to drop straight into your Xcode / Android Studio projects without compiling Rust:
- **`phone-buddy-sdk-v0.1.2.zip`**
PhoneBuddy SDK v0.1.1
PhoneBuddy SDK v0.1.1 — Initial Public Release 🚀
We are thrilled to announce the initial release of PhoneBuddy SDK (v0.1.1)!
PhoneBuddy SDK is a lightweight, embeddable LLM Agent runtime engine in pure Rust designed specifically for mobile operating systems (iOS and Android). Derived and ported from xAI's open-source agent engine (xai-org/grok-build), it brings desktop-class autonomous agent harness maturity down to mobile platforms with zero child processes and 100% App Store & Google Play sandbox compliance.