Skip to content

Add Google Meet realtime consult agentId#72381

Merged
steipete merged 5 commits into
openclaw:mainfrom
BsnizND:fix/google-meet-consult-agent-id-forkbase
Apr 27, 2026
Merged

Add Google Meet realtime consult agentId#72381
steipete merged 5 commits into
openclaw:mainfrom
BsnizND:fix/google-meet-consult-agent-id-forkbase

Conversation

@BsnizND

@BsnizND BsnizND commented Apr 26, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add realtime.agentId to the Google Meet plugin config/schema
  • pass the configured agent id into the realtime openclaw_agent_consult path
  • cover resolver behavior and embedded-agent invocation in google-meet tests

Why

When Google Meet realtime runs with toolPolicy: owner, the consult tool should be able to target the configured OpenClaw agent instead of falling back to the embedded-agent default. This makes Meet lanes work for non-main/default named agents such as Jay.

Test plan

  • pnpm exec oxfmt --check extensions/google-meet/src/config.ts extensions/google-meet/src/agent-consult.ts extensions/google-meet/index.test.ts
  • pnpm exec vitest run extensions/google-meet/index.test.ts
  • pnpm tsgo:extensions:test

Notes

This pairs with the chrome-node bridge cleanup in #72372; both were found while validating the Google Meet + realtime bridge path.

@greptile-apps

greptile-apps Bot commented Apr 26, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR adds an optional realtime.agentId field to the Google Meet plugin config, wires it through consultOpenClawAgentForGoogleMeet into consultRealtimeVoiceAgent, and covers both the resolver (whitespace trimming) and the embedded-agent invocation in tests. The change is minimal and consistent with how the shared consultRealtimeVoiceAgent utility already handles an optional agentId (defaulting to "main" when absent).

Confidence Score: 5/5

This PR is safe to merge with no identified issues.

The change is narrowly scoped, the new field is optional with a sensible fallback, and tests cover both the config resolver and end-to-end invocation path.

No files require special attention.

Reviews (1): Last reviewed commit: "Add Google Meet realtime consult agentId" | Re-trigger Greptile

@clawsweeper

clawsweeper Bot commented Apr 26, 2026

Copy link
Copy Markdown
Contributor

Codex automated review: keeping this open.

Keep this PR open. Current main still lacks the Google Meet realtime.agentId config/schema surface and the Google Meet consult path still calls the shared realtime consult runtime without an agent id. The shared runtime and Voice Call plugin already support optional agent routing, so the PR remains a narrow, relevant plugin fix. Related #72372 has landed, but it only covers Google Meet chrome-node bridge cleanup and does not supersede this routing change.

Best possible solution:

Keep this PR open for maintainer review and likely landing/refinement. The best path is the narrow plugin fix: add realtime.agentId to Google Meet config resolution and manifest schema/help, normalize it with the existing routing helper, pass it into consultRealtimeVoiceAgent, scope the consult session key by agent id, and keep resolver plus embedded-agent invocation regression tests. A small Google Meet docs note for the advanced config key would also be useful.

What I checked:

  • Current Google Meet config omits agentId: GoogleMeetConfig.realtime has provider/model/instructions/introMessage/toolPolicy/providers, and resolveGoogleMeetConfigWithEnv resolves those fields without returning an agentId. (extensions/google-meet/src/config.ts:55, c4194b834585)
  • Current Google Meet manifest/schema omits agentId: The plugin metadata and JSON schema expose realtime provider/model/instructions/introMessage/toolPolicy/providers, but no realtime.agentId field or help text. (extensions/google-meet/openclaw.plugin.json:116, c4194b834585)
  • Current Google Meet consult path cannot route to configured agent: consultOpenClawAgentForGoogleMeet calls consultRealtimeVoiceAgent with sessionKey: google-meet:<meetingSessionId> and no agentId, so configured non-main consult routing is unavailable on main. (extensions/google-meet/src/agent-consult.ts:29, c4194b834585)
  • Shared runtime already supports this routing: consultRealtimeVoiceAgent accepts optional agentId, defaults to main, resolves agent-specific directories/store paths, and passes agentId plus an agent-scoped sandbox session key into runEmbeddedPiAgent. (src/realtime-voice/agent-consult-runtime.ts:40, c4194b834585)
  • Voice Call precedent exists: Voice Call already passes config.agentId ?? "main" into consultRealtimeVoiceAgent, matching the requested Google Meet behavior shape. (extensions/voice-call/src/runtime.ts:351, c4194b834585)
  • Current Google Meet tests do not cover configured consult agent routing: The existing Google Meet realtime bridge test configures provider/model only and asserts provider/tool behavior, but not non-main agentId, agent-scoped session keys, or session-store scoping. (extensions/google-meet/index.test.ts:1963, c4194b834585)

Remaining risk / open question:

  • Read-only review did not run the PR test plan; the decision is based on current source, docs, tests, local history, and the provided PR discussion/diff context.

