[Capture] Voice shortcut: "Hey Google, log X with Sarah" hands-free logging #111

Closed
opened 2026-06-29 19:24:07 +00:00 by Mark · 4 comments
Owner

Problem

Capturing an interaction while driving, walking, or mid-conversation requires hands. Android App Actions / Assistant intents open the path for voice-triggered logging.

Scope

  • Define App Actions actions.intent.CREATE_INTERACTION and actions.intent.LOG_INTERACTION
  • Resolve intent parameters: person name (fuzzy match against contacts), interaction type, optional note
  • Open Kin with the prepopulated form; user confirms (never silently writes)

Realities

  • Requires a separate actions.xml file in the Android project + listing via Play Console developer tools
  • VoiceIntent registration is per-release; needs an app update after listing
  • Quality of person resolution depends on full contacts match — see [person-resolution] sibling

Out of scope

  • iOS SiriKit path (delayed, requires App Intents + developer registration)
  • Voice transcription of conversation notes (not a Kin feature)
## Problem Capturing an interaction while driving, walking, or mid-conversation requires hands. Android App Actions / Assistant intents open the path for voice-triggered logging. ## Scope - Define App Actions `actions.intent.CREATE_INTERACTION` and `actions.intent.LOG_INTERACTION` - Resolve intent parameters: person name (fuzzy match against contacts), interaction type, optional note - Open Kin with the prepopulated form; user confirms (never silently writes) ## Realities - Requires a separate `actions.xml` file in the Android project + listing via Play Console developer tools - VoiceIntent registration is per-release; needs an app update after listing - Quality of person resolution depends on full contacts match — see [person-resolution] sibling ## Out of scope - iOS SiriKit path (delayed, requires App Intents + developer registration) - Voice transcription of conversation notes (not a Kin feature)
Author
Owner

Open design questions

  1. Which App Actions intents to register? Proposed: actions.intent.CREATE_INTERACTION (free-form), actions.intent.LOG_INTERACTION (templated: person + type).
  2. Voice → text transcription: where does it run? Proposed: client-side via Android SpeechRecognizer, not the cloud.
  3. App Actions registration flow: who files the Play Console listing? Mark, or leave a manual step?

Needs answers before dispatch.

## Open design questions 1. Which App Actions intents to register? Proposed: `actions.intent.CREATE_INTERACTION` (free-form), `actions.intent.LOG_INTERACTION` (templated: person + type). 2. Voice → text transcription: where does it run? Proposed: client-side via Android SpeechRecognizer, not the cloud. 3. App Actions registration flow: who files the Play Console listing? Mark, or leave a manual step? Needs answers before dispatch.
Author
Owner

Decomposed 2026-07-02 into 5 sub-issues. Parent stays as architectural record; needs-decompose removed since sub-issues now exist.

Decomposed 2026-07-02 into 5 sub-issues. Parent stays as architectural record; needs-decompose removed since sub-issues now exist.
Author
Owner

Auto-triage: needs decompose

Marked triage-approved + needs-decompose. decompose-executor will pick this up and break it into implementable sub-issues.

## Auto-triage: needs decompose Marked `triage-approved` + `needs-decompose`. decompose-executor will pick this up and break it into implementable sub-issues.
Author
Owner

Voice shortcut parent — decomposed into #129 (S1), #130 (S2), #131 (S3), #132 (S4), #133 (S5). Closing parent; sub-issues tracked separately.

Voice shortcut parent — decomposed into #129 (S1), #130 (S2), #131 (S3), #132 (S4), #133 (S5). Closing parent; sub-issues tracked separately.
Mark closed this issue 2026-07-03 14:45:37 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Mark/kimi_agent_kin_app_sync#111
No description provided.