@gaodefa/daocore 2026.5.87 → 2026.5.88
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/dist/acp/control-plane/manager.d.ts +1 -2
- package/dist/{agent-command-DQ1XgXqe.d.ts → agent-command-COFQwKxZ.d.ts} +38 -2
- package/dist/{agent-harness-Dya8_zFH.d.ts → agent-harness-WlBoSv-g.d.ts} +2 -2
- package/dist/{agent-harness-runtime-B18Zw6Rz.d.ts → agent-harness-runtime-CsWVHhWd.d.ts} +3 -3
- package/dist/agents/pi-embedded-runner/tool-split.d.ts +1 -1
- package/dist/{api-DYuUdqrI.d.ts → api-D5uGvU4G.d.ts} +1 -1
- package/dist/build-info.json +3 -3
- package/dist/{bundled-channel-config-schema-BsHcx3wh.d.ts → bundled-channel-config-schema-4eXcH-RE.d.ts} +59 -59
- package/dist/{call-D8ev9OI5.d.ts → call-DY6_VEa_.d.ts} +1 -1
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-B0gFm2e0.d.ts → channel-B0dtLI6U.d.ts} +1 -1
- package/dist/{channel-BvlX4grI.d.ts → channel-B2MLRCOm.d.ts} +1 -1
- package/dist/{channel-Cg78poCb.d.ts → channel-B4XBSqBl.d.ts} +1 -1
- package/dist/{channel-29833Q7U.d.ts → channel-Bq3wyp3c.d.ts} +1 -1
- package/dist/{channel-EAYFx_aX.d.ts → channel-C1AEDysJ.d.ts} +1 -1
- package/dist/{channel-C75uc-F0.d.ts → channel-CEH1dfVt.d.ts} +1 -1
- package/dist/{channel-ez59JAzr.d.ts → channel-CQJHudhH.d.ts} +1 -1
- package/dist/{channel-B4wQxeHH.d.ts → channel-CUu3R9QU.d.ts} +1 -1
- package/dist/{channel-BXg8HDz6.d.ts → channel-CsdkcuzU.d.ts} +1 -1
- package/dist/{channel-BU5YCSFs.d.ts → channel-Czs81UUj.d.ts} +5 -5
- package/dist/{channel-ryumzsaN.d.ts → channel-D-QJ4LSf.d.ts} +1 -1
- package/dist/{channel-zfDQdZSM.d.ts → channel-D07QdL-Z.d.ts} +1 -1
- package/dist/{channel-BS3cqj-Z.d.ts → channel-D1AKh1-N.d.ts} +1 -1
- package/dist/{channel-oeyyvfIC.d.ts → channel-DECcAIqn.d.ts} +1 -1
- package/dist/{channel-CtVWvTxM.d.ts → channel-DZW76PDC.d.ts} +1 -1
- package/dist/{channel-D3sCmweW.d.ts → channel-DwSP9REc.d.ts} +1 -1
- package/dist/{channel-B_rnZ7-_.d.ts → channel-LKyGksmz.d.ts} +1 -1
- package/dist/{channel-core-DsmamxDL.d.ts → channel-core-DshTARNf.d.ts} +1 -1
- package/dist/{channel-entry-contract-DwsX3A32.d.ts → channel-entry-contract-DpdwxgOw.d.ts} +2 -2
- package/dist/{channel-lifecycle-BXdiTu_h.d.ts → channel-lifecycle-C4NrMjdz.d.ts} +0 -1
- package/dist/{channel-pairing-qPwn6FAN.d.ts → channel-pairing-ndZVB-VX.d.ts} +1 -1
- package/dist/{channel-plugin-runtime-Cm532MRz.d.ts → channel-plugin-runtime-CS0_tyOZ.d.ts} +1 -1
- package/dist/{channel.setup-BKCOmQ1R.d.ts → channel.setup-B03MiH5Q.d.ts} +1 -1
- package/dist/{channel.setup-CIy_GOHl.d.ts → channel.setup-ByuZMttY.d.ts} +1 -1
- package/dist/{channel.setup-DLoH7iov.d.ts → channel.setup-CIlbvWjW.d.ts} +1 -1
- package/dist/{cli-backend-C3cY7GNo.d.ts → cli-backend-Dg9IEgrP.d.ts} +1 -1
- package/dist/{cli-backend-Dq6pWbMI.d.ts → cli-backend-DwmYGZX7.d.ts} +1 -1
- package/dist/{cli-DfMcB-YB.d.ts → cli-pk6gIQfi.d.ts} +1 -1
- package/dist/{cli-shared-CLlJpRmc.d.ts → cli-shared-C_4_xNC-.d.ts} +1 -1
- package/dist/cli-startup-metadata.json +8 -8
- package/dist/{commands-9rlXSaBn.d.ts → commands-CLbV1tFt.d.ts} +1 -1
- package/dist/{config-schema-Bwgooc-v.d.ts → config-schema-BwKcspTI.d.ts} +1 -1
- package/dist/{config-schema-lIvqvlbL.d.ts → config-schema-Dx48Ud8L.d.ts} +1 -1
- package/dist/{contracts-testkit-DC7MJzfa.d.ts → contracts-testkit-CzhusazO.d.ts} +7 -7
- package/dist/control-ui/apple-touch-icon.png +0 -0
- package/dist/control-ui/assets/agents-Dhs3H55s.js +1008 -0
- package/dist/control-ui/assets/ar-DmY3OKJ7.js +2 -0
- package/dist/control-ui/assets/channel-config-extras-DVKxDRoe.js +2 -0
- package/dist/control-ui/assets/channels-D0sTh9um.js +367 -0
- package/dist/control-ui/assets/cron-Bjs_HVS8.js +1013 -0
- package/dist/control-ui/assets/de-nNWCMyC9.js +2 -0
- package/dist/control-ui/assets/debug-DHEAFVCg.js +97 -0
- package/dist/control-ui/assets/es-BcdhLNdf.js +2 -0
- package/dist/control-ui/assets/fa-DbS2z7VZ.js +2 -0
- package/dist/control-ui/assets/fr-CBqvw0rY.js +2 -0
- package/dist/control-ui/assets/id-DXES9f6X.js +2 -0
- package/dist/control-ui/assets/index-BEC-6JL5.js +7387 -0
- package/dist/control-ui/assets/index-BimYwq-S.css +1 -0
- package/dist/control-ui/assets/instances-BwqBHtda.js +57 -0
- package/dist/control-ui/assets/it-DpT4ZVOU.js +2 -0
- package/dist/control-ui/assets/ja-JP-D8RXA_04.js +2 -0
- package/dist/control-ui/assets/ko-5en8VO8w.js +2 -0
- package/dist/control-ui/assets/logs-CmMuGVQg.js +74 -0
- package/dist/control-ui/assets/nl-Bb10QoRg.js +2 -0
- package/dist/control-ui/assets/nodes-CT5wsOuA.js +436 -0
- package/dist/control-ui/assets/pl-Y8UIOEIm.js +2 -0
- package/dist/control-ui/assets/preview-BBw3vauN.js +2 -0
- package/dist/control-ui/assets/pt-BR-DDsy5M68.js +2 -0
- package/dist/control-ui/assets/push-subscription-TTvs1whj.js +2 -0
- package/dist/control-ui/assets/sessions-_rCyOKmn.js +399 -0
- package/dist/control-ui/assets/skills-CIQu4JU-.js +314 -0
- package/dist/control-ui/assets/skills-shared-sMjN-BZW.js +11 -0
- package/dist/control-ui/assets/th-D_2DtFn6.js +2 -0
- package/dist/control-ui/assets/tr-DBsYZTmE.js +2 -0
- package/dist/control-ui/assets/uk-BUxHBc05.js +2 -0
- package/dist/control-ui/assets/vi-B67Eos5b.js +2 -0
- package/dist/control-ui/assets/zh-CN-CDrBrfT7.js +2 -0
- package/dist/control-ui/assets/zh-TW-CA4YEnf2.js +2 -0
- package/dist/control-ui/favicon-32.png +0 -0
- package/dist/control-ui/favicon-512.png +0 -0
- package/dist/control-ui/favicon.ico +0 -0
- package/dist/control-ui/favicon.svg +12 -0
- package/dist/control-ui/index.html +322 -0
- package/dist/control-ui/manifest.webmanifest +40 -0
- package/dist/control-ui/sw.js +133 -0
- package/dist/{core-loprAG73.d.ts → core-B7zb6eoz.d.ts} +2 -2
- package/dist/{daocore-runtime-B-rzUpKx.d.ts → daocore-runtime-DogaiqPT.d.ts} +1 -1
- package/dist/{embedding-provider-uqWqn4wW.d.ts → embedding-provider-B82QlZsy.d.ts} +1 -1
- package/dist/{embedding-provider-ZDZfzTLK.d.ts → embedding-provider-Cmb3dgUf.d.ts} +1 -1
- package/dist/{embedding-provider-BKIXHvGl.d.ts → embedding-provider-w7EJz-DO.d.ts} +1 -1
- package/dist/entry.d.ts +1 -1
- package/dist/extensions/active-memory/index.d.ts +1 -1
- package/dist/extensions/admin-http-rpc/index.d.ts +1 -1
- package/dist/extensions/alibaba/index.d.ts +1 -1
- package/dist/extensions/anthropic/api.d.ts +3 -3
- package/dist/extensions/anthropic/cli-backend-api.d.ts +2 -2
- package/dist/extensions/anthropic/cli-backend.d.ts +1 -1
- package/dist/extensions/anthropic/cli-migration.d.ts +1 -1
- package/dist/extensions/anthropic/cli-shared.d.ts +1 -1
- package/dist/extensions/anthropic/contract-api.d.ts +1 -1
- package/dist/extensions/anthropic/doctor-contract-api.d.ts +1 -1
- package/dist/extensions/anthropic/index.d.ts +1 -1
- package/dist/extensions/anthropic/provider-contract-api.d.ts +1 -1
- package/dist/extensions/anthropic/provider-discovery.d.ts +1 -1
- package/dist/extensions/anthropic/provider-policy-api.d.ts +1 -1
- package/dist/extensions/anthropic/register.runtime.d.ts +1 -1
- package/dist/extensions/anthropic/replay-policy.d.ts +1 -1
- package/dist/extensions/anthropic/setup-api.d.ts +1 -1
- package/dist/extensions/anthropic/stream-wrappers.d.ts +1 -1
- package/dist/extensions/anthropic/test-api.d.ts +2 -2
- package/dist/extensions/arcee/index.d.ts +1 -1
- package/dist/extensions/azure-speech/index.d.ts +1 -1
- package/dist/extensions/azure-speech/speech-provider.d.ts +1 -1
- package/dist/extensions/bonjour/index.d.ts +1 -1
- package/dist/extensions/browser/cli-metadata.d.ts +1 -1
- package/dist/extensions/browser/index.d.ts +1 -1
- package/dist/extensions/browser/plugin-registration.d.ts +1 -1
- package/dist/extensions/browser/register.runtime.d.ts +2 -2
- package/dist/extensions/browser/runtime-api.d.ts +3 -3
- package/dist/extensions/browser/setup-api.d.ts +1 -1
- package/dist/extensions/browser/test-support.d.ts +1 -1
- package/dist/extensions/byteplus/index.d.ts +1 -1
- package/dist/extensions/byteplus/provider-discovery.d.ts +1 -1
- package/dist/extensions/canvas/cli-metadata.d.ts +1 -1
- package/dist/extensions/canvas/index.d.ts +1 -1
- package/dist/extensions/canvas/runtime-api.d.ts +2 -2
- package/dist/extensions/canvas/setup-api.d.ts +1 -1
- package/dist/extensions/cerebras/index.d.ts +1 -1
- package/dist/extensions/chutes/index.d.ts +1 -1
- package/dist/extensions/clickclack/api.d.ts +2 -2
- package/dist/extensions/clickclack/channel-plugin-api.d.ts +1 -1
- package/dist/extensions/clickclack/index.d.ts +2 -2
- package/dist/extensions/clickclack/runtime-api.d.ts +2 -2
- package/dist/extensions/cloudflare-ai-gateway/index.d.ts +1 -1
- package/dist/extensions/cloudflare-ai-gateway/stream-wrappers.d.ts +1 -1
- package/dist/extensions/comfy/index.d.ts +1 -1
- package/dist/extensions/copilot-proxy/index.d.ts +1 -1
- package/dist/extensions/copilot-proxy/runtime-api.d.ts +2 -2
- package/dist/extensions/deepgram/index.d.ts +1 -1
- package/dist/extensions/deepgram/realtime-transcription-provider.d.ts +1 -1
- package/dist/extensions/deepgram/test-api.d.ts +1 -1
- package/dist/extensions/deepinfra/api.d.ts +2 -2
- package/dist/extensions/deepinfra/embedding-provider.d.ts +1 -1
- package/dist/extensions/deepinfra/index.d.ts +1 -1
- package/dist/extensions/deepinfra/memory-embedding-adapter.d.ts +1 -1
- package/dist/extensions/deepinfra/speech-provider.d.ts +1 -1
- package/dist/extensions/deepseek/api.d.ts +1 -1
- package/dist/extensions/deepseek/index.d.ts +1 -1
- package/dist/extensions/deepseek/provider-discovery.d.ts +1 -1
- package/dist/extensions/deepseek/provider-policy-api.d.ts +1 -1
- package/dist/extensions/deepseek/stream.d.ts +1 -1
- package/dist/extensions/deepseek/thinking.d.ts +1 -1
- package/dist/extensions/device-pair/api.d.ts +3 -3
- package/dist/extensions/device-pair/index.d.ts +1 -1
- package/dist/extensions/device-pair/notify.d.ts +1 -1
- package/dist/extensions/document-extract/index.d.ts +1 -1
- package/dist/extensions/duckduckgo/index.d.ts +1 -1
- package/dist/extensions/elevenlabs/index.d.ts +1 -1
- package/dist/extensions/elevenlabs/realtime-transcription-provider.d.ts +1 -1
- package/dist/extensions/elevenlabs/setup-api.d.ts +1 -1
- package/dist/extensions/elevenlabs/speech-provider.d.ts +1 -1
- package/dist/extensions/elevenlabs/test-api.d.ts +2 -2
- package/dist/extensions/exa/index.d.ts +1 -1
- package/dist/extensions/fal/index.d.ts +1 -1
- package/dist/extensions/fal/provider-contract-api.d.ts +1 -1
- package/dist/extensions/fal/provider-registration.d.ts +1 -1
- package/dist/extensions/file-transfer/index.d.ts +1 -1
- package/dist/extensions/firecrawl/index.d.ts +1 -1
- package/dist/extensions/fireworks/index.d.ts +1 -1
- package/dist/extensions/fireworks/provider-policy-api.d.ts +1 -1
- package/dist/extensions/fireworks/stream.d.ts +1 -1
- package/dist/extensions/fireworks/thinking-policy.d.ts +1 -1
- package/dist/extensions/github-copilot/embeddings.d.ts +1 -1
- package/dist/extensions/github-copilot/index.d.ts +1 -1
- package/dist/extensions/github-copilot/models.d.ts +1 -1
- package/dist/extensions/github-copilot/register.runtime.d.ts +2 -2
- package/dist/extensions/github-copilot/stream.d.ts +1 -1
- package/dist/extensions/google/api.d.ts +5 -5
- package/dist/extensions/google/cli-backend.d.ts +1 -1
- package/dist/extensions/google/doctor-contract-api.d.ts +1 -1
- package/dist/extensions/google/embedding-batch.d.ts +1 -1
- package/dist/extensions/google/embedding-provider.d.ts +1 -1
- package/dist/extensions/google/gemini-cli-provider.d.ts +1 -1
- package/dist/extensions/google/index.d.ts +1 -1
- package/dist/extensions/google/memory-embedding-adapter.d.ts +1 -1
- package/dist/extensions/google/provider-contract-api.d.ts +1 -1
- package/dist/extensions/google/provider-hooks.d.ts +2 -2
- package/dist/extensions/google/provider-models.d.ts +1 -1
- package/dist/extensions/google/provider-policy-api.d.ts +1 -1
- package/dist/extensions/google/provider-policy.d.ts +1 -1
- package/dist/extensions/google/provider-registration.d.ts +1 -1
- package/dist/extensions/google/realtime-voice-provider.d.ts +1 -1
- package/dist/extensions/google/runtime-api.d.ts +3 -3
- package/dist/extensions/google/setup-api.d.ts +1 -1
- package/dist/extensions/google/speech-provider.d.ts +1 -1
- package/dist/extensions/google/test-api.d.ts +2 -2
- package/dist/extensions/google/thinking-api.d.ts +1 -1
- package/dist/extensions/google/thinking.d.ts +1 -1
- package/dist/extensions/google/transport-stream.d.ts +1 -1
- package/dist/extensions/gradium/index.d.ts +1 -1
- package/dist/extensions/gradium/speech-provider.d.ts +1 -1
- package/dist/extensions/groq/index.d.ts +1 -1
- package/dist/extensions/huggingface/index.d.ts +1 -1
- package/dist/extensions/image-generation-core/api.d.ts +4 -4
- package/dist/extensions/image-generation-core/runtime-api.d.ts +1 -1
- package/dist/extensions/imessage/api.d.ts +2 -2
- package/dist/extensions/imessage/channel-plugin-api.d.ts +1 -1
- package/dist/extensions/imessage/index.d.ts +2 -2
- package/dist/extensions/imessage/message-tool-api.d.ts +1 -1
- package/dist/extensions/imessage/runtime-api.d.ts +5 -5
- package/dist/extensions/imessage/setup-entry.d.ts +2 -2
- package/dist/extensions/imessage/test-api.d.ts +1 -1
- package/dist/extensions/inworld/index.d.ts +1 -1
- package/dist/extensions/inworld/speech-provider.d.ts +1 -1
- package/dist/extensions/irc/api.d.ts +1 -1
- package/dist/extensions/irc/channel-plugin-api.d.ts +1 -1
- package/dist/extensions/irc/index.d.ts +2 -2
- package/dist/extensions/irc/setup-entry.d.ts +2 -2
- package/dist/extensions/kilocode/index.d.ts +1 -1
- package/dist/extensions/kimi-coding/index.d.ts +1 -1
- package/dist/extensions/kimi-coding/stream.d.ts +1 -1
- package/dist/extensions/litellm/index.d.ts +1 -1
- package/dist/extensions/llm-task/api.d.ts +2 -2
- package/dist/extensions/llm-task/index.d.ts +1 -1
- package/dist/extensions/lmstudio/api.d.ts +1 -1
- package/dist/extensions/lmstudio/index.d.ts +1 -1
- package/dist/extensions/lmstudio/memory-embedding-adapter.d.ts +1 -1
- package/dist/extensions/mattermost/channel-plugin-api.d.ts +2 -2
- package/dist/extensions/mattermost/channel-plugin-runtime.d.ts +1 -1
- package/dist/extensions/mattermost/index.d.ts +2 -2
- package/dist/extensions/mattermost/runtime-api.d.ts +10 -10
- package/dist/extensions/mattermost/setup-entry.d.ts +2 -2
- package/dist/extensions/mattermost/slash-route-api.d.ts +1 -1
- package/dist/extensions/memory-core/api.d.ts +1 -1
- package/dist/extensions/memory-core/cli-metadata.d.ts +1 -1
- package/dist/extensions/memory-core/index.d.ts +1 -1
- package/dist/extensions/memory-core/manager-runtime.d.ts +1 -1
- package/dist/extensions/memory-core/runtime-api.d.ts +2 -2
- package/dist/extensions/memory-wiki/api.d.ts +3 -3
- package/dist/extensions/memory-wiki/cli-metadata.d.ts +1 -1
- package/dist/extensions/memory-wiki/index.d.ts +1 -1
- package/dist/extensions/memory-wiki/setup-api.d.ts +1 -1
- package/dist/extensions/microsoft/index.d.ts +1 -1
- package/dist/extensions/microsoft/speech-provider.d.ts +1 -1
- package/dist/extensions/microsoft/test-api.d.ts +1 -1
- package/dist/extensions/microsoft-foundry/auth.d.ts +1 -1
- package/dist/extensions/microsoft-foundry/cli.d.ts +1 -1
- package/dist/extensions/microsoft-foundry/index.d.ts +1 -1
- package/dist/extensions/microsoft-foundry/onboard.d.ts +3 -3
- package/dist/extensions/microsoft-foundry/provider.d.ts +1 -1
- package/dist/extensions/microsoft-foundry/runtime.d.ts +1 -1
- package/dist/extensions/microsoft-foundry/shared-runtime.d.ts +1 -1
- package/dist/extensions/microsoft-foundry/shared.d.ts +1 -1
- package/dist/extensions/migrate-claude/apply.d.ts +1 -1
- package/dist/extensions/migrate-claude/config.d.ts +1 -1
- package/dist/extensions/migrate-claude/helpers.d.ts +1 -1
- package/dist/extensions/migrate-claude/index.d.ts +1 -1
- package/dist/extensions/migrate-claude/memory.d.ts +2 -2
- package/dist/extensions/migrate-claude/plan.d.ts +1 -1
- package/dist/extensions/migrate-claude/provider.d.ts +1 -1
- package/dist/extensions/migrate-claude/skills.d.ts +2 -2
- package/dist/extensions/migrate-claude/targets.d.ts +1 -1
- package/dist/extensions/migrate-hermes/apply.d.ts +1 -1
- package/dist/extensions/migrate-hermes/config.d.ts +1 -1
- package/dist/extensions/migrate-hermes/helpers.d.ts +1 -1
- package/dist/extensions/migrate-hermes/index.d.ts +1 -1
- package/dist/extensions/migrate-hermes/items.d.ts +1 -1
- package/dist/extensions/migrate-hermes/model.d.ts +1 -1
- package/dist/extensions/migrate-hermes/plan.d.ts +1 -1
- package/dist/extensions/migrate-hermes/provider.d.ts +1 -1
- package/dist/extensions/migrate-hermes/secrets.d.ts +2 -2
- package/dist/extensions/migrate-hermes/skills.d.ts +2 -2
- package/dist/extensions/migrate-hermes/targets.d.ts +1 -1
- package/dist/extensions/minimax/index.d.ts +1 -1
- package/dist/extensions/minimax/provider-contract-api.d.ts +1 -1
- package/dist/extensions/minimax/provider-registration.d.ts +1 -1
- package/dist/extensions/minimax/speech-provider.d.ts +1 -1
- package/dist/extensions/mistral/embedding-provider.d.ts +1 -1
- package/dist/extensions/mistral/index.d.ts +1 -1
- package/dist/extensions/mistral/memory-embedding-adapter.d.ts +1 -1
- package/dist/extensions/mistral/realtime-transcription-provider.d.ts +1 -1
- package/dist/extensions/mistral/test-api.d.ts +1 -1
- package/dist/extensions/moonshot/index.d.ts +1 -1
- package/dist/extensions/moonshot/provider-contract-api.d.ts +1 -1
- package/dist/extensions/moonshot/provider-discovery.d.ts +1 -1
- package/dist/extensions/nvidia/index.d.ts +1 -1
- package/dist/extensions/oc-path/cli-metadata.d.ts +1 -1
- package/dist/extensions/oc-path/cli-registration.d.ts +1 -1
- package/dist/extensions/oc-path/index.d.ts +1 -1
- package/dist/extensions/ollama/api.d.ts +1 -1
- package/dist/extensions/ollama/index.d.ts +1 -1
- package/dist/extensions/ollama/provider-discovery.d.ts +1 -1
- package/dist/extensions/ollama/provider-policy-api.d.ts +1 -1
- package/dist/extensions/ollama/runtime-api.d.ts +1 -1
- package/dist/extensions/open-prose/index.d.ts +1 -1
- package/dist/extensions/open-prose/runtime-api.d.ts +2 -2
- package/dist/extensions/openai/api.d.ts +4 -4
- package/dist/extensions/openai/embedding-batch.d.ts +1 -1
- package/dist/extensions/openai/embedding-provider.d.ts +1 -1
- package/dist/extensions/openai/index.d.ts +1 -1
- package/dist/extensions/openai/memory-embedding-adapter.d.ts +1 -1
- package/dist/extensions/openai/openai-codex-oauth.runtime.d.ts +1 -1
- package/dist/extensions/openai/openai-codex-provider.d.ts +1 -1
- package/dist/extensions/openai/openai-provider.d.ts +1 -1
- package/dist/extensions/openai/prompt-overlay.d.ts +1 -1
- package/dist/extensions/openai/provider-contract-api.d.ts +1 -1
- package/dist/extensions/openai/provider-policy-api.d.ts +1 -1
- package/dist/extensions/openai/realtime-transcription-provider.d.ts +1 -1
- package/dist/extensions/openai/realtime-voice-provider.d.ts +1 -1
- package/dist/extensions/openai/register.runtime.d.ts +6 -6
- package/dist/extensions/openai/replay-policy.d.ts +1 -1
- package/dist/extensions/openai/setup-api.d.ts +1 -1
- package/dist/extensions/openai/shared.d.ts +3 -3
- package/dist/extensions/openai/speech-provider.d.ts +1 -1
- package/dist/extensions/openai/test-api.d.ts +3 -3
- package/dist/extensions/openai/thinking-policy.d.ts +1 -1
- package/dist/extensions/openai/transport-policy.d.ts +1 -1
- package/dist/extensions/opencode/index.d.ts +1 -1
- package/dist/extensions/opencode/provider-policy-api.d.ts +1 -1
- package/dist/extensions/opencode-go/index.d.ts +1 -1
- package/dist/extensions/opencode-go/provider-catalog.d.ts +1 -1
- package/dist/extensions/opencode-go/stream.d.ts +1 -1
- package/dist/extensions/openrouter/api.d.ts +1 -1
- package/dist/extensions/openrouter/index.d.ts +1 -1
- package/dist/extensions/openrouter/provider-contract-api.d.ts +1 -1
- package/dist/extensions/openrouter/provider-policy-api.d.ts +1 -1
- package/dist/extensions/openrouter/speech-provider.d.ts +1 -1
- package/dist/extensions/openrouter/stream.d.ts +1 -1
- package/dist/extensions/openrouter/test-api.d.ts +1 -1
- package/dist/extensions/openrouter/thinking-policy.d.ts +1 -1
- package/dist/extensions/openrouter/video-generation-provider.d.ts +1 -1
- package/dist/extensions/openrouter/video-model-catalog.d.ts +1 -1
- package/dist/extensions/perplexity/index.d.ts +1 -1
- package/dist/extensions/phone-control/index.d.ts +1 -1
- package/dist/extensions/phone-control/runtime-api.d.ts +2 -2
- package/dist/extensions/policy/index.d.ts +1 -1
- package/dist/extensions/qianfan/index.d.ts +1 -1
- package/dist/extensions/qwen/api.d.ts +1 -1
- package/dist/extensions/qwen/index.d.ts +1 -1
- package/dist/extensions/qwen/stream.d.ts +1 -1
- package/dist/extensions/qwen-dashscope/index.d.ts +1 -1
- package/dist/extensions/runway/index.d.ts +1 -1
- package/dist/extensions/searxng/index.d.ts +1 -1
- package/dist/extensions/senseaudio/index.d.ts +1 -1
- package/dist/extensions/sglang/index.d.ts +1 -1
- package/dist/extensions/signal/api.d.ts +3 -3
- package/dist/extensions/signal/channel-entry.d.ts +2 -2
- package/dist/extensions/signal/channel-plugin-api.d.ts +1 -1
- package/dist/extensions/signal/index.d.ts +2 -2
- package/dist/extensions/signal/runtime-api.d.ts +8 -8
- package/dist/extensions/signal/setup-entry.d.ts +2 -2
- package/dist/extensions/skill-workshop/api.d.ts +2 -2
- package/dist/extensions/skill-workshop/index.d.ts +1 -1
- package/dist/extensions/speech-core/api.d.ts +3 -3
- package/dist/extensions/speech-core/runtime-api.d.ts +2 -2
- package/dist/extensions/stepfun/index.d.ts +1 -1
- package/dist/extensions/synthetic/index.d.ts +1 -1
- package/dist/extensions/talk-voice/api.d.ts +2 -2
- package/dist/extensions/talk-voice/index.d.ts +1 -1
- package/dist/extensions/tavily/index.d.ts +1 -1
- package/dist/extensions/telegram/api.d.ts +5 -5
- package/dist/extensions/telegram/channel-plugin-api.d.ts +2 -2
- package/dist/extensions/telegram/contract-api.d.ts +1 -1
- package/dist/extensions/telegram/index.d.ts +2 -2
- package/dist/extensions/telegram/runtime-api.d.ts +5 -5
- package/dist/extensions/telegram/setup-entry.d.ts +2 -2
- package/dist/extensions/telegram/setup-plugin-api.d.ts +1 -1
- package/dist/extensions/tencent/index.d.ts +1 -1
- package/dist/extensions/tencent/provider-discovery.d.ts +1 -1
- package/dist/extensions/thread-ownership/api.d.ts +2 -2
- package/dist/extensions/thread-ownership/index.d.ts +1 -1
- package/dist/extensions/together/index.d.ts +1 -1
- package/dist/extensions/tokenjuice/index.d.ts +1 -1
- package/dist/extensions/tokenjuice/tool-result-middleware.d.ts +1 -1
- package/dist/extensions/tts-local-cli/index.d.ts +1 -1
- package/dist/extensions/tts-local-cli/speech-provider.d.ts +1 -1
- package/dist/extensions/venice/index.d.ts +1 -1
- package/dist/extensions/venice/stream.d.ts +1 -1
- package/dist/extensions/vercel-ai-gateway/index.d.ts +1 -1
- package/dist/extensions/vercel-ai-gateway/thinking.d.ts +1 -1
- package/dist/extensions/video-generation-core/api.d.ts +3 -3
- package/dist/extensions/video-generation-core/runtime-api.d.ts +1 -1
- package/dist/extensions/vllm/api.d.ts +1 -1
- package/dist/extensions/vllm/index.d.ts +1 -1
- package/dist/extensions/vllm/stream.d.ts +1 -1
- package/dist/extensions/volcengine/index.d.ts +1 -1
- package/dist/extensions/volcengine/provider-discovery.d.ts +1 -1
- package/dist/extensions/volcengine/speech-provider.d.ts +1 -1
- package/dist/extensions/voyage/embedding-batch.d.ts +1 -1
- package/dist/extensions/voyage/embedding-provider.d.ts +1 -1
- package/dist/extensions/voyage/index.d.ts +1 -1
- package/dist/extensions/voyage/memory-embedding-adapter.d.ts +1 -1
- package/dist/extensions/vydra/index.d.ts +1 -1
- package/dist/extensions/vydra/speech-provider.d.ts +1 -1
- package/dist/extensions/web-readability/index.d.ts +1 -1
- package/dist/extensions/webhooks/api.d.ts +2 -2
- package/dist/extensions/webhooks/index.d.ts +1 -1
- package/dist/extensions/webhooks/runtime-api.d.ts +2 -2
- package/dist/extensions/xai/api.d.ts +1 -1
- package/dist/extensions/xai/index.d.ts +1 -1
- package/dist/extensions/xai/provider-contract-api.d.ts +1 -1
- package/dist/extensions/xai/provider-discovery.d.ts +1 -1
- package/dist/extensions/xai/provider-models.d.ts +1 -1
- package/dist/extensions/xai/provider-policy-api.d.ts +1 -1
- package/dist/extensions/xai/realtime-transcription-provider.d.ts +1 -1
- package/dist/extensions/xai/setup-api.d.ts +1 -1
- package/dist/extensions/xai/speech-provider.d.ts +1 -1
- package/dist/extensions/xai/stream.d.ts +1 -1
- package/dist/extensions/xai/xai-oauth.d.ts +1 -1
- package/dist/extensions/xiaomi/index.d.ts +1 -1
- package/dist/extensions/xiaomi/speech-provider.d.ts +1 -1
- package/dist/extensions/xiaomi/stream.d.ts +1 -1
- package/dist/extensions/xiaomi/thinking.d.ts +1 -1
- package/dist/extensions/zai/index.d.ts +1 -1
- package/dist/gateway/protocol/index.d.ts +1 -1
- package/dist/{gateway-runtime-BRfyNjsE.d.ts → gateway-runtime-BcWCu-QH.d.ts} +2 -2
- package/dist/{gemini-cli-provider-2RAshvHZ.d.ts → gemini-cli-provider-DtyOwxHA.d.ts} +1 -1
- package/dist/{hook-runtime-BBONf8H3.d.ts → hook-runtime-Cms52qXe.d.ts} +0 -1
- package/dist/{http-registry-DydRvucX.d.ts → http-registry-D3Cdok5J.d.ts} +2 -2
- package/dist/{image-generation-runtime-CYSxJAy2.d.ts → image-generation-runtime-DhYgou3B.d.ts} +1 -1
- package/dist/{index-BFhfE749.d.ts → index-ChRAMnH9.d.ts} +83 -83
- package/dist/index.d.ts +1 -1
- package/dist/{interactive-dispatch-CNUK2pZt.d.ts → interactive-dispatch-B-NLdr77.d.ts} +1 -1
- package/dist/{interactive-dispatch-DuuOPzwD.d.ts → interactive-dispatch-B66zssEF.d.ts} +1 -1
- package/dist/{loader-BKopCdPY.d.ts → loader-Ben-RYnp.d.ts} +3 -3
- package/dist/{manager-BrS--u6G.d.ts → manager-BDWyUfHJ.d.ts} +3 -3
- package/dist/{manager.core-BRd2_lqA.d.ts → manager-CuzV3XAs.d.ts} +8 -1
- package/dist/{memory-core-host-engine-storage-DsNomsw4.d.ts → memory-core-host-engine-storage-BAq5Rf51.d.ts} +1 -1
- package/dist/{memory-embedding-adapter-Ba-UYpWr.d.ts → memory-embedding-adapter-Cv87QsD0.d.ts} +1 -1
- package/dist/{migration-DOuQeJ7P.d.ts → migration-BOkhOT4K.d.ts} +1 -1
- package/dist/{model-eEpAu59T.d.ts → model-B4s-pIp8.d.ts} +1 -1
- package/dist/{models-DepHj1G3.d.ts → models-6NYWdsJM.d.ts} +1 -1
- package/dist/{openai-codex-provider-LwMbKOK1.d.ts → openai-codex-provider-CByFL0Au.d.ts} +1 -1
- package/dist/{openai-provider-F0nEHs4l.d.ts → openai-provider-DbEgHbfx.d.ts} +1 -1
- package/dist/{pairing-store-Cfy_zHzi.d.ts → pairing-challenge-EwSQYSud.d.ts} +34 -34
- package/dist/{plugin-BW5kVZrl.d.ts → plugin-BehbkTVr.d.ts} +1 -1
- package/dist/{plugin-entry-oVFfOYI7.d.ts → plugin-entry-feg_rkHL.d.ts} +1 -1
- package/dist/{plugin-runtime-Bx8TuYU5.d.ts → plugin-runtime-paqzXBLJ.d.ts} +2 -2
- package/dist/plugin-sdk/.boundary-entry-shims.stamp +1 -1
- package/dist/plugin-sdk/scripts/lib/plugin-sdk-doc-metadata.d.ts +107 -0
- package/dist/plugin-sdk/src/commands/doctor.types.d.ts +1 -0
- package/dist/plugin-sdk/src/compat/legacy-names.d.ts +1 -1
- package/dist/plugin-sdk/src/plugins/manifest.d.ts +1 -1
- package/dist/{plugin-service-W6IMgQjk.d.ts → plugin-service-C0JwHvDr.d.ts} +2 -2
- package/dist/plugins/build-smoke-entry.d.ts +2 -2
- package/dist/plugins/loader.d.ts +1 -1
- package/dist/plugins/provider-discovery.runtime.d.ts +1 -1
- package/dist/plugins/provider-runtime.runtime.d.ts +1 -1
- package/dist/{prompt-overlay-CaXYKmjI.d.ts → prompt-overlay-qLjnjnSK.d.ts} +2 -2
- package/dist/{provider-api-key-auth-DOu4GJBt.d.ts → provider-api-key-auth-CB8Tllmv.d.ts} +1 -1
- package/dist/{provider-auth-result-CO9yqIJ_.d.ts → provider-auth-result-Xze96yVn.d.ts} +1 -1
- package/dist/{provider-catalog-runtime-f_87intf.d.ts → provider-catalog-runtime-Bo88wUpB.d.ts} +3 -3
- package/dist/{provider-catalog-shared-CXZnqdym.d.ts → provider-catalog-shared-rq7-Hkyg.d.ts} +1 -1
- package/dist/{provider-hook-runtime-o2J0hqhZ.d.ts → provider-hook-runtime-bhgA4zLg.d.ts} +1 -1
- package/dist/{provider-model-shared-CsZtXE0W.d.ts → provider-model-shared-Bv_vhH6i.d.ts} +1 -1
- package/dist/{provider-models-BbjvK4gF.d.ts → provider-models-DzbXgGDD.d.ts} +2 -2
- package/dist/{provider-policy-BwZykYqb.d.ts → provider-policy-Cx2IwhQ-.d.ts} +1 -1
- package/dist/{provider-registration-CytP1d9Y.d.ts → provider-registration-D4DJp8vF.d.ts} +1 -1
- package/dist/{provider-registry-Dilmwbu_.d.ts → provider-registry-BQ5DzWBt.d.ts} +1 -1
- package/dist/{provider-registry-DgEFqiK2.d.ts → provider-registry-BrtezAkH.d.ts} +1 -1
- package/dist/{provider-registry-Ct1dA5S3.d.ts → provider-registry-DG571X-9.d.ts} +1 -1
- package/dist/{provider-runtime-ChO01VYW.d.ts → provider-runtime-BJlV-8wH.d.ts} +3 -3
- package/dist/{provider-self-hosted-setup-DCeKR5ZH.d.ts → provider-self-hosted-setup-C5mGtzPJ.d.ts} +1 -1
- package/dist/{provider-stream-CrWY0s8C.d.ts → provider-stream-D-MYyujL.d.ts} +1 -1
- package/dist/{provider-stream-shared-CgnrFxMf.d.ts → provider-stream-shared-B6pQNRl4.d.ts} +1 -1
- package/dist/{providers.runtime-CiX4UePR.d.ts → providers.runtime-B9kfx6q8.d.ts} +2 -2
- package/dist/{realtime-transcription-abdbHd8R.d.ts → realtime-transcription-CAC89bnc.d.ts} +1 -1
- package/dist/{realtime-transcription-provider-CPK7XYp9.d.ts → realtime-transcription-provider-ChYQDNhv.d.ts} +1 -1
- package/dist/{realtime-transcription-provider-Dg5t03mY.d.ts → realtime-transcription-provider-DTYtMlJi.d.ts} +1 -1
- package/dist/{realtime-transcription-provider-DC2AscwX.d.ts → realtime-transcription-provider-DirKeOjA.d.ts} +1 -1
- package/dist/{realtime-transcription-provider-UesXbEwy.d.ts → realtime-transcription-provider-QHEXWhCJ.d.ts} +1 -1
- package/dist/{realtime-voice-D1aiUBBt.d.ts → realtime-voice-Bm0GBqnc.d.ts} +1 -1
- package/dist/{realtime-voice-provider-D5DZsLRA.d.ts → realtime-voice-provider-NcUDkuN4.d.ts} +1 -1
- package/dist/{register.runtime-CAW8ORTZ.d.ts → register.runtime-CXLFfKiU.d.ts} +1 -1
- package/dist/{registry-paAkM8At.d.ts → registry-DXBS27qE.d.ts} +5 -5
- package/dist/{registry-types-DSJvRhBP.d.ts → registry-types-DlO771W4.d.ts} +4 -4
- package/dist/{runtime-D21vC5Bd.d.ts → runtime-C3k-ZByi.d.ts} +1 -1
- package/dist/{runtime-api-DTdQMFV-.d.ts → runtime-api-C7ToEUFX2.d.ts} +2 -2
- package/dist/{runtime-api.actions-CClxRuYx.d.ts → runtime-api.actions-CzDO06T7.d.ts} +1 -1
- package/dist/{runtime-api.send-wXeDllRu.d.ts → runtime-api.send-C_MjuzGA.d.ts} +1 -1
- package/dist/{runtime-doctor-DVYwKwIT.d.ts → runtime-doctor-_yVIDUi3.d.ts} +1 -0
- package/dist/{runtime-taskflow-BYZsMg1i.d.ts → runtime-taskflow-PDIujF9q.d.ts} +4 -4
- package/dist/{send-DZ4YhPHH.d.ts → send-CTDEXMPp.d.ts} +1 -1
- package/dist/{send-D95RJNJM.d.ts → send-DaFuA5cD.d.ts} +1 -0
- package/dist/{send.types-_f4omMzG.d.ts → send.types-DU1uiiR9.d.ts} +1 -0
- package/dist/server-close.runtime.d.ts +1 -1
- package/dist/{shared-DdLk0hA6.d.ts → shared-eYKaB8rP.d.ts} +1 -1
- package/dist/{simple-completion-runtime-D3vYpwbZ.d.ts → simple-completion-runtime-D3SeEaWT.d.ts} +1 -1
- package/dist/{speech-Cf7RmLix.d.ts → speech-Dbhvhbdq.d.ts} +1 -1
- package/dist/{speech-core-BWd27MY5.d.ts → speech-core-8X_D3HLF.d.ts} +1 -1
- package/dist/{speech-provider-MoJPg1gB.d.ts → speech-provider-BYm63_co.d.ts} +1 -1
- package/dist/{speech-provider-hT52upCX.d.ts → speech-provider-BtJxZzKb.d.ts} +1 -1
- package/dist/{speech-provider-DnyUKHSU.d.ts → speech-provider-CbneUhtJ.d.ts} +1 -1
- package/dist/{speech-provider-Csdu9pW1.d.ts → speech-provider-DOAvAvlS.d.ts} +1 -1
- package/dist/{speech-provider-Dj7nG9do.d.ts → speech-provider-DdfnOmrC.d.ts} +1 -1
- package/dist/{speech-provider-D4v4Jv2s.d.ts → speech-provider-ptNkD7Yf.d.ts} +1 -1
- package/dist/{stream-C5ugQLbM.d.ts → stream-BHkpDd1i.d.ts} +1 -1
- package/dist/{stream-CDDV9-Wq.d.ts → stream-C6huJP_D.d.ts} +1 -1
- package/dist/{stream-D3ZhJVM7.d.ts → stream-D4Pmcj3t.d.ts} +1 -1
- package/dist/{stream-BVr9Y5Fk.d.ts → stream-DpSe6hAE.d.ts} +1 -1
- package/dist/{stream-Dhh55ncO.d.ts → stream-DrRUuJ8m.d.ts} +1 -1
- package/dist/{stream-wrappers-PZu4IPG2.d.ts → stream-wrappers-DLxwmPDI.d.ts} +2 -2
- package/dist/{targets-CdiGPFGr.d.ts → targets-CZhlhiDN.d.ts} +1 -1
- package/dist/{targets-ZJ1ZRt5L.d.ts → targets-HPytm6Z8.d.ts} +1 -1
- package/dist/task-registry-control.runtime.d.ts +1 -1
- package/dist/{test-fixtures-xgg7UsEw.d.ts → test-fixtures-HY6a4nTW.d.ts} +0 -1
- package/dist/{thinking-policy-CAsew9b-.d.ts → thinking-policy-wJH8MNPa.d.ts} +1 -1
- package/dist/{tool-plugin-B18esZUX.d.ts → tool-plugin-CmXn59FQ.d.ts} +2 -2
- package/dist/{tool-split-_O9ZqSIU.d.ts → tool-split-CaXOLBeI.d.ts} +1 -1
- package/dist/{transport-stream-Piw1coFu.d.ts → transport-stream-lU_hAKuv.d.ts} +1 -1
- package/dist/{typed-cases-v8PtmO3g.d.ts → typed-cases-BYRVKA1F.d.ts} +1 -1
- package/dist/{types--mFsqUEV.d.ts → types-CD1xwSld.d.ts} +1 -1
- package/dist/{types-CcjGrBF52.d.ts → types-Zj4Bq9h-2.d.ts} +3 -3
- package/dist/{types.public-rJrhXChy.d.ts → types.public-B0VjJLe9.d.ts} +1 -1
- package/dist/{video-generation-runtime-CA2LiNwu.d.ts → video-generation-runtime-DsFG7djU.d.ts} +1 -1
- package/dist/{video-model-catalog-BJ9GJKrw.d.ts → video-model-catalog-CfhC-Mol.d.ts} +1 -1
- package/dist/{webhook-targets-B_syT8-q.d.ts → webhook-targets-DqetRJVn.d.ts} +1 -1
- package/dist/{zod-schema.core-Bwbyyd_y.d.ts → zod-schema.core-BhLPa6BF.d.ts} +2 -2
- package/npm-shrinkwrap.json +2 -2
- package/package.json +1 -1
- package/dist/manager-DWN3qo90.d.ts +0 -10
- package/dist/reply-runtime-DUv2dRp3.d.ts +0 -34
- package/dist/server-plugins-BVVgDSdq.d.ts +0 -1
- package/dist/subagent-registry-BVVgDSdq.d.ts +0 -1
- package/dist/subagent-registry-read-BVVgDSdq.d.ts +0 -1
- package/dist/test-support-BVVgDSdq.d.ts +0 -1
- /package/dist/{models-D6WT5XG82.d.ts → models-D6WT5XG8.d.ts} +0 -0
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
import{$ as e,T as t,it as n,p as r,rt as i,tt as a,v as o}from"./index-BEC-6JL5.js";import{i as s,n as c,r as l,t as u}from"./skills-shared-sMjN-BZW.js";function d(e){return e?r(e,window.location.href):null}function f(e){!(e instanceof HTMLDialogElement)||e.open||(e.isConnected?e.showModal():queueMicrotask(()=>{e.isConnected&&!e.open&&e.showModal()}))}var p=[{id:`all`,label:`All`},{id:`ready`,label:`Ready`},{id:`needs-setup`,label:`Needs Setup`},{id:`disabled`,label:`Disabled`}];function m(e,t){switch(t){case`all`:return!0;case`ready`:return!e.disabled&&e.eligible;case`needs-setup`:return!e.disabled&&!e.eligible;case`disabled`:return e.disabled}throw Error(`Unsupported skills status filter`)}function h(e){return e.disabled?`muted`:e.eligible?`ok`:`warn`}function g(t){let r=t.report?.skills??[],o={all:r.length,ready:0,"needs-setup":0,disabled:0};for(let e of r)e.disabled?o.disabled++:e.eligible?o.ready++:o[`needs-setup`]++;let c=t.statusFilter===`all`?r:r.filter(e=>m(e,t.statusFilter)),l=e(t.filter),u=l?c.filter(t=>e([t.name,t.description,t.source].join(` `)).includes(l)):c,d=s(u),f=t.detailKey?r.find(e=>e.skillKey===t.detailKey)??null:null;return n`
|
|
2
|
+
<section class="card">
|
|
3
|
+
<div class="row" style="justify-content: space-between;">
|
|
4
|
+
<div>
|
|
5
|
+
<div class="card-title">Skills</div>
|
|
6
|
+
<div class="card-sub">Installed skills and their status.</div>
|
|
7
|
+
</div>
|
|
8
|
+
<button
|
|
9
|
+
class="btn"
|
|
10
|
+
?disabled=${t.loading||!t.connected}
|
|
11
|
+
@click=${t.onRefresh}
|
|
12
|
+
>
|
|
13
|
+
${t.loading?a(`common.loading`):a(`common.refresh`)}
|
|
14
|
+
</button>
|
|
15
|
+
</div>
|
|
16
|
+
|
|
17
|
+
<div class="agent-tabs" style="margin-top: 14px;">
|
|
18
|
+
${p.map(e=>n`
|
|
19
|
+
<button
|
|
20
|
+
class="agent-tab ${t.statusFilter===e.id?`active`:``}"
|
|
21
|
+
@click=${()=>t.onStatusFilterChange(e.id)}
|
|
22
|
+
>
|
|
23
|
+
${e.label}<span class="agent-tab-count">${o[e.id]}</span>
|
|
24
|
+
</button>
|
|
25
|
+
`)}
|
|
26
|
+
</div>
|
|
27
|
+
|
|
28
|
+
<div
|
|
29
|
+
class="filters"
|
|
30
|
+
style="display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 12px;"
|
|
31
|
+
>
|
|
32
|
+
<label class="field" style="flex: 1; min-width: 180px;">
|
|
33
|
+
<input
|
|
34
|
+
.value=${t.filter}
|
|
35
|
+
@input=${e=>t.onFilterChange(e.target.value)}
|
|
36
|
+
placeholder="Filter installed skills"
|
|
37
|
+
autocomplete="off"
|
|
38
|
+
name="skills-filter"
|
|
39
|
+
/>
|
|
40
|
+
</label>
|
|
41
|
+
<div class="muted">${u.length} shown</div>
|
|
42
|
+
</div>
|
|
43
|
+
|
|
44
|
+
<div style="margin-top: 16px; border-top: 1px solid var(--border); padding-top: 16px;">
|
|
45
|
+
<div style="display: flex; align-items: center; gap: 12px; margin-bottom: 12px;">
|
|
46
|
+
<div style="font-weight: 600;">ClawHub</div>
|
|
47
|
+
<div class="muted" style="font-size: 13px;">
|
|
48
|
+
Search and install skills from the registry
|
|
49
|
+
</div>
|
|
50
|
+
</div>
|
|
51
|
+
<div style="display: flex; align-items: center; gap: 12px; flex-wrap: wrap;">
|
|
52
|
+
<label class="field" style="flex: 1; min-width: 180px;">
|
|
53
|
+
<input
|
|
54
|
+
.value=${t.clawhubQuery}
|
|
55
|
+
@input=${e=>t.onClawHubQueryChange(e.target.value)}
|
|
56
|
+
placeholder="Search ClawHub skills…"
|
|
57
|
+
autocomplete="off"
|
|
58
|
+
name="clawhub-search"
|
|
59
|
+
/>
|
|
60
|
+
</label>
|
|
61
|
+
${t.clawhubSearchLoading?n`<span class="muted">Searching…</span>`:i}
|
|
62
|
+
</div>
|
|
63
|
+
${t.clawhubSearchError?n`<div class="callout danger" style="margin-top: 8px;">
|
|
64
|
+
${t.clawhubSearchError}
|
|
65
|
+
</div>`:i}
|
|
66
|
+
${t.clawhubInstallMessage?n`<div
|
|
67
|
+
class="callout ${t.clawhubInstallMessage.kind===`error`?`danger`:`success`}"
|
|
68
|
+
style="margin-top: 8px;"
|
|
69
|
+
>
|
|
70
|
+
${t.clawhubInstallMessage.text}
|
|
71
|
+
</div>`:i}
|
|
72
|
+
${_(t)}
|
|
73
|
+
</div>
|
|
74
|
+
|
|
75
|
+
${t.error?n`<div class="callout danger" style="margin-top: 12px;">${t.error}</div>`:i}
|
|
76
|
+
${u.length===0?n`
|
|
77
|
+
<div class="muted" style="margin-top: 16px">
|
|
78
|
+
${!t.connected&&!t.report?`Not connected to gateway.`:`No skills found.`}
|
|
79
|
+
</div>
|
|
80
|
+
`:n`
|
|
81
|
+
<div class="agent-skills-groups" style="margin-top: 16px;">
|
|
82
|
+
${d.map(e=>n`
|
|
83
|
+
<details class="agent-skills-group" open>
|
|
84
|
+
<summary class="agent-skills-header">
|
|
85
|
+
<span>${e.label}</span>
|
|
86
|
+
<span class="muted">${e.skills.length}</span>
|
|
87
|
+
</summary>
|
|
88
|
+
<div class="list skills-grid">
|
|
89
|
+
${e.skills.map(e=>y(e,t))}
|
|
90
|
+
</div>
|
|
91
|
+
</details>
|
|
92
|
+
`)}
|
|
93
|
+
</div>
|
|
94
|
+
`}
|
|
95
|
+
</section>
|
|
96
|
+
|
|
97
|
+
${f?b(f,t):i}
|
|
98
|
+
${t.clawhubDetailSlug?v(t):i}
|
|
99
|
+
`}function _(e){let r=e.clawhubResults;return r?r.length===0?n`<div class="muted" style="margin-top: 8px;">No skills found on ClawHub.</div>`:n`
|
|
100
|
+
<div class="list" style="margin-top: 8px;">
|
|
101
|
+
${r.map(r=>n`
|
|
102
|
+
<div
|
|
103
|
+
class="list-item list-item-clickable"
|
|
104
|
+
@click=${()=>e.onClawHubDetailOpen(r.slug)}
|
|
105
|
+
>
|
|
106
|
+
<div class="list-main">
|
|
107
|
+
<div class="list-title">${r.displayName}</div>
|
|
108
|
+
<div class="list-sub">${r.summary?t(r.summary,120):r.slug}</div>
|
|
109
|
+
</div>
|
|
110
|
+
<div class="list-meta" style="display: flex; align-items: center; gap: 8px;">
|
|
111
|
+
${r.version?n`<span class="muted" style="font-size: 12px;">v${r.version}</span>`:i}
|
|
112
|
+
<button
|
|
113
|
+
class="btn btn--sm"
|
|
114
|
+
?disabled=${e.clawhubInstallSlug!==null}
|
|
115
|
+
@click=${t=>{t.stopPropagation(),e.onClawHubInstall(r.slug)}}
|
|
116
|
+
>
|
|
117
|
+
${e.clawhubInstallSlug===r.slug?`Installing…`:`Install`}
|
|
118
|
+
</button>
|
|
119
|
+
</div>
|
|
120
|
+
</div>
|
|
121
|
+
`)}
|
|
122
|
+
</div>
|
|
123
|
+
`:i}function v(e){let t=e.clawhubDetail;return n`
|
|
124
|
+
<dialog
|
|
125
|
+
class="md-preview-dialog"
|
|
126
|
+
${o(f)}
|
|
127
|
+
@click=${e=>{let t=e.currentTarget;e.target===t&&t.close()}}
|
|
128
|
+
@close=${e.onClawHubDetailClose}
|
|
129
|
+
>
|
|
130
|
+
<div class="md-preview-dialog__panel">
|
|
131
|
+
<div class="md-preview-dialog__header">
|
|
132
|
+
<div class="md-preview-dialog__title">
|
|
133
|
+
${t?.skill?.displayName??e.clawhubDetailSlug}
|
|
134
|
+
</div>
|
|
135
|
+
<button
|
|
136
|
+
class="btn btn--sm"
|
|
137
|
+
@click=${e=>{e.currentTarget.closest(`dialog`)?.close()}}
|
|
138
|
+
>
|
|
139
|
+
Close
|
|
140
|
+
</button>
|
|
141
|
+
</div>
|
|
142
|
+
<div class="md-preview-dialog__body" style="display: grid; gap: 16px;">
|
|
143
|
+
${e.clawhubDetailLoading?n`<div class="muted">${a(`common.loading`)}</div>`:e.clawhubDetailError?n`<div class="callout danger">${e.clawhubDetailError}</div>`:t?.skill?n`
|
|
144
|
+
<div style="font-size: 14px; line-height: 1.5;">
|
|
145
|
+
${t.skill.summary??``}
|
|
146
|
+
</div>
|
|
147
|
+
${t.owner?.displayName?n`<div class="muted" style="font-size: 13px;">
|
|
148
|
+
By
|
|
149
|
+
${t.owner.displayName}${t.owner.handle?n` (@${t.owner.handle})`:i}
|
|
150
|
+
</div>`:i}
|
|
151
|
+
${t.latestVersion?n`<div class="muted" style="font-size: 13px;">
|
|
152
|
+
Latest: v${t.latestVersion.version}
|
|
153
|
+
</div>`:i}
|
|
154
|
+
${t.latestVersion?.changelog?n`<div
|
|
155
|
+
style="font-size: 13px; border-top: 1px solid var(--border); padding-top: 12px; white-space: pre-wrap;"
|
|
156
|
+
>
|
|
157
|
+
${t.latestVersion.changelog}
|
|
158
|
+
</div>`:i}
|
|
159
|
+
${t.metadata?.os?n`<div class="muted" style="font-size: 12px;">
|
|
160
|
+
Platforms: ${t.metadata.os.join(`, `)}
|
|
161
|
+
</div>`:i}
|
|
162
|
+
<button
|
|
163
|
+
class="btn primary"
|
|
164
|
+
?disabled=${e.clawhubInstallSlug!==null}
|
|
165
|
+
@click=${()=>{e.clawhubDetailSlug&&e.onClawHubInstall(e.clawhubDetailSlug)}}
|
|
166
|
+
>
|
|
167
|
+
${e.clawhubInstallSlug===e.clawhubDetailSlug?`Installing…`:`Install ${t.skill.displayName}`}
|
|
168
|
+
</button>
|
|
169
|
+
`:n`<div class="muted">Skill not found.</div>`}
|
|
170
|
+
</div>
|
|
171
|
+
</div>
|
|
172
|
+
</dialog>
|
|
173
|
+
`}function y(e,r){let a=r.busyKey===e.skillKey;return n`
|
|
174
|
+
<div class="list-item list-item-clickable" @click=${()=>r.onDetailOpen(e.skillKey)}>
|
|
175
|
+
<div class="list-main">
|
|
176
|
+
<div class="list-title" style="display: flex; align-items: center; gap: 8px;">
|
|
177
|
+
<span class="statusDot ${h(e)}"></span>
|
|
178
|
+
${e.emoji?n`<span>${e.emoji}</span>`:i}
|
|
179
|
+
<span>${e.name}</span>
|
|
180
|
+
</div>
|
|
181
|
+
<div class="list-sub">${t(e.description,140)}</div>
|
|
182
|
+
</div>
|
|
183
|
+
<div
|
|
184
|
+
class="list-meta"
|
|
185
|
+
style="display: flex; align-items: center; justify-content: flex-end; gap: 10px;"
|
|
186
|
+
>
|
|
187
|
+
<label class="skill-toggle-wrap" @click=${e=>e.stopPropagation()}>
|
|
188
|
+
<input
|
|
189
|
+
type="checkbox"
|
|
190
|
+
class="skill-toggle"
|
|
191
|
+
.checked=${!e.disabled}
|
|
192
|
+
?disabled=${a}
|
|
193
|
+
@change=${t=>{t.stopPropagation(),r.onToggle(e.skillKey,e.disabled)}}
|
|
194
|
+
/>
|
|
195
|
+
</label>
|
|
196
|
+
</div>
|
|
197
|
+
</div>
|
|
198
|
+
`}function b(e,t){let r=t.busyKey===e.skillKey,a=t.edits[e.skillKey]??``,s=t.messages[e.skillKey]??null,p=e.install.length>0&&e.missing.bins.length>0,m=!!(e.bundled&&e.source!==`daocore-bundled`),g=u(e),_=c(e);return n`
|
|
199
|
+
<dialog
|
|
200
|
+
class="md-preview-dialog"
|
|
201
|
+
${o(f)}
|
|
202
|
+
@click=${e=>{let t=e.currentTarget;e.target===t&&t.close()}}
|
|
203
|
+
@close=${t.onDetailClose}
|
|
204
|
+
>
|
|
205
|
+
<div class="md-preview-dialog__panel">
|
|
206
|
+
<div class="md-preview-dialog__header">
|
|
207
|
+
<div
|
|
208
|
+
class="md-preview-dialog__title"
|
|
209
|
+
style="display: flex; align-items: center; gap: 8px;"
|
|
210
|
+
>
|
|
211
|
+
<span class="statusDot ${h(e)}"></span>
|
|
212
|
+
${e.emoji?n`<span style="font-size: 18px;">${e.emoji}</span>`:i}
|
|
213
|
+
<span>${e.name}</span>
|
|
214
|
+
</div>
|
|
215
|
+
<button
|
|
216
|
+
class="btn btn--sm"
|
|
217
|
+
@click=${e=>{e.currentTarget.closest(`dialog`)?.close()}}
|
|
218
|
+
>
|
|
219
|
+
Close
|
|
220
|
+
</button>
|
|
221
|
+
</div>
|
|
222
|
+
<div class="md-preview-dialog__body" style="display: grid; gap: 16px;">
|
|
223
|
+
<div>
|
|
224
|
+
<div style="font-size: 14px; line-height: 1.5; color: var(--text);">
|
|
225
|
+
${e.description}
|
|
226
|
+
</div>
|
|
227
|
+
${l({skill:e,showBundledBadge:m})}
|
|
228
|
+
</div>
|
|
229
|
+
|
|
230
|
+
${g.length>0?n`
|
|
231
|
+
<div
|
|
232
|
+
class="callout"
|
|
233
|
+
style="border-color: var(--warn-subtle); background: var(--warn-subtle); color: var(--warn);"
|
|
234
|
+
>
|
|
235
|
+
<div style="font-weight: 600; margin-bottom: 4px;">缺少依赖</div>
|
|
236
|
+
<div>${g.join(`, `)}</div>
|
|
237
|
+
</div>
|
|
238
|
+
`:i}
|
|
239
|
+
${_.length>0?n`
|
|
240
|
+
<div class="muted" style="font-size: 13px;">Reason: ${_.join(`, `)}</div>
|
|
241
|
+
`:i}
|
|
242
|
+
|
|
243
|
+
<div style="display: flex; align-items: center; gap: 12px;">
|
|
244
|
+
<label class="skill-toggle-wrap">
|
|
245
|
+
<input
|
|
246
|
+
type="checkbox"
|
|
247
|
+
class="skill-toggle"
|
|
248
|
+
.checked=${!e.disabled}
|
|
249
|
+
?disabled=${r}
|
|
250
|
+
@change=${()=>t.onToggle(e.skillKey,e.disabled)}
|
|
251
|
+
/>
|
|
252
|
+
</label>
|
|
253
|
+
<span style="font-size: 13px; font-weight: 500;">
|
|
254
|
+
${e.disabled?`Disabled`:`Enabled`}
|
|
255
|
+
</span>
|
|
256
|
+
${p?n`<button
|
|
257
|
+
class="btn"
|
|
258
|
+
?disabled=${r}
|
|
259
|
+
@click=${()=>t.onInstall(e.skillKey,e.name,e.install[0].id)}
|
|
260
|
+
>
|
|
261
|
+
${r?`Installing…`:e.install[0].label}
|
|
262
|
+
</button>`:i}
|
|
263
|
+
</div>
|
|
264
|
+
|
|
265
|
+
${s?n`<div class="callout ${s.kind===`error`?`danger`:`success`}">
|
|
266
|
+
${s.message}
|
|
267
|
+
</div>`:i}
|
|
268
|
+
${e.primaryEnv?n`
|
|
269
|
+
<div style="display: grid; gap: 8px;">
|
|
270
|
+
<div class="field">
|
|
271
|
+
<span
|
|
272
|
+
>API key
|
|
273
|
+
<span class="muted" style="font-weight: normal; font-size: 0.88em;"
|
|
274
|
+
>(${e.primaryEnv})</span
|
|
275
|
+
></span
|
|
276
|
+
>
|
|
277
|
+
<input
|
|
278
|
+
type="password"
|
|
279
|
+
.value=${a}
|
|
280
|
+
@input=${n=>t.onEdit(e.skillKey,n.target.value)}
|
|
281
|
+
/>
|
|
282
|
+
</div>
|
|
283
|
+
${(()=>{let t=d(e.homepage);return t?n`<div class="muted" style="font-size: 13px;">
|
|
284
|
+
Get your key:
|
|
285
|
+
<a href="${t}" target="_blank" rel="noopener noreferrer"
|
|
286
|
+
>${e.homepage}</a
|
|
287
|
+
>
|
|
288
|
+
</div>`:i})()}
|
|
289
|
+
<button
|
|
290
|
+
class="btn primary"
|
|
291
|
+
?disabled=${r}
|
|
292
|
+
@click=${()=>t.onSaveKey(e.skillKey)}
|
|
293
|
+
>
|
|
294
|
+
Save key
|
|
295
|
+
</button>
|
|
296
|
+
</div>
|
|
297
|
+
`:i}
|
|
298
|
+
|
|
299
|
+
<div
|
|
300
|
+
style="border-top: 1px solid var(--border); padding-top: 12px; display: grid; gap: 6px; font-size: 12px; color: var(--muted);"
|
|
301
|
+
>
|
|
302
|
+
<div><span style="font-weight: 600;">Source:</span> ${e.source}</div>
|
|
303
|
+
<div style="font-family: var(--mono); word-break: break-all;">${e.filePath}</div>
|
|
304
|
+
${(()=>{let t=d(e.homepage);return t?n`<div>
|
|
305
|
+
<a href="${t}" target="_blank" rel="noopener noreferrer"
|
|
306
|
+
>${e.homepage}</a
|
|
307
|
+
>
|
|
308
|
+
</div>`:i})()}
|
|
309
|
+
</div>
|
|
310
|
+
</div>
|
|
311
|
+
</div>
|
|
312
|
+
</dialog>
|
|
313
|
+
`}export{g as renderSkills};
|
|
314
|
+
//# sourceMappingURL=skills-CIQu4JU-.js.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import{it as e,rt as t}from"./index-BEC-6JL5.js";var n=[{id:`workspace`,label:`Workspace Skills`,sources:[`daocore-workspace`]},{id:`built-in`,label:`Built-in Skills`,sources:[`daocore-bundled`]},{id:`installed`,label:`Installed Skills`,sources:[`daocore-managed`]},{id:`extra`,label:`Extra Skills`,sources:[`daocore-extra`]}];function r(e){let t=new Map;for(let e of n)t.set(e.id,{id:e.id,label:e.label,skills:[]});let r=n.find(e=>e.id===`built-in`),i={id:`other`,label:`Other Skills`,skills:[]};for(let a of e){let e=a.bundled?r:n.find(e=>e.sources.includes(a.source));e?t.get(e.id)?.skills.push(a):i.skills.push(a)}let a=n.map(e=>t.get(e.id)).filter(e=>!!(e&&e.skills.length>0));return i.skills.length>0&&a.push(i),a}function i(e){return[...e.missing.bins.map(e=>`bin:${e}`),...e.missing.env.map(e=>`env:${e}`),...e.missing.config.map(e=>`config:${e}`),...e.missing.os.map(e=>`os:${e}`)]}function a(e){let t=[];return e.disabled&&t.push(`disabled`),e.blockedByAllowlist&&t.push(`blocked by allowlist`),t}function o(n){let r=n.skill,i=!!n.showBundledBadge;return e`
|
|
2
|
+
<div class="chip-row" style="margin-top: 6px;">
|
|
3
|
+
<span class="chip">${r.source}</span>
|
|
4
|
+
${i?e` <span class="chip">bundled</span> `:t}
|
|
5
|
+
<span class="chip ${r.eligible?`chip-ok`:`chip-warn`}">
|
|
6
|
+
${r.eligible?`eligible`:`blocked`}
|
|
7
|
+
</span>
|
|
8
|
+
${r.disabled?e` <span class="chip chip-warn">disabled</span> `:t}
|
|
9
|
+
</div>
|
|
10
|
+
`}export{r as i,a as n,o as r,i as t};
|
|
11
|
+
//# sourceMappingURL=skills-shared-sMjN-BZW.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var e={common:{health:`สถานะ`,ok:`ตกลง`,yes:`ใช่`,no:`ไม่`,active:`ใช้งานอยู่`,loading:`กำลังโหลด…`,refreshing:`กำลังรีเฟรช…`,online:`ออนไลน์`,offline:`ออฟไลน์`,connect:`เชื่อมต่อ`,connected:`เชื่อมต่อแล้ว`,refresh:`รีเฟรช`,reload:`โหลดใหม่`,reset:`รีเซ็ต`,probe:`ตรวจสอบ`,call:`โทร`,confirm:`ยืนยัน`,cancel:`ยกเลิก`,next:`ถัดไป`,back:`ย้อนกลับ`,create:`สร้าง`,copy:`คัดลอก`,copied:`คัดลอกแล้ว!`,copyCode:`คัดลอกโค้ด`,delete:`ลบ`,dismiss:`ปิด`,unselect:`ยกเลิกการเลือก`,enabled:`เปิดใช้งาน`,disabled:`ปิดใช้งาน`,none:`ไม่มี`,na:`n/a`,never:`never`,configured:`กำหนดค่าแล้ว`,running:`กำลังทำงาน`,linked:`เชื่อมโยงแล้ว`,mode:`โหมด`,system:`ระบบ`,light:`ตื้น`,dark:`มืด`,baseUrl:`Base URL`,lastStart:`เริ่มต้นล่าสุด`,lastProbe:`ตรวจสอบล่าสุด`,lastInbound:`ขาเข้าล่าสุด`,lastConnect:`เชื่อมต่อล่าสุด`,lastMessage:`ข้อความล่าสุด`,authAge:`อายุการยืนยันตัวตน`,credential:`ข้อมูลรับรอง`,audience:`กลุ่มเป้าหมาย`,publicKey:`Public Key`,probeOk:`ตรวจสอบสำเร็จ`,probeFailed:`ตรวจสอบล้มเหลว`,reloadConfig:`โหลด Config ใหม่`,loadConfig:`โหลด config`,loadApprovals:`โหลด approvals`,settingsSections:`ส่วนการตั้งค่า`,version:`เวอร์ชัน`,docs:`เอกสาร`,theme:`ธีม`,colorMode:`โหมดสี`,colorModeOption:`โหมดสี: {mode}`,resources:`ทรัพยากร`,search:`ค้นหา`,save:`บันทึก`,saving:`กำลังบันทึก…`,saveAndPublish:`บันทึกและเผยแพร่`,importing:`กำลังนำเข้า…`,importFromRelays:`นำเข้าจาก Relays`,showAdvanced:`แสดงขั้นสูง`,hideAdvanced:`ซ่อนขั้นสูง`,unsavedChanges:`คุณมีการเปลี่ยนแปลงที่ยังไม่ได้บันทึก`,secondsAgo:`{count} วินาทีที่แล้ว`,working:`กำลังดำเนินการ…`,showQr:`แสดง QR`,relink:`เชื่อมโยงใหม่`,waitForScan:`รอการสแกน`,logout:`ออกจากระบบ`},channels:{health:{title:`สถานะช่องทาง`,subtitle:`ภาพรวมสถานะของช่องทางจากเกตเวย์`,noSnapshotYet:`ยังไม่มีภาพรวมสถานะ`},generic:{subtitle:`สถานะและการกำหนดค่าของช่องทาง`},gatewayUrlConfirmation:{title:`เปลี่ยน Gateway URL`,subtitle:`การดำเนินการนี้จะเชื่อมต่อใหม่ไปยังเซิร์ฟเวอร์เกตเวย์อื่น`,warning:`ยืนยันเฉพาะเมื่อคุณเชื่อถือ URL นี้เท่านั้น URL ที่เป็นอันตรายอาจทำให้ระบบของคุณถูกโจมตีได้`},nostr:{profile:`โปรไฟล์`,editProfile:`แก้ไขโปรไฟล์`,profilePicture:`รูปโปรไฟล์`,noProfile:`ยังไม่ได้ตั้งค่าโปรไฟล์`,noProfileHint:`คลิก "Edit Profile" เพื่อเพิ่มชื่อ ประวัติ และรูปโปรไฟล์ของคุณ`,name:`ชื่อ`,displayName:`ชื่อที่แสดง`,about:`เกี่ยวกับ`,advanced:`ขั้นสูง`,profilePicturePreview:`ตัวอย่างรูปโปรไฟล์`,account:`บัญชี`,username:`ชื่อผู้ใช้`,usernameHelp:`ชื่อผู้ใช้แบบสั้น (เช่น satoshi)`,bio:`ประวัติ`,bioPlaceholder:`บอกผู้คนเกี่ยวกับตัวคุณ...`,bioHelp:`ประวัติโดยย่อหรือคำอธิบาย`,displayNameHelp:`ชื่อที่แสดงแบบเต็มของคุณ`,avatarUrl:`Avatar URL`,avatarHelp:`URL HTTPS ไปยังรูปโปรไฟล์ของคุณ`,bannerUrl:`Banner URL`,bannerHelp:`URL HTTPS ไปยังรูปแบนเนอร์`,website:`เว็บไซต์`,websiteHelp:`เว็บไซต์ส่วนตัวของคุณ`,nip05Identifier:`ตัวระบุ NIP-05`,nip05Help:`ตัวระบุที่ตรวจสอบได้ (เช่น you@domain.com)`,lightningAddress:`Lightning Address`,lightningHelp:`ที่อยู่ Lightning สำหรับทิป (LUD-16)`}},lazyView:{loadingTitle:`กำลังโหลดแผง`,errorTitle:`โหลดแผงไม่สำเร็จ`,errorSubtitle:`โหลดหน้าใหม่เพื่อโหลดบันเดิล Control UI ล่าสุด หรือลองอีกครั้งหากคำขอเครือข่ายล้มเหลว`,retry:`ลองอีกครั้ง`,unknownError:`ข้อผิดพลาดในการโหลดโมดูลที่ไม่ทราบสาเหตุ`},nodes:{binding:{loadConfigHint:`โหลด config เพื่อแก้ไขการผูก`,formModeHint:`สลับแท็บ Config เป็นโหมด Form เพื่อแก้ไขการผูกที่นี่`,execNodeBinding:`การผูกโหนด exec`,execNodeBindingSubtitle:`ปักหมุดเอเจนต์ไปยังโหนดที่ระบุเมื่อใช้ exec host=node`,defaultBinding:`การผูกค่าเริ่มต้น`,defaultBindingHint:`ใช้เมื่อเอเจนต์ไม่ได้แทนที่การผูกโหนด`,node:`โหนด`}},instances:{title:`อินสแตนซ์ที่เชื่อมต่อ`,subtitle:`สัญญาณแสดงสถานะจากเกตเวย์และไคลเอนต์`,showHosts:`แสดงโฮสต์และ IP`,hideHosts:`ซ่อนโฮสต์และ IP`,toggleHostVisibility:`สลับการแสดงโฮสต์`,noInstances:`ยังไม่มีการรายงานอินสแตนซ์`,lastInput:`อินพุตล่าสุด {time}`,reason:`เหตุผล {reason}`},sessionsView:{title:`เซสชัน`,subtitle:`คีย์เซสชันที่ใช้งานอยู่และการแทนที่ต่อเซสชัน`,store:`ที่เก็บ: {path}`,active:`ใช้งานอยู่`,limit:`ขีดจำกัด`,filters:`ตัวกรอง`,showFilters:`แสดงตัวกรอง`,hideFilters:`ซ่อนตัวกรอง`,sourceFilters:`ตัวกรองแหล่งที่มาของเซสชัน`,global:`ส่วนกลาง`,unknown:`ไม่ทราบ`,showArchived:`แสดงที่เก็บถาวร`,activeTooltip:`อัปเดตในช่วง {count} นาทีที่ผ่านมา`,limitTooltip:`จำนวนเซสชันสูงสุดที่จะโหลด`,globalTooltip:`รวมเซสชันส่วนกลาง`,unknownTooltip:`รวมเซสชันที่ไม่รู้จัก`,showArchivedTooltip:`รวมเซสชันที่เก็บถาวร`,minutesPlaceholder:`นาที`,searchPlaceholder:`กรองตามคีย์, agent, ป้ายกำกับ, ชนิด…`,selected:`เลือกแล้ว {count} รายการ`,deleteSelected:`ลบ`,selectAllOnPage:`เลือกทั้งหมดในหน้านี้`,selectSession:`เลือกเซสชัน`,optionalPlaceholder:`(ไม่บังคับ)`,key:`คีย์`,label:`ป้ายกำกับ`,kind:`ชนิด`,updated:`อัปเดตแล้ว`,tokens:`โทเค็น`,compaction:`การบีบอัด`,thinking:`Thinking`,fast:`เร็ว`,verbose:`ละเอียด`,reasoning:`การให้เหตุผล`,noSessions:`ไม่พบเซสชัน`,noSessionsMatchFilters:`ไม่มีเซสชันที่ตรงกับตัวกรองของคุณ`,showAll:`แสดงทั้งหมด`,inherit:`สืบทอด`,defaultOption:`ค่าเริ่มต้น ({value})`,offExplicit:`ปิด (ระบุชัดเจน)`,on:`เปิด`,off:`ปิด`,full:`เต็ม`,stream:`สตรีม`,customOption:`{value} (กำหนดเอง)`,manual:`ด้วยตนเอง`,autoThreshold:`เกณฑ์อัตโนมัติ`,overflowRetry:`ลองใหม่เมื่อเกินขีดจำกัด`,timeoutRetry:`ลองใหม่เมื่อหมดเวลา`,tokenRange:`{before} to {after} โทเค็น`,tokensBefore:`{count} โทเค็นก่อนหน้า`,tokenDeltaUnavailable:`ไม่สามารถแสดงส่วนต่างของโทเค็นได้`,checkpoints:`{count} เช็กพอยต์`,checkpoint:`{count} เช็กพอยต์`,showSessionDetails:`แสดงรายละเอียดเซสชันสำหรับ {count}`,hideSessionDetails:`ซ่อนรายละเอียดเซสชันสำหรับ {count}`,sessionDetails:`รายละเอียดเซสชัน`,compactionHistory:`ประวัติการบีบอัด`,status:`สถานะ`,statusLive:`สด`,statusIdle:`ไม่ได้ใช้งาน`,statusUnknown:`ไม่ทราบ`,statusRunning:`กำลังทำงาน`,statusDone:`เสร็จสิ้น`,statusFailed:`ล้มเหลว`,statusKilled:`ถูกยุติ`,statusTimeout:`หมดเวลา`,model:`Model`,provider:`Provider`,runtime:`รันไทม์`,surface:`พื้นผิว`,subject:`หัวข้อ`,room:`ห้อง`,space:`พื้นที่`,sessionId:`รหัสเซสชัน`,activeRun:`การเรียกใช้งานที่ใช้งานอยู่`,archived:`เก็บถาวรแล้ว`,loadingCheckpoints:`กำลังโหลดเช็กพอยต์…`,noCheckpoints:`ไม่มีเช็กพอยต์การบีบอัดที่บันทึกไว้สำหรับเซสชันนี้`,noSummary:`ไม่มีสรุปที่บันทึกไว้`,branchFromCheckpoint:`แตกแขนงจากเช็กพอยต์`,restoreCheckpoint:`กู้คืนเช็กพอยต์`},agents:{noAgents:`No agents`,copyId:`Copy ID`,copyIdTitle:`Copy agent ID to clipboard`,default:`Default`,setDefault:`Set Default`,alreadyDefaultTitle:`Already the default agent`,setDefaultTitle:`Set as the default agent`,selectTitle:`Select an agent`,selectSubtitle:`Pick an agent to inspect its workspace and tools.`,tabs:{overview:`ภาพรวม`,files:`ไฟล์`,tools:`Tools`,skills:`ทักษะ`,channels:`ช่องทาง`,cronJobs:`งาน Cron`},context:{title:`Agent Context`,workspace:`Workspace`,openFilesTab:`Open Files tab`,primaryModel:`Primary Model`,runtime:`รันไทม์`,identityName:`Identity Name`,identityAvatar:`Identity Avatar`,skillsFilter:`Skills Filter`,default:`Default`,configurationSubtitle:`Workspace, identity, and model configuration.`,schedulingSubtitle:`Workspace and scheduling targets.`},channels:{title:`ช่องทาง`,subtitle:`Gateway-wide channel status snapshot.`,lastRefresh:`Last refresh: {time}`,loadHint:`Load channels to see live status.`,empty:`No channels found.`,connectedCount:`{connected}/{total} connected`,noAccounts:`no accounts`,configuredCount:`{count} configured`,notConfigured:`not configured`,enabledCount:`{count} enabled`,setupGuide:`Setup guide`},cronPanel:{schedulerTitle:`Scheduler`,schedulerSubtitle:`Gateway cron status.`,jobs:`งาน`,nextWake:`ปลุกครั้งถัดไป`,agentJobsTitle:`Agent Cron Jobs`,agentJobsSubtitle:`Scheduled jobs targeting this agent.`,noJobs:`No jobs assigned.`,runNow:`Run Now`},files:{emptyDraft:`Empty draft`,minRead:`{count} min read`,markdownPreview:`Markdown Preview`,extensionPreview:`{ext} Preview`,preview:`Preview`,expandPreview:`Expand preview`,collapsePreview:`Collapse preview`,editFile:`Edit file`,closePreview:`Close preview`,coreFilesTitle:`Core Files`,coreFilesSubtitle:`Bootstrap persona, identity, and tool guidance.`,workspace:`Workspace`,loadHint:`Load the agent workspace files to edit core instructions.`,empty:`No files found.`,missing:`missing`,selectFile:`Select a file to edit.`,previewMarkdownTitle:`Preview rendered markdown`,willCreateOnSave:`Will Create on Save`,liveDraftPreview:`Live Draft Preview`,savedPreview:`Saved Preview`,updated:`Updated {time}`,notCreatedYet:`Not Created Yet`,updatedUnknown:`Updated Unknown`,missingHint:`This file is missing. Saving will create it in the agent workspace.`,content:`Content`,words:`{count} words`,lines:`lines`}},debug:{snapshotsTitle:`Snapshots`,snapshotsSubtitle:`Status, health, and heartbeat data.`,status:`สถานะ`,health:`สถานะ`,lastHeartbeat:`Last heartbeat`,security:{audit:`Security audit`,critical:`{count} critical`,warnings:`{count} warnings`,noCriticalIssues:`No critical issues`,info:`{count} info`,runPrefix:`รัน`,runSuffix:`for details.`},manualRpcTitle:`Manual RPC`,manualRpcSubtitle:`Send a raw gateway method with JSON params.`,method:`Method`,selectMethod:`Select a method…`,paramsJson:`Params (JSON)`,modelsTitle:`Models`,modelsSubtitle:`Catalog from models.list.`,eventLogTitle:`บันทึกเหตุการณ์`,eventLogSubtitle:`Latest gateway events.`,noEvents:`No events yet.`},quickSettings:{security:{browserEnabled:`Browser enabled`,toolProfile:`Tool profile`}},execApproval:{expiresIn:`expires in {time}`,expired:`expired`,execApprovalNeeded:`Exec approval needed`,pluginApprovalNeeded:`Plugin approval needed`,pending:`{count} pending`,allowOnce:`Allow once`,alwaysAllow:`Always allow`,deny:`Deny`,labels:{host:`Host`,agent:`เอเจนต์`,session:`เซสชัน`,cwd:`CWD`,resolved:`Resolved`,security:`Security`,ask:`Ask`,severity:`Severity`,plugin:`Plugin`}},agentTools:{connectedSource:`เชื่อมต่อแล้ว: {id}`,connected:`เชื่อมต่อแล้ว`,channelSource:`ช่องทาง: {id}`,channel:`ช่องทาง`,builtIn:`มีมาในระบบ`},nav:{chat:`แชต`,control:`ควบคุม`,agent:`เอเจนต์`,settings:`การตั้งค่า`,expand:`ขยายแถบด้านข้าง`,collapse:`ย่อแถบด้านข้าง`,resize:`ปรับขนาดแถบด้านข้าง`},tabs:{agents:`เอเจนต์`,overview:`ภาพรวม`,channels:`ช่องทาง`,instances:`อินสแตนซ์`,sessions:`เซสชัน`,usage:`การใช้งาน`,cron:`งาน Cron`,skills:`ทักษะ`,nodes:`โหนด`,chat:`แชต`,config:`Config`,communications:`การสื่อสาร`,appearance:`ลักษณะที่ปรากฏ`,automation:`ระบบอัตโนมัติ`,infrastructure:`โครงสร้างพื้นฐาน`,aiAgents:`AI และเอเจนต์`,debug:`ดีบัก`,logs:`บันทึก`,dreams:`การฝัน`},subtitles:{agents:`เวิร์กสเปซ เครื่องมือ และข้อมูลประจำตัว`,overview:`สถานะ จุดเข้าใช้งาน และความพร้อมใช้งาน`,channels:`ช่องทางและการตั้งค่า`,instances:`ไคลเอนต์และโหนดที่เชื่อมต่อ`,sessions:`เซสชันที่ใช้งานอยู่และค่าเริ่มต้น`,usage:`การใช้งาน API และค่าใช้จ่าย`,cron:`การปลุกและการทำงานตามรอบ`,skills:`ทักษะและคีย์ API`,nodes:`อุปกรณ์ที่จับคู่และคำสั่ง`,chat:`แชตเกตเวย์สำหรับการดำเนินการอย่างรวดเร็ว`,config:`แก้ไข daocore.json`,communications:`ช่องทาง ข้อความ และการตั้งค่าเสียง`,appearance:`ธีม UI และการตั้งค่าตัวช่วยเริ่มต้น`,automation:`คำสั่ง hooks cron และ plugins`,infrastructure:`การตั้งค่าเกตเวย์ เว็บ เบราว์เซอร์ และสื่อ`,aiAgents:`เอเจนต์ โมเดล ทักษะ เครื่องมือ หน่วยความจำ เซสชัน`,debug:`สแนปช็อต เหตุการณ์ และ RPC`,logs:`บันทึกเกตเวย์แบบสด`,dreams:`การฝันของหน่วยความจำ การรวมข้อมูล และการสะท้อนคิด`},overview:{access:{title:`การเข้าถึงเกตเวย์`,subtitle:`ตำแหน่งที่แดชบอร์ดเชื่อมต่อและวิธีการยืนยันตัวตน`,wsUrl:`WebSocket URL`,token:`Gateway Token`,password:`รหัสผ่าน (ไม่จัดเก็บ)`,passwordPlaceholder:`รหัสผ่านของระบบหรือรหัสผ่านที่ใช้ร่วมกัน`,sessionKey:`Session Key เริ่มต้น`,language:`ภาษา`,connectHint:`คลิก Connect เพื่อใช้การเปลี่ยนแปลงการเชื่อมต่อ`,trustedProxy:`ยืนยันตัวตนผ่านพร็อกซีที่เชื่อถือได้`,showToken:`แสดงโทเค็น`,hideToken:`ซ่อนโทเค็น`,toggleTokenVisibility:`สลับการแสดงโทเค็น`,showPassword:`แสดงรหัสผ่าน`,hidePassword:`ซ่อนรหัสผ่าน`,togglePasswordVisibility:`สลับการแสดงรหัสผ่าน`},snapshot:{title:`ภาพรวมสถานะ`,subtitle:`ข้อมูลการจับมือกับเกตเวย์ล่าสุด`,status:`สถานะ`,uptime:`เวลาทำงาน`,tickInterval:`ช่วงเวลา Tick`,lastChannelsRefresh:`รีเฟรช Channels ล่าสุด`,channelsHint:`ใช้ Channels เพื่อเชื่อมโยง WhatsApp, Telegram, Discord, Signal หรือ iMessage`},stats:{instances:`อินสแตนซ์`,instancesHint:`สัญญาณแสดงสถานะในช่วง 5 นาทีล่าสุด`,sessions:`เซสชัน`,sessionsHint:`คีย์เซสชันล่าสุดที่เกตเวย์ติดตาม`,cron:`Cron`,cronNext:`ปลุกครั้งถัดไป {time}`},notes:{title:`บันทึก`,subtitle:`การเตือนความจำอย่างรวดเร็วสำหรับการตั้งค่าควบคุมระยะไกล`,tailscaleTitle:`Tailscale serve`,tailscaleText:`ควรใช้โหมด serve เพื่อให้เกตเวย์อยู่บน loopback พร้อมการยืนยันตัวตนผ่าน tailnet`,sessionTitle:`สุขอนามัยของเซสชัน`,sessionText:`ใช้ /new หรือ sessions.patch เพื่อรีเซ็ตบริบท`,cronTitle:`การเตือนความจำของ Cron`,cronText:`ใช้เซสชันแบบแยกสำหรับการทำงานตามรอบ`},auth:{required:`เกตเวย์นี้ต้องมีการยืนยันตัวตน เพิ่มโทเค็นหรือรหัสผ่าน แล้วคลิก Connect`,failed:`การยืนยันตัวตนล้มเหลว คัดลอก URL ที่มีโทเค็นอีกครั้งด้วย {command} หรืออัปเดตโทเค็น แล้วคลิก Connect`},pairing:{hint:`อุปกรณ์นี้ต้องได้รับการอนุมัติการจับคู่จากโฮสต์เกตเวย์`,scopeUpgradeTitle:`การอัปเกรดขอบเขตรอการอนุมัติ`,scopeUpgradeSummary:`อุปกรณ์นี้จับคู่แล้ว แต่ขอบเขตที่กว้างขึ้นตามที่ร้องขอกำลังรอการอนุมัติ`,roleUpgradeTitle:`การอัปเกรดบทบาทรอการอนุมัติ`,roleUpgradeSummary:`อุปกรณ์นี้จับคู่แล้ว แต่การเปลี่ยนแปลงบทบาทที่ร้องขอกำลังรอการอนุมัติ`,metadataUpgradeTitle:`การเปลี่ยนแปลงข้อมูลเมตาของอุปกรณ์รอการอนุมัติ`,metadataUpgradeSummary:`อุปกรณ์นี้จับคู่แล้ว แต่การเปลี่ยนแปลงข้อมูลเมตากำลังรอการอนุมัติ`,mobileHint:`ใช้งานบนมือถืออยู่หรือไม่? คัดลอก URL แบบเต็ม (รวม #token=...) จาก daocore dashboard --no-open บนเดสก์ท็อปของคุณ`,docsTitle:`เอกสารการจับคู่อุปกรณ์ (เปิดในแท็บใหม่)`,docsLink:`เอกสาร: การจับคู่อุปกรณ์`},insecure:{hint:`หน้านี้เป็น HTTP ดังนั้นเบราว์เซอร์จึงบล็อกข้อมูลประจำตัวของอุปกรณ์ ใช้ HTTPS (Tailscale Serve) หรือเปิด {url} บนโฮสต์เกตเวย์`,stayHttp:`หากจำเป็นต้องใช้ HTTP ต่อไป ให้ตั้งค่า {config} (ใช้โทเค็นเท่านั้น)`},connection:{title:`วิธีเชื่อมต่อ`,step1:`เริ่มเกตเวย์บนเครื่องโฮสต์ของคุณ:`,step2:`รับ URL แดชบอร์ดที่มีโทเค็น:`,step3:`วาง WebSocket URL และโทเค็นด้านบน หรือเปิด URL ที่มีโทเค็นโดยตรง`,step4:`หรือสร้างโทเค็นที่ใช้ซ้ำได้:`,docsHint:`สำหรับการเข้าถึงระยะไกล แนะนำให้ใช้ Tailscale Serve `,docsLink:`อ่านเอกสาร →`,authDocsTitle:`เอกสารการยืนยันตัวตนของ Control UI (เปิดในแท็บใหม่)`,authDocsLink:`เอกสาร: การยืนยันตัวตนของ Control UI`,tailscaleDocsTitle:`เอกสาร Tailscale Serve (เปิดในแท็บใหม่)`,tailscaleDocsLink:`เอกสาร: Tailscale Serve`,insecureHttpDocsTitle:`เอกสาร HTTP ที่ไม่ปลอดภัย (เปิดในแท็บใหม่)`,insecureHttpDocsLink:`เอกสาร: HTTP ที่ไม่ปลอดภัย`,copyCommand:`คัดลอกคำสั่ง`,copyCommandAria:`คัดลอกคำสั่ง: {command}`},cards:{cost:`ค่าใช้จ่าย`,skills:`ทักษะ`,recentSessions:`เซสชันล่าสุด`,modelAuth:`การยืนยันตัวตนของโมเดล`,modelAuthOk:`{count} ใช้งานได้`,modelAuthExpired:`{count} หมดอายุแล้ว`,modelAuthExpiring:`{count} ใกล้หมดอายุ`,modelAuthProviders:`{count} ผู้ให้บริการ`,modelAuthUsageLeft:`เหลือ {pct}%`,modelAuthExpiresIn:`หมดอายุ {when}`,modelAuthAttentionExpiredTitle:`การยืนยันตัวตนของโมเดลหมดอายุแล้ว`,modelAuthAttentionExpiringTitle:`การยืนยันตัวตนของโมเดลกำลังจะหมดอายุเร็ว ๆ นี้`,modelAuthAttentionExpiredDesc:`{providers} — ยืนยันตัวตนใหม่ด้วย daocore models auth`,modelAuthAttentionExpiringEntry:`{provider} ({when})`},attention:{title:`ต้องให้ความสนใจ`},eventLog:{title:`บันทึกเหตุการณ์`},logTail:{title:`บันทึกเกตเวย์`},quickActions:{newSession:`เซสชันใหม่`,automation:`ระบบอัตโนมัติ`,refreshAll:`รีเฟรชทั้งหมด`,terminal:`เทอร์มินัล`},palette:{placeholder:`พิมพ์คำสั่ง…`,noResults:`ไม่พบผลลัพธ์`,categories:{search:`ค้นหา`,navigation:`การนำทาง`,skills:`ทักษะ`},items:{overview:`ภาพรวม`,sessions:`เซสชัน`,scheduled:`กำหนดเวลาแล้ว`,skills:`ทักษะ`,settings:`การตั้งค่า`,agents:`เอเจนต์`,shellCommand:`คำสั่งเชลล์`,debugMode:`โหมดดีบัก`},descriptions:{shellCommand:`เรียกใช้เชลล์`,debugMode:`สลับดีบัก`},footer:{navigate:`นำทาง`,select:`เลือก`,close:`ปิด`}}},dreaming:{tabs:{scene:`ฉาก`,diary:`ไดอารี`,advanced:`ขั้นสูง`},header:{refresh:`รีเฟรช`,refreshing:`กำลังรีเฟรช…`,on:`เปิดการฝัน`,off:`ปิดการฝัน`},restartConfirmation:{title:`รีสตาร์ท Gateway เพื่อใช้การเปลี่ยนแปลง`,subtitle:`การเปลี่ยนโหมด Dreaming จะรีสตาร์ท Gateway`,warning:`การดำเนินการนี้จะรีสตาร์ท Gateway และอาจทำให้แชต ระบบอัตโนมัติ และช่องทางที่เชื่อมต่อหยุดชะงักชั่วคราว`,confirm:`ยืนยันการรีสตาร์ท`,restarting:`กำลังรีสตาร์ท…`,failed:`ไม่สามารถใช้การเปลี่ยนแปลงได้ ตรวจสอบการเชื่อมต่อของคุณแล้วลองอีกครั้ง`},status:{active:`การฝันกำลังทำงาน`,idle:`การฝันไม่ได้ทำงาน`,promotedSuffix:`เลื่อนระดับแล้ว`,nextSweepPrefix:`กวาดครั้งถัดไป`},scene:{backfill:`เติมข้อมูลย้อนหลัง`,dedupeDiary:`ลบรายการซ้ำในไดอารี`,reset:`รีเซ็ต`,clearGrounded:`ล้างที่เล่นซ้ำแล้ว`,repairCache:`ซ่อมแซม Dream Cache`,working:`กำลังดำเนินการ…`},phase:{light:`ตื้น`,deep:`ลึก`,rem:`REM`,off:`ปิด`},advanced:{eyebrow:`ตรวจสอบ`,title:`การตรวจสอบบันทึกประจำวัน`,description:`ตรวจสอบสิ่งที่มาจากบันทึกประจำวัน สิ่งที่กำลังรอการเลื่อนระดับ และสิ่งที่เพิ่งได้รับการเลื่อนระดับล่าสุด`,summaryFromDailyLog:`จากบันทึกประจำวัน`,summaryWaiting:`กำลังรอ`,summaryPromotedToday:`เลื่อนระดับวันนี้`,stagedTitle:`จากบันทึกประจำวัน`,stagedDescription:`ผู้สมัครสำหรับการเล่นซ้ำที่ดึงมาจากรายการบันทึกประจำวันเก่า`,shortTermTitle:`กำลังรอการเลื่อนระดับ`,shortTermDescription:`ผู้สมัครระยะสั้นปัจจุบันที่กำลังรอพัฒนาเป็นความทรงจำจริง`,sortRecent:`ล่าสุด`,sortSignals:`การสนับสนุนที่แข็งแกร่งที่สุด`,originDailyLog:`เล่นซ้ำแล้ว`,originLive:`สด`,originMixed:`ผสม`,promotedTitle:`การเลื่อนระดับล่าสุด`,promotedDescription:`รายการที่ผ่านการเลื่อนระดับแล้ว`,emptyGrounded:`ขณะนี้ยังไม่มีรายการเล่นซ้ำแบบ grounded ที่จัดเตรียมไว้`,emptyShortTerm:`ไม่มีรายการระยะสั้นให้ตรวจสอบ`,emptyPromoted:`ไม่มีการเลื่อนระดับล่าสุดให้ตรวจสอบ`,updatedPrefix:`อัปเดต`},stats:{shortTerm:`ระยะสั้น`,grounded:`Grounded`,signals:`สัญญาณ`,promoted:`เลื่อนระดับแล้ว`,phaseHits:`การตรงกับเฟส`},trace:{shortTerm:`ระยะสั้น`,grounded:`Grounded`,signals:`สัญญาณ`,promoted:`เลื่อนระดับแล้ว`,groundedLed:`นำโดย grounded`,emptyShortTerm:`ไม่มีรายการระยะสั้นที่ใช้งานอยู่`,emptyGrounded:`ไม่มีรายการ grounded ที่จัดเตรียมไว้`,emptySignals:`ไม่มีสัญญาณที่ใช้งานอยู่`,emptyPromoted:`ยังไม่มีสิ่งใดได้รับการเลื่อนระดับในวันนี้`},diary:{title:`ไดอารีความฝัน`,noDreamsYet:`ยังไม่มีความฝัน`,noDreamsHint:`ความฝันจะแสดงที่นี่หลังจากรอบการฝันครั้งแรกทำงานเสร็จ`,waitingTitle:`ไดอารีกำลังรออยู่`,waitingHint:`รายการบันทึกเชิงบรรยายจะแสดงหลังจากรอบการฝันถัดไป`,older:`เก่ากว่า`,newer:`ใหม่กว่า`,reload:`โหลดใหม่`,reloading:`กำลังโหลดใหม่…`},phrases:{consolidatingMemories:`กำลังรวมความทรงจำ…`,tidyingKnowledgeGraph:`กำลังจัดระเบียบกราฟความรู้…`,replayingConversations:`กำลังเล่นซ้ำบทสนทนาของวันนี้…`,weavingShortTerm:`กำลังถักทอความจำระยะสั้นเป็นระยะยาว…`,defragmentingMindPalace:`กำลังจัดเรียง mind palace ใหม่…`,filingLooseThoughts:`กำลังจัดเก็บความคิดที่กระจัดกระจาย…`,connectingDots:`กำลังเชื่อมโยงจุดที่ห่างไกล…`,compostingContext:`กำลังย่อยสลายหน้าต่างบริบทเก่า…`,alphabetizingSubconscious:`กำลังเรียงจิตใต้สำนึกตามตัวอักษร…`,promotingHunches:`กำลังเลื่อนระดับลางสังหรณ์ที่มีแวว…`,forgettingNoise:`กำลังลืมสิ่งที่ไม่สำคัญ…`,dreamingEmbeddings:`กำลังฝันใน embeddings…`,reorganizingAttic:`กำลังจัดระเบียบห้องใต้หลังคาแห่งความทรงจำ…`,indexingDay:`กำลังจัดทำดัชนีของวันอย่างแผ่วเบา…`,nurturingInsights:`กำลังบ่มเพาะความเข้าใจที่เพิ่งก่อตัว…`,simmeringIdeas:`กำลังเคี่ยวความคิดที่ยังไม่เป็นรูปเป็นร่าง…`,whisperingVectorStore:`กำลังกระซิบกับ vector store…`}},usage:{common:{emptyValue:`—`,unknown:`ไม่ทราบ`},loading:{title:`ภาพรวมการใช้งาน`,badge:`กำลังโหลด`},metrics:{tokens:`โทเค็น`,cost:`ค่าใช้จ่าย`,session:`เซสชัน`,sessions:`เซสชัน`},presets:{today:`วันนี้`,last7d:`7 วัน`,last30d:`30 วัน`,last90d:`90d`,last1y:`1y`,all:`ทั้งหมด`},scope:{instance:`อินสแตนซ์ปัจจุบัน`,instanceHint:`แสดงเฉพาะ ID เซสชันที่ใช้งานอยู่สำหรับแต่ละเซสชันเชิงตรรกะ`,family:`ลำดับสายประวัติ`,familyHint:`รวม ID เซสชันที่ทราบซึ่งอิงตามทรานสคริปต์และถูกหมุนเวียน`,familyIncluded:`ลำดับสายประวัติมีอินสแตนซ์เซสชัน {count} รายการ`},filters:{title:`ตัวกรอง`,to:`ถึง`,startDate:`วันที่เริ่มต้น`,endDate:`วันที่สิ้นสุด`,timeZone:`เขตเวลา`,timeZoneLocal:`ท้องถิ่น`,timeZoneUtc:`UTC`,pin:`ปักหมุด`,pinned:`ปักหมุดแล้ว`,unpin:`เลิกปักหมุดตัวกรอง`,selectAll:`เลือกทั้งหมด`,clear:`ล้าง`,clearAll:`ล้างทั้งหมด`,remove:`ลบตัวกรอง`,all:`ทั้งหมด`,days:`วัน`,hours:`ชั่วโมง`,session:`เซสชัน`,agent:`เอเจนต์`,channel:`ช่องทาง`,provider:`Provider`,model:`Model`,tool:`Tool`,daysCount:`{count} วัน`,hoursCount:`{count} ชั่วโมง`,sessionsCount:`{count} เซสชัน`},query:{placeholder:`กรองเซสชัน (เช่น key:agent:main:cron* model:gpt-4o has:errors minTokens:2000)`,apply:`กรอง (ฝั่งไคลเอนต์)`,matching:`ตรงกัน {shown} จาก {total} เซสชัน`,inRange:`{total} เซสชันในช่วงนี้`,tip:`เคล็ดลับ: ใช้ตัวกรองหรือคลิกแท่งกราฟเพื่อปรับช่วงวันให้ละเอียดขึ้น`},export:{label:`ส่งออก`,sessionsCsv:`เซสชัน CSV`,dailyCsv:`CSV รายวัน`,json:`JSON`},cacheStatus:{warning:`แคชการใช้งานกำลังสร้างใหม่ในเบื้องหลัง ยอดรวมที่แสดงอาจไม่เป็นปัจจุบัน`,title:`{status}: ค้างอยู่ {pending}, ล้าสมัย {stale}, แคชแล้ว {cached}`,status:{refreshing:`กำลังรีเฟรช`,stale:`ล้าสมัย`,partial:`บางส่วน`}},empty:{title:`เริ่มต้นด้วยช่วงวันที่`,subtitle:`โหลดข้อมูลการใช้งานเพื่อเปรียบเทียบค่าใช้จ่าย ตรวจสอบเซสชัน และเจาะลึกไทม์ไลน์ได้โดยไม่ต้องออกจากแดชบอร์ด`,hint:`เลือกช่วงวันที่แล้วคลิก Refresh เพื่อโหลดข้อมูลการใช้งาน`,noData:`ไม่มีข้อมูล`,featureOverview:`การ์ดภาพรวม`,featureSessions:`การจัดอันดับเซสชัน`,featureTimeline:`เจาะลึกไทม์ไลน์`},daily:{title:`การใช้งานรายวัน`,total:`รวม`,byType:`ตามประเภท`,tokensTitle:`การใช้โทเค็นรายวัน`,costTitle:`ค่าใช้จ่ายรายวัน`},breakdown:{output:`เอาต์พุต`,input:`อินพุต`,cacheWrite:`การเขียน Cache`,cacheRead:`การอ่าน Cache`,total:`รวม`,tokensByType:`โทเค็นตามประเภท`,costByType:`ค่าใช้จ่ายตามประเภท`},overview:{title:`ภาพรวมการใช้งาน`,messages:`ข้อความ`,messagesHint:`จำนวนข้อความของผู้ใช้และผู้ช่วยทั้งหมดในช่วงที่เลือก`,messagesAbbrev:`ข้อความ`,user:`ผู้ใช้`,assistant:`ผู้ช่วย`,toolCalls:`การเรียกใช้ Tool`,toolCallsHint:`จำนวนการเรียกใช้ tool ทั้งหมดในทุกเซสชัน`,toolsUsed:`tools ที่ใช้`,errors:`ข้อผิดพลาด`,errorsHint:`จำนวนข้อผิดพลาดของข้อความและ tool ทั้งหมดในช่วงที่เลือก`,toolResults:`ผลลัพธ์ของ tool`,avgTokens:`โทเค็นเฉลี่ย / ข้อความ`,avgTokensHint:`จำนวนโทเค็นเฉลี่ยต่อข้อความในช่วงนี้`,avgCost:`ค่าใช้จ่ายเฉลี่ย / ข้อความ`,avgCostHint:`ค่าใช้จ่ายเฉลี่ยต่อข้อความเมื่อผู้ให้บริการรายงานค่าใช้จ่าย`,avgCostHintMissing:`ค่าใช้จ่ายเฉลี่ยต่อข้อความเมื่อผู้ให้บริการรายงานค่าใช้จ่าย ข้อมูลค่าใช้จ่ายขาดหายไปสำหรับบางหรือทุกเซสชันในช่วงนี้`,acrossMessages:`จาก {count} ข้อความ`,sessions:`เซสชัน`,sessionsHint:`เซสชันที่ไม่ซ้ำกันในช่วงที่เลือก`,sessionsInRange:`จาก {count} ในช่วงนี้`,throughput:`อัตราการประมวลผล`,throughputHint:`อัตราการประมวลผลแสดงโทเค็นต่อนาทีในช่วงเวลาที่ใช้งาน ยิ่งสูงยิ่งดี`,tokensPerMinute:`tok/min`,perMinute:`/ นาที`,errorRate:`อัตราข้อผิดพลาด`,errorHint:`อัตราข้อผิดพลาด = ข้อผิดพลาด / ข้อความทั้งหมด ยิ่งต่ำยิ่งดี`,avgSession:`เซสชันเฉลี่ย`,cacheHitRate:`อัตราการใช้งานแคชสำเร็จ`,cacheHint:`อัตราการใช้งานแคชสำเร็จ = การอ่านแคช / (อินพุต + การอ่านแคช) ยิ่งสูงยิ่งดี`,cached:`แคชแล้ว`,prompt:`พรอมป์ต์`,calls:`การเรียก`,topModels:`โมเดลยอดนิยม`,topProviders:`ผู้ให้บริการยอดนิยม`,topTools:`Tool ยอดนิยม`,topAgents:`เอเจนต์ยอดนิยม`,topChannels:`ช่องทางยอดนิยม`,peakErrorDays:`วันที่เกิดข้อผิดพลาดสูงสุด`,peakErrorHours:`ชั่วโมงที่เกิดข้อผิดพลาดสูงสุด`,noModelData:`ไม่มีข้อมูลโมเดล`,noProviderData:`ไม่มีข้อมูลผู้ให้บริการ`,noToolCalls:`ไม่มีการเรียกใช้ Tool`,noAgentData:`ไม่มีข้อมูลเอเจนต์`,noChannelData:`ไม่มีข้อมูลช่องทาง`,noErrorData:`ไม่มีข้อมูลข้อผิดพลาด`},sessions:{title:`เซสชัน`,shown:`แสดง {count}`,total:`ทั้งหมด {count}`,avg:`เฉลี่ย`,all:`ทั้งหมด`,recent:`ดูล่าสุด`,recentShort:`ล่าสุด`,sort:`เรียงลำดับ`,ascending:`น้อยไปมาก`,descending:`มากไปน้อย`,clearSelection:`ล้างการเลือก`,noRecent:`ไม่มีเซสชันล่าสุด`,noneInRange:`ไม่มีเซสชันในช่วงนี้`,more:`อีก +{count}`,selected:`เลือกแล้ว ({count})`,copy:`คัดลอก`,copyName:`คัดลอกชื่อเซสชัน`,limitReached:`กำลังแสดง 1,000 เซสชันแรก จำกัดช่วงวันที่ให้แคบลงเพื่อดูผลลัพธ์ทั้งหมด`},details:{noUsageData:`ไม่มีข้อมูลการใช้งานสำหรับเซสชันนี้`,duration:`ระยะเวลา`,modelMix:`สัดส่วนโมเดล`,filtered:`(กรองแล้ว)`,close:`ปิดรายละเอียดเซสชัน`,noTimeline:`ไม่มีข้อมูลไทม์ไลน์`,noDataInRange:`ไม่มีข้อมูลในช่วงนี้`,usageOverTime:`การใช้งานตามเวลา`,reset:`รีเซ็ต`,perTurn:`ต่อเทิร์น`,cumulative:`สะสม`,turnRange:`เทิร์น {start}–{end} จาก {total}`,assistantOutputTokens:`โทเค็นเอาต์พุตของผู้ช่วย`,userToolInputTokens:`โทเค็นอินพุตของผู้ใช้ + tool`,tokensWrittenToCache:`โทเค็นที่เขียนลงแคช`,tokensReadFromCache:`โทเค็นที่อ่านจากแคช`,noContextData:`ไม่มีข้อมูลบริบท`,systemPromptBreakdown:`รายละเอียดพรอมป์ต์ระบบ`,collapse:`ยุบ`,collapseAll:`ยุบทั้งหมด`,expandAll:`ขยายทั้งหมด`,baseContextPerMessage:`บริบทพื้นฐานต่อข้อความ`,system:`ระบบ`,systemShort:`ระบบ`,skills:`ทักษะ`,tools:`Tools`,files:`ไฟล์`,ofInput:`ของอินพุต`,of:`ของ`,timelineFiltered:`กรองไทม์ไลน์แล้ว`,conversation:`บทสนทนา`,noMessages:`ไม่มีข้อความ`,tool:`Tool`,toolResult:`ผลลัพธ์ของ Tool`,hasTools:`มี tools`,searchConversation:`ค้นหาในบทสนทนา`,you:`คุณ`,noMessagesMatch:`ไม่มีข้อความที่ตรงกับตัวกรอง`},mosaic:{title:`กิจกรรมตามเวลา`,subtitleEmpty:`การประมาณค่าต้องใช้เวลาประทับของเซสชัน`,subtitle:`ประมาณจากช่วงเวลาของเซสชัน (กิจกรรมแรก/ล่าสุด) เขตเวลา: {zone}`,noTimelineData:`ยังไม่มีข้อมูลไทม์ไลน์`,dayOfWeek:`วันในสัปดาห์`,midnight:`เที่ยงคืน`,fourAm:`4am`,eightAm:`8am`,noon:`เที่ยงวัน`,fourPm:`4pm`,eightPm:`8pm`,legend:`ความหนาแน่นของโทเค็น ต่ำ → สูง`,sun:`อา.`,mon:`จ.`,tue:`อ.`,wed:`พ.`,thu:`พฤ.`,fri:`ศ.`,sat:`ส.`}},login:{subtitle:`Gateway Dashboard`,passwordPlaceholder:`ไม่บังคับ`,showToken:`แสดงโทเค็น`,hideToken:`ซ่อนโทเค็น`,toggleTokenVisibility:`สลับการแสดงโทเค็น`,showPassword:`แสดงรหัสผ่าน`,hidePassword:`ซ่อนรหัสผ่าน`,togglePasswordVisibility:`สลับการแสดงรหัสผ่าน`,failure:{rawError:`ข้อผิดพลาดดิบ`,docsAuth:`เอกสารการยืนยันตัวตนของ Control UI`,docsPairing:`เอกสารการจับคู่อุปกรณ์`,docsInsecure:`เอกสาร HTTP ที่ไม่ปลอดภัย`,authRequired:{title:`ต้องยืนยันตัวตน`,summary:`เข้าถึง Gateway ได้ แต่ต้องมีโทเค็นหรือรหัสผ่านที่ตรงกันก่อนที่เบราว์เซอร์นี้จะเชื่อมต่อได้`,stepPaste:`วางโทเค็นจาก daocore dashboard --no-open หรือป้อนรหัสผ่านที่ตั้งค่าไว้`,stepGenerate:`ถ้ายังไม่ได้ตั้งค่าโทเค็น ให้รัน daocore doctor --generate-gateway-token บนโฮสต์ Gateway`,stepConnect:`คลิก Connect อีกครั้งหลังจากอัปเดตข้อมูลรับรอง`},authFailed:{title:`การยืนยันตัวตนไม่ตรงกัน`,summary:`ข้อมูลรับรองที่ให้มาถูกปฏิเสธ สาเหตุที่พบบ่อยคือโทเค็นเก่าหรือโทเค็นที่คัดลอกจาก Gateway URL อื่น`,stepDashboard:`รัน daocore dashboard --no-open แล้วเปิด URL ใหม่หรือวางโทเค็นของ URL นั้น`,stepReplace:`แทนที่ค่าโทเค็น/รหัสผ่านเก่า อย่าใช้โทเค็นจาก Gateway URL อื่นซ้ำ`,stepMode:`ใช้โหมด auth ที่ตรงกันทีละโหมด: gateway token สำหรับโหมด token, รหัสผ่านสำหรับโหมด password`},rateLimited:{title:`พยายามล้มเหลวมากเกินไป`,summary:`Gateway กำลังจำกัดความพยายามยืนยันตัวตนของไคลเอนต์นี้ชั่วคราว`,stepStop:`หยุดลองซ้ำจากแท็บนี้สักครู่`,stepWait:`รอให้ตัวจำกัด auth เย็นลง แล้วเชื่อมต่อใหม่ด้วยข้อมูลรับรองที่แก้ไขแล้ว`,stepCheckClients:`ถ้าเป็นโฮสต์ที่ใช้ร่วมกัน ให้ตรวจสอบไคลเอนต์อื่นที่ลองผิดซ้ำๆ`},pairing:{title:`ต้องจับคู่อุปกรณ์`,scopeTitle:`การอัปเกรด scope รออนุมัติ`,roleTitle:`การอัปเกรดบทบาทรออนุมัติ`,metadataTitle:`การรีเฟรชอุปกรณ์รออนุมัติ`,summary:`เบราว์เซอร์นี้ต้องได้รับการอนุมัติครั้งเดียวจากโฮสต์ Gateway ก่อนใช้ Control UI`,upgradeSummary:`เบราว์เซอร์นี้เป็นที่รู้จักแล้ว แต่สิทธิ์ที่ขอเปลี่ยนไปและต้องอนุมัติใหม่`,stepList:`รัน daocore devices list บนโฮสต์ Gateway`,stepApproveId:`อนุมัติคำขอนี้: daocore devices approve {requestId}.`,stepApprove:`อนุมัติคำขอเบราว์เซอร์/อุปกรณ์ที่รอดำเนินการจากรายการนั้น`,stepReconnect:`เชื่อมต่อใหม่หลังการอนุมัติเสร็จสิ้น`},insecure:{title:`ต้องใช้บริบทเบราว์เซอร์ที่ปลอดภัย`,summary:`หน้านี้ทำงานผ่าน HTTP ธรรมดา เบราว์เซอร์จึงสร้างตัวตนอุปกรณ์ที่ Gateway คาดหวังไม่ได้`,stepHttps:`ใช้ HTTPS/Tailscale Serve หรือเปิด http://127.0.0.1:18789 บนโฮสต์ Gateway`,stepLocalCompat:`สำหรับความเข้ากันได้เฉพาะโทเค็นในเครื่อง ให้ตั้ง gateway.controlUi.allowInsecureAuth: true`,stepAvoidDisable:`หลีกเลี่ยงการปิด auth อุปกรณ์สำหรับการเข้าถึง HTTP ระยะไกล`},origin:{title:`ไม่อนุญาต origin ของเบราว์เซอร์`,summary:`Gateway ปฏิเสธ origin ของหน้านี้ก่อนรับการเชื่อมต่อ Control UI`,stepAllowedOrigins:`เพิ่ม origin ของเบราว์เซอร์นี้ใน gateway.controlUi.allowedOrigins`,stepFullOrigin:`ใช้ origin แบบเต็ม เช่น http://localhost:5173 ไม่ใช่รูปแบบ wildcard`,stepRestart:`รีสตาร์ทหรือโหลด Gateway ใหม่หลังเปลี่ยน origin ที่อนุญาต`},protocol:{title:`โปรโตคอลไม่ตรงกัน`,summary:`Control UI ที่เสิร์ฟอยู่และ Gateway ที่ทำงานอยู่ไม่ตรงกันเรื่องโปรโตคอลการเชื่อมต่อที่รองรับ`,stepDashboard:`เปิด dashboard ที่เสิร์ฟอีกครั้งด้วย daocore dashboard เพื่อให้ UI และ Gateway มาจากการติดตั้งเดียวกัน`,stepDevUi:`ถ้าใช้ pnpm ui:dev ให้ build ใหม่หรือรีสตาร์ท UI dev กับ checkout ปัจจุบัน`,stepRestart:`รีสตาร์ท Gateway หลังอัปเดต DaoCore เพื่อให้เสิร์ฟโปรโตคอลปัจจุบัน`},network:{title:`เชื่อมต่อไม่ได้`,summary:`เบราว์เซอร์ไม่สามารถเชื่อมต่อ Gateway ให้เสร็จสมบูรณ์ได้ ตรวจสอบเป้าหมายและ transport ก่อนลองข้อมูลรับรองอีกครั้ง`,stepGateway:`ยืนยันว่า Gateway กำลังทำงานด้วย daocore status หรือ daocore gateway run`,stepUrl:`ตรวจสอบ WebSocket URL และใช้ wss:// เมื่อ Gateway อยู่หลัง HTTPS/Tailscale Serve`,stepDashboard:`เปิด dashboard อีกครั้งด้วย daocore dashboard --no-open เพื่อคัดลอก URL และรายละเอียด auth ปัจจุบันใหม่`}}},chat:{disconnected:`ตัดการเชื่อมต่อจากเกตเวย์แล้ว`,refreshTitle:`รีเฟรชข้อมูลแชต`,settings:`การตั้งค่าแชท`,thinkingToggle:`สลับการแสดงผลการคิด/การทำงานของผู้ช่วย`,toolCallsToggle:`สลับการแสดงการเรียกใช้ tool และผลลัพธ์ของ tool`,autoScrollMode:`โหมดเลื่อนอัตโนมัติ`,autoScrollAlways:`เสมอ`,autoScrollNearBottom:`ใกล้ด้านล่าง`,autoScrollOff:`ปิด`,focusToggle:`สลับโหมดโฟกัส (ซ่อนแถบด้านข้าง + ส่วนหัวหน้า)`,hideCronSessions:`ซ่อนเซสชัน cron`,showCronSessions:`แสดงเซสชัน cron`,showCronSessionsHidden:`แสดงเซสชัน cron (ซ่อนอยู่ {count})`,onboardingDisabled:`ปิดใช้งานระหว่างการตั้งค่า`,gatewayStatus:`สถานะ Gateway: {status}`,commandPaletteTitle:`ค้นหาหรือข้ามไปที่… (⌘K)`,openCommandPalette:`เปิดแถบคำสั่ง`,docsOpensInNewTab:`{label} (เปิดในแท็บใหม่)`,updateAvailable:`มีอัปเดตพร้อมใช้งาน:`,runningVersion:`กำลังใช้ v{version}`,updating:`กำลังอัปเดต…`,updateNow:`อัปเดตตอนนี้`,dismissUpdateBanner:`ปิดแบนเนอร์อัปเดต`,switchedSession:`สลับไปยัง {session} แล้ว`,welcome:{ready:`Ready to chat`,hintBeforeShortcut:`Type a message below ·`,hintAfterShortcut:`for commands`,suggestions:{whatCanYouDo:`What can you do?`,summarizeRecentSessions:`Summarize my recent sessions`,configureChannel:`Help me configure a channel`,checkSystemHealth:`Check system health`}},runControls:{newSession:`New session`,export:`ส่งออก`,exportChat:`Export chat`,queue:`Queue`,queueMessage:`Queue message`,stop:`Stop`,stopGenerating:`Stop generating`,send:`Send`,sendMessage:`Send message`},composer:{placeholder:`Message {name} (Enter to send)`,placeholderWithAttachments:`Add a message or paste more images...`,placeholderDisconnected:`Connect to the gateway to start chatting...`,attachFile:`Attach file`,startTalk:`Start Talk`,stillListening:`ยังฟังอยู่`,talkTranscript:`ข้อความถอดเสียงจากการพูด`,stopTalk:`Stop Talk`},selectors:{agentFilter:`กรองเซสชันตามเอเจนต์`,session:`Chat session`,sessionSearch:`ค้นหาเซสชัน`,clearSessionSearch:`ล้างการค้นหาเซสชัน`,loadMoreSessions:`โหลดเซสชันเพิ่มเติม`,model:`Chat model`,thinkingLevel:`Chat thinking level`}},languages:{en:`อังกฤษ`,zhCN:`简体中文 (จีนตัวย่อ)`,zhTW:`繁體中文 (จีนตัวเต็ม)`,ptBR:`Português (โปรตุเกสแบบบราซิล)`,de:`Deutsch (เยอรมัน)`,es:`Español (สเปน)`,jaJP:`日本語 (ญี่ปุ่น)`,ko:`한국어 (เกาหลี)`,fr:`Français (ฝรั่งเศส)`,ar:`العربية (อาหรับ)`,it:`Italiano (อิตาลี)`,tr:`Türkçe (ตุรกี)`,uk:`Українська (ยูเครน)`,id:`Bahasa Indonesia (อินโดนีเซีย)`,pl:`Polski (โปแลนด์)`,th:`ไทย (ไทย)`,vi:`Tiếng Việt (เวียดนาม)`,nl:`Nederlands (ดัตช์)`,fa:`فارسی (เปอร์เซีย)`},cron:{quickCreate:{schedules:{everyMorning:{label:`ทุกเช้า`,description:`ทุกวันเวลา 8:00 น.`},everyEvening:{label:`ทุกเย็น`,description:`ทุกวันเวลา 18:00 น.`},hourly:{label:`ทุกชั่วโมง`,description:`ทุกชั่วโมง`},weekdays:{label:`วันธรรมดา`,description:`จันทร์–ศุกร์ เวลา 9:00 น.`},weekly:{label:`รายสัปดาห์`,description:`ทุกวันจันทร์เวลา 9:00 น.`},once:{label:`เรียกใช้ครั้งเดียว`,description:`ครั้งเดียว ลบหลังจากเรียกใช้`}},delivery:{notify:{label:`แจ้งเตือนฉัน`,description:`ส่งผลลัพธ์ไปยังแชท`},silent:{label:`เงียบ`,description:`เรียกใช้โดยไม่แจ้งเตือน`},isolated:{label:`เซสชันอิสระ`,description:`เรียกใช้ในเซสชันของตัวเอง`}},steps:{what:`ทำอะไร`,when:`เมื่อไหร่`,how:`อย่างไร`},defaultName:`ระบบอัตโนมัติ`,whatHeading:`ควรให้ทำอะไร?`,whatHint:`อธิบายงานด้วยภาษาธรรมชาติ agent จะเรียกใช้พรอมป์นี้ทุกครั้ง`,promptPlaceholder:`เช่น ตรวจสอบกล่องจดหมายของฉันเพื่อหาอีเมลด่วนและสรุปให้...`,nameOptional:`ชื่อ (ไม่บังคับ)`,namePlaceholder:`เช่น ตรวจกล่องจดหมายตอนเช้า`,whenHeading:`ควรเรียกใช้เมื่อไหร่?`,whenHint:`เลือกกำหนดเวลา คุณสามารถปรับแต่งอย่างละเอียดได้ภายหลัง`,howHeading:`ควรทำงานอย่างไร?`,howHint:`เลือกวิธีส่งผลลัพธ์`,title:`การทำงานอัตโนมัติใหม่`},summary:{enabled:`เปิดใช้งาน`,yes:`ใช่`,no:`ไม่`,jobs:`งาน`,nextWake:`ปลุกครั้งถัดไป`,refreshing:`กำลังรีเฟรช...`,refresh:`รีเฟรช`},jobs:{title:`งาน`,subtitle:`งานตามกำหนดเวลาทั้งหมดที่จัดเก็บไว้ในเกตเวย์`,shownOf:`แสดง {shown} จาก {total}`,searchJobs:`ค้นหางาน`,searchPlaceholder:`ชื่อ คำอธิบาย หรือเอเจนต์`,enabled:`เปิดใช้งาน`,schedule:`กำหนดเวลา`,lastRun:`ทำงานล่าสุด`,all:`ทั้งหมด`,sort:`เรียงลำดับ`,nextRun:`ทำงานครั้งถัดไป`,recentlyUpdated:`อัปเดตล่าสุด`,name:`ชื่อ`,direction:`ทิศทาง`,ascending:`น้อยไปมาก`,descending:`มากไปน้อย`,reset:`รีเซ็ต`,emptyTitle:`No scheduled jobs yet.`,emptyHint:`Create one from a plain-language prompt; advanced fields can wait.`,emptyFilteredHint:`Clear or change filters to see scheduled jobs.`,noMatching:`ไม่พบงานที่ตรงกัน`,loading:`กำลังโหลด...`,loadMore:`โหลดงานเพิ่มเติม`},runs:{title:`ประวัติการทำงาน`,subtitleAll:`การทำงานล่าสุดในทุกงาน`,subtitleJob:`การทำงานล่าสุดสำหรับ {title}`,scope:`ขอบเขต`,allJobs:`ทุกงาน`,selectedJob:`งานที่เลือก`,searchRuns:`ค้นหาการทำงาน`,searchPlaceholder:`สรุป ข้อผิดพลาด หรืองาน`,newestFirst:`ใหม่สุดก่อน`,oldestFirst:`เก่าสุดก่อน`,status:`สถานะ`,delivery:`การส่ง`,clear:`ล้าง`,allStatuses:`ทุกสถานะ`,allDelivery:`การส่งทั้งหมด`,selectJobHint:`เลือกงานเพื่อตรวจสอบประวัติการทำงาน`,noMatching:`ไม่พบการทำงานที่ตรงกัน`,loadMore:`โหลดการทำงานเพิ่มเติม`,runStatusOk:`ตกลง`,runStatusError:`ข้อผิดพลาด`,runStatusSkipped:`ข้ามแล้ว`,runStatusUnknown:`ไม่ทราบ`,deliveryDelivered:`ส่งแล้ว`,deliveryNotDelivered:`ยังไม่ส่ง`,deliveryUnknown:`ไม่ทราบ`,deliveryNotRequested:`ไม่ได้ร้องขอ`},form:{editJob:`แก้ไขงาน`,newJob:`งานใหม่`,advancedJob:`Advanced job`,updateSubtitle:`อัปเดตงานตามกำหนดเวลาที่เลือก`,createSubtitle:`สร้างการปลุกหรืองานรันของเอเจนต์ตามกำหนดเวลา`,required:`จำเป็น`,requiredSr:`จำเป็น`,basics:`พื้นฐาน`,basicsSub:`ตั้งชื่อ เลือกผู้ช่วย และกำหนดสถานะการเปิดใช้งาน`,fieldName:`ชื่อ`,description:`คำอธิบาย`,agentId:`Agent ID`,namePlaceholder:`สรุปตอนเช้า`,descriptionPlaceholder:`บริบทเพิ่มเติมสำหรับงานนี้ (ไม่บังคับ)`,agentPlaceholder:`main หรือ ops`,agentHelp:`เริ่มพิมพ์เพื่อเลือกเอเจนต์ที่รู้จัก หรือป้อนเอเจนต์แบบกำหนดเอง`,schedule:`กำหนดเวลา`,scheduleSub:`ควบคุมเวลาที่งานนี้จะทำงาน`,every:`ทุก`,at:`เวลา`,cronOption:`Cron`,runAt:`ทำงานเมื่อ`,unit:`หน่วย`,minutes:`นาที`,hours:`ชั่วโมง`,days:`วัน`,expression:`นิพจน์`,expressionPlaceholder:`0 7 * * *`,everyAmountPlaceholder:`30`,timezoneOptional:`Timezone (ไม่บังคับ)`,timezonePlaceholder:`America/Los_Angeles`,timezoneHelp:`เลือก timezone ที่ใช้ทั่วไป หรือป้อน timezone IANA ที่ถูกต้องใดก็ได้`,jitterHelp:`ต้องการ jitter หรือไม่? ใช้ ขั้นสูง → Stagger window / Stagger unit`,execution:`การทำงาน`,executionSub:`เลือกเวลาที่จะปลุก และกำหนดว่างานนี้ควรทำอะไร`,session:`เซสชัน`,main:`หลัก`,isolated:`แยก`,sessionHelp:`Main จะโพสต์เหตุการณ์ของระบบ ส่วน Isolated จะรันเทิร์นของเอเจนต์แบบเฉพาะ`,wakeMode:`โหมดปลุก`,now:`ตอนนี้`,nextHeartbeat:`heartbeat ถัดไป`,wakeModeHelp:`Now จะทริกเกอร์ทันที ส่วน Next heartbeat จะรอรอบถัดไป`,payloadKind:`ต้องการให้รันอะไร?`,systemEvent:`โพสต์ข้อความไปยังไทม์ไลน์หลัก`,agentTurn:`รันงานของผู้ช่วย (แยก)`,systemEventHelp:`ส่งข้อความของคุณไปยังไทม์ไลน์หลักของเกตเวย์ (เหมาะสำหรับการเตือน/ทริกเกอร์)`,agentTurnHelp:`เริ่มการทำงานของผู้ช่วยในเซสชันของตัวเองโดยใช้พรอมป์ต์ของคุณ`,timeoutSeconds:`หมดเวลา (วินาที)`,timeoutPlaceholder:`ไม่บังคับ เช่น 90`,timeoutHelp:`ไม่บังคับ เว้นว่างไว้เพื่อใช้พฤติกรรมการหมดเวลาเริ่มต้นของเกตเวย์สำหรับการรันนี้`,mainTimelineMessage:`ข้อความในไทม์ไลน์หลัก`,assistantTaskPrompt:`พรอมป์ต์งานของผู้ช่วย`,deliverySection:`การส่ง`,deliverySub:`เลือกตำแหน่งที่จะส่งสรุปผลการทำงาน`,resultDelivery:`การส่งผลลัพธ์`,announceDefault:`ประกาศสรุป (ค่าเริ่มต้น)`,webhookPost:`Webhook POST`,noneInternal:`ไม่มี (ภายใน)`,deliveryHelp:`Announce จะโพสต์สรุปไปยังแชต ส่วน None จะเก็บการทำงานไว้ภายใน`,webhookUrl:`Webhook URL`,channel:`ช่องทาง`,webhookPlaceholder:`https://example.com/cron`,channelHelp:`เลือกช่องทางที่เชื่อมต่อซึ่งจะได้รับสรุป`,webhookHelp:`ส่งสรุปผลการทำงานไปยังปลายทาง webhook`,to:`ถึง`,toPlaceholder:`+1555... หรือ chat id`,toHelp:`ตัวเลือกแทนที่ผู้รับ (chat id, โทรศัพท์ หรือ user id)`,advanced:`ขั้นสูง`,advancedHelp:`ตัวเลือกแทนที่สำหรับการรับประกันการส่ง, schedule jitter และการควบคุมโมเดล`,deleteAfterRun:`ลบหลังทำงาน`,deleteAfterRunHelp:`เหมาะที่สุดสำหรับการเตือนแบบครั้งเดียวที่ควรล้างออกอัตโนมัติ`,clearAgentOverride:`ล้างการแทนที่เอเจนต์`,clearAgentHelp:`บังคับให้งานนี้ใช้ผู้ช่วยเริ่มต้นของเกตเวย์`,exactTiming:`เวลาที่แม่นยำ (ไม่มี stagger)`,exactTimingHelp:`ทำงานตามขอบเขต cron ที่แน่นอนโดยไม่มีการกระจายเวลา`,staggerWindow:`หน้าต่าง stagger`,staggerUnit:`หน่วย stagger`,staggerPlaceholder:`30`,seconds:`วินาที`,model:`Model`,modelPlaceholder:`openai/gpt-5.2`,modelHelp:`เริ่มพิมพ์เพื่อเลือกโมเดลที่รู้จัก หรือป้อนโมเดลแบบกำหนดเอง`,thinking:`Thinking`,thinkingPlaceholder:`low`,thinkingHelp:`ใช้ระดับที่แนะนำ หรือป้อนค่าที่เฉพาะเจาะจงกับผู้ให้บริการ`,bestEffortDelivery:`การส่งแบบพยายามอย่างดีที่สุด`,bestEffortHelp:`อย่าทำให้งานล้มเหลวหากการส่งล้มเหลว`,cantAddYet:`ยังไม่สามารถเพิ่มงานได้`,fillRequired:`กรอกข้อมูลในช่องที่จำเป็นด้านล่างเพื่อเปิดใช้งานการส่ง`,fixFields:`แก้ไข {count} ช่องเพื่อดำเนินการต่อ`,fixFieldsPlural:`แก้ไข {count} ช่องเพื่อดำเนินการต่อ`,saving:`กำลังบันทึก...`,saveChanges:`บันทึกการเปลี่ยนแปลง`,addJob:`เพิ่มงาน`,cancel:`ยกเลิก`},jobList:{allJobs:`ทุกงาน`,selectJob:`(เลือกงาน)`,enabled:`เปิดใช้งาน`,disabled:`ปิดใช้งาน`,edit:`แก้ไข`,clone:`โคลน`,disable:`ปิดใช้งาน`,enable:`เปิดใช้งาน`,run:`รัน`,history:`ประวัติ`,remove:`ลบ`},jobDetail:{system:`ระบบ`,prompt:`พรอมป์ต์`,delivery:`การส่ง`,agent:`เอเจนต์`},jobState:{status:`สถานะ`,next:`ถัดไป`,last:`ล่าสุด`},runEntry:{noSummary:`ไม่มีสรุป`,runAt:`ทำงานเมื่อ`,openRunChat:`เปิดแชตการรัน`,next:`ถัดไป {rel}`,due:`ครบกำหนด {rel}`},errors:{nameRequired:`ต้องระบุชื่อ`,scheduleAtInvalid:`ป้อนวันที่/เวลาที่ถูกต้อง`,everyAmountInvalid:`ช่วงเวลาต้องมากกว่า 0`,cronExprRequired:`ต้องระบุ Cron expression`,staggerAmountInvalid:`Stagger ต้องมากกว่า 0`,systemTextRequired:`ต้องระบุข้อความระบบ`,agentMessageRequired:`ต้องระบุข้อความของเอเจนต์`,timeoutInvalid:`หากกำหนดค่าไว้ timeout ต้องมากกว่า 0 วินาที`,webhookUrlRequired:`ต้องระบุ Webhook URL`,webhookUrlInvalid:`Webhook URL ต้องขึ้นต้นด้วย http:// หรือ https://`,invalidRunTime:`เวลารันไม่ถูกต้อง`,invalidIntervalAmount:`จำนวนช่วงเวลาไม่ถูกต้อง`,cronExprRequiredShort:`ต้องระบุ Cron expression`,invalidStaggerAmount:`จำนวน stagger ไม่ถูกต้อง`,systemEventTextRequired:`ต้องระบุข้อความเหตุการณ์ของระบบ`,agentMessageRequiredShort:`ต้องระบุข้อความของเอเจนต์`,nameRequiredShort:`ต้องระบุชื่อ`}}};export{e as th};
|
|
2
|
+
//# sourceMappingURL=th-D_2DtFn6.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var e={common:{health:`Sağlık`,ok:`Tamam`,yes:`Evet`,no:`Hayır`,active:`Etkin`,loading:`Yükleniyor…`,refreshing:`Yenileniyor…`,online:`Çevrimiçi`,offline:`Çevrimdışı`,connect:`Bağlan`,connected:`Bağlandı`,refresh:`Yenile`,reload:`Yeniden yükle`,reset:`Sıfırla`,probe:`Sına`,call:`Ara`,confirm:`Onayla`,cancel:`İptal`,next:`Sonraki`,back:`Geri`,create:`Oluştur`,copy:`Kopyala`,copied:`Kopyalandı!`,copyCode:`Kodu kopyala`,delete:`Sil`,dismiss:`Kapat`,unselect:`Seçimi kaldır`,enabled:`Etkin`,disabled:`Devre dışı`,none:`yok`,na:`yok`,never:`never`,configured:`Yapılandırıldı`,running:`Çalışıyor`,linked:`Bağlandı`,mode:`Mod`,system:`Sistem`,light:`Hafif`,dark:`Koyu`,baseUrl:`Temel URL`,lastStart:`Son başlatma`,lastProbe:`Son sınama`,lastInbound:`Son gelen`,lastConnect:`Son bağlantı`,lastMessage:`Son mesaj`,authAge:`Kimlik doğrulama süresi`,credential:`Kimlik bilgisi`,audience:`Hedef kitle`,publicKey:`Açık Anahtar`,probeOk:`Sınama başarılı`,probeFailed:`Sınama başarısız`,reloadConfig:`Yapılandırmayı Yeniden Yükle`,loadConfig:`Yapılandırmayı yükle`,loadApprovals:`Onayları yükle`,settingsSections:`Ayar bölümleri`,version:`Sürüm`,docs:`Dokümanlar`,theme:`Tema`,colorMode:`Renk modu`,colorModeOption:`Renk modu: {mode}`,resources:`Kaynaklar`,search:`Ara`,save:`Kaydet`,saving:`Kaydediliyor…`,saveAndPublish:`Kaydet ve Yayımla`,importing:`İçe aktarılıyor…`,importFromRelays:`Aktarıcılardan içe aktar`,showAdvanced:`Gelişmişi Göster`,hideAdvanced:`Gelişmişi Gizle`,unsavedChanges:`Kaydedilmemiş değişiklikleriniz var`,secondsAgo:`{count} sn önce`,working:`Çalışıyor…`,showQr:`QR'ı Göster`,relink:`Yeniden bağla`,waitForScan:`Tarama için bekle`,logout:`Çıkış yap`},channels:{health:{title:`Kanal durumu`,subtitle:`Gateway'den alınan kanal durumu anlık görüntüleri.`,noSnapshotYet:`Henüz anlık görüntü yok.`},generic:{subtitle:`Kanal durumu ve yapılandırması.`},gatewayUrlConfirmation:{title:`Gateway URL'sini Değiştir`,subtitle:`Bu işlem farklı bir gateway sunucusuna yeniden bağlanacaktır`,warning:`Yalnızca bu URL'ye güveniyorsanız onaylayın. Kötü amaçlı URL'ler sisteminizi tehlikeye atabilir.`},nostr:{profile:`Profil`,editProfile:`Profili Düzenle`,profilePicture:`Profil resmi`,noProfile:`Profil ayarlanmadı.`,noProfileHint:`"Profili Düzenle" seçeneğine tıklayarak adınızı, biyografinizi ve avatarınızı ekleyin.`,name:`Ad`,displayName:`Görünen Ad`,about:`Hakkında`,advanced:`Gelişmiş`,profilePicturePreview:`Profil resmi önizlemesi`,account:`Hesap`,username:`Kullanıcı adı`,usernameHelp:`Kısa kullanıcı adı (ör. satoshi)`,bio:`Biyografi`,bioPlaceholder:`İnsanlara kendinizden bahsedin...`,bioHelp:`Kısa bir biyografi veya açıklama`,displayNameHelp:`Tam görünen adınız`,avatarUrl:`Avatar URL'si`,avatarHelp:`Profil resminizin HTTPS URL'si`,bannerUrl:`Banner URL'si`,bannerHelp:`Bir banner görselinin HTTPS URL'si`,website:`Web sitesi`,websiteHelp:`Kişisel web siteniz`,nip05Identifier:`NIP-05 Tanımlayıcısı`,nip05Help:`Doğrulanabilir tanımlayıcı (ör. siz@alanadi.com)`,lightningAddress:`Lightning Adresi`,lightningHelp:`Bahşişler için Lightning adresi (LUD-16)`}},lazyView:{loadingTitle:`Panel yükleniyor`,errorTitle:`Panel yüklenemedi`,errorSubtitle:`En son Control UI paketini yüklemek için sayfayı yeniden yükleyin veya ağ isteği başarısız olduysa tekrar deneyin.`,retry:`Tekrar dene`,unknownError:`Bilinmeyen modül yükleme hatası.`},nodes:{binding:{loadConfigHint:`Bağlamaları düzenlemek için yapılandırmayı yükleyin.`,formModeHint:`Bağlamaları burada düzenlemek için Yapılandırma sekmesini Form moduna alın.`,execNodeBinding:`Exec düğüm bağlaması`,execNodeBindingSubtitle:`exec host=node kullanırken agent'ları belirli bir düğüme sabitleyin.`,defaultBinding:`Varsayılan bağlama`,defaultBindingHint:`Agent'lar bir düğüm bağlamasını geçersiz kılmadığında kullanılır.`,node:`Düğüm`}},instances:{title:`Bağlı Örnekler`,subtitle:`Gateway ve istemcilerden gelen varlık işaretçileri.`,showHosts:`Ana bilgisayarları ve IP'leri göster`,hideHosts:`Ana bilgisayarları ve IP'leri gizle`,toggleHostVisibility:`Ana bilgisayar görünürlüğünü değiştir`,noInstances:`Henüz bildirilmiş örnek yok.`,lastInput:`Son giriş {time}`,reason:`Neden {reason}`},sessionsView:{title:`Oturumlar`,subtitle:`Etkin oturum anahtarları ve oturum bazlı geçersiz kılmalar.`,store:`Depo: {path}`,active:`Etkin`,limit:`Sınır`,filters:`Filtreler`,showFilters:`Filtreleri göster`,hideFilters:`Filtreleri gizle`,sourceFilters:`Oturum kaynağı filtreleri`,global:`Genel`,unknown:`Bilinmiyor`,showArchived:`Arşivlenmişleri göster`,activeTooltip:`Son {count} dakika içinde güncellendi.`,limitTooltip:`Yüklenecek maksimum oturum sayısı.`,globalTooltip:`Genel oturumları dahil et.`,unknownTooltip:`Bilinmeyen oturumları dahil et.`,showArchivedTooltip:`Arşivlenmiş oturumları dahil et.`,minutesPlaceholder:`dk`,searchPlaceholder:`Anahtara, ajana, etikete, türe göre filtrele…`,selected:`{count} seçildi`,deleteSelected:`Sil`,selectAllOnPage:`Sayfadakilerin tümünü seç`,selectSession:`Oturumu seç`,optionalPlaceholder:`(isteğe bağlı)`,key:`Anahtar`,label:`Etiket`,kind:`Tür`,updated:`Güncellendi`,tokens:`Tokenlar`,compaction:`Sıkıştırma`,thinking:`Düşünme`,fast:`Hızlı`,verbose:`Ayrıntılı`,reasoning:`Akıl yürütme`,noSessions:`Oturum bulunamadı.`,noSessionsMatchFilters:`Filtrelerinizle eşleşen oturum yok.`,showAll:`Tümünü göster`,inherit:`devral`,defaultOption:`Varsayılan ({value})`,offExplicit:`kapalı (açıkça)`,on:`açık`,off:`kapalı`,full:`tam`,stream:`akış`,customOption:`{value} (özel)`,manual:`manuel`,autoThreshold:`otomatik eşik`,overflowRetry:`taşma yeniden denemesi`,timeoutRetry:`zaman aşımı yeniden denemesi`,tokenRange:`{before} to {after} token`,tokensBefore:`önce {count} token`,tokenDeltaUnavailable:`token değişimi kullanılamıyor`,checkpoints:`{count} kontrol noktası`,checkpoint:`{count} kontrol noktası`,showSessionDetails:`{count} için oturum ayrıntılarını göster`,hideSessionDetails:`{count} için oturum ayrıntılarını gizle`,sessionDetails:`Oturum ayrıntıları`,compactionHistory:`Sıkıştırma geçmişi`,status:`Durum`,statusLive:`Canlı`,statusIdle:`Boşta`,statusUnknown:`Bilinmiyor`,statusRunning:`Çalışıyor`,statusDone:`Tamamlandı`,statusFailed:`Başarısız`,statusKilled:`Sonlandırıldı`,statusTimeout:`Zaman aşımına uğradı`,model:`Model`,provider:`Sağlayıcı`,runtime:`Çalışma zamanı`,surface:`Yüzey`,subject:`Konu`,room:`Oda`,space:`Alan`,sessionId:`Oturum kimliği`,activeRun:`Etkin çalıştırma`,archived:`Arşivlendi`,loadingCheckpoints:`Kontrol noktaları yükleniyor…`,noCheckpoints:`Bu oturum için kaydedilmiş sıkıştırma kontrol noktası yok.`,noSummary:`Özet yakalanmadı.`,branchFromCheckpoint:`Kontrol noktasından dal oluştur`,restoreCheckpoint:`Kontrol noktasını geri yükle`},agents:{noAgents:`No agents`,copyId:`Copy ID`,copyIdTitle:`Copy agent ID to clipboard`,default:`Default`,setDefault:`Set Default`,alreadyDefaultTitle:`Already the default agent`,setDefaultTitle:`Set as the default agent`,selectTitle:`Select an agent`,selectSubtitle:`Pick an agent to inspect its workspace and tools.`,tabs:{overview:`Genel Bakış`,files:`Dosyalar`,tools:`Araçlar`,skills:`Skills`,channels:`Kanallar`,cronJobs:`Cron İşleri`},context:{title:`Agent Context`,workspace:`Workspace`,openFilesTab:`Open Files tab`,primaryModel:`Primary Model`,runtime:`Çalışma zamanı`,identityName:`Identity Name`,identityAvatar:`Identity Avatar`,skillsFilter:`Skills Filter`,default:`Default`,configurationSubtitle:`Workspace, identity, and model configuration.`,schedulingSubtitle:`Workspace and scheduling targets.`},channels:{title:`Kanallar`,subtitle:`Gateway-wide channel status snapshot.`,lastRefresh:`Last refresh: {time}`,loadHint:`Load channels to see live status.`,empty:`No channels found.`,connectedCount:`{connected}/{total} connected`,noAccounts:`no accounts`,configuredCount:`{count} configured`,notConfigured:`not configured`,enabledCount:`{count} enabled`,setupGuide:`Setup guide`},cronPanel:{schedulerTitle:`Scheduler`,schedulerSubtitle:`Gateway cron status.`,jobs:`İşler`,nextWake:`Sonraki uyandırma`,agentJobsTitle:`Agent Cron Jobs`,agentJobsSubtitle:`Scheduled jobs targeting this agent.`,noJobs:`No jobs assigned.`,runNow:`Run Now`},files:{emptyDraft:`Empty draft`,minRead:`{count} min read`,markdownPreview:`Markdown Preview`,extensionPreview:`{ext} Preview`,preview:`Preview`,expandPreview:`Expand preview`,collapsePreview:`Collapse preview`,editFile:`Edit file`,closePreview:`Close preview`,coreFilesTitle:`Core Files`,coreFilesSubtitle:`Bootstrap persona, identity, and tool guidance.`,workspace:`Workspace`,loadHint:`Load the agent workspace files to edit core instructions.`,empty:`No files found.`,missing:`missing`,selectFile:`Select a file to edit.`,previewMarkdownTitle:`Preview rendered markdown`,willCreateOnSave:`Will Create on Save`,liveDraftPreview:`Live Draft Preview`,savedPreview:`Saved Preview`,updated:`Updated {time}`,notCreatedYet:`Not Created Yet`,updatedUnknown:`Updated Unknown`,missingHint:`This file is missing. Saving will create it in the agent workspace.`,content:`Content`,words:`{count} words`,lines:`lines`}},debug:{snapshotsTitle:`Snapshots`,snapshotsSubtitle:`Status, health, and heartbeat data.`,status:`Durum`,health:`Sağlık`,lastHeartbeat:`Last heartbeat`,security:{audit:`Security audit`,critical:`{count} critical`,warnings:`{count} warnings`,noCriticalIssues:`No critical issues`,info:`{count} info`,runPrefix:`Çalıştır`,runSuffix:`for details.`},manualRpcTitle:`Manual RPC`,manualRpcSubtitle:`Send a raw gateway method with JSON params.`,method:`Method`,selectMethod:`Select a method…`,paramsJson:`Params (JSON)`,modelsTitle:`Models`,modelsSubtitle:`Catalog from models.list.`,eventLogTitle:`Olay Günlüğü`,eventLogSubtitle:`Latest gateway events.`,noEvents:`No events yet.`},quickSettings:{security:{browserEnabled:`Browser enabled`,toolProfile:`Tool profile`}},execApproval:{expiresIn:`expires in {time}`,expired:`expired`,execApprovalNeeded:`Exec approval needed`,pluginApprovalNeeded:`Plugin approval needed`,pending:`{count} pending`,allowOnce:`Allow once`,alwaysAllow:`Always allow`,deny:`Deny`,labels:{host:`Host`,agent:`Aracı`,session:`Oturum`,cwd:`CWD`,resolved:`Resolved`,security:`Security`,ask:`Ask`,severity:`Severity`,plugin:`Plugin`}},agentTools:{connectedSource:`Bağlı: {id}`,connected:`Bağlandı`,channelSource:`Kanal: {id}`,channel:`Kanal`,builtIn:`Yerleşik`},nav:{chat:`Sohbet`,control:`Kontrol`,agent:`Aracı`,settings:`Ayarlar`,expand:`Kenar çubuğunu genişlet`,collapse:`Kenar çubuğunu daralt`,resize:`Kenar çubuğunu yeniden boyutlandır`},tabs:{agents:`Aracılar`,overview:`Genel Bakış`,channels:`Kanallar`,instances:`Örnekler`,sessions:`Oturumlar`,usage:`Kullanım`,cron:`Cron İşleri`,skills:`Skills`,nodes:`Düğümler`,chat:`Sohbet`,config:`Yapılandırma`,communications:`İletişim`,appearance:`Görünüm`,automation:`Otomasyon`,infrastructure:`Altyapı`,aiAgents:`AI ve Aracılar`,debug:`Hata Ayıklama`,logs:`Günlükler`,dreams:`Düşler`},subtitles:{agents:`Çalışma alanları, araçlar, kimlikler.`,overview:`Durum, giriş noktaları, sağlık.`,channels:`Kanallar ve ayarlar.`,instances:`Bağlı istemciler ve düğümler.`,sessions:`Etkin oturumlar ve varsayılanlar.`,usage:`API kullanımı ve maliyetler.`,cron:`Uyandırmalar ve yinelenen çalıştırmalar.`,skills:`Skills ve API anahtarları.`,nodes:`Eşleştirilmiş cihazlar ve komutlar.`,chat:`Hızlı müdahaleler için Gateway sohbeti.`,config:`daocore.json dosyasını düzenleyin.`,communications:`Kanallar, mesajlar ve ses ayarları.`,appearance:`Tema, UI ve kurulum sihirbazı ayarları.`,automation:`Komutlar, kancalar, cron ve eklentiler.`,infrastructure:`Gateway, web, tarayıcı ve medya ayarları.`,aiAgents:`Aracılar, modeller, Skills, araçlar, bellek, oturum.`,debug:`Anlık görüntüler, olaylar, RPC.`,logs:`Canlı Gateway günlükleri.`,dreams:`Uyku sırasında bellek birleştirme.`},overview:{access:{title:`Gateway Erişimi`,subtitle:`Kontrol panelinin nereye bağlandığı ve nasıl kimlik doğruladığı.`,wsUrl:`WebSocket URL'si`,token:`Gateway Token`,password:`Parola (saklanmaz)`,passwordPlaceholder:`sistem veya paylaşılan parola`,sessionKey:`Varsayılan Oturum Anahtarı`,language:`Dil`,connectHint:`Bağlantı değişikliklerini uygulamak için Bağlan'a tıklayın.`,trustedProxy:`Güvenilir proxy üzerinden kimlik doğrulandı.`,showToken:`Tokenı göster`,hideToken:`Token'ı gizle`,toggleTokenVisibility:`Token görünürlüğünü değiştir`,showPassword:`Parolayı göster`,hidePassword:`Parolayı gizle`,togglePasswordVisibility:`Parola görünürlüğünü değiştir`},snapshot:{title:`Anlık Görüntü`,subtitle:`En son gateway el sıkışma bilgileri.`,status:`Durum`,uptime:`Çalışma Süresi`,tickInterval:`Tick Aralığı`,lastChannelsRefresh:`Son Kanal Yenilemesi`,channelsHint:`WhatsApp, Telegram, Discord, Signal veya iMessage bağlamak için Kanallar'ı kullanın.`},stats:{instances:`Örnekler`,instancesHint:`Son 5 dakikadaki varlık işaretçileri.`,sessions:`Oturumlar`,sessionsHint:`Gateway tarafından izlenen son oturum anahtarları.`,cron:`Cron`,cronNext:`Sonraki uyandırma {time}`},notes:{title:`Notlar`,subtitle:`Uzaktan kontrol kurulumları için hızlı hatırlatmalar.`,tailscaleTitle:`Tailscale serve`,tailscaleText:`Gateway’i tailnet kimlik doğrulamasıyla loopback üzerinde tutmak için serve modunu tercih edin.`,sessionTitle:`Oturum hijyeni`,sessionText:`Bağlamı sıfırlamak için /new veya sessions.patch kullanın.`,cronTitle:`Cron hatırlatmaları`,cronText:`Yinelenen çalıştırmalar için yalıtılmış oturumlar kullanın.`},auth:{required:`Bu Gateway kimlik doğrulama gerektiriyor. Bir token veya parola ekleyin, ardından Bağlan'a tıklayın.`,failed:`Kimlik doğrulama başarısız oldu. {command} ile token içeren URL'yi yeniden kopyalayın veya token'ı güncelleyin, ardından Bağlan'a tıklayın.`},pairing:{hint:`Bu cihazın Gateway ana bilgisayarından eşleştirme onayı alması gerekiyor.`,scopeUpgradeTitle:`Kapsam yükseltmesi onay bekliyor.`,scopeUpgradeSummary:`Bu cihaz zaten eşleştirilmiş, ancak istenen daha geniş kapsam onay bekliyor.`,roleUpgradeTitle:`Rol yükseltmesi onay bekliyor.`,roleUpgradeSummary:`Bu cihaz zaten eşleştirilmiş, ancak istenen rol değişikliği onay bekliyor.`,metadataUpgradeTitle:`Cihaz meta veri değişikliği onay bekliyor.`,metadataUpgradeSummary:`Bu cihaz zaten eşleştirilmiş, ancak meta veri değişikliği onay bekliyor.`,mobileHint:`Mobilde misiniz? Masaüstünüzde daocore dashboard --no-open komutundan tam URL'yi (#token=... dahil) kopyalayın.`,docsTitle:`Cihaz eşleştirme belgeleri (yeni sekmede açılır)`,docsLink:`Belgeler: Cihaz eşleştirme`},insecure:{hint:`Bu sayfa HTTP olduğu için tarayıcı cihaz kimliğini engelliyor. HTTPS (Tailscale Serve) kullanın veya Gateway ana bilgisayarında {url} adresini açın.`,stayHttp:`HTTP kullanmaya devam etmeniz gerekiyorsa, {config} ayarlayın (yalnızca token).`},connection:{title:`Nasıl bağlanılır`,step1:`Ana bilgisayarınızda Gateway’i başlatın:`,step2:`Token içeren bir kontrol paneli URL'si alın:`,step3:`Yukarıya WebSocket URL'sini ve token'ı yapıştırın veya token içeren URL'yi doğrudan açın.`,step4:`Ya da yeniden kullanılabilir bir token oluşturun:`,docsHint:`Uzaktan erişim için Tailscale Serve önerilir. `,docsLink:`Dokümanları oku →`,authDocsTitle:`Control UI kimlik doğrulama belgeleri (yeni sekmede açılır)`,authDocsLink:`Belgeler: Control UI kimlik doğrulama`,tailscaleDocsTitle:`Tailscale Serve belgeleri (yeni sekmede açılır)`,tailscaleDocsLink:`Belgeler: Tailscale Serve`,insecureHttpDocsTitle:`Güvenli olmayan HTTP belgeleri (yeni sekmede açılır)`,insecureHttpDocsLink:`Belgeler: Güvenli olmayan HTTP`,copyCommand:`Komutu kopyala`,copyCommandAria:`Komutu kopyala: {command}`},cards:{cost:`Maliyet`,skills:`Skills`,recentSessions:`Son Oturumlar`,modelAuth:`Model Kimlik Doğrulaması`,modelAuthOk:`{count} tamam`,modelAuthExpired:`{count} süresi dolmuş`,modelAuthExpiring:`{count} süresi yakında dolacak`,modelAuthProviders:`{count} sağlayıcı`,modelAuthUsageLeft:`%{pct} kaldı`,modelAuthExpiresIn:`{when} süresi doluyor`,modelAuthAttentionExpiredTitle:`Model kimlik doğrulamasının süresi doldu`,modelAuthAttentionExpiringTitle:`Model kimlik doğrulamasının süresi yakında dolacak`,modelAuthAttentionExpiredDesc:`{providers} — daocore models auth ile yeniden kimlik doğrulayın`,modelAuthAttentionExpiringEntry:`{provider} ({when})`},attention:{title:`Dikkat`},eventLog:{title:`Olay Günlüğü`},logTail:{title:`Gateway Günlükleri`},quickActions:{newSession:`Yeni Oturum`,automation:`Otomasyon`,refreshAll:`Tümünü Yenile`,terminal:`Terminal`},palette:{placeholder:`Bir komut yazın…`,noResults:`Sonuç yok`,categories:{search:`Ara`,navigation:`Navigation`,skills:`Skills`},items:{overview:`Genel Bakış`,sessions:`Oturumlar`,scheduled:`Zamanlanmış`,skills:`Skills`,settings:`Ayarlar`,agents:`Aracılar`,shellCommand:`Shell Komutu`,debugMode:`Hata Ayıklama Modu`},descriptions:{shellCommand:`Shell çalıştır`,debugMode:`Hata ayıklamayı değiştir`},footer:{navigate:`gezin`,select:`seç`,close:`kapat`}}},dreaming:{tabs:{scene:`Sahne`,diary:`Günlük`,advanced:`Gelişmiş`},header:{refresh:`Yenile`,refreshing:`Yenileniyor…`,on:`Dreaming Açık`,off:`Dreaming Kapalı`},restartConfirmation:{title:`Restart Gateway to Apply Change`,subtitle:`Changing Dreaming mode restarts the gateway.`,warning:`This action will restart the Gateway and may temporarily interrupt chats, automations, and connected channels.`,confirm:`Confirm Restart`,restarting:`Restarting…`,failed:`Could not apply change. Check your connection and try again.`},status:{active:`Dreaming Etkin`,idle:`Dreaming Boşta`,promotedSuffix:`yükseltildi`,nextSweepPrefix:`sonraki tarama`},scene:{backfill:`Geri doldur`,dedupeDiary:`Yinelenen Günlüğü Temizle`,reset:`Sıfırla`,clearGrounded:`Temellendirilmişleri Temizle`,repairCache:`Rüya Önbelleğini Onar`,working:`Çalışıyor…`},phase:{light:`Hafif`,deep:`Derin`,rem:`REM`,off:`kapalı`},advanced:{eyebrow:`İncele`,title:`Günlük Kayıt İncelemesi`,description:`Günlük kayıttan nelerin geldiğini, nelerin terfi etmeyi beklediğini ve yakın zamanda nelerin terfi ettiğini inceleyin.`,summaryFromDailyLog:`günlük kayıttan`,summaryWaiting:`bekliyor`,summaryPromotedToday:`bugün terfi etti`,stagedTitle:`Günlük Kayıttan`,stagedDescription:`Eski günlük kayıt girdilerinden alınan yeniden oynatma adayları.`,shortTermTitle:`Terfi Etmeyi Bekleyenler`,shortTermDescription:`Gerçek belleğe yükselmeyi bekleyen mevcut kısa vadeli adaylar.`,sortRecent:`En yeni`,sortSignals:`En güçlü destek`,originDailyLog:`yeniden oynatıldı`,originLive:`canlı`,originMixed:`karma`,promotedTitle:`Son Terfiler`,promotedDescription:`Terfi sürecini zaten tamamlamış öğeler.`,emptyGrounded:`Şu anda aşamalandırılmış grounded replay girdisi yok.`,emptyShortTerm:`İncelenecek kısa vadeli girdi yok.`,emptyPromoted:`İncelenecek son terfi yok.`,updatedPrefix:`güncellendi`},stats:{shortTerm:`Kısa vadeli`,grounded:`Temellendirilmiş`,signals:`Sinyaller`,promoted:`Yükseltilenler`,phaseHits:`Aşama İsabetleri`},trace:{shortTerm:`Kısa vadeli`,grounded:`Temellendirilmiş`,signals:`Sinyaller`,promoted:`Yükseltilenler`,groundedLed:`grounded-led`,emptyShortTerm:`Etkin kısa vadeli öğe yok.`,emptyGrounded:`Hazırlanmış temellendirilmiş öğe yok.`,emptySignals:`Etkin sinyal yok.`,emptyPromoted:`Bugün henüz hiçbir şey yükseltilmedi.`},diary:{title:`Rüya Günlüğü`,noDreamsYet:`Henüz rüya yok`,noDreamsHint:`İlk dreaming döngüsü çalıştıktan sonra rüyalar burada görünecek.`,waitingTitle:`Günlük bekliyor`,waitingHint:`Anlatı girişleri bir sonraki dreaming döngüsünden sonra görünecek.`,older:`Daha eski`,newer:`Daha yeni`,reload:`Yeniden yükle`,reloading:`Yeniden yükleniyor…`},phrases:{consolidatingMemories:`anılar pekiştiriliyor…`,tidyingKnowledgeGraph:`bilgi grafiği düzenleniyor…`,replayingConversations:`bugünün konuşmaları yeniden oynatılıyor…`,weavingShortTerm:`kısa vadeli hafıza uzun vadeli hafızaya işleniyor…`,defragmentingMindPalace:`zihin sarayı birleştiriliyor…`,filingLooseThoughts:`dağınık düşünceler dosyalanıyor…`,connectingDots:`uzaktaki noktalar birleştiriliyor…`,compostingContext:`eski bağlam pencereleri kompost ediliyor…`,alphabetizingSubconscious:`bilinçaltı alfabetik olarak sıralanıyor…`,promotingHunches:`umut veren sezgiler yükseltiliyor…`,forgettingNoise:`önemsiz olanlar unutuluyor…`,dreamingEmbeddings:`embedding'lerde rüya görülüyor…`,reorganizingAttic:`hafıza tavan arası yeniden düzenleniyor…`,indexingDay:`gün usulca dizinleniyor…`,nurturingInsights:`filizlenen içgörüler besleniyor…`,simmeringIdeas:`yarı şekillenmiş fikirler demleniyor…`,whisperingVectorStore:`vector store'a fısıldanıyor…`}},usage:{common:{emptyValue:`—`,unknown:`bilinmiyor`},loading:{title:`Kullanım Genel Bakışı`,badge:`Yükleniyor`},metrics:{tokens:`Tokenlar`,cost:`Maliyet`,session:`oturum`,sessions:`oturumlar`},presets:{today:`Bugün`,last7d:`7g`,last30d:`30g`,last90d:`90g`,last1y:`1y`,all:`Tümü`},scope:{instance:`Geçerli örnek`,instanceHint:`Her mantıksal oturum için yalnızca etkin oturum kimliğini göster.`,family:`Geçmiş soy hattı`,familyHint:`Bilinen döndürülmüş transkript destekli oturum kimliklerini birleştir.`,familyIncluded:`Geçmiş soy hattı {count} oturum örneği içerir.`},filters:{title:`Filtreler`,to:`ile`,startDate:`Başlangıç tarihi`,endDate:`Bitiş tarihi`,timeZone:`Saat dilimi`,timeZoneLocal:`Yerel`,timeZoneUtc:`UTC`,pin:`Sabitle`,pinned:`Sabitlendi`,unpin:`Filtre sabitlemesini kaldır`,selectAll:`Tümünü Seç`,clear:`Temizle`,clearAll:`Tümünü Temizle`,remove:`Filtreyi kaldır`,all:`Tümü`,days:`Günler`,hours:`Saat`,session:`Oturum`,agent:`Aracı`,channel:`Kanal`,provider:`Sağlayıcı`,model:`Model`,tool:`Araç`,daysCount:`{count} gün`,hoursCount:`{count} saat`,sessionsCount:`{count} oturum`},query:{placeholder:`Oturumları filtrele (örn. key:agent:main:cron* model:gpt-4o has:errors minTokens:2000)`,apply:`Filtrele (istemci tarafında)`,matching:`{shown} / {total} oturum eşleşiyor`,inRange:`Aralıkta {total} oturum var`,tip:`İpucu: günleri daraltmak için filtreleri kullanın veya çubuklara tıklayın.`},export:{label:`Dışa aktar`,sessionsCsv:`Oturumlar CSV`,dailyCsv:`Günlük CSV`,json:`JSON`},cacheStatus:{warning:`Kullanım önbelleği arka planda yeniden oluşturuluyor. Görüntülenen toplamlar güncel olmayabilir.`,title:`{status}: {pending} beklemede, {stale} güncel değil, {cached} önbellekte`,status:{refreshing:`yenileniyor`,stale:`güncel değil`,partial:`kısmi`}},empty:{title:`Bir tarih aralığıyla başlayın`,subtitle:`Kontrol panelinden ayrılmadan maliyetleri karşılaştırmak, oturumları incelemek ve zaman çizelgelerinde ayrıntıya inmek için kullanım verilerini yükleyin.`,hint:`Kullanımı yüklemek için bir tarih aralığı seçin ve Yenile'ye tıklayın.`,noData:`Veri yok`,featureOverview:`Genel bakış kartları`,featureSessions:`Oturum sıralaması`,featureTimeline:`Zaman çizelgesi ayrıntısı`},daily:{title:`Günlük Kullanım`,total:`Toplam`,byType:`Türe Göre`,tokensTitle:`Günlük Token Kullanımı`,costTitle:`Günlük Maliyet`},breakdown:{output:`Çıktı`,input:`Girdi`,cacheWrite:`Önbellek Yazma`,cacheRead:`Önbellek Okuma`,total:`Toplam`,tokensByType:`Türe Göre Tokenlar`,costByType:`Türe Göre Maliyet`},overview:{title:`Kullanım Genel Bakışı`,messages:`Mesajlar`,messagesHint:`Aralıktaki toplam kullanıcı ve asistan mesajları.`,messagesAbbrev:`msg`,user:`kullanıcı`,assistant:`asistan`,toolCalls:`Araç Çağrıları`,toolCallsHint:`Oturumlar genelindeki toplam araç çağrısı sayısı.`,toolsUsed:`kullanılan araçlar`,errors:`Hatalar`,errorsHint:`Aralıktaki toplam mesaj ve araç hataları.`,toolResults:`araç sonuçları`,avgTokens:`Ort. Token / Mesaj`,avgTokensHint:`Bu aralıktaki mesaj başına ortalama token.`,avgCost:`Ort. Maliyet / Mesaj`,avgCostHint:`Sağlayıcılar maliyet bildirdiğinde mesaj başına ortalama maliyet.`,avgCostHintMissing:`Sağlayıcılar maliyet bildirdiğinde mesaj başına ortalama maliyet. Bu aralıktaki bazı veya tüm oturumlar için maliyet verisi eksik.`,acrossMessages:`{count} mesaj genelinde`,sessions:`Oturumlar`,sessionsHint:`Aralıktaki farklı oturumlar.`,sessionsInRange:`aralıkta {count} içinden`,throughput:`Verim`,throughputHint:`Verim, etkin süre boyunca dakika başına token sayısını gösterir. Daha yüksek olması daha iyidir.`,tokensPerMinute:`tok/dk`,perMinute:`/ dk`,errorRate:`Hata Oranı`,errorHint:`Hata oranı = hatalar / toplam mesajlar. Daha düşük olması daha iyidir.`,avgSession:`ort. oturum`,cacheHitRate:`Önbellek İsabet Oranı`,cacheHint:`Önbellek isabet oranı = önbellek okuma / (girdi + önbellek okuma). Daha yüksek olması daha iyidir.`,cached:`önbellekten`,prompt:`istem`,calls:`çağrı`,topModels:`En Çok Kullanılan Modeller`,topProviders:`En Çok Kullanılan Sağlayıcılar`,topTools:`En Çok Kullanılan Araçlar`,topAgents:`En Çok Kullanılan Aracılar`,topChannels:`En Çok Kullanılan Kanallar`,peakErrorDays:`En Yoğun Hata Günleri`,peakErrorHours:`En Yoğun Hata Saatleri`,noModelData:`Model verisi yok`,noProviderData:`Sağlayıcı verisi yok`,noToolCalls:`Araç çağrısı yok`,noAgentData:`Aracı verisi yok`,noChannelData:`Kanal verisi yok`,noErrorData:`Hata verisi yok`},sessions:{title:`Oturumlar`,shown:`{count} gösteriliyor`,total:`toplam {count}`,avg:`ort.`,all:`Tümü`,recent:`Son görüntülenenler`,recentShort:`Son`,sort:`Sırala`,ascending:`Artan`,descending:`Azalan`,clearSelection:`Seçimi Temizle`,noRecent:`Son oturum yok`,noneInRange:`Aralıkta oturum yok`,more:`+{count} daha`,selected:`Seçili ({count})`,copy:`Kopyala`,copyName:`Oturum adını kopyala`,limitReached:`İlk 1.000 oturum gösteriliyor. Tam sonuçlar için tarih aralığını daraltın.`},details:{noUsageData:`Bu oturum için kullanım verisi yok.`,duration:`Süre`,modelMix:`Model Dağılımı`,filtered:`(filtrelendi)`,close:`Oturum ayrıntılarını kapat`,noTimeline:`Zaman çizelgesi verisi yok`,noDataInRange:`Aralıkta veri yok`,usageOverTime:`Zaman İçinde Kullanım`,reset:`Sıfırla`,perTurn:`Tur Başına`,cumulative:`Kümülatif`,turnRange:`{total} içinden {start}–{end}. turlar`,assistantOutputTokens:`Asistan çıktı tokenları`,userToolInputTokens:`Kullanıcı + araç girdi tokenları`,tokensWrittenToCache:`Önbelleğe yazılan tokenlar`,tokensReadFromCache:`Önbellekten okunan tokenlar`,noContextData:`Bağlam verisi yok`,systemPromptBreakdown:`Sistem İstemi Dağılımı`,collapse:`Daralt`,collapseAll:`Tümünü Daralt`,expandAll:`Tümünü Genişlet`,baseContextPerMessage:`Mesaj başına temel bağlam`,system:`Sistem`,systemShort:`Sis`,skills:`Skills`,tools:`Araçlar`,files:`Dosyalar`,ofInput:`girdinin`,of:`/`,timelineFiltered:`zaman çizelgesi filtrelendi`,conversation:`Konuşma`,noMessages:`Mesaj yok`,tool:`Araç`,toolResult:`Araç sonucu`,hasTools:`Araç içeriyor`,searchConversation:`Konuşmada ara`,you:`Siz`,noMessagesMatch:`Filtrelerle eşleşen mesaj yok.`},mosaic:{title:`Zamana Göre Etkinlik`,subtitleEmpty:`Tahminler için oturum zaman damgaları gerekir.`,subtitle:`Oturum aralıklarından tahmin edilir (ilk/son etkinlik). Saat dilimi: {zone}.`,noTimelineData:`Henüz zaman çizelgesi verisi yok.`,dayOfWeek:`Haftanın Günü`,midnight:`Gece yarısı`,fourAm:`04:00`,eightAm:`08:00`,noon:`Öğlen`,fourPm:`16:00`,eightPm:`20:00`,legend:`Düşük → Yüksek token yoğunluğu`,sun:`Paz`,mon:`Pzt`,tue:`Sal`,wed:`Çar`,thu:`Per`,fri:`Cum`,sat:`Cmt`}},login:{subtitle:`Gateway Kontrol Paneli`,passwordPlaceholder:`isteğe bağlı`,showToken:`Tokenı göster`,hideToken:`Token'ı gizle`,toggleTokenVisibility:`Token görünürlüğünü değiştir`,showPassword:`Parolayı göster`,hidePassword:`Parolayı gizle`,togglePasswordVisibility:`Parola görünürlüğünü değiştir`,failure:{rawError:`Ham hata`,docsAuth:`Control UI kimlik doğrulama belgeleri`,docsPairing:`Cihaz eşleştirme belgeleri`,docsInsecure:`Güvensiz HTTP belgeleri`,authRequired:{title:`Kimlik doğrulama gerekli`,summary:`Gateway erişilebilir, ancak bu tarayıcı bağlanmadan önce eşleşen bir token veya parola gerekir.`,stepPaste:`daocore dashboard --no-open çıktısındaki tokenı yapıştırın veya yapılandırılmış parolayı girin.`,stepGenerate:`Token yapılandırılmamışsa Gateway ana makinesinde daocore doctor --generate-gateway-token çalıştırın.`,stepConnect:`Kimlik bilgisini güncelledikten sonra Connect düğmesine tekrar tıklayın.`},authFailed:{title:`Kimlik doğrulama eşleşmedi`,summary:`Sağlanan kimlik bilgisi reddedildi. En yaygın neden eski bir token veya başka bir Gateway URL’sinden kopyalanmış tokendır.`,stepDashboard:`daocore dashboard --no-open çalıştırın ve yeni URL’yi açın veya tokenını yapıştırın.`,stepReplace:`Eski token/parola değerlerini değiştirin; başka bir Gateway URL’sinden tokenı yeniden kullanmayın.`,stepMode:`Aynı anda tek bir eşleşen auth modu kullanın: token modu için gateway token, parola modu için parola.`},rateLimited:{title:`Çok fazla başarısız deneme`,summary:`Gateway bu istemci için kimlik doğrulama denemelerini geçici olarak sınırlıyor.`,stepStop:`Bu sekmeden bir süre yeniden denemeyi bırakın.`,stepWait:`Auth sınırlayıcının soğumasını bekleyin, ardından düzeltilmiş kimlik bilgisiyle yeniden bağlanın.`,stepCheckClients:`Bu paylaşılan bir host ise diğer istemcilerde yinelenen hatalı denemeleri kontrol edin.`},pairing:{title:`Cihaz eşleştirmesi gerekli`,scopeTitle:`Scope yükseltmesi bekliyor`,roleTitle:`Rol yükseltmesi bekliyor`,metadataTitle:`Cihaz yenilemesi bekliyor`,summary:`Bu tarayıcının Control UI kullanabilmesi için Gateway hostundan tek seferlik onay gerekir.`,upgradeSummary:`Bu tarayıcı zaten biliniyor, ancak istenen erişim değişti ve yeni onay gerekiyor.`,stepList:`Gateway hostunda daocore devices list çalıştırın.`,stepApproveId:`Bu isteği onaylayın: daocore devices approve {requestId}.`,stepApprove:`Bu listedeki bekleyen tarayıcı/cihaz isteğini onaylayın.`,stepReconnect:`Onay tamamlandıktan sonra yeniden bağlanın.`},insecure:{title:`Güvenli tarayıcı bağlamı gerekli`,summary:`Bu sayfa düz HTTP üzerinden çalışıyor, bu yüzden tarayıcı Gateway’in beklediği cihaz kimliğini oluşturamıyor.`,stepHttps:`HTTPS/Tailscale Serve kullanın veya Gateway hostunda http://127.0.0.1:18789 adresini açın.`,stepLocalCompat:`Yerel yalnızca-token uyumluluğu için gateway.controlUi.allowInsecureAuth: true ayarlayın.`,stepAvoidDisable:`Uzak HTTP erişimi için cihaz authunu devre dışı bırakmaktan kaçının.`},origin:{title:`Tarayıcı originine izin verilmiyor`,summary:`Gateway, Control UI bağlantısını kabul etmeden önce bu sayfa originini reddetti.`,stepAllowedOrigins:`Bu tarayıcı originini gateway.controlUi.allowedOrigins içine ekleyin.`,stepFullOrigin:`http://localhost:5173 gibi tam originler kullanın, wildcard kalıpları kullanmayın.`,stepRestart:`İzin verilen originleri değiştirdikten sonra Gateway’i yeniden başlatın veya yeniden yükleyin.`},protocol:{title:`Protokol uyuşmazlığı`,summary:`Sunulan Control UI ile çalışan Gateway desteklenen bağlantı protokolü konusunda uyuşmuyor.`,stepDashboard:`UI ve Gateway aynı kurulumdan gelsin diye sunulan dashboardı daocore dashboard ile yeniden açın.`,stepDevUi:`pnpm ui:dev kullanıyorsanız geliştirme UI’sini mevcut checkouta göre yeniden derleyin veya yeniden başlatın.`,stepRestart:`DaoCore güncellemesinden sonra Gateway’i yeniden başlatın, böylece güncel protokolü sunsun.`},network:{title:`Bağlanılamadı`,summary:`Tarayıcı Gateway bağlantısını tamamlayamadı. Kimlik bilgilerini yeniden denemeden önce hedefi ve taşıma yolunu kontrol edin.`,stepGateway:`daocore status veya daocore gateway run ile Gateway’in çalıştığını doğrulayın.`,stepUrl:`WebSocket URL’sini kontrol edin ve Gateway HTTPS/Tailscale Serve arkasındaysa wss:// kullanın.`,stepDashboard:`Geçerli URL ve auth ayrıntılarını yeniden kopyalamak için dashboardı daocore dashboard --no-open ile yeniden açın.`}}},chat:{disconnected:`Gateway bağlantısı kesildi.`,refreshTitle:`Sohbet verilerini yenile`,settings:`Sohbet ayarları`,thinkingToggle:`Asistanın düşünme/çalışma çıktısını aç/kapat`,toolCallsToggle:`Araç çağrılarını ve araç sonuçlarını aç/kapat`,autoScrollMode:`Otomatik kaydırma modu`,autoScrollAlways:`Her zaman`,autoScrollNearBottom:`Alta yakın`,autoScrollOff:`Kapalı`,focusToggle:`Odak modunu aç/kapat (kenar çubuğunu + sayfa başlığını gizle)`,hideCronSessions:`Cron oturumlarını gizle`,showCronSessions:`Cron oturumlarını göster`,showCronSessionsHidden:`Cron oturumlarını göster ({count} gizli)`,onboardingDisabled:`Kurulum sırasında devre dışı`,gatewayStatus:`Gateway durumu: {status}`,commandPaletteTitle:`Ara veya şuraya git… (⌘K)`,openCommandPalette:`Komut paletini aç`,docsOpensInNewTab:`{label} (yeni sekmede açılır)`,updateAvailable:`Güncelleme mevcut:`,runningVersion:`çalışan v{version}`,updating:`Güncelleniyor…`,updateNow:`Şimdi güncelle`,dismissUpdateBanner:`Güncelleme başlığını kapat`,switchedSession:`{session} oturumuna geçildi`,welcome:{ready:`Ready to chat`,hintBeforeShortcut:`Type a message below ·`,hintAfterShortcut:`for commands`,suggestions:{whatCanYouDo:`What can you do?`,summarizeRecentSessions:`Summarize my recent sessions`,configureChannel:`Help me configure a channel`,checkSystemHealth:`Check system health`}},runControls:{newSession:`New session`,export:`Dışa aktar`,exportChat:`Export chat`,queue:`Queue`,queueMessage:`Queue message`,stop:`Stop`,stopGenerating:`Stop generating`,send:`Send`,sendMessage:`Send message`},composer:{placeholder:`Message {name} (Enter to send)`,placeholderWithAttachments:`Add a message or paste more images...`,placeholderDisconnected:`Connect to the gateway to start chatting...`,attachFile:`Attach file`,startTalk:`Start Talk`,stillListening:`Hâlâ dinliyor`,talkTranscript:`Konuşma dökümü`,stopTalk:`Stop Talk`},selectors:{agentFilter:`Oturumları ajana göre filtrele`,session:`Chat session`,sessionSearch:`Oturumlarda ara`,clearSessionSearch:`Oturum aramasını temizle`,loadMoreSessions:`Daha fazla oturum yükle`,model:`Chat model`,thinkingLevel:`Chat thinking level`}},languages:{en:`İngilizce`,zhCN:`简体中文 (Basitleştirilmiş Çince)`,zhTW:`繁體中文 (Geleneksel Çince)`,ptBR:`Português (Brezilya Portekizcesi)`,de:`Deutsch (Almanca)`,es:`Español (İspanyolca)`,jaJP:`日本語 (Japonca)`,ko:`한국어 (Korece)`,fr:`Français (Fransızca)`,ar:`العربية (Arapça)`,it:`Italiano (İtalyanca)`,tr:`Türkçe (Türkçe)`,uk:`Українська (Ukraynaca)`,id:`Bahasa Indonesia (Endonezce)`,pl:`Polski (Lehçe)`,th:`ไทย (Tayca)`,vi:`Tiếng Việt (Vietnamca)`,nl:`Nederlands (Felemenkçe)`,fa:`فارسی (Farsça)`},cron:{quickCreate:{schedules:{everyMorning:{label:`Her sabah`,description:`Her gün 08:00`},everyEvening:{label:`Her akşam`,description:`Her gün 18:00`},hourly:{label:`Saatlik`,description:`Her saat`},weekdays:{label:`Hafta içi`,description:`Pzt–Cum 09:00`},weekly:{label:`Haftalık`,description:`Her Pazartesi 09:00`},once:{label:`Bir kez çalıştır`,description:`Tek seferlik, çalıştırmadan sonra sil`}},delivery:{notify:{label:`Bana bildir`,description:`Sonuçları sohbete ilet`},silent:{label:`Sessiz`,description:`Bildirim olmadan çalıştır`},isolated:{label:`Bağımsız oturum`,description:`Kendi oturumunda çalıştır`}},steps:{what:`Ne`,when:`Ne zaman`,how:`Nasıl`},defaultName:`Otomasyon`,whatHeading:`Ne yapmalı?`,whatHint:`Görevi doğal dille açıklayın. Ajan bu istemi her seferinde çalıştıracak.`,promptPlaceholder:`örn., Gelen kutumu acil e-postalar için kontrol et ve özetle...`,nameOptional:`Ad (isteğe bağlı)`,namePlaceholder:`örn., Sabah gelen kutusu kontrolü`,whenHeading:`Ne zaman çalışmalı?`,whenHint:`Bir zamanlama seçin. Daha sonra ince ayar yapabilirsiniz.`,howHeading:`Nasıl çalışmalı?`,howHint:`Sonuçların nasıl iletileceğini seçin.`,title:`Yeni Otomasyon`},summary:{enabled:`Etkin`,yes:`Evet`,no:`Hayır`,jobs:`İşler`,nextWake:`Sonraki uyandırma`,refreshing:`Yenileniyor...`,refresh:`Yenile`},jobs:{title:`İşler`,subtitle:`Gateway'de depolanan tüm zamanlanmış işler.`,shownOf:`{shown} / {total} gösteriliyor`,searchJobs:`İşlerde ara`,searchPlaceholder:`Ad, açıklama veya aracı`,enabled:`Etkin`,schedule:`Zamanlama`,lastRun:`Son çalıştırma`,all:`Tümü`,sort:`Sırala`,nextRun:`Sonraki çalıştırma`,recentlyUpdated:`Son güncellenenler`,name:`Ad`,direction:`Yön`,ascending:`Artan`,descending:`Azalan`,reset:`Sıfırla`,emptyTitle:`No scheduled jobs yet.`,emptyHint:`Create one from a plain-language prompt; advanced fields can wait.`,emptyFilteredHint:`Clear or change filters to see scheduled jobs.`,noMatching:`Eşleşen iş yok.`,loading:`Yükleniyor...`,loadMore:`Daha fazla iş yükle`},runs:{title:`Çalıştırma geçmişi`,subtitleAll:`Tüm işler genelindeki en son çalıştırmalar.`,subtitleJob:`{title} için en son çalıştırmalar.`,scope:`Kapsam`,allJobs:`Tüm işler`,selectedJob:`Seçili iş`,searchRuns:`Çalıştırmalarda ara`,searchPlaceholder:`Özet, hata veya iş`,newestFirst:`En yeniden eskiye`,oldestFirst:`En eskiden yeniye`,status:`Durum`,delivery:`Teslimat`,clear:`Temizle`,allStatuses:`Tüm durumlar`,allDelivery:`Tüm teslimatlar`,selectJobHint:`Çalıştırma geçmişini incelemek için bir iş seçin.`,noMatching:`Eşleşen çalıştırma yok.`,loadMore:`Daha fazla çalıştırma yükle`,runStatusOk:`Tamam`,runStatusError:`Hata`,runStatusSkipped:`Atlandı`,runStatusUnknown:`Bilinmiyor`,deliveryDelivered:`Teslim edildi`,deliveryNotDelivered:`Teslim edilmedi`,deliveryUnknown:`Bilinmiyor`,deliveryNotRequested:`Talep edilmedi`},form:{editJob:`İşi Düzenle`,newJob:`Yeni İş`,advancedJob:`Advanced job`,updateSubtitle:`Seçili zamanlanmış işi güncelleyin.`,createSubtitle:`Zamanlanmış bir uyandırma veya aracı çalıştırması oluşturun.`,required:`Gerekli`,requiredSr:`gerekli`,basics:`Temel Bilgiler`,basicsSub:`Ad verin, asistanı seçin ve etkin durumunu ayarlayın.`,fieldName:`Ad`,description:`Açıklama`,agentId:`Aracı Kimliği`,namePlaceholder:`Sabah özeti`,descriptionPlaceholder:`Bu iş için isteğe bağlı bağlam`,agentPlaceholder:`main veya ops`,agentHelp:`Bilinen bir aracı seçmek için yazmaya başlayın veya özel bir aracı girin.`,schedule:`Zamanlama`,scheduleSub:`Bu işin ne zaman çalışacağını kontrol edin.`,every:`Her`,at:`Saat`,cronOption:`Cron`,runAt:`Çalıştırma zamanı`,unit:`Birim`,minutes:`Dakika`,hours:`Saat`,days:`Günler`,expression:`İfade`,expressionPlaceholder:`0 7 * * *`,everyAmountPlaceholder:`30`,timezoneOptional:`Saat dilimi (isteğe bağlı)`,timezonePlaceholder:`America/Los_Angeles`,timezoneHelp:`Yaygın bir saat dilimi seçin veya geçerli herhangi bir IANA saat dilimi girin.`,jitterHelp:`Jitter mı gerekiyor? Gelişmiş → Dağıtma penceresi / Dağıtma birimi kullanın.`,execution:`Çalıştırma`,executionSub:`Ne zaman uyandırılacağını ve bu işin ne yapacağını seçin.`,session:`Oturum`,main:`Ana`,isolated:`Yalıtılmış`,sessionHelp:`Ana, bir sistem olayı gönderir. Yalıtılmış, ayrılmış bir aracı turu çalıştırır.`,wakeMode:`Uyandırma modu`,now:`Şimdi`,nextHeartbeat:`Sonraki heartbeat`,wakeModeHelp:`Şimdi hemen tetikler. Sonraki heartbeat, bir sonraki döngüyü bekler.`,payloadKind:`Ne çalıştırılsın?`,systemEvent:`Ana zaman çizelgesine mesaj gönder`,agentTurn:`Asistan görevini çalıştır (yalıtılmış)`,systemEventHelp:`Metninizi gateway ana zaman çizelgesine gönderir (hatırlatıcılar/tetikleyiciler için uygundur).`,agentTurnHelp:`İsteminizi kullanarak kendi oturumunda bir asistan çalıştırması başlatır.`,timeoutSeconds:`Zaman aşımı (saniye)`,timeoutPlaceholder:`İsteğe bağlı, örn. 90`,timeoutHelp:`İsteğe bağlı. Bu çalıştırma için Gateway varsayılan zaman aşımı davranışını kullanmak üzere boş bırakın.`,mainTimelineMessage:`Ana zaman çizelgesi mesajı`,assistantTaskPrompt:`Asistan görev istemi`,deliverySection:`Teslimat`,deliverySub:`Çalıştırma özetlerinin nereye gönderileceğini seçin.`,resultDelivery:`Sonuç teslimatı`,announceDefault:`Özeti duyur (varsayılan)`,webhookPost:`Webhook POST`,noneInternal:`Yok (dahili)`,deliveryHelp:`Duyur, özeti sohbete gönderir. Yok, çalıştırmayı dahili tutar.`,webhookUrl:`Webhook URL'si`,channel:`Kanal`,webhookPlaceholder:`https://example.com/cron`,channelHelp:`Özetin hangi bağlı kanala gönderileceğini seçin.`,webhookHelp:`Çalıştırma özetlerini bir webhook uç noktasına gönderin.`,to:`Kime`,toPlaceholder:`+1555... veya sohbet kimliği`,toHelp:`İsteğe bağlı alıcı geçersiz kılma (sohbet kimliği, telefon veya kullanıcı kimliği).`,advanced:`Gelişmiş`,advancedHelp:`Teslimat garantileri, zamanlama jitter'ı ve model kontrolleri için isteğe bağlı geçersiz kılmalar.`,deleteAfterRun:`Çalıştırmadan sonra sil`,deleteAfterRunHelp:`Otomatik olarak temizlenmesi gereken tek seferlik hatırlatıcılar için en uygunudur.`,clearAgentOverride:`Aracı geçersiz kılmasını temizle`,clearAgentHelp:`Bu işi Gateway varsayılan asistanını kullanmaya zorlayın.`,exactTiming:`Tam zamanlama (dağıtma yok)`,exactTimingHelp:`Yayılma olmadan tam cron sınırlarında çalıştırın.`,staggerWindow:`Dağıtma penceresi`,staggerUnit:`Dağıtma birimi`,staggerPlaceholder:`30`,seconds:`Saniye`,model:`Model`,modelPlaceholder:`openai/gpt-5.2`,modelHelp:`Bilinen bir model seçmek için yazmaya başlayın veya özel bir model girin.`,thinking:`Düşünme`,thinkingPlaceholder:`low`,thinkingHelp:`Önerilen bir seviye kullanın veya sağlayıcıya özgü bir değer girin.`,bestEffortDelivery:`Elinden gelen teslimat`,bestEffortHelp:`Teslimatın kendisi başarısız olursa işi başarısız sayma.`,cantAddYet:`Henüz iş eklenemiyor`,fillRequired:`Göndermeyi etkinleştirmek için aşağıdaki gerekli alanları doldurun.`,fixFields:`Devam etmek için {count} alanı düzeltin.`,fixFieldsPlural:`Devam etmek için {count} alanı düzeltin.`,saving:`Kaydediliyor...`,saveChanges:`Değişiklikleri kaydet`,addJob:`İş ekle`,cancel:`İptal`},jobList:{allJobs:`tüm işler`,selectJob:`(bir iş seçin)`,enabled:`etkin`,disabled:`devre dışı`,edit:`Düzenle`,clone:`Kopyala`,disable:`Devre dışı bırak`,enable:`Etkinleştir`,run:`Çalıştır`,history:`Geçmiş`,remove:`Kaldır`},jobDetail:{system:`Sistem`,prompt:`İstem`,delivery:`Teslimat`,agent:`Aracı`},jobState:{status:`Durum`,next:`Sonraki`,last:`Son`},runEntry:{noSummary:`Özet yok.`,runAt:`Çalıştırma zamanı`,openRunChat:`Çalıştırma sohbetini aç`,next:`Sonraki {rel}`,due:`Süresi {rel}`},errors:{nameRequired:`Ad gerekli.`,scheduleAtInvalid:`Geçerli bir tarih/saat girin.`,everyAmountInvalid:`Aralık 0'dan büyük olmalıdır.`,cronExprRequired:`Cron ifadesi gerekli.`,staggerAmountInvalid:`Dağıtma 0'dan büyük olmalıdır.`,systemTextRequired:`Sistem metni gerekli.`,agentMessageRequired:`Aracı mesajı gerekli.`,timeoutInvalid:`Ayarlanırsa zaman aşımı 0 saniyeden büyük olmalıdır.`,webhookUrlRequired:`Webhook URL gerekli.`,webhookUrlInvalid:`Webhook URL http:// veya https:// ile başlamalıdır.`,invalidRunTime:`Geçersiz çalıştırma zamanı.`,invalidIntervalAmount:`Geçersiz aralık miktarı.`,cronExprRequiredShort:`Cron ifadesi gerekli.`,invalidStaggerAmount:`Geçersiz dağıtma miktarı.`,systemEventTextRequired:`Sistem olayı metni gerekli.`,agentMessageRequiredShort:`Aracı mesajı gerekli.`,nameRequiredShort:`Ad gerekli.`}}};export{e as tr};
|
|
2
|
+
//# sourceMappingURL=tr-DBsYZTmE.js.map
|