Commit Graph
85 Commits
Author SHA1 Message Date
Sanju Sivalingam a745815400 update readme and configure monorepo for railway deployment
readme rewritten with ascii diagrams, detailed setup, and conversational tone.
root package.json updated with packageManager field for bun, web workspace,
and build/start scripts pointing to web/ for railway railpack compatibility.
2026-02-18 09:20:03 +05:30
Sanju Sivalingam 792b42974f feat(agent): implement server-side multi-step skills
Skills (copy_visible_text, find_and_tap, submit_message, read_screen,
wait_for_content, compose_email) were CLI-only using direct ADB. The
server prompt advertised them but they silently failed when chosen.

Now intercepted in the agent loop before actionToCommand() and executed
server-side using existing WebSocket primitives (get_screen, tap, swipe,
clipboard_set). Each skill replaces 3-8 LLM calls with deterministic
server-side logic.
2026-02-18 00:58:59 +05:30
Sanju Sivalingam db995e4913 fix(agent): prevent stuck loop by adding action history to LLM prompt
The UI agent had no memory of previous actions — each step was a fresh
single-shot LLM call. After typing and sending a message, the LLM saw
an empty text field and retyped the message in a loop.

- Add RECENT_ACTIONS (last 5 actions with text/result) to user prompt
- Add chat app completion detection rule to dynamic prompt
- Add send-success hints for WhatsApp and Messages apps
- Add git convention to CLAUDE.md (no co-author lines)
2026-02-18 00:53:13 +05:30
Sanju SivalingamandClaude Opus 4.6 9193b02d36 fix(agent): address code review issues
- Add empty goal guard in parser (returns done instead of passthrough)
- Replace `as any` casts in pipeline.ts with proper ActionDecision types
- Add runtime type guards for untrusted LLM output in classifier
- Add intent action to dynamic prompt so UI agent can fire intents

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 00:32:14 +05:30
Sanju Sivalingam 3769b21ed1 refactor(agent): delete preprocessor.ts (replaced by parser.ts) 2026-02-18 00:28:50 +05:30
Sanju SivalingamandClaude Opus 4.6 d5c3466554 feat(agent): wire intent-first pipeline into all entrypoints
Replace preprocessor+runAgentLoop with runPipeline in both device.ts
(WebSocket) and goals.ts (REST). The pipeline orchestrates: deterministic
parser (stage 1) -> LLM classifier (stage 2) -> lean UI agent (stage 3).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 00:28:13 +05:30
Sanju SivalingamandClaude Opus 4.6 18b8509081 feat(agent): add pipeline mode with dynamic prompts to agent loop
When pipelineMode is enabled in AgentLoopOptions, the loop uses
buildDynamicPrompt() with per-screen context (editable fields,
scrollable elements, app hints, stuck state) instead of the static
mega-prompt. Legacy mode (default) is unchanged.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 00:24:25 +05:30
Sanju Sivalingam 3f389c5de6 feat(agent): add dynamic prompt builder for Stage 3 UI agent 2026-02-18 00:22:24 +05:30
Sanju Sivalingam 91a828452b feat(agent): add Stage 2 LLM goal classifier 2026-02-18 00:15:56 +05:30
Sanju Sivalingam 5dd199e0b8 feat(agent): add Stage 1 deterministic goal parser 2026-02-18 00:09:15 +05:30
Sanju Sivalingam 122bf87e72 feat(agent): add app-specific hints registry 2026-02-18 00:07:24 +05:30
Sanju SivalingamandClaude Opus 4.6 41a49f0619 feat(shared): add PipelineResult, IntentCommand, DeviceCapabilities types
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 00:04:36 +05:30
Sanju Sivalingam e300f04e13 feat: installed apps, stop goal, auth fixes, remote commands
- Android: fetch installed apps via PackageManager, send to server on connect
- Android: add QUERY_ALL_PACKAGES permission for full app visibility
- Android: fix duplicate Intent import, increase accessibility retry window
- Android: default server URL to ws:// instead of wss://
- Server: store installed apps in device metadata JSONB
- Server: inject installed apps context into LLM prompt
- Server: preprocessor resolves app names from device's actual installed apps
- Server: add POST /goals/stop endpoint with AbortController cancellation
- Server: rewrite session middleware to direct DB token lookup
- Server: goals route fetches user's saved LLM config from DB
- Web: show installed apps in device detail Overview tab with search
- Web: add Stop button for running goals
- Web: replace API routes with remote commands (submitGoal, stopGoal)
- Web: add error display for goal submission failures
- Shared: add InstalledApp type and apps message to protocol
2026-02-17 22:50:18 +05:30
Sanju Sivalingam fae5fd3534 fix: goals route now finds devices by persistent DB ID, not connection UUID 2026-02-17 21:22:43 +05:30
Sanju Sivalingam 5b73e89217 fix: add valibot schemas to query() functions — fixes bad request on detail page 2026-02-17 21:16:58 +05:30
Sanju Sivalingam 423cd7af01 fix: add getDevice query, fix IN clause, add error handling to getDeviceStats 2026-02-17 21:13:50 +05:30
Sanju Sivalingam b240887b0e fix: resolve type errors in devices pages 2026-02-17 21:08:47 +05:30
Sanju SivalingamandClaude Opus 4.6 9de0b040dc feat: rewrite device detail page with tabbed layout (Overview/Sessions/Run)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 21:05:26 +05:30
Sanju SivalingamandClaude Opus 4.6 a46af1a236 feat: rewrite devices page as phone-card grid
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 21:04:18 +05:30
Sanju SivalingamandClaude Opus 4.6 a5bfe74384 feat: add DeviceCard.svelte phone-frame component
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 21:03:25 +05:30
Sanju SivalingamandClaude Opus 4.6 9423ed85ff feat: add device stats query and enrich listDevices with metrics
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 21:02:07 +05:30
Sanju SivalingamandClaude Opus 4.6 bf92ff4742 feat: handle heartbeat messages, update battery in DB + dashboard
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 21:01:06 +05:30
Sanju SivalingamandClaude Opus 4.6 c3d6674793 feat: add 60s battery heartbeat to ConnectionService
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 20:59:33 +05:30
Sanju SivalingamandClaude Opus 4.6 a7738936f2 feat: extend DeviceInfo with battery, manufacturer, heartbeat
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 20:55:42 +05:30
Sanju SivalingamandClaude Opus 4.6 0c0efe9b1e chore: remove docs/plans from repo and gitignore it
Contains product architecture, roadmaps, and implementation plans
that should not be public.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 20:17:06 +05:30
Sanju SivalingamandClaude Opus 4.6 c395f9d83e feat: add DB persistence, real-time WebSocket, goal preprocessor, and Android companion app
- Add device/session/step DB persistence in server agent loop
- Add goal preprocessor for compound goals (e.g., "open YouTube and search X")
- Add step-level logging to agent loop
- Fix dashboard WebSocket auth (direct DB token lookup instead of auth.api)
- Fix web layout to use locals.session.token instead of cookie
- Add dashboard-ws.svelte.ts WebSocket store with auto-reconnect
- Rewrite devices page with direct DB queries and real-time updates
- Add device detail page with live step display and session history
- Add Android companion app resources, themes, and screen capture consent

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 20:12:41 +05:30
Sanju SivalingamandClaude Opus 4.6 ea707af83e fix(android): add CHANGE_NETWORK_STATE for foreground service on SDK 36
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 18:41:59 +05:30
Sanju SivalingamandClaude Opus 4.6 61fcecd021 fix(android): add screenHash to screen responses, handle goal_failed
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 18:17:48 +05:30
Sanju SivalingamandClaude Opus 4.6 4e9f0e14ae feat(android): add HomeScreen, SettingsScreen, LogsScreen with bottom nav
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 17:55:02 +05:30
Sanju SivalingamandClaude Opus 4.6 516b83bd0f feat(android): add ReliableWebSocket, CommandRouter, ConnectionService
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 17:51:19 +05:30
Sanju SivalingamandClaude Opus 4.6 ac7fc85891 feat(android): add GestureExecutor and ScreenCaptureManager
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 17:47:10 +05:30
Sanju SivalingamandClaude Opus 4.6 0e8ff24e08 feat(android): add AccessibilityService, ScreenTreeBuilder, permissions
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 17:43:42 +05:30
Sanju SivalingamandClaude Opus 4.6 78b605bc86 feat(android): add data models, DataStore settings, Application class
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 17:40:56 +05:30
Sanju SivalingamandClaude Opus 4.6 e22326cbd3 feat(android): add Ktor, serialization, DataStore, navigation dependencies
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 17:38:56 +05:30
Sanju SivalingamandClaude Opus 4.6 2c17ba40e8 docs: add Android companion app design
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 17:21:34 +05:30
Sanju SivalingamandClaude Opus 4.6 61461199db fix: add non-null assertion for deviceId route param
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 15:06:23 +05:30
Sanju SivalingamandClaude Opus 4.6 c659dfd8cc feat: add web Dockerfile for Railway deployment
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 14:46:31 +05:30
Sanju SivalingamandClaude Opus 4.6 84af22e4a1 feat: add goal proxy API route
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 14:45:52 +05:30
Sanju SivalingamandClaude Opus 4.6 7557481e83 feat: add devices page with goal input and step log
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 14:45:47 +05:30
Sanju SivalingamandClaude Opus 4.6 edfc91468b feat: add LLM provider settings page
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 14:45:44 +05:30
Sanju SivalingamandClaude Opus 4.6 8fc5587876 fix: use schema-based deleteKey and reactive key list refresh
- Add deleteKeySchema for proper FormData validation
- Return { deleted: true } from deleteKey for change tracking
- Use $state for keysPromise to refresh list after create/delete

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 14:43:46 +05:30
Sanju SivalingamandClaude Opus 4.6 9422e94a8e feat: add API keys management page
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 14:40:42 +05:30
Sanju SivalingamandClaude Opus 4.6 ebe82c7481 feat: add dashboard layout with navigation and auth guard
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 14:32:26 +05:30
Sanju SivalingamandClaude Opus 4.6 c0cf5039cd feat: switch SvelteKit from Cloudflare to node adapter
Deploying to Railway instead of Cloudflare, so swap
@sveltejs/adapter-cloudflare for @sveltejs/adapter-node.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 14:29:47 +05:30
Sanju SivalingamandClaude Opus 4.6 4c8241c964 feat: add agent loop with LLM integration and stuck detection
Server-side agent loop that adapts the CLI kernel to work over WebSocket.
Three new modules: stuck detection, LLM provider abstraction (OpenAI/Groq/
OpenRouter), and the main perception-reasoning-action loop. Also wires up
the goals route to start agent loops with duplicate-device protection.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 14:27:26 +05:30
Sanju SivalingamandClaude Opus 4.6 577c195862 feat: add REST routes for devices, goals, and health
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 14:21:11 +05:30
Sanju SivalingamandClaude Opus 4.6 8fe3ad9926 feat: add WebSocket handlers for device and dashboard connections
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 14:17:29 +05:30
Sanju SivalingamandClaude Opus 4.6 5b2a072cee feat: add apiKey plugin and new schema tables
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 14:11:55 +05:30
Sanju SivalingamandClaude Opus 4.6 bc014fd587 feat: scaffold Hono server with auth and health check
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 14:07:19 +05:30
Sanju SivalingamandClaude Opus 4.6 1e9e1f7e29 feat: add @droidclaw/shared types package
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 14:03:27 +05:30
Sanju SivalingamandClaude Opus 4.6 920ce46375 Add Discord link to site nav and footer
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 09:37:29 +05:30
Sanju SivalingamandClaude Opus 4.6 9e9f398ed6 Add auto-scroll to find_and_tap skill for off-screen elements
find_and_tap now scrolls down and rescans (up to 10 times) when the
target element isn't visible on the current screen. Stops as soon as
the element is found — no wasted scrolls. This removes the need for
LLMs to manually scroll-and-check in workflow prompts.

