Ayaan Zaidi
4c951398ef
fix(messages): keep runtime details out of chat alerts ( #121600 )
...
Keep raw commands, paths, and provider errors out of ordinary chat while preserving explicit raw diagnostics and structured admin history.
Default command progress is status-only; `/verbose full` and `commandText: "raw"` retain diagnostic detail.
Co-authored-by: Ayaan Zaidi <hi@obviy.us >
2026-08-10 21:37:48 +05:30
Peter Steinberger
a0ad38e71a
feat(docs-ci): validate docs config examples against the schema ( #121336 )
...
* feat(docs-ci): validate config examples against schema
* docs: teach canonical agent roster configuration
* docs: nest inline environment variables under vars
* docs: update canonical media model keys
* docs: remove retired config keys from examples
* fix(docs-ci): keep audit internals private
* feat(docs-ci): validate plugin-owned config examples
* fix(docs-ci): validate indented config fences
* fix(ci): route manifest changes through docs audit
* chore(docs): refresh generated config baselines
2026-08-10 07:57:56 -07:00
Peter Steinberger
f4bac99a81
feat(secrets): add SQLite-backed secret store ( #121559 )
2026-08-10 07:08:40 -07:00
Peter Steinberger
914f73ac99
docs: replace retired config keys with canonical schema keys ( #121330 )
2026-08-09 20:30:43 -07:00
Ayaan Gazali
51960f6579
docs(discord): drop retired ui.components.accentColor and fix heartbeat key name ( #118216 )
...
* docs(discord): drop retired ui.components.accentColor and fix heartbeat key name
* docs(discord): remove the retired accent-color example block
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-08-08 13:43:37 -07:00
Peter Steinberger
96a75be170
fix(discord): default preview streaming to off ( #120376 )
...
Make Discord progress drafts and activity receipts explicit opt-ins while preserving configured streaming modes and legacy explicit progress migrations. Related: #87704 .
2026-08-07 17:18:12 -07:00
Syu
b316c9cacf
fix(channels): honor explicit preview streaming settings
...
Explicit Telegram and Discord preview modes now override inherited block streaming while explicit channel block settings remain authoritative.
Co-authored-by: Syu <zhuqimo@gmail.com >
2026-08-05 09:04:49 +05:30
Peter Steinberger
b1f97bb7b3
refactor(discord): remove retired subagent progress runtime ( #117802 )
2026-08-01 21:36:28 -07:00
Peter Steinberger
eb0087dc7c
fix(discord): connect mention-only bots without Message Content intent ( #116962 )
...
* fix(discord): support mention-only gateway intent
* chore: keep release changelog owner-only
2026-07-31 12:04:16 -07:00
Ayaan Zaidi
06aa81a73f
fix(channels): show tool lines under the progress status headline
...
A status headline replaced the rolling tool lines instead of sitting above
them, so a default Discord draft showed one preamble sentence for an entire
tool-heavy turn. Operators reached for `/verbose` to see any activity, which
delivers durable per-tool-call messages and floods the channel.
- Render the headline above the lines; both stay visible in one message.
- Shorten the start gate from 5s to 1.5s. The gate only creates the draft
when the timer fires and finalize cancels it, so quick answers still post
no draft while a 3s tool turn stops being silent.
- Drop Discord's label-gated tool-progress default so
resolveChannelStreamingPreviewToolProgress is the single owner. An explicit
`toolProgress: false` still silences the lines.
- Resolve that toggle against a "progress" mode guess when `streaming.mode`
is unset, so the progress-draft channels stop ignoring an explicit
`progress.toolProgress` opt-out.
Telegram now defaults to `streaming.mode: "progress"` like Discord; set
`"partial"` to keep streamed answer text. Its renderer draws work lines from
the compositor's structured lines, so `rendersRollingLinesNatively` keeps
them out of the composed text rather than printing every line twice.
2026-07-30 13:36:21 +09:00
Peter Steinberger
2cf6b50614
docs(discord): document channel-allowlist and ambient room event pitfalls ( #113692 )
...
* docs(discord): document channel-allowlist and ambient room event pitfalls
Three gating behaviors that silently produce a mute or blind agent:
- A guild channels map is an allowlist. Adding one entry denies every
unlisted channel rather than leaving them at guild defaults; the "*"
wildcard key keeps the rest of the guild reachable.
- requireMention: true drops unmentioned messages before they can become
room events, so an ambient agent has no room backlog at all.
- Room events post via message(action=send), but the message tool ships
only in the messaging profile; a coding-profile agent listens and can
never speak.
Adds matching Discord failure-signature rows to channel troubleshooting.
* docs: regenerate docs map for new Discord and ambient headings
2026-07-25 06:43:02 -07:00
Peter Steinberger
82d1a03f25
refactor(agents): move implicit-main fallback into load-time roster injection ( #112678 )
...
* refactor(agents): require explicit roster defaults
* feat(onboard): create named first roster agent
* refactor(agents): remove runtime main fallbacks
* style(agents): apply roster refactor formatting
* refactor(agents): finish roster-only runtime sweep
* fix(doctor): migrate legacy main session sqlite
* fix(doctor): harden roster session migrations
* fix(onboard): commit first agent atomically
* fix(config): support empty-roster analysis
* fix(agents): preserve legacy main state during creation
* fix(setup): materialize baseline agent roster
* fix(agents): harden legacy default transfer recovery
* fix(agents): simplify roster-only legacy compatibility
* fix(agents): preserve staged first-agent entries
* fix(config): migrate persisted implicit-main rosters
* fix(config): preserve staged empty rosters
* fix(agents): finalize roster-only upgrade paths
* fix(sessions): close legacy main migration outcomes
* fix(config): migrate legacy roster markers at load
* fix(sessions): preserve roster upgrade history
* refactor(sessions): restore lean legacy main compatibility
* fix(setup): prepare first-agent credentials before publish
* fix(config): stabilize roster snapshot migration
* refactor(sessions): shrink legacy main compatibility
* fix(agents): restore roster compatibility fidelity
* fix(sessions): preserve divergent legacy history
* refactor(agents): narrow roster-only scope
* fix(config): isolate roster migration
* test(agents): align roster-only fixtures
* fix(agents): keep main agent undeletable
* fix(agents): harden roster migration invariants
* fix(agents): close setup and audit scope gaps
* fix(cron): scope session reaper throttles by agent
* fix(agents): preserve scoped owner precedence
* fix(config): preserve authored config ownership
* fix(setup): keep default workspace and roster in sync
* fix(setup): preserve default entry workspace on bare runs
* fix(agents): adapt roster rebase to keyed entries
* fix(agents): honor both roster representations
* fix(agents): route roster reads through shared helpers
* fix(config): preserve canonical roster writes
* fix(cron): resolve dynamic default for session reaper
* fix(agents): close dynamic default migration gaps
* fix(agents): align scoped session ownership
* fix(sessions): preserve legacy main directory casing
* fix(agents): align cron and legacy auth ownership
* fix(setup): provision the committed default workspace
* fix(cron): align scoped ownership and reaping
* fix(cron): treat blank agent ids as absent
* fix(cron): retain configured session-store owners
* fix(agents): repair roster-aware CI boundaries
* fix(cron): preserve scoped ownership resolution
* fix(agents): preserve rosterless maintenance paths
* fix(agents): propagate roster ownership through runtime boundaries
* fix(agents): preserve roster ownership across runtime paths
* fix(agents): harden roster diagnostics and legacy routing
* fix(agents): remove redundant diagnostic import
* test(agents): type CLI policy fixture explicitly
* fix(config): preserve canonical roster mutation identity
* fix(doctor): read canonical agent rosters consistently
* fix(config): resolve compound roster unsets safely
* fix(config): finalize main-session reconciliation
* fix(doctor): read canonical session state safely
* fix(sessions): preserve current visibility alias
* fix(config): track roster include provenance
* test(config): type roster provenance cases
* fix(config): refine roster include ownership
* fix(agents): preserve staged roster invariants
* test(config): align fixtures with explicit roster ownership
* test(node-host): preserve optional plan typing
* fix(config): preserve authored roster projections
* test(config): keep raw roster fixtures explicit
* test(config): normalize rosters at runtime fixtures
* fix(config): protect authored roster ownership
* fix(agents): require explicit session ownership
* fix(agents): enforce scoped roster ownership
* fix(sessions): merge fixed-store agent partitions
* fix(agents): harden roster ownership boundaries
* fix(config): reject ambiguous roster projections
* fix(sessions): preserve persisted store ownership
* fix(sessions): keep collision diagnostics additive
* fix(security): scan malformed roster workspaces
* test(config): align snapshot fixtures after rebase
* test(agents): use explicit roster fixtures
* fix(config): harden roster diagnostic boundaries
* fix(sessions): isolate fixed-store agent databases
* test(agents): type malformed default markers
* refactor(sessions): extract store collision resolution
* test(system-agent): split oversized setup coverage
* style(system-agent): format split setup suite
* fix(sessions): preserve promoted store ownership
* fix(sessions): derive scoped owner before target
* fix(sessions): preserve explicit sqlite ownership
* fix(agents): restore roster compatibility across CI
* fix(agents): enforce roster-owned runtime boundaries
* fix(agents): satisfy default lookup lint
* test(sessions): split known-owner coverage
* fix(state): satisfy path identity lint
* fix(agents): preserve malformed roster safety boundaries
* fix(agents): restore roster compatibility at runtime boundaries
* fix(config): satisfy roster boundary type checks
* fix(agents): preserve roster ownership across runtime probes
Setup inference probes now execute as the configured roster owner. Malformed agent-prefixed session rows are intentionally omitted by the fail-closed visibility contract rather than normalized by tests.
* fix(agents): satisfy session list owner lint
* fix(agents): preserve roster-owned runtime boundaries
Restore shared logical rows for exact SQLite session locators while keeping their physical database owner separate. The ownership regression test now constructs an explicit sole-owner database directly instead of relying on first-touch capture, matching the intentional shared-store contract.
* fix(sessions): preserve multiply owned exact stores
* fix(sessions): restore runtime owner boundaries
Keep incognito sentinels agent-owned, fold default-agent approvals into the global snapshot, and preserve the configless legacy-main CLI policy fallback. Also repair the existing CLI watchdog test lifecycle so the compact shard observes its timeout without an unawaited assertion or async timer stall; product behavior is unchanged by that test-only fix.
* test(ci): align owner-scoped fixtures
These assertions are unchanged. The fixtures now declare the intended non-default runner, expose the session-key constant imported by production status code, and select the main approvals bucket explicitly on Windows.
* fix(agents): close final roster ownership gaps
2026-07-24 22:38:09 -07:00
Peter Steinberger
edecdbd05e
refactor(config): config-surface reduction tranche 3 — product consolidations (review request) ( #111527 )
...
* refactor(config): consolidate media model lists
* refactor(config): unify memory configuration
* refactor(config): consolidate TTS ownership
* refactor(config): move typing policy to agents
* refactor(config): retire product-level config surfaces
* refactor(config): share scoped tool policy type
* chore(config): refresh generated baselines
* fix(config): honor agent typing overrides
* fix(config): migrate sibling config consumers
* refactor(infra): keep base64url decoder private
* fix(config): strip invalid legacy TTS values
* chore(config): refresh rebased baseline hash
* fix(doctor): route legacy messages.tts.realtime voice to talk during tts move
* refactor(config): polish final layout names
* refactor(config): freeze retired tuning defaults
* feat(config): add fast mode default symmetry
* refactor(config): key agent entries by id
* docs(config): update final layout reference
* test(config): cover final layout migrations
* chore(config): refresh final layout baselines
* fix(config): align final layout runtime readers
* fix(config): align remaining readers
* fix(config): stabilize final layout migrations
* fix(config): finalize config projection proof
* fix(config): address final layout review
* docs(release): preserve historical config names
* fix(config): complete keyed agent migration
* fix(config): close final migration gaps
* fix(config): finish full-branch review
* fix(config): complete runtime secret detection
* fix(config): close final review findings
* fix(config): finish canonical docs and heartbeat migration
* fix(config): integrate latest main after rebase
* refactor(env): isolate test-only controls
* refactor(env): isolate build and development controls
* refactor(env): collapse process identity indirection
* refactor(env): remove duplicate config and temp aliases
* docs(env): define the operator-facing allowlist
* ci(env): ratchet production variable count
* fix(env): remove stale provider helper import
* fix(env): make ratchet sorting explicit
* test(env): keep test seam in dead-code audit
* test(env): cover ratchet growth and boundary; document surface budgets
* docs(config): document tier-eval consolidations
* docs(config): clarify speech preference ownership
* test(memory): align retired tuning fixtures
* refactor(memory): freeze engine heuristics
* refactor(config): apply tier-eval tranche
* refactor(tts): move persona shaping to providers
* refactor(compaction): move prompt policy to providers
* test(config): align hookified prompt fixtures
* chore(deadcode): classify test-only exports
* chore(github): remove unused spawn helper
* chore(deadcode): classify queue diagnostics
* chore(deadcode): remove unused lane snapshot export
* chore(plugin-sdk): ratchet consolidated surface
* fix(config): integrate latest main after rebase
2026-07-21 20:28:43 -07:00
Peter Steinberger
783a5d21cf
refactor(config): purge numeric tuning knobs behind built-in defaults ( #111382 )
2026-07-19 07:35:45 -07:00
Peter Steinberger
09a64f7ab0
feat(models): make per-agent allowlists explicit ( #110888 )
2026-07-18 21:42:05 +01:00
Kyle Klouzal
e316e1c440
feat(discord): show subagent progress ( #95604 )
...
* feat(discord): show subagent progress
Co-authored-by: Kyle Klouzal <kklouzal@users.noreply.github.com >
* fix(discord): serialize progress cleanup ownership
Co-authored-by: Kyle Klouzal <kklouzal@users.noreply.github.com >
* test(discord): type progress state fixtures
* refactor(discord): split subagent progress state
* fix(discord): persist terminal progress outcomes
* fix(discord): narrow persisted cleanup rows
* refactor(discord): keep progress internals private
* perf(discord): preserve lazy progress loading
* chore(plugin-sdk): refresh API baseline after rebase
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
Co-authored-by: Kyle Klouzal <kklouzal@users.noreply.github.com >
2026-07-17 12:02:33 +01:00
xingzhou
d15e84610a
fix(discord): keep voice allowlists from granting owner authority ( #108813 )
...
* fix(discord): keep voice allowlists from granting owner authority
* fix(discord): normalize wildcard voice admission
* refactor(discord): separate voice admission from ownership
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-16 08:44:42 -07:00
Peter Steinberger
527c8cee0c
feat(discord): adapt voice wake names to room size ( #108696 )
...
* feat(discord): adapt voice wake names to room size
* chore(discord): defer voice release note
* chore(protocol): regenerate session create model
2026-07-16 00:41:26 -07:00
Peter Steinberger
b624abfc69
fix(discord): stop channel presence greetings for unrelated guild members ( #108448 )
...
* fix(discord): scope presence wakes to channel viewers
* chore: remove release-owned changelog entry
* fix(discord): bound presence permission lookups
* test(discord): bind presence fetch mock
* fix(discord): keep presence lookup overflow retryable
2026-07-15 13:51:48 -07:00
Peter Steinberger
ddc9ec3f36
feat(discord): opt-in Discord Activities widget support ( #107442 )
...
Adds a Discord Activities integration so an agent can show a self-contained
HTML widget to Discord users, opened as a sandboxed Activity inside the client.
Off by default: routes, the discord_widget tool, and the launch handler register
only when channels.discord.activities is configured. OAuth identifies the user
and gates on the account allowlist; widget lookup is capability- or
instance-validated; token exchange is rate-limited; widget HTML runs in a
no-network sandboxed iframe.
2026-07-15 04:07:46 -07:00
clawsweeper[bot]
3a208a5068
fix(discord): prevent presence wake floods after reconnects ( #107969 )
...
* feat(discord): throttle online-presence events after gateway reconnects
After a Discord gateway (re)connect the presence replay burst emitted one
system event per member, waking the agent each time. Add a per-account
emission gate: a post-reconnect suppression window (default 5 min), a
sliding-window burst limit (default 8/60s, logged once per episode), and
a configurable per-user greeting cooldown (default 8h). New guild
presenceEvents knobs: cooldownSeconds, reconnectSuppressSeconds,
burstLimit, burstWindowSeconds.
* fix(discord): preserve presence throttle retries
* fix(discord): preserve presence throttle retries
* fix(discord): scope presence throttle per guild
Co-authored-by: openclaw-clawsweeper[bot] <openclaw-clawsweeper[bot]@users.noreply.github.com>
* fix(discord): keep presence gate internals private
Co-authored-by: openclaw-clawsweeper[bot] <openclaw-clawsweeper[bot]@users.noreply.github.com>
---------
Co-authored-by: openclaw-clawsweeper[bot] <openclaw-clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com >
Co-authored-by: Peter Steinberger <peter@steipete.me >
2026-07-14 22:02:53 -07:00
Peter Steinberger
f59a0352b3
feat(discord): route online presence arrivals to agents ( #107451 )
...
* feat(discord): add online presence agent events
* fix(discord): harden presence event payloads
* fix(discord): satisfy presence lint contracts
* fix(heartbeat): run notification event wakes
* fix(discord): use wake heartbeat contract
* fix(discord): harden presence snapshot delivery
* chore: remove release-owned changelog entry
* fix(discord): remove unused presence type export
* fix(discord): keep presence config below loc limit
* fix(discord): reserve presence cooldown atomically
2026-07-14 07:22:11 -07:00
Peter Steinberger
cd7290bc29
fix(discord): show only agent status in progress drafts ( #107338 )
...
* fix(discord): show agent status only in progress drafts
* test(discord): preserve explicit progress label expectation
* test(telegram): update default progress label fixtures
* test(ui): use supported hidden-label assertions
2026-07-14 02:52:01 -07:00
Peter Steinberger
069616f33b
feat(discord): notify agents of voice participant changes ( #107004 )
...
* feat(plugin-sdk): support keyed system event upserts
* feat(discord): notify agents of voice participant changes
* refactor(plugin-sdk): consolidate system event replacement
* fix(discord): keep voice listener dependencies acyclic
* chore: keep release changelog out of PR
2026-07-13 20:03:18 -07:00
Peter Steinberger
35f80a1564
fix(discord): honor command owners in voice ( #106155 )
...
* fix(discord): honor command owners in voice
* chore(discord): defer voice note to release flow
* chore(discord): refresh pull request head
2026-07-13 01:34:49 -07:00
Peter Steinberger
74e42892b6
fix: delay narrated channel progress and remove default title ( #105607 )
...
* fix(channels): delay narrated progress drafts
* chore: keep release changelog unchanged
2026-07-12 12:06:38 -07:00
Peter Steinberger
fa77fe10d5
chore: migrate active GPT-5.5 references to GPT-5.6 ( #104452 )
...
* chore(models): migrate active GPT-5.5 references
* test(workboard): expect GPT-5.6 Sol default
* chore: keep release notes in PR body
* test(models): align picker fixtures with Sol default
* test: update PDF default model expectation
* test(qa): migrate thinking smoke to Luna
* test(gateway): align mock catalog with Sol default
* ci: retrigger exact-head PR checks
* test(gateway): document default catalog invariant
2026-07-11 06:30:57 -07:00
Vincent Koc
f0564943a7
docs(openai): refresh realtime 2.1 examples
2026-07-06 23:22:33 -07:00
scoootscooob
7e7fc0075e
[codex] Honor all ack scope for room events ( #87433 )
...
* fix(discord): honor all ack scope for room events
* fix(channels): align all ack scope for room events
* fix(channels): centralize ambient ack scope
* test(telegram): restore room-event ack fixture
* test(discord): satisfy promise executor lint
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-06 01:28:41 +01:00
Peter Steinberger
f7d7148cf0
docs: rewrite published docs grounded in current source ( #100142 )
...
Source-grounded rewrite of 529 published docs pages with per-unit information-loss verification: 1,713 factual corrections cited to src/**, generated surfaces regenerated, frontmatter titles preserved for i18n, release notes pages untouched. All docs gates green.
Closes #100141
2026-07-05 00:32:47 -04:00
Suhruth Vuppala
4440226d52
test(discord): clarify and guardrail gateway proxy selection ( #99126 )
...
* feat(discord): add HTTP_PROXY/HTTPS_PROXY env fallback for gateway WebSocket
Discord Gateway WebSocket connections now honor HTTP_PROXY/HTTPS_PROXY
environment variables as fallback before direct connection, matching the
existing pattern from Discord REST API and WhatsApp.
This enables Discord channel deployment in Kubernetes/OpenShift environments
with network policy egress restrictions, removing the need for broad :443
egress as a workaround.
- Add createEnvProxyDiscordGatewayAgent() helper (mirrors rest-fetch.ts pattern)
- Try env proxy before direct HttpsAgent in createDiscordGatewayPlugin()
- Explicit channels.discord.proxy still overrides env proxy
- Add formatErrorMessage and resolveEnvHttpProxyAgentOptions imports
Fixes #98266
* test(discord): keep gateway proxy explicit
Signed-off-by: sallyom <somalley@redhat.com >
* fix(discord): allow explicit remote proxy URLs
---------
Signed-off-by: sallyom <somalley@redhat.com >
Co-authored-by: sallyom <somalley@redhat.com >
Co-authored-by: joshavant <830519+joshavant@users.noreply.github.com >
2026-07-02 20:27:19 -05:00
slammajamma28
68ad8dacc0
fix(docs): Fix formatting on permissions for Discord bot ( #97584 )
...
* Fix required formatting text permissions for Discord bot
* remove whitespace
2026-06-28 18:30:36 -07:00
Naseem Muhammad
9ff8510f52
fix path to Discord Developer Mode in setup guide ( #97336 )
2026-06-28 11:03:25 -07:00
Hannes Rudolph
69c4d1aa85
Revert "feat(discord): add server management helper actions"
...
This reverts commit ae22f485ec .
2026-06-22 10:20:19 -06:00
Hannes Rudolph
ae22f485ec
feat(discord): add server management helper actions
2026-06-22 10:18:28 -06:00
Peter Steinberger
d92b3b5cc2
refactor: unify OpenAI provider identity
...
Refactor OpenAI provider identity so OpenAI remains the canonical provider for API-key and OAuth-backed flows while legacy openai-codex state is doctor/migration-only.
Keeps OpenAI Codex Responses as an API/transport class rather than a provider identity, moves auth aliases through providerAuthAliases, updates doctor repair sequencing for old auth/profile state, and refreshes tests/docs around the canonical OpenAI behavior.
2026-05-30 11:48:41 +02:00
Vincent Koc
27b15a19e8
refactor(voice): catalog voice models through providers ( #87794 )
...
* refactor(providers): catalog voice models
* feat(tts): route speech through voice models
* refactor(tts): rename speaker selection fields
* refactor(tts): mark default speech models
* test(tts): type migrated speaker config assertions
* refactor(providers): avoid catalog merge map spread
* fix(tts): honor voice model fallbacks
* refactor(tts): move speech core into package
* chore(tts): register speech core knip workspace
* fix(tts): show migrated speaker voice in status
* fix(tts): satisfy speech core lint
* fix(tts): preserve explicit model aliases
* test(tts): narrow provider config assertion
* test(doctor): allow slow commitments repair check
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-05-29 04:46:45 +01:00
clawsweeper[bot]
4df1fcf7b3
feat(discord): show commentary in progress drafts ( #85200 )
...
Adds opt-in Discord progress-draft commentary for assistant preambles while keeping commentary hidden by default and final delivery unchanged.
Keeps commentary config Discord-specific, strips directive tags/NO_REPLY, and clears stale commentary rows without stopping the active draft stream.
Thanks @bryanpearson.
Co-authored-by: bryanpearson <bryanmpearson@gmail.com >
2026-05-29 04:21:06 +01:00
Peter Steinberger
0c5f622f9a
perf(discord): use libopus-wasm for voice opus
2026-05-26 02:53:29 +01:00
Peter Steinberger
321f06ad0e
fix: stabilize discord voice receive recovery
2026-05-26 01:22:21 +01:00
Peter Steinberger
4e9dac5e00
fix(discord): stabilize realtime wake-name feedback
2026-05-25 21:24:06 +01:00
Peter Steinberger
f00a912c25
fix: tighten Discord voice wake matching ( #86595 )
...
* fix: tighten Discord voice wake matching
* test: avoid wildcard model runtime normalization
2026-05-25 19:51:32 +01:00
Peter Steinberger
5ae91f01fa
fix: speed up Discord voice wake consults
2026-05-25 18:09:16 +01:00
Peter Steinberger
fdfcb0795a
fix(discord): harden realtime voice wake joins
2026-05-24 05:54:10 +01:00
Peter Steinberger
17dcdead00
fix: gate discord realtime voice by wake name ( #85915 )
2026-05-24 04:47:16 +01:00
Peter Steinberger
40d36b5bbc
docs(talk): document realtime active-run control
...
Co-authored-by: Colin <colin@solvely.net >
2026-05-24 02:35:04 +01:00
OpenClaw Contributor
4c6fe55d20
fix(discord): cap component ttl at one day
2026-05-21 21:54:30 +01:00
OpenClaw Contributor
c17a48ccfd
docs(discord): document component ttl config
2026-05-21 21:54:30 +01:00
Peter Steinberger
e0b53cae41
docs: remove stale owner tool wording
2026-05-21 15:14:48 +01:00
Jason (Json)
48a14e41e2
feat(discord): add realtime voice bootstrap context
...
Add bounded realtime profile context for Discord realtime voice sessions.
Default to `IDENTITY.md`, `USER.md`, and `SOUL.md`; `voice.realtime.bootstrapContextFiles: []` disables the extra context.
Document the config/SDK surface and refresh generated metadata.
Co-authored-by: FullerStackDev <263060202+fuller-stack-dev@users.noreply.github.com >
2026-05-20 14:13:59 +01:00