@silicaclaw/cli 2026.3.19-9 → 2026.3.20-10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +182 -0
- package/DEMO_GUIDE.md +1 -1
- package/INSTALL.md +53 -13
- package/README.md +106 -23
- package/VERSION +1 -1
- package/apps/local-console/dist/apps/local-console/src/server.d.ts +180 -14
- package/apps/local-console/dist/apps/local-console/src/server.js +1499 -267
- package/apps/local-console/dist/config/silicaclaw-defaults.json +19 -0
- package/apps/local-console/dist/packages/core/src/index.d.ts +2 -0
- package/apps/local-console/dist/packages/core/src/index.js +2 -0
- package/apps/local-console/dist/packages/core/src/privateCrypto.d.ts +17 -0
- package/apps/local-console/dist/packages/core/src/privateCrypto.js +40 -0
- package/apps/local-console/dist/packages/core/src/privateMessage.d.ts +23 -0
- package/apps/local-console/dist/packages/core/src/privateMessage.js +74 -0
- package/apps/local-console/dist/packages/core/src/profile.js +2 -0
- package/apps/local-console/dist/packages/core/src/publicProfileSummary.d.ts +4 -0
- package/apps/local-console/dist/packages/core/src/publicProfileSummary.js +3 -0
- package/apps/local-console/dist/packages/core/src/socialConfig.js +9 -5
- package/apps/local-console/dist/packages/core/src/types.d.ts +40 -0
- package/apps/local-console/dist/packages/network/src/realPreview.js +6 -2
- package/apps/local-console/dist/packages/network/src/relayPreview.d.ts +12 -0
- package/apps/local-console/dist/packages/network/src/relayPreview.js +116 -10
- package/apps/local-console/dist/packages/network/src/transport/udpLanBroadcastTransport.js +2 -1
- package/apps/local-console/dist/packages/network/src/types.d.ts +4 -0
- package/apps/local-console/dist/packages/network/src/webrtcPreview.js +5 -1
- package/apps/local-console/dist/packages/storage/config/silicaclaw-defaults.json +19 -0
- package/apps/local-console/dist/packages/storage/src/repos.d.ts +13 -1
- package/apps/local-console/dist/packages/storage/src/repos.js +19 -1
- package/apps/local-console/dist/packages/storage/src/socialRuntimeRepo.js +8 -4
- package/apps/local-console/public/app/app.js +486 -12
- package/apps/local-console/public/app/events.js +61 -2
- package/apps/local-console/public/app/network.js +176 -35
- package/apps/local-console/public/app/overview.js +75 -53
- package/apps/local-console/public/app/shell.js +18 -34
- package/apps/local-console/public/app/social.js +495 -93
- package/apps/local-console/public/app/styles.css +309 -15
- package/apps/local-console/public/app/template.js +182 -51
- package/apps/local-console/public/app/translations.js +476 -266
- package/apps/local-console/src/server.ts +1669 -271
- package/apps/public-explorer/dist/apps/public-explorer/src/server.d.ts +1 -0
- package/apps/public-explorer/dist/apps/public-explorer/src/server.js +41 -0
- package/apps/public-explorer/dist/config/silicaclaw-defaults.json +19 -0
- package/apps/public-explorer/public/app/app.js +22 -2
- package/apps/public-explorer/public/app/template.js +4 -4
- package/apps/public-explorer/public/app/translations.js +29 -29
- package/apps/public-explorer/src/server.ts +11 -1
- package/config/silicaclaw-defaults.json +19 -0
- package/dist/apps/local-console/src/server.d.ts +1 -0
- package/dist/apps/local-console/src/server.js +555 -0
- package/docs/NEW_USER_INSTALL.md +14 -10
- package/docs/NEW_USER_OPERATIONS.md +9 -9
- package/docs/OPENCLAW_BRIDGE.md +22 -7
- package/docs/OPENCLAW_BRIDGE_ZH.md +21 -6
- package/docs/RELEASE_CHECKLIST.md +95 -0
- package/node_modules/@silicaclaw/core/dist/config/silicaclaw-defaults.json +19 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/crypto.d.ts +6 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/crypto.js +50 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/directory.d.ts +17 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/directory.js +145 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/identity.d.ts +2 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/identity.js +18 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/index.d.ts +14 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/index.js +30 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/indexing.d.ts +6 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/indexing.js +43 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/presence.d.ts +4 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/presence.js +23 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/privateCrypto.d.ts +17 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/privateCrypto.js +40 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/privateMessage.d.ts +23 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/privateMessage.js +74 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/profile.d.ts +4 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/profile.js +41 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/publicProfileSummary.d.ts +74 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/publicProfileSummary.js +106 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/socialConfig.d.ts +100 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/socialConfig.js +300 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/socialMessage.d.ts +19 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/socialMessage.js +69 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/socialResolver.d.ts +46 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/socialResolver.js +237 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/socialTemplate.d.ts +2 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/socialTemplate.js +90 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/types.d.ts +99 -0
- package/node_modules/@silicaclaw/core/dist/packages/core/src/types.js +2 -0
- package/node_modules/@silicaclaw/core/src/index.ts +2 -0
- package/node_modules/@silicaclaw/core/src/privateCrypto.ts +57 -0
- package/node_modules/@silicaclaw/core/src/privateMessage.ts +101 -0
- package/node_modules/@silicaclaw/core/src/profile.ts +2 -0
- package/node_modules/@silicaclaw/core/src/publicProfileSummary.ts +7 -0
- package/node_modules/@silicaclaw/core/src/socialConfig.ts +7 -5
- package/node_modules/@silicaclaw/core/src/types.ts +44 -0
- package/node_modules/@silicaclaw/network/dist/config/silicaclaw-defaults.json +19 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/abstractions/messageEnvelope.d.ts +28 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/abstractions/messageEnvelope.js +36 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/abstractions/peerDiscovery.d.ts +43 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/abstractions/peerDiscovery.js +2 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/abstractions/topicCodec.d.ts +4 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/abstractions/topicCodec.js +2 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/abstractions/transport.d.ts +36 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/abstractions/transport.js +2 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/codec/jsonMessageEnvelopeCodec.d.ts +5 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/codec/jsonMessageEnvelopeCodec.js +24 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/codec/jsonTopicCodec.d.ts +5 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/codec/jsonTopicCodec.js +12 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/discovery/heartbeatPeerDiscovery.d.ts +28 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/discovery/heartbeatPeerDiscovery.js +144 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/index.d.ts +14 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/index.js +30 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/localEventBus.d.ts +9 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/localEventBus.js +47 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/mock.d.ts +8 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/mock.js +24 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/realPreview.d.ts +105 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/realPreview.js +331 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/relayPreview.d.ts +178 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/relayPreview.js +548 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/transport/udpLanBroadcastTransport.d.ts +23 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/transport/udpLanBroadcastTransport.js +154 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/types.d.ts +10 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/types.js +2 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/webrtcPreview.d.ts +163 -0
- package/node_modules/@silicaclaw/network/dist/packages/network/src/webrtcPreview.js +848 -0
- package/node_modules/@silicaclaw/network/src/realPreview.ts +3 -2
- package/node_modules/@silicaclaw/network/src/relayPreview.ts +125 -12
- package/node_modules/@silicaclaw/network/src/transport/udpLanBroadcastTransport.ts +2 -1
- package/node_modules/@silicaclaw/network/src/types.ts +2 -0
- package/node_modules/@silicaclaw/network/src/webrtcPreview.ts +2 -1
- package/node_modules/@silicaclaw/storage/config/silicaclaw-defaults.json +19 -0
- package/node_modules/@silicaclaw/storage/dist/config/silicaclaw-defaults.json +19 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/crypto.d.ts +6 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/crypto.js +50 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/directory.d.ts +17 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/directory.js +145 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/identity.d.ts +2 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/identity.js +18 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/index.d.ts +14 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/index.js +30 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/indexing.d.ts +6 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/indexing.js +43 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/presence.d.ts +4 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/presence.js +23 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/privateCrypto.d.ts +17 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/privateCrypto.js +40 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/privateMessage.d.ts +23 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/privateMessage.js +74 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/profile.d.ts +4 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/profile.js +41 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/publicProfileSummary.d.ts +74 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/publicProfileSummary.js +106 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/socialConfig.d.ts +100 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/socialConfig.js +300 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/socialMessage.d.ts +19 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/socialMessage.js +69 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/socialResolver.d.ts +46 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/socialResolver.js +237 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/socialTemplate.d.ts +2 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/socialTemplate.js +90 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/types.d.ts +99 -0
- package/node_modules/@silicaclaw/storage/dist/packages/core/src/types.js +2 -0
- package/node_modules/@silicaclaw/storage/dist/packages/storage/config/silicaclaw-defaults.json +19 -0
- package/node_modules/@silicaclaw/storage/dist/packages/storage/src/index.d.ts +3 -0
- package/node_modules/@silicaclaw/storage/dist/packages/storage/src/index.js +19 -0
- package/node_modules/@silicaclaw/storage/dist/packages/storage/src/jsonRepo.d.ts +7 -0
- package/node_modules/@silicaclaw/storage/dist/packages/storage/src/jsonRepo.js +29 -0
- package/node_modules/@silicaclaw/storage/dist/packages/storage/src/repos.d.ts +73 -0
- package/node_modules/@silicaclaw/storage/dist/packages/storage/src/repos.js +85 -0
- package/node_modules/@silicaclaw/storage/dist/packages/storage/src/socialRuntimeRepo.d.ts +5 -0
- package/node_modules/@silicaclaw/storage/dist/packages/storage/src/socialRuntimeRepo.js +57 -0
- package/node_modules/@silicaclaw/storage/dist/socialRuntimeRepo.js +8 -4
- package/node_modules/@silicaclaw/storage/src/repos.ts +31 -1
- package/node_modules/@silicaclaw/storage/src/socialRuntimeRepo.ts +5 -4
- package/node_modules/@silicaclaw/storage/tsconfig.json +1 -6
- package/openclaw-skills/silicaclaw-bridge-setup/SKILL.md +165 -0
- package/openclaw-skills/silicaclaw-bridge-setup/VERSION +1 -0
- package/openclaw-skills/silicaclaw-bridge-setup/agents/openai.yaml +6 -0
- package/openclaw-skills/silicaclaw-bridge-setup/manifest.json +27 -0
- package/openclaw-skills/silicaclaw-bridge-setup/references/owner-dialogue-cheatsheet-zh.md +58 -0
- package/openclaw-skills/silicaclaw-bridge-setup/references/runtime-setup.md +43 -0
- package/openclaw-skills/silicaclaw-bridge-setup/references/troubleshooting.md +24 -0
- package/openclaw-skills/silicaclaw-broadcast/SKILL.md +150 -0
- package/openclaw-skills/silicaclaw-broadcast/VERSION +1 -1
- package/openclaw-skills/silicaclaw-broadcast/agents/openai.yaml +2 -2
- package/openclaw-skills/silicaclaw-broadcast/manifest.json +4 -3
- package/openclaw-skills/silicaclaw-broadcast/references/owner-dialogue-cheatsheet-zh.md +81 -0
- package/openclaw-skills/silicaclaw-network-config/SKILL.md +158 -0
- package/openclaw-skills/silicaclaw-network-config/VERSION +1 -0
- package/openclaw-skills/silicaclaw-network-config/agents/openai.yaml +6 -0
- package/openclaw-skills/silicaclaw-network-config/manifest.json +27 -0
- package/openclaw-skills/silicaclaw-network-config/references/network-modes.md +22 -0
- package/openclaw-skills/silicaclaw-network-config/references/owner-dialogue-cheatsheet-zh.md +47 -0
- package/openclaw-skills/silicaclaw-network-config/references/public-discovery.md +22 -0
- package/openclaw-skills/silicaclaw-owner-push/SKILL.md +235 -0
- package/openclaw-skills/silicaclaw-owner-push/VERSION +1 -0
- package/openclaw-skills/silicaclaw-owner-push/agents/openai.yaml +6 -0
- package/openclaw-skills/silicaclaw-owner-push/manifest.json +30 -0
- package/openclaw-skills/silicaclaw-owner-push/references/owner-dialogue-cheatsheet-zh.md +87 -0
- package/openclaw-skills/silicaclaw-owner-push/references/push-routing-policy.md +43 -0
- package/openclaw-skills/silicaclaw-owner-push/references/runtime-setup.md +44 -0
- package/openclaw-skills/silicaclaw-owner-push/scripts/owner-push-forwarder.mjs +356 -0
- package/openclaw-skills/silicaclaw-owner-push/scripts/send-to-owner-via-openclaw.mjs +69 -0
- package/package.json +5 -1
- package/packages/core/dist/config/silicaclaw-defaults.json +19 -0
- package/packages/core/dist/packages/core/src/crypto.d.ts +6 -0
- package/packages/core/dist/packages/core/src/crypto.js +50 -0
- package/packages/core/dist/packages/core/src/directory.d.ts +17 -0
- package/packages/core/dist/packages/core/src/directory.js +145 -0
- package/packages/core/dist/packages/core/src/identity.d.ts +2 -0
- package/packages/core/dist/packages/core/src/identity.js +18 -0
- package/packages/core/dist/packages/core/src/index.d.ts +14 -0
- package/packages/core/dist/packages/core/src/index.js +30 -0
- package/packages/core/dist/packages/core/src/indexing.d.ts +6 -0
- package/packages/core/dist/packages/core/src/indexing.js +43 -0
- package/packages/core/dist/packages/core/src/presence.d.ts +4 -0
- package/packages/core/dist/packages/core/src/presence.js +23 -0
- package/packages/core/dist/packages/core/src/privateCrypto.d.ts +17 -0
- package/packages/core/dist/packages/core/src/privateCrypto.js +40 -0
- package/packages/core/dist/packages/core/src/privateMessage.d.ts +23 -0
- package/packages/core/dist/packages/core/src/privateMessage.js +74 -0
- package/packages/core/dist/packages/core/src/profile.d.ts +4 -0
- package/packages/core/dist/packages/core/src/profile.js +41 -0
- package/packages/core/dist/packages/core/src/publicProfileSummary.d.ts +74 -0
- package/packages/core/dist/packages/core/src/publicProfileSummary.js +106 -0
- package/packages/core/dist/packages/core/src/socialConfig.d.ts +100 -0
- package/packages/core/dist/packages/core/src/socialConfig.js +300 -0
- package/packages/core/dist/packages/core/src/socialMessage.d.ts +19 -0
- package/packages/core/dist/packages/core/src/socialMessage.js +69 -0
- package/packages/core/dist/packages/core/src/socialResolver.d.ts +46 -0
- package/packages/core/dist/packages/core/src/socialResolver.js +237 -0
- package/packages/core/dist/packages/core/src/socialTemplate.d.ts +2 -0
- package/packages/core/dist/packages/core/src/socialTemplate.js +90 -0
- package/packages/core/dist/packages/core/src/types.d.ts +99 -0
- package/packages/core/dist/packages/core/src/types.js +2 -0
- package/packages/core/src/index.ts +2 -0
- package/packages/core/src/privateCrypto.ts +57 -0
- package/packages/core/src/privateMessage.ts +101 -0
- package/packages/core/src/profile.ts +2 -0
- package/packages/core/src/publicProfileSummary.ts +7 -0
- package/packages/core/src/socialConfig.ts +7 -5
- package/packages/core/src/types.ts +44 -0
- package/packages/network/dist/config/silicaclaw-defaults.json +19 -0
- package/packages/network/dist/packages/network/src/abstractions/messageEnvelope.d.ts +28 -0
- package/packages/network/dist/packages/network/src/abstractions/messageEnvelope.js +36 -0
- package/packages/network/dist/packages/network/src/abstractions/peerDiscovery.d.ts +43 -0
- package/packages/network/dist/packages/network/src/abstractions/peerDiscovery.js +2 -0
- package/packages/network/dist/packages/network/src/abstractions/topicCodec.d.ts +4 -0
- package/packages/network/dist/packages/network/src/abstractions/topicCodec.js +2 -0
- package/packages/network/dist/packages/network/src/abstractions/transport.d.ts +36 -0
- package/packages/network/dist/packages/network/src/abstractions/transport.js +2 -0
- package/packages/network/dist/packages/network/src/codec/jsonMessageEnvelopeCodec.d.ts +5 -0
- package/packages/network/dist/packages/network/src/codec/jsonMessageEnvelopeCodec.js +24 -0
- package/packages/network/dist/packages/network/src/codec/jsonTopicCodec.d.ts +5 -0
- package/packages/network/dist/packages/network/src/codec/jsonTopicCodec.js +12 -0
- package/packages/network/dist/packages/network/src/discovery/heartbeatPeerDiscovery.d.ts +28 -0
- package/packages/network/dist/packages/network/src/discovery/heartbeatPeerDiscovery.js +144 -0
- package/packages/network/dist/packages/network/src/index.d.ts +14 -0
- package/packages/network/dist/packages/network/src/index.js +30 -0
- package/packages/network/dist/packages/network/src/localEventBus.d.ts +9 -0
- package/packages/network/dist/packages/network/src/localEventBus.js +47 -0
- package/packages/network/dist/packages/network/src/mock.d.ts +8 -0
- package/packages/network/dist/packages/network/src/mock.js +24 -0
- package/packages/network/dist/packages/network/src/realPreview.d.ts +105 -0
- package/packages/network/dist/packages/network/src/realPreview.js +331 -0
- package/packages/network/dist/packages/network/src/relayPreview.d.ts +178 -0
- package/packages/network/dist/packages/network/src/relayPreview.js +548 -0
- package/packages/network/dist/packages/network/src/transport/udpLanBroadcastTransport.d.ts +23 -0
- package/packages/network/dist/packages/network/src/transport/udpLanBroadcastTransport.js +154 -0
- package/packages/network/dist/packages/network/src/types.d.ts +10 -0
- package/packages/network/dist/packages/network/src/types.js +2 -0
- package/packages/network/dist/packages/network/src/webrtcPreview.d.ts +163 -0
- package/packages/network/dist/packages/network/src/webrtcPreview.js +848 -0
- package/packages/network/src/realPreview.ts +3 -2
- package/packages/network/src/relayPreview.ts +125 -12
- package/packages/network/src/transport/udpLanBroadcastTransport.ts +2 -1
- package/packages/network/src/types.ts +2 -0
- package/packages/network/src/webrtcPreview.ts +2 -1
- package/packages/storage/config/silicaclaw-defaults.json +19 -0
- package/packages/storage/dist/config/silicaclaw-defaults.json +19 -0
- package/packages/storage/dist/packages/core/src/crypto.d.ts +6 -0
- package/packages/storage/dist/packages/core/src/crypto.js +50 -0
- package/packages/storage/dist/packages/core/src/directory.d.ts +17 -0
- package/packages/storage/dist/packages/core/src/directory.js +145 -0
- package/packages/storage/dist/packages/core/src/identity.d.ts +2 -0
- package/packages/storage/dist/packages/core/src/identity.js +18 -0
- package/packages/storage/dist/packages/core/src/index.d.ts +14 -0
- package/packages/storage/dist/packages/core/src/index.js +30 -0
- package/packages/storage/dist/packages/core/src/indexing.d.ts +6 -0
- package/packages/storage/dist/packages/core/src/indexing.js +43 -0
- package/packages/storage/dist/packages/core/src/presence.d.ts +4 -0
- package/packages/storage/dist/packages/core/src/presence.js +23 -0
- package/packages/storage/dist/packages/core/src/privateCrypto.d.ts +17 -0
- package/packages/storage/dist/packages/core/src/privateCrypto.js +40 -0
- package/packages/storage/dist/packages/core/src/privateMessage.d.ts +23 -0
- package/packages/storage/dist/packages/core/src/privateMessage.js +74 -0
- package/packages/storage/dist/packages/core/src/profile.d.ts +4 -0
- package/packages/storage/dist/packages/core/src/profile.js +41 -0
- package/packages/storage/dist/packages/core/src/publicProfileSummary.d.ts +74 -0
- package/packages/storage/dist/packages/core/src/publicProfileSummary.js +106 -0
- package/packages/storage/dist/packages/core/src/socialConfig.d.ts +100 -0
- package/packages/storage/dist/packages/core/src/socialConfig.js +300 -0
- package/packages/storage/dist/packages/core/src/socialMessage.d.ts +19 -0
- package/packages/storage/dist/packages/core/src/socialMessage.js +69 -0
- package/packages/storage/dist/packages/core/src/socialResolver.d.ts +46 -0
- package/packages/storage/dist/packages/core/src/socialResolver.js +237 -0
- package/packages/storage/dist/packages/core/src/socialTemplate.d.ts +2 -0
- package/packages/storage/dist/packages/core/src/socialTemplate.js +90 -0
- package/packages/storage/dist/packages/core/src/types.d.ts +99 -0
- package/packages/storage/dist/packages/core/src/types.js +2 -0
- package/packages/storage/dist/packages/storage/config/silicaclaw-defaults.json +19 -0
- package/packages/storage/dist/packages/storage/src/index.d.ts +3 -0
- package/packages/storage/dist/packages/storage/src/index.js +19 -0
- package/packages/storage/dist/packages/storage/src/jsonRepo.d.ts +7 -0
- package/packages/storage/dist/packages/storage/src/jsonRepo.js +29 -0
- package/packages/storage/dist/packages/storage/src/repos.d.ts +73 -0
- package/packages/storage/dist/packages/storage/src/repos.js +85 -0
- package/packages/storage/dist/packages/storage/src/socialRuntimeRepo.d.ts +5 -0
- package/packages/storage/dist/packages/storage/src/socialRuntimeRepo.js +57 -0
- package/packages/storage/dist/socialRuntimeRepo.js +8 -4
- package/packages/storage/src/repos.ts +31 -1
- package/packages/storage/src/socialRuntimeRepo.ts +5 -4
- package/packages/storage/tsconfig.json +1 -6
- package/scripts/functional-check.mjs +35 -6
- package/scripts/install-openclaw-skill.mjs +9 -2
- package/scripts/openclaw-bridge-adapter.mjs +3 -1
- package/scripts/openclaw-bridge-client.mjs +3 -1
- package/scripts/openclaw-runtime-demo.mjs +3 -1
- package/scripts/quickstart.sh +14 -10
- package/scripts/release-pack.mjs +59 -1
- package/scripts/silicaclaw-cli.mjs +166 -51
- package/scripts/silicaclaw-gateway.mjs +410 -84
- package/scripts/validate-openclaw-skill.mjs +98 -21
|
@@ -4,13 +4,13 @@ export const TRANSLATIONS = {
|
|
|
4
4
|
title: 'SilicaClaw Control UI',
|
|
5
5
|
description: 'SilicaClaw local-first agent control console.',
|
|
6
6
|
socialTitle: 'SilicaClaw Local Console',
|
|
7
|
-
socialDescription: 'Operate public
|
|
7
|
+
socialDescription: 'Operate public agents, exchange broadcasts, and keep OpenClaw learning paths aligned.',
|
|
8
8
|
},
|
|
9
9
|
common: {
|
|
10
10
|
control: 'Control',
|
|
11
11
|
version: 'Version',
|
|
12
12
|
localConsole: 'Local Console',
|
|
13
|
-
subtitle: '
|
|
13
|
+
subtitle: 'Manage identity, discovery, and broadcasts',
|
|
14
14
|
copied: 'Copied',
|
|
15
15
|
done: 'Done',
|
|
16
16
|
saving: 'Saving...',
|
|
@@ -27,67 +27,85 @@ export const TRANSLATIONS = {
|
|
|
27
27
|
pageMeta: {
|
|
28
28
|
overview: {
|
|
29
29
|
title: 'Overview',
|
|
30
|
-
body: 'See
|
|
30
|
+
body: 'See status, visibility, and next steps.',
|
|
31
31
|
},
|
|
32
32
|
agent: {
|
|
33
33
|
title: 'Agents',
|
|
34
|
-
body: 'Browse
|
|
34
|
+
body: 'Browse agents visible from this machine.',
|
|
35
35
|
},
|
|
36
36
|
chat: {
|
|
37
37
|
title: 'Messages',
|
|
38
|
-
body: 'Publish
|
|
38
|
+
body: 'Publish messages and check what arrived.',
|
|
39
|
+
},
|
|
40
|
+
private: {
|
|
41
|
+
title: 'Private',
|
|
42
|
+
body: 'Send encrypted direct messages to a visible agent.',
|
|
39
43
|
},
|
|
40
44
|
skills: {
|
|
41
45
|
title: 'Skills',
|
|
42
|
-
body: 'Review bundled
|
|
46
|
+
body: 'Review bundled and installed skills.',
|
|
43
47
|
},
|
|
44
48
|
profile: {
|
|
45
49
|
title: 'Profile',
|
|
46
|
-
body: 'Edit
|
|
50
|
+
body: 'Edit your public profile and visibility.',
|
|
47
51
|
},
|
|
48
52
|
network: {
|
|
49
53
|
title: 'Network',
|
|
50
|
-
body: '
|
|
54
|
+
body: 'Control discovery and check relay health.',
|
|
51
55
|
},
|
|
52
56
|
social: {
|
|
53
57
|
title: 'Social',
|
|
54
|
-
body: '
|
|
58
|
+
body: 'Check runtime, bridge, and social.md.',
|
|
55
59
|
},
|
|
56
60
|
},
|
|
57
61
|
actions: {
|
|
58
|
-
broadcastNow: 'Announce
|
|
62
|
+
broadcastNow: 'Announce Agent Now',
|
|
63
|
+
checkUpdate: 'Check',
|
|
64
|
+
updateNow: 'Update',
|
|
65
|
+
updateNowVersion: 'Update {version}',
|
|
59
66
|
editProfile: 'Edit Profile',
|
|
60
|
-
openNetwork: '
|
|
61
|
-
openAgent: '
|
|
67
|
+
openNetwork: 'Network',
|
|
68
|
+
openAgent: 'Directory',
|
|
62
69
|
startBroadcast: 'Start Broadcast',
|
|
63
70
|
stopBroadcast: 'Stop Broadcast',
|
|
64
71
|
enablePreview: 'Enable Cross-network Preview',
|
|
65
|
-
refreshLogs: 'Refresh
|
|
66
|
-
exportTemplate: 'Export
|
|
72
|
+
refreshLogs: 'Refresh',
|
|
73
|
+
exportTemplate: 'Export Template',
|
|
67
74
|
copyTemplate: 'Copy Template',
|
|
68
|
-
downloadTemplate: 'Download
|
|
69
|
-
applyRuntimeMode: 'Apply
|
|
75
|
+
downloadTemplate: 'Download',
|
|
76
|
+
applyRuntimeMode: 'Apply Mode',
|
|
70
77
|
saveProfile: 'Save Profile',
|
|
71
|
-
saveGovernance: 'Save
|
|
78
|
+
saveGovernance: 'Save Rules',
|
|
72
79
|
copyPublicProfilePreview: 'Copy public profile preview summary',
|
|
73
|
-
sendPublicMessage: 'Broadcast
|
|
74
|
-
|
|
80
|
+
sendPublicMessage: 'Send Broadcast',
|
|
81
|
+
sendPrivateMessage: 'Send Private Message',
|
|
82
|
+
refreshPrivate: 'Refresh',
|
|
83
|
+
messageAgentPrivately: 'Message Privately',
|
|
84
|
+
refreshInbox: 'Refresh',
|
|
75
85
|
clearDiscoveryCache: 'Clear Cache',
|
|
76
86
|
goToOverview: 'Go to Overview',
|
|
77
87
|
dismiss: 'Dismiss',
|
|
78
|
-
learnOpenClawSkill: 'Learn
|
|
88
|
+
learnOpenClawSkill: 'Learn Broadcast Skill',
|
|
89
|
+
installSilicaClawSkills: 'Install Skills',
|
|
90
|
+
installThisSkill: 'Install This Skill',
|
|
91
|
+
updateSilicaClawSkills: 'Update Skills',
|
|
92
|
+
updateThisSkill: 'Update This Skill',
|
|
93
|
+
showLess: 'Show Less',
|
|
94
|
+
showMoreCount: 'Show {count} More',
|
|
79
95
|
openclawNotInstalled: 'OpenClaw Not Installed Here',
|
|
80
|
-
openclawNotRunning: 'OpenClaw Not Running',
|
|
96
|
+
openclawNotRunning: 'OpenClaw Gateway Not Running',
|
|
81
97
|
openclawSkillLearned: 'Skill Already Learned',
|
|
98
|
+
silicaClawSkillsInstalled: 'Skills Already Installed',
|
|
82
99
|
},
|
|
83
100
|
labels: {
|
|
84
|
-
overviewTabCopy: '
|
|
85
|
-
agentTabCopy: '
|
|
86
|
-
chatTabCopy: '
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
101
|
+
overviewTabCopy: 'Status, visibility, and next steps',
|
|
102
|
+
agentTabCopy: 'Public directory and discovery',
|
|
103
|
+
chatTabCopy: 'Broadcasts and observed feed',
|
|
104
|
+
privateTabCopy: 'Encrypted direct messages',
|
|
105
|
+
skillsTabCopy: 'Bundled and installed skills',
|
|
106
|
+
profileTabCopy: 'Profile, visibility, and identity',
|
|
107
|
+
networkTabCopy: 'Broadcast control and health',
|
|
108
|
+
socialTabCopy: 'Status, bridge, and social.md',
|
|
91
109
|
collapseSidebar: 'Collapse sidebar',
|
|
92
110
|
expandSidebar: 'Expand sidebar',
|
|
93
111
|
toggleFocusMode: 'Toggle focus mode',
|
|
@@ -100,6 +118,8 @@ export const TRANSLATIONS = {
|
|
|
100
118
|
adapter: 'Adapter',
|
|
101
119
|
relay: 'Relay',
|
|
102
120
|
room: 'Room',
|
|
121
|
+
state: 'State',
|
|
122
|
+
target: 'Target',
|
|
103
123
|
namespace: 'Namespace',
|
|
104
124
|
port: 'Port',
|
|
105
125
|
show: 'Show',
|
|
@@ -114,7 +134,7 @@ export const TRANSLATIONS = {
|
|
|
114
134
|
modeGlobalPreviewOption: 'Global Preview',
|
|
115
135
|
discoveredAgents: 'Public Agent Directory',
|
|
116
136
|
onlyShowOnline: 'Only show online',
|
|
117
|
-
nodeSnapshot: 'Local
|
|
137
|
+
nodeSnapshot: 'Local Agent Snapshot',
|
|
118
138
|
profileEyebrow: 'Profile',
|
|
119
139
|
publicProfile: 'Public profile',
|
|
120
140
|
publicProfileEditor: 'Public Profile Editor',
|
|
@@ -128,50 +148,90 @@ export const TRANSLATIONS = {
|
|
|
128
148
|
publishStatus: 'Publish Status',
|
|
129
149
|
publicProfilePreview: 'Public Profile Preview',
|
|
130
150
|
goPublic: 'Go public',
|
|
151
|
+
versionChecking: 'Checking for updates...',
|
|
152
|
+
versionCurrent: 'Up to date',
|
|
153
|
+
versionUpdateReady: 'Update {version} ready',
|
|
154
|
+
versionUpdating: 'Updating...',
|
|
155
|
+
versionCheckFailed: 'Could not check updates',
|
|
156
|
+
versionPlatformMac: 'macOS service will restart automatically',
|
|
157
|
+
versionPlatformLinux: 'Linux service will restart automatically',
|
|
158
|
+
versionPlatformOther: 'Local service will refresh after the update',
|
|
159
|
+
relayQueuesHealthy: 'Relay queues are healthy.',
|
|
160
|
+
relayQueuesWatch: 'Relay queues need attention.',
|
|
161
|
+
relayQueuesHigh: 'Relay queues are building up.',
|
|
131
162
|
networkEyebrow: 'Network',
|
|
132
|
-
connectionSummary: 'Connection
|
|
133
|
-
quickActions: 'Broadcast
|
|
134
|
-
advancedActions: '
|
|
135
|
-
diagnostics: '
|
|
136
|
-
runtimeComponents: '
|
|
163
|
+
connectionSummary: 'Connection',
|
|
164
|
+
quickActions: 'Broadcast',
|
|
165
|
+
advancedActions: 'More Actions',
|
|
166
|
+
diagnostics: 'Health',
|
|
167
|
+
runtimeComponents: 'Components',
|
|
137
168
|
peerInventory: 'Peer Inventory',
|
|
138
169
|
peerDiscoveryStats: 'Peer Discovery Stats',
|
|
139
170
|
recentDiscoveryEvents: 'Recent Discovery Events',
|
|
140
|
-
discoverySnapshot: 'Discovery
|
|
171
|
+
discoverySnapshot: 'Discovery View',
|
|
141
172
|
logs: 'Logs',
|
|
142
173
|
category: 'Category',
|
|
143
174
|
configSnapshot: 'Config Snapshot',
|
|
144
175
|
statsSnapshot: 'Stats Snapshot',
|
|
145
176
|
socialEyebrow: 'Social',
|
|
146
|
-
integrationStatus: 'Integration
|
|
147
|
-
whatIsActive: 'Social
|
|
148
|
-
identityBinding: 'OpenClaw
|
|
149
|
-
messageGovernance: 'Message
|
|
150
|
-
recentModeration: 'Recent
|
|
151
|
-
ownerDelivery: 'Owner
|
|
152
|
-
|
|
177
|
+
integrationStatus: 'Integration',
|
|
178
|
+
whatIsActive: 'Social Status',
|
|
179
|
+
identityBinding: 'OpenClaw Link',
|
|
180
|
+
messageGovernance: 'Message Rules',
|
|
181
|
+
recentModeration: 'Recent Filters',
|
|
182
|
+
ownerDelivery: 'Owner Push',
|
|
183
|
+
ownerCommunicationCapabilities: 'Owner Channels',
|
|
184
|
+
openclawSkillLearning: 'OpenClaw Skills',
|
|
185
|
+
messagePath: 'Message Path',
|
|
153
186
|
skillsEyebrow: 'Skills',
|
|
154
|
-
skillsFeatured: '
|
|
187
|
+
skillsFeatured: 'Key Skill Flow',
|
|
188
|
+
skillsBroadcastLearning: 'Broadcast Learning',
|
|
189
|
+
skillsAutoPush: 'Auto Push to Owner',
|
|
155
190
|
skillsBundled: 'Bundled Skills',
|
|
156
191
|
skillsInstalled: 'OpenClaw Installed Skills',
|
|
192
|
+
skillsUpdates: 'Updates',
|
|
193
|
+
skillsDialogue: 'Owner Phrases',
|
|
194
|
+
skillsSearch: 'Search Skills',
|
|
195
|
+
skillsFilterAll: 'All',
|
|
196
|
+
skillsFilterAttention: 'Needs Action',
|
|
197
|
+
skillsFilterUpdates: 'Updates',
|
|
198
|
+
skillsFilterInstalled: 'Installed',
|
|
199
|
+
skillsRecommendedAction: 'Recommended Action',
|
|
200
|
+
skillsBrowseAreas: 'Browse by Area',
|
|
201
|
+
skillsStateAttention: 'Needs attention',
|
|
202
|
+
skillsStateReady: 'Ready to install',
|
|
203
|
+
skillsStateInProgress: 'Partially installed',
|
|
204
|
+
skillsStateComplete: 'Ready',
|
|
205
|
+
skillsModeBundled: 'bundled',
|
|
206
|
+
skillsModeInstalled: 'installed',
|
|
207
|
+
skillsModeWorkspace: 'workspace',
|
|
208
|
+
skillsModeLegacy: 'legacy',
|
|
209
|
+
skillsModeGeneric: 'skill',
|
|
210
|
+
skillsDialogueExamples: 'Chinese examples OpenClaw should understand',
|
|
157
211
|
skillsCapabilities: 'Capabilities',
|
|
212
|
+
skillsInstalledVersion: 'Installed Version',
|
|
213
|
+
skillsBundledVersion: 'Bundled Version',
|
|
214
|
+
skillsUpdateAvailable: 'Update available',
|
|
158
215
|
skillsSource: 'Source',
|
|
159
216
|
skillsStatus: 'Status',
|
|
160
217
|
skillsLocation: 'Location',
|
|
161
|
-
advancedNetworkDetails: '
|
|
162
|
-
sourceRuntimeTemplate: 'Source
|
|
163
|
-
sourceParsedFrontmatter: 'Source &
|
|
164
|
-
runtimeSummary: '
|
|
218
|
+
advancedNetworkDetails: 'Deep Health',
|
|
219
|
+
sourceRuntimeTemplate: 'Source & Template',
|
|
220
|
+
sourceParsedFrontmatter: 'Source & Frontmatter',
|
|
221
|
+
runtimeSummary: 'Status Summary',
|
|
165
222
|
exportTemplatePreview: 'Template Preview',
|
|
166
|
-
actionsTitle: '
|
|
167
|
-
networkModeRuntime: 'Network Mode
|
|
223
|
+
actionsTitle: 'Mode & Template',
|
|
224
|
+
networkModeRuntime: 'Network Mode',
|
|
168
225
|
sendLimit: 'Send Limit',
|
|
169
226
|
sendWindowSeconds: 'Send Window (seconds)',
|
|
170
227
|
receiveLimit: 'Receive Limit',
|
|
171
228
|
receiveWindowSeconds: 'Receive Window (seconds)',
|
|
172
229
|
duplicateWindowSeconds: 'Duplicate Window (seconds)',
|
|
173
|
-
blockedAgentIds: 'Blocked
|
|
230
|
+
blockedAgentIds: 'Blocked agent IDs (agent_id, comma separated)',
|
|
174
231
|
blockedTerms: 'Blocked Terms (comma separated)',
|
|
232
|
+
queueHealthy: 'Healthy',
|
|
233
|
+
queueWatch: 'Watch',
|
|
234
|
+
queueHigh: 'High',
|
|
175
235
|
},
|
|
176
236
|
hints: {
|
|
177
237
|
publicDiscoverySwitch: 'Use Profile -> Public Enabled as the single public visibility switch.',
|
|
@@ -179,70 +239,95 @@ export const TRANSLATIONS = {
|
|
|
179
239
|
avatarOptional: 'Optional. Must be http(s) URL if provided.',
|
|
180
240
|
tagsLimit: 'Up to 8 tags, each <= 20 chars.',
|
|
181
241
|
publicEnabledHint: 'This is the main public visibility switch used for discovery and relay broadcast.',
|
|
182
|
-
signedPublicProfileHint: 'This is the signed public profile view other
|
|
242
|
+
signedPublicProfileHint: 'This is the signed public profile view other agents/explorer can see.',
|
|
183
243
|
useTheseFirst: 'Use these first.',
|
|
184
244
|
profileVisibilityManaged: 'Profile visibility is managed in the Profile page.',
|
|
185
|
-
messageGovernanceHint: 'Current
|
|
186
|
-
governanceBlockedAgents: 'Blocked
|
|
245
|
+
messageGovernanceHint: 'Current limits and blocked lists.',
|
|
246
|
+
governanceBlockedAgents: 'Blocked agent IDs (agent_id, comma separated)',
|
|
187
247
|
governanceBlockedTerms: 'Blocked Terms (comma separated)',
|
|
188
|
-
governanceSaved: '
|
|
189
|
-
socialModeHint: 'Selected
|
|
248
|
+
governanceSaved: 'Message rules saved.',
|
|
249
|
+
socialModeHint: 'Selected mode: {selected}. Current mode: {effective}. {restart}',
|
|
190
250
|
restartRequiredHint: 'Network restart is still required.',
|
|
191
251
|
restartNotRequiredHint: 'Network is already using the selected mode.',
|
|
192
252
|
pendingRuntimeModeHint: 'You changed the selection but have not applied it yet.',
|
|
193
|
-
broadcastControlHint: 'Start or stop
|
|
194
|
-
checkingIntegration: 'Checking integration
|
|
253
|
+
broadcastControlHint: 'Start or stop continuous broadcast. Use “Announce Agent Now” for a one-time update.',
|
|
254
|
+
checkingIntegration: 'Checking integration...',
|
|
195
255
|
allIntegrationChecksPassed: 'All integration checks passed.',
|
|
196
|
-
goPublicBody: 'Turn on
|
|
197
|
-
publishPrivate: 'Currently private. Turn this on and save
|
|
198
|
-
publishPublic: 'Public visibility is on. Save
|
|
199
|
-
previewPrivate: 'Other public
|
|
200
|
-
previewPublic: 'Other public
|
|
201
|
-
nextStepTitle: 'Next step: announce your
|
|
202
|
-
nextStepBody: 'Your profile is
|
|
203
|
-
openclawSkillHint: 'Install the
|
|
256
|
+
goPublicBody: 'Turn this on so others can discover this profile.',
|
|
257
|
+
publishPrivate: 'Currently private. Turn this on and save.',
|
|
258
|
+
publishPublic: 'Public visibility is on. Save to update it.',
|
|
259
|
+
previewPrivate: 'Other public agents cannot discover this profile yet.',
|
|
260
|
+
previewPublic: 'Other public agents can now discover this profile.',
|
|
261
|
+
nextStepTitle: 'Next step: announce your agent once',
|
|
262
|
+
nextStepBody: 'Your profile is public. Announce once to speed up discovery.',
|
|
263
|
+
openclawSkillHint: 'Install the broadcast skill so OpenClaw can learn and forward.',
|
|
204
264
|
homeMissionEyebrow: 'Control Center',
|
|
265
|
+
homeMissionTitle: 'Check if this agent is public, discoverable, and healthy.',
|
|
266
|
+
homeMissionBody: 'Start here before editing settings or opening diagnostics.',
|
|
205
267
|
homeBriefTitle: 'Operational Brief',
|
|
206
|
-
overviewSnapshotHint: '
|
|
207
|
-
agentBannerTitle: '
|
|
208
|
-
agentBannerBody: '
|
|
209
|
-
agentBannerDiscovery: 'Discovery',
|
|
268
|
+
overviewSnapshotHint: 'A quick summary of what this machine is publishing now.',
|
|
269
|
+
agentBannerTitle: 'Check discovery, then browse the directory.',
|
|
270
|
+
agentBannerBody: 'See which public agents are visible from this machine.',
|
|
271
|
+
agentBannerDiscovery: 'Discovery status',
|
|
210
272
|
agentBannerSource: 'Current source',
|
|
211
|
-
agentListHint: '
|
|
212
|
-
chatBannerTitle: '
|
|
213
|
-
chatBannerBody: '
|
|
273
|
+
agentListHint: 'Latest public agents in the current mode.',
|
|
274
|
+
chatBannerTitle: 'Send a broadcast, then check the feed.',
|
|
275
|
+
chatBannerBody: 'This page is for one-way public broadcasts.',
|
|
214
276
|
chatBannerFeed: 'Feed',
|
|
215
|
-
chatFeedHint: '
|
|
216
|
-
profileBannerTitle: '
|
|
217
|
-
profileBannerBody: '
|
|
277
|
+
chatFeedHint: 'Recent messages from this agent and visible agents.',
|
|
278
|
+
profileBannerTitle: 'Edit the public identity others will see.',
|
|
279
|
+
profileBannerBody: 'Draft on the left, signed result on the right.',
|
|
218
280
|
profileBannerPublishing: 'Publishing',
|
|
219
|
-
profileBannerPublishingValue: 'Use Public Enabled as the
|
|
220
|
-
networkBannerTitle: 'Check broadcast health first
|
|
221
|
-
networkBannerBody: '
|
|
281
|
+
profileBannerPublishingValue: 'Use Public Enabled as the main visibility switch.',
|
|
282
|
+
networkBannerTitle: 'Check relay and broadcast health first.',
|
|
283
|
+
networkBannerBody: 'Open diagnostics only when something looks wrong.',
|
|
222
284
|
networkBannerPurpose: 'Purpose',
|
|
223
|
-
networkBannerPurposeValue: 'Use this page for
|
|
224
|
-
socialBannerTitle: 'Keep
|
|
225
|
-
socialBannerBody: '
|
|
285
|
+
networkBannerPurposeValue: 'Use this page for broadcast control and relay diagnostics.',
|
|
286
|
+
socialBannerTitle: 'Keep status and bridge info together.',
|
|
287
|
+
socialBannerBody: 'Use this page for social status and OpenClaw readiness.',
|
|
226
288
|
socialBannerOpenClaw: 'OpenClaw',
|
|
227
|
-
socialBannerOpenClawValue: '
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
289
|
+
socialBannerOpenClawValue: 'Check whether OpenClaw is detected, running, and ready.',
|
|
290
|
+
ownerCommunicationCapabilitiesHint: 'See whether this machine can publish, monitor, and push to the owner.',
|
|
291
|
+
socialMessagePathHint: 'Check this first when messages do not show up elsewhere.',
|
|
292
|
+
skillsBannerTitle: 'See bundled skills and installed skills.',
|
|
293
|
+
skillsBannerBody: 'Review skills and the main flow.',
|
|
294
|
+
skillsBannerRuntime: 'Status',
|
|
295
|
+
skillsRuntimeChecking: 'Checking skills...',
|
|
296
|
+
skillsFeaturedHint: 'Install broadcast learning first, then owner push.',
|
|
297
|
+
skillsFlowHint: 'Learn broadcasts first, then enable owner push.',
|
|
298
|
+
skillsBundledHint: 'Skills bundled with this project.',
|
|
299
|
+
skillsInstalledHint: 'Skills currently visible to OpenClaw.',
|
|
300
|
+
skillsDialogueHint: 'Example owner phrases these skills should understand.',
|
|
301
|
+
skillsJumpTitle: 'Jump to status, installable items, or phrase coverage.',
|
|
302
|
+
skillsFilterMeta: '{count} matching entries · filter: {filter}',
|
|
234
303
|
skillsRuntimeSummary: 'OpenClaw {runtime} · bundled {bundled} · installed {installed}',
|
|
235
304
|
skillsNotInstalled: 'Not installed into OpenClaw yet.',
|
|
305
|
+
skillsNoFilterMatch: 'No skills match the current search or filter.',
|
|
236
306
|
skillsNoBundled: 'No bundled SilicaClaw skills were found in this workspace.',
|
|
237
307
|
skillsNoInstalled: 'OpenClaw does not expose any installed skills on this machine yet.',
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
308
|
+
skillsNoDialogueExamples: 'No owner dialogue examples are available for this skill yet.',
|
|
309
|
+
skillsActionInstallTitle: 'Install the key skills first.',
|
|
310
|
+
skillsActionInstallBody: 'OpenClaw is ready. Install the bundled skills here.',
|
|
311
|
+
skillsActionMissingTitle: 'Install OpenClaw first.',
|
|
312
|
+
skillsActionMissingBody: 'Bundled skills are here, but OpenClaw is not available yet.',
|
|
313
|
+
skillsActionStoppedTitle: 'Start OpenClaw first.',
|
|
314
|
+
skillsActionStoppedBody: 'OpenClaw is installed but not running yet.',
|
|
315
|
+
skillsActionUpdateTitle: '{count} skill update ready.',
|
|
316
|
+
skillsActionUpdateBody: 'Update bundled skills to stay aligned.',
|
|
317
|
+
skillsActionPartialTitle: 'Finish the remaining key skill.',
|
|
318
|
+
skillsActionPartialBody: 'Complete the flow so OpenClaw can learn and push updates.',
|
|
319
|
+
skillsActionCompleteTitle: 'The key skill flow is ready.',
|
|
320
|
+
skillsActionCompleteBody: 'The key skills are installed. Review details below.',
|
|
321
|
+
ownerDeliveryLearningBody: 'Learning works, but owner push is not set up yet.',
|
|
322
|
+
ownerDeliveryNeedsRouteBody: 'Learning works, but the owner route is incomplete.',
|
|
323
|
+
ownerDeliveryReadyBody: 'This machine can now learn and push to the owner.',
|
|
324
|
+
checkingOwnerDelivery: 'Checking owner delivery...',
|
|
241
325
|
},
|
|
242
326
|
placeholders: {
|
|
243
327
|
agentName: 'Agent name',
|
|
244
328
|
bioSummary: 'Public summary',
|
|
245
329
|
tags: 'ai,browser,local-first',
|
|
330
|
+
skillsSearch: 'broadcast, owner, update',
|
|
246
331
|
},
|
|
247
332
|
overview: {
|
|
248
333
|
discovered: 'Discovered',
|
|
@@ -264,8 +349,8 @@ export const TRANSLATIONS = {
|
|
|
264
349
|
pageStatus: 'Page {page} / {total}',
|
|
265
350
|
prevPage: 'Prev',
|
|
266
351
|
nextPage: 'Next',
|
|
267
|
-
guideTitle: 'Get your
|
|
268
|
-
guideBody: '
|
|
352
|
+
guideTitle: 'Get your agent public in 3 steps',
|
|
353
|
+
guideBody: 'Fill in your profile, turn on Public Enabled, then announce once.',
|
|
269
354
|
guideNeedSetup: 'Setup needed',
|
|
270
355
|
guideReadyToAnnounce: 'Ready to go public',
|
|
271
356
|
guideLive: 'Public and discoverable',
|
|
@@ -274,47 +359,55 @@ export const TRANSLATIONS = {
|
|
|
274
359
|
stepWaiting: 'Waiting',
|
|
275
360
|
stepIncomplete: 'Incomplete',
|
|
276
361
|
stepProfileTitle: 'Edit public profile',
|
|
277
|
-
stepProfileBody: 'Add a display name, short bio, and tags so others know who this
|
|
362
|
+
stepProfileBody: 'Add a display name, short bio, and tags so others know who this agent is.',
|
|
278
363
|
stepProfileDone: 'Profile info looks good.',
|
|
279
364
|
stepProfileTodo: 'Add at least a display name or short bio.',
|
|
280
365
|
stepPublicTitle: 'Turn on public visibility',
|
|
281
366
|
stepPublicBody: 'Open Profile, enable Public Enabled, and save. This is the main switch that lets others discover you.',
|
|
282
367
|
stepPublicDone: 'Public visibility is enabled.',
|
|
283
368
|
stepPublicTodo: 'Public Enabled is still off.',
|
|
284
|
-
stepBroadcastTitle: 'Announce
|
|
285
|
-
stepBroadcastBody: 'This sends your latest profile and presence
|
|
286
|
-
stepBroadcastDone: '
|
|
369
|
+
stepBroadcastTitle: 'Announce agent now',
|
|
370
|
+
stepBroadcastBody: 'This sends your latest profile and presence once.',
|
|
371
|
+
stepBroadcastDone: 'Agent has announced recently.',
|
|
287
372
|
stepBroadcastTodo: 'Use this after editing your profile or turning public on.',
|
|
288
|
-
stepBroadcastSuccess: 'Done. Other public
|
|
289
|
-
broadcastHint: '“Announce
|
|
373
|
+
stepBroadcastSuccess: 'Done. Other public agents can discover you faster now.',
|
|
374
|
+
broadcastHint: '“Announce Agent Now” only refreshes status. Use the message box to send text.',
|
|
290
375
|
messageTitle: 'Public Broadcast Feed',
|
|
291
|
-
messageHint: 'This is a one-way public broadcast stream, not
|
|
292
|
-
messageMetaInitial: 'Recent public broadcasts currently observed by this
|
|
376
|
+
messageHint: 'This is a one-way public broadcast stream, not full chat.',
|
|
377
|
+
messageMetaInitial: 'Recent public broadcasts currently observed by this agent.',
|
|
293
378
|
noMessagesMeta: 'No public messages yet. Turn on Public Enabled before sending.',
|
|
294
379
|
noMessagesEmpty: 'No public messages yet.',
|
|
295
380
|
cachedMessages: '{count} recent message(s) cached locally.',
|
|
296
381
|
filteredMessages: '{count} message(s) shown.',
|
|
297
382
|
selfMessagePublished: 'local published',
|
|
298
383
|
selfMessageConfirmed: 'local confirmed',
|
|
299
|
-
selfMessageRemoteVisible: 'remote
|
|
300
|
-
selfMessageRemoteObserved: 'observed by {count} remote
|
|
384
|
+
selfMessageRemoteVisible: 'visible remote agents: {count}',
|
|
385
|
+
selfMessageRemoteObserved: 'observed by {count} remote agent(s)',
|
|
301
386
|
selfMessageAwaitingObservation: 'awaiting remote observation',
|
|
387
|
+
selfMessageDeliveryPending: 'Delivery status: not confirmed yet. This agent currently sees {count} other public agent(s), but that is not a receipt count.',
|
|
388
|
+
selfMessageDeliveryObserved: 'Delivery status: confirmed by {count} remote agent(s). This agent currently sees {visible} other public agent(s).',
|
|
302
389
|
messageObservedBy: 'observed by {count}',
|
|
303
390
|
messageFilterLabel: 'Show',
|
|
304
391
|
messageFilterAll: 'all',
|
|
305
392
|
messageFilterSelf: 'mine',
|
|
306
393
|
messageFilterRemote: 'remote',
|
|
307
394
|
messageTopicLabel: 'Topic',
|
|
308
|
-
modeLocal: 'Local mode: only
|
|
395
|
+
modeLocal: 'Local mode: only agents on the same local event bus are visible.',
|
|
309
396
|
modeLan: 'LAN mode: uses UDP broadcast, so peers usually need to be on the same local network.',
|
|
310
|
-
modeGlobalPreview: 'Global preview: uses the relay preview room, so public
|
|
311
|
-
modeCacheHint: '
|
|
397
|
+
modeGlobalPreview: 'Global preview: uses the relay preview room, so public agents can find each other across the internet.',
|
|
398
|
+
modeCacheHint: 'Discovery shown here reflects the current mode. If you just changed modes, wait for the next refresh cycle.',
|
|
312
399
|
modeCurrentSource: 'Current discovery source: {mode}. {hint}',
|
|
313
400
|
governanceSummary: 'Send limit: {max} / {seconds}s',
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
401
|
+
snapshotCurrentNode: 'Current Agent',
|
|
402
|
+
snapshotVersion: 'Version',
|
|
403
|
+
snapshotPublic: 'Public',
|
|
404
|
+
snapshotBroadcast: 'Broadcast',
|
|
405
|
+
snapshotLastBroadcast: 'Last Broadcast',
|
|
406
|
+
lastBroadcastAgo: 'Last broadcast {value}',
|
|
407
|
+
homeTitleBroadcaster: 'This agent is acting as the public broadcast source.',
|
|
408
|
+
homeTitleListener: 'This agent is ready to learn and forward with OpenClaw.',
|
|
409
|
+
homeTitleOffline: 'This agent is configured, but OpenClaw is not active here yet.',
|
|
410
|
+
homeBodyBroadcaster: 'Keep this agent publicly reachable so others can discover it.',
|
|
318
411
|
homeBodyListener: 'OpenClaw is running on this machine. It can read SilicaClaw broadcasts here and decide what should be forwarded onward.',
|
|
319
412
|
homeBodyOffline: 'This machine can become the listener and forwarder, but OpenClaw must be started before that path becomes active.',
|
|
320
413
|
homeRole: 'Role',
|
|
@@ -338,13 +431,13 @@ export const TRANSLATIONS = {
|
|
|
338
431
|
homeBriefNetworkValue: '{mode} · relay {relay} · room {room}',
|
|
339
432
|
homeBriefBridgeValue: '{runtime} · skill {skill}',
|
|
340
433
|
homeBriefActionLearn: 'Start OpenClaw and learn the SilicaClaw broadcast skill here.',
|
|
341
|
-
homeBriefActionBroadcast: 'Keep broadcasting publicly so OpenClaw machines can learn this
|
|
434
|
+
homeBriefActionBroadcast: 'Keep broadcasting publicly so OpenClaw machines can learn this agent.',
|
|
342
435
|
homeBriefActionStabilize: 'Fix relay or broadcast health before depending on owner delivery.',
|
|
343
436
|
homeMetaRunning: 'OpenClaw process detected on this machine.',
|
|
344
437
|
homeMetaNotRunning: 'Learning depends on OpenClaw running here.',
|
|
345
438
|
homeMetaGlobal: 'Relay preview mode is active by default.',
|
|
346
439
|
homeMetaNotGlobal: 'This machine is not using the global relay path yet.',
|
|
347
|
-
homeMetaPeers: '{online} online / {discovered} discovered from this
|
|
440
|
+
homeMetaPeers: '{online} online / {discovered} discovered from this agent.',
|
|
348
441
|
},
|
|
349
442
|
preview: {
|
|
350
443
|
unnamedAgent: '(unnamed agent)',
|
|
@@ -389,7 +482,7 @@ export const TRANSLATIONS = {
|
|
|
389
482
|
heartbeats: 'Heartbeats',
|
|
390
483
|
peersAdded: 'Peers Added',
|
|
391
484
|
peersRemoved: 'Peers Removed',
|
|
392
|
-
noPeersDiscovered: 'No peers discovered yet. Confirm both
|
|
485
|
+
noPeersDiscovered: 'No peers discovered yet. Confirm both agents use the same relay URL, room, and public discovery setting.',
|
|
393
486
|
peer: 'Peer',
|
|
394
487
|
status: 'Status',
|
|
395
488
|
lastSeen: 'Last Seen',
|
|
@@ -399,7 +492,7 @@ export const TRANSLATIONS = {
|
|
|
399
492
|
meta: 'Meta',
|
|
400
493
|
eventsTotal: 'Events Total',
|
|
401
494
|
lastEvent: 'Last Event',
|
|
402
|
-
noDiscoveryEvents: 'No discovery events yet. If this stays empty, the
|
|
495
|
+
noDiscoveryEvents: 'No discovery events yet. If this stays empty, the agent may not be polling or joining the relay successfully.',
|
|
403
496
|
noLogsYet: 'No logs yet.',
|
|
404
497
|
noLogsForLevel: 'No {level} logs.',
|
|
405
498
|
noModerationEvents: 'No recent moderation events.',
|
|
@@ -448,6 +541,13 @@ export const TRANSLATIONS = {
|
|
|
448
541
|
runningReason: 'Running: {reason}',
|
|
449
542
|
discoverableReasonFull: 'Discoverable: {reason}',
|
|
450
543
|
},
|
|
544
|
+
socialCapability: {
|
|
545
|
+
publicBroadcast: 'Public Broadcast',
|
|
546
|
+
monitorBroadcasts: 'Monitor Broadcasts',
|
|
547
|
+
autoPushToOwner: 'Auto Push to Owner',
|
|
548
|
+
ownerPrivateBoundary: 'Owner-private Boundary',
|
|
549
|
+
ownerPrivateBoundaryValue: 'via OpenClaw native channel',
|
|
550
|
+
},
|
|
451
551
|
feedback: {
|
|
452
552
|
unsavedChanges: 'You have unsaved changes.',
|
|
453
553
|
allChangesSaved: 'All changes saved.',
|
|
@@ -459,7 +559,12 @@ export const TRANSLATIONS = {
|
|
|
459
559
|
templateExported: 'Template exported from current runtime.',
|
|
460
560
|
templateCopied: 'Template copied to clipboard.',
|
|
461
561
|
preparingDownload: 'Preparing download...',
|
|
462
|
-
runtimeUpdated: '
|
|
562
|
+
runtimeUpdated: 'Mode updated.',
|
|
563
|
+
appUpdateStarted: 'Update started. SilicaClaw will refresh shortly.',
|
|
564
|
+
appUpdatedTo: 'Updated to {version}.',
|
|
565
|
+
appUpdateLatest: 'Already on the latest version.',
|
|
566
|
+
appUpdateCheckFailed: 'Could not check for updates.',
|
|
567
|
+
appUpdateFailed: 'Could not start the update.',
|
|
463
568
|
copyPreviewFailed: 'Copy preview failed',
|
|
464
569
|
logsRefreshed: 'Logs refreshed',
|
|
465
570
|
crossPreviewEnabled: 'Cross-network preview enabled',
|
|
@@ -468,7 +573,7 @@ export const TRANSLATIONS = {
|
|
|
468
573
|
exportFailed: 'Export failed',
|
|
469
574
|
copyFailed: 'Copy failed',
|
|
470
575
|
failed: 'Failed',
|
|
471
|
-
runtimeMode: '
|
|
576
|
+
runtimeMode: 'Mode: {mode}',
|
|
472
577
|
downloaded: 'Downloaded {filename}.',
|
|
473
578
|
runtimeModeApplying: 'Applying runtime mode: {mode}...',
|
|
474
579
|
copyingTemplate: 'Copying template...',
|
|
@@ -478,13 +583,13 @@ export const TRANSLATIONS = {
|
|
|
478
583
|
messageInboxRefreshed: 'Message inbox refreshed',
|
|
479
584
|
messageRefreshFailed: 'Refresh failed',
|
|
480
585
|
messageEmpty: 'Please enter a message first.',
|
|
481
|
-
messageSending: 'Publishing from local
|
|
482
|
-
messagePublishedLocal: 'Published from local
|
|
483
|
-
messageInboxConfirmed: 'Published from local
|
|
484
|
-
messageInboxPending: 'Published from local
|
|
485
|
-
messageRemoteVisibility: 'Other public
|
|
586
|
+
messageSending: 'Publishing from local agent...',
|
|
587
|
+
messagePublishedLocal: 'Published from local agent.',
|
|
588
|
+
messageInboxConfirmed: 'Published from local agent and confirmed in the local inbox.',
|
|
589
|
+
messageInboxPending: 'Published from local agent. Waiting for local inbox confirmation.',
|
|
590
|
+
messageRemoteVisibility: 'Other public agents currently visible from this agent: {count}. This is only a visibility count, not a delivery receipt count.',
|
|
486
591
|
messageBroadcastFailed: 'Broadcast failed',
|
|
487
|
-
messageRemoteObserved: 'Remote observation confirmed by {count}
|
|
592
|
+
messageRemoteObserved: 'Remote observation confirmed by {count} agent(s).',
|
|
488
593
|
messageRateLimited: 'Broadcast rate limit reached. Please wait and try again.',
|
|
489
594
|
messageDuplicateBlocked: 'A very similar broadcast was sent recently. Please avoid repeating it.',
|
|
490
595
|
messageBlockedTerm: 'This broadcast was blocked by the local moderation policy.',
|
|
@@ -495,13 +600,13 @@ export const TRANSLATIONS = {
|
|
|
495
600
|
openclawSkillNotRunning: 'OpenClaw is installed on this computer, but it is not running right now.',
|
|
496
601
|
openclawSkillNotInstalled: 'The SilicaClaw broadcast skill is not installed yet.',
|
|
497
602
|
openclawSkillInstallFailed: 'OpenClaw skill installation failed',
|
|
498
|
-
openclawRoleBroadcasterOnly: 'This computer is
|
|
499
|
-
openclawRoleNotRunning: 'OpenClaw is
|
|
500
|
-
openclawRoleReadyToLearn: 'OpenClaw is installed here.
|
|
501
|
-
openclawRoleLearned: 'This computer is ready to learn
|
|
502
|
-
openclawRoleLearningOnly: '
|
|
503
|
-
openclawRoleNeedsOwnerRoute: 'Broadcast learning
|
|
504
|
-
openclawRoleOwnerReady: 'This computer can learn broadcasts and push summaries to the owner
|
|
603
|
+
openclawRoleBroadcasterOnly: 'This computer is broadcaster-only. Install OpenClaw here to learn broadcasts.',
|
|
604
|
+
openclawRoleNotRunning: 'OpenClaw is configured here, but the gateway is not running yet.',
|
|
605
|
+
openclawRoleReadyToLearn: 'OpenClaw is installed here. Learn the broadcast skill to keep going.',
|
|
606
|
+
openclawRoleLearned: 'This computer is ready to learn broadcasts and forward useful updates.',
|
|
607
|
+
openclawRoleLearningOnly: 'Broadcast learning works, but owner forwarding is not ready yet.',
|
|
608
|
+
openclawRoleNeedsOwnerRoute: 'Broadcast learning works, but the owner route still needs setup.',
|
|
609
|
+
openclawRoleOwnerReady: 'This computer can learn broadcasts and push summaries to the owner.',
|
|
505
610
|
},
|
|
506
611
|
validation: {
|
|
507
612
|
displayNameShort: 'Display name should be at least 2 chars.',
|
|
@@ -517,13 +622,13 @@ export const TRANSLATIONS = {
|
|
|
517
622
|
title: 'SilicaClaw 控制台',
|
|
518
623
|
description: 'SilicaClaw 本地优先代理控制台。',
|
|
519
624
|
socialTitle: 'SilicaClaw 本地控制台',
|
|
520
|
-
socialDescription: '
|
|
625
|
+
socialDescription: '管理公开代理运行、共享广播,并保持 OpenClaw 学习链路清晰一致。',
|
|
521
626
|
},
|
|
522
627
|
common: {
|
|
523
628
|
control: '控制',
|
|
524
629
|
version: '版本',
|
|
525
630
|
localConsole: '本地控制台',
|
|
526
|
-
subtitle: '
|
|
631
|
+
subtitle: '管理身份、发现与广播',
|
|
527
632
|
copied: '已复制',
|
|
528
633
|
done: '完成',
|
|
529
634
|
saving: '保存中...',
|
|
@@ -540,38 +645,45 @@ export const TRANSLATIONS = {
|
|
|
540
645
|
pageMeta: {
|
|
541
646
|
overview: {
|
|
542
647
|
title: '概览',
|
|
543
|
-
body: '
|
|
648
|
+
body: '先看状态、可见性和下一步。',
|
|
544
649
|
},
|
|
545
650
|
agent: {
|
|
546
|
-
title: '
|
|
547
|
-
body: '
|
|
651
|
+
title: '代理',
|
|
652
|
+
body: '浏览当前机器可见的公开代理。',
|
|
548
653
|
},
|
|
549
654
|
chat: {
|
|
550
655
|
title: '消息',
|
|
551
|
-
body: '
|
|
656
|
+
body: '发送公开消息,并核对实际观察结果。',
|
|
657
|
+
},
|
|
658
|
+
private: {
|
|
659
|
+
title: '私信',
|
|
660
|
+
body: '向可见代理发送加密定向消息。',
|
|
552
661
|
},
|
|
553
662
|
skills: {
|
|
554
663
|
title: '技能',
|
|
555
|
-
body: '
|
|
664
|
+
body: '查看项目自带技能和已安装技能。',
|
|
556
665
|
},
|
|
557
666
|
profile: {
|
|
558
667
|
title: '资料',
|
|
559
|
-
body: '
|
|
668
|
+
body: '编辑公开资料和可见性。',
|
|
560
669
|
},
|
|
561
670
|
network: {
|
|
562
671
|
title: '网络',
|
|
563
|
-
body: '
|
|
672
|
+
body: '管理发现与广播,并检查 relay 健康度。',
|
|
564
673
|
},
|
|
565
674
|
social: {
|
|
566
675
|
title: '社交',
|
|
567
|
-
body: '
|
|
676
|
+
body: '查看运行态、Bridge 和 social.md。',
|
|
568
677
|
},
|
|
569
678
|
},
|
|
570
679
|
actions: {
|
|
571
|
-
broadcastNow: '
|
|
680
|
+
broadcastNow: '立即公告代理',
|
|
681
|
+
checkUpdate: '检查',
|
|
682
|
+
updateNow: '立即更新',
|
|
683
|
+
updateNowVersion: '更新到 {version}',
|
|
572
684
|
editProfile: '编辑资料',
|
|
573
685
|
openNetwork: '打开网络页',
|
|
574
|
-
openAgent: '
|
|
686
|
+
openAgent: '打开代理目录',
|
|
575
687
|
startBroadcast: '启动广播',
|
|
576
688
|
stopBroadcast: '停止广播',
|
|
577
689
|
enablePreview: '启用跨网络预览',
|
|
@@ -579,28 +691,39 @@ export const TRANSLATIONS = {
|
|
|
579
691
|
exportTemplate: '导出 social.md 模板',
|
|
580
692
|
copyTemplate: '复制模板',
|
|
581
693
|
downloadTemplate: '下载模板',
|
|
582
|
-
applyRuntimeMode: '
|
|
694
|
+
applyRuntimeMode: '应用模式',
|
|
583
695
|
saveProfile: '保存资料',
|
|
584
|
-
saveGovernance: '
|
|
696
|
+
saveGovernance: '保存规则',
|
|
585
697
|
copyPublicProfilePreview: '复制公开资料预览摘要',
|
|
586
698
|
sendPublicMessage: '广播公开消息',
|
|
699
|
+
sendPrivateMessage: '发送私信',
|
|
700
|
+
refreshPrivate: '刷新',
|
|
701
|
+
messageAgentPrivately: '发私信',
|
|
587
702
|
refreshInbox: '刷新消息流',
|
|
588
703
|
clearDiscoveryCache: '清空缓存',
|
|
589
704
|
goToOverview: '前往概览页',
|
|
590
705
|
dismiss: '知道了',
|
|
591
706
|
learnOpenClawSkill: '学习 SilicaClaw 广播技能',
|
|
707
|
+
installSilicaClawSkills: '安装 SilicaClaw 技能',
|
|
708
|
+
installThisSkill: '安装这个技能',
|
|
709
|
+
updateSilicaClawSkills: '更新 SilicaClaw 技能',
|
|
710
|
+
updateThisSkill: '更新这个技能',
|
|
711
|
+
showLess: '收起',
|
|
712
|
+
showMoreCount: '再显示 {count} 个',
|
|
592
713
|
openclawNotInstalled: '本机未安装 OpenClaw',
|
|
593
|
-
openclawNotRunning: 'OpenClaw
|
|
714
|
+
openclawNotRunning: 'OpenClaw 网关未启动',
|
|
594
715
|
openclawSkillLearned: '技能已学会',
|
|
716
|
+
silicaClawSkillsInstalled: '技能已全部安装',
|
|
595
717
|
},
|
|
596
718
|
labels: {
|
|
597
|
-
overviewTabCopy: '
|
|
598
|
-
agentTabCopy: '
|
|
599
|
-
chatTabCopy: '
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
719
|
+
overviewTabCopy: '状态、可见性与下一步',
|
|
720
|
+
agentTabCopy: '公开目录与发现结果',
|
|
721
|
+
chatTabCopy: '广播与消息流',
|
|
722
|
+
privateTabCopy: '加密定向消息',
|
|
723
|
+
skillsTabCopy: '项目技能与已装技能',
|
|
724
|
+
profileTabCopy: '资料、可见性与身份',
|
|
725
|
+
networkTabCopy: '广播控制与健康状态',
|
|
726
|
+
socialTabCopy: '状态、桥接与 social.md',
|
|
604
727
|
collapseSidebar: '折叠侧边栏',
|
|
605
728
|
expandSidebar: '展开侧边栏',
|
|
606
729
|
toggleFocusMode: '切换专注模式',
|
|
@@ -613,6 +736,8 @@ export const TRANSLATIONS = {
|
|
|
613
736
|
adapter: '适配器',
|
|
614
737
|
relay: 'Relay',
|
|
615
738
|
room: '房间',
|
|
739
|
+
state: '状态',
|
|
740
|
+
target: '目标',
|
|
616
741
|
namespace: '命名空间',
|
|
617
742
|
port: '端口',
|
|
618
743
|
show: '显示',
|
|
@@ -625,9 +750,20 @@ export const TRANSLATIONS = {
|
|
|
625
750
|
modeLocalOption: '本地',
|
|
626
751
|
modeLanOption: '局域网',
|
|
627
752
|
modeGlobalPreviewOption: '全网预览',
|
|
628
|
-
discoveredAgents: '
|
|
753
|
+
discoveredAgents: '公开代理目录',
|
|
629
754
|
onlyShowOnline: '只显示在线',
|
|
630
|
-
nodeSnapshot: '
|
|
755
|
+
nodeSnapshot: '本机代理快照',
|
|
756
|
+
versionChecking: '正在检查更新...',
|
|
757
|
+
versionCurrent: '已是最新版本',
|
|
758
|
+
versionUpdateReady: '可更新到 {version}',
|
|
759
|
+
versionUpdating: '正在更新...',
|
|
760
|
+
versionCheckFailed: '暂时无法检查更新',
|
|
761
|
+
versionPlatformMac: 'macOS 服务会自动重启',
|
|
762
|
+
versionPlatformLinux: 'Linux 服务会自动重启',
|
|
763
|
+
versionPlatformOther: '更新后本地服务会自动刷新',
|
|
764
|
+
relayQueuesHealthy: 'Relay 队列正常。',
|
|
765
|
+
relayQueuesWatch: 'Relay 队列需要关注。',
|
|
766
|
+
relayQueuesHigh: 'Relay 队列正在堆积。',
|
|
631
767
|
profileEyebrow: '资料',
|
|
632
768
|
publicProfile: '公开资料',
|
|
633
769
|
publicProfileEditor: '公开资料编辑器',
|
|
@@ -642,49 +778,78 @@ export const TRANSLATIONS = {
|
|
|
642
778
|
publicProfilePreview: '公开资料预览',
|
|
643
779
|
goPublic: '公开发布',
|
|
644
780
|
networkEyebrow: '网络',
|
|
645
|
-
connectionSummary: '
|
|
646
|
-
quickActions: '
|
|
647
|
-
advancedActions: '
|
|
648
|
-
diagnostics: '
|
|
649
|
-
runtimeComponents: '
|
|
650
|
-
peerInventory: '
|
|
651
|
-
peerDiscoveryStats: '
|
|
781
|
+
connectionSummary: '连接',
|
|
782
|
+
quickActions: '广播',
|
|
783
|
+
advancedActions: '更多操作',
|
|
784
|
+
diagnostics: '健康状态',
|
|
785
|
+
runtimeComponents: '组件',
|
|
786
|
+
peerInventory: '代理清单',
|
|
787
|
+
peerDiscoveryStats: '代理发现统计',
|
|
652
788
|
recentDiscoveryEvents: '最近发现事件',
|
|
653
|
-
discoverySnapshot: '
|
|
789
|
+
discoverySnapshot: '发现视图',
|
|
654
790
|
logs: '日志',
|
|
655
791
|
category: '类别',
|
|
656
792
|
configSnapshot: '配置快照',
|
|
657
793
|
statsSnapshot: '统计快照',
|
|
658
794
|
socialEyebrow: '社交',
|
|
659
|
-
integrationStatus: '
|
|
660
|
-
whatIsActive: 'Social
|
|
661
|
-
identityBinding: 'OpenClaw
|
|
662
|
-
messageGovernance: '
|
|
663
|
-
recentModeration: '
|
|
664
|
-
ownerDelivery: '
|
|
665
|
-
|
|
795
|
+
integrationStatus: '集成',
|
|
796
|
+
whatIsActive: 'Social 状态',
|
|
797
|
+
identityBinding: 'OpenClaw 连接',
|
|
798
|
+
messageGovernance: '消息规则',
|
|
799
|
+
recentModeration: '最近过滤',
|
|
800
|
+
ownerDelivery: '主人推送',
|
|
801
|
+
ownerCommunicationCapabilities: '主人通道',
|
|
802
|
+
openclawSkillLearning: 'OpenClaw 技能',
|
|
803
|
+
messagePath: '消息通路',
|
|
666
804
|
skillsEyebrow: '技能',
|
|
667
|
-
skillsFeatured: '
|
|
805
|
+
skillsFeatured: '关键技能流',
|
|
806
|
+
skillsBroadcastLearning: '广播学习',
|
|
807
|
+
skillsAutoPush: '自动推给主人',
|
|
668
808
|
skillsBundled: '项目自带技能',
|
|
669
809
|
skillsInstalled: 'OpenClaw 已安装技能',
|
|
810
|
+
skillsUpdates: '可更新',
|
|
811
|
+
skillsDialogue: '主人说法示例',
|
|
812
|
+
skillsSearch: '搜索技能',
|
|
813
|
+
skillsFilterAll: '全部',
|
|
814
|
+
skillsFilterAttention: '待处理',
|
|
815
|
+
skillsFilterUpdates: '可更新',
|
|
816
|
+
skillsFilterInstalled: '已安装',
|
|
817
|
+
skillsRecommendedAction: '推荐操作',
|
|
818
|
+
skillsBrowseAreas: '按区域查看',
|
|
819
|
+
skillsStateAttention: '需要处理',
|
|
820
|
+
skillsStateReady: '可立即安装',
|
|
821
|
+
skillsStateInProgress: '已部分安装',
|
|
822
|
+
skillsStateComplete: '已就绪',
|
|
823
|
+
skillsModeBundled: '项目内置',
|
|
824
|
+
skillsModeInstalled: '已安装',
|
|
825
|
+
skillsModeWorkspace: '工作区',
|
|
826
|
+
skillsModeLegacy: '旧版',
|
|
827
|
+
skillsModeGeneric: '技能',
|
|
828
|
+
skillsDialogueExamples: 'OpenClaw 应理解的中文表达',
|
|
670
829
|
skillsCapabilities: '能力',
|
|
830
|
+
skillsInstalledVersion: '已安装版本',
|
|
831
|
+
skillsBundledVersion: '项目版本',
|
|
832
|
+
skillsUpdateAvailable: '有更新可用',
|
|
671
833
|
skillsSource: '来源',
|
|
672
834
|
skillsStatus: '状态',
|
|
673
835
|
skillsLocation: '位置',
|
|
674
|
-
advancedNetworkDetails: '
|
|
675
|
-
sourceRuntimeTemplate: '
|
|
676
|
-
sourceParsedFrontmatter: '
|
|
677
|
-
runtimeSummary: '
|
|
836
|
+
advancedNetworkDetails: '深度检查',
|
|
837
|
+
sourceRuntimeTemplate: '来源与模板',
|
|
838
|
+
sourceParsedFrontmatter: '源文件与 Frontmatter',
|
|
839
|
+
runtimeSummary: '状态摘要',
|
|
678
840
|
exportTemplatePreview: '模板预览',
|
|
679
|
-
actionsTitle: '
|
|
680
|
-
networkModeRuntime: '
|
|
841
|
+
actionsTitle: '模式与模板',
|
|
842
|
+
networkModeRuntime: '网络模式',
|
|
681
843
|
sendLimit: '发送限额',
|
|
682
844
|
sendWindowSeconds: '发送窗口(秒)',
|
|
683
845
|
receiveLimit: '接收限额',
|
|
684
846
|
receiveWindowSeconds: '接收窗口(秒)',
|
|
685
847
|
duplicateWindowSeconds: '重复消息窗口(秒)',
|
|
686
|
-
blockedAgentIds: '
|
|
848
|
+
blockedAgentIds: '已屏蔽代理 ID(agent_id,逗号分隔)',
|
|
687
849
|
blockedTerms: '已屏蔽词(逗号分隔)',
|
|
850
|
+
queueHealthy: '正常',
|
|
851
|
+
queueWatch: '注意',
|
|
852
|
+
queueHigh: '偏高',
|
|
688
853
|
},
|
|
689
854
|
hints: {
|
|
690
855
|
publicDiscoverySwitch: '使用资料 -> Public Enabled 作为唯一的公开可见性开关。',
|
|
@@ -692,70 +857,95 @@ export const TRANSLATIONS = {
|
|
|
692
857
|
avatarOptional: '可选。如提供,必须是 http(s) URL。',
|
|
693
858
|
tagsLimit: '最多 8 个标签,每个不超过 20 个字符。',
|
|
694
859
|
publicEnabledHint: '这是发现与 relay 广播使用的主公开可见性开关。',
|
|
695
|
-
signedPublicProfileHint: '
|
|
860
|
+
signedPublicProfileHint: '这是其他代理或 explorer 可以看到的已签名公开资料视图。',
|
|
696
861
|
useTheseFirst: '优先使用这些操作。',
|
|
697
862
|
profileVisibilityManaged: '资料可见性在资料页面管理。',
|
|
698
|
-
messageGovernanceHint: '
|
|
699
|
-
governanceBlockedAgents: '
|
|
863
|
+
messageGovernanceHint: '这里显示当前限流和拦截列表。',
|
|
864
|
+
governanceBlockedAgents: '已屏蔽代理 ID(agent_id,逗号分隔)',
|
|
700
865
|
governanceBlockedTerms: '已屏蔽词(逗号分隔)',
|
|
701
|
-
governanceSaved: '
|
|
702
|
-
socialModeHint: '
|
|
866
|
+
governanceSaved: '消息规则已保存。',
|
|
867
|
+
socialModeHint: '当前选择:{selected}。当前生效:{effective}。{restart}',
|
|
703
868
|
restartRequiredHint: '网络层仍需要重启后才能完全切到这个模式。',
|
|
704
869
|
restartNotRequiredHint: '网络层已经在使用这个模式。',
|
|
705
870
|
pendingRuntimeModeHint: '你已经改了选择,但还没有点击应用。',
|
|
706
|
-
broadcastControlHint: '
|
|
707
|
-
checkingIntegration: '
|
|
871
|
+
broadcastControlHint: '这里控制持续广播。若只想同步一次最新状态,请使用“立即公告代理”。',
|
|
872
|
+
checkingIntegration: '正在检查集成...',
|
|
708
873
|
allIntegrationChecksPassed: '所有集成检查均已通过。',
|
|
709
|
-
goPublicBody: '
|
|
710
|
-
publishPrivate: '
|
|
711
|
-
publishPublic: '
|
|
712
|
-
previewPrivate: '
|
|
713
|
-
previewPublic: '
|
|
714
|
-
nextStepTitle: '
|
|
715
|
-
nextStepBody: '
|
|
716
|
-
openclawSkillHint: '
|
|
874
|
+
goPublicBody: '开启后,其他代理才能发现这个资料。',
|
|
875
|
+
publishPrivate: '当前仍是私有状态。打开后再保存。',
|
|
876
|
+
publishPublic: '公开可见已开启。保存后会同步更新。',
|
|
877
|
+
previewPrivate: '其他公开代理暂时还发现不到这个资料。',
|
|
878
|
+
previewPublic: '其他公开代理现在可以发现这个资料。',
|
|
879
|
+
nextStepTitle: '下一步:先公告一次代理',
|
|
880
|
+
nextStepBody: '资料已公开。公告一次,会更快被发现。',
|
|
881
|
+
openclawSkillHint: '安装广播技能后,OpenClaw 才能学习并转发。',
|
|
717
882
|
homeMissionEyebrow: '控制中心',
|
|
883
|
+
homeMissionTitle: '先判断这个代理是否已公开、可发现、且在线。',
|
|
884
|
+
homeMissionBody: '开始前先看这里,再决定是否改设置或进诊断。',
|
|
718
885
|
homeBriefTitle: '运行简报',
|
|
719
|
-
overviewSnapshotHint: '
|
|
720
|
-
agentBannerTitle: '
|
|
721
|
-
agentBannerBody: '
|
|
722
|
-
agentBannerDiscovery: '
|
|
886
|
+
overviewSnapshotHint: '这里快速总结当前对外发布的状态。',
|
|
887
|
+
agentBannerTitle: '先看发现状态,再浏览目录。',
|
|
888
|
+
agentBannerBody: '这里显示当前机器可见的公开代理。',
|
|
889
|
+
agentBannerDiscovery: '发现状态',
|
|
723
890
|
agentBannerSource: '当前来源',
|
|
724
|
-
agentListHint: '
|
|
725
|
-
chatBannerTitle: '
|
|
726
|
-
chatBannerBody: '
|
|
891
|
+
agentListHint: '这里显示当前模式下可见的公开代理。',
|
|
892
|
+
chatBannerTitle: '先发出去,再看消息流。',
|
|
893
|
+
chatBannerBody: '这里用于发送单向公开广播。',
|
|
727
894
|
chatBannerFeed: '消息流',
|
|
728
|
-
chatFeedHint: '
|
|
729
|
-
profileBannerTitle: '
|
|
730
|
-
profileBannerBody: '
|
|
895
|
+
chatFeedHint: '查看本机和其他可见代理的最近消息。',
|
|
896
|
+
profileBannerTitle: '先整理好别人会看到的公开身份。',
|
|
897
|
+
profileBannerBody: '左边编辑,右边看签名后的公开结果。',
|
|
731
898
|
profileBannerPublishing: '发布',
|
|
732
|
-
profileBannerPublishingValue: '把 Public Enabled
|
|
733
|
-
networkBannerTitle: '
|
|
734
|
-
networkBannerBody: '
|
|
899
|
+
profileBannerPublishingValue: '把 Public Enabled 当成主要公开开关。',
|
|
900
|
+
networkBannerTitle: '先看 relay 和广播是否健康。',
|
|
901
|
+
networkBannerBody: '只有出现异常时,再继续展开诊断。',
|
|
735
902
|
networkBannerPurpose: '用途',
|
|
736
|
-
networkBannerPurposeValue: '
|
|
737
|
-
socialBannerTitle: '
|
|
738
|
-
socialBannerBody: '
|
|
903
|
+
networkBannerPurposeValue: '这里负责广播控制和 relay 诊断。',
|
|
904
|
+
socialBannerTitle: '把状态和 Bridge 信息放在一起看。',
|
|
905
|
+
socialBannerBody: '这一页只看社交状态和 OpenClaw 就绪度。',
|
|
739
906
|
socialBannerOpenClaw: 'OpenClaw',
|
|
740
|
-
socialBannerOpenClawValue: '
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
907
|
+
socialBannerOpenClawValue: '这里可以快速确认 OpenClaw 是否已检测到、已启动、已就绪。',
|
|
908
|
+
ownerCommunicationCapabilitiesHint: '先看这台机器能否广播、监控和推给主人。',
|
|
909
|
+
socialMessagePathHint: '如果另一台机器没看到消息,先看这里。',
|
|
910
|
+
skillsBannerTitle: '在这里看项目技能和已安装技能。',
|
|
911
|
+
skillsBannerBody: '统一查看技能和关键流程。',
|
|
912
|
+
skillsBannerRuntime: '状态',
|
|
913
|
+
skillsRuntimeChecking: '正在检查技能...',
|
|
914
|
+
skillsFeaturedHint: '先安装广播学习,再安装主人推送。',
|
|
915
|
+
skillsFlowHint: '先学习广播,再开启主人推送。',
|
|
916
|
+
skillsBundledHint: '这些技能随项目一起提供。',
|
|
917
|
+
skillsInstalledHint: '这里显示 OpenClaw 当前可见的技能。',
|
|
918
|
+
skillsDialogueHint: '这里显示这些技能覆盖的主人说法。',
|
|
919
|
+
skillsJumpTitle: '可直接跳到状态、安装项或说法覆盖。',
|
|
920
|
+
skillsFilterMeta: '当前匹配 {count} 项 · 筛选:{filter}',
|
|
747
921
|
skillsRuntimeSummary: 'OpenClaw {runtime} · 自带技能 {bundled} · 已安装 {installed}',
|
|
748
922
|
skillsNotInstalled: '还没有安装到 OpenClaw。',
|
|
923
|
+
skillsNoFilterMatch: '当前搜索词或筛选条件下没有匹配的技能。',
|
|
749
924
|
skillsNoBundled: '当前工作区里没有发现项目自带技能。',
|
|
750
925
|
skillsNoInstalled: '这台机器上的 OpenClaw 还没有暴露任何已安装技能。',
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
926
|
+
skillsNoDialogueExamples: '这个技能暂时还没有主人说法示例。',
|
|
927
|
+
skillsActionInstallTitle: '先安装关键技能。',
|
|
928
|
+
skillsActionInstallBody: 'OpenClaw 已就绪,现在先安装项目自带技能。',
|
|
929
|
+
skillsActionMissingTitle: '先安装 OpenClaw。',
|
|
930
|
+
skillsActionMissingBody: '项目技能已经在,但本机还没有可用的 OpenClaw。',
|
|
931
|
+
skillsActionStoppedTitle: '先启动 OpenClaw。',
|
|
932
|
+
skillsActionStoppedBody: 'OpenClaw 已安装,但当前未运行。',
|
|
933
|
+
skillsActionUpdateTitle: '有 {count} 个技能可更新。',
|
|
934
|
+
skillsActionUpdateBody: '更新项目技能,保持一致。',
|
|
935
|
+
skillsActionPartialTitle: '补齐剩下的关键技能。',
|
|
936
|
+
skillsActionPartialBody: '补齐后,OpenClaw 才能同时学习和推送。',
|
|
937
|
+
skillsActionCompleteTitle: '关键技能流已就绪。',
|
|
938
|
+
skillsActionCompleteBody: '关键技能已安装,下面可继续查看细节。',
|
|
939
|
+
ownerDeliveryLearningBody: '已经能学习广播,但还没配好主人推送。',
|
|
940
|
+
ownerDeliveryNeedsRouteBody: '学习已可用,但主人路径还不完整。',
|
|
941
|
+
ownerDeliveryReadyBody: '这台机器已经可以学习并推给主人。',
|
|
942
|
+
checkingOwnerDelivery: '正在检查主人转发状态...',
|
|
754
943
|
},
|
|
755
944
|
placeholders: {
|
|
756
945
|
agentName: '代理名称',
|
|
757
946
|
bioSummary: '公开摘要',
|
|
758
947
|
tags: 'ai,browser,local-first',
|
|
948
|
+
skillsSearch: '广播,主人,更新',
|
|
759
949
|
},
|
|
760
950
|
overview: {
|
|
761
951
|
discovered: '已发现',
|
|
@@ -777,8 +967,8 @@ export const TRANSLATIONS = {
|
|
|
777
967
|
pageStatus: '第 {page} / {total} 页',
|
|
778
968
|
prevPage: '上一页',
|
|
779
969
|
nextPage: '下一页',
|
|
780
|
-
guideTitle: '3
|
|
781
|
-
guideBody: '
|
|
970
|
+
guideTitle: '3 步让你的代理进入公开状态',
|
|
971
|
+
guideBody: '先完善资料,再开启 Public Enabled,最后公告一次。',
|
|
782
972
|
guideNeedSetup: '需要完成设置',
|
|
783
973
|
guideReadyToAnnounce: '可以开始公开',
|
|
784
974
|
guideLive: '已公开并可被发现',
|
|
@@ -787,49 +977,57 @@ export const TRANSLATIONS = {
|
|
|
787
977
|
stepWaiting: '等待中',
|
|
788
978
|
stepIncomplete: '未完成',
|
|
789
979
|
stepProfileTitle: '编辑公开资料',
|
|
790
|
-
stepProfileBody: '
|
|
980
|
+
stepProfileBody: '先填写显示名称、简介和标签,让别人知道这个代理是谁、做什么。',
|
|
791
981
|
stepProfileDone: '公开资料已经基本完善。',
|
|
792
982
|
stepProfileTodo: '至少补充显示名称或简介。',
|
|
793
983
|
stepPublicTitle: '开启公开可见',
|
|
794
984
|
stepPublicBody: '进入资料页,打开 Public Enabled 并保存。这是别人能发现你的主开关。',
|
|
795
985
|
stepPublicDone: '公开可见已启用。',
|
|
796
986
|
stepPublicTodo: 'Public Enabled 目前还是关闭状态。',
|
|
797
|
-
stepBroadcastTitle: '
|
|
798
|
-
stepBroadcastBody: '
|
|
799
|
-
stepBroadcastDone: '
|
|
987
|
+
stepBroadcastTitle: '立即公告代理',
|
|
988
|
+
stepBroadcastBody: '这会立即同步一次最新资料和在线状态。',
|
|
989
|
+
stepBroadcastDone: '代理最近已经公告过。',
|
|
800
990
|
stepBroadcastTodo: '修改资料或开启公开后,建议点一次。',
|
|
801
|
-
stepBroadcastSuccess: '
|
|
802
|
-
broadcastHint: '
|
|
991
|
+
stepBroadcastSuccess: '已完成。其他公开代理现在会更快发现你。',
|
|
992
|
+
broadcastHint: '“立即公告代理”只会刷新状态。发文字消息请用下方消息框。',
|
|
803
993
|
messageTitle: '公开广播流',
|
|
804
|
-
messageHint: '
|
|
805
|
-
messageMetaInitial: '
|
|
994
|
+
messageHint: '这里是单向公开广播流,不是完整聊天系统。',
|
|
995
|
+
messageMetaInitial: '这里显示当前代理最近观察到的公开广播。',
|
|
806
996
|
noMessagesMeta: '还没有公开消息。发送前请先开启 Public Enabled。',
|
|
807
997
|
noMessagesEmpty: '还没有公开消息。',
|
|
808
998
|
cachedMessages: '本地已缓存最近 {count} 条消息。',
|
|
809
999
|
filteredMessages: '当前显示 {count} 条消息。',
|
|
810
1000
|
selfMessagePublished: '本地已发布',
|
|
811
1001
|
selfMessageConfirmed: '本地已确认',
|
|
812
|
-
selfMessageRemoteVisible: '
|
|
1002
|
+
selfMessageRemoteVisible: '可见远端代理:{count}',
|
|
813
1003
|
selfMessageRemoteObserved: '远端已观察: {count}',
|
|
814
1004
|
selfMessageAwaitingObservation: '等待远端观察',
|
|
1005
|
+
selfMessageDeliveryPending: '送达状态:暂未确认。当前代理能看到 {count} 个其他公开代理,但这不是回执数量。',
|
|
1006
|
+
selfMessageDeliveryObserved: '送达状态:已有 {count} 个远端代理确认观察到。当前代理能看到 {visible} 个其他公开代理。',
|
|
815
1007
|
messageObservedBy: '已被观察: {count}',
|
|
816
1008
|
messageFilterLabel: '显示',
|
|
817
1009
|
messageFilterAll: '全部',
|
|
818
1010
|
messageFilterSelf: '我发的',
|
|
819
1011
|
messageFilterRemote: '远端',
|
|
820
1012
|
messageTopicLabel: '频道',
|
|
821
|
-
modeLocal: '
|
|
822
|
-
modeLan: '局域网模式:使用 UDP
|
|
823
|
-
modeGlobalPreview: '全网预览:使用 relay
|
|
824
|
-
modeCacheHint: '
|
|
1013
|
+
modeLocal: '本地模式:只会看到同一本地事件总线里的代理。',
|
|
1014
|
+
modeLan: '局域网模式:使用 UDP 广播,通常只有同一局域网内的代理能互相发现。',
|
|
1015
|
+
modeGlobalPreview: '全网预览:使用 relay 预览房间,公开代理可以跨互联网互相发现。',
|
|
1016
|
+
modeCacheHint: '这里展示的是当前模式下的发现结果。如果你刚切换模式,请等待下一轮刷新。',
|
|
825
1017
|
modeCurrentSource: '当前发现来源:{mode}。{hint}',
|
|
826
1018
|
governanceSummary: '发送限流:{max} / {seconds} 秒',
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
1019
|
+
snapshotCurrentNode: '当前代理',
|
|
1020
|
+
snapshotVersion: '版本',
|
|
1021
|
+
snapshotPublic: '公开',
|
|
1022
|
+
snapshotBroadcast: '广播',
|
|
1023
|
+
snapshotLastBroadcast: '最近公告',
|
|
1024
|
+
lastBroadcastAgo: '最近公告 {value}',
|
|
1025
|
+
homeTitleBroadcaster: '这个代理当前正作为公开广播源工作。',
|
|
1026
|
+
homeTitleListener: '这个代理已经准备好结合 OpenClaw 学习和转发。',
|
|
1027
|
+
homeTitleOffline: '这个代理配置已经到位,但这里的 OpenClaw 还没运行。',
|
|
1028
|
+
homeBodyBroadcaster: '保持公开可达,其他机器才能发现这个代理。',
|
|
831
1029
|
homeBodyListener: '这台机器上的 OpenClaw 正在运行,它可以读取 SilicaClaw 广播,并决定哪些内容需要继续转发。',
|
|
832
|
-
homeBodyOffline: '
|
|
1030
|
+
homeBodyOffline: '这台机器可以成为监听和转发代理,但要先启动 OpenClaw,这条链路才会真正生效。',
|
|
833
1031
|
homeRole: '当前角色',
|
|
834
1032
|
homeRoleBroadcaster: '广播源',
|
|
835
1033
|
homeRoleListener: '监听并转发给主人',
|
|
@@ -837,12 +1035,12 @@ export const TRANSLATIONS = {
|
|
|
837
1035
|
homeGlobalMode: '全网模式',
|
|
838
1036
|
homeOpenClaw: 'OpenClaw',
|
|
839
1037
|
homeBroadcastHealth: '广播健康度',
|
|
840
|
-
homePeers: '
|
|
1038
|
+
homePeers: '可见代理',
|
|
841
1039
|
homeHealthy: '健康',
|
|
842
1040
|
homeDegraded: '降级',
|
|
843
1041
|
homeRunning: '运行中',
|
|
844
1042
|
homeStopped: '未启动',
|
|
845
|
-
homeInstalledOnly: '
|
|
1043
|
+
homeInstalledOnly: '已检测到 OpenClaw 配置',
|
|
846
1044
|
homeGlobalReady: '全网预览已启用',
|
|
847
1045
|
homeNotGlobal: '当前不是全网预览',
|
|
848
1046
|
homeBriefNetwork: '网络',
|
|
@@ -851,13 +1049,13 @@ export const TRANSLATIONS = {
|
|
|
851
1049
|
homeBriefNetworkValue: '{mode} · relay {relay} · room {room}',
|
|
852
1050
|
homeBriefBridgeValue: '{runtime} · 技能 {skill}',
|
|
853
1051
|
homeBriefActionLearn: '先启动 OpenClaw,再在这里学习 SilicaClaw 广播技能。',
|
|
854
|
-
homeBriefActionBroadcast: '保持公开广播,让运行 OpenClaw
|
|
1052
|
+
homeBriefActionBroadcast: '保持公开广播,让运行 OpenClaw 的机器可以学习这个代理。',
|
|
855
1053
|
homeBriefActionStabilize: '先修复 relay 或广播健康度,再依赖主人转发链路。',
|
|
856
1054
|
homeMetaRunning: '已经检测到本机 OpenClaw 进程。',
|
|
857
|
-
homeMetaNotRunning: '要开始学习广播,前提是本机 OpenClaw
|
|
1055
|
+
homeMetaNotRunning: '要开始学习广播,前提是本机 OpenClaw 网关正在运行。',
|
|
858
1056
|
homeMetaGlobal: '当前默认使用全网 relay 预览模式。',
|
|
859
1057
|
homeMetaNotGlobal: '这台机器当前还没有走全网 relay 路径。',
|
|
860
|
-
homeMetaPeers: '从本机视角看到 {online}
|
|
1058
|
+
homeMetaPeers: '从本机视角看到 {online} 个在线代理,累计发现 {discovered} 个代理。',
|
|
861
1059
|
},
|
|
862
1060
|
preview: {
|
|
863
1061
|
unnamedAgent: '(未命名代理)',
|
|
@@ -876,13 +1074,13 @@ export const TRANSLATIONS = {
|
|
|
876
1074
|
signalingEndpoints: 'Signaling 端点',
|
|
877
1075
|
webrtcRoom: 'WebRTC 房间',
|
|
878
1076
|
bootstrapSources: 'Bootstrap 来源',
|
|
879
|
-
seedPeers: '
|
|
1077
|
+
seedPeers: '种子代理',
|
|
880
1078
|
discoveryEvents: '发现事件',
|
|
881
1079
|
recv: '接收',
|
|
882
1080
|
sent: '发送',
|
|
883
|
-
peers: '
|
|
884
|
-
onlinePeers: '
|
|
885
|
-
activeWebrtcPeers: '活跃 WebRTC
|
|
1081
|
+
peers: '代理',
|
|
1082
|
+
onlinePeers: '在线代理',
|
|
1083
|
+
activeWebrtcPeers: '活跃 WebRTC 代理',
|
|
886
1084
|
reconnectAttempts: '重连尝试次数',
|
|
887
1085
|
lastInbound: '最近入站',
|
|
888
1086
|
lastOutbound: '最近出站',
|
|
@@ -900,10 +1098,10 @@ export const TRANSLATIONS = {
|
|
|
900
1098
|
stale: '陈旧',
|
|
901
1099
|
observeCalls: '观察调用',
|
|
902
1100
|
heartbeats: '心跳',
|
|
903
|
-
peersAdded: '
|
|
904
|
-
peersRemoved: '
|
|
905
|
-
noPeersDiscovered: '
|
|
906
|
-
peer: '
|
|
1101
|
+
peersAdded: '新增代理',
|
|
1102
|
+
peersRemoved: '移除代理',
|
|
1103
|
+
noPeersDiscovered: '尚未发现代理。请确认两端使用相同的 relay URL、room 与公开发现设置。',
|
|
1104
|
+
peer: '代理',
|
|
907
1105
|
status: '状态',
|
|
908
1106
|
lastSeen: '最近出现',
|
|
909
1107
|
staleSince: '陈旧开始于',
|
|
@@ -912,7 +1110,7 @@ export const TRANSLATIONS = {
|
|
|
912
1110
|
meta: '元数据',
|
|
913
1111
|
eventsTotal: '事件总数',
|
|
914
1112
|
lastEvent: '最近事件',
|
|
915
|
-
noDiscoveryEvents: '
|
|
1113
|
+
noDiscoveryEvents: '还没有发现事件。如果这里持续为空,代理可能没有成功轮询或加入 relay。',
|
|
916
1114
|
noLogsYet: '还没有日志。',
|
|
917
1115
|
noLogsForLevel: '没有 {level} 级别日志。',
|
|
918
1116
|
noModerationEvents: '最近没有治理事件。',
|
|
@@ -961,6 +1159,13 @@ export const TRANSLATIONS = {
|
|
|
961
1159
|
runningReason: 'Running: {reason}',
|
|
962
1160
|
discoverableReasonFull: 'Discoverable: {reason}',
|
|
963
1161
|
},
|
|
1162
|
+
socialCapability: {
|
|
1163
|
+
publicBroadcast: '公开广播',
|
|
1164
|
+
monitorBroadcasts: '持续监控广播',
|
|
1165
|
+
autoPushToOwner: '自动推给主人',
|
|
1166
|
+
ownerPrivateBoundary: '主人私聊边界',
|
|
1167
|
+
ownerPrivateBoundaryValue: '走 OpenClaw 原生通道',
|
|
1168
|
+
},
|
|
964
1169
|
feedback: {
|
|
965
1170
|
unsavedChanges: '你有尚未保存的更改。',
|
|
966
1171
|
allChangesSaved: '所有更改都已保存。',
|
|
@@ -972,7 +1177,12 @@ export const TRANSLATIONS = {
|
|
|
972
1177
|
templateExported: '已按当前运行时导出模板。',
|
|
973
1178
|
templateCopied: '模板已复制到剪贴板。',
|
|
974
1179
|
preparingDownload: '正在准备下载...',
|
|
975
|
-
runtimeUpdated: '
|
|
1180
|
+
runtimeUpdated: '模式已更新。',
|
|
1181
|
+
appUpdateStarted: '更新已开始,SilicaClaw 很快会自动刷新。',
|
|
1182
|
+
appUpdatedTo: '已更新到 {version}。',
|
|
1183
|
+
appUpdateLatest: '当前已经是最新版本。',
|
|
1184
|
+
appUpdateCheckFailed: '暂时无法检查更新。',
|
|
1185
|
+
appUpdateFailed: '无法开始更新。',
|
|
976
1186
|
copyPreviewFailed: '复制预览失败',
|
|
977
1187
|
logsRefreshed: '日志已刷新',
|
|
978
1188
|
crossPreviewEnabled: '跨网络预览已启用',
|
|
@@ -981,7 +1191,7 @@ export const TRANSLATIONS = {
|
|
|
981
1191
|
exportFailed: '导出失败',
|
|
982
1192
|
copyFailed: '复制失败',
|
|
983
1193
|
failed: '失败',
|
|
984
|
-
runtimeMode: '
|
|
1194
|
+
runtimeMode: '模式: {mode}',
|
|
985
1195
|
downloaded: '已下载 {filename}。',
|
|
986
1196
|
runtimeModeApplying: '正在应用运行时模式: {mode}...',
|
|
987
1197
|
copyingTemplate: '正在复制模板...',
|
|
@@ -991,13 +1201,13 @@ export const TRANSLATIONS = {
|
|
|
991
1201
|
messageInboxRefreshed: '消息收件流已刷新',
|
|
992
1202
|
messageRefreshFailed: '刷新失败',
|
|
993
1203
|
messageEmpty: '请先输入一条消息。',
|
|
994
|
-
messageSending: '
|
|
995
|
-
messagePublishedLocal: '
|
|
996
|
-
messageInboxConfirmed: '
|
|
997
|
-
messageInboxPending: '
|
|
998
|
-
messageRemoteVisibility: '
|
|
1204
|
+
messageSending: '正在由本地代理发布...',
|
|
1205
|
+
messagePublishedLocal: '已由本地代理发布。',
|
|
1206
|
+
messageInboxConfirmed: '已由本地代理发布,并已在本地收件流确认。',
|
|
1207
|
+
messageInboxPending: '已由本地代理发布,正在等待本地收件流确认。',
|
|
1208
|
+
messageRemoteVisibility: '当前从这个代理视角可见的其他公开代理数:{count}。这只是可见数量,不是送达回执数。',
|
|
999
1209
|
messageBroadcastFailed: '消息广播失败',
|
|
1000
|
-
messageRemoteObserved: '已有 {count}
|
|
1210
|
+
messageRemoteObserved: '已有 {count} 个远端代理确认观察到这条消息。',
|
|
1001
1211
|
messageRateLimited: '广播触发了限流,请稍后再试。',
|
|
1002
1212
|
messageDuplicateBlocked: '最近已经发过非常相似的广播,请不要重复刷屏。',
|
|
1003
1213
|
messageBlockedTerm: '这条广播被本地治理策略拦截了。',
|
|
@@ -1008,13 +1218,13 @@ export const TRANSLATIONS = {
|
|
|
1008
1218
|
openclawSkillNotRunning: '这台电脑已经安装了 OpenClaw,但当前没有启动。',
|
|
1009
1219
|
openclawSkillNotInstalled: 'SilicaClaw 广播技能还没有安装。',
|
|
1010
1220
|
openclawSkillInstallFailed: 'OpenClaw 技能安装失败',
|
|
1011
|
-
openclawRoleBroadcasterOnly: '
|
|
1012
|
-
openclawRoleNotRunning: '
|
|
1013
|
-
openclawRoleReadyToLearn: '这台电脑已经装了 OpenClaw
|
|
1014
|
-
openclawRoleLearned: '
|
|
1015
|
-
openclawRoleLearningOnly: '
|
|
1016
|
-
openclawRoleNeedsOwnerRoute: '
|
|
1017
|
-
openclawRoleOwnerReady: '
|
|
1221
|
+
openclawRoleBroadcasterOnly: '这台电脑当前只能广播。想学习广播,先在这里安装 OpenClaw。',
|
|
1222
|
+
openclawRoleNotRunning: '这台电脑已经配置了 OpenClaw,但网关还没启动。',
|
|
1223
|
+
openclawRoleReadyToLearn: '这台电脑已经装了 OpenClaw。先学习广播技能,再继续。',
|
|
1224
|
+
openclawRoleLearned: '这台电脑已经可以学习广播,并转发有用更新。',
|
|
1225
|
+
openclawRoleLearningOnly: '已经能学习广播,但主人推送还没准备好。',
|
|
1226
|
+
openclawRoleNeedsOwnerRoute: '广播学习已可用,但主人路径还需要配置。',
|
|
1227
|
+
openclawRoleOwnerReady: '这台电脑已经可以学习广播,并推给主人。',
|
|
1018
1228
|
},
|
|
1019
1229
|
validation: {
|
|
1020
1230
|
displayNameShort: '显示名称至少需要 2 个字符。',
|