Codex Review notes: model gpt-5.5, reasoning high; reviewed against c4194b834585.

@steipete
steipete force-pushed the fix/google-meet-consult-agent-id-forkbase branch from d50ea53 to ee9dc80 Compare April 27, 2026 06:54
@openclaw-barnacle openclaw-barnacle Bot added the docs Improvements or additions to documentation label Apr 27, 2026
@steipete
steipete force-pushed the fix/google-meet-consult-agent-id-forkbase branch from ee9dc80 to 893d76c Compare April 27, 2026 07:03
@openclaw-barnacle openclaw-barnacle Bot added channel: msteams Channel integration: msteams gateway Gateway runtime labels Apr 27, 2026
@steipete
steipete force-pushed the fix/google-meet-consult-agent-id-forkbase branch from 6ac32a7 to 4cba738 Compare April 27, 2026 07:17
@openclaw-barnacle openclaw-barnacle Bot removed the gateway Gateway runtime label Apr 27, 2026
@steipete
steipete force-pushed the fix/google-meet-consult-agent-id-forkbase branch from 4cba738 to 83da0b0 Compare April 27, 2026 07:22
@openclaw-barnacle openclaw-barnacle Bot removed the channel: msteams Channel integration: msteams label Apr 27, 2026
@steipete
steipete merged commit d5e6abc into openclaw:main Apr 27, 2026
65 checks passed
vincentkoc added a commit that referenced this pull request Apr 27, 2026
* 'main' of https://github.com/openclaw/openclaw:
  docs: point maintainer triage at gitcrawl
  fix: clean runtime deps backup owner marker
  test(browser): close hanging attach-only sockets
  fix(plugins): normalize windows override imports
  fix: preserve live runtime deps temp dirs
  fix(lmstudio): promote bracketed tool calls
  Add Google Meet realtime consult agentId (#72381)
  fix: normalize lazy service override imports
  test: split ui unit tests from generic lane
  feat(migrations): add plugin-owned Hermes import
  fix(ci): expose package deps to Telegram QA harness (#72680)
  fix: hide bundled runtime npm windows
ogt-redknie pushed a commit to ogt-redknie/OPENX that referenced this pull request May 2, 2026
Remote proof:
- CI run 24982271745 passed on 6122e13.
- Blacksmith Testbox tbx_01kq6vwehcszjfpp52f0pb3v1q passed focused Google Meet formatting, docs/link checks, realtime consult runtime tests, Google Meet tests, extension test typecheck, the core-unit-fast-support shard, and the core support boundary shard.

Thanks @BsnizND.

Co-authored-by: BSnizND <[email protected]>
ogt-redknie pushed a commit to ogt-redknie/OPENX that referenced this pull request May 2, 2026
* 'main' of https://github.com/openclaw/openclaw:
  docs: point maintainer triage at gitcrawl
  fix: clean runtime deps backup owner marker
  test(browser): close hanging attach-only sockets
  fix(plugins): normalize windows override imports
  fix: preserve live runtime deps temp dirs
  fix(lmstudio): promote bracketed tool calls
  Add Google Meet realtime consult agentId (openclaw#72381)
  fix: normalize lazy service override imports
  test: split ui unit tests from generic lane
  feat(migrations): add plugin-owned Hermes import
  fix(ci): expose package deps to Telegram QA harness (openclaw#72680)
  fix: hide bundled runtime npm windows
github-actions Bot pushed a commit to Desicool/openclaw that referenced this pull request May 9, 2026
Remote proof:
- CI run 24982271745 passed on 6122e13.
- Blacksmith Testbox tbx_01kq6vwehcszjfpp52f0pb3v1q passed focused Google Meet formatting, docs/link checks, realtime consult runtime tests, Google Meet tests, extension test typecheck, the core-unit-fast-support shard, and the core support boundary shard.

Thanks @BsnizND.

Co-authored-by: BSnizND <[email protected]>
github-actions Bot pushed a commit to Desicool/openclaw that referenced this pull request May 9, 2026
* 'main' of https://github.com/openclaw/openclaw:
  docs: point maintainer triage at gitcrawl
  fix: clean runtime deps backup owner marker
  test(browser): close hanging attach-only sockets
  fix(plugins): normalize windows override imports
  fix: preserve live runtime deps temp dirs
  fix(lmstudio): promote bracketed tool calls
  Add Google Meet realtime consult agentId (openclaw#72381)
  fix: normalize lazy service override imports
  test: split ui unit tests from generic lane
  feat(migrations): add plugin-owned Hermes import
  fix(ci): expose package deps to Telegram QA harness (openclaw#72680)
  fix: hide bundled runtime npm windows
globalcaos pushed a commit to globalcaos/tinkerclaw that referenced this pull request May 13, 2026
Remote proof:
- CI run 24982271745 passed on 6122e13.
- Blacksmith Testbox tbx_01kq6vwehcszjfpp52f0pb3v1q passed focused Google Meet formatting, docs/link checks, realtime consult runtime tests, Google Meet tests, extension test typecheck, the core-unit-fast-support shard, and the core support boundary shard.

Thanks @BsnizND.

Co-authored-by: BSnizND <[email protected]>
globalcaos pushed a commit to globalcaos/tinkerclaw that referenced this pull request May 13, 2026
* 'main' of https://github.com/openclaw/openclaw:
  docs: point maintainer triage at gitcrawl
  fix: clean runtime deps backup owner marker
  test(browser): close hanging attach-only sockets
  fix(plugins): normalize windows override imports
  fix: preserve live runtime deps temp dirs
  fix(lmstudio): promote bracketed tool calls
  Add Google Meet realtime consult agentId (openclaw#72381)
  fix: normalize lazy service override imports
  test: split ui unit tests from generic lane
  feat(migrations): add plugin-owned Hermes import
  fix(ci): expose package deps to Telegram QA harness (openclaw#72680)
  fix: hide bundled runtime npm windows
github-actions Bot pushed a commit to Desicool/openclaw that referenced this pull request May 24, 2026
Remote proof:
- CI run 24982271745 passed on 6122e13.
- Blacksmith Testbox tbx_01kq6vwehcszjfpp52f0pb3v1q passed focused Google Meet formatting, docs/link checks, realtime consult runtime tests, Google Meet tests, extension test typecheck, the core-unit-fast-support shard, and the core support boundary shard.

Thanks @BsnizND.

Co-authored-by: BSnizND <[email protected]>
github-actions Bot pushed a commit to Desicool/openclaw that referenced this pull request May 24, 2026
* 'main' of https://github.com/openclaw/openclaw:
  docs: point maintainer triage at gitcrawl
  fix: clean runtime deps backup owner marker
  test(browser): close hanging attach-only sockets
  fix(plugins): normalize windows override imports
  fix: preserve live runtime deps temp dirs
  fix(lmstudio): promote bracketed tool calls
  Add Google Meet realtime consult agentId (openclaw#72381)
  fix: normalize lazy service override imports
  test: split ui unit tests from generic lane
  feat(migrations): add plugin-owned Hermes import
  fix(ci): expose package deps to Telegram QA harness (openclaw#72680)
  fix: hide bundled runtime npm windows
jameslcowan pushed a commit to jameslcowan/openclaw that referenced this pull request Jun 2, 2026
Remote proof:
- CI run 24982271745 passed on 6122e13.
- Blacksmith Testbox tbx_01kq6vwehcszjfpp52f0pb3v1q passed focused Google Meet formatting, docs/link checks, realtime consult runtime tests, Google Meet tests, extension test typecheck, the core-unit-fast-support shard, and the core support boundary shard.

Thanks @BsnizND.

Co-authored-by: BSnizND <[email protected]>
jameslcowan pushed a commit to jameslcowan/openclaw that referenced this pull request Jun 2, 2026
* 'main' of https://github.com/openclaw/openclaw:
  docs: point maintainer triage at gitcrawl
  fix: clean runtime deps backup owner marker
  test(browser): close hanging attach-only sockets
  fix(plugins): normalize windows override imports
  fix: preserve live runtime deps temp dirs
  fix(lmstudio): promote bracketed tool calls
  Add Google Meet realtime consult agentId (openclaw#72381)
  fix: normalize lazy service override imports
  test: split ui unit tests from generic lane
  feat(migrations): add plugin-owned Hermes import
  fix(ci): expose package deps to Telegram QA harness (openclaw#72680)
  fix: hide bundled runtime npm windows
sablehead pushed a commit to sablehead/openclaw that referenced this pull request Jun 10, 2026
Remote proof:
- CI run 24982271745 passed on 6122e13.
- Blacksmith Testbox tbx_01kq6vwehcszjfpp52f0pb3v1q passed focused Google Meet formatting, docs/link checks, realtime consult runtime tests, Google Meet tests, extension test typecheck, the core-unit-fast-support shard, and the core support boundary shard.

Thanks @BsnizND.

Co-authored-by: BSnizND <[email protected]>
sablehead pushed a commit to sablehead/openclaw that referenced this pull request Jun 10, 2026
* 'main' of https://github.com/openclaw/openclaw:
  docs: point maintainer triage at gitcrawl
  fix: clean runtime deps backup owner marker
  test(browser): close hanging attach-only sockets
  fix(plugins): normalize windows override imports
  fix: preserve live runtime deps temp dirs
  fix(lmstudio): promote bracketed tool calls
  Add Google Meet realtime consult agentId (openclaw#72381)
  fix: normalize lazy service override imports
  test: split ui unit tests from generic lane
  feat(migrations): add plugin-owned Hermes import
  fix(ci): expose package deps to Telegram QA harness (openclaw#72680)
  fix: hide bundled runtime npm windows
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs Improvements or additions to documentation plugin: google-meet size: S

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants