openclaw/scripts
cxy 5ccf179a34
feat(qqbot): group chat support, C2C streaming, chunked media upload, and architecture refactor (#70624)
* feat(qqbot): implement unified media upload handling and introduce chunked upload support

This commit enhances the media upload functionality by introducing a unified `sendMedia` method that consolidates the previous separate methods for sending images, voice messages, videos, and files. Key changes include:

- Added `uploadChunked` function for future chunked media uploads, currently marked as not implemented.
- Introduced `MediaSource` abstraction to handle various media types (URLs, base64, local files, buffers) uniformly.
- Updated existing media handling logic to utilize the new `sendMedia` method, ensuring consistent media processing across different types.
- Enhanced error handling and validation for media uploads, including MIME type checks and file size limits.

These changes aim to streamline the media upload process and prepare for future enhancements in handling larger files through chunked uploads.

* feat(qqbot): enhance media upload capabilities with chunked upload support

This commit updates the media upload functionality by implementing chunked upload support for larger files. Key changes include:

- Revised the `SKILL.md` documentation to clarify media file size limits and local file path requirements.
- Introduced a new test suite for the chunked media upload functionality, ensuring robust error handling and upload processes.
- Updated the media handling logic to enforce per-file-type upload ceilings, allowing for seamless integration of chunked uploads.
- Enhanced error handling for daily upload limits, providing user-friendly messages when limits are exceeded.

These improvements aim to streamline the media upload process and accommodate larger files effectively.

* feat(qqbot): add C2C streaming API support for message delivery

This commit introduces support for the QQ C2C official `stream_messages` API, enabling single-message typing-style updates. Key changes include:

- Updated the configuration schema to include a new `c2cStreamApi` boolean option for enabling the C2C streaming API.
- Enhanced the `QQBotAccountConfig` interface to accommodate the new streaming option.
- Implemented a `StreamingController` to manage the lifecycle of C2C stream messages, ensuring proper handling of media tags and message boundaries.
- Updated the outbound dispatch logic to utilize the new streaming capabilities, allowing for more dynamic message delivery in one-to-one chats.

These enhancements aim to improve the responsiveness and interactivity of message delivery within the QQBot framework.

* feat(qqbot): implement group chat support and unify adapter/DI architecture

- Implement group message history tracking with pending history buffer
  (record on skip, render on @-mention reply)
- Add mention detection and gating: explicit @bot, implicit quote-reply,
  ignoreOtherMentions, configurable activation mode (mention/always)
- Add group activation resolution with session store persistence
- Add message queue with per-peer FIFO and group message merging
  (batch multiple rapid messages into one merged payload)
- Add deliver debounce to merge rapid outbound text bursts into
  single messages, with media flush and maxWait cap
- Add group config resolution: per-group prompt, history limit,
  wildcard and specific group overrides
- Enrich history attachments with local paths from processAttachments
  so that history context renders downloaded paths instead of ephemeral
  QQ CDN URLs

- Merge ports/ directory into adapter/ as single entry point
- Expand EngineAdapters to 5 required ports: history, mentionGate,
  audioConvert, outboundAudio, commands
- Remove global register/get singletons in favor of constructor
  injection and one-time init
- Add createEngineAdapters() in bridge/gateway.ts as single assembly point

- Extract monolithic buildInboundContext into 11 discrete stages:
  access, content, quote, refidx, group-gate, envelope, assembly
- Extract group chat modules: history, mention, activation,
  message-gating, deliver-debounce
- Extract config/group.ts, utils/attachment-tags.ts

* feat(qqbot): add /bot-streaming command for C2C message streaming control

This commit introduces the `/bot-streaming` command, allowing users to enable or disable streaming for message delivery in C2C chats. Key changes include:

- Implementation of the `isStreamingConfigEnabled` function to check the current streaming configuration.
- Command handler for `/bot-streaming` that provides usage instructions and manages the streaming state.
- Updates to the command's response messages to inform users of the current streaming status and how to toggle it.

These enhancements aim to improve user experience by providing a straightforward way to manage streaming message delivery in private chats.

* feat(qqbot): extract interaction handler and add remote config query/update support

- Extract INTERACTION_CREATE handler from gateway.ts into a dedicated
  interaction-handler.ts module for better separation of concerns
- Add config query (type=2001) and config update (type=2002) interaction
  branches that read/write claw_cfg via runtime.config API
- Register INTERACTION intent (1<<26) in FULL_INTENTS to receive
  INTERACTION_CREATE events from the gateway
- Add InteractionType constants (CONFIG_QUERY, CONFIG_UPDATE)
- Extend GatewayPluginRuntime with optional config API (loadConfig,
  writeConfigFile) for interaction handler access
- Add QQBotAccountConfigView interface for typed config field access
- Extend acknowledgeInteraction to accept optional data payload for
  rich ACK responses (e.g. claw_cfg snapshot)
- Export getFrameworkVersion from slash-commands-impl for version
  reporting in config snapshots
- Remove unused eslint-disable directive in streaming-media-send.ts

* feat(qqbot): enhance account management and logging capabilities

- Introduced `toGatewayAccount` function to map resolved QQBot accounts to the engine's gateway account structure.
- Added `persistAccountCredentialSnapshot` function to streamline credential backup during gateway events.
- Updated the `qqbotPlugin` to utilize the new account mapping and credential persistence functions, improving the handling of account data.
- Enhanced logging functionality by modifying the `EngineLogger` interface to support metadata in log messages.
- Implemented new commands for managing logs and clearing storage, providing users with better control over their data and system resources.
- Registered multiple built-in commands for improved user interaction, including `/bot-logs` for exporting logs and `/bot-clear-storage` for managing downloaded files.
- Updated configuration schemas to reflect new options and improve clarity for users.

* fix(qqbot): resolve oxlint errors and update raw-fetch allowlist

- Replace unnecessary `else` after `return` in outbound-media-send.ts (6 occurrences)
- Use `Number.parseInt` instead of global `parseInt` in outbound.ts and streaming-media-send.ts
- Use `Number.isNaN` instead of global `isNaN` in register-basic.ts
- Prefer `**` over `Math.pow` in media-chunked.ts
- Convert interface with call signature to function type in commands.port.ts
- Update api-client.ts allowlist line number (108→124) and add media-chunked.ts:552 to raw-fetch allowlist

* docs(qqbot): translate streaming-c2c.ts header comments to English

* feat(qqbot): add voiceMediaTypes

* feat: restore dispatch changes

* fix(qqbot): align test files with updated engine interfaces after rebase

- inbound-attachments.test: replace removed registerAudioConvertAdapter
  with AudioConvertPort, pass audioConvert in ProcessContext
- inbound-pipeline.self-echo.test: add required adapters field to
  InboundPipelineDeps mock (history, mentionGate, audioConvert,
  outboundAudio, commands)
- outbound-dispatch.test: add required skipped field to InboundContext

* fix(qqbot): update test assertions to match refactored engine interfaces

- inbound-pipeline.self-echo.test: self-echo blocking was moved upstream;
  update test to expect non-blocked pipeline behavior
- outbound-dispatch.test: TTS voice path now uses unified sendMedia
  instead of sendVoiceMessage; add sendMedia mock and update assertion
- format-ref-entry.test: attachment format changed from [image: ...]
  to MEDIA: tag syntax via renderAttachmentTags; update expected output

* refactor(qqbot): migrate from deprecated config API to current/replaceConfigFile

Replace all usages of deprecated runtime config methods:
- loadConfig() → current()
- writeConfigFile(cfg) → replaceConfigFile({ nextConfig, afterWrite })

Updated files:
- bridge/narrowing.ts: writeOpenClawConfigThroughRuntime
- adapter/commands.port.ts: ApproveRuntimeGetter type signature
- commands/builtin/register-approve.ts: loadExecConfig, writeExecConfig, reset
- commands/builtin/register-streaming.ts: config read/write
- gateway/interaction-handler.ts: config query/update handlers
- gateway/types.ts: GatewayPluginRuntime.config interface

* feat(qqbot): update package.json

* fix(qqbot): replace deprecated config-runtime import with config-types subpath

Bundled plugin lint requires focused plugin-sdk subpaths.
- gateway.ts: openclaw/plugin-sdk/config-runtime → config-types
- narrowing.ts: openclaw/plugin-sdk/config-runtime → config-types

* feat(qqbot): group chat support, C2C streaming, chunked media upload, and architecture refactor (#70624) (thanks @cxyhhhhh)

---------

Co-authored-by: Bobby <zkd8907@live.com>
Co-authored-by: sliverp <870080352@qq.com>
2026-04-27 23:19:12 +08:00
..
clawdock [ClawDock] Iteration on the first submission; bug fixes, UX improvements, etc (#23912) 2026-03-29 20:05:41 -04:00
dev feat: add browser realtime talk transports 2026-04-27 14:22:32 +01:00
docker fix(docker): route local provider setup to host gateway 2026-04-27 08:46:33 +01:00
docs-i18n test: update QA parity fixtures for GPT-5.5 2026-04-25 18:05:28 +01:00
e2e fix(qa-lab): keep gateway client on generic sdk seam 2026-04-27 14:05:09 +01:00
github ci: harden cross-os release harness on Windows 2026-04-27 10:03:38 +01:00
k8s
lib feat(channel) yuanbao (#72756) 2026-04-27 23:04:33 +08:00
podman update podman setup and docs (#55388) 2026-03-27 11:47:35 -04:00
pr-lib ci: enforce changelog attribution policy in pr gates 2026-04-27 14:33:59 +01:00
pre-commit fix(ci): parse quoted pnpm snapshot keys 2026-04-14 21:15:43 -04:00
repro plugin-sdk: drop investigative weixin repro harness 2026-04-09 01:35:15 +01:00
systemd
test-planner refactor: remove custom test planner runtime 2026-04-03 12:45:13 +01:00
AGENTS.md feat: add changed-lane local gate 2026-04-20 15:48:20 +01:00
analyze-plugin-sdk-usage.ts Add reusable TypeScript topology analyzer for public surface usage 2026-03-28 08:37:26 -05:00
anthropic-prompt-probe.ts chore: enable no-unnecessary-type-arguments 2026-04-10 20:14:49 +01:00
audit-seams.mjs Revert "refactor(cli): remove bundled cli text providers" 2026-04-06 13:40:41 +01:00
auth-monitor.sh
bench-cli-startup.ts fix: route tasks json through lean cli path 2026-04-27 12:13:51 +01:00
bench-gateway-startup.ts chore: add plugin lookup startup trace metrics 2026-04-27 08:48:18 +01:00
bench-model.ts chore(lint): type script and test helpers 2026-04-06 16:55:50 +01:00
bench-test-changed.mjs perf(test): trim runtime lookups and add changed bench 2026-04-06 16:49:28 +01:00
build-all.mjs fix: guard cli bootstrap imports 2026-04-27 11:24:35 +01:00
build-and-run-mac.sh
build-docs-list.mjs
build-stamp.d.mts fix(ci): write dist build stamp after builds 2026-03-22 22:23:25 -07:00
build-stamp.mjs fix(ci): write dist build stamp after builds 2026-03-22 22:23:25 -07:00
build_icon.sh
bundle-a2ui.mjs perf(build): use tsgo for a2ui renderer compile 2026-04-22 04:57:55 +01:00
bundle-a2ui.sh fix: unblock windows update build 2026-04-08 07:18:31 +01:00
canvas-a2ui-copy.ts build(a2ui): allow sparse core builds 2026-04-05 07:34:33 +01:00
changed-lanes.mjs refactor(config): migrate plugin config access 2026-04-27 12:35:58 +01:00
changelog-add-unreleased.ts refactor(browser): share lifecycle cleanup helpers 2026-04-04 12:17:46 +01:00
changelog-to-html.sh
check-architecture-smells.mjs test: speed up import-heavy tests 2026-04-25 11:04:16 +01:00
check-changed.mjs ci: guard plugin sdk wildcard reexports 2026-04-27 14:52:21 +01:00
check-changelog-attributions.mjs ci: guard changelog bot attributions 2026-04-27 14:29:41 +01:00
check-channel-agnostic-boundaries.mjs refactor: enforce plugin-owned channel boundaries 2026-04-18 22:48:27 +01:00
check-cli-bootstrap-imports.mjs fix: guard cli bootstrap imports 2026-04-27 11:24:35 +01:00
check-cli-startup-memory.mjs test(ci): tighten startup memory thresholds 2026-03-19 16:28:00 -07:00
check-codex-app-server-protocol.ts feat(codex): add app-server protocol bridge 2026-04-24 04:24:08 +01:00
check-composite-action-input-interpolation.py
check-deprecated-internal-config-api.mjs refactor(plugins): enforce config API deprecations 2026-04-27 12:52:20 +01:00
check-docker-e2e-boundaries.mjs test: add docker e2e planner guards 2026-04-26 23:48:32 +01:00
check-docs-i18n-glossary.mjs [codex] Move internal development notes to maintainers (#57316) 2026-03-30 00:15:08 +02:00
check-docs-mdx.mjs refactor: dedupe shared helpers 2026-04-24 08:26:37 +01:00
check-dynamic-import-warts.mjs refactor: cache provider tool runtimes 2026-04-18 19:05:00 +01:00
check-extension-package-tsc-boundary.mjs perf(ci): use tsgo for extension boundary compiles 2026-04-22 04:22:38 +01:00
check-extension-plugin-sdk-boundary.mjs chore: tighten plugin boundary export audit 2026-04-27 11:47:09 +01:00
check-file-utils.ts Config: separate core/plugin baseline entries (#60162) 2026-04-03 18:26:23 +09:00
check-gateway-watch-regression.mjs ci: keep gateway watch skip-build artifact fresh 2026-04-23 03:11:51 +01:00
check-import-cycles.ts refactor: dedupe tooling helpers 2026-04-23 18:09:20 +01:00
check-ingress-agent-owner-context.mjs refactor(plugins): decouple bundled plugin runtime loading 2026-03-29 09:10:38 +01:00
check-live-cache.ts test(agents): keep openai image cache probe non-blocking 2026-04-27 11:34:15 +01:00
check-madge-import-cycles.ts refactor: dedupe tooling helpers 2026-04-23 18:09:20 +01:00
check-no-conflict-markers.mjs ci: fix workflow sanity gate 2026-03-22 23:04:04 +00:00
check-no-extension-src-imports.ts refactor: centralize update targets and extension guardrails 2026-04-03 23:26:31 +09:00
check-no-extension-test-core-imports.ts test(extensions): move channel contracts out of core 2026-04-20 17:59:51 +01:00
check-no-monolithic-plugin-sdk-entry-imports.ts test(plugin-sdk): use narrow config runtime mocks 2026-04-27 15:14:02 +01:00
check-no-pairing-store-group-auth.mjs
check-no-random-messaging-tmp.mjs Media: secure image temp dirs (#58270) 2026-03-31 11:12:47 +01:00
check-no-raw-channel-fetch.mjs feat(qqbot): group chat support, C2C streaming, chunked media upload, and architecture refactor (#70624) 2026-04-27 23:19:12 +08:00
check-no-raw-window-open.mjs
check-no-register-http-handler.mjs refactor: dedupe test and script helpers 2026-03-24 15:48:35 +00:00
check-no-runtime-action-load-config.mjs refactor(config): tighten plugin config guardrails 2026-04-27 14:20:27 +01:00
check-openclaw-package-tarball.mjs ci: time-box package acceptance legacy compat 2026-04-27 07:11:14 +01:00
check-pairing-account-scope.mjs
check-plugin-extension-import-boundary.mjs refactor: share duplicate script helpers 2026-04-18 21:12:54 +01:00
check-plugin-sdk-exports.mjs Plugin SDK: preserve secret input runtime build 2026-04-17 22:15:00 -04:00
check-plugin-sdk-subpath-exports.mjs build: remove private QA package compat shims 2026-04-27 00:26:02 +01:00
check-plugin-sdk-wildcard-reexports.mjs ci: guard plugin sdk wildcard reexports 2026-04-27 14:52:21 +01:00
check-release-metadata-only.mjs chore: bump version to 2026.4.22 2026-04-22 03:04:53 +01:00
check-sdk-package-extension-import-boundary.mjs refactor: share duplicate script helpers 2026-04-18 21:12:54 +01:00
check-src-extension-import-boundary.mjs feat: Add /models add hot-reload model registration (#70211) 2026-04-22 12:00:30 -05:00
check-temp-path-guardrails.ts perf(test): move temp path guard to check 2026-04-20 19:07:29 +01:00
check-test-helper-extension-import-boundary.mjs refactor: share duplicate script helpers 2026-04-18 21:12:54 +01:00
check-timed.mjs perf: parallelize local check gate 2026-04-20 13:55:55 +01:00
check-ts-max-loc.ts Reduce script logging suppressions and Feishu any casts 2026-03-27 02:12:56 -05:00
check-tsgo-core-boundary.mjs refactor: enforce plugin-owned channel boundaries 2026-04-18 22:48:27 +01:00
check-web-fetch-provider-boundaries.mjs perf: cache guard inventory checks 2026-04-25 10:02:02 +01:00
check-web-search-provider-boundaries.mjs perf: share web boundary source scans 2026-04-11 12:50:45 +01:00
check-webhook-auth-body-order.mjs refactor(plugins): decouple bundled plugin runtime loading 2026-03-29 09:10:38 +01:00
check-workflows.mjs test: add docker e2e rerun helpers 2026-04-26 23:56:14 +01:00
check.mjs ci: guard plugin sdk wildcard reexports 2026-04-27 14:52:21 +01:00
ci-changed-scope.d.mts ci: split install smoke fast path 2026-04-24 01:50:42 +01:00
ci-changed-scope.mjs fix(agents): normalize Windows runtime imports (#72731) 2026-04-27 10:34:25 +01:00
ci-hydrate-live-auth.sh ci: shard docker live model checks 2026-04-23 08:40:18 +01:00
ci-run-timings.mjs ci: split auto-reply shard timing 2026-04-25 23:47:00 +01:00
claude-auth-status.sh
CLAUDE.md docs(agents): split scoped workflow guidance (#65241) 2026-04-12 09:09:50 +01:00
clawlog.sh
clawtributors-map.json docs: clean up clawtributors generator 2026-04-15 14:20:32 -04:00
close-duplicate-prs-after-merge.mjs ci: add duplicate PR cleanup workflow 2026-04-23 18:41:32 +01:00
codesign-mac-app.sh fix(macos): sign mlx tts helper before app binary 2026-04-23 16:49:53 +01:00
codespell-dictionary.txt
codespell-ignore.txt docs: align documentation with current surfaces 2026-04-23 07:25:06 +01:00
committer fix(tooling): commit hook-restaged file contents 2026-04-12 05:19:56 +01:00
control-ui-i18n.ts test: update QA parity fixtures for GPT-5.5 2026-04-25 18:05:28 +01:00
copy-bundled-plugin-metadata.d.mts fix(release): preserve shipped channel surfaces in npm tar (#52913) 2026-03-23 17:39:22 +02:00
copy-bundled-plugin-metadata.mjs fix(telegram): persist accepted update offsets 2026-04-25 01:35:05 +01:00
copy-export-html-templates.ts refactor: share build copy script helpers 2026-03-26 23:20:26 +00:00
copy-hook-metadata.ts refactor: share build copy script helpers 2026-03-26 23:20:26 +00:00
copy-plugin-sdk-root-alias.mjs
create-dmg.sh
cron_usage_report.ts refactor(lint): enable map spread rule 2026-04-18 20:37:12 +01:00
debug-claude-usage.ts refactor: simplify claude usage debug parsing 2026-04-10 23:37:23 +01:00
docker-e2e-rerun.mjs ci(docker): reuse cached e2e images for reruns 2026-04-27 06:29:09 +01:00
docker-e2e-timings.mjs test: add docker e2e rerun helpers 2026-04-26 23:56:14 +01:00
docker-e2e.mjs ci(docker): reuse cached e2e images for reruns 2026-04-27 06:29:09 +01:00
docs-link-audit.d.mts fix(docs): handle anchors in docs link audit 2026-03-21 19:58:36 +00:00
docs-link-audit.mjs refactor: simplify cli conversions 2026-04-11 01:27:48 +01:00
docs-list.js [codex] Move internal development notes to maintainers (#57316) 2026-03-30 00:15:08 +02:00
docs-spellcheck.sh
docs-sync-publish.mjs fix(docs-sync): prune orphan locale docs whose English source no longer exists 2026-04-27 03:34:57 -07:00
firecrawl-compare.ts refactor: dedupe script error formatting 2026-04-07 05:06:54 +01:00
generate-base-config-schema.ts fix(config): cap generated schema export types 2026-04-05 07:58:02 +01:00
generate-bundled-channel-config-metadata.ts perf(config): use generated SecretRef policy metadata 2026-04-13 20:19:04 +01:00
generate-bundled-provider-auth-env-vars.d.mts Plugins: generate bundled auth env metadata 2026-03-18 10:53:48 -07:00
generate-config-doc-baseline.ts refactor: replace 156k-line generated baselines with SHA-256 hash files 2026-04-04 16:49:21 +09:00
generate-host-env-security-policy-swift.mjs fix(infra): expand host env security policy denylist [AI] (#63277) 2026-04-10 11:36:39 +05:30
generate-plugin-sdk-api-baseline.ts refactor: replace 156k-line generated baselines with SHA-256 hash files 2026-04-04 16:49:21 +09:00
generate-runtime-sidecar-paths-baseline.ts test: baseline bundled runtime sidecar paths 2026-04-03 14:26:01 +01:00
generate-secretref-credential-matrix.ts
gh-read feat: add gh-read GitHub app helper 2026-04-08 00:09:07 +01:00
gh-read.ts chore: enable consistent-return 2026-04-10 20:56:43 +01:00
ghsa-patch.mjs
install.ps1 fix: avoid PowerShell error variable collision 2026-04-26 16:26:31 +01:00
install.sh fix: clarify install switching 2026-04-26 09:46:41 +01:00
ios-asc-keychain-setup.sh
ios-beta-archive.sh
ios-beta-prepare.sh feat(ios): pin calver release versioning (#63001) 2026-04-08 11:25:35 +03:00
ios-beta-release.sh
ios-configure-signing.sh fix(ios): harden watch exec approval review (#61757) 2026-04-06 17:42:42 +03:00
ios-pin-version.ts feat(ios): pin calver release versioning (#63001) 2026-04-08 11:25:35 +03:00
ios-sync-versioning.ts feat(ios): pin calver release versioning (#63001) 2026-04-08 11:25:35 +03:00
ios-team-id.sh
ios-version.ts refactor: simplify typed conversions 2026-04-11 01:01:30 +01:00
ios-write-version-xcconfig.sh feat(ios): pin calver release versioning (#63001) 2026-04-08 11:25:35 +03:00
label-open-issues.ts chore(lint): enable additional cleanup rules 2026-04-18 20:37:13 +01:00
live-docker-normalize-config.ts refactor(config): migrate plugin config access 2026-04-27 12:35:58 +01:00
load-channel-config-surface.ts Config: stabilize bundled channel metadata loading 2026-04-13 00:26:44 +02:00
make_appcast.sh build: harden local release verification 2026-03-23 17:38:08 -07:00
mobile-reauth.sh refactor!: drop legacy CLAWDBOT env compatibility 2026-03-22 22:13:39 -07:00
notarize-mac-artifact.sh
npm-runner.mjs refactor: dedupe windows cmd runner helpers 2026-04-06 16:52:41 +01:00
openclaw-cross-os-release-checks.ts ci: keep release checks compatible with stable refs 2026-04-27 13:59:49 +01:00
openclaw-npm-postpublish-verify.ts fix(release): preserve plugin-local runtime deps in postpublish verify 2026-04-24 18:22:24 +01:00
openclaw-npm-publish.sh build: make npm release tag configurable 2026-04-02 19:06:37 +01:00
openclaw-npm-release-check.ts build: remove private QA package compat shims 2026-04-27 00:26:02 +01:00
openclaw-prepack.ts fix(plugins): localize bundled runtime deps to extensions (#67099) 2026-04-15 12:04:31 +01:00
package-mac-app.sh ci: isolate mlx from macos swift checks 2026-04-22 02:12:07 +01:00
package-mac-dist.sh fix(macos): derive correction sparkle build 2026-04-23 16:49:53 +01:00
package-openclaw-for-docker.mjs ci: split package acceptance refs 2026-04-27 04:39:19 +01:00
plugin-clawhub-publish.sh CI: add ClawHub plugin release workflow (#59179) 2026-04-03 15:40:07 +02:00
plugin-clawhub-release-check.ts CI: add ClawHub plugin release workflow (#59179) 2026-04-03 15:40:07 +02:00
plugin-clawhub-release-plan.ts CI: add ClawHub plugin release workflow (#59179) 2026-04-03 15:40:07 +02:00
plugin-npm-publish.sh fix(ci): allow plugin npm preview without publish token (#58929) 2026-04-01 19:16:46 +09:00
plugin-npm-release-check.ts Release: add plugin npm publish workflow (#47678) 2026-03-18 13:44:23 +01:00
plugin-npm-release-plan.ts Release: add plugin npm publish workflow (#47678) 2026-03-18 13:44:23 +01:00
pnpm-runner.d.ts build: type live media runner 2026-04-06 19:52:42 +01:00
pnpm-runner.mjs fix: cover Windows pnpm and Lobster install regressions 2026-04-26 08:14:28 +01:00
postinstall-bundled-plugins.mjs fix: hide bundled runtime npm windows 2026-04-27 08:31:07 +01:00
pr Maintainer: split PR workflow script modules 2026-03-30 20:28:32 -04:00
pr-merge
pr-prepare
pr-review
preinstall-package-manager-warning.mjs fix(plugins): localize bundled runtime deps to extensions (#67099) 2026-04-15 12:04:31 +01:00
prepare-codex-ci-auth.ts test(codex): cover app-server Docker flows 2026-04-24 04:24:08 +01:00
prepare-codex-ci-config.ts CI: stabilize live release lanes (#67838) 2026-04-18 03:18:12 +02:00
prepare-extension-package-boundary-artifacts.mjs fix(test): reuse heavy-check lock in boundary prep 2026-04-25 02:49:45 -07:00
prepush-ci.sh fix(test): route raw vitest scripts through wrapper 2026-04-12 04:56:21 +01:00
print-cli-backend-live-metadata.ts feat: unify live cli backend probes 2026-04-07 10:35:24 +01:00
process-warning-filter.mjs chore: enable consistent-return 2026-04-10 20:56:43 +01:00
profile-extension-memory.mjs refactor: dedupe script error formatting 2026-04-07 05:06:54 +01:00
profile-tsgo.mjs perf: simplify tsgo test lanes 2026-04-18 23:16:47 +01:00
protocol-gen-swift.ts fix(protocol): keep Swift array item types stable 2026-04-23 05:06:50 +01:00
protocol-gen.ts
proxy-install-ca.mjs feat(qa-lab): Add proxy capture stack and QA Lab inspector (#64895) 2026-04-11 12:34:57 -05:00
qa-e2e.ts refactor: remove qa-e2e compatibility facade 2026-04-06 17:23:35 +01:00
qa-lab-up.ts feat: add fast qa lab ui refresh mode 2026-04-07 09:45:11 +01:00
qa-otel-smoke.ts test(docker): align package harness image 2026-04-27 01:22:58 +01:00
readability-basic-compare.ts
recover-orphaned-processes.sh
release-check.ts fix: guard cli bootstrap imports 2026-04-27 11:24:35 +01:00
resolve-openclaw-package-candidate.mjs ci: split package acceptance refs 2026-04-27 04:39:19 +01:00
restart-mac.sh
root-dependency-ownership-audit.mjs feat(plugins): move Bonjour discovery into bundled plugin 2026-04-23 23:29:51 -07:00
run-additional-boundary-checks.mjs ci: parallelize additional boundary guards 2026-04-22 18:21:05 +01:00
run-bundled-extension-oxlint.mjs refactor(plugins): share extension oxlint runner 2026-04-06 15:25:34 +01:00
run-extension-channel-oxlint.mjs ci: allow empty extension channel lint 2026-04-20 16:58:03 +01:00
run-node.d.mts fix: skip clean run-node runtime restaging 2026-04-22 06:28:50 +01:00
run-node.mjs test: fix plugin registry CI contracts 2026-04-27 11:25:06 +01:00
run-openclaw-podman.sh remove noisy podman output from launch script and update doc (#59368) 2026-04-01 23:28:11 -04:00
run-oxlint-shards.mjs perf: parallelize local check gate 2026-04-20 13:55:55 +01:00
run-oxlint.mjs fix(test): ignore local check opt-out in dev wrappers 2026-04-25 03:32:01 -07:00
run-tsgo.mjs fix(test): ignore local check opt-out in dev wrappers 2026-04-25 03:32:01 -07:00
run-vitest-profile.mjs test: move Vitest configs under test 2026-04-10 13:44:51 +01:00
run-vitest.mjs fix(test): keep local Vitest checks serialized 2026-04-25 03:07:27 -07:00
runtime-postbuild-shared.mjs
runtime-postbuild.mjs chore(acpx): clarify runtime asset packaging 2026-04-06 17:51:21 +01:00
sandbox-browser-entrypoint.sh fix(sandbox): enforce CDP source-range restriction by default (#61404) 2026-04-10 14:59:25 -06:00
sandbox-browser-setup.sh ci: centralize docker build wrapper 2026-04-26 22:14:36 +01:00
sandbox-common-setup.sh ci: centralize docker build wrapper 2026-04-26 22:14:36 +01:00
sandbox-setup.sh ci: centralize docker build wrapper 2026-04-26 22:14:36 +01:00
sbom-risk-report.mjs fix(deps): keep plugin ownership records live (#71331) 2026-04-24 19:15:12 -07:00
setup-auth-system.sh
sparkle-build.ts
sqlite-vec-smoke.mjs refactor: dedupe script error formatting 2026-04-07 05:06:54 +01:00
stage-bundled-plugin-runtime-deps.mjs fix: clean runtime deps backup owner marker 2026-04-27 08:43:03 +01:00
stage-bundled-plugin-runtime.d.mts
stage-bundled-plugin-runtime.mjs fix(build): harden bundled plugin runtime staging 2026-04-25 04:27:17 -07:00
sync-codex-app-server-protocol.ts feat(codex): add app-server protocol bridge 2026-04-24 04:24:08 +01:00
sync-labels.ts docs: add beta blocker contributor guidance (#55199) 2026-03-26 09:31:59 -05:00
sync-moonshot-docs.ts
sync-plugin-sdk-exports.mjs
sync-plugin-versions.ts fix(plugins): preserve bundled host compatibility floor 2026-04-12 00:22:32 +01:00
termux-auth-widget.sh refactor!: drop legacy CLAWDBOT env compatibility 2026-03-22 22:13:39 -07:00
termux-quick-auth.sh refactor!: drop legacy CLAWDBOT env compatibility 2026-03-22 22:13:39 -07:00
termux-sync-widget.sh refactor!: drop legacy CLAWDBOT env compatibility 2026-03-22 22:13:39 -07:00
test-built-bundled-channel-entry-smoke.mjs fix(discord): keep subagent hooks lazy in channel entry 2026-04-23 16:56:44 +01:00
test-built-bundled-runtime-deps.mjs fix: resolve browser playwright runtime deps 2026-04-27 08:50:56 +01:00
test-built-plugin-singleton.mjs refactor: dedupe test helpers and script warning filter 2026-04-08 15:58:45 +01:00
test-cleanup-docker.sh ci: centralize docker build wrapper 2026-04-26 22:14:36 +01:00
test-cli-startup-bench-budget.mjs refactor: remove custom test planner runtime 2026-04-03 12:45:13 +01:00
test-docker-all.mjs ci(docker): split bundled release lanes 2026-04-27 07:17:14 +01:00
test-docker-all.sh test: parallelize docker aggregate 2026-04-23 14:31:18 +01:00
test-extension-batch.mjs ci: parallelize extension batch groups 2026-04-22 19:39:08 +01:00
test-extension.mjs refactor: dedupe script error formatting 2026-04-07 05:06:54 +01:00
test-force.ts fix(test): route force runner through project sharding 2026-04-12 04:54:36 +01:00
test-group-report.mjs Tests: scope grouped benchmark artifacts 2026-04-16 23:45:57 -04:00
test-hotspots.mjs test: move Vitest configs under test 2026-04-10 13:44:51 +01:00
test-install-sh-docker.sh ci: centralize docker build wrapper 2026-04-26 22:14:36 +01:00
test-install-sh-e2e-docker.sh ci: centralize docker build wrapper 2026-04-26 22:14:36 +01:00
test-live-acp-bind-docker.sh ci: force gemini api key auth in acp bind 2026-04-27 03:23:00 +01:00
test-live-build-docker.sh fix(test): build missing Docker images in Testbox 2026-04-26 23:33:43 -07:00
test-live-cli-backend-docker.sh fix(test): build missing Docker images in Testbox 2026-04-26 23:33:43 -07:00
test-live-codex-harness-docker.sh test: cover codex app-server subagents 2026-04-26 03:46:30 +01:00
test-live-gateway-models-docker.sh test: show live Docker profile mount 2026-04-25 04:57:20 +01:00
test-live-media.ts feat: add xai media providers 2026-04-23 00:07:39 +01:00
test-live-models-docker.sh test: show live Docker profile mount 2026-04-25 04:57:20 +01:00
test-live-shard.mjs ci: satisfy live shard lint 2026-04-27 14:29:41 +01:00
test-live.mjs test: move Vitest configs under test 2026-04-10 13:44:51 +01:00
test-perf-budget.mjs test: move Vitest configs under test 2026-04-10 13:44:51 +01:00
test-projects.mjs test: simplify changed test routing 2026-04-26 23:58:13 +01:00
test-projects.test-support.d.mts test: simplify changed test routing 2026-04-26 23:58:13 +01:00
test-projects.test-support.mjs refactor: deduplicate changed lane detection 2026-04-27 00:02:00 +01:00
test-report-utils.mjs fix: use pnpm exec for scripted vitest runs 2026-04-04 01:07:28 +09:00
test-shell-completion.ts
test-unit-fast-audit.mjs test(vitest): cut unit-ui startup overhead 2026-04-16 12:16:21 -07:00
test-update-cli-startup-bench.mjs refactor: remove custom test planner runtime 2026-04-03 12:45:13 +01:00
test-voicecall-closedloop.mjs fix(test): route raw vitest scripts through wrapper 2026-04-12 04:56:21 +01:00
tool-display.ts fix(tool-display): generate swift snapshot from core config 2026-04-05 10:34:02 +01:00
ts-topology.ts refactor: dedupe script error formatting 2026-04-07 05:06:54 +01:00
tsconfig.json chore: update dependencies and oxc tooling 2026-04-10 19:28:42 +01:00
tsdown-build.mjs chore: apply core lint cleanups 2026-04-23 05:30:49 +01:00
ui.js fix: quote Windows UI runner paths 2026-04-26 08:31:00 +01:00
update-clawtributors.ts docs: fix clawtributors README layout 2026-04-18 20:41:21 +01:00
update-clawtributors.types.ts docs: clean up clawtributors generator 2026-04-15 14:20:32 -04:00
verify-docker-attestations.mjs ci: verify docker release attestations 2026-04-26 22:40:44 +01:00
vitest-process-group.mjs chore: update dependencies and oxc tooling 2026-04-10 19:28:42 +01:00
watch-node.d.mts fix(runtime): harden dependency install surfaces (#71997) 2026-04-26 01:38:21 -07:00
watch-node.mjs fix(runtime): harden dependency install surfaces (#71997) 2026-04-26 01:38:21 -07:00
windows-cmd-helpers.mjs refactor: dedupe windows cmd runner helpers 2026-04-06 16:52:41 +01:00
write-build-info.ts
write-cli-compat.ts perf(cli): narrow daemon and gateway cold paths 2026-04-14 17:35:26 +01:00
write-cli-startup-metadata.ts perf(browser): precompute browser help 2026-04-25 13:07:15 +01:00
write-official-channel-catalog.d.mts fix(release): preserve shipped channel surfaces in npm tar (#52913) 2026-03-23 17:39:22 +02:00
write-official-channel-catalog.mjs fix(onboarding): surface official WeCom channel install 2026-04-23 00:29:34 -07:00
write-package-dist-inventory.ts build: exclude private QA from npm package 2026-04-15 09:39:51 -07:00
write-plugin-sdk-entry-dts.ts perf(ci): use tsgo for sdk declaration emit 2026-04-22 04:45:19 +01:00
zai-fallback-repro.ts refactor!: drop legacy CLAWDBOT env compatibility 2026-03-22 22:13:39 -07:00