@kvman/kvcoder 0.1.6 → 0.1.8
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/api.d.ts +49 -3
- package/dist/api.d.ts.map +1 -1
- package/dist/calls/run-shell.d.ts.map +1 -1
- package/dist/calls/run-shell.js +39 -9
- package/dist/calls/run-shell.js.map +1 -1
- package/dist/connector-call.d.ts +1 -1
- package/dist/connector-call.d.ts.map +1 -1
- package/dist/connector-call.js +4 -2
- package/dist/connector-call.js.map +1 -1
- package/dist/connectors/artifact.d.ts +1 -1
- package/dist/connectors/artifact.d.ts.map +1 -1
- package/dist/connectors/artifact.js +4 -4
- package/dist/connectors/artifact.js.map +1 -1
- package/dist/connectors/ask.d.ts +24 -0
- package/dist/connectors/ask.d.ts.map +1 -1
- package/dist/connectors/ask.js +20 -11
- package/dist/connectors/ask.js.map +1 -1
- package/dist/connectors/background.d.ts +14 -1
- package/dist/connectors/background.d.ts.map +1 -1
- package/dist/connectors/background.js +53 -23
- package/dist/connectors/background.js.map +1 -1
- package/dist/connectors/builtin-connectors.d.ts +110 -0
- package/dist/connectors/builtin-connectors.d.ts.map +1 -1
- package/dist/connectors/builtin-connectors.js +4 -1
- package/dist/connectors/builtin-connectors.js.map +1 -1
- package/dist/connectors/delegate.d.ts +3 -2
- package/dist/connectors/delegate.d.ts.map +1 -1
- package/dist/connectors/delegate.js +27 -9
- package/dist/connectors/delegate.js.map +1 -1
- package/dist/connectors/execution-map.d.ts +62 -0
- package/dist/connectors/execution-map.d.ts.map +1 -0
- package/dist/connectors/execution-map.js +142 -0
- package/dist/connectors/execution-map.js.map +1 -0
- package/dist/connectors/fs.d.ts +32 -1
- package/dist/connectors/fs.d.ts.map +1 -1
- package/dist/connectors/fs.js +76 -45
- package/dist/connectors/fs.js.map +1 -1
- package/dist/connectors/mcp.d.ts +18 -1
- package/dist/connectors/mcp.d.ts.map +1 -1
- package/dist/connectors/mcp.js +54 -6
- package/dist/connectors/mcp.js.map +1 -1
- package/dist/connectors/payload-fields.d.ts.map +1 -1
- package/dist/connectors/payload-fields.js +1 -1
- package/dist/connectors/payload-fields.js.map +1 -1
- package/dist/delegate/approved-run.d.ts +4 -6
- package/dist/delegate/approved-run.d.ts.map +1 -1
- package/dist/delegate/approved-run.js +74 -34
- package/dist/delegate/approved-run.js.map +1 -1
- package/dist/delegate/git-staging.d.ts +12 -0
- package/dist/delegate/git-staging.d.ts.map +1 -0
- package/dist/delegate/git-staging.js +54 -0
- package/dist/delegate/git-staging.js.map +1 -0
- package/dist/delegate/permission.d.ts +240 -0
- package/dist/delegate/permission.d.ts.map +1 -0
- package/dist/delegate/permission.js +78 -0
- package/dist/delegate/permission.js.map +1 -0
- package/dist/delegate/program-permission.d.ts +27 -0
- package/dist/delegate/program-permission.d.ts.map +1 -0
- package/dist/delegate/program-permission.js +53 -0
- package/dist/delegate/program-permission.js.map +1 -0
- package/dist/delegate/register-worker-run.d.ts.map +1 -1
- package/dist/delegate/register-worker-run.js +27 -11
- package/dist/delegate/register-worker-run.js.map +1 -1
- package/dist/delegate/run-program.d.ts.map +1 -1
- package/dist/delegate/run-program.js +29 -8
- package/dist/delegate/run-program.js.map +1 -1
- package/dist/delegate/runs.d.ts +14 -4
- package/dist/delegate/runs.d.ts.map +1 -1
- package/dist/delegate/runs.js +49 -19
- package/dist/delegate/runs.js.map +1 -1
- package/dist/delegate/staging-guard.d.ts +9 -0
- package/dist/delegate/staging-guard.d.ts.map +1 -0
- package/dist/delegate/staging-guard.js +55 -0
- package/dist/delegate/staging-guard.js.map +1 -0
- package/dist/delegate/start-background.d.ts +7 -0
- package/dist/delegate/start-background.d.ts.map +1 -0
- package/dist/delegate/start-background.js +32 -0
- package/dist/delegate/start-background.js.map +1 -0
- package/dist/delegate/start-pending.d.ts +5 -0
- package/dist/delegate/start-pending.d.ts.map +1 -0
- package/dist/delegate/start-pending.js +42 -0
- package/dist/delegate/start-pending.js.map +1 -0
- package/dist/delegate/workers.d.ts +5 -2
- package/dist/delegate/workers.d.ts.map +1 -1
- package/dist/delegate/workers.js +44 -8
- package/dist/delegate/workers.js.map +1 -1
- package/dist/files/file-change.d.ts +28 -0
- package/dist/files/file-change.d.ts.map +1 -0
- package/dist/files/file-change.js +125 -0
- package/dist/files/file-change.js.map +1 -0
- package/dist/files/file-parts.d.ts +18 -0
- package/dist/files/file-parts.d.ts.map +1 -0
- package/dist/files/file-parts.js +40 -0
- package/dist/files/file-parts.js.map +1 -0
- package/dist/files/read-file.d.ts +9 -1
- package/dist/files/read-file.d.ts.map +1 -1
- package/dist/files/read-file.js +35 -13
- package/dist/files/read-file.js.map +1 -1
- package/dist/files/search-text.d.ts +12 -2
- package/dist/files/search-text.d.ts.map +1 -1
- package/dist/files/search-text.js +87 -23
- package/dist/files/search-text.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/jobs/job-rows.d.ts +11 -2
- package/dist/jobs/job-rows.d.ts.map +1 -1
- package/dist/jobs/job-rows.js +24 -13
- package/dist/jobs/job-rows.js.map +1 -1
- package/dist/jobs/process-handlers.d.ts.map +1 -1
- package/dist/jobs/process-handlers.js +12 -1
- package/dist/jobs/process-handlers.js.map +1 -1
- package/dist/jobs/process-report.d.ts.map +1 -1
- package/dist/jobs/process-report.js +2 -1
- package/dist/jobs/process-report.js.map +1 -1
- package/dist/jobs/process-run.d.ts.map +1 -1
- package/dist/jobs/process-run.js +2 -1
- package/dist/jobs/process-run.js.map +1 -1
- package/dist/jobs/register-jobs.d.ts.map +1 -1
- package/dist/jobs/register-jobs.js +1 -0
- package/dist/jobs/register-jobs.js.map +1 -1
- package/dist/maps/map-reminder.d.ts +7 -0
- package/dist/maps/map-reminder.d.ts.map +1 -0
- package/dist/maps/map-reminder.js +24 -0
- package/dist/maps/map-reminder.js.map +1 -0
- package/dist/maps/map-rules.d.ts +36 -0
- package/dist/maps/map-rules.d.ts.map +1 -0
- package/dist/maps/map-rules.js +86 -0
- package/dist/maps/map-rules.js.map +1 -0
- package/dist/maps/map-schema.d.ts +55 -0
- package/dist/maps/map-schema.d.ts.map +1 -0
- package/dist/maps/map-schema.js +27 -0
- package/dist/maps/map-schema.js.map +1 -0
- package/dist/maps/register-maps.d.ts +3 -0
- package/dist/maps/register-maps.d.ts.map +1 -0
- package/dist/maps/register-maps.js +21 -0
- package/dist/maps/register-maps.js.map +1 -0
- package/dist/mcp/connect.d.ts +2 -0
- package/dist/mcp/connect.d.ts.map +1 -1
- package/dist/mcp/connect.js +16 -4
- package/dist/mcp/connect.js.map +1 -1
- package/dist/mcp/oauth-provider.d.ts +8 -5
- package/dist/mcp/oauth-provider.d.ts.map +1 -1
- package/dist/mcp/oauth-provider.js +31 -22
- package/dist/mcp/oauth-provider.js.map +1 -1
- package/dist/mcp/secrets.d.ts +2 -0
- package/dist/mcp/secrets.d.ts.map +1 -1
- package/dist/mcp/secrets.js +6 -0
- package/dist/mcp/secrets.js.map +1 -1
- package/dist/mcp/sign-in.d.ts.map +1 -1
- package/dist/mcp/sign-in.js +12 -4
- package/dist/mcp/sign-in.js.map +1 -1
- package/dist/messages/receive-message.d.ts +2 -1
- package/dist/messages/receive-message.d.ts.map +1 -1
- package/dist/messages/receive-message.js +34 -9
- package/dist/messages/receive-message.js.map +1 -1
- package/dist/messages/register-messages.d.ts.map +1 -1
- package/dist/messages/register-messages.js +13 -8
- package/dist/messages/register-messages.js.map +1 -1
- package/dist/messages/send-receipt.d.ts +10 -0
- package/dist/messages/send-receipt.d.ts.map +1 -0
- package/dist/messages/send-receipt.js +14 -0
- package/dist/messages/send-receipt.js.map +1 -0
- package/dist/prompt/build-prompt.d.ts +1 -0
- package/dist/prompt/build-prompt.d.ts.map +1 -1
- package/dist/prompt/build-prompt.js +5 -1
- package/dist/prompt/build-prompt.js.map +1 -1
- package/dist/prompt/project-rules.d.ts +6 -0
- package/dist/prompt/project-rules.d.ts.map +1 -0
- package/dist/prompt/project-rules.js +37 -0
- package/dist/prompt/project-rules.js.map +1 -0
- package/dist/prompt/session-grants.d.ts +209 -0
- package/dist/prompt/session-grants.d.ts.map +1 -0
- package/dist/prompt/session-grants.js +50 -0
- package/dist/prompt/session-grants.js.map +1 -0
- package/dist/prompt/session-prompt.d.ts +3 -2
- package/dist/prompt/session-prompt.d.ts.map +1 -1
- package/dist/prompt/session-prompt.js +24 -40
- package/dist/prompt/session-prompt.js.map +1 -1
- package/dist/prompt/working-method.d.ts.map +1 -1
- package/dist/prompt/working-method.js +23 -17
- package/dist/prompt/working-method.js.map +1 -1
- package/dist/register-settings.d.ts +3 -1
- package/dist/register-settings.d.ts.map +1 -1
- package/dist/register-settings.js +5 -4
- package/dist/register-settings.js.map +1 -1
- package/dist/registry/register-connectors.d.ts +9 -0
- package/dist/registry/register-connectors.d.ts.map +1 -1
- package/dist/registry/register-connectors.js +20 -12
- package/dist/registry/register-connectors.js.map +1 -1
- package/dist/result-text.d.ts +4 -0
- package/dist/result-text.d.ts.map +1 -1
- package/dist/result-text.js +9 -0
- package/dist/result-text.js.map +1 -1
- package/dist/schemas/records.d.ts +142 -0
- package/dist/schemas/records.d.ts.map +1 -1
- package/dist/schemas/records.js +60 -2
- package/dist/schemas/records.js.map +1 -1
- package/dist/sessions/execution-root.d.ts +8 -0
- package/dist/sessions/execution-root.d.ts.map +1 -0
- package/dist/sessions/execution-root.js +25 -0
- package/dist/sessions/execution-root.js.map +1 -0
- package/dist/sessions/new-session.d.ts +5 -1
- package/dist/sessions/new-session.d.ts.map +1 -1
- package/dist/sessions/new-session.js +17 -4
- package/dist/sessions/new-session.js.map +1 -1
- package/dist/sessions/register-context.d.ts.map +1 -1
- package/dist/sessions/register-context.js +6 -5
- package/dist/sessions/register-context.js.map +1 -1
- package/dist/sessions/register-fork-export.d.ts.map +1 -1
- package/dist/sessions/register-fork-export.js +5 -3
- package/dist/sessions/register-fork-export.js.map +1 -1
- package/dist/sessions/register-lifecycle.d.ts.map +1 -1
- package/dist/sessions/register-lifecycle.js +14 -5
- package/dist/sessions/register-lifecycle.js.map +1 -1
- package/dist/sessions/register-sessions.d.ts.map +1 -1
- package/dist/sessions/register-sessions.js +0 -2
- package/dist/sessions/register-sessions.js.map +1 -1
- package/dist/sessions/session-view.d.ts +23 -0
- package/dist/sessions/session-view.d.ts.map +1 -1
- package/dist/sessions/session-view.js +4 -1
- package/dist/sessions/session-view.js.map +1 -1
- package/dist/store/all-docs.d.ts +4 -0
- package/dist/store/all-docs.d.ts.map +1 -0
- package/dist/store/all-docs.js +14 -0
- package/dist/store/all-docs.js.map +1 -0
- package/dist/store/collections.d.ts +230 -0
- package/dist/store/collections.d.ts.map +1 -1
- package/dist/store/collections.js +16 -1
- package/dist/store/collections.js.map +1 -1
- package/dist/turns/answer-fingerprint.d.ts +4 -0
- package/dist/turns/answer-fingerprint.d.ts.map +1 -0
- package/dist/turns/answer-fingerprint.js +18 -0
- package/dist/turns/answer-fingerprint.js.map +1 -0
- package/dist/turns/apply-answer.d.ts +19 -0
- package/dist/turns/apply-answer.d.ts.map +1 -0
- package/dist/turns/apply-answer.js +47 -0
- package/dist/turns/apply-answer.js.map +1 -0
- package/dist/turns/background.d.ts +3 -0
- package/dist/turns/background.d.ts.map +1 -1
- package/dist/turns/background.js +13 -12
- package/dist/turns/background.js.map +1 -1
- package/dist/turns/call-permission.d.ts +22 -0
- package/dist/turns/call-permission.d.ts.map +1 -0
- package/dist/turns/call-permission.js +49 -0
- package/dist/turns/call-permission.js.map +1 -0
- package/dist/turns/cancel-step-job.d.ts +14 -0
- package/dist/turns/cancel-step-job.d.ts.map +1 -0
- package/dist/turns/cancel-step-job.js +35 -0
- package/dist/turns/cancel-step-job.js.map +1 -0
- package/dist/turns/child-result.d.ts +7 -0
- package/dist/turns/child-result.d.ts.map +1 -0
- package/dist/turns/child-result.js +24 -0
- package/dist/turns/child-result.js.map +1 -0
- package/dist/turns/compaction.d.ts +15 -1
- package/dist/turns/compaction.d.ts.map +1 -1
- package/dist/turns/compaction.js +44 -16
- package/dist/turns/compaction.js.map +1 -1
- package/dist/turns/end-turn-state.d.ts +42 -0
- package/dist/turns/end-turn-state.d.ts.map +1 -0
- package/dist/turns/end-turn-state.js +64 -0
- package/dist/turns/end-turn-state.js.map +1 -0
- package/dist/turns/end-turn.d.ts +7 -8
- package/dist/turns/end-turn.d.ts.map +1 -1
- package/dist/turns/end-turn.js +52 -55
- package/dist/turns/end-turn.js.map +1 -1
- package/dist/turns/helper-calls.d.ts +6 -0
- package/dist/turns/helper-calls.d.ts.map +1 -0
- package/dist/turns/helper-calls.js +8 -0
- package/dist/turns/helper-calls.js.map +1 -0
- package/dist/turns/history.d.ts +3 -1
- package/dist/turns/history.d.ts.map +1 -1
- package/dist/turns/history.js +15 -7
- package/dist/turns/history.js.map +1 -1
- package/dist/turns/lost-reply.d.ts +7 -0
- package/dist/turns/lost-reply.d.ts.map +1 -1
- package/dist/turns/lost-reply.js +12 -0
- package/dist/turns/lost-reply.js.map +1 -1
- package/dist/turns/message-blocks.d.ts +2 -0
- package/dist/turns/message-blocks.d.ts.map +1 -1
- package/dist/turns/message-blocks.js +7 -0
- package/dist/turns/message-blocks.js.map +1 -1
- package/dist/turns/model-context.d.ts +2 -0
- package/dist/turns/model-context.d.ts.map +1 -1
- package/dist/turns/model-context.js +23 -4
- package/dist/turns/model-context.js.map +1 -1
- package/dist/turns/model-retry.d.ts +2 -1
- package/dist/turns/model-retry.d.ts.map +1 -1
- package/dist/turns/model-retry.js +5 -1
- package/dist/turns/model-retry.js.map +1 -1
- package/dist/turns/read-only.d.ts +6 -0
- package/dist/turns/read-only.d.ts.map +1 -0
- package/dist/turns/read-only.js +12 -0
- package/dist/turns/read-only.js.map +1 -0
- package/dist/turns/receipt-job.d.ts +5 -0
- package/dist/turns/receipt-job.d.ts.map +1 -0
- package/dist/turns/receipt-job.js +40 -0
- package/dist/turns/receipt-job.js.map +1 -0
- package/dist/turns/recover-workspace.d.ts +9 -0
- package/dist/turns/recover-workspace.d.ts.map +1 -0
- package/dist/turns/recover-workspace.js +79 -0
- package/dist/turns/recover-workspace.js.map +1 -0
- package/dist/turns/recovery-state.d.ts +19 -0
- package/dist/turns/recovery-state.d.ts.map +1 -0
- package/dist/turns/recovery-state.js +87 -0
- package/dist/turns/recovery-state.js.map +1 -0
- package/dist/turns/register-interruptions.d.ts.map +1 -1
- package/dist/turns/register-interruptions.js +19 -8
- package/dist/turns/register-interruptions.js.map +1 -1
- package/dist/turns/register-turns.d.ts.map +1 -1
- package/dist/turns/register-turns.js +42 -31
- package/dist/turns/register-turns.js.map +1 -1
- package/dist/turns/resolve.d.ts +4 -0
- package/dist/turns/resolve.d.ts.map +1 -1
- package/dist/turns/resolve.js +19 -17
- package/dist/turns/resolve.js.map +1 -1
- package/dist/turns/retry-turn.d.ts +4 -0
- package/dist/turns/retry-turn.d.ts.map +1 -0
- package/dist/turns/retry-turn.js +20 -0
- package/dist/turns/retry-turn.js.map +1 -0
- package/dist/turns/run-calls.d.ts +21 -4
- package/dist/turns/run-calls.d.ts.map +1 -1
- package/dist/turns/run-calls.js +157 -41
- package/dist/turns/run-calls.js.map +1 -1
- package/dist/turns/run-command.d.ts +5 -3
- package/dist/turns/run-command.d.ts.map +1 -1
- package/dist/turns/run-command.js +21 -12
- package/dist/turns/run-command.js.map +1 -1
- package/dist/turns/settle-calls.d.ts +2 -8
- package/dist/turns/settle-calls.d.ts.map +1 -1
- package/dist/turns/settle-calls.js +26 -35
- package/dist/turns/settle-calls.js.map +1 -1
- package/dist/turns/start-turn.d.ts +8 -83
- package/dist/turns/start-turn.d.ts.map +1 -1
- package/dist/turns/start-turn.js +35 -24
- package/dist/turns/start-turn.js.map +1 -1
- package/dist/turns/step-claim.d.ts +39 -0
- package/dist/turns/step-claim.d.ts.map +1 -0
- package/dist/turns/step-claim.js +72 -0
- package/dist/turns/step-claim.js.map +1 -0
- package/dist/turns/step-intents.d.ts +31 -0
- package/dist/turns/step-intents.d.ts.map +1 -0
- package/dist/turns/step-intents.js +101 -0
- package/dist/turns/step-intents.js.map +1 -0
- package/dist/turns/step-next.d.ts +17 -0
- package/dist/turns/step-next.d.ts.map +1 -0
- package/dist/turns/step-next.js +25 -0
- package/dist/turns/step-next.js.map +1 -0
- package/dist/turns/step.d.ts +1 -1
- package/dist/turns/step.d.ts.map +1 -1
- package/dist/turns/step.js +108 -88
- package/dist/turns/step.js.map +1 -1
- package/dist/turns/summary-facts.d.ts +25 -0
- package/dist/turns/summary-facts.d.ts.map +1 -0
- package/dist/turns/summary-facts.js +63 -0
- package/dist/turns/summary-facts.js.map +1 -0
- package/dist/turns/usage.d.ts +7 -0
- package/dist/turns/usage.d.ts.map +1 -0
- package/dist/turns/usage.js +18 -0
- package/dist/turns/usage.js.map +1 -0
- package/dist/ui/register-ui.js +3 -3
- package/dist/ui/register-ui.js.map +1 -1
- package/dist/web/components/approval.css +2 -0
- package/dist/web/components/approval.js +233 -0
- package/dist/web/components/call.css +1 -1
- package/dist/web/components/call.js +430 -304
- package/dist/web/components/connectors.css +1 -1
- package/dist/web/components/connectors.js +595 -592
- package/dist/web/components/conversation.css +1 -1
- package/dist/web/components/conversation.js +2978 -1637
- package/dist/web/components/mcp-sign-in.css +1 -1
- package/dist/web/components/model.css +1 -1
- package/dist/web/components/model.js +138 -134
- package/dist/web/components/question.css +1 -1
- package/dist/web/components/question.js +148 -78
- package/dist/web/components/sessions.css +1 -1
- package/docs/connectors.md +3 -3
- package/locales/ar.json +95 -13
- package/locales/en.json +95 -13
- package/package.json +6 -6
- package/dist/turns/cancel-turn.d.ts +0 -3
- package/dist/turns/cancel-turn.d.ts.map +0 -1
- package/dist/turns/cancel-turn.js +0 -31
- package/dist/turns/cancel-turn.js.map +0 -1
package/locales/ar.json
CHANGED
|
@@ -19,11 +19,12 @@
|
|
|
19
19
|
"kvcoder.errors.MCP_SIGN_IN_NEEDED": "خادم MCP {server} يحتاج إلى تسجيل دخولك.",
|
|
20
20
|
"kvcoder.errors.MCP_SIGN_IN_FAILED": "لم ينجح تسجيل الدخول: {reason}",
|
|
21
21
|
"kvcoder.notices.CANCELLED": "أوقفتَ هذه الجولة.",
|
|
22
|
-
"kvcoder.notices.INTERRUPTED": "
|
|
22
|
+
"kvcoder.notices.INTERRUPTED": "انقطعت هذه الجولة. قد تكون آثارها غير معروفة؛ لن تُعاد الخطوة القديمة تلقائيًا. أرسل رسالة جديدة للمتابعة.",
|
|
23
23
|
"kvcoder.notices.STEP_FAILED": "توقفت الجولة: {error}",
|
|
24
24
|
"kvcoder.notices.MAX_STEPS": "توقفت الجولة بعد بلوغ الحد الأقصى للخطوات ({steps}).",
|
|
25
25
|
"kvcoder.notices.SUMMARY_FAILED": "تعذّر تلخيص الرسائل السابقة: {error}",
|
|
26
26
|
"kvcoder.notices.REPLY_LOST": "لم يصل رد النموذج كاملًا بعد عدة محاولات (ضاع نحو {tokens} توكن). اكتب «تابع» للمحاولة من جديد، أو اختر نموذجًا آخر.",
|
|
27
|
+
"kvcoder.notices.REPLY_INCOMPLETE": "جاء رد النموذج فارغًا أو مقطوعًا عند حد الطول مرتين متتاليتين. أعد المحاولة، أو اختر نموذجًا آخر.",
|
|
27
28
|
"kvcoder.ui.newChat": "محادثة جديدة",
|
|
28
29
|
"kvcoder.ui.chats": "المحادثات",
|
|
29
30
|
"kvcoder.ui.today": "اليوم",
|
|
@@ -36,8 +37,17 @@
|
|
|
36
37
|
"kvcoder.ui.seconds": "{count} ث",
|
|
37
38
|
"kvcoder.ui.minutes": "{count} د",
|
|
38
39
|
"kvcoder.ui.totals": "{time} · {cost}",
|
|
40
|
+
"kvcoder.ui.turnSoFar": "هذه الجولة: {steps} خطوة · نحو {cost}",
|
|
41
|
+
"kvcoder.ui.turnSteps": "هذه الجولة: {steps} خطوة",
|
|
42
|
+
"kvcoder.ui.staging.changed": "غيّر هذا التشغيل ما هو مُجهَّز للإيداع في Git ({paths} مسارات).",
|
|
43
|
+
"kvcoder.ui.staging.headMoved": "حرّك هذا التشغيل HEAD، فلا يمكن استعادة التجهيز من هنا.",
|
|
44
|
+
"kvcoder.ui.staging.restore": "استعادة التجهيز",
|
|
45
|
+
"kvcoder.ui.staging.restored": "تمت استعادة التجهيز.",
|
|
39
46
|
"kvcoder.ui.tokensUsed": "استُخدم {tokens} توكن",
|
|
40
47
|
"kvcoder.ui.memory": "الذاكرة ممتلئة {percent}%",
|
|
48
|
+
"kvcoder.ui.memoryAbout": "الذاكرة ممتلئة نحو {percent}%",
|
|
49
|
+
"kvcoder.ui.costParts": "منها: التلخيص {summary}، العنوان {title}، المساعدون {helpers}",
|
|
50
|
+
"kvcoder.ui.costEstimate": "التكلفة تقدير من كتالوج النماذج",
|
|
41
51
|
"kvcoder.ui.memoryDetail": "يحمل النموذج الآن {tokens} من {window} توكن. تُلخَّص الرسائل الأقدم عند {at}%.",
|
|
42
52
|
"kvcoder.ui.turns": "الجولات: {count}",
|
|
43
53
|
"kvcoder.ui.exitCode": "رمز الخروج {code}",
|
|
@@ -45,7 +55,6 @@
|
|
|
45
55
|
"kvcoder.ui.loadFailed": "تعذّر تحميل هذه المحادثة: {error}",
|
|
46
56
|
"kvcoder.ui.tryAgain": "حاول مجددًا",
|
|
47
57
|
"kvcoder.ui.chooseAnotherModel": "اختيار نموذج آخر",
|
|
48
|
-
"kvcoder.ui.continueText": "تابع",
|
|
49
58
|
"kvcoder.ui.command": "الأمر",
|
|
50
59
|
"kvcoder.ui.chooseModel": "اختيار نموذج",
|
|
51
60
|
"kvcoder.ui.chooseModelHint": "اختر نموذجًا للبدء.",
|
|
@@ -56,6 +65,9 @@
|
|
|
56
65
|
"kvcoder.ui.running": "قيد التنفيذ",
|
|
57
66
|
"kvcoder.ui.skip": "تخطي",
|
|
58
67
|
"kvcoder.ui.answer": "إرسال الإجابة",
|
|
68
|
+
"kvcoder.ui.sendFailed": "تعذّر الإرسال: {error} رسالتك ما زالت هنا؛ أرسلها مرة أخرى لإعادة المحاولة.",
|
|
69
|
+
"kvcoder.ui.answerSending": "جارٍ إرسال الإجابة…",
|
|
70
|
+
"kvcoder.ui.answerFailed": "تعذّر تأكيد إجابتك: {error}. مسودتك محفوظة؛ حاول مرة أخرى.",
|
|
59
71
|
"kvcoder.ui.other": "إجابة أخرى",
|
|
60
72
|
"kvcoder.ui.yes": "نعم",
|
|
61
73
|
"kvcoder.ui.no": "لا",
|
|
@@ -91,15 +103,28 @@
|
|
|
91
103
|
"kvcoder.ui.activity.preparing": "جارٍ تجهيز أمر…",
|
|
92
104
|
"kvcoder.ui.activity.running": "جارٍ التنفيذ…",
|
|
93
105
|
"kvcoder.ui.uploadFailed": "تعذّر رفع {name}.",
|
|
106
|
+
"kvcoder.ui.pasteFailed": "تعذّرت قراءة الحافظة. استخدم زر الإرفاق.",
|
|
94
107
|
"kvcoder.ui.removeAttachment": "إزالة المرفق",
|
|
95
108
|
"kvcoder.ui.attach": "إرفاق ملفات",
|
|
96
109
|
"kvcoder.ui.enterSends": "Enter للإرسال · Shift+Enter لسطر جديد",
|
|
97
110
|
"kvcoder.ui.stop": "إيقاف",
|
|
111
|
+
"kvcoder.ui.stopping": "جارٍ الإيقاف…",
|
|
112
|
+
"kvcoder.ui.stopFailed": "تعذّر الإيقاف: {error} اضغط إيقاف للمحاولة مرة أخرى.",
|
|
113
|
+
"kvcoder.ui.stopEnds": "الإيقاف ينهي هذه الجولة ويوقف مساعديها أيضًا.",
|
|
114
|
+
"kvcoder.ui.stopKeepsBackground": "المهام التي تعمل في الخلفية تستمر.",
|
|
98
115
|
"kvcoder.ui.send": "إرسال",
|
|
99
116
|
"kvcoder.ui.placeholder": "اكتب رسالة…",
|
|
100
117
|
"kvcoder.ui.startHeading": "ماذا تريد أن نبني في {workspace}؟",
|
|
101
118
|
"kvcoder.ui.startPlaceholder": "صِف تعديلًا أو مشكلة أو فكرة…",
|
|
102
|
-
"kvcoder.ui.startHint": "إرسال الرسالة يبدأ محادثة جديدة.
|
|
119
|
+
"kvcoder.ui.startHint": "إرسال الرسالة يبدأ محادثة جديدة.",
|
|
120
|
+
"kvcoder.ui.approvalNote.loading": "جارٍ التحقق من متى تطلب الأوامر الموافقة…",
|
|
121
|
+
"kvcoder.ui.approvalNote.failed": "تعذّر تحميل متى تطلب الأوامر الموافقة.",
|
|
122
|
+
"kvcoder.ui.approvalNote.ask": "وضع السؤال يطلب الموافقة قبل تشغيل أوامر الطرفية أو البرامج وكتابة الملفات أو تعديلها واستدعاء أدوات MCP. والأوامر المسجلة التي تتطلب الموافقة تطلبها أيضًا؛ ليست كل عمليات القراءة والمساعدة بحاجة إلى موافقة.",
|
|
123
|
+
"kvcoder.ui.approvalNote.auto": "الوضع التلقائي هو الافتراضي، لكن المعروض هنا هو الوضع الفعلي بعد تحميله. لتشغيل أوامر الطرفية أو البرامج وكتابة الملفات أو تعديلها واستدعاء أدوات MCP، يحدد النموذج قيمة risky: القيمة risky:false قد تسمح بالتنفيذ دون موافقة، والقيم الأخرى تطلبها. والأوامر المسجلة التي تتطلب الموافقة تطلبها دائمًا.",
|
|
124
|
+
"kvcoder.ui.approvalNote.never": "وضع عدم السؤال لا يطلب أي موافقة. تشغيل أوامر الطرفية أو البرامج وكتابة الملفات أو تعديلها واستدعاء أدوات MCP والأوامر المسجلة التي تتطلب الموافقة وبرامج المساعدين المضبوطة على السؤال، كلها تُنفَّذ فورًا. أسئلة الوكيل لك تبقى بانتظار إجابتك.",
|
|
125
|
+
"kvcoder.ui.approvalNote.limits": "الموافقة ليست عزلًا: البرنامج المشغَّل قد يغيّر ما يصل إليه، وما ترسله قد يصل إلى النموذج ومزوديه.",
|
|
126
|
+
"kvcoder.ui.approvalNote.openConfig": "غيّره في إعدادات المبرمج",
|
|
127
|
+
"kvcoder.ui.showEarlier": "عرض {count} رسالة أقدم",
|
|
103
128
|
"kvcoder.ui.earlierMessages": "رسائل أقدم: {count} · تصدير",
|
|
104
129
|
"kvcoder.ui.messageDismisses": "إرسال رسالة الآن يتخطى الأسئلة ويرفض الأوامر المعلّقة.",
|
|
105
130
|
"kvcoder.ui.promptTitle": "تعليمات النظام كما ستُرسل في الخطوة التالية",
|
|
@@ -137,12 +162,13 @@
|
|
|
137
162
|
"kvcoder.session.export.description": "يكتب المحادثة وجولاتها ورسائلها ومحادثات وكلائها الفرعيين في ملف JSON.",
|
|
138
163
|
"kvcoder.session.title.description": "يكتب عنوان المحادثة من جولتها الأولى.",
|
|
139
164
|
"kvcoder.session.prune.description": "يحذف أقدم المحادثات غير النشطة الزائدة عن kvcoder.sessions.keep.",
|
|
140
|
-
"kvcoder.message.send.description": "يرسل رسالة المستخدم: تبدأ جولة، أو توجّه الجولة الجارية، أو تجيب جولة تنتظر.",
|
|
165
|
+
"kvcoder.message.send.description": "يرسل رسالة المستخدم: تبدأ جولة، أو توجّه الجولة الجارية، أو تجيب جولة تنتظر. تكرار الإرسال بالمعرّف sendId نفسه يُؤكَّد ولا يضيف شيئًا.",
|
|
141
166
|
"kvcoder.message.inject.description": "يضيف رسالة من إضافة إلى المحادثة كما تُضاف رسالة المستخدم، موسومة باسم الإضافة.",
|
|
142
167
|
"kvcoder.context.get.description": "يعطي حجم نص المحادثة بالتوكنات، ونافذة سياق نموذجها، والنسبة التي تُلخَّص عندها الرسائل الأقدم.",
|
|
143
|
-
"kvcoder.message.list.description": "يسرد أحدث رسائل المحادثة بالترتيب، وعدد الأقدم، والرسائل التي تنتظر
|
|
168
|
+
"kvcoder.message.list.description": "يسرد أحدث رسائل المحادثة بالترتيب، وعدد الأقدم، والرسائل التي تنتظر الخطوة؛ ومع beforeSeq، أحدث ما قبله.",
|
|
144
169
|
"kvcoder.note.add.description": "يضيف ملاحظة للعرض فقط؛ لا تصل إلى النموذج ولا تبدأ جولة.",
|
|
145
|
-
"kvcoder.turn.
|
|
170
|
+
"kvcoder.turn.retry.description": "يعيد تشغيل جولة توقفت على سجل المحادثة كما هو، دون إضافة رسالة.",
|
|
171
|
+
"kvcoder.turn.cancel.description": "يلغي جولة المحادثة: خطوتها وجولات وكلائها الفرعيين وأسئلتها. مع turnId، فقط إذا كانت تلك الجولة ما زالت الحالية.",
|
|
146
172
|
"kvcoder.turn.list.description": "يسرد جولات المحادثة، الأحدث أولًا.",
|
|
147
173
|
"kvcoder.turn.step.description": "ينفّذ خطوة واحدة من جولة المحادثة.",
|
|
148
174
|
"kvcoder.question.answer.description": "يجيب عن سؤال أو طلب موافقة معلّق؛ ويعيد معرّف مهمة الخطوة التالية حين لا يبقى شيء معلّق.",
|
|
@@ -153,14 +179,23 @@
|
|
|
153
179
|
"kvcoder.fs.text.search.description": "يجد الأسطر التي تطابق تعبيرًا نمطيًا، في ملف أو داخل مجلد.",
|
|
154
180
|
"kvcoder.fs.write.description": "ينشئ ملفًا مع مجلداته الأصلية، أو يستبدل محتوى الملف.",
|
|
155
181
|
"kvcoder.fs.edit.description": "يستبدل مقاطع نصية محددة في ملف موجود؛ وإذا فشل أحد الاستبدالات لا يُكتب شيء.",
|
|
182
|
+
"kvcoder.fs.undo.description": "يتراجع عن آخر تغيير أجرته هذه المحادثة على ملف، إذا لم يتغير الملف بعده.",
|
|
183
|
+
"kvcoder.fs.part.description": "يحفظ جزءًا مرقّمًا من ملف طويل، دون كتابة الملف بعد.",
|
|
184
|
+
"kvcoder.fs.assemble.description": "يكتب ملفًا من أجزائه المحفوظة بالترتيب ثم يحذفها؛ ويسمّي الأرقام الناقصة إن غاب جزء.",
|
|
156
185
|
"kvcoder.artifact.write.description": "ينشئ مخرجًا، أو يستبدل عنوانه وصيغته ومحتواه.",
|
|
157
186
|
"kvcoder.artifact.edit.description": "يستبدل مقاطع نصية محددة في مخرج موجود؛ وإذا فشل أحد الاستبدالات لا يتغير شيء.",
|
|
158
187
|
"kvcoder.artifact.content.get.description": "يقرأ مخرجًا مع محتواه.",
|
|
159
|
-
"kvcoder.
|
|
160
|
-
"kvcoder.
|
|
188
|
+
"kvcoder.map.set.description": "ينشئ خريطة التنفيذ أو يستبدلها، والخطوة التي يبقى معرّفها تحتفظ بما وصلت إليه.",
|
|
189
|
+
"kvcoder.map.step.update.description": "يغيّر حالة خطوة أو أكثر من خطوات الخريطة.",
|
|
190
|
+
"kvcoder.map.note.add.description": "يضيف ملاحظة إلى قائمة «مؤجَّل لوقت لاحق» في الخريطة.",
|
|
191
|
+
"kvcoder.map.state.get.description": "يقرأ خريطة التنفيذ كاملة.",
|
|
192
|
+
"kvcoder.background.list.description": "يسرد أحدث 50 عملية في خلفية هذه المحادثة، الأحدث أولًا، كلٌّ بمعرّفها ونوعها وعنوانها وحالتها.",
|
|
193
|
+
"kvcoder.background.output.get.description": "يعطي حالة عملية واحدة في الخلفية ومخرجاتها (آخر أسطر العملية، أو إجابة الوكيل المساعد، أو ما أعاده تشغيل عامل برنامج).",
|
|
194
|
+
"kvcoder.background.wait.description": "ينتظر حتى تنتهي عملية في الخلفية أو ينقضي الوقت، ثم يعطي حالتها ومخرجاتها كما يفعل output.",
|
|
161
195
|
"kvcoder.background.stop.description": "يوقف عملية في الخلفية أو تشغيل برنامج مساعد، أو يلغي وكيلًا فرعيًا في الخلفية.",
|
|
162
196
|
"kvcoder.mcp.tool.describe.description": "يسرد أدوات خادم MCP، أو يعطي وصف أداة واحدة ومُدخلاتها.",
|
|
163
197
|
"kvcoder.mcp.tool.call.description": "يستدعي أداة من خادم MCP ويعيد نصّها.",
|
|
198
|
+
"kvcoder.mcp.steps.run.description": "يستدعي عدة أدوات من خادم MCP على اتصال واحد بالترتيب، فيحتفظ الخادم بحالته بينها، ويتوقف عند أول أداة تُبلغ عن خطأ.",
|
|
164
199
|
"kvcoder.mcp.server.check.description": "يتصل بخادم MCP ويخبر هل هو جاهز، أم يحتاج إلى تسجيل دخول، أم فشل.",
|
|
165
200
|
"kvcoder.mcp.sign-in.start.description": "يبدأ تسجيل دخولك إلى خادم MCP ويعطي العنوان الذي تفتحه.",
|
|
166
201
|
"kvcoder.mcp.sign-in.finish.description": "يُنهي تسجيل الدخول بالرمز الذي أعاده الخادم.",
|
|
@@ -191,12 +226,17 @@
|
|
|
191
226
|
"kvcoder.docs.get.description": "يعيد صفحة توثيق واحدة من kvcoder.",
|
|
192
227
|
"kvcoder.model.title": "النموذج",
|
|
193
228
|
"kvcoder.model.description": "النموذج الذي تبدأ به المحادثة الجديدة.",
|
|
229
|
+
"kvcoder.delegate.model.title": "نموذج العاملين",
|
|
230
|
+
"kvcoder.delegate.model.description": "النموذج الذي يستخدمه الوكيل المساعد إن لم يحدّد عامله نموذجًا.",
|
|
194
231
|
"kvcoder.thinking.title": "التفكير",
|
|
195
232
|
"kvcoder.thinking.description": "مقدار تفكير النموذج في المحادثة الجديدة.",
|
|
196
233
|
"kvcoder.maxSteps.title": "الخطوات في كل جولة",
|
|
197
234
|
"kvcoder.maxSteps.description": "أقصى عدد من الخطوات تنفّذه الجولة قبل أن تتوقف. اتركه فارغًا لتبقى الجولة بلا حدّ.",
|
|
198
|
-
"kvcoder.
|
|
199
|
-
"kvcoder.
|
|
235
|
+
"kvcoder.approval.title": "الموافقة",
|
|
236
|
+
"kvcoder.approval.description": "متى يطلب الوكيل موافقتك قبل تنفيذ أمر أو تعديل ملف أو أي شيء آخر يحتاج إلى إذنك.",
|
|
237
|
+
"kvcoder.config.approval.never.title": "عدم السؤال قبل أي عملية؟",
|
|
238
|
+
"kvcoder.config.approval.never.text": "سينفّذ الوكيل الأوامر ويعدّل الملفات ويغيّر kvman نفسه ويشغّل برامج المساعدين دون أن يسألك. وما يقرؤه قد يوجّهه.",
|
|
239
|
+
"kvcoder.config.approval.never.confirm": "أوقف السؤال",
|
|
200
240
|
"kvcoder.shell.path.title": "برنامج الطرفية",
|
|
201
241
|
"kvcoder.shell.path.description": "برنامج الطرفية الذي تُنفَّذ به الأوامر. اتركه فارغًا ليُستخدم bash، أو PowerShell على Windows.",
|
|
202
242
|
"kvcoder.compactAt.title": "حدّ التلخيص",
|
|
@@ -210,8 +250,10 @@
|
|
|
210
250
|
"kvcoder.job.list.description": "أحدث 50 مهمة خلفية في محادثة (عمليات ووكلاء فرعيون وتشغيلات برامج المساعدين)، الجارية أولًا.",
|
|
211
251
|
"kvcoder.job.get.description": "مهمة خلفية واحدة في محادثة مع ناتجها: آخر 100 سطر لعملية، أو نتيجة وكيل فرعي، أو ما أعاده تشغيل برنامج مساعد.",
|
|
212
252
|
"kvcoder.job.cancel.description": "يوقف عملية خلفية جارية أو تشغيل برنامج مساعد في محادثة، أو يلغي وكيلها الفرعي الخلفي.",
|
|
253
|
+
"kvcoder.delegate.staging.restore.description": "يعيد ما كان مُجهَّزًا للإيداع في Git قبل تشغيل برنامج مساعد؛ لا يغيّر أي ملف ولا أي إيداع.",
|
|
213
254
|
"kvcoder.artifact.list.description": "يسرد مخرجات المحادثة، الأحدث تعديلًا أولًا.",
|
|
214
255
|
"kvcoder.artifact.get.description": "يعيد مخرجًا واحدًا من المحادثة مع محتواه.",
|
|
256
|
+
"kvcoder.map.get.description": "يعطي خريطة التنفيذ لمحادثة، أو null إن لم تكن لها خريطة.",
|
|
215
257
|
"kvcoder.ui.jobs.title": "المهام الخلفية",
|
|
216
258
|
"kvcoder.ui.jobs.running": "{count} قيد التشغيل",
|
|
217
259
|
"kvcoder.ui.jobs.minutes": "{minutes} د {seconds} ث",
|
|
@@ -230,8 +272,30 @@
|
|
|
230
272
|
"kvcoder.ui.artifacts.title": "المخرجات",
|
|
231
273
|
"kvcoder.ui.artifacts.open": "فتح",
|
|
232
274
|
"kvcoder.ui.artifacts.close": "إغلاق",
|
|
275
|
+
"kvcoder.ui.artifacts.choose": "المعروض في اللوحة",
|
|
276
|
+
"kvcoder.ui.artifacts.resize": "تغيير عرض اللوحة",
|
|
233
277
|
"kvcoder.ui.artifacts.version": "الإصدار {version}",
|
|
234
278
|
"kvcoder.ui.artifacts.toggle": "المخرجات ({count})",
|
|
279
|
+
"kvcoder.ui.map.title": "خريطة التنفيذ",
|
|
280
|
+
"kvcoder.ui.map.toggle": "خريطة التنفيذ: أُنجز {done} من {total}",
|
|
281
|
+
"kvcoder.ui.map.count": "{done}/{total}",
|
|
282
|
+
"kvcoder.ui.map.progress": "أُنجز {done} من {total}",
|
|
283
|
+
"kvcoder.ui.map.status.todo": "لم تبدأ",
|
|
284
|
+
"kvcoder.ui.map.status.doing": "قيد التنفيذ",
|
|
285
|
+
"kvcoder.ui.map.status.done": "أُنجزت",
|
|
286
|
+
"kvcoder.ui.map.status.failed": "فشلت",
|
|
287
|
+
"kvcoder.ui.map.status.skipped": "تم تخطيها",
|
|
288
|
+
"kvcoder.ui.map.step": "الخطوة",
|
|
289
|
+
"kvcoder.ui.map.description": "الوصف",
|
|
290
|
+
"kvcoder.ui.map.after": "بعد",
|
|
291
|
+
"kvcoder.ui.map.uses": "تستخدم",
|
|
292
|
+
"kvcoder.ui.map.check": "التحقق",
|
|
293
|
+
"kvcoder.ui.map.evidence": "الدليل",
|
|
294
|
+
"kvcoder.ui.map.note": "ملاحظة",
|
|
295
|
+
"kvcoder.ui.map.noted": "مؤجَّل لوقت لاحق ({count})",
|
|
296
|
+
"kvcoder.ui.map.remaining": "{count} من خطوات خريطة التنفيذ لم تُنجز.",
|
|
297
|
+
"kvcoder.ui.map.show": "عرض الخريطة",
|
|
298
|
+
"kvcoder.ui.map.close": "إغلاق",
|
|
235
299
|
"kvcoder.ui.artifacts.frameLabel": "معاينة {title}",
|
|
236
300
|
"kvcoder.ui.artifacts.view": "طريقة العرض",
|
|
237
301
|
"kvcoder.ui.artifacts.preview": "معاينة",
|
|
@@ -246,8 +310,9 @@
|
|
|
246
310
|
"kvcoder.thinking.options.low": "منخفض",
|
|
247
311
|
"kvcoder.thinking.options.medium": "متوسط",
|
|
248
312
|
"kvcoder.thinking.options.high": "مرتفع",
|
|
249
|
-
"kvcoder.
|
|
250
|
-
"kvcoder.
|
|
313
|
+
"kvcoder.approval.options.auto": "اسأل عن العمليات الخطرة فقط",
|
|
314
|
+
"kvcoder.approval.options.ask": "اسأل عن كل عملية",
|
|
315
|
+
"kvcoder.approval.options.never": "لا تسأل أبدًا",
|
|
251
316
|
"kvcoder.ui.skipped": "تم التخطي",
|
|
252
317
|
"kvcoder.ui.chosen": "تم اختياره",
|
|
253
318
|
"kvcoder.connectors.disabled.title": "الموصّلات المعطّلة",
|
|
@@ -263,6 +328,7 @@
|
|
|
263
328
|
"kvcoder.config.connector.shell": "يشغّل أسطر الأوامر في مجلد مساحة العمل.",
|
|
264
329
|
"kvcoder.config.connector.fs": "يقرأ الملفات ويكتبها ويعدّلها ويسردها ويبحث فيها.",
|
|
265
330
|
"kvcoder.config.connector.artifact": "يكتب المخرجات والصفحات المعروضة بجانب المحادثة.",
|
|
331
|
+
"kvcoder.config.connector.execution-map": "يخطّط العمل كخطوات تراها على مخطط، ويتابع ما أُنجز منها.",
|
|
266
332
|
"kvcoder.config.connector.background": "يسرد ما يعمل في الخلفية ويقرأ ناتجه ويوقفه.",
|
|
267
333
|
"kvcoder.config.connector.ask": "يطرح عليك سؤالًا وينتظر إجابتك.",
|
|
268
334
|
"kvcoder.config.connector.delegate": "يسند جزءًا من المهمة إلى مساعد: وكيل آخر له تعليماته.",
|
|
@@ -320,6 +386,7 @@
|
|
|
320
386
|
"kvcoder.config.mcp.form.env": "متغيرات البيئة",
|
|
321
387
|
"kvcoder.config.mcp.form.header": "المفاتيح السرية",
|
|
322
388
|
"kvcoder.config.mcp.form.secretsHint": "تُحفظ القيم كأسرار ولا تُعرض مرة أخرى.",
|
|
389
|
+
"kvcoder.config.mcp.form.moved": "هذا الخادم يشير الآن إلى وجهة أخرى: اكتب قيمه من جديد، وسجّل الدخول من جديد إن كان يتطلب ذلك.",
|
|
323
390
|
"kvcoder.config.mcp.form.valueName.env": "المتغير",
|
|
324
391
|
"kvcoder.config.mcp.form.valueName.header": "اسم المفتاح",
|
|
325
392
|
"kvcoder.config.mcp.form.value": "القيمة",
|
|
@@ -360,6 +427,8 @@
|
|
|
360
427
|
"kvcoder.config.workers.form.descriptionHint": "الغرض من المساعد. يقرؤه الوكيل ليقرر متى يستخدمه.",
|
|
361
428
|
"kvcoder.config.workers.form.instructions": "التعليمات",
|
|
362
429
|
"kvcoder.config.workers.form.instructionsHint": "دور المساعد وقواعده، وتُضاف إلى تعليمات النظام الخاصة به. اتركها فارغة لمساعد عام.",
|
|
430
|
+
"kvcoder.config.workers.form.readOnly": "للقراءة فقط",
|
|
431
|
+
"kvcoder.config.workers.form.readOnlyHint": "يستطيع القراءة والبحث والسؤال وكتابة تقريره. يُرفض كل ما قد يغيّر شيئًا.",
|
|
363
432
|
"kvcoder.config.workers.form.connectors": "الموصّلات",
|
|
364
433
|
"kvcoder.config.workers.form.connectorsHint": "ما يستطيع المساعد استخدامه. يستطيع دائمًا أن يسألك، ولا يسند العمل إلى غيره أبدًا.",
|
|
365
434
|
"kvcoder.config.workers.form.connectors.all": "الكل",
|
|
@@ -405,6 +474,8 @@
|
|
|
405
474
|
"kvcoder.config.connectors.reset.workspace": "استخدام قائمة كل مساحات العمل",
|
|
406
475
|
"kvcoder.config.connectors.ownValue": "لمساحة العمل {name} قائمة خاصة بها. انتقل إلى {name} لتغييرها.",
|
|
407
476
|
"kvcoder.config.model.useDefault": "استخدام النموذج الافتراضي",
|
|
477
|
+
"kvcoder.config.model.useChatModel": "استخدام نموذج المحادثة",
|
|
478
|
+
"kvcoder.config.model.chatModel": "نموذج المحادثة",
|
|
408
479
|
"kvcoder.config.model.default": "النموذج الافتراضي ({name})",
|
|
409
480
|
"kvcoder.config.model.defaultUnset": "النموذج الافتراضي",
|
|
410
481
|
"kvcoder.config.model.changed.global": "تم تغييره",
|
|
@@ -426,6 +497,11 @@
|
|
|
426
497
|
"kvcoder.ui.call.delegate": "تفويض",
|
|
427
498
|
"kvcoder.ui.call.backgroundRuns": "المهام الخلفية",
|
|
428
499
|
"kvcoder.ui.call.output": "ناتج",
|
|
500
|
+
"kvcoder.ui.call.wait": "انتظار",
|
|
501
|
+
"kvcoder.ui.call.mapSet": "خريطة",
|
|
502
|
+
"kvcoder.ui.call.mapUpdate": "خطوة في الخريطة",
|
|
503
|
+
"kvcoder.ui.call.mapNote": "مؤجَّل لوقت لاحق",
|
|
504
|
+
"kvcoder.ui.call.mapGet": "قراءة الخريطة",
|
|
429
505
|
"kvcoder.ui.call.stop": "إيقاف",
|
|
430
506
|
"kvcoder.ui.call.readArtifact": "قراءة المُخرَج",
|
|
431
507
|
"kvcoder.ui.call.created": "أُنشئ · {size}",
|
|
@@ -459,5 +535,11 @@
|
|
|
459
535
|
"kvcoder.ui.slash.prompt": "عرض التعليمات، أو العودة إلى المحادثة",
|
|
460
536
|
"kvcoder.ui.slash.rename": "إعادة تسمية هذه المحادثة",
|
|
461
537
|
"kvcoder.ui.slash.rename.argument": "العنوان",
|
|
462
|
-
"kvcoder.ui.slash.wait": "أرسل رسالة أولى لاستخدام الأوامر"
|
|
538
|
+
"kvcoder.ui.slash.wait": "أرسل رسالة أولى لاستخدام الأوامر",
|
|
539
|
+
"kvcoder.ui.callNotRun": "لم يُنفَّذ",
|
|
540
|
+
"kvcoder.ui.failure.invalid": "لم يكن طلب الوكيل صالحًا، فلم يُنفَّذ شيء.",
|
|
541
|
+
"kvcoder.ui.failure.denied": "رفضتَ هذا الاستدعاء.",
|
|
542
|
+
"kvcoder.ui.call.showDetails": "عرض التفاصيل",
|
|
543
|
+
"kvcoder.ui.call.hideDetails": "إخفاء التفاصيل",
|
|
544
|
+
"kvcoder.ui.failure.command": "فشل الأمر."
|
|
463
545
|
}
|
package/locales/en.json
CHANGED
|
@@ -19,11 +19,12 @@
|
|
|
19
19
|
"kvcoder.errors.MCP_SIGN_IN_NEEDED": "The MCP server {server} needs you to sign in.",
|
|
20
20
|
"kvcoder.errors.MCP_SIGN_IN_FAILED": "The sign-in didn't work: {reason}",
|
|
21
21
|
"kvcoder.notices.CANCELLED": "You stopped this turn.",
|
|
22
|
-
"kvcoder.notices.INTERRUPTED": "
|
|
22
|
+
"kvcoder.notices.INTERRUPTED": "This turn was interrupted. Its effects may be unknown; the old step will not be replayed automatically. Send a new message to continue.",
|
|
23
23
|
"kvcoder.notices.STEP_FAILED": "The turn stopped: {error}",
|
|
24
24
|
"kvcoder.notices.MAX_STEPS": "The turn stopped after {steps} steps.",
|
|
25
25
|
"kvcoder.notices.SUMMARY_FAILED": "The earlier messages couldn't be summarized: {error}",
|
|
26
26
|
"kvcoder.notices.REPLY_LOST": "The model's reply was lost on the way, again and again (about {tokens} tokens never arrived). Say continue to try again, or choose another model.",
|
|
27
|
+
"kvcoder.notices.REPLY_INCOMPLETE": "The model's reply was empty or cut off at its length limit, twice in a row. Retry, or choose another model.",
|
|
27
28
|
"kvcoder.ui.newChat": "New chat",
|
|
28
29
|
"kvcoder.ui.chats": "Chats",
|
|
29
30
|
"kvcoder.ui.today": "Today",
|
|
@@ -36,8 +37,17 @@
|
|
|
36
37
|
"kvcoder.ui.seconds": "{count} s",
|
|
37
38
|
"kvcoder.ui.minutes": "{count} min",
|
|
38
39
|
"kvcoder.ui.totals": "{time} · {cost}",
|
|
40
|
+
"kvcoder.ui.turnSoFar": "Turn: {steps} steps · about {cost}",
|
|
41
|
+
"kvcoder.ui.turnSteps": "Turn: {steps} steps",
|
|
42
|
+
"kvcoder.ui.staging.changed": "This run changed what is staged in Git ({paths} paths).",
|
|
43
|
+
"kvcoder.ui.staging.headMoved": "This run moved HEAD, so staging can't be restored here.",
|
|
44
|
+
"kvcoder.ui.staging.restore": "Restore staging",
|
|
45
|
+
"kvcoder.ui.staging.restored": "Staging restored.",
|
|
39
46
|
"kvcoder.ui.tokensUsed": "{tokens} tokens used",
|
|
40
47
|
"kvcoder.ui.memory": "Memory {percent}% full",
|
|
48
|
+
"kvcoder.ui.memoryAbout": "Memory about {percent}% full",
|
|
49
|
+
"kvcoder.ui.costParts": "Of it: summaries {summary}, title {title}, helpers {helpers}",
|
|
50
|
+
"kvcoder.ui.costEstimate": "Cost is an estimate from the model catalog",
|
|
41
51
|
"kvcoder.ui.memoryDetail": "The model now holds {tokens} of its {window} tokens. Older messages are summarized at {at}%.",
|
|
42
52
|
"kvcoder.ui.turns": "Turns: {count}",
|
|
43
53
|
"kvcoder.ui.exitCode": "exit {code}",
|
|
@@ -45,7 +55,6 @@
|
|
|
45
55
|
"kvcoder.ui.loadFailed": "This chat couldn't be loaded: {error}",
|
|
46
56
|
"kvcoder.ui.tryAgain": "Try again",
|
|
47
57
|
"kvcoder.ui.chooseAnotherModel": "Choose another model",
|
|
48
|
-
"kvcoder.ui.continueText": "Continue",
|
|
49
58
|
"kvcoder.ui.command": "Command",
|
|
50
59
|
"kvcoder.ui.chooseModel": "Choose a model",
|
|
51
60
|
"kvcoder.ui.chooseModelHint": "Choose a model to start.",
|
|
@@ -56,6 +65,9 @@
|
|
|
56
65
|
"kvcoder.ui.running": "Running",
|
|
57
66
|
"kvcoder.ui.skip": "Skip",
|
|
58
67
|
"kvcoder.ui.answer": "Answer",
|
|
68
|
+
"kvcoder.ui.sendFailed": "Couldn't send: {error} Your message is still here; send it again to retry.",
|
|
69
|
+
"kvcoder.ui.answerSending": "Sending answer…",
|
|
70
|
+
"kvcoder.ui.answerFailed": "Couldn't confirm your answer: {error}. Your draft is saved; try again.",
|
|
59
71
|
"kvcoder.ui.other": "Something else",
|
|
60
72
|
"kvcoder.ui.yes": "Yes",
|
|
61
73
|
"kvcoder.ui.no": "No",
|
|
@@ -91,15 +103,28 @@
|
|
|
91
103
|
"kvcoder.ui.activity.preparing": "Preparing a command…",
|
|
92
104
|
"kvcoder.ui.activity.running": "Running…",
|
|
93
105
|
"kvcoder.ui.uploadFailed": "{name} couldn't be uploaded.",
|
|
106
|
+
"kvcoder.ui.pasteFailed": "The clipboard couldn't be read. Use the attach button.",
|
|
94
107
|
"kvcoder.ui.removeAttachment": "Remove the attachment",
|
|
95
108
|
"kvcoder.ui.attach": "Attach files",
|
|
96
109
|
"kvcoder.ui.enterSends": "Enter sends · Shift+Enter for a new line",
|
|
97
110
|
"kvcoder.ui.stop": "Stop",
|
|
111
|
+
"kvcoder.ui.stopping": "Stopping…",
|
|
112
|
+
"kvcoder.ui.stopFailed": "Couldn't stop: {error} Press Stop to try again.",
|
|
113
|
+
"kvcoder.ui.stopEnds": "Stop ends the turn; its helpers stop too.",
|
|
114
|
+
"kvcoder.ui.stopKeepsBackground": "Background jobs keep running.",
|
|
98
115
|
"kvcoder.ui.send": "Send",
|
|
99
116
|
"kvcoder.ui.placeholder": "Message the agent…",
|
|
100
117
|
"kvcoder.ui.startHeading": "What should we build in {workspace}?",
|
|
101
118
|
"kvcoder.ui.startPlaceholder": "Describe a change, a bug, or an idea…",
|
|
102
|
-
"kvcoder.ui.startHint": "Sending starts a new chat.
|
|
119
|
+
"kvcoder.ui.startHint": "Sending starts a new chat.",
|
|
120
|
+
"kvcoder.ui.approvalNote.loading": "Checking when commands ask for approval…",
|
|
121
|
+
"kvcoder.ui.approvalNote.failed": "Couldn't load when commands ask for approval.",
|
|
122
|
+
"kvcoder.ui.approvalNote.ask": "Ask mode requests approval before shell or binary execution, file writes or edits, and MCP tool calls. Registered commands marked as needing approval also ask; reads and help do not all require approval.",
|
|
123
|
+
"kvcoder.ui.approvalNote.auto": "Auto mode is the default, but this is your loaded effective mode. For shell or binary execution, file writes or edits, and MCP tool calls, the model supplies the risky flag: risky:false may run without approval; other values ask. Registered commands marked as needing approval still ask.",
|
|
124
|
+
"kvcoder.ui.approvalNote.never": "Never-ask mode requests no approval. Shell or binary execution, file writes or edits, MCP tool calls, registered commands marked as needing approval, and worker programs set to ask all run at once. The agent's own questions to you still wait for your answer.",
|
|
125
|
+
"kvcoder.ui.approvalNote.limits": "Approval is not sandboxing: a run program can change what it can reach, and what you send can reach the model and its providers.",
|
|
126
|
+
"kvcoder.ui.approvalNote.openConfig": "Change it in Coder configuration",
|
|
127
|
+
"kvcoder.ui.showEarlier": "Show {count} earlier messages",
|
|
103
128
|
"kvcoder.ui.earlierMessages": "{count} earlier messages · Export",
|
|
104
129
|
"kvcoder.ui.messageDismisses": "Sending a message skips the questions and denies the commands.",
|
|
105
130
|
"kvcoder.ui.promptTitle": "The exact system prompt the next step sends",
|
|
@@ -137,12 +162,13 @@
|
|
|
137
162
|
"kvcoder.session.export.description": "Writes a session, its turns and messages, and its subagent sessions to a JSON file.",
|
|
138
163
|
"kvcoder.session.title.description": "Writes a session's title from its first turn.",
|
|
139
164
|
"kvcoder.session.prune.description": "Deletes the oldest idle top-level sessions beyond kvcoder.sessions.keep.",
|
|
140
|
-
"kvcoder.message.send.description": "Sends the person's message: it starts a turn, steers the running one, or answers a waiting one.",
|
|
165
|
+
"kvcoder.message.send.description": "Sends the person's message: it starts a turn, steers the running one, or answers a waiting one. A repeat with the same sendId is acknowledged and adds nothing.",
|
|
141
166
|
"kvcoder.message.inject.description": "Adds an extension's message to a session, as the person's message would be, marked as the extension's.",
|
|
142
167
|
"kvcoder.context.get.description": "Gives the size of a session's prompt in tokens, its model's context window, and the share at which older messages are summarized.",
|
|
143
|
-
"kvcoder.message.list.description": "Lists a session's newest messages in order, the count of older ones, and the messages waiting for the step.",
|
|
168
|
+
"kvcoder.message.list.description": "Lists a session's newest messages in order, the count of older ones, and the messages waiting for the step; with beforeSeq, the newest of those before it.",
|
|
144
169
|
"kvcoder.note.add.description": "Adds a display-only note to a session; it never reaches the model and never starts a turn.",
|
|
145
|
-
"kvcoder.turn.
|
|
170
|
+
"kvcoder.turn.retry.description": "Runs a stopped turn again on the session's history, without adding a message.",
|
|
171
|
+
"kvcoder.turn.cancel.description": "Cancels a session's turn: its step, its subagents' turns, and its questions. With turnId, only when that turn is still the current one.",
|
|
146
172
|
"kvcoder.turn.list.description": "Lists a session's turns, newest first.",
|
|
147
173
|
"kvcoder.turn.step.description": "Runs one step of a session's turn.",
|
|
148
174
|
"kvcoder.question.answer.description": "Answers a pending question or approval; returns the next step's job id once nothing else is pending.",
|
|
@@ -153,14 +179,23 @@
|
|
|
153
179
|
"kvcoder.fs.text.search.description": "Finds the lines that match a regular expression, in a file or under a folder.",
|
|
154
180
|
"kvcoder.fs.write.description": "Creates a file and its parent folders, or replaces the file.",
|
|
155
181
|
"kvcoder.fs.edit.description": "Replaces exact pieces of text in an existing file; if one replacement fails, nothing is written.",
|
|
182
|
+
"kvcoder.fs.undo.description": "Takes back this chat's latest change to a file, when the file hasn't changed since.",
|
|
183
|
+
"kvcoder.fs.part.description": "Saves one numbered piece of a long file, without writing the file yet.",
|
|
184
|
+
"kvcoder.fs.assemble.description": "Writes a file from its saved parts, in order, and drops them; names the missing numbers when one is absent.",
|
|
156
185
|
"kvcoder.artifact.write.description": "Creates an artifact, or replaces its title, format, and content.",
|
|
157
186
|
"kvcoder.artifact.edit.description": "Replaces exact pieces of text in an existing artifact; if one replacement fails, nothing changes.",
|
|
158
187
|
"kvcoder.artifact.content.get.description": "Reads an artifact with its content.",
|
|
159
|
-
"kvcoder.
|
|
160
|
-
"kvcoder.
|
|
188
|
+
"kvcoder.map.set.description": "Makes the execution map, or replaces it; a step whose id stays keeps how far it got.",
|
|
189
|
+
"kvcoder.map.step.update.description": "Changes the status of one or more steps of the map.",
|
|
190
|
+
"kvcoder.map.note.add.description": "Adds a finding to the map's \"Noted for later\" list.",
|
|
191
|
+
"kvcoder.map.state.get.description": "Reads the whole execution map.",
|
|
192
|
+
"kvcoder.background.list.description": "Lists this chat's newest 50 background runs, newest first, each with its id, kind, title, and status.",
|
|
193
|
+
"kvcoder.background.output.get.description": "Gives one background run's status, and its output (a process's last lines, a subagent's answer, or what a program worker's run returned).",
|
|
194
|
+
"kvcoder.background.wait.description": "Waits until a background run ends or the time passes, then gives its status and output as output does.",
|
|
161
195
|
"kvcoder.background.stop.description": "Stops a background process or a program worker's run, or cancels a background subagent.",
|
|
162
196
|
"kvcoder.mcp.tool.describe.description": "Lists an MCP server's tools, or gives one tool's description and arguments.",
|
|
163
197
|
"kvcoder.mcp.tool.call.description": "Calls one tool of an MCP server and returns the tool's text.",
|
|
198
|
+
"kvcoder.mcp.steps.run.description": "Calls several tools of an MCP server on one connection, in order, so the server keeps its state between them; stops at the first tool that reports an error.",
|
|
164
199
|
"kvcoder.mcp.server.check.description": "Connects to one MCP server and says whether it is ready, needs a sign-in, or failed.",
|
|
165
200
|
"kvcoder.mcp.sign-in.start.description": "Starts your sign-in to an MCP server and gives the address to open.",
|
|
166
201
|
"kvcoder.mcp.sign-in.finish.description": "Finishes a sign-in with the code the server sent back.",
|
|
@@ -191,12 +226,17 @@
|
|
|
191
226
|
"kvcoder.docs.get.description": "Gives one documentation page of kvcoder.",
|
|
192
227
|
"kvcoder.model.title": "Model",
|
|
193
228
|
"kvcoder.model.description": "The model a new chat starts with.",
|
|
229
|
+
"kvcoder.delegate.model.title": "Model for workers",
|
|
230
|
+
"kvcoder.delegate.model.description": "The model a helper uses when its worker names none.",
|
|
194
231
|
"kvcoder.thinking.title": "Thinking",
|
|
195
232
|
"kvcoder.thinking.description": "How hard the model thinks in a new chat.",
|
|
196
233
|
"kvcoder.maxSteps.title": "Steps per turn",
|
|
197
234
|
"kvcoder.maxSteps.description": "The most steps a turn takes before it stops. Leave it empty for no limit.",
|
|
198
|
-
"kvcoder.
|
|
199
|
-
"kvcoder.
|
|
235
|
+
"kvcoder.approval.title": "Approval",
|
|
236
|
+
"kvcoder.approval.description": "When the agent asks you before it runs a command, changes a file, or does anything else that needs your go-ahead.",
|
|
237
|
+
"kvcoder.config.approval.never.title": "Never ask before a call?",
|
|
238
|
+
"kvcoder.config.approval.never.text": "The agent will run commands, change files, change kvman itself, and start worker programs without asking you. What it reads can steer it.",
|
|
239
|
+
"kvcoder.config.approval.never.confirm": "Turn off asking",
|
|
200
240
|
"kvcoder.shell.path.title": "Shell program",
|
|
201
241
|
"kvcoder.shell.path.description": "The shell program that runs commands. Leave it empty to find bash, or PowerShell on Windows.",
|
|
202
242
|
"kvcoder.compactAt.title": "Summarize at",
|
|
@@ -210,8 +250,10 @@
|
|
|
210
250
|
"kvcoder.job.list.description": "A chat's newest 50 background jobs (processes, subagents, and program workers' runs), running ones first.",
|
|
211
251
|
"kvcoder.job.get.description": "One background job of a chat with its output: a process's last 100 lines, a subagent's result, or what a program worker's run returned.",
|
|
212
252
|
"kvcoder.job.cancel.description": "Stops a running background process or program worker's run of a chat, or cancels its background subagent.",
|
|
253
|
+
"kvcoder.delegate.staging.restore.description": "Puts back what was staged in Git before a program worker's run; it changes no file and no commit.",
|
|
213
254
|
"kvcoder.artifact.list.description": "Lists the artifacts of a chat, newest change first.",
|
|
214
255
|
"kvcoder.artifact.get.description": "Gives one artifact of a chat with its content.",
|
|
256
|
+
"kvcoder.map.get.description": "Gives a chat's execution map, or null when it has none.",
|
|
215
257
|
"kvcoder.ui.jobs.title": "Background jobs",
|
|
216
258
|
"kvcoder.ui.jobs.running": "{count} running",
|
|
217
259
|
"kvcoder.ui.jobs.minutes": "{minutes} min {seconds} s",
|
|
@@ -230,8 +272,30 @@
|
|
|
230
272
|
"kvcoder.ui.artifacts.title": "Artifacts",
|
|
231
273
|
"kvcoder.ui.artifacts.open": "Open",
|
|
232
274
|
"kvcoder.ui.artifacts.close": "Close",
|
|
275
|
+
"kvcoder.ui.artifacts.choose": "Shown in the panel",
|
|
276
|
+
"kvcoder.ui.artifacts.resize": "Resize the panel",
|
|
233
277
|
"kvcoder.ui.artifacts.version": "Version {version}",
|
|
234
278
|
"kvcoder.ui.artifacts.toggle": "Artifacts ({count})",
|
|
279
|
+
"kvcoder.ui.map.title": "Execution map",
|
|
280
|
+
"kvcoder.ui.map.toggle": "Execution map: {done} of {total} done",
|
|
281
|
+
"kvcoder.ui.map.count": "{done}/{total}",
|
|
282
|
+
"kvcoder.ui.map.progress": "{done} of {total} done",
|
|
283
|
+
"kvcoder.ui.map.status.todo": "To do",
|
|
284
|
+
"kvcoder.ui.map.status.doing": "In progress",
|
|
285
|
+
"kvcoder.ui.map.status.done": "Done",
|
|
286
|
+
"kvcoder.ui.map.status.failed": "Failed",
|
|
287
|
+
"kvcoder.ui.map.status.skipped": "Skipped",
|
|
288
|
+
"kvcoder.ui.map.step": "Step",
|
|
289
|
+
"kvcoder.ui.map.description": "About",
|
|
290
|
+
"kvcoder.ui.map.after": "After",
|
|
291
|
+
"kvcoder.ui.map.uses": "Uses",
|
|
292
|
+
"kvcoder.ui.map.check": "Check",
|
|
293
|
+
"kvcoder.ui.map.evidence": "Evidence",
|
|
294
|
+
"kvcoder.ui.map.note": "Note",
|
|
295
|
+
"kvcoder.ui.map.noted": "Noted for later ({count})",
|
|
296
|
+
"kvcoder.ui.map.remaining": "{count} steps of the execution map are not done.",
|
|
297
|
+
"kvcoder.ui.map.show": "Show the map",
|
|
298
|
+
"kvcoder.ui.map.close": "Close",
|
|
235
299
|
"kvcoder.ui.artifacts.frameLabel": "Preview of {title}",
|
|
236
300
|
"kvcoder.ui.artifacts.view": "View",
|
|
237
301
|
"kvcoder.ui.artifacts.preview": "Preview",
|
|
@@ -246,8 +310,9 @@
|
|
|
246
310
|
"kvcoder.thinking.options.low": "Low",
|
|
247
311
|
"kvcoder.thinking.options.medium": "Medium",
|
|
248
312
|
"kvcoder.thinking.options.high": "High",
|
|
249
|
-
"kvcoder.
|
|
250
|
-
"kvcoder.
|
|
313
|
+
"kvcoder.approval.options.auto": "Ask only for risky calls",
|
|
314
|
+
"kvcoder.approval.options.ask": "Ask for every call",
|
|
315
|
+
"kvcoder.approval.options.never": "Never ask",
|
|
251
316
|
"kvcoder.ui.skipped": "Skipped",
|
|
252
317
|
"kvcoder.ui.chosen": "Chosen",
|
|
253
318
|
"kvcoder.connectors.disabled.title": "Connectors turned off",
|
|
@@ -263,6 +328,7 @@
|
|
|
263
328
|
"kvcoder.config.connector.shell": "Runs command lines in the workspace folder.",
|
|
264
329
|
"kvcoder.config.connector.fs": "Reads, writes, edits, lists, and searches files.",
|
|
265
330
|
"kvcoder.config.connector.artifact": "Writes the documents and pages shown beside the chat.",
|
|
331
|
+
"kvcoder.config.connector.execution-map": "Plans the work as steps you watch on a diagram, and tracks what is done.",
|
|
266
332
|
"kvcoder.config.connector.background": "Lists, reads, and stops what runs in the background.",
|
|
267
333
|
"kvcoder.config.connector.ask": "Asks you a question and waits for your answer.",
|
|
268
334
|
"kvcoder.config.connector.delegate": "Hands part of a task to a worker: another agent with its own instructions.",
|
|
@@ -320,6 +386,7 @@
|
|
|
320
386
|
"kvcoder.config.mcp.form.env": "Environment variables",
|
|
321
387
|
"kvcoder.config.mcp.form.header": "Headers",
|
|
322
388
|
"kvcoder.config.mcp.form.secretsHint": "Values are kept as secrets and are never shown again.",
|
|
389
|
+
"kvcoder.config.mcp.form.moved": "This server now points somewhere else: type its values again, and sign in again if it needs a sign-in.",
|
|
323
390
|
"kvcoder.config.mcp.form.valueName.env": "Variable",
|
|
324
391
|
"kvcoder.config.mcp.form.valueName.header": "Header",
|
|
325
392
|
"kvcoder.config.mcp.form.value": "Value",
|
|
@@ -360,6 +427,8 @@
|
|
|
360
427
|
"kvcoder.config.workers.form.descriptionHint": "What the worker is for. The agent reads this to decide when to use it.",
|
|
361
428
|
"kvcoder.config.workers.form.instructions": "Instructions",
|
|
362
429
|
"kvcoder.config.workers.form.instructionsHint": "The worker's role and rules, added to its system prompt. Leave empty for a general helper.",
|
|
430
|
+
"kvcoder.config.workers.form.readOnly": "Read-only",
|
|
431
|
+
"kvcoder.config.workers.form.readOnlyHint": "It can read, search, ask, and write its report. Anything that could change something is refused.",
|
|
363
432
|
"kvcoder.config.workers.form.connectors": "Connectors",
|
|
364
433
|
"kvcoder.config.workers.form.connectorsHint": "What the worker can use. It can always ask you a question, and never hands work on.",
|
|
365
434
|
"kvcoder.config.workers.form.connectors.all": "All",
|
|
@@ -405,6 +474,8 @@
|
|
|
405
474
|
"kvcoder.config.connectors.reset.workspace": "Use the list for all workspaces",
|
|
406
475
|
"kvcoder.config.connectors.ownValue": "{name} has its own list. Switch to {name} to change it.",
|
|
407
476
|
"kvcoder.config.model.useDefault": "Use the default model",
|
|
477
|
+
"kvcoder.config.model.useChatModel": "Use the chat's model",
|
|
478
|
+
"kvcoder.config.model.chatModel": "The chat's model",
|
|
408
479
|
"kvcoder.config.model.default": "Default model ({name})",
|
|
409
480
|
"kvcoder.config.model.defaultUnset": "Default model",
|
|
410
481
|
"kvcoder.config.model.changed.global": "Changed",
|
|
@@ -426,6 +497,11 @@
|
|
|
426
497
|
"kvcoder.ui.call.delegate": "Delegate",
|
|
427
498
|
"kvcoder.ui.call.backgroundRuns": "Background runs",
|
|
428
499
|
"kvcoder.ui.call.output": "Output",
|
|
500
|
+
"kvcoder.ui.call.wait": "Wait for",
|
|
501
|
+
"kvcoder.ui.call.mapSet": "Plan",
|
|
502
|
+
"kvcoder.ui.call.mapUpdate": "Map step",
|
|
503
|
+
"kvcoder.ui.call.mapNote": "Noted for later",
|
|
504
|
+
"kvcoder.ui.call.mapGet": "Read the map",
|
|
429
505
|
"kvcoder.ui.call.stop": "Stop",
|
|
430
506
|
"kvcoder.ui.call.readArtifact": "Read artifact",
|
|
431
507
|
"kvcoder.ui.call.created": "Created · {size}",
|
|
@@ -459,5 +535,11 @@
|
|
|
459
535
|
"kvcoder.ui.slash.prompt": "Show the prompt, or go back to the chat",
|
|
460
536
|
"kvcoder.ui.slash.rename": "Rename this chat",
|
|
461
537
|
"kvcoder.ui.slash.rename.argument": "title",
|
|
462
|
-
"kvcoder.ui.slash.wait": "Send a first message to use commands"
|
|
538
|
+
"kvcoder.ui.slash.wait": "Send a first message to use commands",
|
|
539
|
+
"kvcoder.ui.callNotRun": "Not run",
|
|
540
|
+
"kvcoder.ui.failure.invalid": "The agent's request wasn't valid, so nothing ran.",
|
|
541
|
+
"kvcoder.ui.failure.denied": "You denied this call.",
|
|
542
|
+
"kvcoder.ui.call.showDetails": "Show details",
|
|
543
|
+
"kvcoder.ui.call.hideDetails": "Hide details",
|
|
544
|
+
"kvcoder.ui.failure.command": "The command failed."
|
|
463
545
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kvman/kvcoder",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.8",
|
|
4
4
|
"description": "kvcoder: the app-building harness, with one run tool over connectors, sections, and its conversation UI.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -33,19 +33,19 @@
|
|
|
33
33
|
"locales"
|
|
34
34
|
],
|
|
35
35
|
"peerDependencies": {
|
|
36
|
-
"@kvman/sdk": "^0.1.
|
|
36
|
+
"@kvman/sdk": "^0.1.2"
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@kvman/kvai": "0.1.
|
|
39
|
+
"@kvman/kvai": "0.1.2",
|
|
40
40
|
"@lucide/vue": "1.49.0",
|
|
41
41
|
"@modelcontextprotocol/sdk": "1.32.1",
|
|
42
42
|
"cross-spawn": "7.0.6",
|
|
43
43
|
"vue": "3.5.43"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
|
-
"@kvman/kvwebui": "0.1.
|
|
47
|
-
"@kvman/sdk": "0.1.
|
|
48
|
-
"@kvman/testkit": "0.1.
|
|
46
|
+
"@kvman/kvwebui": "0.1.3",
|
|
47
|
+
"@kvman/sdk": "0.1.2",
|
|
48
|
+
"@kvman/testkit": "0.1.5",
|
|
49
49
|
"@types/cross-spawn": "6.0.6",
|
|
50
50
|
"@vitejs/plugin-vue": "6.0.9",
|
|
51
51
|
"@vue/test-utils": "2.5.1",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cancel-turn.d.ts","sourceRoot":"","sources":["../../src/turns/cancel-turn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAOtC,wBAAsB,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAmB/F"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { dropRun } from "../delegate/runs.js";
|
|
2
|
-
import { records, txRecords } from "../store/collections.js";
|
|
3
|
-
import { endTurn } from "./end-turn.js";
|
|
4
|
-
// Cancel (plan 08 §8.1): the running step, the subagents and program workers' runs the turn waits on, and the pending questions; then the
|
|
5
|
-
// session is idle. Background work goes on and still reports back. Resolves whether a turn was cancelled.
|
|
6
|
-
export async function cancelTurn(ctx, sessionId, notice) {
|
|
7
|
-
const found = await ctx.store.transaction((tx) => {
|
|
8
|
-
const store = txRecords(tx);
|
|
9
|
-
const session = store.sessions.get(sessionId);
|
|
10
|
-
if (session === undefined || session.turnId === null)
|
|
11
|
-
return undefined;
|
|
12
|
-
const turn = store.turns.get(session.turnId);
|
|
13
|
-
const children = (turn?.pending ?? []).flatMap((item) => (item.childSessionId === null ? [] : [item.childSessionId]));
|
|
14
|
-
const runs = (turn?.pending ?? []).flatMap((item) => (item.runId === null ? [] : [item.runId]));
|
|
15
|
-
return { turnId: session.turnId, stepJobId: session.stepJobId, children, runs };
|
|
16
|
-
});
|
|
17
|
-
if (found === undefined)
|
|
18
|
-
return false;
|
|
19
|
-
const ended = await endTurn(ctx, sessionId, found.turnId, 'cancelled', 'cancel', notice ? { code: 'CANCELLED' } : undefined);
|
|
20
|
-
if (found.stepJobId !== null)
|
|
21
|
-
await ctx.cancel(found.stepJobId);
|
|
22
|
-
for (const child of found.children)
|
|
23
|
-
await cancelTurn(ctx, child, false);
|
|
24
|
-
for (const runId of found.runs) {
|
|
25
|
-
const run = await records(ctx.store).runs.get(runId);
|
|
26
|
-
if (run !== undefined)
|
|
27
|
-
await dropRun(ctx, run);
|
|
28
|
-
}
|
|
29
|
-
return ended;
|
|
30
|
-
}
|
|
31
|
-
//# sourceMappingURL=cancel-turn.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cancel-turn.js","sourceRoot":"","sources":["../../src/turns/cancel-turn.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,0IAA0I;AAC1I,0GAA0G;AAC1G,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,GAAQ,EAAE,SAAiB,EAAE,MAAe;IAC3E,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE;QAC/C,MAAM,KAAK,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;QAC5B,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI;YAAE,OAAO,SAAS,CAAC;QACvE,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QACtH,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChG,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAClF,CAAC,CAAC,CAAC;IACH,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACtC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC7H,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI;QAAE,MAAM,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAChE,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,QAAQ;QAAE,MAAM,UAAU,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACxE,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrD,IAAI,GAAG,KAAK,SAAS;YAAE,MAAM,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|