feat(provider-testmu): publish @agent-device/testmu on plugin contract v2

Merged
TH
18h ago
+434-197

Summary

Part 4 of 4, closes #3756 (stack of #3755, umbrella #3747). Stacked on the docs PR. Blocked by #3748: do not merge before it.

@agent-device/testmu is now a plugin contract v2 package.

import testmu from '@agent-device/testmu';
testmu({ credentials: { username, accessKey } }); // or testmu() to read LT_USERNAME / LT_ACCESS_KEY
  • The default export of the package root and of ./agent-device is the testmu(options) factory. Credentials passed as options replace the environment variables, which stay the fallback. With options, the plugin declares no environment variables, so the daemon doesn't fingerprint them.
  • The v1 agentDevicePlugin declaration and its ./dist/plugin.mjs entry stay, so agent-device plugins add @agent-device/testmu still works on hosts without v2. Hosts with v2 prefer the export. The v1 entry goes in #3759.
  • scripts/check-provider-plugin.mjs takes AGENT_DEVICE_CORE_SPEC to install a published core instead of packing this checkout.

Validation

pnpm check:affected --run --head a304bb7f40 (the stack top, which contains this layer): passed (exactCommit). Packed plugin via node scripts/check-provider-plugin.mjs packages/provider-testmu: passed against this checkout's packed core and with AGENT_DEVICE_CORE_SPEC=agent-device@0.21.28.

🤖 Generated with Claude Code