Also simplifies the Gemini-to-WhatsApp workflow prompts.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 21:56:34 +05:30
Sanju Sivalingam 2312f8bece update workflow 2026-02-16 21:14:16 +05:30
Sanju SivalingamandClaude Opus 4.6 4848587f0c Add Gemini-to-WhatsApp workflow example
Multi-app workflow: ask Gemini about droidclaw.ai, copy response,
switch to WhatsApp, find contact, paste and send.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 20:47:40 +05:30
Sanju SivalingamandClaude Opus 4.6 6a63af1a68 Add ASCII art banner to CLI and update gitignore
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 20:00:46 +05:30
Sanju SivalingamandClaude Opus 4.6 158fe68bf9 Make groq the default provider, ollama as alternative
Groq (free tier, API key) is the primary setup path.
Ollama (local, no key) shown as secondary option.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 13:48:47 +05:30
Sanju SivalingamandClaude Opus 4.6 cbd6eb6b1e Add copy button to install command on site
Hover to reveal, click to copy, shows checkmark for 2s.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 13:45:02 +05:30
Sanju SivalingamandClaude Opus 4.6 76d6258a54 Add manual install steps alongside curl, harden install script
Site and README now show both curl one-liner and manual steps.
Explicit note that bun is required (node/npm won't work).
Install script improvements: version check, node detection warning,
curl check, Windows detection, .git dir validation, shallow clone,
fallback on bun install --silent, post-install missing dep summary.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 13:43:38 +05:30
Sanju SivalingamandClaude Opus 4.6 04a60af082 Add install script and update domain to droidclaw.ai
One-liner install: curl -fsSL https://droidclaw.ai/install.sh | sh
Auto-installs bun and adb, clones repo, sets up .env.
Updated site meta tags and canonical URL to droidclaw.ai.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 13:41:48 +05:30
Sanju SivalingamandClaude Opus 4.6 75fb725744 Add Ollama provider for local LLM support
Reuses OpenAIProvider via Ollama's OpenAI-compatible API at localhost:11434.
No API key needed - just install Ollama, pull a model, and set LLM_PROVIDER=ollama.
Vision models (llava, llama3.2-vision) supported for screenshot fallback.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 13:28:37 +05:30
Sanju SivalingamandClaude Opus 4.6 fb3e7bc723 Add adb install instructions to site and readme
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 23:03:00 +05:30
Sanju SivalingamandClaude Opus 4.6 d8d24154eb Add analytics tracking to site
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 23:00:23 +05:30
Sanju SivalingamandClaude Opus 4.6 b5f504bb8d Move repo to unitedbyai org, add contributors
- Update all GitHub links from thisuxhq to unitedbyai
- Add contributors section with sanju sivalingam and somasundaram mahesh
- Update meta author and footer attribution to unitedby.ai

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 12:42:53 +05:30
Sanju SivalingamandClaude Opus 4.6 416005612e Fix mobile overflow on bento and mode cards
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 21:33:51 +05:30
Sanju SivalingamandClaude Opus 4.6 231bce36e5 Update site: icon alignment, meta tags, highlight colors, acknowledgements in readme
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 21:32:00 +05:30
Sanju Sivalingam 554b2eb394 update site 2026-02-14 21:03:58 +05:30
Sanju SivalingamandClaude Opus 4.6 71021f48dd Organise examples into folders, rewrite readme with natural flow and tailscale section
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 20:28:35 +05:30
Sanju SivalingamandClaude Opus 4.6 8b9f0a4e6e Clean up for public release: remove logs, debug artifacts, and future plans from tracking; rewrite readme minimal and lowercase
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 19:58:47 +05:30
Sanju SivalingamandClaude Opus 4.6 389ac81c98 Add Maestro-style YAML flow runner for deterministic automation
New --flow mode executes scripted YAML steps without LLM, mapping 17
commands (tap, type, swipe, scroll, etc.) to existing actions. Element
finding uses accessibility tree text/hint/id matching.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 19:34:18 +05:30
Sanju SivalingamandClaude Opus 4.6 e588881bfc Rewrite README: concise, scannable, conversational tone
709 lines → 238 lines. Updated to reflect 22 actions, 6 skills,
34 workflows, and workflow orchestration system.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 19:13:49 +05:30
Sanju SivalingamandClaude Opus 4.6 7875db1626 Add weather-to-whatsapp workflow using Google AI Mode + share intent
Google app → AI Mode → "Chennai today weather" → Share button → WhatsApp → Sanju

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 19:11:26 +05:30
Sanju SivalingamandClaude Opus 4.6 feeb52aade Add 33 practical day-to-day workflow examples
Messaging & Communication:
- whatsapp-reply, whatsapp-broadcast, whatsapp-to-email
- telegram-channel-digest, telegram-send-message
- slack-standup, slack-check-messages
- email-digest, email-reply, translate-and-reply

Social Media:
- social-media-post (cross-platform Twitter + LinkedIn)
- social-media-engage (like/comment rounds)
- instagram-post-check (engagement stats)

Productivity:
- morning-briefing (SMS + WhatsApp + Telegram + Calendar + Weather)
- calendar-create-event, notes-capture
- notification-cleanup, do-not-disturb (focus mode)
- github-check-prs, screenshot-share-slack

Research & Search:
- google-search-report, news-roundup
- multi-app-research (Google + YouTube + Reddit)
- price-comparison (Amazon + Flipkart + Google)

Lifestyle:
- food-order (Zomato), uber-ride (price check)
- maps-commute, check-flight-status
- spotify-playlist, youtube-watch-later
- fitness-log, expense-tracker, wifi-password-share

All workflows use: bun run src/kernel.ts --workflow examples/<name>.json

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 18:37:29 +05:30
Sanju SivalingamandClaude Opus 4.6 8bad65cd96 Add 7 new actions, workflow orchestration, and shell escaping fixes
- New actions: open_url, switch_app, notifications, pull_file, push_file, keyevent, open_settings
- Workflow system: runWorkflow() for multi-app sub-goal sequences with --workflow CLI flag
- Export runAgent() with {success, stepsUsed} return for workflow integration
- Fix clipboard_set shell escaping (single-quote wrapping matching skills.ts)
- Improve type action escaping for backticks, $, !, ?, brackets, braces
- Move parseJsonResponse to llm-providers.ts and export it
- Update SYSTEM_PROMPT and Zod schema for 22 total actions

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 18:33:24 +05:30
Sanju Sivalingam 5c471ec19a time to rethink architecture of this... 2026-02-07 18:04:46 +05:30
Sanju SivalingamandClaude Opus 4.6 76b7bce405 Rename project to DroidClaw
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 17:51:08 +05:30
Sanju SivalingamandClaude Opus 4.6 caa7c9a371 Update architecture doc: add simple ELI5 explanation + kernel bridge details
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 17:38:26 +05:30
Sanju Sivalingam 434c5bb826 add arch diagram 2026-02-06 17:29:46 +05:30
Sanju SivalingamandClaude Opus 4.6 cd348b7c34 Update README: fix paths for flat structure, add docs links
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 16:11:51 +05:30
Sanju SivalingamandClaude Opus 4.6 73f967a467 Add detailed use cases documentation with 50+ examples
Covers 15 categories: messaging, social media, navigation, settings,
app management, productivity, media, shopping, research, file ops,
system monitoring, automation, accessibility, testing, and multi-step workflows.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 16:06:26 +05:30
Sanju SivalingamandClaude Opus 4.6 879509aebc Flatten project structure: move android-action-kernel/ to root
Removes the unnecessary nesting — all source, config, and docs now live
at the project root for simpler paths and commands.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 16:02:40 +05:30
Sanju SivalingamandClaude Opus 4.6 610fd04818 10x improvement: vision, multi-turn memory, planning, streaming, smart filtering, logging
- Auto-detect screen resolution and compute dynamic swipe coordinates
- Detect foreground app each step via dumpsys activity
- Smart element filtering: deduplicate by position, score by relevance, compact to essentials
- Session logging with crash-safe .partial.json writes and final summary
- Real multimodal vision: send base64 screenshots to LLMs (off/fallback/always modes)
- Multi-turn conversation memory: maintain full chat history across steps with trimming
- Multi-step planning: think/plan/planProgress fields on every LLM decision
- Streaming responses for all 4 providers (OpenAI, Groq, OpenRouter, Bedrock)
- Comprehensive README with examples, architecture docs, and troubleshooting

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 10:32:58 +05:30
Sanju Sivalingam a23c94ddd6 Remove root .DS_Store and add root .gitignore 2026-02-06 09:06:56 +05:30
Sanju Sivalingam d4ec5e476a Remove .DS_Store and add it to .gitignore 2026-02-06 09:06:16 +05:30
Sanju Sivalingam 8504eecc8e Add CLAUDE.md and README.md documentation 2026-02-06 09:04:06 +05:30
Sanju Sivalingam 477d99861c initial commit 2026-02-06 08:59:43 +05:30