{"_id":"@matelink/cli","_rev":"67-7f7bbc795f171d6156d3c8eb587466ce","name":"@matelink/cli","dist-tags":{"latest":"2026.4.73"},"versions":{"2026.4.7":{"name":"@matelink/cli","version":"2026.4.7","_id":"@matelink/cli@2026.4.7","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"f36968bb70d7036e260b267665f00f896ddd73d9","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.7.tgz","fileCount":3,"integrity":"sha512-Hw2Q5U1pp05eCCD/rZ176WVpFRIZUrp1iTmfZy/0FdeXHGJ5+dVsfUhvyNrY6e6kkLL1exYfDKS2VWMc3xaTWQ==","signatures":[{"sig":"MEYCIQDoQN0hmlgt80DwaVvDmjinz0Eq5NNQGsX7WL9Q71eSVgIhAIcy1CoE1D5c4fmv94pl6hzfZSuoK8RNL+SViZJh6aKF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93350},"type":"module","gitHead":"75a402d9bc2257676731a0203057bf0f8491671e","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.7_1775115200375_0.506769344494381","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.8":{"name":"@matelink/cli","version":"2026.4.8","_id":"@matelink/cli@2026.4.8","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"f4019c00001a22656abee67e41ae47a114fa4470","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.8.tgz","fileCount":3,"integrity":"sha512-TkfnuYaqJE8gb+Yq7i6QHJjv33WRPq763+IdHhPuWg0F5qg6YfF9LJdyuQkbHRqRO08fxsk59+CQ9ODO5bA0IQ==","signatures":[{"sig":"MEUCIQDd6z6o3yA+AS4InGmh7ZSXI89Q7CTsjigboFXvwOhhhwIgegowG808SpVYSXpZUT+KzPWh/MvWGu1y3IyAq/oGO7w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":101810},"type":"module","gitHead":"75a402d9bc2257676731a0203057bf0f8491671e","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.8_1775117034855_0.46051497835601674","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.9":{"name":"@matelink/cli","version":"2026.4.9","_id":"@matelink/cli@2026.4.9","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"70f1d350b66d6201f0e3165dcda2392aa75ca72d","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.9.tgz","fileCount":3,"integrity":"sha512-uPdlR2kXf8k7wMwUymSX9mSZFBKLTtq/zGy+hbdMpxCsetqpJ9JvJiZ5ybgDxKJ6iNYPiVArbj5C9LaWk7Cw/g==","signatures":[{"sig":"MEUCIQDpC7Lz5s8THYNVWx552iD3tEr18p1yKB4gMTjgwQFNnAIgI4ZjqBH2QzsEkZ+FzOJcOkth08p2UVVp6Mvjy9fTPk0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":101815},"type":"module","gitHead":"4986c044eaea8395ee0912b7a8fb3f0be71dab8a","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.9_1775120742870_0.1760223108170793","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.10":{"name":"@matelink/cli","version":"2026.4.10","_id":"@matelink/cli@2026.4.10","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"7911cb1d67fb0e6fd6f5ce92df5477d78a1d61e8","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.10.tgz","fileCount":3,"integrity":"sha512-vumKX3clr2PcfzG+YsqijdKWYvakJVpNpMjUaU4Tzoh3k1vv7tDgQ2bW8vEP0a5NbAiwtvG39eCACmpdcRNBuA==","signatures":[{"sig":"MEYCIQDNVPq7Iz16kLBgxKlQixVCiJmwqisN0/sVeDVc5szDCwIhAOy2/Jk67VZ9Yj4dqzxSgAfBtelbdeq6qy2Wcx9xBxnp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":101835},"type":"module","gitHead":"223a07ae4ae34f7e28aa87619a08240726180e97","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.10_1775123960212_0.0512947319434125","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.11":{"name":"@matelink/cli","version":"2026.4.11","_id":"@matelink/cli@2026.4.11","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"db1a0e492a24470a8b1680b1b83001a453f9c9f5","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.11.tgz","fileCount":3,"integrity":"sha512-FrVViMMfUD6+iWKK7nbmdYHQv/sw6Yx+GWvuJfsCkhQoAiGHu3dCO6zUBSWxOb/3gBCvTGVOwrgywD11/yoacg==","signatures":[{"sig":"MEYCIQCEjiJH4xQd48yYfBaTV8OjPoV3Xuh5PDTzuleamNdpMAIhALP41x63syVY8C+IFqPfqco+M0IEtawRNFhnPJjJsndX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":118836},"type":"module","gitHead":"cebcc29d1d30f725a53ed233d5338f899ef567f2","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.11_1775133953890_0.9626947484608999","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.12":{"name":"@matelink/cli","version":"2026.4.12","_id":"@matelink/cli@2026.4.12","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"b6d9598734eff84fe47c7f860a697c6e2da5028f","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.12.tgz","fileCount":3,"integrity":"sha512-Sv4/sD5iULVwbFKk+BqmMTd055dOyTKd9moZ0JTqpKL3Lwv6TdlVW12VyQV/yzCiEPu413Sg6+lvRV63ujTwiA==","signatures":[{"sig":"MEUCIH+O0ayeSMxW9XdvcOSyiYn1X3rlwXZwG5KHGewSMp9HAiEAhATTZNYEc6XYfvgaVkCuNHjCXBpSBFlNtVPmON1tz94=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":127159},"type":"module","gitHead":"fc133126a440e78fdecd7dfe94cc24e5b91a4dba","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.12_1775186761514_0.310897978875601","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.13":{"name":"@matelink/cli","version":"2026.4.13","_id":"@matelink/cli@2026.4.13","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"e6c4345e81d4e504b56363d2a334a8fd4ddbebe5","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.13.tgz","fileCount":3,"integrity":"sha512-3pQ2w0vWIVxHwwKz75GCZjhkDxRTJH8seOfsLH5M8Xvj/TcVmFIxu/6L82RwcJ2zPU5a7rArGqbG7Xzb1Hs6Xg==","signatures":[{"sig":"MEUCIQCkuCJ1g1N1tApCpDoUbuS/bXf/4EddLrHImfiisGHvlQIgQQtm/2iDa3T9+WrllLgtwNjCmThatVCfgl5gcBvvESo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":127900},"type":"module","gitHead":"da5212520fb096d2f7be7e0c51677a5700c24e15","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.13_1775187904876_0.4164769318352797","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.14":{"name":"@matelink/cli","version":"2026.4.14","_id":"@matelink/cli@2026.4.14","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"635a23ccc99876ab60d5d1cac8aa34919ae5d683","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.14.tgz","fileCount":3,"integrity":"sha512-QjL0w3OUsJwXEN7RGJKdH47WJiEl+rK/N0UlQzzs1H5D378eP1ABM0jQdMTn+4yQd1kbRfbc5eDZeCi6tKqkKw==","signatures":[{"sig":"MEYCIQCWsoQEMVImo7JnVwMilAKHkxeArpv1dvBkwcQ4BuXbnwIhALsCAcLeBYEwPLnGNVZPOZ8FWdWOrit9FoXxI16wDddG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":133875},"type":"module","gitHead":"e513d7872e7790dce51b5bc81cc2d2d2e97bed88","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.14_1775192802703_0.6084536276160397","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.15":{"name":"@matelink/cli","version":"2026.4.15","_id":"@matelink/cli@2026.4.15","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"e8cec1f02a9c3f8cecf0921364a681724e0c73fa","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.15.tgz","fileCount":3,"integrity":"sha512-fy5gRVobA7AEHODGzO6cqX3UuQzJ0hL2JwY+uQEcVmxWV0MpxNd+X374nUyXke1pfJfIXCy81KIEfVJC4cFJMQ==","signatures":[{"sig":"MEUCIQChYHzFJ0QC9jFhiKganOyl/UBRc5PiEe0xozXOdAmVEwIgMRX4+Yo4yZvnD0O1it7CcU7SB05qQTUNoMtFWkPgq0c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":134959},"type":"module","gitHead":"0add23b993862ddb606406e8f85b42befe253334","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.15_1775193319240_0.12091406213346767","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.16":{"name":"@matelink/cli","version":"2026.4.16","_id":"@matelink/cli@2026.4.16","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"7211723264ec2463c4547e98af686997ddb9980a","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.16.tgz","fileCount":3,"integrity":"sha512-ilXjNNsSMVG/4Gzxlx5xT9/ipC9btPfvSVqqXCQhrMako8kvN9Z5S+WTB2LnUoDhIp7pzWOPrEmL86NmBUVQJQ==","signatures":[{"sig":"MEUCIDkZIgNL8Y21WdkXsCAR3PIqbxI28ueE0N8F75UMi4rGAiEA/vj3PpiHqafxrp3BY/4Nx/gtZgUlTClBlZ1jQp6pZVs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":137580},"type":"module","gitHead":"9f8f140016a356071eca61e2acaf86e983c4a4f6","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.16_1775193693468_0.22282006936733745","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.17":{"name":"@matelink/cli","version":"2026.4.17","_id":"@matelink/cli@2026.4.17","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"4cb24bbf229f9e575734ca1d2a22aa793b0e907e","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.17.tgz","fileCount":3,"integrity":"sha512-3GMdZ1wLWuWwBefqM3HYgOfTHYLfvwSu2SpcpZ3XNt86F/JSThQfWtt3ZjmzVID7AHltyp1iuugbOv9k5Jgl6Q==","signatures":[{"sig":"MEYCIQCq0cZwU1fBPkJU8QEUdROaUJqA0pKQ9NQ3MhpDTEt3JgIhAL453c6/dJ2fkqPT7AgPa6MsJBomVM3O7SdORqL9VU/q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":140266},"type":"module","gitHead":"4861f56283d96f40f7092f7068589a177b91b06d","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.17_1775195725901_0.5712964736787935","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.18":{"name":"@matelink/cli","version":"2026.4.18","_id":"@matelink/cli@2026.4.18","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"fd5860b88bf4f2d260c999e1064d2652362dc6c6","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.18.tgz","fileCount":3,"integrity":"sha512-Fuh9N4OvMt3vaiaN52jkEWgkzfqt0IauEKxTWFv+PH4/axaOpqDDkJ5Pg4LkiKh+x5igc+jMvAB55zvIoP4umw==","signatures":[{"sig":"MEQCIGbqbJGl3QTviMTQBLJqed72+1OSJWw+DnwxaCd3l7BZAiBl7JrQ963D0/zGWrk9S/LZAv98k4q2hsIkEC+95V7yZg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":144365},"type":"module","gitHead":"6c7d1d1e61d020267b91bc0cd376d149f74cdbea","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.18_1775209235763_0.8637477505083642","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.19":{"name":"@matelink/cli","version":"2026.4.19","_id":"@matelink/cli@2026.4.19","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"e80320b78753f2093c638abef342885db4c31b09","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.19.tgz","fileCount":3,"integrity":"sha512-Nm1yLzPNAstD1ssJVuEiwWPalK/2PcvqK+Ov4zGAhTRPJQ5RfgP2dzCSKc/7iIMjbbBE43hhn3pdbfoJ+dW/3A==","signatures":[{"sig":"MEQCIHYO9L6HyXAovwexLaO5znARP5A+l6KelyMwKHXDuwoOAiAFlg7k/SQUpsiK7RNDM3wI1hQzOWw+TumP2wfB81AAlQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":145696},"type":"module","gitHead":"953574e8210eef8adeb4b9b2c38948b6d454e6d1","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.19_1775218148584_0.667795500276078","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.20":{"name":"@matelink/cli","version":"2026.4.20","_id":"@matelink/cli@2026.4.20","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"8595fe27df131c9a2628a17e190e9327ededee8e","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.20.tgz","fileCount":3,"integrity":"sha512-aftpbJomvva995cOthPxREuVVrxHUIJRsi6eKNzf2tP3nnQo2GbdhOkTzKsOtMqDv/+jWc83eWOrbBPBsapeGg==","signatures":[{"sig":"MEQCIDF1d1s8s2eUqsGeHcBiTFSxPDVQZjbPjkJSj/yy/zqIAiAux6F5rSsGP27lmWOGqzMyZQORBaMRa93AOPWR4UhTWw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":145699},"type":"module","gitHead":"675c3949e0d972b2217ba7c327798aff68b1c3b0","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"11.11.0","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.20_1775226076230_0.7088719771595662","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.21":{"name":"@matelink/cli","version":"2026.4.21","_id":"@matelink/cli@2026.4.21","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"0208081a2dd604d8769aa538dbb6cb58f64742bb","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.21.tgz","fileCount":3,"integrity":"sha512-4cdErfUSEPNE3W/xO20xWx5mfhHAfMeQ2dc0Wq1aZXWCgJvwgJqXiqj93KUjo8A60ZAqp8HIwNkZHOJwtbo4nw==","signatures":[{"sig":"MEUCIAfOQ6wnXRqSEv7EQhAuDAeAFc51Ng6lyWBPEIqkt7B7AiEA+NudHhYrja/5JzEqMTS9veBJPvyW29m/js6UjQk60jc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":145857},"type":"module","gitHead":"155ee32545b4832cd010108070dc473d6afa2dcd","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"11.11.0","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.21_1775311276502_0.2746539742609193","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.22":{"name":"@matelink/cli","version":"2026.4.22","_id":"@matelink/cli@2026.4.22","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"40fb16c304788fb788e8b6a47a295cb49e3b812d","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.22.tgz","fileCount":3,"integrity":"sha512-ykpVeah/5aWzbvLD4Ajm3Q2Z6QWatK5IQ6/NDv3aaFPF7JUDf+i0ruGMZRFr847AMp8ABgE1UXLE+vPUdz1iFw==","signatures":[{"sig":"MEUCIQCTksp6aL7kXFa35tzmaFYHD5uBvotbFz/THkJGWAkgowIgM4hHs3bJbvcJ3dfjNWo3DsxeAuK65b/nx9BfJjd4glM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":146764},"type":"module","gitHead":"155ee32545b4832cd010108070dc473d6afa2dcd","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"11.11.0","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.22_1775313176745_0.5743590946425068","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.23":{"name":"@matelink/cli","version":"2026.4.23","_id":"@matelink/cli@2026.4.23","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"4e24317b74a285aff3aaaf6573ccf299d3b669bd","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.23.tgz","fileCount":3,"integrity":"sha512-H51cByy1K0fPRVc/Iri1ZVrXjKiX8Py0p8YjZAksdz+q/KGzCRdd+ndFAISRXPGg/C8KmBpR3AL24TUFzkwUJw==","signatures":[{"sig":"MEUCIQCp21nMcCSaAIyXVMOXaZW+BWlGIujC5yFqAc7TwCgt7wIgHJBBxQGrr02AWMie9UH6YeGzMKzzhfMU0rk0TnW/tkw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":151760},"type":"module","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.4","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.23_1775316706222_0.06946224865746409","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.24":{"name":"@matelink/cli","version":"2026.4.24","_id":"@matelink/cli@2026.4.24","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"9cbd189662a9720ba616312cf40fa81d85b5f262","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.24.tgz","fileCount":3,"integrity":"sha512-oWABBnw/qISNQ4Kn3nSwFxbWYuUixglJDLVp+V4YNUMGJz6ysfGqi9kX+1id8VoZG3I4FXdvh1z0TuTQ8nStLg==","signatures":[{"sig":"MEUCIQCyftTbegxx0EJ6F/fDbMCzQpPrYpjY6VnBFDb8NOQVugIgRjc5TOANsPFZkRvKqwlIiVd6yIjAToMPzG4np7v+4Kc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":151760},"type":"module","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.4","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.24_1775316929034_0.5145807104086699","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.25":{"name":"@matelink/cli","version":"2026.4.25","_id":"@matelink/cli@2026.4.25","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matecli":"bin/matecli.mjs"},"dist":{"shasum":"0a3a7ba64a27e53348029e7a8553a1c8ff806c03","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.25.tgz","fileCount":3,"integrity":"sha512-G4rHhXKPH9CIU5kHaZpksD/WsZVbJ8x/CmayTG6N/ttMFzBE9ezUeGD4DwAyVUOoSzo50r06YM1M3kRfI3jNLw==","signatures":[{"sig":"MEUCIFg4K4xdb7GJ5PFG+qqYefnUZOu9GGZ83OU7Iq5NvNDTAiEA8ciaBQOj0GXuVK0m2sSFVNtolIBHGLeSgNsmToT5jyM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":156357},"type":"module","gitHead":"155ee32545b4832cd010108070dc473d6afa2dcd","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"11.11.0","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.25_1775405130838_0.045029351094104664","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.26":{"name":"@matelink/cli","version":"2026.4.26","_id":"@matelink/cli@2026.4.26","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"9aed85403be857a235c6820643967f8473a5bad8","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.26.tgz","fileCount":3,"integrity":"sha512-NbSnAmCBqhpERIHA2uL/ANLzWosdkHH0NVzCoWIEBxoh7TjNnwlNh5G6dDQsqy7F6F//YTL7FjutwtLfB3QK9Q==","signatures":[{"sig":"MEQCIEtq7Gcm+Yr4aEWzQIl1j+NHLZWrePhg6fGIhGhSZMI1AiAIUQFYzfQ8urhk3tRrcZuW1swP2OEEFM9xFZKZgeyw4Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":156334},"type":"module","gitHead":"4d8cb39dc6122ea0638583d4c8cbbfc9ec78b768","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"11.11.0","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.26_1775529225377_0.020215409363281367","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.27":{"name":"@matelink/cli","version":"2026.4.27","_id":"@matelink/cli@2026.4.27","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"107c1eefbd170e2aae1ca046db037f889539be1a","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.27.tgz","fileCount":3,"integrity":"sha512-C722TIZYy1VI8hKKqBp4ihiMhsxaCtIUKc8+U2s+ioO3NRUkuexDbffwwWudZMcYF5QZSSXXP0AxEWuWzn63oA==","signatures":[{"sig":"MEYCIQDebcDSfFvN5P0ydAGWr2BAwYUQUNNdwkWV/X+XpS9i+AIhAMNLa5H2NsLKRZvY/9VP5NYtYc6TVVcA/WLLsLNzVNT0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":156332},"type":"module","gitHead":"4d8cb39dc6122ea0638583d4c8cbbfc9ec78b768","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"11.11.0","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.27_1775529260782_0.29733420854140635","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.28":{"name":"@matelink/cli","version":"2026.4.28","_id":"@matelink/cli@2026.4.28","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"20000c8a66234c862ce3d4be9315ca6c06023ab5","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.28.tgz","fileCount":3,"integrity":"sha512-wsBSj8OXSTvdE+Fq4Zsp9aP3x72ZuPuMcfp4m1oQ9pckBTrJNX7rf7o+qa3rNMVxx+2akX8QNseCEl4dVpXdtA==","signatures":[{"sig":"MEUCIAb/UORHDflVe57iVf0GjB4OFRFWNyPLPXl5AxsIhrjiAiEAjTzN6NzvpVbb4eCDKMJBYLipcHFo49iCWwPIfbMrn4w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":156511},"type":"module","gitHead":"3715ea831e9edaf954a27ec435ccc28708b5df65","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"11.11.0","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.28_1775529743884_0.4111233873236064","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.29":{"name":"@matelink/cli","version":"2026.4.29","_id":"@matelink/cli@2026.4.29","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"31cee1ec4fa50503fac0b8a1591133bed9ec3ee8","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.29.tgz","fileCount":3,"integrity":"sha512-XwgxkmBmzqFViAEr9GLc/m+q7eRzzvJfk2JqgCMvm5T1TE5BgjQG0qQf0lJG5pTJfXb+uIGMSkXyJ1fomWcMvA==","signatures":[{"sig":"MEUCIQDKVIuumO+9n7VB33umMQ9i+Vz4omThFdLxhO7NeI0tdgIgPTGQo1IKMgGs2WXip/kKQTte6rwBG2X4OBXXQwD2M3c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":158740},"type":"module","gitHead":"e2d2dd6745db703c03bc558eff5ebd29576c34ee","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"11.11.0","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.29_1775533281875_0.056081797919773635","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.30":{"name":"@matelink/cli","version":"2026.4.30","_id":"@matelink/cli@2026.4.30","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"752d58441d5d1470f0562824eb6037f6808787e2","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.30.tgz","fileCount":3,"integrity":"sha512-sfmwImOB5VWFMmTgpnAC1GDuFJvDPAuAksWDflqqVrJgteseWCWxMuwXjh+rvZMWcLhTEdqU5vqg1REXR3iNSw==","signatures":[{"sig":"MEUCIQC4+Zkm36wuCCSxO/JFRjS8nIHzBXdz182mgV32T68qBwIgPw9ERdcFpwuR22yJQ/uV3QpLic0EThviaehrazISo64=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":161399},"type":"module","gitHead":"33173754601ab3404aa9730496a49597163640c0","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"11.11.0","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.30_1775533647572_0.5348371579083864","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.31":{"name":"@matelink/cli","version":"2026.4.31","_id":"@matelink/cli@2026.4.31","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"d81f72fafe95310c254a965593d4b0006238f5a2","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.31.tgz","fileCount":3,"integrity":"sha512-MiL7nP7eTZLziFmW0cGlFWNt/CrF9sz0yY/Q+tVSmTPq7TYndYMe82sSLyvOywdV2Q1e79ko7Or7W7vZq1D5+Q==","signatures":[{"sig":"MEUCIQDNEkadKbwrcqg32OztbeFjE7O1LGIM9svHsM3iAr2biQIgJVl1EdVpbOZZDn1dH7XF++gaYXR11gx9Y5djwzmMHII=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":161405},"type":"module","gitHead":"c12724ee4c3ec9518f943f5d00c8daf61f2a3c0a","private":false,"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"11.11.0","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.31_1775533886065_0.3904398316494575","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.32":{"name":"@matelink/cli","version":"2026.4.32","_id":"@matelink/cli@2026.4.32","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"e5bb55f7d903fd369ccb78189b664338e722c47d","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.32.tgz","fileCount":3,"integrity":"sha512-tkwJGRATP4ZUsePWG7hlDNY+HLoZyYpdoWCUfJumxyPoo1UJZw4VHS9C9SpC5mr3sZ8+kcnNEDwGZkhWf766Bw==","signatures":[{"sig":"MEYCIQCXWJSJ4ZGbrVyM9DCre+zrc6whfJhcwKvDBQlcMpGGrgIhANJ4ElAXAZ24dbgqO7UJEv7FHG13bYjsFe2YAUAiRRmA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":153026},"type":"module","engines":{"node":">=22"},"gitHead":"2dad3543afe761f7744c10fa7f273bc791636601","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.32_1775561171467_0.5338821896518269","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.33":{"name":"@matelink/cli","version":"2026.4.33","_id":"@matelink/cli@2026.4.33","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"3b53c427751f3ed5017d6b19406bed02c30a6501","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.33.tgz","fileCount":4,"integrity":"sha512-kNzbzKutmT0VkgnMN4rmt0LaBeSCvfiEBcAoSU2vWCAAADP/mI9RRDYLcc89uE79sqyFwtf3e2ze9+OvMS29/w==","signatures":[{"sig":"MEQCIBE5VwsoYKzcuXOGeR3xgjmkUL80vXIhfLEmd+DXEX2VAiAbKJIJ2ZEiAq4Y71rghrAQ8szUZ1lZCIRlbkxGLAY/tw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":162107},"type":"module","engines":{"node":">=22"},"gitHead":"2dad3543afe761f7744c10fa7f273bc791636601","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.33_1775561270691_0.9157608119002523","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.34":{"name":"@matelink/cli","version":"2026.4.34","_id":"@matelink/cli@2026.4.34","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"43d5c36b6080713f0dbdea471c48df9a0d8ea60f","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.34.tgz","fileCount":4,"integrity":"sha512-Gfr59hxMKBl9MP3NPIHSxXI25Qt9d/zAy7eXSfLtW+PF7d0Ca2u7WHsgvtgKMhCBgW1CNtnlAc6NcKoiDC2Jxg==","signatures":[{"sig":"MEYCIQCKrBHeayBzljl6Gf/NyNwlebZriecQzvLC0FK3mG5DAQIhAOXYNNC0zBm6vdMmxsWTFjHPzEs88t7rvWqj8HIozi3H","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":188710},"type":"module","engines":{"node":">=22"},"gitHead":"9b9733154c99964d1f65bc89c7b852a8967c43d0","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.34_1775809838557_0.52440853809173","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.35":{"name":"@matelink/cli","version":"2026.4.35","_id":"@matelink/cli@2026.4.35","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"4e103b21803396888c1c6c15bd170aab6ce3fe03","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.35.tgz","fileCount":4,"integrity":"sha512-FJcNVK7AWWia3BvnxBy8+MGtzjZqKKHrYGm8FJfZoB58nql8vrmLUexSAbwH/9/F+QJdgR69Ubp4T9lFG09RiQ==","signatures":[{"sig":"MEYCIQCM6GslxloPz1m1FGPSKBnns9p4UblTImShf5f8oAtgvgIhAKaS/K1pWJVpux2BVq5PuHe3th89VEIId+LXWTNaVVqD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":188811},"type":"module","engines":{"node":">=22"},"gitHead":"473d22ee1a1e6b7926f3e338955696da7f270c65","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.35_1776051493936_0.7468627608735241","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.36":{"name":"@matelink/cli","version":"2026.4.36","_id":"@matelink/cli@2026.4.36","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"5ed14e07dc132973a719ddf11299d8b05c6a80df","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.36.tgz","fileCount":4,"integrity":"sha512-gSzuBK+3AIte/2aKIb+2mlPT8uAFKXJbOc191aYnFm/iooE2QQYL65smJpAb1Z6wJ5XRuJJmnfgBFmOOfjKDWw==","signatures":[{"sig":"MEYCIQDRkhBXwOcEZ3WPBxuRrjWED0o9T1OAyuZOVXKHmxaESgIhAPuTthRgU0MWqRQXIr7wfE+EkFPiZ8MFN19OIIZ2n2JW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":189841},"type":"module","engines":{"node":">=22"},"gitHead":"473d22ee1a1e6b7926f3e338955696da7f270c65","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.36_1776077266395_0.6229784879353275","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.37":{"name":"@matelink/cli","version":"2026.4.37","_id":"@matelink/cli@2026.4.37","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"7f86bd7b8ae21fde803744929eb65bde19279141","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.37.tgz","fileCount":4,"integrity":"sha512-r+FalGObd1tctf6qoLLP0Wy4TD/Y2GsA/k8UB5kam9uug+vS1w8Kt1EWEScwy6dwI6QnldMGWT7CrabhyOrfTg==","signatures":[{"sig":"MEUCIAfibu5wdZBv7F4R1JZOowtpQ7kj2wSApLDFoGIiA0BJAiEArEcKCGacvm2X0p5WnygsNj0Q4T+oigfdUbw35Z1pX4Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":190584},"type":"module","engines":{"node":">=22"},"gitHead":"8898aed8b15f4923c2d6ece9b378b6edbe53f561","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.37_1776078712953_0.33818776273269924","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.38":{"name":"@matelink/cli","version":"2026.4.38","_id":"@matelink/cli@2026.4.38","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"38cb5b63c598fc08e1b5ce1bc6a7e1fba3435432","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.38.tgz","fileCount":4,"integrity":"sha512-YlkQg3OFVrhTbPOI+JSRFyFXgh5iU1SX1Vour6pigqYJrBcHzSHsRBpHYxGo2Y0ehInJe4HzBuHk+4kAvuVMFA==","signatures":[{"sig":"MEYCIQCNIZqnimVZOcX+8+ste3TGlQI6kdaqMxUBc6oSbFzNigIhAPZ8R69T/ZKznPCwA23zbFZl5+Dl3VeYdKIQRcYDUffG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":191876},"type":"module","engines":{"node":">=22"},"gitHead":"1413b950cd8ac6f6df3a04056f32f5821b022829","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.38_1776135024927_0.988233512600545","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.39":{"name":"@matelink/cli","version":"2026.4.39","_id":"@matelink/cli@2026.4.39","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"4c667b3a7f3c8aa3216cf6d4035c51726ed7f462","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.39.tgz","fileCount":4,"integrity":"sha512-RHbV4DCgPFkmiT09erDbC12Ju0VLnGvk3o/DFNnOVRJzlMTGk7OM0oV440aLldvLAvJLYiA6b2GdSWLrh+EGvw==","signatures":[{"sig":"MEUCIQCBvOW/KWy/m5ooBhYm49ymu0q0HrVahluI1q2IkyRbWAIgS3oMGbYRlWI+VSvHfjcf7sCunLMZt1h7TVhO7bovxy8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":192267},"type":"module","engines":{"node":">=22"},"gitHead":"0b9c10f134ad7ec9e520550a6888645eceadf5d5","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.39_1776137039252_0.8081874268775489","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.40":{"name":"@matelink/cli","version":"2026.4.40","_id":"@matelink/cli@2026.4.40","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"8d954b0b683d1769e6734a4cc00e0f78fc8f776b","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.40.tgz","fileCount":23,"integrity":"sha512-UR7CMg8nMPJ5stT1W21CHYRXB+7R/4d8C2vCKdFzZMfFug78qMZGdzBt/4iJoekbnKvQr/qVX4AljQAlZbhuWw==","signatures":[{"sig":"MEUCIQD6/DvhR4N3I85l1/FS7HB3eGHZ528b67Yfj3YTridAMgIgbuGB4lfO1nHHSH+92vNs3NDg+zkUs6YYm9kQ2AnF55k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":329385},"type":"module","engines":{"node":">=22"},"gitHead":"72ed0c297b464a91f145e38523ef1dd62a8d998d","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.40_1776168069981_0.7435590460674928","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.41":{"name":"@matelink/cli","version":"2026.4.41","_id":"@matelink/cli@2026.4.41","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"0e2ed2fb0c8e3214267e57a861367809f26e22d3","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.41.tgz","fileCount":23,"integrity":"sha512-73h2Xy6IK2GTMiejc9JC0+ckRW871w5GwDKuLKnBxK00wN6pw/P7zDdWxAnhX0fJuMi90N/6U+OPKszu+f0uNg==","signatures":[{"sig":"MEUCIG5ZuXf9ykp22qK7MtoqtpIzEtObiOOr1gduuVjCwPLhAiEA6kFOEb6TB51twOHBf0IhDJR4OaJ9670Yha6UKrK+t8M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":364254},"type":"module","engines":{"node":">=22"},"gitHead":"a57e2a1eb9e19b5cd16f8e68e85afb071b812ad1","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.41_1776223291820_0.2770173626447505","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.42":{"name":"@matelink/cli","version":"2026.4.42","_id":"@matelink/cli@2026.4.42","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"33880e7ead1a9702048d7a3abf5912dcf683c41b","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.42.tgz","fileCount":23,"integrity":"sha512-Q4rfgzBiyVOHXpnFuGNm/UbO18RUyWh5WxkrVtayK2tdduCR1rCl8bGjJx1P9vuzxmJ/ig7ai5WC1o3vaZ6V/w==","signatures":[{"sig":"MEQCIC7t41J3CnuPLyCFJYC81rl9WPggcPankiHN6ABBNrYIAiB7IiGPEq9LgIqbM4P1W14PQAPx0WEiXG2k2l8o1OJkQg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":413222},"type":"module","engines":{"node":">=22"},"gitHead":"5a50e173fef1470cfad99b531c2ee3816e160375","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.42_1776238487359_0.1488347097571765","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.43":{"name":"@matelink/cli","version":"2026.4.43","_id":"@matelink/cli@2026.4.43","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"6c156a3e8d064427e1ea8d275392d0ef332fae7c","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.43.tgz","fileCount":23,"integrity":"sha512-VqRHm/KayQQvGmVXMN0fxLainvpSuhCbBlIHq+YGhivWvrJFV2AvTM/pEWt0RDnNffY2Nnyz348OknISFx6iHA==","signatures":[{"sig":"MEUCIQDXO8WTiSklxlyhbxrMBj4zKkWovUkmftO4/6Obmsz6IgIgdoNWxM4E1P6kVnpdZhsZRjt1Am4+tREGGD2Kh8srdb8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":416896},"type":"module","engines":{"node":">=22"},"gitHead":"c098f27f28c1267461298b457b864f607d7307ea","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.43_1776240643829_0.43544030690120805","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.44":{"name":"@matelink/cli","version":"2026.4.44","_id":"@matelink/cli@2026.4.44","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"a3b7d4bb55ee9d00bf7ab5145db5f407d5c7d532","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.44.tgz","fileCount":23,"integrity":"sha512-024hYkVoXNXAFVwGGZtQEpF2We4pHyxjrOZ7lEYQpRbGsS4SZRHV+qPA4SeWo6mMGr11p1/ESfYGtsByFukbBA==","signatures":[{"sig":"MEYCIQDf4WAG4k8tV+VQPIThXemBs2lyNI/EjQUIIT5MFBhfrQIhALC8UaL/vnL8UuR3ffo+FcIPU1aXLt8TwbzTpqYgo+cF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":416883},"type":"module","engines":{"node":">=22"},"gitHead":"e58339289029570aa8d841b200921386977c48ee","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.44_1776241224539_0.5364246011715195","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.45":{"name":"@matelink/cli","version":"2026.4.45","_id":"@matelink/cli@2026.4.45","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"287f7d6a78639032ad7bb4cb1d478af4eb9478b3","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.45.tgz","fileCount":23,"integrity":"sha512-wCkzj1t7A2YMx+aQCL9iFCmXIY6XhTPkoYASDQXkEwsjSHUZT9brFOGUigvrmgDhLg7MsKiMh/u3sURjsLU/7Q==","signatures":[{"sig":"MEQCIF8gyaGZj1FdtIF40O28TuKLb9vTv8FeKymaSxPzirBmAiA7JAJiirwpsSR0RWCiko993pD0iE09zE0n45+N+evqIQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":416888},"type":"module","engines":{"node":">=22"},"gitHead":"b180760d4c98503a8fae433acad6623b4343d787","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.45_1776243209013_0.5027267348254014","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.46":{"name":"@matelink/cli","version":"2026.4.46","_id":"@matelink/cli@2026.4.46","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"532ace2f99ec72fba0f6e2f04dbe4a5adc0bceaa","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.46.tgz","fileCount":23,"integrity":"sha512-9sUzNETG0LZ4NHwa3/XIP7nQ4Xrg5AImtRAs0rs8frKRs83o2V/v7aS9QjJQPWCG8XJ2CRAZpcZSW1gnYPuFMw==","signatures":[{"sig":"MEUCIBqm2J/LqHYZjYsfYJ44vZXrLxQ56dF5Uoj+YyJH6CFzAiEA/M88dB2tBdqTfEixM3zKSnMbbcAYvLpWJOEpMCuPMK4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":416867},"type":"module","engines":{"node":">=22"},"gitHead":"745ce403a4f92e76a1423687a85b7b3a34b04fe5","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.46_1776243931557_0.44718138326533885","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.47":{"name":"@matelink/cli","version":"2026.4.47","_id":"@matelink/cli@2026.4.47","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"2e3302a84cd4c9254bac0e16de8cea08eac52e50","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.47.tgz","fileCount":23,"integrity":"sha512-A0eBsnprrLSQS7ZZ/PSOJ+9fDGdRp8926hSDDUSypmlAjHk25amPK7cigoqY736jiof/Wka0O6ct8B/lPtD5mw==","signatures":[{"sig":"MEUCIERyV2CvCq8B4CW0RXFRx4cVE7pV0b4Ryvsq+oFySAtrAiEA/cEOdhtJ5AwUL4yCgafC6+VygHuof9jnZJhaHV4Ddww=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":417630},"type":"module","engines":{"node":">=22"},"gitHead":"f63e56b2350cd2c8878696e31cdebf0b7fb6d431","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.47_1776254927963_0.8384122097140005","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.48":{"name":"@matelink/cli","version":"2026.4.48","_id":"@matelink/cli@2026.4.48","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"609c47b2dca4783e32443ab898d024b22e5a3fa6","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.48.tgz","fileCount":23,"integrity":"sha512-oY3GZGl1nbDlpUP/RhV1MqknAJ8XMaLXldjvtJYjzbhXUjE2j2kn9TMXnjAMHUsVhY2G4IYuYHiqFmUfXf2wWQ==","signatures":[{"sig":"MEQCIBBC+XVqZUcttsj2f7RkkP+5fMF582EoNkvxzms/ATuyAiBPkoPysLPZ5lybaTfpT/qNZ1kS4Ku/fArJTIbR+MbCMQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":418197},"type":"module","engines":{"node":">=22"},"gitHead":"d878ccc575a258189f295d735b04fb3d17f4d71c","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.48_1776314666158_0.6461853607283752","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.49":{"name":"@matelink/cli","version":"2026.4.49","_id":"@matelink/cli@2026.4.49","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"e1c35b7783bda3f3d43c89548ab86519c0a0b31f","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.49.tgz","fileCount":24,"integrity":"sha512-w6YZBXeXSYqsWnKMOSs3xAyg61gogFqU1fiySusqFFzy8FiSeGDh3OHhDgZucifosf3zg8LCDMev4LcEZc1ZSg==","signatures":[{"sig":"MEQCIQDgdr/BSBjmfFr8bMRDTCapTXlh8jLThjr5+YBrqwiypgIfUbmcRIyTgYV9K+dX6hgCPKsrvOVXUrrVzYBdzh7SIQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":435844},"type":"module","engines":{"node":">=22"},"gitHead":"7c580fcfa155065469e4ee05a30f374571e96f97","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.49_1776324737878_0.3678197176160305","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.50":{"name":"@matelink/cli","version":"2026.4.50","_id":"@matelink/cli@2026.4.50","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"61f6c555ac1c3657b2d8898e839dcce4ea57e088","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.50.tgz","fileCount":24,"integrity":"sha512-e5tU1D0T2XzT7ndJD8j7ztC7jU+3DLHZIjtqv3lRD/CRZdyxt6zRhLqbY9SDf1Dfi8cU0m/AhwUUkhEddl585A==","signatures":[{"sig":"MEQCICLfx0cmJ4PjL3VEF1Pcb5ERnYEesc0sgUQfwhBB3RMdAiBBIkXKo12polvNsQHQJUdvrA+KCvifGBGRxlYIbrnpwQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":436060},"type":"module","engines":{"node":">=22"},"gitHead":"78c4988149665826c791d67f6f1f99b58d5aaef9","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.50_1776324970527_0.9045228142658173","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.51":{"name":"@matelink/cli","version":"2026.4.51","_id":"@matelink/cli@2026.4.51","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"64ad5095a0742252da2ea565f8effa3de48cb60c","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.51.tgz","fileCount":24,"integrity":"sha512-VIS8v+uTXUnn0es3oWG8uHJ1Tfh1N+6Lq/2bzMRfNZ2XWPn/TNF/Grtv5V0UxqklOB39fYldC8dJUB/wtTvC4g==","signatures":[{"sig":"MEQCIFK+QE7dDbHUli4/EAe9Oj7AbUIH66LROSMBwtOJcWM5AiAFFoXbYXvSTWDm3qUlOoABWCablAIweatkN/2f4DFy6w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":438186},"type":"module","engines":{"node":">=22"},"gitHead":"86b5ef6a01053527b9eb19d392f0bff774fe4bc8","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.51_1776326196895_0.2625041792493259","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.52":{"name":"@matelink/cli","version":"2026.4.52","_id":"@matelink/cli@2026.4.52","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"fe3c4ab1e00c5b661a0e4ff74b9af07b6f06bbf8","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.52.tgz","fileCount":24,"integrity":"sha512-e4U7LJhvVgKIjASZxhjQdMwpAM+3uHrFXWBWW4H7fJTe1PxupownmMpX5vAOfL6eAH+vz3f5r738IGLwQyYoIA==","signatures":[{"sig":"MEQCIGhDuaRfj7Ux32yFv2vusOrS8q4thEyZzXpLFwTCL+M9AiApTxRYRaZ+1Hxq/04Jxc9qnPb2aiCterW25H1IIu7XFw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":439201},"type":"module","engines":{"node":">=22"},"gitHead":"dac46bc59343499fd2d07dbff5e0066ce4d9e3b6","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.52_1776327104544_0.814160632314747","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.53":{"name":"@matelink/cli","version":"2026.4.53","_id":"@matelink/cli@2026.4.53","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"cc3cd0676bc69f54302c6204d77c5c90f143eb4f","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.53.tgz","fileCount":38,"integrity":"sha512-tACc/1+HZNQyRBOB6omF4IQ2cUaol0SGxOmHGgrde5pp/lsfAyBAdC4IqVZdmuFVAxXbDSaZSogO1wVkoJ85pg==","signatures":[{"sig":"MEUCIBezCyb63wY9z+uKxh9chFH0AniOsXJ031VW+Kng0fEuAiEAgPIod4wZtrIsoLwcJ9muOIbQPJFpk3utWTlMuRBo19w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":520541},"type":"module","engines":{"node":">=22"},"gitHead":"a2c9b50bf604b982dad43b8334fae469013c68b9","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.53_1776327355785_0.28362275252136815","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.54":{"name":"@matelink/cli","version":"2026.4.54","_id":"@matelink/cli@2026.4.54","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"691ff83f90098c36e3772d46650169b64da5e5df","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.54.tgz","fileCount":38,"integrity":"sha512-peRbV/6ATe3j1K/HOJeCmQd4cTdjGtAwpidr9um96VyOv5PTlg1CiWNltI7A9azEmeiSzVNK/Aa9/zLBxEaWEw==","signatures":[{"sig":"MEUCIQCra4TauNi3MUcfWKrXP4Dy9hnlcV8RUyMQPwMTPlt0kAIgBPv7XLrvCBXAhkPH2ufrsnIt5uqi1iAOFubDPFbUBQA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":520895},"type":"module","engines":{"node":">=22"},"gitHead":"8739ecc9eb22e194675fae012b2045605a053a94","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.54_1776330144017_0.5629780486913745","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.55":{"name":"@matelink/cli","version":"2026.4.55","_id":"@matelink/cli@2026.4.55","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"4fb8fe1499c021c819fe28fb598f473878be4288","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.55.tgz","fileCount":38,"integrity":"sha512-GbFYAyLZbaevpwF+hxOsVnENCBHpPcer60168/RaHiO044Se/dy+OBPbig5P5la3NgELFpz6G8XdwIY7zU3BiA==","signatures":[{"sig":"MEUCIQD+xGIdr5x3maGABQznhRSWX8OXusqP5nVG+eiGVMct3wIgIChDHUM+8LjCC5d4yejG/N+6hO5U9erO6wO5ccP9RNU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":525492},"type":"module","engines":{"node":">=22"},"gitHead":"5350e58043958d2bb9ecc0ddd572ac0a2795d5ec","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.55_1776341136732_0.7918062670296642","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.56":{"name":"@matelink/cli","version":"2026.4.56","_id":"@matelink/cli@2026.4.56","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink"},"dist":{"shasum":"acdfe276aee95d7e28ab9ea5a84bbdfcf5c03056","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.56.tgz","fileCount":38,"integrity":"sha512-qLmRaGV2al7pPigx+XCAX0T+3DSfVHQejTvqPydUGHxLbB7JS3sKHhtMuYubiTq56VtAqV2wZMw49a8KPDyePw==","signatures":[{"sig":"MEYCIQCjLENtQJIXWemW9LXpRXmhAd3dxcOojoIAslwdHgqOqwIhANr1yMpaBhaNfcm5EGNN7mB26eDoAY026ynwCEC+Dynz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":594469},"type":"module","engines":{"node":">=22"},"gitHead":"3a46dd33f61e677399ef6ae3b34d5e233994b95b","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.56_1776400876297_0.5521979099849823","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.57":{"name":"@matelink/cli","version":"2026.4.57","_id":"@matelink/cli@2026.4.57","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink","matelink-agent":"bin/matelink-agent"},"dist":{"shasum":"1bdd3a9477f261a23b398772e7d7fd84bd6afcc7","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.57.tgz","fileCount":53,"integrity":"sha512-2Vi2g7L94+57NfuMnnunxqg3gqphzHDDMrMDvt+lerVPfIWmCjPfm0QZp6Zp3GmP+7YjN/RpsM9DxH8RqH889w==","signatures":[{"sig":"MEUCIQCeIs2I7NAz+U8lZTs6AEEEGQdhKIBtYhOjJrxRt7fP0gIgP8smMS1Cy5B7pjOoUX7slfjQQxUDaU7HnHOtOLaY3IU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":683040},"type":"module","engines":{"node":">=22"},"gitHead":"26e7e33ca083d6eeb9264b3b0d4db04f3044a5a1","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.57_1776411062001_0.9130272090412503","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.58":{"name":"@matelink/cli","version":"2026.4.58","_id":"@matelink/cli@2026.4.58","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink","matelink-agent":"bin/matelink-agent","matelink-mcp-stdio":"bin/matelink-mcp-stdio"},"dist":{"shasum":"a80fea3a36745ff41d6418688ffe1e111fa78006","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.58.tgz","fileCount":72,"integrity":"sha512-GcE/G7GH4faPk5JxhKbxUZxBFNGgtXa2YGYNw6n08HIiGA5M4ImQEWKTCn1myiOieB4vkMUA6SklfjOM1DSKNw==","signatures":[{"sig":"MEUCIAD6RmY+/Ogph1bRGQ32RuGmw8eAdTubZo+tzxOZgdFCAiEAs7uFv27moxfit9N0m3jQwJ6/conJueknb1FrvQ1O/ZI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":814570},"type":"module","engines":{"node":">=22"},"gitHead":"26e7e33ca083d6eeb9264b3b0d4db04f3044a5a1","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.58_1776417310698_0.36593005443228943","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.59":{"name":"@matelink/cli","version":"2026.4.59","_id":"@matelink/cli@2026.4.59","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink","matelink-agent":"bin/matelink-agent","matelink-mcp-stdio":"bin/matelink-mcp-stdio"},"dist":{"shasum":"75a4dab7f358d31548088caa4b7239aa07e91aa1","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.59.tgz","fileCount":79,"integrity":"sha512-hhYq7ybmyWyZKr8BA4VO0aAohtCgtKG7iLeIWWl6KwmAutImoqQY3/plz22p3eo9k7MX4ANgT5UDQ5sIdvKwtQ==","signatures":[{"sig":"MEYCIQDffCm2T2YHA4jeT0aKgzJXQ96tNpEU7UVRQyOHeB0gYQIhAMip57ksPsVRHlmR/8s3AqDKMreSm/Rp6LsRVdNoeaik","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":893051},"type":"module","engines":{"node":">=22"},"gitHead":"85abed871e017a67c0f0769ef59143fbf2689baf","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"optionalDependencies":{"node-pty":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.59_1776672455153_0.21706525324067183","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.60":{"name":"@matelink/cli","version":"2026.4.60","_id":"@matelink/cli@2026.4.60","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink","matelink-agent":"bin/matelink-agent","matelink-mcp-stdio":"bin/matelink-mcp-stdio"},"dist":{"shasum":"b9c0d01921e15898dd64e1d426c3afd6543f1d99","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.60.tgz","fileCount":79,"integrity":"sha512-MNOHa65Bt0cyVVbro7VbAjcaX/6TwdAFS0dIcJhhzvK88LkgxBJsm6D/qQklL/ws2y6r7o6283eRsJfwenCtiQ==","signatures":[{"sig":"MEYCIQD8kaxUqBlJVYNJ3q5zMcd2hbKlGficgp5j16fghsPJ8wIhAPgJ4j8dXjH5AFJaK0N42m5/boxBTuHPGOV048wzScQ2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":895125},"type":"module","engines":{"node":">=22"},"gitHead":"83521cf7c5647d4025b8b7a181ee003608187f5f","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"optionalDependencies":{"node-pty":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.60_1776675982408_0.5610084512741995","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.61":{"name":"@matelink/cli","version":"2026.4.61","_id":"@matelink/cli@2026.4.61","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink","matelink-agent":"bin/matelink-agent","matelink-mcp-stdio":"bin/matelink-mcp-stdio"},"dist":{"shasum":"26e1b3e53f1e65d61569d1245caebeecf483e539","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.61.tgz","fileCount":83,"integrity":"sha512-s3lADJscfVM4qfIWUTkWncqkkdG7VVj4eUEzM1t01IEtfA1ADP8t965DwiwBS77G3fBErY+mAkmBgqES0Xp27g==","signatures":[{"sig":"MEUCIQCDq7CRUqToJaxaVNSg3UKw/T1SndeD3DYyxHbiBhHAqQIgOH7y7jYTjd1kSYM4oJjF+kspM6oRIUqDYtj3yoAmYsg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":936647},"type":"module","engines":{"node":">=22"},"gitHead":"9c38464e3c41738a486ef13f1678dd42f26e3100","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","dependencies":{"node-pty":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.61_1776741691210_0.965725690338596","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.62":{"name":"@matelink/cli","version":"2026.4.62","_id":"@matelink/cli@2026.4.62","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink","matelink-agent":"bin/matelink-agent","matelink-mcp-stdio":"bin/matelink-mcp-stdio"},"dist":{"shasum":"197f445104a67e02f8b10fd4f004a794334616ac","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.62.tgz","fileCount":85,"integrity":"sha512-Ck7NcRoR/LO+EHzTOHS2LA/tpsHo3voZp5JvXgr/hXS43mMRktaiNff3j9I/MdawfaRDaQ0dK3mtOYnpS+Q3nA==","signatures":[{"sig":"MEYCIQCClYR39jy9vgBNZEThpUh2VuxwynmFHfdicQPYnvLksgIhAKoQh3E0lEZGhBfx1bfPUrL58zW2da9xgbuKsyv5jAHh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":952487},"type":"module","engines":{"node":">=22"},"gitHead":"1e213647d8bad175edc593a17c71a9baf3349637","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","dependencies":{"node-pty":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.62_1776743761856_0.4041875189368902","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.63":{"name":"@matelink/cli","version":"2026.4.63","_id":"@matelink/cli@2026.4.63","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink","matelink-agent":"bin/matelink-agent","matelink-mcp-stdio":"bin/matelink-mcp-stdio"},"dist":{"shasum":"286cb434662f63c78a83fcff9222db6887cf65dd","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.63.tgz","fileCount":85,"integrity":"sha512-vNFZsLbsR4a0wD+nt6heEVaYCrWoHCTNcDq1n/+2+Hz2XK0fz5AM4LYheehE1D0q+u8ksPZ2paEsQ4pJAxnRHQ==","signatures":[{"sig":"MEYCIQDSI2yLkDA+9DgNDFtetcU7QbG5rnPjX/uPp+p2P+AFfgIhAJ9ac56LNzMFfvHtvnTVYkQogELWprmTnd57yQkY36pT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":958683},"type":"module","engines":{"node":">=22"},"gitHead":"8ebd3df6585a4bf979883a9806982154da1fd39e","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","dependencies":{"node-pty":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.63_1776745941288_0.2992523098232571","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.64":{"name":"@matelink/cli","version":"2026.4.64","_id":"@matelink/cli@2026.4.64","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink","matelink-agent":"bin/matelink-agent","matelink-mcp-stdio":"bin/matelink-mcp-stdio"},"dist":{"shasum":"0e28d469aa7ad9730b46966fca24434d866e9ca8","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.64.tgz","fileCount":85,"integrity":"sha512-ZA35ox3Y4yZo6gItByqkIl4YRwhebVOY+UXlOUstKGjPScQ7PmN/ePqABT06oSJuHpxHJpDlZq2IQ4iAIBw/sg==","signatures":[{"sig":"MEUCIQC3RGTLkeK3xy/DHDNWUXIMNfAtd/v+BoL1t8gialLnFQIgZ4ctk4wu/jKEVF3qI7v4Im/HmORnQNVBk35Y3h+08TM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":959611},"type":"module","engines":{"node":">=22"},"gitHead":"1aeba946e5ae01d02559c684d949e1e7237ac397","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","dependencies":{"node-pty":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"openclaw":"^2026.3.11"},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.64_1776760331935_0.6942547690807084","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.65":{"name":"@matelink/cli","version":"2026.4.65","_id":"@matelink/cli@2026.4.65","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink","matelink-agent":"bin/matelink-agent","matelink-mcp-stdio":"bin/matelink-mcp-stdio"},"dist":{"shasum":"3d02ba7dd4f12949dff5b65446a207d42f394262","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.65.tgz","fileCount":85,"integrity":"sha512-ERJJmka9i9En0sQGawAFy0hP5tpozr7vD6PeNbQ/hbrCxi+kTT9uHsKa7P6qsSOyBD/AaaIfTDllg5/jNCkbjA==","signatures":[{"sig":"MEUCIQDeaMq6pxFC5C9SNIGWommWkDY5dGiuHGt6UlFxjcbfFgIgbvV1T07In7JvX7/umH+9e92Vm5zz+xjdPe5WHRxlblM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":959551},"type":"module","engines":{"node":">=22"},"gitHead":"eebcf34c56de49423bdab5ac1337e24eb473a3d9","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.65_1776842215625_0.5898872264463939","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.66":{"name":"@matelink/cli","version":"2026.4.66","_id":"@matelink/cli@2026.4.66","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink","matelink-agent":"bin/matelink-agent","matelink-mcp-stdio":"bin/matelink-mcp-stdio"},"dist":{"shasum":"3ef9e1bb7d2826e7d66fc39b55377ff134147529","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.66.tgz","fileCount":85,"integrity":"sha512-wwglsXWZ0DAM30ORET9PSS82lGF31Vluh0+ZG6ZpZvFYdT6vRt3O5/QC+MoeEQldMLRwtXqQp0Tsc1HgP4lT6g==","signatures":[{"sig":"MEUCIQDku5wQyv74+TLCuPgv7sYhJB8yCPBBzarEwhQZmnuNgQIgaL25UliFaHYJ0fzKVzO2Eo1BLGxe8cS9lLgj6K3XSFw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":959551},"type":"module","engines":{"node":">=22"},"gitHead":"4083699ce4d7697fdb7de811435c2c5d56f8303b","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.66_1776844242554_0.5679410306175234","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.67":{"name":"@matelink/cli","version":"2026.4.67","_id":"@matelink/cli@2026.4.67","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink","matelink-agent":"bin/matelink-agent","matelink-mcp-stdio":"bin/matelink-mcp-stdio"},"dist":{"shasum":"c4d9f820d6c9ecd6caf5889698534b69fa41299f","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.67.tgz","fileCount":85,"integrity":"sha512-LHKmOKDbNVh7vzrW+fN9vvtHyjDArcwE7MdTOSU+hGIy48F6rr7PPLr15NWno7mWvtMo0E+Rh+izZrSlu3dEIg==","signatures":[{"sig":"MEUCIQCHQjEdj+UJLpSB6WVsHVypi4BZX7wljMe/VwKabbKXIAIgQwkwzb2q5xdCv/PDjEl/ew10YK6lr/kRkYeHb5BFERU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":959759},"type":"module","engines":{"node":">=22"},"gitHead":"2e36c6c5545dcdc42145dd8379874937c375fa02","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.67_1776845308501_0.4398417789001221","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.68":{"name":"@matelink/cli","version":"2026.4.68","_id":"@matelink/cli@2026.4.68","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink","matelink-agent":"bin/matelink-agent","matelink-mcp-stdio":"bin/matelink-mcp-stdio"},"dist":{"shasum":"50f66f72b1db675005c0906be8ab3b2dcc9e8137","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.68.tgz","fileCount":85,"integrity":"sha512-6DOsg0NvxEOrF5lUMgGtN1JI2pEbopc8+45WrCUDY6tuzzzHg+b+iyxlsFDkfr53T9ky4U6xUosYBoOaZB5T5Q==","signatures":[{"sig":"MEQCIF75Iqad/0Ay2Lu7E8dOsP770TIBs3JsSAJIGiz4TDBDAiABd7ubhfDSzwyfgbqFOX2UENChPp5/baPSAINIGClCbw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":960412},"type":"module","engines":{"node":">=22"},"gitHead":"4599635c1b21a14481cbb3e918dcb0b3773ce111","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.68_1776846733088_0.6361332965874646","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.69":{"name":"@matelink/cli","version":"2026.4.69","_id":"@matelink/cli@2026.4.69","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink","matelink-agent":"bin/matelink-agent","matelink-mcp-stdio":"bin/matelink-mcp-stdio"},"dist":{"shasum":"f3c3467410cef6abe48bb9438ad67b6fa4966786","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.69.tgz","fileCount":85,"integrity":"sha512-UOXKjvzD7L8p0GXJkki945it42VFjWbxoaFq8RIPFIs1n6Kd5ihc0jZGWZ6+bEEBeaCvKAR5F0Mr3pU7lC9Jvw==","signatures":[{"sig":"MEYCIQCz6g/VQDvtcx+TNfYqNIh5XqqAAlBDIZp7HvtpTw1TVwIhAK3xyDQyDb8GgItJ7xJQNp+/t5nkEZwqv2fuRnzB9uet","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":963933},"type":"module","engines":{"node":">=22"},"gitHead":"b8627022b6353edaaead9ddb2facb20d1b7f680c","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.69_1777017595782_0.6301991693669398","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.71":{"name":"@matelink/cli","version":"2026.4.71","_id":"@matelink/cli@2026.4.71","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink","matelink-agent":"bin/matelink-agent","matelink-mcp-stdio":"bin/matelink-mcp-stdio"},"dist":{"shasum":"425d981c1011e4a344f056292599f5dc100a0f50","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.71.tgz","fileCount":88,"integrity":"sha512-sYqJG2hn//sFnBVjabrEnJQX4/f+KpQj+CBUNMKaxWtXrp//r1au+XfCgx2Fc8h4rEMExBZDI2hd+8e0nozFIA==","signatures":[{"sig":"MEYCIQD2EMwSgeEDZvsUTeDI/bvvrL1lRDvoM1F6ebXur1121QIhAL5WDYz6cyem8rtyDgQ+XcyB9La2wlxWxXddIBRfFgQ5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":978750},"type":"module","engines":{"node":">=22"},"gitHead":"6a5ecfb8890f59d4a26dda0dacd6d66c94356907","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.71_1777441890894_0.17412252312019683","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.72":{"name":"@matelink/cli","version":"2026.4.72","_id":"@matelink/cli@2026.4.72","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"matelink":"bin/matelink","matelink-agent":"bin/matelink-agent","matelink-mcp-stdio":"bin/matelink-mcp-stdio"},"dist":{"shasum":"d8b2dea38e8ade9aa71ced768d0aa4ed67b1cdaf","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.72.tgz","fileCount":88,"integrity":"sha512-dLeNUZA/3kz3C0i9j5HvtAipJWiOBNCGybKLHIm8C3ntDz7R1MVK6amfLbdmoGdCCF6PrFHB/RTgeWta++6moA==","signatures":[{"sig":"MEUCIQCqrNF9Wy/7koTGdKNCWLP6Wa4OgwxOLNYRj7v8ttEdjwIgSahz08lYxwPYLijbQcjRLzOWyTEBssubhtLe4OayQdU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1000956},"type":"module","engines":{"node":">=22"},"gitHead":"6f5aa252b1b884cf04b385e97c9f7e518e185b38","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.72_1777445297820_0.45997010787514747","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2026.4.73":{"name":"@matelink/cli","version":"2026.4.73","_id":"@matelink/cli@2026.4.73","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"bin":{"bubbolink":"bin/bubbolink","bubbolink-agent":"bin/bubbolink-agent","bubbolink-mcp-stdio":"bin/bubbolink-mcp-stdio"},"dist":{"shasum":"f2ad81267c56d140ed7ca057a5cd4c2390ef7d1a","tarball":"https://registry.npmjs.org/@matelink/cli/-/cli-2026.4.73.tgz","fileCount":88,"integrity":"sha512-Fcet4VcvnHUpJMKM0/RG7WqYdFRHEaGVgC0KZSzVgLkKnVfZYo2tH9EAaHJLHnmzjJ60jml7k5EwXbyFHOwC4g==","signatures":[{"sig":"MEYCIQDrzD3UZEXA/NJX6wwymEBMXMFQ/HwfPjfpp483DAfcWgIhALw6v8tMGdSaaR6tk6/cLhaQ1EkjneChLdvN82lIANp5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1001528},"type":"module","engines":{"node":">=22"},"gitHead":"0f99165d45f35b2c5837aaa371f1324902fcb511","private":false,"scripts":{"test":"node --test test/*.test.mjs","test:coverage":"node --test --experimental-test-coverage test/core.test.mjs"},"_npmUser":{"name":"matelink","email":"jiayi@cece.com"},"_npmVersion":"10.9.7","description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","directories":{},"_nodeVersion":"22.22.2","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/cli_2026.4.73_1777449542007_0.9878248835251828","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."}},"time":{"created":"2026-04-02T07:33:20.265Z","modified":"2026-04-29T08:07:05.672Z","2026.4.7":"2026-04-02T07:33:20.580Z","2026.4.8":"2026-04-02T08:03:55.008Z","2026.4.9":"2026-04-02T09:05:43.061Z","2026.4.10":"2026-04-02T09:59:20.361Z","2026.4.11":"2026-04-02T12:45:54.048Z","2026.4.12":"2026-04-03T03:26:01.659Z","2026.4.13":"2026-04-03T03:45:05.075Z","2026.4.14":"2026-04-03T05:06:42.848Z","2026.4.15":"2026-04-03T05:15:19.415Z","2026.4.16":"2026-04-03T05:21:33.607Z","2026.4.17":"2026-04-03T05:55:26.042Z","2026.4.18":"2026-04-03T09:40:35.981Z","2026.4.19":"2026-04-03T12:09:08.739Z","2026.4.20":"2026-04-03T14:21:16.405Z","2026.4.21":"2026-04-04T14:01:16.668Z","2026.4.22":"2026-04-04T14:32:56.966Z","2026.4.23":"2026-04-04T15:31:46.351Z","2026.4.24":"2026-04-04T15:35:29.193Z","2026.4.25":"2026-04-05T16:05:30.982Z","2026.4.26":"2026-04-07T02:33:45.571Z","2026.4.27":"2026-04-07T02:34:20.922Z","2026.4.28":"2026-04-07T02:42:24.072Z","2026.4.29":"2026-04-07T03:41:22.009Z","2026.4.30":"2026-04-07T03:47:27.750Z","2026.4.31":"2026-04-07T03:51:26.227Z","2026.4.32":"2026-04-07T11:26:11.629Z","2026.4.33":"2026-04-07T11:27:50.853Z","2026.4.34":"2026-04-10T08:30:38.717Z","2026.4.35":"2026-04-13T03:38:14.087Z","2026.4.36":"2026-04-13T10:47:46.550Z","2026.4.37":"2026-04-13T11:11:53.096Z","2026.4.38":"2026-04-14T02:50:25.064Z","2026.4.39":"2026-04-14T03:23:59.400Z","2026.4.40":"2026-04-14T12:01:10.170Z","2026.4.41":"2026-04-15T03:21:31.978Z","2026.4.42":"2026-04-15T07:34:47.500Z","2026.4.43":"2026-04-15T08:10:44.002Z","2026.4.44":"2026-04-15T08:20:24.773Z","2026.4.45":"2026-04-15T08:53:29.175Z","2026.4.46":"2026-04-15T09:05:31.696Z","2026.4.47":"2026-04-15T12:08:48.146Z","2026.4.48":"2026-04-16T04:44:26.304Z","2026.4.49":"2026-04-16T07:32:18.020Z","2026.4.50":"2026-04-16T07:36:10.667Z","2026.4.51":"2026-04-16T07:56:37.063Z","2026.4.52":"2026-04-16T08:11:44.674Z","2026.4.53":"2026-04-16T08:15:55.965Z","2026.4.54":"2026-04-16T09:02:24.172Z","2026.4.55":"2026-04-16T12:05:36.972Z","2026.4.56":"2026-04-17T04:41:16.464Z","2026.4.57":"2026-04-17T07:31:02.159Z","2026.4.58":"2026-04-17T09:15:10.852Z","2026.4.59":"2026-04-20T08:07:35.320Z","2026.4.60":"2026-04-20T09:06:22.634Z","2026.4.61":"2026-04-21T03:21:31.359Z","2026.4.62":"2026-04-21T03:56:01.999Z","2026.4.63":"2026-04-21T04:32:21.482Z","2026.4.64":"2026-04-21T08:32:12.126Z","2026.4.65":"2026-04-22T07:16:55.833Z","2026.4.66":"2026-04-22T07:50:42.693Z","2026.4.67":"2026-04-22T08:08:28.685Z","2026.4.68":"2026-04-22T08:32:13.274Z","2026.4.69":"2026-04-24T07:59:55.941Z","2026.4.71":"2026-04-29T05:51:31.079Z","2026.4.72":"2026-04-29T06:48:18.001Z","2026.4.73":"2026-04-29T07:59:02.150Z"},"description":"Relay-first CLI for pairing and bridging OpenClaw gateway traffic","maintainers":[{"name":"matelink","email":"jiayi@cece.com"}],"readme":"# @bubbolink/cli\n\n把本地 AI runtime（OpenClaw 或 Hermes）接入 Bubbolink relay 服务的独立 CLI。\n\n手机端 App 通过 relay 跟本地 runtime 对话，CLI 负责：\n\n- 配对：把手机 App 账号和本地 runtime 绑定到同一个 relay gateway\n- 桥接：长时间运行一个中继 worker，把 relay 队列里的请求拉下来、喂给本地 runtime、再把事件发回 relay\n- 守护：用系统服务（launchd / systemd / Task Scheduler）让桥接在后台常驻\n\n**深入文档**：\n\n- [docs/PAIR_FLOW.md](docs/PAIR_FLOW.md) — `bubbolink pair` 完整流程：每一步做了什么、改了哪些文件、`--runtime all` 模式遇到 runtime 缺失怎么处理、对 OpenClaw 配置改动的安全性分析、故障排查 checklist\n- [docs/EXTERNAL_AGENTS.md](docs/EXTERNAL_AGENTS.md) — claude / codex 等外部 agent 接入指南\n- [docs/LOGGING.md](docs/LOGGING.md) — 日志格式与排查\n- [docs/PLATFORM.md](docs/PLATFORM.md) — 跨平台细节（launchd / systemd / Windows）\n- [bubbolink-server/TOOL_EVENTS.md](../bubbolink-server/TOOL_EVENTS.md) — 工具调用链事件 schema（OpenClaw plugin / Hermes / Codex / Claude → server `session.tool` 字段映射 + 真实样例）\n\n---\n\n## 1. 整体架构\n\n```\n┌────────────────┐    HTTPS / SSE    ┌───────────────────────┐\n│   Mobile App   │◀─────────────────▶│   Relay Server (Go)   │\n│  (nexus_flutter)│                  │  go-relay-test.cece.com   │\n└────────────────┘                   │                       │\n                                     │  MySQL + Redis        │\n                                     └───────────┬───────────┘\n                                                 │\n                                 long-poll  +   POST events\n                                                 │\n                                     ┌───────────▼───────────┐\n                                     │   bubbolink CLI (Node) │\n                                     │   bin/bubbolink        │\n                                     │                       │\n                                     │  ┌─────────────────┐  │\n                                     │  │ Bridge worker   │  │\n                                     │  └────────┬────────┘  │\n                                     └───────────┼───────────┘\n                                                 │\n                             ┌───────────────────┼───────────────────┐\n                             │                   │                   │\n                     (runtimeKind=openclaw)  (runtimeKind=hermes)\n                             │                   │\n                   HTTP /v1/responses      spawn python3 -m\n                             │              hermes_bridge\n                             ▼                   ▼\n                   ┌─────────────────┐   ┌──────────────────┐\n                   │ OpenClaw Gateway│   │ Hermes Bridge    │\n                   │  (外部进程)      │   │ (runtime/...)     │\n                   │  127.0.0.1:<p>  │   │                  │\n                   └─────────────────┘   └────────┬─────────┘\n                                                   │ Python import\n                                                   ▼\n                                          ┌──────────────────┐\n                                          │  Hermes AIAgent  │\n                                          │  run_conversation│\n                                          └──────────────────┘\n```\n\n三个关键角色：\n\n| 角色             | 位置                             | 职责                                                                          |\n| ---------------- | -------------------------------- | ----------------------------------------------------------------------------- |\n| **Relay Server** | `relay-server/`（Go）            | 握住 App ↔ runtime 之间的所有流量；负责配对会话、请求队列、事件广播、presence |\n| **CLI**          | `bin/bubbolink`（Node ≥22）       | 配对 + 桥接。OpenClaw 模式下直接 HTTP 转发；Hermes 模式下 spawn Python 子进程 |\n| **Runtime**      | OpenClaw gateway / Hermes bridge | 实际执行 AI turn 的进程                                                       |\n\n---\n\n## 2. 代码结构\n\n```\ntestnextim/\n├── bin/bubbolink                 # CLI 主入口（单文件，~6.3K 行）\n├── src/core.mjs                 # 纯函数工具：URL 构造、code 归一化、路径处理\n├── runtime/hermes_bridge/       # Hermes Python 中继 worker\n│   └── src/hermes_bridge/\n│       ├── main.py              # 事件循环 + RPC dispatcher\n│       ├── relay_client.py      # HTTP 客户端（poll / publish_event / publish_meta）\n│       ├── agent_runner.py      # 调用 Hermes AIAgent.run_conversation\n│       ├── session_store.py     # 本地 transcript 持久化（按 sessionKey）\n│       ├── event_mapper.py      # 把 Hermes 输出映射成 relay SSE chunk\n│       ├── bootstrap.py         # doctor()：探测 Python/Hermes 可用性\n│       └── cron_rpc.py          # cron.* RPC 实现\n└── test/                        # node --test 测试套件\n```\n\n`bin/bubbolink` 本身不依赖 `openclaw`（`openclaw` 只是 devDependency）；运行期 OpenClaw 是外部可执行文件，通过 `PATH` 或 `OPENCLAW_HOME` 定位。\n\n---\n\n## 3. 两种 runtime 模式\n\nCLI 通过 `runtimeKind` 分流，两种模式只有 runtime 层替换，跟 relay 的协议完全一致。\n\n### 3.1 OpenClaw 模式（默认）\n\n```\n App ──► Relay ──► CLI bridge (Node) ──► HTTP POST /v1/responses ──► OpenClaw Gateway\n                                                                          │\n                                     events  ◄──────────────── SSE / JSON ┘\n                                     (publish back to relay)\n```\n\n- CLI 在 Node 事件循环里做 long-poll + HTTP 转发\n- OpenClaw 是独立的外部进程（`openclaw gateway run`），监听 `127.0.0.1:<port>`\n- CLI 把 relay 拉下来的请求转成 `POST /v1/responses`，再把流式响应切片发回 relay\n- 网关鉴权：CLI 从 `~/.openclaw/config.json` 读 `gateway.auth.token`\n\n### 3.2 Hermes 模式\n\n```\n App ──► Relay ──► CLI spawn ──► python3 -m hermes_bridge ──► Hermes AIAgent\n                   (管 stdout/stderr)      │\n                                           └── 直接读写 relay，Node 不参与数据通道\n```\n\n- CLI 只负责拉起 Python 子进程（`runHermesBridgeForeground` / `startHermesBridgeDetached`）\n- `hermes_bridge` 自己持有 relay gateway token，独立 poll / publish\n- 本地 transcript 存在 `~/.openclaw/bubbolink/hermes/sessions/`（`SessionStore`）\n- 启动前先跑 `bootstrap.doctor()` 确认 Python ≥3.10 + Hermes 可 import；失败直接 fail\n\n两种 runtime 使用**独立**的 relay 凭证和独立的 session 模型（见 `AppRuntimeKind` 枚举），配对流程里由 App 端决定写哪一组。\n\n---\n\n## 4. Relay 协议\n\nCLI 跟 relay 之间只走 HTTP（长轮询 + POST），没有 WebSocket。关键端点：\n\n### 4.1 配对阶段\n\n| 端点                                              | 方向            | 用途                                                             |\n| ------------------------------------------------- | --------------- | ---------------------------------------------------------------- |\n| `GET /v1/pair-sessions/{code}`                    | App/CLI → Relay | 查配对 session 是否存在、是否已 consumed                         |\n| `POST /v1/pair-sessions`                          | App → Relay     | 发布配对请求（含 `accountId` / `runtimeKind` / `transportMode`） |\n| `GET /v1/pair-sessions/{code}/bind-requests/next` | CLI → Relay     | long-poll 等 App 推下来的绑定请求                                |\n| `POST /v1/pair-sessions/{code}/bind-results`      | CLI → Relay     | 回传绑定结果（gateway ID + token）                               |\n\n### 4.2 桥接阶段\n\n| 端点                                                  | 方向               | 用途                                                              |\n| ----------------------------------------------------- | ------------------ | ----------------------------------------------------------------- |\n| `GET /v1/gateways/{gwId}/requests/next?waitSeconds=N` | CLI/bridge → Relay | long-poll 下一个 request（204 表示超时）                          |\n| `POST /v1/gateways/{gwId}/requests/{reqId}/events`    | CLI/bridge → Relay | 发布 `start` / `chunk` / `end` / `error` / `response` 事件        |\n| `POST /v1/gateways/{gwId}/chat-events`                | CLI → Relay        | OpenClaw 模式下发送结构化聊天事件（供 App 做 structured history） |\n| `POST /v1/gateways/{gwId}/meta`                       | CLI/bridge → Relay | presence 心跳（`online` / `connected` / `state`），默认 10s 一次  |\n| `GET/DELETE /v1/gateways/{gwId}/binding`              | CLI → Relay        | 查询 / 解绑当前 gateway                                           |\n| `POST /v1/gateways/{gwId}/reset`                      | CLI → Relay        | 硬重置（`bubbolink reset`）                                        |\n\n鉴权：桥接阶段所有端点用 `Authorization: Bearer <gatewayToken>`；配对阶段用 App 侧下发的临时 token。\n\n### 4.3 事件形状\n\n桥接 worker 发回 relay 的事件统一是：\n\n```json\n{\n  \"event\": \"start|chunk|end|error|response\",\n  \"sessionKey\": \"agent:<id>:relay-gw:<gwId>::<sessionKey>\",\n  \"runId\": \"...\",\n  \"statusCode\": 200,\n  \"contentType\": \"text/event-stream; charset=utf-8\",\n  \"data\": \"...\",\n  \"createdAtMs\": 1713312000000\n}\n```\n\n`sessionKey` 格式前后端不一致：App 侧带装饰前缀（`agent:` / `relay-gw:`），relay 事件来的是裸 key。两边比较必须归一化（Go 端 `normalizeSessionKeyForMatch`，Flutter 端 `_sessionKeyMatchesForPreview`）。\n\n---\n\n## 5. 典型流程\n\n### 5.1 配对（`bubbolink pair <code>`）\n\n```\n  App                       Relay                       CLI\n   │                          │                          │\n   │ 1. POST /v1/pair-sessions│                          │\n   │    {code, accountId,     │                          │\n   │     runtimeKind}         │                          │\n   ├─────────────────────────▶│                          │\n   │                          │                          │\n   │                          │ 2. GET /v1/pair-sessions │\n   │                          │    /{code}               │\n   │                          │◀─────────────────────────┤\n   │                          │ runtimeKind / accountId  │\n   │                          ├─────────────────────────▶│\n   │                          │                          │\n   │                          │                          │ 3. 生成 gatewayId\n   │                          │                          │    (gw-<acct>-<rand>)\n   │                          │                          │    如果 openclaw:\n   │                          │                          │    启动/检查 gateway\n   │                          │                          │\n   │                          │ 4. long-poll bind-req    │\n   │                          │◀─────────────────────────┤\n   │ 5. App 端点击确认        │                          │\n   │    (走 relay 推送)       │                          │\n   ├─────────────────────────▶│                          │\n   │                          ├─────────────────────────▶│\n   │                          │                          │\n   │                          │ 6. POST bind-results     │\n   │                          │    {gatewayId, token}    │\n   │                          │◀─────────────────────────┤\n   │                          │                          │\n   │ 7. App 收到 gateway 凭证 │                          │\n   │◀─────────────────────────┤                          │\n   │                          │                          │\n```\n\n配对成功后 CLI 把 `{gatewayId, gatewayToken, relayUrl, runtimeKind}` 写进 `~/.openclaw/testnextim.state.json`，供后续 `bridge` / `service` 命令读取。\n\n### 5.2 桥接（`bubbolink bridge`，OpenClaw 模式）\n\n```\n ┌──────────┐                    ┌──────────┐              ┌────────────┐\n │  CLI     │  long-poll 90s     │  Relay   │              │  OpenClaw  │\n │  bridge  │───────────────────▶│          │              │  Gateway   │\n │          │◀───────────────────│          │              │ /v1/resp.. │\n │          │   request          │          │              │            │\n │          │                    │          │              │            │\n │          │─── POST /v1/resp ─────────────────────────▶  │            │\n │          │◀── SSE stream ──────────────────────────────  │            │\n │          │                    │          │              │            │\n │          │── POST events ────▶│          │              │            │\n │          │   (start/chunk/    │          │              │            │\n │          │    end)            │          │              │            │\n │          │                    │          │              │            │\n │          │── POST meta ──────▶│          │              │            │\n │          │   (heartbeat 10s)  │          │              │            │\n └──────────┘                    └──────────┘              └────────────┘\n```\n\n- Bridge 使用 `acquireBridgeLock` 做文件锁，防止一台机器上两个 bridge 抢同一个 gateway\n- SIGINT/SIGTERM 时发一次 `state: \"stopped\"` presence，让 App 立刻看到离线（而不是等 25s TTL）\n\n### 5.3 桥接（Hermes 模式）\n\nCLI 只做 spawn，数据通道完全在 Python 里跑：\n\n```\n  CLI ──fork──▶  python3 -m hermes_bridge \\\n                    --relay <url> \\\n                    --gateway-id <id> \\\n                    --gateway-token <token>\n\n  hermes_bridge/main.py 的主循环：\n    while True:\n      req = relay.read_next_request()        # GET /requests/next\n      if req.__relayKind == \"rpc\":\n          result = _handle_rpc(method, params)\n          relay.publish_event(..., \"response\")\n      else:\n          result = runner.run_turn(prompt)   # Hermes AIAgent\n          relay.publish_event(..., \"start\")\n          relay.publish_event(..., \"chunk\")\n          relay.publish_event(..., \"end\")\n```\n\n并行有一个 presence 线程每 10s 发 `publish_meta(...)`。\n\n---\n\n## 6. 安装 & 快速开始\n\n```bash\nnpm i -g @bubbolink/cli\n```\n\nOpenClaw 模式（默认）：\n\n```bash\n# 1) 准备 OpenClaw 配置 + relay 凭证\nbubbolink setup \\\n  --relay http://<relay-host>:8090 \\\n  --public-base http://<gateway-public-host>:<port>\n\n# 2) 启动本地 OpenClaw gateway\nopenclaw gateway run --bind loopback --port <port> --force\n\n# 3) 用 App 里生成的 code 完成配对\nbubbolink pair 123456\n\n# 4) 把桥接装成后台服务\nbubbolink service install\n```\n\nHermes 模式：\n\n```bash\n# Hermes 需要 Python >= 3.10 + hermes 包已 pip install\nbubbolink pair 123456 --runtime hermes --hermes-python python3\n\n# 或者前台跑\nbubbolink bridge --runtime hermes\n```\n\nClaude / Codex External Agents：\n\n```bash\n# Claude Code / Codex CLI 需要先在本机安装并登录\n\n# 配对后会自动安装后台服务\nbubbolink pair 1234 -r claude\nbubbolink pair 1234 -r codex\n\n# 前台调试运行（当前终端内运行，Ctrl+C 可停止）\nbubbolink bridge -r claude\nbubbolink bridge -r codex\n```\n\n重装 App 后重新配对（典型场景）：\n\n```bash\n# 如果之前是 hermes 模式，配对报 \"这台主机已经绑定过设备\"\nbubbolink reset --runtime hermes          # 只清 hermes 凭证，不动 openclaw\nbubbolink pair <new-code> --runtime hermes\n\n# openclaw 模式不传 --runtime 即可\nbubbolink reset\nbubbolink pair <new-code>\n```\n\n---\n\n## 7. 命令参考\n\n```bash\nbubbolink setup [--relay URL] [--public-base URL]              # 写配置 + 装权限\nbubbolink pair <code> [--runtime openclaw|hermes|claude|codex] # 配对；claude/codex 默认会自动装后台服务\nbubbolink bridge [--runtime openclaw|hermes|claude|codex]      # 前台运行桥接；claude/codex 用 Ctrl+C 停止\nbubbolink service install|stop|uninstall|restart|status [--runtime ...] # 后台服务；claude/codex 中 stop 是 uninstall 别名\nbubbolink uninstall --runtime claude|codex                     # claude/codex 完整卸载：停服务 + 清本地配对状态\nbubbolink reset [--runtime openclaw|hermes] [--gateway GWID]   # 硬重置绑定\nbubbolink pair-url [--account ID] [--code CODE]                # 生成手动配对 URL\nbubbolink tunnel on <port> [--relay URL]                       # 暴露本地 HTTP 端口\nbubbolink tunnel off <port> [--relay URL]                      # 关闭端口转发\nbubbolink tunnel ls                                            # 查看 tunnel 状态\nbubbolink status [--runtime openclaw|hermes]                   # 查当前 runtime / 服务 / 绑定\n```\n\n### Tunnel 快速测试\n\n```bash\n# 启一个本地测试服务\nmkdir -p /tmp/bubbolink-tunnel-demo\nprintf 'hello tunnel\\n' >/tmp/bubbolink-tunnel-demo/index.html\npython3 -m http.server 8080 --bind 127.0.0.1 -d /tmp/bubbolink-tunnel-demo\n```\n\n另一个终端：\n\n```bash\nbubbolink tunnel on 8080\n```\n\n示例输出：\n\n```text\nTunnel started\nLocal:  http://127.0.0.1:8080\nPublic: https://go-relay-test.cece.com/t/p8080-03ce6ff5\nLogs:   ~/.bubbolink/logs/tunnel-8080.log\nMode:   systemd-user\n```\n\n说明：\n\n- tunnel agent 会每 10 秒向 relay 发 heartbeat\n- relay 超过约 35 秒没收到 heartbeat，会把 tunnel 视为 offline，并对公网请求直接返回 `503 tunnel offline`\n- `bubbolink tunnel on <port>` 会直接打印公网访问地址，示例里的 `Public: https://...` 就是可分享的访问 URL\n- 如果不传 `--relay`，默认使用 CLI 当前内置或环境变量指定的 relay 地址\n- 后台守护优先走当前平台的服务管理：\n  - Linux: `systemd --user`\n  - macOS: `launchd`\n  - Windows: `Task Scheduler`\n- 如果当前环境没有可用的服务管理器，会自动回退到 detached 进程，并在 `bubbolink tunnel on` 输出里提示\n\n### Tunnel 技术实现\n\n这套 tunnel 是标准的反向内网穿透，不要求目标机器有公网 IP，也不要求目标机器开放入站端口。\n\n核心思路：\n\n- 外部用户访问的是 relay server 暴露出来的公网 URL，例如 `https://go-relay-test.cece.com/t/<slug>`\n- 内网机器上的 `bubbolink tunnel agent` 主动连接 relay，通过长轮询拉取待处理请求\n- agent 在本机访问 `127.0.0.1:<port>`，再把响应回传给 relay\n- relay 把响应返回给浏览器或调用方\n\n涉及的 3 个角色：\n\n- `Client / Browser`\n  - 访问公网 tunnel 地址\n- `Relay Server`\n  - 负责创建 tunnel、分配 `slug`、接收公网请求、转发给 agent、返回响应\n- `Tunnel Agent`\n  - 运行在用户机器上，负责 heartbeat、拉取请求、访问本地服务、发布响应\n\n关键接口：\n\n- `POST /v1/tunnels`\n  - 创建 tunnel，返回 `id`、`agentToken`、`publicUrl`\n- `GET /v1/tunnels/:id/requests/next`\n  - agent 长轮询拉取待处理请求\n- `POST /v1/tunnels/:id/heartbeat`\n  - agent 上报存活状态\n- `POST /v1/tunnels/:id/responses/:reqId/publish`\n  - agent 发布本地服务响应\n- `GET /t/:slug/*path`\n  - 公网入口，外部流量从这里进入 tunnel\n\n工作流程：\n\n```mermaid\nsequenceDiagram\n    participant U as \"User / Browser\"\n    participant R as \"Bubbolink Relay Server\"\n    participant A as \"Bubbolink Tunnel Agent\"\n    participant L as \"Local Service (127.0.0.1:8080)\"\n\n    A->>R: \"POST /v1/tunnels\"\n    R-->>A: \"id + agentToken + publicUrl\"\n    A->>R: \"POST /v1/tunnels/:id/heartbeat\"\n    A->>R: \"GET /v1/tunnels/:id/requests/next\"\n\n    U->>R: \"GET /t/:slug/api/echo?x=1\"\n    R-->>A: \"返回待处理 request\"\n    A->>L: \"GET http://127.0.0.1:8080/api/echo?x=1\"\n    L-->>A: \"200 + headers + body\"\n    A->>R: \"POST /v1/tunnels/:id/responses/:reqId/publish\"\n    R-->>U: \"200 + headers + body\"\n```\n\n在线状态与恢复机制：\n\n- agent 每 `10s` 发送一次 heartbeat\n- server 超过约 `35s` 没收到 heartbeat，会把 tunnel 判定为 `offline`\n- `offline` 状态下，公网请求会直接返回 `503 tunnel offline`\n- 后台运行优先使用系统服务托管：\n  - Linux: `systemd --user`，root 环境额外支持 `systemd system service`\n  - macOS: `launchd`\n  - Windows: `Task Scheduler`\n- 如果 agent 进程异常退出，服务管理器会自动重启；如果没有服务管理器，则退回 detached 进程模式\n\n实现边界：\n\n- 当前 tunnel 第一版只支持 HTTP 请求/响应转发\n- 支持 path、query、JSON/body、常见响应头透传\n- 暂不包含 WebSocket、任意 TCP、UDP 转发\n- 公网入口当前使用路径路由 `/t/<slug>`，没有使用独立子域名\n\n复杂路由跳转的适配说明：\n\n- 大多数复杂 Web 系统都可以正常工作，包括：\n  - SPA 前端路由，例如 `react-router`、`vue-router`\n  - 后端页面路由，例如 `/admin/users/list`\n  - 带 query 的跳转，例如 `/orders?page=2&status=paid`\n  - 常见的 `301/302/307/308` 重定向\n- 这类场景通常没问题，因为 tunnel 会保留：\n  - 请求 path\n  - 原始 query string\n  - 常规请求头与响应头\n  - HTTP 状态码\n  - `x-forwarded-host`\n- 真正容易出问题的通常不是“路由复杂”，而是“应用把绝对地址写死”：\n  - 例如后端返回 `Location: http://127.0.0.1:8080/login`\n  - 或前端代码里写死 `http://内网IP:端口/...`\n  - 或登录回调地址、Cookie domain、绝对资源地址强依赖固定 host\n- 推荐应用侧尽量使用相对路径，或者正确读取反向代理后的 host/proto 信息生成跳转地址\n- 如果系统强依赖 WebSocket、HMR dev server、长连接 upgrade，当前版本需要单独验证，不能默认保证完全可用\n\n固定的 `curl` 用例：\n\n```bash\n# 1) GET 根路径\ncurl -i https://go-relay-test.cece.com/t/p8080-03ce6ff5\n\n# 2) GET 带 path + query\ncurl -i 'https://go-relay-test.cece.com/t/p8080-03ce6ff5/api/echo?name=bubbolink&mode=query'\n\n# 3) POST JSON 到带 path + query 的入口\ncurl -i \\\n  -X POST \\\n  'https://go-relay-test.cece.com/t/p8080-03ce6ff5/api/echo?source=curl&lang=zh' \\\n  -H 'content-type: application/json' \\\n  -d '{\"hello\":\"world\",\"from\":\"bubbolink\"}'\n```\n\n看 agent 日志：\n\n```bash\ntail -f ~/.bubbolink/logs/tunnel-8080.log\n```\n\n关闭：\n\n```bash\nbubbolink tunnel off 8080\n```\n\n`bubbolink reset` 的行为：\n\n| 命令                             | 作用对象                                            |\n| -------------------------------- | --------------------------------------------------- |\n| `bubbolink reset`                 | 重置 openclaw 凭证（并额外清空 hermes 凭证，兜底）  |\n| `bubbolink reset --runtime hermes`| **只**清 hermes 凭证，openclaw 绑定不动             |\n\nreset 做的事：\n\n- 调 relay `DELETE /v1/gateways/{id}/binding` 清服务端绑定（配对码 / 会话 / 联系人）\n- 卸载目标 runtime 的后台服务（launchd / systemd / Task Scheduler）\n- 停掉目标 runtime 正在跑的桥接进程\n- 清 `~/.bubbolink/config.json` 本地凭证：\n  - openclaw → 重新生成 `relayGatewayId` + 轮换 token，并连带清空 hermes 凭证\n  - hermes → 只删 `hermesRelayGatewayId` / `hermesRelayClientToken` / `hermesRelayGatewayToken`\n\nreset 完成后即可对同一 runtime 发起新的 `bubbolink pair`。\n\ncode 接受 `1234`、`123456` 或 `XXXX-XXXX`（参考 `normalizeProvidedCode`）。\n\n---\n\n## 8. 服务管理\n\n| 平台               | 机制              | 单元文件                                                    |\n| ------------------ | ----------------- | ----------------------------------------------------------- |\n| macOS              | launchd           | `~/Library/LaunchAgents/com.bubbolink.bridge[-hermes].plist` |\n| Linux (systemd)    | systemd user unit | `~/.config/systemd/user/bubbolink-bridge[-hermes].service`   |\n| Linux (无 systemd) | —                 | 只能手动 `bubbolink bridge`，service install 会报友好错误    |\n| Windows            | Task Scheduler    | task name `Bubbolink Bridge`                                 |\n\nOpenClaw 和 Hermes 两种 runtime 的服务名**不同**（参考 `serviceNames(runtimeKind)`），可以同时装一台机上跑两种：\n\n```bash\nbubbolink service status                         # 默认看 openclaw\nbubbolink service status --runtime hermes        # 看 hermes 服务\nbubbolink service install                        # 装 openclaw bridge（默认）\nbubbolink service install --runtime hermes       # 装 hermes bridge\nbubbolink service uninstall [--runtime hermes]   # 停 + 删\nbubbolink service restart   [--runtime hermes]   # 重启\n```\n\n日志：\n\n```bash\n# OpenClaw 桥接日志\ntail -f ~/.bubbolink/logs/bridge.stdout.log\ntail -f ~/.bubbolink/logs/bridge.stderr.log\n\n# Hermes 桥接日志\ntail -f ~/.bubbolink/logs/bridge-hermes.stdout.log\ntail -f ~/.bubbolink/logs/bridge-hermes.stderr.log\n```\n\n### Claude / Codex（External Agents）\n\nClaude / Codex 走的是独立的 `bubbolink-agent` service 管理实现，命令入口仍然是顶层 `bubbolink`：\n\n| 平台 | 机制 | 单元文件 |\n| ------------------ | ----------------- | ----------------------------------------------------------- |\n| macOS | launchd | `~/Library/LaunchAgents/com.bubbolink.agent.<runtime>.plist` |\n| Linux (systemd) | systemd user unit | `~/.config/systemd/user/bubbolink-agent-<runtime>.service` |\n| Linux (无 systemd) | — | 只能手动 `bubbolink bridge -r <runtime>` |\n| Windows | Task Scheduler | `Bubbolink\\\\Agent-<runtime>` |\n\n常用命令：\n\n```bash\n# 配对后自动装后台服务\nbubbolink pair 1234 -r claude\nbubbolink pair 1234 -r codex\n\n# 查看后台状态\nbubbolink service status -r claude\nbubbolink service status -r codex\n\n# 重装后台服务\nbubbolink service restart -r claude\nbubbolink service restart -r codex\n\n# 只停掉后台服务，但保留本地配对状态\nbubbolink service stop -r claude\nbubbolink service stop -r codex\n\n# `service uninstall` 对 claude/codex 与 `service stop` 等价\nbubbolink service uninstall -r claude\nbubbolink service uninstall -r codex\n\n# 完整卸载：停服务并清掉本地配对状态（~/.bubbolink/ext-<runtime>-last.json）\nbubbolink uninstall -r claude\nbubbolink uninstall -r codex\n\n# 前台调试运行；停止方式就是 Ctrl+C\nbubbolink bridge -r claude\nbubbolink bridge -r codex\n```\n\n说明：\n\n- `bubbolink pair <code> -r claude|codex` 成功后，会自动执行后台服务安装。\n- 对 `claude/codex` 来说，`bubbolink service stop -r <runtime>` 和 `bubbolink service uninstall -r <runtime>` 在当前实现里效果相同，都会卸载对应 service，但不会删除本地配对状态。\n- 如果你想彻底解绑本机上的 Claude / Codex，请使用 `bubbolink uninstall -r <runtime>`，它会在停服务之外再清掉本地状态文件。\n\n---\n\n## 9. 状态与持久化\n\n| 路径                                         | 内容                                                          |\n| -------------------------------------------- | ------------------------------------------------------------- |\n| `~/.openclaw/openclaw.json`                  | OpenClaw gateway 配置（模型、端口、profile、relay 配置片段）  |\n| `~/.bubbolink/config.json`                    | CLI 级别状态（`runtimeKind`、两套 relay 凭证、hermes Python）  |\n| `~/.bubbolink/bridge-launch.sh`               | OpenClaw 桥接的 launchd/systemd 启动脚本                      |\n| `~/.bubbolink/bridge-launch-hermes.sh`        | Hermes 桥接的 launchd/systemd 启动脚本                        |\n| `~/.bubbolink/logs/`                          | 桥接 stdout / stderr 日志                                     |\n| `~/.openclaw/bubbolink/runtime/bridge-*.lock` | 桥接文件锁（按 `relayUrl + gatewayId + gatewayBase` 取 hash） |\n| `~/.openclaw/hermes_bridge/`                 | Hermes 桥接的 session transcript + `runtime_config.json`      |\n| `~/.openclaw/hermes_bridge/models_config.json` | Hermes 桥接的多 provider 配置（openai/anthropic 兼容）       |\n| `~/.hermes/cron/jobs.json`                   | Hermes cron 任务定义（与配对无关，本地持久化）                |\n\n`~/.bubbolink/config.json` 里两套凭证并存：\n\n- **OpenClaw**：`relayGatewayId` / `relayClientToken` / `relayGatewayToken`\n- **Hermes**：`hermesRelayGatewayId` / `hermesRelayClientToken` / `hermesRelayGatewayToken`\n\n`runtimeKind` 字段记录最近一次配对的 runtime。敏感字段（`gateway.auth.token` / `channels.*.appSecret`）在 debug 输出里会被脱敏成 `***`。\n\n---\n\n## 10. 环境变量\n\n| 变量                                                                    | 作用                                                             |\n| ----------------------------------------------------------------------- | ---------------------------------------------------------------- |\n| `OPENCLAW_HOME`                                                         | 覆盖 OpenClaw 主目录（默认 `~/.openclaw`）                        |\n| `HERMES_HOME`                                                           | 覆盖 Hermes 主目录（默认 `~/.hermes`）                            |\n| `BUBBOLINK_RELAY_URL`                                                    | 覆盖 relay 基址（默认 `https://go-relay-test.cece.com`）            |\n| `BUBBOLINK_RELAY_TOKEN`                                                  | Bearer token（配对/绑定端点用）                                   |\n| `OPENCLAW_BUBBOLINK_GATEWAY_BASE_URL`                                    | 覆盖本地 gateway 基址                                             |\n| `OPENCLAW_GATEWAY_PORT` / `OPENCLAW_GATEWAY_HOST`                       | 显式指定 host/port                                                |\n| `BUBBOLINK_RELAY_GATEWAY_ID` / `_CLIENT_TOKEN` / `_GATEWAY_TOKEN`        | 覆盖 openclaw 的 relay 凭证                                       |\n| `BUBBOLINK_HERMES_RELAY_GATEWAY_ID` / `_CLIENT_TOKEN` / `_GATEWAY_TOKEN` | 覆盖 hermes 的 relay 凭证                                         |\n| `HERMES_BRIDGE_MODEL`                                                   | Hermes 默认模型覆盖                                               |\n| `HERMES_BRIDGE_PLATFORM`                                                | Hermes 平台 hint（默认 `bubbolink`）                               |\n| `HERMES_BRIDGE_SKIP_MEMORY=1`                                           | 关 Hermes 持久化 memory                                           |\n| `HERMES_BRIDGE_COMMAND`                                                 | Python 库不可用时的 fallback 命令                                 |\n| `HERMES_BRIDGE_API_MODEL`                                               | 发送到 Hermes API server 的默认模型名                             |\n\n---\n\n## 11. Hermes 多 provider 与流式\n\n`hermes_bridge` 默认流式输出。为了降低 HTTP 往返开销，delta 会按 **50ms 窗口**做合并再 POST 回 relay（`main.py` 中的 `FLUSH_INTERVAL_S`，可调）。\n\n额外的模型提供商在 `~/.openclaw/hermes_bridge/models_config.json` 里声明：\n\n```json\n{\n  \"models\": {\n    \"mode\": \"merge\",\n    \"providers\": {\n      \"deepseek32\": {\n        \"baseUrl\": \"https://api.example.com/v1\",\n        \"apiKey\": \"sk-...\",\n        \"api\": \"openai-completions\",\n        \"models\": [{ \"id\": \"deepseek-v3.2\", \"name\": \"deepseek-v3.2\" }]\n      },\n      \"minimax\": {\n        \"baseUrl\": \"https://api.minimaxi.com/anthropic\",\n        \"apiKey\": \"sk-...\",\n        \"api\": \"anthropic-messages\",\n        \"models\": [{ \"id\": \"MiniMax-M2.7\", \"name\": \"MiniMax M2.7\" }]\n      }\n    }\n  }\n}\n```\n\n- `api: \"openai-completions\"` → `/chat/completions` + `stream: true`\n- `api: \"anthropic-messages\"` → `/messages` + SSE `content_block_delta`\n\n模型选择用 `<provider>/<model-id>`（例 `minimax/MiniMax-M2.7`）。桥接先匹配配置的 provider，没匹配到才回退到默认 Hermes API server。\n\n---\n\n## 12. 已知陷阱\n\n1. **relay_client_token 可能在多设备共享** — 删除绑定前必须走 `canUseClientTokenDeleteFallback` 检查，避免误删别人的 binding\n2. **Session key 格式前后不一致** — App 侧装饰（`agent:xxx:relay-gw:GW-A::...`），relay 事件是裸 key。Flutter 用 `_sessionKeyMatchesForPreview` 宽松匹配\n3. **Windows 的 PowerShell 编码** — 服务注册时通过 Base64 传命令行，避免 CJK 路径在 cmd.exe 下被 mojibake\n4. **Hermes / OpenClaw 凭证是两套** — `AppRuntimeKind` 决定写哪一组，不能互相借用；`bubbolink reset` 不传 `--runtime` 默认只重置 openclaw\n5. **Hermes cron 任务与配对无关** — `~/.hermes/cron/jobs.json` 是本地文件。一次性任务（`30m` / `2h` / 具体时间戳）执行后会**自动删除**，重新配对看不到是正常现象\n\n---\n\n## 13. 测试\n\n需要 Node.js ≥ 22。\n\n```bash\nnpm test\nnode --test test/cli.test.mjs\n```\n\n21 个测试，覆盖：CLI basics / 平台路径 / OpenClaw home 解析 / XML & systemd 转义 / PID 检测 / 文件锁 / PowerShell Base64 / 服务状态 / Node 版本保护。\n\nCI：\n\n- GitLab CI (`.gitlab-ci.yml`)：Node 22 on Alpine\n- GitHub Actions (`.github/workflows/test.yml`)：Ubuntu / macOS / Windows × Node 22\n\n| 平台                                | 状态                         |\n| ----------------------------------- | ---------------------------- |\n| macOS (launchd)                     | 完全支持                     |\n| Linux + systemd                     | 完全支持                     |\n| Linux 无 systemd（Alpine / OpenRC） | 只支持手动 `bubbolink bridge` |\n| Windows (Task Scheduler)            | 支持，CI 覆盖                |\n","readmeFilename":"README.md"}