YOUR BUSINESSMission Control
Business overview
READ-ONLY PRIMARY EVIDENCE

Phone agent / native platform survey

/Users/macstudio4/vault-studio2/operations/phone-agent-survey-20260717/PROOF.md

Back to owner surfaces
# Phone / Voice Native Platform Survey

Date: 2026-07-18 ET
Host: `StudioExo256`
Mode: Hermes-only, connect-only survey; no cutover and no provider mutation

## Verdict

`GAP`

Hermes Agent 0.18.2 cannot natively connect the approved Twilio number to a
real-time inbound voice agent. The phone owner surface remains `NOT CONNECTED`.
No code or framework was invented, and the Julian phone pipeline was not used.

## Installed Version And Native Inventory

- Clean runtime: Hermes Agent `0.18.2`, upstream `19bc02ff`, local clean commit
  `d0f1619d`.
- Native Voice Mode: local input capture, local/cloud STT, configured TTS, and
  native voice controls. This is device voice, not telephone ingress.
- Gateway voice: voice/audio messages and voice replies on supported messaging
  platforms; Discord has a tracked voice mixer.
- ElevenLabs: tracked STT/TTS provider support only.
- Twilio: tracked SMS platform/configuration only.
- Bundled optional telephony skill: Twilio number management, inbound SMS
  polling, and outbound call helpers. Its contract explicitly says it does not
  make Hermes a real-time inbound phone gateway.
- Tracked phone/Twilio/voice platform adapter inventory: no Twilio Voice or
  phone adapter. The only matching tracked platform module is Discord voice.

The installed clean skill set has `tnmc-native-voice` for device Voice Mode.
The optional Hermes telephony skill is available in the checkout but is not
installed in the clean skill set; installing it would not close this gap.

## Julian Pack Evidence

The Julian adaptation manifest records the pack as interaction/reference
material and excludes its voice/media path from the clean source graph. Its
`src/lib/hermesPhone.ts` is custom Agent OS orchestration, not Hermes 0.18.2
native support. It starts a Cloudflare tunnel, creates or patches an ElevenLabs
ConvAI agent and secret, and patches phone-number assignment. Those are new
runtime and provider mutations, so the pipeline is excluded by this order.

## Credential And Provider Readback

- Twilio clean-home credentials: configured as existing direct dotenv values;
  no values were printed or copied.
- Twilio read-only `IncomingPhoneNumbers` GET: authentication passed; one owned
  number; configured number matched `***-***-8011`; voice and SMS capability are
  present.
- Current voice handler: `demo.twilio.com/welcome/voice/`, method `POST`. It is
  Twilio demo content, not Hermes.
- Hermes clean status: `ElevenLabs not set`; `SMS configured`.
- ElevenLabs credential/reference survey: none discovered in the clean home,
  StudioExo256 credential files, or the controlling Mac's candidate credential
  locations.
- The TNMC lease broker names ElevenLabs, but no ElevenLabs budget/lease manifest
  exists. A lease cannot substitute for a missing credential or missing native
  phone capability.

## Missing Native Capability

Hermes 0.18.2 lacks all of the following tracked native contracts required for
this connection:

1. Twilio Voice webhook or media-stream platform adapter.
2. Real-time inbound call session lifecycle.
3. Native phone-number-to-agent assignment.
4. Inbound phone transcript and lead receipt source.
5. A connect-only consent/lease action for an existing Twilio number and
   ElevenLabs conversational agent.

## Safe Smokes

- Clean gateway `GET /health`: pass, `hermes-agent 0.18.2`.
- Owner OS `GET /surfaces`: pass, HTTP 200.
- Native `hermes status`: pass; ElevenLabs not set; SMS configured.
- Twilio incoming-number metadata GET: pass; no write method invoked.
- Tracked-source capability assertion: pass; no native inbound phone adapter.
- Focused pytest suite: not run because `pytest` is absent from the clean
  runtime virtualenv. No dependency was installed.

## No-Effect Receipt

- Provider mutations: `0`
- Twilio webhook/number changes: `0`
- ElevenLabs calls or mutations: `0`
- Calls placed: `0`
- SMS sent: `0`
- Old-system mutations: `0`
- Services restarted or reloaded: `0`
- Cutover: `false`

Owner OS canonical receipt:
`owner-surfaces-native-readiness-20260717/phone-readiness.json`