@kvman/kvcoder 0.1.12 → 0.1.13

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.
@@ -1,2 +1,2 @@
1
- .kvc-workspace{flex-direction:column;flex:1 1 0;align-self:stretch;block-size:100%;min-block-size:24rem;min-inline-size:min(100%,30rem);display:flex;position:relative;container:kvc-workspace/inline-size}.kvc-stage{flex:1 1 0;min-block-size:0;display:flex;position:relative}.kvc-workspace>.kvc-header{background:var(--kv-color-surface);color:var(--kv-color-text)}.kvc-conversation{background:var(--kv-color-surface);min-inline-size:0;color:var(--kv-color-text);flex-direction:column;flex:1 1 0;display:flex}.kvc-artifact-panel{background:var(--kv-color-surface);border-inline-start:1px solid var(--kv-color-border);flex-direction:column;flex:0 0 min(40%,32rem);min-inline-size:0;display:flex;position:relative;container-type:inline-size}.kvc-artifact-panel[data-sized=true]{flex-basis:clamp(20rem, var(--kvc-panel-width), 70%)}.kvc-panel-resizer{z-index:6;cursor:col-resize;touch-action:none;inline-size:8px;position:absolute;inset-block:0;inset-inline-start:-4px}.kvc-panel-resizer:hover,.kvc-panel-resizer:focus-visible,.kvc-panel-resizer[data-dragging=true]{background:color-mix(in srgb, var(--kv-color-primary) 35%, transparent);outline:none}.kvc-artifact-head{align-items:center;gap:var(--kv-space-sm);padding-block:12px;padding-inline:var(--kv-space-lg);border-block-end:1px solid var(--kv-color-border);display:flex}.kvc-artifact-name .kvc-picker{min-inline-size:0}.kvc-artifact-name .kvc-picker>.kvc-button{justify-content:space-between;max-inline-size:100%}.kvc-artifact-name .kvc-picker-label{min-inline-size:0;max-inline-size:none;font-size:15px;font-weight:600}.kvc-artifact-title{font-size:15px;font-weight:600}.kvc-artifact-name{flex-direction:column;flex:1 1 0;gap:2px;min-inline-size:0;display:flex}.kvc-artifact-name>.kvc-muted{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kvc-tab-icon{display:none}@container (inline-size<=30rem){.kvc-artifact-head{padding-inline:var(--kv-space-md)}.kvc-artifact-actions .kvc-tab{align-items:center;padding-inline:8px;display:flex}.kvc-artifact-actions .kvc-tab-icon{display:block}.kvc-artifact-actions .kvc-tab-text{display:none}}.kvc-artifact-actions{flex:none;align-items:center;gap:6px;margin-inline-start:auto;display:flex}.kvc-button.kvc-icon-button{box-sizing:border-box;flex:none;inline-size:36px;padding-inline:0}.kvc-artifact-body{min-block-size:0;padding-block:var(--kv-space-md);padding-inline:var(--kv-space-lg);flex:auto;overflow:auto}.kvc-artifact-source{font-family:var(--kv-font-mono);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:12px}.kvc-artifact-frame{background:#fff;border:0;block-size:100%;inline-size:100%}@container (inline-size<=48rem){.kvc-artifact-panel{z-index:5;inline-size:min(100%,32rem);position:absolute;inset-block:0;inset-inline-end:0;box-shadow:0 12px 32px #00000024}}@container kvc-workspace (inline-size<=48rem){.kvc-panel-resizer{display:none}}.kvc-header{align-items:center;gap:var(--kv-space-sm);padding-block:4px;padding-inline:var(--kv-space-lg);border-block-end:1px solid var(--kv-color-border);flex-wrap:wrap;display:flex;position:relative}.kvc-title{flex-wrap:wrap;flex:auto;align-items:baseline;column-gap:12px;min-inline-size:0;display:flex}.kvc-header-stats{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kvc-title strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.kvc-muted{color:var(--kv-color-muted);font-size:12.5px}.kvc-tabs{border:1px solid var(--kv-color-border);border-radius:10px;gap:2px;padding:3px;display:flex}.kvc-tab{color:var(--kv-color-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;padding-block:4px;padding-inline:12px}.kvc-tab[aria-selected=true],.kvc-tab[aria-pressed=true]{background:var(--kv-color-background);color:var(--kv-color-text);font-weight:500}.kvc-scrollport{flex-direction:column;flex:auto;min-block-size:0;display:flex;position:relative}.kvc-scroll{flex:auto;min-block-size:0;position:relative;overflow-y:auto}.kvc-jump{inline-size:max-content;margin-inline:auto;position:absolute;inset-block-end:12px;inset-inline:0;box-shadow:0 4px 16px #00000029}.kvc-column{box-sizing:border-box;inline-size:100%;max-inline-size:800px;padding:var(--kv-space-md) var(--kv-space-lg);gap:var(--kv-space-md);overflow-wrap:anywhere;flex-direction:column;margin-inline:auto;display:flex}.kvc-user{background:var(--kv-color-background);border-radius:16px;white-space:pre-wrap;border-end-end-radius:4px;align-self:flex-end;max-inline-size:80%;padding-block:10px;padding-inline:14px}.kvc-queued{border:1px dashed var(--kv-color-border);background:0 0}.kvc-answer{gap:var(--kv-space-sm);flex-direction:column;display:flex}.kvc-card{border:1px solid var(--kv-color-border);border-radius:var(--kv-radius);background:var(--kv-color-background);overflow:hidden}.kvc-card-row{align-items:center;gap:10px;padding-block:9px;padding-inline:12px;display:flex}.kvc-card-body{border-block-start:1px solid var(--kv-color-border);gap:var(--kv-space-sm);flex-direction:column;padding-block:10px;padding-inline:14px;display:flex}.kvc-lines{text-align:start;flex-direction:column;flex:auto;gap:2px;min-inline-size:0;display:flex}.kvc-failed{border-color:var(--kv-color-danger)}.kvc-mono{font-family:var(--kv-font-mono);overflow-wrap:anywhere;direction:ltr;unicode-bidi:isolate;font-size:12.5px}.kvc-card-row>.kvc-muted,.kvc-card-row>.kvc-chip{white-space:nowrap;flex:none}.kvc-card-row>svg{flex:none}.kvc-output{background:var(--kv-color-surface);color:var(--kv-color-text);font-family:var(--kv-font-mono);white-space:pre-wrap;overflow-wrap:anywhere;max-block-size:320px;margin:0;padding:10px 14px;font-size:12px;overflow-y:auto}.kvc-output+.kvc-output{border-block-start:1px solid var(--kv-color-border)}.kvc-output-block>.kvc-output{max-block-size:none;overflow-y:visible}.kvc-output .kvc-link{color:inherit;text-underline-offset:2px;text-decoration:underline}.kvc-chip{white-space:nowrap;border:1px solid var(--kv-color-border);border-radius:999px;align-items:center;gap:4px;padding-block:2px;padding-inline:8px;font-size:12px;font-weight:500;display:inline-flex}.kvc-ok{color:var(--kv-color-success)}.kvc-warn{color:var(--kv-color-warning)}.kvc-sign-in-failed,.kvc-danger{color:var(--kv-color-danger)}.kvc-notice{align-items:center;gap:var(--kv-space-sm);color:var(--kv-color-muted);font-size:13px;display:flex}.kvc-notice:before,.kvc-notice:after{content:"";background:var(--kv-color-border);flex:auto;block-size:1px}.kvc-ask{border-color:var(--kv-color-warning)}.kvc-option{border:1px solid var(--kv-color-border);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.kvc-option:has(input:checked){border-color:var(--kv-color-primary);background:color-mix(in srgb, var(--kv-color-primary) 8%, var(--kv-color-surface))}.kvc-answered-option{color:var(--kv-color-muted);align-items:flex-start;gap:10px;display:flex}.kvc-answered-option[data-chosen=true]{color:var(--kv-color-text);font-weight:500}.kvc-answered-option>svg{flex:none;margin-block-start:3px}.kvc-answered-gap{flex:0 0 16px}.kvc-sr{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.kvc-button{border:1px solid var(--kv-color-border);background:var(--kv-color-surface);min-block-size:36px;color:var(--kv-color-text);font:inherit;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding-inline:14px;font-weight:500;display:inline-flex}a.kvc-button{color:inherit;text-decoration:none}.kvc-button:disabled{opacity:.5;cursor:default}.kvc-primary,.kvc-decide[aria-pressed=true]{background:var(--kv-color-primary);border-color:var(--kv-color-primary);color:var(--kv-color-on-primary)}.kvc-ghost{background:0 0;border-color:#0000}.kvc-actions{gap:var(--kv-space-sm);flex-wrap:wrap;justify-content:flex-end;display:flex}.kvc-actions>.kvc-button{white-space:nowrap;flex:none}.kvc-composer{z-index:2;background:var(--kv-color-surface);padding-block:12px 18px;padding-inline:var(--kv-space-lg);position:sticky;inset-block-end:0}.kvc-box{box-sizing:border-box;border:1px solid var(--kv-color-border);background:var(--kv-color-surface);gap:var(--kv-space-sm);border-radius:16px;flex-direction:column;max-inline-size:760px;margin-inline:auto;padding:10px 12px;display:flex}.kvc-field{box-sizing:border-box;border:1px solid var(--kv-color-border);background:var(--kv-color-surface);inline-size:100%;color:inherit;font:inherit;border-radius:10px;padding-block:8px;padding-inline:12px}.kvc-field:disabled{opacity:.6;cursor:not-allowed}.kvc-box textarea{resize:none;color:inherit;font:inherit;background:0 0;border:0;outline:none;min-block-size:44px}.kvc-start{justify-content:safe center;gap:var(--kv-space-lg);min-height:0;padding:var(--kv-space-lg);flex-direction:column;flex:auto;display:flex;overflow-y:auto}.kvc-start-note{text-align:center;margin:0}.kvc-link-button{color:var(--kv-color-primary);font:inherit;text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.kvc-start h1{text-align:center;margin:0;font-size:26px;font-weight:600}.kvc-sessions{box-sizing:border-box;border-inline-end:1px solid var(--kv-color-border);flex-direction:column;flex:none;align-self:stretch;gap:2px;max-block-size:100%;inline-size:272px;padding:14px 12px;display:flex;overflow-y:auto}.kvc-session{min-block-size:44px;color:inherit;font:inherit;text-align:start;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding-inline:10px;display:flex}.kvc-session[aria-current=page]{background:color-mix(in srgb, var(--kv-color-primary) 16%, var(--kv-color-surface));font-weight:600}.kvc-session .kvc-muted,.kvc-session .kvc-chip{white-space:nowrap;flex:none}.kvc-session span:first-child{text-overflow:ellipsis;white-space:nowrap;flex:auto;overflow:hidden}.kvc-group{color:var(--kv-color-muted);padding-block:12px 4px;padding-inline:10px;font-size:12px;font-weight:600}.kvc-spin{border:2px solid var(--kv-color-border);border-block-start-color:var(--kv-color-primary);border-radius:50%;flex:none;block-size:14px;inline-size:14px;animation:.9s linear infinite kvc-spin}.kvc-menu{z-index:10;border:1px solid var(--kv-color-border);background:var(--kv-color-surface);border-radius:12px;flex-direction:column;min-inline-size:220px;padding:6px;display:flex;position:absolute;inset-block-start:100%;inset-inline-end:0;box-shadow:0 12px 32px #00000024}.kvc-menu button{text-align:start;justify-content:flex-start}.kvc-prompt{padding:var(--kv-space-md);border:1px solid var(--kv-color-border);border-radius:var(--kv-radius);background:var(--kv-color-background);font-family:var(--kv-font-mono);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:12px}.kvc-activity{border:1px solid var(--kv-color-border);border-radius:var(--kv-radius);background:var(--kv-color-background);align-items:center;gap:10px;padding-block:8px;padding-inline:12px;font-size:13.5px;display:flex}.kvc-activity-text{flex-direction:column;flex:auto;gap:6px;min-inline-size:0;display:flex}.kvc-activity-call{flex-direction:column;gap:2px;display:flex}.kvc-oneline{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kvc-picker{position:relative}.kvc-picker-label{text-overflow:ellipsis;white-space:nowrap;max-inline-size:16rem;overflow:hidden}.kvc-popover{z-index:20;box-sizing:border-box;inline-size:min(26rem, calc(100cqw - 2 * var(--kv-space-lg)));border:1px solid var(--kv-color-border);background:var(--kv-color-surface);border-radius:12px;flex-direction:column;gap:6px;padding:8px;display:flex;position:absolute;inset-block-start:calc(100% + 6px);inset-inline-start:0;box-shadow:0 12px 32px #00000024}.kvc-choices{inline-size:max-content;min-inline-size:10rem;max-inline-size:min(22rem, calc(100cqw - 2 * var(--kv-space-md)));gap:2px;max-block-size:18rem;overflow-y:auto}.kvc-choices>.kvc-model{flex:none}.kvc-recovery{align-items:center;gap:var(--kv-space-sm);flex-wrap:wrap;display:flex}.kvc-recovery .kvc-popover{inset-block:auto calc(100% + 6px)}.kvc-search{border:1px solid var(--kv-color-border);border-radius:10px;align-items:center;gap:8px;padding-inline:10px;display:flex}.kvc-search input{min-inline-size:0;color:inherit;font:inherit;background:0 0;border:0;outline:none;flex:auto;padding-block:8px}.kvc-options{flex-direction:column;max-block-size:18rem;display:flex;overflow-y:auto}.kvc-model{cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding-block:7px;padding-inline:10px;display:flex}.kvc-model[data-active=true]{background:var(--kv-color-background)}.kvc-model[aria-selected=true]{font-weight:600}.kvc-model-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kvc-none,.kvc-count{margin:0;padding-inline:10px}@keyframes kvc-spin{to{transform:rotate(360deg)}}.kvc-dot{background:var(--kv-color-success);border-radius:50%;flex:none;block-size:8px;inline-size:8px}.kvc-jobs-panel{max-block-size:70vh;inline-size:min(32rem,100%);inset-inline:auto 0;overflow-y:auto}.kvc-job{border:1px solid var(--kv-color-border);border-radius:8px;flex-direction:column;gap:6px;padding:8px;display:flex}.kvc-job-head{justify-content:space-between;align-items:center;gap:8px;min-inline-size:0;display:flex}.kvc-job-title{flex:auto;min-inline-size:0;font-weight:600}.kvc-job-head>.kvc-muted,.kvc-job-head>.kvc-chip{white-space:nowrap;flex:none}.kvc-job-links{flex-wrap:wrap;gap:4px 12px;display:flex}.kvc-job-links .kvc-link{color:var(--kv-color-primary);text-underline-offset:2px;text-decoration:underline}.kvc-job .kvc-output{background:var(--kv-color-background);border-radius:8px}.kvc-connectors{flex-direction:column;display:flex}.kvc-connectors-state{flex-wrap:wrap;align-items:center;gap:10px;padding-block-end:8px;display:flex}.kvc-text-button{color:var(--kv-color-primary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:500}.kvc-text-button:disabled{opacity:.5;cursor:default}.kvc-connector{border-block-end:1px solid var(--kv-color-border);align-items:center;gap:16px;padding-block:12px;display:flex}.kvc-connector:last-child{border-block-end:0}.kvc-connector-text{flex-direction:column;flex:1;gap:2px;min-inline-size:0;display:flex}.kvc-connector-name{font-size:13.5px;font-weight:600}.kvc-switch{background:var(--kv-color-border);cursor:pointer;border:0;border-radius:999px;flex:none;align-items:center;block-size:24px;inline-size:40px;padding:2px;transition:background-color .12s;display:flex}.kvc-switch[aria-checked=true]{background:var(--kv-color-primary)}.kvc-switch:disabled{opacity:.5;cursor:default}.kvc-switch-knob{background:var(--kv-color-surface);border-radius:999px;block-size:20px;inline-size:20px;transition:margin-inline-start .12s}.kvc-switch[aria-checked=true] .kvc-switch-knob{margin-inline-start:16px}.kvc-setting{border-block-end:1px solid var(--kv-color-border);flex-wrap:wrap;align-items:flex-start;gap:24px;padding-block:16px;display:flex}.kvc-setting-text{flex-direction:column;flex:20rem;gap:4px;min-inline-size:15rem;display:flex}.kvc-setting-title{font-weight:600}.kvc-setting-control{flex-direction:column;gap:8px;inline-size:22.5rem;max-inline-size:100%;display:flex}.kvc-setting .kvc-picker>.kvc-button{justify-content:space-between;inline-size:100%}.kvc-setting .kvc-picker-label{max-inline-size:none}.kvc-setting .kvc-popover{inline-size:100%}.kvc-setting .kvc-connectors-state{padding-block-end:0}.kvc-connector-actions{flex:none;align-items:center;gap:8px;display:flex}.kvc-dialog-backdrop{z-index:40;padding:var(--kv-space-md);background:#00000059;place-items:center;display:grid;position:fixed;inset:0}.kvc-dialog{box-sizing:border-box;gap:var(--kv-space-sm);inline-size:100%;max-inline-size:44rem;max-block-size:calc(100dvh - 2 * var(--kv-space-md));background:var(--kv-color-surface);color:var(--kv-color-text);padding:var(--kv-space-lg);border-radius:16px;outline:none;flex-direction:column;display:flex;overflow-y:auto;box-shadow:0 20px 50px #00000040}.kvc-dialog-head{align-items:flex-start;gap:12px;display:flex}.kvc-dialog-title{font-size:16px;font-weight:600}.kvc-dialog-rows{flex-direction:column;display:flex}.kvc-dialog-rows>.kvc-setting:last-child{border-block-end:0;padding-block-end:0}.kvc-server{align-items:flex-start}.kvc-server-state{flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;font-weight:500;display:flex}.kvc-server-state[data-status=ready]{color:var(--kv-color-success)}.kvc-server-state[data-status=failed],.kvc-server-state[data-status=signInNeeded]{color:var(--kv-color-warning)}.kvc-server-state[data-status=checking]{color:var(--kv-color-muted)}.kvc-server-reason{overflow-wrap:anywhere;white-space:pre-wrap}.kvc-server-sign-in{align-self:flex-start;margin-block-start:6px}.kvc-sign-in{max-inline-size:32rem;padding:var(--kv-space-lg);text-align:center;flex-direction:column;align-items:center;gap:8px;margin-inline:auto;display:flex}.kvc-sign-in-done{color:var(--kv-color-success)}.kvc-sign-in-failed{color:var(--kv-color-danger)}.kvc-danger{background:var(--kv-color-danger);border-color:var(--kv-color-danger);color:var(--kv-color-on-primary)}.kvc-form{gap:var(--kv-space-md);flex-direction:column;padding-block-start:var(--kv-space-sm);display:flex}.kvc-form-field{flex-direction:column;gap:6px;display:flex}.kvc-form-label{padding:0;font-weight:600}.kvc-confirm{border:1px solid var(--kv-color-danger);border-radius:var(--kv-radius);flex-direction:column;gap:8px;padding:12px;display:flex}.kvc-preferences{resize:vertical;min-block-size:6rem;inline-size:100%}.kvc-remember{margin-block-start:4px;display:block}.kvc-fold-body{border-block-start:1px solid var(--kv-color-border);flex-direction:column;gap:6px;padding:6px 8px 8px;display:flex}.kvc-final{border-inline-start:3px solid var(--kv-color-primary);padding-inline-start:12px}.kvc-changes{flex-direction:column;gap:8px;display:flex}.kvc-change-head{text-align:start;flex:auto;align-items:center;gap:8px;min-inline-size:0;display:flex}.kvc-diff>[data-kind=added]{color:var(--kv-color-success,inherit);background:color-mix(in srgb, var(--kv-color-success,green) 12%, transparent)}.kvc-diff>[data-kind=removed]{color:var(--kv-color-danger);background:color-mix(in srgb, var(--kv-color-danger) 12%, transparent)}.kvc-diff>[data-kind=hunk],.kvc-diff>[data-kind=head]{color:var(--kv-color-muted,inherit)}.kvc-picker-icon{flex:none;display:none}.kvc-artifact-name .kvc-picker>.kvc-button{min-block-size:0;padding-block:2px}.kvc-decide{white-space:nowrap}@container kvc-workspace (inline-size<=30rem){.kvc-composer-row .kvc-picker-icon{display:block}.kvc-composer-row .kvc-picker-label{display:none}}.kvc-chats-bar{display:none}@media (width<=60rem){.kvc-sessions{display:none}.kvc-drawer .kvc-sessions{border-inline-end:0;inline-size:100%;display:flex}.kvc-chats-bar{padding-block:4px;padding-inline:var(--kv-space-md);border-block-end:1px solid var(--kv-color-border);display:flex}}.kvc-drawer-backdrop{z-index:40;background:#00000059;position:fixed;inset:0}.kvc-drawer{background:var(--kv-color-surface);inline-size:min(85vw,20rem);position:absolute;inset-block:0;inset-inline-start:0;overflow-y:auto;box-shadow:0 12px 32px #0003}.kvc-rules{flex-direction:column;gap:6px;margin-block-start:8px;display:flex}.kvc-rule{justify-content:space-between;align-items:center;gap:12px;display:flex}.kvc-form-error{color:var(--kv-color-danger);font-size:12.5px}.kvc-form-choice{gap:var(--kv-space-md);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.kvc-form-choice>legend{margin-block-end:6px}.kvc-form-radio{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.kvc-form-value{grid-template-columns:minmax(0,2fr) minmax(0,3fr) auto;align-items:center;gap:8px;display:grid}.kvc-form-set{align-items:center;gap:10px;display:flex}.kvc-form-add{align-self:flex-start;align-items:center;gap:4px;display:inline-flex}.kvc-form textarea.kvc-field{resize:vertical}.kvc-box{position:relative}.kvc-composer-row{align-items:center;gap:8px;display:flex}.kvc-composer-hint{text-overflow:ellipsis;white-space:nowrap;flex:1 1 0;min-inline-size:0;overflow:hidden}.kvc-composer-row .kvc-picker{flex:0 auto;min-inline-size:0}.kvc-composer-row .kvc-picker>.kvc-button{max-inline-size:100%}.kvc-composer-row .kvc-picker-label{min-inline-size:0}.kvc-composer .kvc-popover{inset-block:auto calc(100% + 6px)}.kvc-slash{z-index:20;border:1px solid var(--kv-color-border);background:var(--kv-color-surface);border-radius:12px;flex-direction:column;padding:6px;display:flex;position:absolute;inset-block-end:calc(100% + 6px);inset-inline:0;box-shadow:0 12px 32px #00000024}.kvc-slash-row{cursor:pointer;border-radius:8px;align-items:baseline;gap:12px;padding-block:7px;padding-inline:10px;display:flex}.kvc-slash-row[data-active=true]{background:var(--kv-color-background)}.kvc-slash-name{flex:0 0 9rem}.kvc-slash-row .kvc-mono{font-size:13px;font-weight:600}.kvc-call-parts{border-block-start:1px solid var(--kv-color-border);margin:0;padding-block:8px;padding-inline:14px}.kvc-summary{flex-wrap:wrap;align-items:baseline;column-gap:8px;min-inline-size:0;font-size:13px;display:flex}.kvc-summary>.kvc-mono{min-inline-size:0}.kvc-block{border-block-start:1px solid var(--kv-color-border);margin:0;padding-block:8px;font-size:13px}.kvc-block:not(.kvc-code-lines){padding-inline:14px}.kvc-code-lines{font-family:var(--kv-font-mono);font-size:12px;line-height:1.55}.kvc-code-line{gap:8px;min-block-size:1.55em;padding-inline:14px;display:flex}.kvc-code-line[data-kind=removed]{background:color-mix(in srgb, var(--kv-color-danger) 14%, transparent)}.kvc-code-line[data-kind=added]{background:color-mix(in srgb, var(--kv-color-success) 14%, transparent)}.kvc-line-number{text-align:end;min-inline-size:3ch;color:var(--kv-color-muted);-webkit-user-select:none;user-select:none;flex:none}.kvc-line-mark{color:var(--kv-color-muted);-webkit-user-select:none;user-select:none;flex:0 0 1ch}.kvc-line-text{white-space:pre-wrap;overflow-wrap:anywhere;flex:auto;min-inline-size:0}.kvc-code-lines .kvc-link,.kvc-fields .kvc-link,.kvc-error .kvc-link{color:var(--kv-color-primary);text-underline-offset:2px;text-decoration:underline}.kvc-prose-lines{font-family:inherit;font-size:13px}.kvc-fold{margin-block-start:6px;margin-inline:14px;display:block}.kvc-output-block{border-block-start:1px solid var(--kv-color-border)}.kvc-output-block>.kvc-fold{margin-block:6px}.kvc-error{color:var(--kv-color-danger);white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit}.kvc-entries{flex-direction:column;gap:2px;display:flex}.kvc-entry{align-items:center;gap:8px;display:flex}.kvc-entry>.kvc-mono{flex:auto;min-inline-size:0}.kvc-file-path{padding-block-end:4px;font-weight:600}.kvc-block>.kvc-code-lines>.kvc-code-line{padding-inline:0}.kvc-block>.kvc-code-lines>.kvc-fold{margin-inline:0}.kvc-fields{grid-template-columns:minmax(6rem,max-content) minmax(0,1fr);gap:4px 12px;margin:0;display:grid}.kvc-field-row{display:contents}.kvc-steps{gap:6px;padding-inline-start:0;list-style:none;display:grid}.kvc-step-arguments{padding-block-start:2px;padding-inline-start:1.5rem}.kvc-field-row>dt{font-family:var(--kv-font-mono);font-size:12px}.kvc-field-row>dd{overflow-wrap:anywhere;min-inline-size:0;margin:0}.kvc-field-block>.kvc-code-line,.kvc-field-block>.kvc-fold{margin-inline:0;padding-inline:0}.kvc-field-table{overflow-x:auto}.kvc-field-table table{border-collapse:collapse;font-size:12.5px}.kvc-field-table th,.kvc-field-table td{text-align:start;vertical-align:top;padding-block:3px;padding-inline:0 14px}.kvc-field-table th{color:var(--kv-color-muted);font-weight:500;font-family:var(--kv-font-mono);font-size:12px}.kvc-field-items{flex-direction:column;gap:2px;display:flex}.kvc-approval{border-block-start:1px solid var(--kv-color-border)}.kvc-approval>.kvc-actions{padding-block-start:0}.kvc-always>.kvc-link-button{margin-inline-end:auto}.kvc-reason,.kvc-always{flex-wrap:wrap;align-items:center;padding-block-start:0}.kvc-reason>textarea{flex:16rem}.kvc-always>input{flex:0 14rem;min-inline-size:8rem}.kvc-run-row{align-items:baseline;gap:10px;display:flex}.kvc-run-row>.kvc-run-call{flex:auto;min-inline-size:0}.kvc-run-row>.kvc-chip,.kvc-run-row>.kvc-muted{white-space:nowrap;flex:none}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .kvc-flip{transform:scaleX(-1)}.kvc-slash-row[aria-disabled=true]{opacity:.55;cursor:default}.kvc-button:focus-visible,.kvc-text-button:focus-visible,.kvc-link-button:focus-visible,.kvc-session:focus-visible,.kvc-switch:focus-visible,.kvc-chip-remove:focus-visible{outline:2px solid var(--kv-color-primary);outline-offset:2px}.kvc-box:focus-within,.kvc-search:focus-within{outline:2px solid var(--kv-color-primary);outline-offset:1px}.kvc-chip-remove{min-block-size:20px;padding:0}@media (pointer:coarse){.kvc-button{min-block-size:44px}.kvc-button.kvc-icon-button{inline-size:44px}.kvc-text-button,.kvc-link-button{align-items:center;min-block-size:44px;display:inline-flex}.kvc-chip-remove{min-block-size:44px;min-inline-size:44px}.kvc-switch{position:relative}.kvc-switch:after{content:"";position:absolute;inset-block:-10px;inset-inline:-2px}}
1
+ .kvc-workspace{flex-direction:column;flex:1 1 0;align-self:stretch;block-size:100%;min-block-size:24rem;min-inline-size:min(100%,30rem);display:flex;position:relative;container:kvc-workspace/inline-size}.kvc-stage{flex:1 1 0;min-block-size:0;display:flex;position:relative}.kvc-workspace>.kvc-header{background:var(--kv-color-surface);color:var(--kv-color-text)}.kvc-conversation{background:var(--kv-color-surface);min-inline-size:0;color:var(--kv-color-text);flex-direction:column;flex:1 1 0;display:flex}.kvc-artifact-panel{background:var(--kv-color-surface);border-inline-start:1px solid var(--kv-color-border);flex-direction:column;flex:0 0 min(40%,32rem);min-inline-size:0;display:flex;position:relative;container-type:inline-size}.kvc-artifact-panel[data-sized=true]{flex-basis:clamp(20rem, var(--kvc-panel-width), 70%)}.kvc-panel-resizer{z-index:6;cursor:col-resize;touch-action:none;inline-size:8px;position:absolute;inset-block:0;inset-inline-start:-4px}.kvc-panel-resizer:hover,.kvc-panel-resizer:focus-visible,.kvc-panel-resizer[data-dragging=true]{background:color-mix(in srgb, var(--kv-color-primary) 35%, transparent);outline:none}.kvc-artifact-head{align-items:center;gap:var(--kv-space-sm);padding-block:12px;padding-inline:var(--kv-space-lg);border-block-end:1px solid var(--kv-color-border);display:flex}.kvc-artifact-name .kvc-picker{min-inline-size:0}.kvc-artifact-name .kvc-picker>.kvc-button{justify-content:space-between;max-inline-size:100%}.kvc-artifact-name .kvc-picker-label{min-inline-size:0;max-inline-size:none;font-size:15px;font-weight:600}.kvc-artifact-title{font-size:15px;font-weight:600}.kvc-artifact-name{flex-direction:column;flex:1 1 0;gap:2px;min-inline-size:0;display:flex}.kvc-artifact-name>.kvc-muted{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kvc-tab-icon{display:none}@container (inline-size<=30rem){.kvc-artifact-head{padding-inline:var(--kv-space-md)}.kvc-artifact-actions .kvc-tab{align-items:center;padding-inline:8px;display:flex}.kvc-artifact-actions .kvc-tab-icon{display:block}.kvc-artifact-actions .kvc-tab-text{display:none}}.kvc-artifact-actions{flex:none;align-items:center;gap:6px;margin-inline-start:auto;display:flex}.kvc-button.kvc-icon-button{box-sizing:border-box;flex:none;inline-size:36px;padding-inline:0}.kvc-artifact-body{min-block-size:0;padding-block:var(--kv-space-md);padding-inline:var(--kv-space-lg);flex:auto;overflow:auto}.kvc-artifact-source{font-family:var(--kv-font-mono);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:12px}.kvc-artifact-frame{background:#fff;border:0;block-size:100%;inline-size:100%}@container (inline-size<=48rem){.kvc-artifact-panel{z-index:5;inline-size:min(100%,32rem);position:absolute;inset-block:0;inset-inline-end:0;box-shadow:0 12px 32px #00000024}}@container kvc-workspace (inline-size<=48rem){.kvc-panel-resizer{display:none}}.kvc-header{align-items:center;gap:var(--kv-space-sm);padding-block:4px;padding-inline:var(--kv-space-lg);border-block-end:1px solid var(--kv-color-border);flex-wrap:wrap;display:flex;position:relative}.kvc-title{flex-wrap:wrap;flex:auto;align-items:baseline;column-gap:12px;min-inline-size:0;display:flex}.kvc-header-stats{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kvc-title strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.kvc-muted{color:var(--kv-color-muted);font-size:12.5px}.kvc-tabs{border:1px solid var(--kv-color-border);border-radius:10px;gap:2px;padding:3px;display:flex}.kvc-tab{color:var(--kv-color-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;padding-block:4px;padding-inline:12px}.kvc-tab[aria-selected=true],.kvc-tab[aria-pressed=true]{background:var(--kv-color-background);color:var(--kv-color-text);font-weight:500}.kvc-scrollport{flex-direction:column;flex:auto;min-block-size:0;display:flex;position:relative}.kvc-scroll{flex:auto;min-block-size:0;position:relative;overflow-y:auto}.kvc-jump{inline-size:max-content;margin-inline:auto;position:absolute;inset-block-end:12px;inset-inline:0;box-shadow:0 4px 16px #00000029}.kvc-column{box-sizing:border-box;inline-size:100%;max-inline-size:800px;padding:var(--kv-space-md) var(--kv-space-lg);gap:var(--kv-space-md);overflow-wrap:anywhere;flex-direction:column;margin-inline:auto;display:flex}.kvc-user{background:var(--kv-color-background);border-radius:16px;white-space:pre-wrap;border-end-end-radius:4px;align-self:flex-end;max-inline-size:80%;padding-block:10px;padding-inline:14px}.kvc-queued{border:1px dashed var(--kv-color-border);background:0 0}.kvc-answer{gap:var(--kv-space-sm);flex-direction:column;display:flex}.kvc-card{border:1px solid var(--kv-color-border);border-radius:var(--kv-radius);background:var(--kv-color-background);overflow:hidden}.kvc-card-row{align-items:center;gap:10px;padding-block:9px;padding-inline:12px;display:flex}.kvc-card-body{border-block-start:1px solid var(--kv-color-border);gap:var(--kv-space-sm);flex-direction:column;padding-block:10px;padding-inline:14px;display:flex}.kvc-lines{text-align:start;flex-direction:column;flex:auto;gap:2px;min-inline-size:0;display:flex}.kvc-failed{border-color:var(--kv-color-danger)}.kvc-mono{font-family:var(--kv-font-mono);overflow-wrap:anywhere;direction:ltr;unicode-bidi:isolate;font-size:12.5px}.kvc-card-row>.kvc-muted,.kvc-card-row>.kvc-chip{white-space:nowrap;flex:none}.kvc-card-row>svg{flex:none}.kvc-output{background:var(--kv-color-surface);color:var(--kv-color-text);font-family:var(--kv-font-mono);white-space:pre-wrap;overflow-wrap:anywhere;max-block-size:320px;margin:0;padding:10px 14px;font-size:12px;overflow-y:auto}.kvc-output+.kvc-output{border-block-start:1px solid var(--kv-color-border)}.kvc-output-block>.kvc-output{max-block-size:none;overflow-y:visible}.kvc-output .kvc-link{color:inherit;text-underline-offset:2px;text-decoration:underline}.kvc-chip{white-space:nowrap;border:1px solid var(--kv-color-border);border-radius:999px;align-items:center;gap:4px;padding-block:2px;padding-inline:8px;font-size:12px;font-weight:500;display:inline-flex}.kvc-ok{color:var(--kv-color-success)}.kvc-warn{color:var(--kv-color-warning)}.kvc-sign-in-failed,.kvc-danger{color:var(--kv-color-danger)}.kvc-notice{align-items:center;gap:var(--kv-space-sm);color:var(--kv-color-muted);font-size:13px;display:flex}.kvc-notice:before,.kvc-notice:after{content:"";background:var(--kv-color-border);flex:auto;block-size:1px}.kvc-ask{border-color:var(--kv-color-warning)}.kvc-option{border:1px solid var(--kv-color-border);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.kvc-option:has(input:checked){border-color:var(--kv-color-primary);background:color-mix(in srgb, var(--kv-color-primary) 8%, var(--kv-color-surface))}.kvc-answered-option{color:var(--kv-color-muted);align-items:flex-start;gap:10px;display:flex}.kvc-answered-option[data-chosen=true]{color:var(--kv-color-text);font-weight:500}.kvc-answered-option>svg{flex:none;margin-block-start:3px}.kvc-answered-gap{flex:0 0 16px}.kvc-sr{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.kvc-button{border:1px solid var(--kv-color-border);background:var(--kv-color-surface);min-block-size:36px;color:var(--kv-color-text);font:inherit;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding-inline:14px;font-weight:500;display:inline-flex}a.kvc-button{color:inherit;text-decoration:none}.kvc-button:disabled{opacity:.5;cursor:default}.kvc-primary,.kvc-decide[aria-pressed=true]{background:var(--kv-color-primary);border-color:var(--kv-color-primary);color:var(--kv-color-on-primary)}.kvc-ghost{background:0 0;border-color:#0000}.kvc-actions{gap:var(--kv-space-sm);flex-wrap:wrap;justify-content:flex-end;display:flex}.kvc-actions>.kvc-button{white-space:nowrap;flex:none}.kvc-composer{z-index:2;background:var(--kv-color-surface);padding-block:12px 18px;padding-inline:var(--kv-space-lg);position:sticky;inset-block-end:0}.kvc-box{box-sizing:border-box;border:1px solid var(--kv-color-border);background:var(--kv-color-surface);gap:var(--kv-space-sm);border-radius:16px;flex-direction:column;max-inline-size:760px;margin-inline:auto;padding:10px 12px;display:flex}.kvc-field{box-sizing:border-box;border:1px solid var(--kv-color-border);background:var(--kv-color-surface);inline-size:100%;color:inherit;font:inherit;border-radius:10px;padding-block:8px;padding-inline:12px}.kvc-field:disabled{opacity:.6;cursor:not-allowed}.kvc-box textarea{resize:none;color:inherit;font:inherit;background:0 0;border:0;outline:none;min-block-size:44px}.kvc-start{justify-content:safe center;gap:var(--kv-space-lg);min-height:0;padding:var(--kv-space-lg);flex-direction:column;flex:auto;display:flex;overflow-y:auto}.kvc-start-note{text-align:center;margin:0}.kvc-link-button{color:var(--kv-color-primary);font:inherit;text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.kvc-start h1{text-align:center;margin:0;font-size:26px;font-weight:600}.kvc-sessions{box-sizing:border-box;border-inline-end:1px solid var(--kv-color-border);flex-direction:column;flex:none;align-self:stretch;gap:2px;max-block-size:100%;inline-size:272px;padding:14px 12px;display:flex;overflow-y:auto}.kvc-session{min-block-size:44px;color:inherit;font:inherit;text-align:start;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding-inline:10px;display:flex}.kvc-session[aria-current=page]{background:color-mix(in srgb, var(--kv-color-primary) 16%, var(--kv-color-surface));font-weight:600}.kvc-session .kvc-muted,.kvc-session .kvc-chip{white-space:nowrap;flex:none}.kvc-session span:first-child{text-overflow:ellipsis;white-space:nowrap;flex:auto;overflow:hidden}.kvc-group{color:var(--kv-color-muted);padding-block:12px 4px;padding-inline:10px;font-size:12px;font-weight:600}.kvc-spin{border:2px solid var(--kv-color-border);border-block-start-color:var(--kv-color-primary);border-radius:50%;flex:none;block-size:14px;inline-size:14px;animation:.9s linear infinite kvc-spin}.kvc-menu{z-index:10;border:1px solid var(--kv-color-border);background:var(--kv-color-surface);border-radius:12px;flex-direction:column;min-inline-size:220px;padding:6px;display:flex;position:absolute;inset-block-start:100%;inset-inline-end:0;box-shadow:0 12px 32px #00000024}.kvc-menu button{text-align:start;justify-content:flex-start}.kvc-prompt{padding:var(--kv-space-md);border:1px solid var(--kv-color-border);border-radius:var(--kv-radius);background:var(--kv-color-background);font-family:var(--kv-font-mono);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:12px}.kvc-activity{border:1px solid var(--kv-color-border);border-radius:var(--kv-radius);background:var(--kv-color-background);align-items:center;gap:10px;padding-block:8px;padding-inline:12px;font-size:13.5px;display:flex}.kvc-activity-text{flex-direction:column;flex:auto;gap:6px;min-inline-size:0;display:flex}.kvc-activity-call{flex-direction:column;gap:2px;display:flex}.kvc-oneline{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kvc-fold-words{text-align:start;flex:auto}.kvc-fold-failed{color:var(--kv-color-danger)}.kvc-picker{position:relative}.kvc-picker-label{text-overflow:ellipsis;white-space:nowrap;max-inline-size:16rem;overflow:hidden}.kvc-popover{z-index:20;box-sizing:border-box;inline-size:min(26rem, calc(100cqw - 2 * var(--kv-space-lg)));border:1px solid var(--kv-color-border);background:var(--kv-color-surface);border-radius:12px;flex-direction:column;gap:6px;padding:8px;display:flex;position:absolute;inset-block-start:calc(100% + 6px);inset-inline-start:0;box-shadow:0 12px 32px #00000024}.kvc-choices{inline-size:max-content;min-inline-size:10rem;max-inline-size:min(22rem, calc(100cqw - 2 * var(--kv-space-md)));gap:2px;max-block-size:18rem;overflow-y:auto}.kvc-choices>.kvc-model{flex:none}.kvc-recovery{align-items:center;gap:var(--kv-space-sm);flex-wrap:wrap;display:flex}.kvc-recovery .kvc-popover{inset-block:auto calc(100% + 6px)}.kvc-search{border:1px solid var(--kv-color-border);border-radius:10px;align-items:center;gap:8px;padding-inline:10px;display:flex}.kvc-search input{min-inline-size:0;color:inherit;font:inherit;background:0 0;border:0;outline:none;flex:auto;padding-block:8px}.kvc-options{flex-direction:column;max-block-size:18rem;display:flex;overflow-y:auto}.kvc-model{cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding-block:7px;padding-inline:10px;display:flex}.kvc-model[data-active=true]{background:var(--kv-color-background)}.kvc-model[aria-selected=true]{font-weight:600}.kvc-model-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kvc-none,.kvc-count{margin:0;padding-inline:10px}@keyframes kvc-spin{to{transform:rotate(360deg)}}.kvc-dot{background:var(--kv-color-success);border-radius:50%;flex:none;block-size:8px;inline-size:8px}.kvc-jobs-panel{max-block-size:70vh;inline-size:min(32rem,100%);inset-inline:auto 0;overflow-y:auto}.kvc-job{border:1px solid var(--kv-color-border);border-radius:8px;flex-direction:column;gap:6px;padding:8px;display:flex}.kvc-job-head{justify-content:space-between;align-items:center;gap:8px;min-inline-size:0;display:flex}.kvc-job-title{flex:auto;min-inline-size:0;font-weight:600}.kvc-job-head>.kvc-muted,.kvc-job-head>.kvc-chip{white-space:nowrap;flex:none}.kvc-job-links{flex-wrap:wrap;gap:4px 12px;display:flex}.kvc-job-links .kvc-link{color:var(--kv-color-primary);text-underline-offset:2px;text-decoration:underline}.kvc-job .kvc-output{background:var(--kv-color-background);border-radius:8px}.kvc-connectors{flex-direction:column;display:flex}.kvc-connectors-state{flex-wrap:wrap;align-items:center;gap:10px;padding-block-end:8px;display:flex}.kvc-text-button{color:var(--kv-color-primary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:500}.kvc-text-button:disabled{opacity:.5;cursor:default}.kvc-connector{border-block-end:1px solid var(--kv-color-border);align-items:center;gap:16px;padding-block:12px;display:flex}.kvc-connector:last-child{border-block-end:0}.kvc-connector-text{flex-direction:column;flex:1;gap:2px;min-inline-size:0;display:flex}.kvc-connector-name{font-size:13.5px;font-weight:600}.kvc-switch{background:var(--kv-color-border);cursor:pointer;border:0;border-radius:999px;flex:none;align-items:center;block-size:24px;inline-size:40px;padding:2px;transition:background-color .12s;display:flex}.kvc-switch[aria-checked=true]{background:var(--kv-color-primary)}.kvc-switch:disabled{opacity:.5;cursor:default}.kvc-switch-knob{background:var(--kv-color-surface);border-radius:999px;block-size:20px;inline-size:20px;transition:margin-inline-start .12s}.kvc-switch[aria-checked=true] .kvc-switch-knob{margin-inline-start:16px}.kvc-setting{border-block-end:1px solid var(--kv-color-border);flex-wrap:wrap;align-items:flex-start;gap:24px;padding-block:16px;display:flex}.kvc-setting-text{flex-direction:column;flex:20rem;gap:4px;min-inline-size:15rem;display:flex}.kvc-setting-title{font-weight:600}.kvc-setting-control{flex-direction:column;gap:8px;inline-size:22.5rem;max-inline-size:100%;display:flex}.kvc-setting .kvc-picker>.kvc-button{justify-content:space-between;inline-size:100%}.kvc-setting .kvc-picker-label{max-inline-size:none}.kvc-setting .kvc-popover{inline-size:100%}.kvc-setting .kvc-connectors-state{padding-block-end:0}.kvc-connector-actions{flex:none;align-items:center;gap:8px;display:flex}.kvc-dialog-backdrop{z-index:40;padding:var(--kv-space-md);background:#00000059;place-items:center;display:grid;position:fixed;inset:0}.kvc-dialog{box-sizing:border-box;gap:var(--kv-space-sm);inline-size:100%;max-inline-size:44rem;max-block-size:calc(100dvh - 2 * var(--kv-space-md));background:var(--kv-color-surface);color:var(--kv-color-text);padding:var(--kv-space-lg);border-radius:16px;outline:none;flex-direction:column;display:flex;overflow-y:auto;box-shadow:0 20px 50px #00000040}.kvc-dialog-head{align-items:flex-start;gap:12px;display:flex}.kvc-dialog-title{font-size:16px;font-weight:600}.kvc-dialog-rows{flex-direction:column;display:flex}.kvc-dialog-rows>.kvc-setting:last-child{border-block-end:0;padding-block-end:0}.kvc-server{align-items:flex-start}.kvc-server-state{flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;font-weight:500;display:flex}.kvc-server-state[data-status=ready]{color:var(--kv-color-success)}.kvc-server-state[data-status=failed],.kvc-server-state[data-status=signInNeeded]{color:var(--kv-color-warning)}.kvc-server-state[data-status=checking]{color:var(--kv-color-muted)}.kvc-server-reason{overflow-wrap:anywhere;white-space:pre-wrap}.kvc-server-sign-in{align-self:flex-start;margin-block-start:6px}.kvc-sign-in{max-inline-size:32rem;padding:var(--kv-space-lg);text-align:center;flex-direction:column;align-items:center;gap:8px;margin-inline:auto;display:flex}.kvc-sign-in-done{color:var(--kv-color-success)}.kvc-sign-in-failed{color:var(--kv-color-danger)}.kvc-danger{background:var(--kv-color-danger);border-color:var(--kv-color-danger);color:var(--kv-color-on-primary)}.kvc-form{gap:var(--kv-space-md);flex-direction:column;padding-block-start:var(--kv-space-sm);display:flex}.kvc-form-field{flex-direction:column;gap:6px;display:flex}.kvc-form-label{padding:0;font-weight:600}.kvc-confirm{border:1px solid var(--kv-color-danger);border-radius:var(--kv-radius);flex-direction:column;gap:8px;padding:12px;display:flex}.kvc-preferences{resize:vertical;min-block-size:6rem;inline-size:100%}.kvc-remember{margin-block-start:4px;display:block}.kvc-fold-body{border-block-start:1px solid var(--kv-color-border);flex-direction:column;gap:6px;padding:6px 8px 8px;display:flex}.kvc-final{border-inline-start:3px solid var(--kv-color-primary);padding-inline-start:12px}.kvc-changes{flex-direction:column;gap:8px;display:flex}.kvc-change-head{text-align:start;flex:auto;align-items:center;gap:8px;min-inline-size:0;display:flex}.kvc-diff>[data-kind=added]{color:var(--kv-color-success,inherit);background:color-mix(in srgb, var(--kv-color-success,green) 12%, transparent)}.kvc-diff>[data-kind=removed]{color:var(--kv-color-danger);background:color-mix(in srgb, var(--kv-color-danger) 12%, transparent)}.kvc-diff>[data-kind=hunk],.kvc-diff>[data-kind=head]{color:var(--kv-color-muted,inherit)}.kvc-picker-icon{flex:none;display:none}.kvc-artifact-name .kvc-picker>.kvc-button{min-block-size:0;padding-block:2px}.kvc-decide{white-space:nowrap}@container kvc-workspace (inline-size<=30rem){.kvc-composer-row .kvc-picker-icon{display:block}.kvc-composer-row .kvc-picker-label{display:none}}.kvc-chats-bar{display:none}@media (width<=60rem){.kvc-sessions{display:none}.kvc-drawer .kvc-sessions{border-inline-end:0;inline-size:100%;display:flex}.kvc-chats-bar{padding-block:4px;padding-inline:var(--kv-space-md);border-block-end:1px solid var(--kv-color-border);display:flex}}.kvc-drawer-backdrop{z-index:40;background:#00000059;position:fixed;inset:0}.kvc-drawer{background:var(--kv-color-surface);inline-size:min(85vw,20rem);position:absolute;inset-block:0;inset-inline-start:0;overflow-y:auto;box-shadow:0 12px 32px #0003}.kvc-rules{flex-direction:column;gap:6px;margin-block-start:8px;display:flex}.kvc-rule{justify-content:space-between;align-items:center;gap:12px;display:flex}.kvc-form-error{color:var(--kv-color-danger);font-size:12.5px}.kvc-form-choice{gap:var(--kv-space-md);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.kvc-form-choice>legend{margin-block-end:6px}.kvc-form-radio{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.kvc-form-value{grid-template-columns:minmax(0,2fr) minmax(0,3fr) auto;align-items:center;gap:8px;display:grid}.kvc-form-set{align-items:center;gap:10px;display:flex}.kvc-form-add{align-self:flex-start;align-items:center;gap:4px;display:inline-flex}.kvc-form textarea.kvc-field{resize:vertical}.kvc-box{position:relative}.kvc-composer-row{align-items:center;gap:8px;display:flex}.kvc-composer-hint{text-overflow:ellipsis;white-space:nowrap;flex:1 1 0;min-inline-size:0;overflow:hidden}.kvc-composer-row .kvc-picker{flex:0 auto;min-inline-size:0}.kvc-composer-row .kvc-picker>.kvc-button{max-inline-size:100%}.kvc-composer-row .kvc-picker-label{min-inline-size:0}.kvc-composer .kvc-popover{inset-block:auto calc(100% + 6px)}.kvc-slash{z-index:20;border:1px solid var(--kv-color-border);background:var(--kv-color-surface);border-radius:12px;flex-direction:column;padding:6px;display:flex;position:absolute;inset-block-end:calc(100% + 6px);inset-inline:0;box-shadow:0 12px 32px #00000024}.kvc-slash-row{cursor:pointer;border-radius:8px;align-items:baseline;gap:12px;padding-block:7px;padding-inline:10px;display:flex}.kvc-slash-row[data-active=true]{background:var(--kv-color-background)}.kvc-slash-name{flex:0 0 9rem}.kvc-slash-row .kvc-mono{font-size:13px;font-weight:600}.kvc-call-parts{border-block-start:1px solid var(--kv-color-border);margin:0;padding-block:8px;padding-inline:14px}.kvc-summary{flex-wrap:wrap;align-items:baseline;column-gap:8px;min-inline-size:0;font-size:13px;display:flex}.kvc-summary>.kvc-mono{min-inline-size:0}.kvc-block{border-block-start:1px solid var(--kv-color-border);margin:0;padding-block:8px;font-size:13px}.kvc-block:not(.kvc-code-lines){padding-inline:14px}.kvc-code-lines{font-family:var(--kv-font-mono);font-size:12px;line-height:1.55}.kvc-code-line{gap:8px;min-block-size:1.55em;padding-inline:14px;display:flex}.kvc-code-line[data-kind=removed]{background:color-mix(in srgb, var(--kv-color-danger) 14%, transparent)}.kvc-code-line[data-kind=added]{background:color-mix(in srgb, var(--kv-color-success) 14%, transparent)}.kvc-line-number{text-align:end;min-inline-size:3ch;color:var(--kv-color-muted);-webkit-user-select:none;user-select:none;flex:none}.kvc-line-mark{color:var(--kv-color-muted);-webkit-user-select:none;user-select:none;flex:0 0 1ch}.kvc-line-text{white-space:pre-wrap;overflow-wrap:anywhere;flex:auto;min-inline-size:0}.kvc-code-lines .kvc-link,.kvc-fields .kvc-link,.kvc-error .kvc-link{color:var(--kv-color-primary);text-underline-offset:2px;text-decoration:underline}.kvc-prose-lines{font-family:inherit;font-size:13px}.kvc-fold{margin-block-start:6px;margin-inline:14px;display:block}.kvc-output-block{border-block-start:1px solid var(--kv-color-border)}.kvc-output-block>.kvc-fold{margin-block:6px}.kvc-error{color:var(--kv-color-danger);white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit}.kvc-entries{flex-direction:column;gap:2px;display:flex}.kvc-entry{align-items:center;gap:8px;display:flex}.kvc-entry>.kvc-mono{flex:auto;min-inline-size:0}.kvc-file-path{padding-block-end:4px;font-weight:600}.kvc-block>.kvc-code-lines>.kvc-code-line{padding-inline:0}.kvc-block>.kvc-code-lines>.kvc-fold{margin-inline:0}.kvc-fields{grid-template-columns:minmax(6rem,max-content) minmax(0,1fr);gap:4px 12px;margin:0;display:grid}.kvc-field-row{display:contents}.kvc-steps{gap:6px;padding-inline-start:0;list-style:none;display:grid}.kvc-step-arguments{padding-block-start:2px;padding-inline-start:1.5rem}.kvc-field-row>dt{font-family:var(--kv-font-mono);font-size:12px}.kvc-field-row>dd{overflow-wrap:anywhere;min-inline-size:0;margin:0}.kvc-field-block>.kvc-code-line,.kvc-field-block>.kvc-fold{margin-inline:0;padding-inline:0}.kvc-field-table{overflow-x:auto}.kvc-field-table table{border-collapse:collapse;font-size:12.5px}.kvc-field-table th,.kvc-field-table td{text-align:start;vertical-align:top;padding-block:3px;padding-inline:0 14px}.kvc-field-table th{color:var(--kv-color-muted);font-weight:500;font-family:var(--kv-font-mono);font-size:12px}.kvc-field-items{flex-direction:column;gap:2px;display:flex}.kvc-approval{border-block-start:1px solid var(--kv-color-border)}.kvc-approval>.kvc-actions{padding-block-start:0}.kvc-always>.kvc-link-button{margin-inline-end:auto}.kvc-reason,.kvc-always{flex-wrap:wrap;align-items:center;padding-block-start:0}.kvc-reason>textarea{flex:16rem}.kvc-always>input{flex:0 14rem;min-inline-size:8rem}.kvc-run-row{align-items:baseline;gap:10px;display:flex}.kvc-run-row>.kvc-run-call{flex:auto;min-inline-size:0}.kvc-run-row>.kvc-chip,.kvc-run-row>.kvc-muted{white-space:nowrap;flex:none}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .kvc-flip{transform:scaleX(-1)}.kvc-slash-row[aria-disabled=true]{opacity:.55;cursor:default}.kvc-button:focus-visible,.kvc-text-button:focus-visible,.kvc-link-button:focus-visible,.kvc-session:focus-visible,.kvc-switch:focus-visible,.kvc-chip-remove:focus-visible{outline:2px solid var(--kv-color-primary);outline-offset:2px}.kvc-box:focus-within,.kvc-search:focus-within{outline:2px solid var(--kv-color-primary);outline-offset:1px}.kvc-chip-remove{min-block-size:20px;padding:0}@media (pointer:coarse){.kvc-button{min-block-size:44px}.kvc-button.kvc-icon-button{inline-size:44px}.kvc-text-button,.kvc-link-button{align-items:center;min-block-size:44px;display:inline-flex}.kvc-chip-remove{min-block-size:44px;min-inline-size:44px}.kvc-switch{position:relative}.kvc-switch:after{content:"";position:absolute;inset-block:-10px;inset-inline:-2px}}
2
2
  /*$vite$:1*/
package/locales/ar.json CHANGED
@@ -44,7 +44,7 @@
44
44
  "kvcoder.ui.today": "اليوم",
45
45
  "kvcoder.ui.earlier": "الأقدم",
46
46
  "kvcoder.ui.notify.title": "محادثة تحتاجك",
47
- "kvcoder.ui.notify.ask": "احصل على تنبيه عندما تحتاجك محادثة وkvman في الخلفية.",
47
+ "kvcoder.ui.notify.ask": "احصل على تنبيه عندما تحتاجك محادثة بينما kvman في الخلفية.",
48
48
  "kvcoder.ui.notify.on": "تفعيل",
49
49
  "kvcoder.ui.notify.later": "ليس الآن",
50
50
  "kvcoder.ui.needsYou": "بانتظار ردّك",
@@ -67,7 +67,7 @@
67
67
  "kvcoder.ui.costParts": "منها: التلخيص {summary}، العنوان {title}، المساعدون {helpers}",
68
68
  "kvcoder.ui.costEstimate": "التكلفة تقدير من كتالوج النماذج",
69
69
  "kvcoder.ui.memoryDetail": "يحمل النموذج الآن {tokens} من {window} توكن. تُلخَّص الرسائل الأقدم عند {at}%.",
70
- "kvcoder.ui.turns": "الجولات: {count}",
70
+ "kvcoder.ui.turns": "لا جولات | جولة واحدة | جولتان | {count} جولات | {count} جولة | {count} جولة",
71
71
  "kvcoder.ui.exitCode": "رمز الخروج {code}",
72
72
  "kvcoder.ui.retry": "إعادة المحاولة",
73
73
  "kvcoder.ui.loadFailed": "تعذّر تحميل هذه المحادثة: {error}",
@@ -89,7 +89,7 @@
89
89
  "kvcoder.ui.other": "إجابة أخرى",
90
90
  "kvcoder.ui.yes": "نعم",
91
91
  "kvcoder.ui.no": "لا",
92
- "kvcoder.ui.allowCommands": "هل تسمح بتنفيذ هذه الأوامر؟ ({count})",
92
+ "kvcoder.ui.allowCommands": "هل تسمح بتنفيذ هذه الأوامر؟ | هل تسمح بتنفيذ هذا الأمر؟ | هل تسمح بتنفيذ هذين الأمرين؟ | هل تسمح بتنفيذ هذه الأوامر الـ{count}؟ | هل تسمح بتنفيذ هذه الأوامر الـ{count}؟ | هل تسمح بتنفيذ هذه الأوامر الـ{count}؟",
93
93
  "kvcoder.ui.allow": "سماح",
94
94
  "kvcoder.ui.approval.denyWhy": "ارفض واذكر السبب…",
95
95
  "kvcoder.ui.approval.reason": "ماذا يفعل الوكيل بدلًا من ذلك؟",
@@ -119,7 +119,7 @@
119
119
  "kvcoder.ui.preparing": "جارٍ تجهيز أمر…",
120
120
  "kvcoder.ui.searchModels": "ابحث في النماذج",
121
121
  "kvcoder.ui.noModels": "لا توجد نماذج مطابقة",
122
- "kvcoder.ui.modelsCount": "{shown} من أصل {total}",
122
+ "kvcoder.ui.modelsCount": "{shown} من أصل {count} | {shown} من أصل نموذج واحد | {shown} من أصل نموذجين | {shown} من أصل {count} نماذج | {shown} من أصل {count} نموذجًا | {shown} من أصل {count} نموذج",
123
123
  "kvcoder.ui.activity.waiting": "بانتظار النموذج…",
124
124
  "kvcoder.ui.activity.thinking": "يفكر…",
125
125
  "kvcoder.ui.activity.writing": "يكتب…",
@@ -152,8 +152,8 @@
152
152
  "kvcoder.ui.approvalLine.change": "تغيير",
153
153
  "kvcoder.ui.homeWorkspace": "الرئيسية",
154
154
  "kvcoder.ui.chatNotHere": "هذه المحادثة ليست في مساحة العمل هذه.",
155
- "kvcoder.ui.showEarlier": "عرض {count} رسالة أقدم",
156
- "kvcoder.ui.earlierMessages": "رسائل أقدم: {count} · تصدير",
155
+ "kvcoder.ui.showEarlier": "عرض الرسائل الأقدم | عرض رسالة أقدم | عرض رسالتين أقدم | عرض {count} رسائل أقدم | عرض {count} رسالة أقدم | عرض {count} رسالة أقدم",
156
+ "kvcoder.ui.earlierMessages": "لا رسائل أقدم · تصدير | رسالة أقدم · تصدير | رسالتان أقدم · تصدير | {count} رسائل أقدم · تصدير | {count} رسالة أقدم · تصدير | {count} رسالة أقدم · تصدير",
157
157
  "kvcoder.ui.messageDismisses": "إرسال رسالة الآن يتخطى الأسئلة ويرفض الأوامر المعلّقة.",
158
158
  "kvcoder.ui.promptTitle": "تعليمات النظام كما ستُرسل في الخطوة التالية",
159
159
  "kvcoder.ui.copy": "نسخ",
@@ -355,7 +355,7 @@
355
355
  "kvcoder.ui.map.evidence": "الدليل",
356
356
  "kvcoder.ui.map.note": "ملاحظة",
357
357
  "kvcoder.ui.map.noted": "مؤجَّل لوقت لاحق ({count})",
358
- "kvcoder.ui.map.remaining": "{count} من خطوات خريطة التنفيذ لم تُنجز.",
358
+ "kvcoder.ui.map.remaining": "كل خطوات خريطة التنفيذ أُنجزت. | خطوة واحدة من خريطة التنفيذ لم تُنجز. | خطوتان من خريطة التنفيذ لم تُنجزا. | {count} خطوات من خريطة التنفيذ لم تُنجز. | {count} خطوة من خريطة التنفيذ لم تُنجز. | {count} خطوة من خريطة التنفيذ لم تُنجز.",
359
359
  "kvcoder.ui.map.continue": "تابع",
360
360
  "kvcoder.ui.map.continueMessage": "تابع.",
361
361
  "kvcoder.ui.map.show": "عرض الخريطة",
@@ -414,7 +414,7 @@
414
414
  "kvcoder.config.mcp.empty": "لا توجد خوادم بعد. أضف خادمًا ليستخدم الوكيل أدواته.",
415
415
  "kvcoder.config.mcp.add": "إضافة خادم",
416
416
  "kvcoder.config.mcp.checking": "جارٍ الفحص…",
417
- "kvcoder.config.mcp.ready": "جاهز · {count} أداة",
417
+ "kvcoder.config.mcp.ready": "جاهز · لا أدوات | جاهز · أداة واحدة | جاهز · أداتان | جاهز · {count} أدوات | جاهز · {count} أداة | جاهز · {count} أداة",
418
418
  "kvcoder.config.mcp.signInNeeded": "يحتاج إلى تسجيل الدخول",
419
419
  "kvcoder.config.mcp.failed": "تعذّر الاتصال",
420
420
  "kvcoder.config.mcp.recheck": "افحص مجددًا",
@@ -558,18 +558,19 @@
558
558
  "kvcoder.ui.call.write": "كتابة",
559
559
  "kvcoder.ui.call.read": "قراءة",
560
560
  "kvcoder.ui.call.list": "عرض",
561
- "kvcoder.ui.fold.read": "قراءة {count}",
562
- "kvcoder.ui.fold.searched": "بحث {count}",
563
- "kvcoder.ui.fold.changed": "تغيير {count}",
564
- "kvcoder.ui.fold.ran": "تشغيل {count}",
565
- "kvcoder.ui.fold.other": "أخرى {count}",
566
- "kvcoder.ui.fold.failed": "فشل {count}",
561
+ "kvcoder.ui.fold.read": "قراءة {count} ملف | قراءة ملف واحد | قراءة ملفين | قراءة {count} ملفات | قراءة {count} ملفًا | قراءة {count} ملف",
562
+ "kvcoder.ui.fold.searched": "بحث {count} مرة | بحث مرة واحدة | بحث مرتين | بحث {count} مرات | بحث {count} مرة | بحث {count} مرة",
563
+ "kvcoder.ui.fold.changed": "تعديل {count} ملف | تعديل ملف واحد | تعديل ملفين | تعديل {count} ملفات | تعديل {count} ملفًا | تعديل {count} ملف",
564
+ "kvcoder.ui.fold.ran": "تشغيل {count} أمر | تشغيل أمر واحد | تشغيل أمرين | تشغيل {count} أوامر | تشغيل {count} أمرًا | تشغيل {count} أمر",
565
+ "kvcoder.ui.fold.other": "استخدام {count} أداة أخرى | استخدام أداة أخرى | استخدام أداتين أخريين | استخدام {count} أدوات أخرى | استخدام {count} أداة أخرى | استخدام {count} أداة أخرى",
566
+ "kvcoder.ui.fold.failed": "فشل {count} خطوة | فشلت خطوة واحدة | فشلت خطوتان | فشلت {count} خطوات | فشلت {count} خطوة | فشلت {count} خطوة",
567
+ "kvcoder.ui.fold.list": "{first}، {next}",
567
568
  "kvcoder.ui.call.fetch": "جلب",
568
569
  "kvcoder.ui.call.find": "إيجاد",
569
- "kvcoder.ui.call.files": "{count} ملف",
570
+ "kvcoder.ui.call.files": "لا ملفات | ملف واحد | ملفان | {count} ملفات | {count} ملفًا | {count} ملف",
570
571
  "kvcoder.ui.call.fileNotRead": "لم يُقرأ: استهلكت الملفات التي قبله حدّ هذا الاستدعاء (30 KB).",
571
572
  "kvcoder.ui.call.fileUnchanged": "لم يتغيّر منذ قراءة سابقة في هذه المحادثة.",
572
- "kvcoder.ui.call.filesFirst": "أول {count} ملف",
573
+ "kvcoder.ui.call.filesFirst": "لا ملفات | الملف الأول | أول ملفين | أول {count} ملفات | أول {count} ملفًا | أول {count} ملف",
573
574
  "kvcoder.ui.call.search": "بحث",
574
575
  "kvcoder.ui.call.tools": "الأدوات",
575
576
  "kvcoder.ui.call.delegate": "تفويض",
@@ -589,18 +590,18 @@
589
590
  "kvcoder.ui.call.created": "أُنشئ · {size}",
590
591
  "kvcoder.ui.call.replaced": "استُبدل · {size}",
591
592
  "kvcoder.ui.call.lines": "الأسطر {from}–{to} من {total}",
592
- "kvcoder.ui.call.entries": "{count} عنصر",
593
- "kvcoder.ui.call.entriesFirst": "أول {count} عنصر",
594
- "kvcoder.ui.call.matchCount": "النتائج: {count}",
595
- "kvcoder.ui.call.matches": "{matches} نتيجة في {files} ملف",
596
- "kvcoder.ui.call.matchesFirst": "أول {matches} نتيجة في {files} ملف",
597
- "kvcoder.ui.call.toolCount": "{count} أداة",
598
- "kvcoder.ui.call.runCount": "{count} مهمة",
593
+ "kvcoder.ui.call.entries": "لا عناصر | عنصر واحد | عنصران | {count} عناصر | {count} عنصرًا | {count} عنصر",
594
+ "kvcoder.ui.call.entriesFirst": "لا عناصر | العنصر الأول | أول عنصرين | أول {count} عناصر | أول {count} عنصرًا | أول {count} عنصر",
595
+ "kvcoder.ui.call.matchCount": "لا نتائج | نتيجة واحدة | نتيجتان | {count} نتائج | {count} نتيجة | {count} نتيجة",
596
+ "kvcoder.ui.call.matches": "{matches} في {files}",
597
+ "kvcoder.ui.call.matchesFirst": "لا نتائج | النتيجة الأولى | أول نتيجتين | أول {count} نتائج | أول {count} نتيجة | أول {count} نتيجة",
598
+ "kvcoder.ui.call.toolCount": "لا أدوات | أداة واحدة | أداتان | {count} أدوات | {count} أداة | {count} أداة",
599
+ "kvcoder.ui.call.runCount": "لا مهام | مهمة واحدة | مهمتان | {count} مهام | {count} مهمة | {count} مهمة",
599
600
  "kvcoder.ui.call.bytes": "{count} بايت",
600
601
  "kvcoder.ui.call.kilobytes": "{count} ك.ب",
601
602
  "kvcoder.ui.call.megabytes": "{count} م.ب",
602
603
  "kvcoder.ui.call.risky": "خطِر",
603
- "kvcoder.ui.call.replacements": "الاستبدالات: {count} · من السطر {line}",
604
+ "kvcoder.ui.call.replacements": "لا استبدالات · من السطر {line} | استبدال واحد · من السطر {line} | استبدالان · من السطر {line} | {count} استبدالات · من السطر {line} | {count} استبدالًا · من السطر {line} | {count} استبدال · من السطر {line}",
604
605
  "kvcoder.ui.call.showAll": "عرض كل الأسطر ({count})",
605
606
  "kvcoder.ui.call.showFewer": "عرض أقل",
606
607
  "kvcoder.ui.call.error": "الخطأ",
package/locales/en.json CHANGED
@@ -67,7 +67,7 @@
67
67
  "kvcoder.ui.costParts": "Of it: summaries {summary}, title {title}, helpers {helpers}",
68
68
  "kvcoder.ui.costEstimate": "Cost is an estimate from the model catalog",
69
69
  "kvcoder.ui.memoryDetail": "The model now holds {tokens} of its {window} tokens. Older messages are summarized at {at}%.",
70
- "kvcoder.ui.turns": "Turns: {count}",
70
+ "kvcoder.ui.turns": "{count} turn | {count} turns",
71
71
  "kvcoder.ui.exitCode": "exit {code}",
72
72
  "kvcoder.ui.retry": "Retry",
73
73
  "kvcoder.ui.loadFailed": "This chat couldn't be loaded: {error}",
@@ -89,7 +89,7 @@
89
89
  "kvcoder.ui.other": "Something else",
90
90
  "kvcoder.ui.yes": "Yes",
91
91
  "kvcoder.ui.no": "No",
92
- "kvcoder.ui.allowCommands": "Allow these commands? ({count})",
92
+ "kvcoder.ui.allowCommands": "Allow this command? | Allow these {count} commands?",
93
93
  "kvcoder.ui.allow": "Allow",
94
94
  "kvcoder.ui.approval.denyWhy": "Deny and say why…",
95
95
  "kvcoder.ui.approval.reason": "What should the agent do instead?",
@@ -119,7 +119,7 @@
119
119
  "kvcoder.ui.preparing": "Preparing a command…",
120
120
  "kvcoder.ui.searchModels": "Search models",
121
121
  "kvcoder.ui.noModels": "No models match",
122
- "kvcoder.ui.modelsCount": "{shown} of {total} models",
122
+ "kvcoder.ui.modelsCount": "{shown} of {count} model | {shown} of {count} models",
123
123
  "kvcoder.ui.activity.waiting": "Waiting for the model…",
124
124
  "kvcoder.ui.activity.thinking": "Thinking…",
125
125
  "kvcoder.ui.activity.writing": "Writing…",
@@ -152,8 +152,8 @@
152
152
  "kvcoder.ui.approvalLine.change": "Change",
153
153
  "kvcoder.ui.homeWorkspace": "Home",
154
154
  "kvcoder.ui.chatNotHere": "This chat isn't in this workspace.",
155
- "kvcoder.ui.showEarlier": "Show {count} earlier messages",
156
- "kvcoder.ui.earlierMessages": "{count} earlier messages · Export",
155
+ "kvcoder.ui.showEarlier": "Show {count} earlier message | Show {count} earlier messages",
156
+ "kvcoder.ui.earlierMessages": "{count} earlier message · Export | {count} earlier messages · Export",
157
157
  "kvcoder.ui.messageDismisses": "Sending a message skips the questions and denies the commands.",
158
158
  "kvcoder.ui.promptTitle": "The exact system prompt the next step sends",
159
159
  "kvcoder.ui.copy": "Copy",
@@ -355,7 +355,7 @@
355
355
  "kvcoder.ui.map.evidence": "Evidence",
356
356
  "kvcoder.ui.map.note": "Note",
357
357
  "kvcoder.ui.map.noted": "Noted for later ({count})",
358
- "kvcoder.ui.map.remaining": "{count} steps of the execution map are not done.",
358
+ "kvcoder.ui.map.remaining": "{count} step of the execution map is not done. | {count} steps of the execution map are not done.",
359
359
  "kvcoder.ui.map.continue": "Continue",
360
360
  "kvcoder.ui.map.continueMessage": "Continue.",
361
361
  "kvcoder.ui.map.show": "Show the map",
@@ -414,7 +414,7 @@
414
414
  "kvcoder.config.mcp.empty": "No servers yet. Add one and the agent can use its tools.",
415
415
  "kvcoder.config.mcp.add": "Add a server",
416
416
  "kvcoder.config.mcp.checking": "Checking…",
417
- "kvcoder.config.mcp.ready": "Ready · {count} tools",
417
+ "kvcoder.config.mcp.ready": "Ready · {count} tool | Ready · {count} tools",
418
418
  "kvcoder.config.mcp.signInNeeded": "Sign-in needed",
419
419
  "kvcoder.config.mcp.failed": "Could not connect",
420
420
  "kvcoder.config.mcp.recheck": "Check again",
@@ -558,18 +558,19 @@
558
558
  "kvcoder.ui.call.write": "Write",
559
559
  "kvcoder.ui.call.read": "Read",
560
560
  "kvcoder.ui.call.list": "List",
561
- "kvcoder.ui.fold.read": "Read {count}",
562
- "kvcoder.ui.fold.searched": "Searched {count}",
563
- "kvcoder.ui.fold.changed": "Changed {count}",
564
- "kvcoder.ui.fold.ran": "Ran {count}",
565
- "kvcoder.ui.fold.other": "Other {count}",
566
- "kvcoder.ui.fold.failed": "Failed {count}",
561
+ "kvcoder.ui.fold.read": "read {count} file | read {count} files",
562
+ "kvcoder.ui.fold.searched": "ran {count} search | ran {count} searches",
563
+ "kvcoder.ui.fold.changed": "changed {count} file | changed {count} files",
564
+ "kvcoder.ui.fold.ran": "ran {count} command | ran {count} commands",
565
+ "kvcoder.ui.fold.other": "used {count} other tool | used {count} other tools",
566
+ "kvcoder.ui.fold.failed": "{count} failed",
567
+ "kvcoder.ui.fold.list": "{first}, {next}",
567
568
  "kvcoder.ui.call.fetch": "Fetch",
568
569
  "kvcoder.ui.call.find": "Find",
569
- "kvcoder.ui.call.files": "{count} files",
570
+ "kvcoder.ui.call.files": "{count} file | {count} files",
570
571
  "kvcoder.ui.call.fileNotRead": "Not read: the files before it used this call's 30 KB.",
571
572
  "kvcoder.ui.call.fileUnchanged": "Unchanged since an earlier read in this chat.",
572
- "kvcoder.ui.call.filesFirst": "The first {count} files",
573
+ "kvcoder.ui.call.filesFirst": "The first {count} file | The first {count} files",
573
574
  "kvcoder.ui.call.search": "Search",
574
575
  "kvcoder.ui.call.tools": "Tools",
575
576
  "kvcoder.ui.call.delegate": "Delegate",
@@ -589,18 +590,18 @@
589
590
  "kvcoder.ui.call.created": "Created · {size}",
590
591
  "kvcoder.ui.call.replaced": "Replaced · {size}",
591
592
  "kvcoder.ui.call.lines": "Lines {from}–{to} of {total}",
592
- "kvcoder.ui.call.entries": "{count} entries",
593
- "kvcoder.ui.call.entriesFirst": "The first {count} entries",
594
- "kvcoder.ui.call.matchCount": "Matches: {count}",
595
- "kvcoder.ui.call.matches": "{matches} matches in {files} files",
596
- "kvcoder.ui.call.matchesFirst": "The first {matches} matches in {files} files",
597
- "kvcoder.ui.call.toolCount": "{count} tools",
598
- "kvcoder.ui.call.runCount": "{count} runs",
599
- "kvcoder.ui.call.bytes": "{count} bytes",
593
+ "kvcoder.ui.call.entries": "{count} entry | {count} entries",
594
+ "kvcoder.ui.call.entriesFirst": "The first {count} entry | The first {count} entries",
595
+ "kvcoder.ui.call.matchCount": "{count} match | {count} matches",
596
+ "kvcoder.ui.call.matches": "{matches} in {files}",
597
+ "kvcoder.ui.call.matchesFirst": "The first {count} match | The first {count} matches",
598
+ "kvcoder.ui.call.toolCount": "{count} tool | {count} tools",
599
+ "kvcoder.ui.call.runCount": "{count} run | {count} runs",
600
+ "kvcoder.ui.call.bytes": "{count} byte | {count} bytes",
600
601
  "kvcoder.ui.call.kilobytes": "{count} KB",
601
602
  "kvcoder.ui.call.megabytes": "{count} MB",
602
603
  "kvcoder.ui.call.risky": "Risky",
603
- "kvcoder.ui.call.replacements": "Replaced: {count} · from line {line}",
604
+ "kvcoder.ui.call.replacements": "{count} replacement · from line {line} | {count} replacements · from line {line}",
604
605
  "kvcoder.ui.call.showAll": "Show all {count} lines",
605
606
  "kvcoder.ui.call.showFewer": "Show fewer",
606
607
  "kvcoder.ui.call.error": "Error",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kvman/kvcoder",
3
- "version": "0.1.12",
3
+ "version": "0.1.13",
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,10 +33,10 @@
33
33
  "locales"
34
34
  ],
35
35
  "peerDependencies": {
36
- "@kvman/sdk": "^0.1.3"
36
+ "@kvman/sdk": "^0.1.4"
37
37
  },
38
38
  "dependencies": {
39
- "@kvman/kvai": "0.1.5",
39
+ "@kvman/kvai": "0.1.6",
40
40
  "@lucide/vue": "1.49.0",
41
41
  "@modelcontextprotocol/sdk": "1.32.1",
42
42
  "cross-spawn": "7.0.6",
@@ -44,9 +44,9 @@
44
44
  "vue": "3.5.43"
45
45
  },
46
46
  "devDependencies": {
47
- "@kvman/kvwebui": "0.1.5",
48
- "@kvman/sdk": "0.1.3",
49
- "@kvman/testkit": "0.1.7",
47
+ "@kvman/kvwebui": "0.1.6",
48
+ "@kvman/sdk": "0.1.4",
49
+ "@kvman/testkit": "0.1.8",
50
50
  "@types/cross-spawn": "6.0.6",
51
51
  "@types/turndown": "5.0.6",
52
52
  "@vitejs/plugin-vue": "6.0.9",