Decisions

  • Pending: Chat bot platform (Telegram vs Discord vs other)

User Tasks


Summary

Access the Opus system from a phone via terminal and/or voice interface.

Problem / Motivation

Currently the system is only accessible from a desktop terminal. Being able to interact on the go — capture ideas, check status, give commands — is essential for a true “second brain” experience.

Proposed Solution

Set up mobile-friendly access to the system, starting with terminal access and expanding to voice interaction.

  • Phase 1 is simple if VPS (FR-019) is set up — just SSH from phone.
  • Telegram bot is probably the best Phase 2 approach for Android.
  • Voice is a stretch goal but would be very powerful.

Open Questions

No open questions.


Phase Overview

PhaseDescriptionStatus
Phase 1Terminal Access
Phase 2Telegram/Chat Bot
Phase 3Voice Interface

Phase 1: Terminal Access —

Goal: Enable basic SSH access to Opus from a phone.

File / FeatureDetailsOwnerStatus
SSH client on phoneTermux on Android / Blink on iOSmv
VPS SSH accessVPS accessible via SSH (depends on FR-019)opus
Quick-command aliasesAliases for common operationsopus

Phase 2: Telegram/Chat Bot —

Goal: Enable conversational access to Opus via a chat platform.

File / FeatureDetailsOwnerStatus
Telegram botForwards messages to Claude Code sessionsopus
Session mappingEach Telegram chat maps to a Claude Code session ID in SQLite. /newchat clears the mapping. See session-mapping-pattern.opus
Proactive pitchesClaude detects pain points or improvement opportunities and sends a pitch via Telegram (Problem → Proposal). User approves/rejects inline.mv
Delivery notificationsClaude sends a summary via Telegram when a task is completed. Spec auto-closed, ready for review.mv
Receive briefingsReceive briefings and notifications via Telegramopus
Quick captureSend quick capture notes to vault/90_inbox/opus
Progress notify scriptSimple shell script to send status updates during long tasks. See ClaudeClaw Rebuild Prompt (scripts/notify.sh)

Messaging Command Routing:

Incoming chat messages (via Telegram bot) are parsed for structured commands and routed to the appropriate internal skill or agent:

CommandRoutes To
/feature <text>Features specialist agent creates FR
/approve FR-XXXWorkflow state machine advance to “go”
/reject FR-XXXWorkflow state machine archive
/go FR-XXXComplexity routing dispatch
/go FR-XXX --teamForce team routing
/go FR-XXX --phases 1,2Scope-limited dispatch
/statusStatus skill reply with summary
/featuresFeature dashboard query reply with list
Free textNexie/Claude interprets intent

The routing layer maps chat commands to internal skills/agents, handles unknown commands gracefully, and replies with structured responses.

Batch Decision Parsing: When the system sends open questions with numbered/lettered options (e.g., “1. Sources: a) WA only b) WA + newsletters”), the user can reply with a compact batch answer like “1a 2c 3c”. The parser:

  1. Extracts question-option pairs from the reply
  2. Looks up the corresponding FR and its open questions
  3. Applies each decision to the FR file (marks chosen option, moves to “Decided”)
  4. Advances the workflow if all decisions are resolved

Phase 3: Voice Interface —

Goal: Enable hands-free voice interaction with Opus.

File / FeatureDetailsOwnerStatus
Voice-to-text inputWhisper or similar STTopus
Text-to-voice outputTTS for briefingsopus
Hands-free modeHands-free interaction modeopus

Prerequisites / Gap Analysis

Requirements

RequirementDescription
REQ-1Can send a command to Opus from phone and receive a response
REQ-2Can capture a quick note from phone that lands in the vault
REQ-3Daily briefings are accessible from phone

Current State

ComponentStatusDetails
VPSFR-019 not yet started
Phone SSH clientNot configured

Gap (What’s missing?)

GapEffortBlocker?
VPS deployment (FR-019)HighYes (Phase 1)
Telegram bot setupMedNo

Test

Manual tests

TestExpectedActualLast
SSH from phone to VPSSuccessful connectionpending-
Run Opus command from phoneReceives responsepending-
Quick capture from phoneNote appears in vault/90_inbox/pending-

AI-verified tests

ScenarioExpected behaviorVerification method

E2E tests

ScenarioAssertion

Integration tests

ComponentCoverage

Unit tests

ComponentTestsCoverage

History

DateEventDetails
2026-02-26CreatedCreated as part of Phase 1 foundation
2026-02-27RenumberedFrom FR-032 to FR-022
2026-02-28RewrittenAligned to feature-request template
2026-03-04UpdatedAdded messaging command routing and batch decision parsing (inspired by Nexie)

References

  • FR-019 (VPS Deployment) — required for SSH access from phone
  • FR-024 (Text to Speech) — voice interface overlaps with Phase 3
  • ClaudeClaw Rebuild Prompt — full Telegram bot implementation with Claude Code SDK as backend