@kvman/kvcoder 0.1.17 → 0.1.19
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/calls/run-tool.d.ts.map +1 -1
- package/dist/calls/run-tool.js +3 -1
- package/dist/calls/run-tool.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 +14 -5
- package/dist/connectors/artifact.js.map +1 -1
- package/dist/connectors/builtin-connectors.d.ts +1 -1
- package/dist/connectors/delegate.d.ts +1 -1
- package/dist/connectors/execution-map.d.ts +1 -1
- package/dist/connectors/execution-map.d.ts.map +1 -1
- package/dist/connectors/execution-map.js +6 -4
- package/dist/connectors/execution-map.js.map +1 -1
- package/dist/delegate/brief.d.ts +1 -1
- package/dist/delegate/brief.js +5 -5
- package/dist/delegate/brief.js.map +1 -1
- package/dist/delegate/workers.js +2 -2
- package/dist/delegate/workers.js.map +1 -1
- package/dist/prompt/working-method.d.ts.map +1 -1
- package/dist/prompt/working-method.js +69 -56
- package/dist/prompt/working-method.js.map +1 -1
- package/dist/turns/quiet-ending.d.ts +6 -0
- package/dist/turns/quiet-ending.d.ts.map +1 -0
- package/dist/turns/quiet-ending.js +14 -0
- package/dist/turns/quiet-ending.js.map +1 -0
- package/dist/turns/step.d.ts.map +1 -1
- package/dist/turns/step.js +4 -1
- package/dist/turns/step.js.map +1 -1
- package/dist/web/components/approval.css +1 -1
- package/dist/web/components/call.css +1 -1
- package/dist/web/components/connectors.css +1 -1
- package/dist/web/components/conversation.css +1 -1
- package/dist/web/components/conversation.js +1273 -1288
- package/dist/web/components/mcp-sign-in.css +1 -1
- package/dist/web/components/model.css +1 -1
- package/dist/web/components/preferences.css +1 -1
- package/dist/web/components/question.css +1 -1
- package/dist/web/components/sessions.css +1 -1
- package/locales/ar.json +2 -2
- package/locales/en.json +2 -2
- package/package.json +1 -1
|
@@ -1,73 +1,86 @@
|
|
|
1
|
-
// How the agent works (plan 08 §8.2; ADR 0022, 2 to 4; ADR 0065; ADR 0072; ADR 0074; ADR 0075; ADR 0078; ADR 0081; ADR 0089; ADR 0103
|
|
2
|
-
// named parts; a worker does the one task it was given and answers the lead alone (ADR 0063).
|
|
3
|
-
// talking as it works (ADR
|
|
4
|
-
|
|
1
|
+
// How the agent works (plan 08 §8.2; ADR 0022, 2 to 4; ADR 0065; ADR 0072; ADR 0074; ADR 0075; ADR 0078; ADR 0081; ADR 0089; ADR 0103; ADR 0111; ADR 0112; ADR 0113; ADR 0114): the lead of a chat
|
|
2
|
+
// chooses its path for each task from the named parts; a worker does the one task it was given and answers the lead alone (ADR 0063). The lead starts
|
|
3
|
+
// with talking as it works (ADR 0112, 1), and both with working in few steps (ADR 0097, 1); both end with keeping going to the end (ADR 0092, 1) and
|
|
4
|
+
// the call-or-final-answer rule. "Decide for me" asks nothing (ADR 0097, 7).
|
|
5
|
+
// What one quick look would answer is looked up, not left open (ADR 0114, 5).
|
|
6
|
+
const evidence = 'Decide from evidence: every decision and every claim rests on something you read, ran, or were told; what one quick look would answer, look up instead of leaving it open.';
|
|
7
|
+
// Text the agent didn't write is copied by a program, since retyping changes it (ADR 0113, 3).
|
|
8
|
+
const copy = "Copy text, data, or code you didn't write (a document's text, a file, output) with a program, never by typing it again: retyping changes it.";
|
|
9
|
+
const readable = 'Write code laid out for the people who will read it: one statement per line, indented, and no packed or minified lines in source you write.';
|
|
10
|
+
const scratch = 'Put scratch output (images, extracted text, logs) in a temporary folder outside the workspace folder, and remove it when done.';
|
|
5
11
|
const simplest = "Use the simplest practical way that follows the project's conventions and sound engineering practice, and don't add what wasn't asked: no extra feature, file, option, or document.";
|
|
6
12
|
const together = "Work in few steps. Each reply is a step, and every step sends the whole conversation again, so make in one reply every call you can make now: reads and searches run at the same time, and calls that change something (shell lines, writes, edits) run one after another in the order you give them. Read a few files with one `fs read-files`, put independent calls (searches, separate files, separate workers) in the same reply, as several run calls or one run with a calls list, and leave for a later reply only a call that needs another call's result. Several new files are several `fs write` calls in one reply, not one reply each.";
|
|
7
|
-
const context = "Spend context with care: every result stays in the conversation and is read again at every step. Search before you read, read only the part of a long file you need, and don't read again a file you already hold: after `fs edit` the result shows the new lines. When you need a background process's result before you can go on, call `background wait` once; don't ask for its output again and again, and a run that ends tells you in a message.
|
|
8
|
-
const artifacts = 'Show the person anything long to read or see (a report, a design, an HTML page) in an artifact, not in a reply.';
|
|
13
|
+
const context = "Spend context with care: every result stays in the conversation and is read again at every step. Search before you read, read only the part of a long file you need, and don't read again a file you already hold: after `fs edit` the result shows the new lines. When you need a background process's result before you can go on, call `background wait` once; don't ask for its output again and again, and a run that ends tells you in a message.";
|
|
14
|
+
const artifacts = 'Show the person anything long to read or see (a report, a design, an HTML page) in an artifact, not in a reply. Show a thing again under its artifact id, never as a second artifact.';
|
|
9
15
|
const asking = 'To put a question to the person (a choice, a yes or no, a free answer), call `ask`.';
|
|
10
|
-
const checked = "Before you say that something runs or works, check it the way the person would: run it
|
|
11
|
-
|
|
16
|
+
const checked = "Before you say that something runs or works, check it the way the person would: run it or request its address; if you couldn't, say what is unchecked. After you start a server, request its address once before you give it to the person. Fix, or explain, every error a page or program reports while you check it, console errors too.";
|
|
17
|
+
// Every reply with a call says something to the person, so the chat reads as a conversation (ADR 0112, 1).
|
|
18
|
+
const narrate = "Talk to the person as you work, the way a colleague does. Every reply that makes a call starts with one short sentence to the person: what you are doing and why, or what you just found and what you do next. Never send a reply that holds only calls. Say it in your own words, and don't repeat what the call's card already shows. Write for a person, not a log: plain everyday words, short sentences, and the point first. Leave out connector and command names, payloads, ids, and long output unless they ask; name a file or a technical term only when it helps them, and explain the term in a few words. Use a short list for several items, and no headings or tables in a short reply. A good reply reads like this: \"The totals are off because two months are missing from the sheet; reading both months' files now.\" with, in that same reply, one `fs read-files` call for the two files.";
|
|
19
|
+
// The result first, for each thing the person asked; the rest only when it matters to them (ADR 0112, 4; ADR 0113, 2).
|
|
20
|
+
const answer = "Your final answer starts with the result, in plain words and as short as the facts allow, and answers each thing the person asked for in this request, a short line each, what is still open included. While helpers still work on the request, end with one line or nothing; when the last of them ends, give that whole answer. Say what you couldn't check, what still runs, or what you noted for later only when it matters for what the person does next.";
|
|
12
21
|
// A task given as a list runs to its end, not in batches the person must push along (ADR 0092, 1).
|
|
13
22
|
const keepGoing = 'Keep going until the work is done. When the task has several items, or the map has steps ready, work through them to the end or until something blocks the work, and report once at the end, not after each batch. Only a finished task, a blocker, or a question that needs an answer ends a turn.';
|
|
14
23
|
const callOrFinalAnswer = 'A reply with no tool call is your final answer and ends the turn: when work remains, your reply must contain the call that does the next piece. A reply that only says what you will do ("now I will write the file") ends the turn with nothing done. Never make a call that does nothing, such as `true`, just to keep going.';
|
|
15
|
-
const
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
const
|
|
19
|
-
const clarifyDeciding = "Clarify.
|
|
24
|
+
const path = 'Choose the path from the task. A question gets an answer from what you read, and no change. A small, clear change is done and checked, and nothing more. An unclear request gets its questions answered before any work. Work that changes several parts that depend on each other, or that is hard to take back, gets a map the person agreed to; other work, even of a few steps, gets none: do it, and say where you are as you go. A bug fix, a change to one or two files, or a fix the person described never gets a map. A task that turns out larger than it looked gets its map then. Work too large for one pass is no reason to stop or to say you can\'t: split it into parts, for workers at once or one after another. Use only the parts below that your path needs.';
|
|
25
|
+
const understand = "Understand. Read everything the person sent, attached images and files too, then look at what the request touches: the files, config, tests, and data, the project's rules, and what already does part of it, so you build on it and not beside it. Work out what they need, not only what they typed: the outcome they want, what done looks like to them, what must keep working (other callers, stored data, settings, users), whether the means they named (a format, a library, a design) serves their goal, and what they didn't say that changes the result (who uses it, how much data or load, which platforms and languages, privacy and security). Never assume or invent names, paths, APIs, or behavior: read a guide, or the current documentation of a library or service, through a connector that reaches it rather than from memory, and when you can't find a fact, say so or ask.";
|
|
26
|
+
// The person's go-ahead is never asked for again (ADR 0112, 3).
|
|
27
|
+
const clarifyAsking = "Clarify. A fact that looking would answer: look, don't ask. An ordinary detail that is easy to change: decide it yourself, and say what you chose. A decision only the person can make, or a gap that changes the result, the design, or stored data, such as a request that is unclear, contradicts itself or the code, or would break what exists: ask before any work. When the means they asked for works against their goal, or a clearly better way exists, say so and offer both before you build theirs. Look first, then ask everything in one round: every question in the same reply, one `ask` call each, never one question per reply, and `ask choice` whenever you offer options, your recommended one first and each option saying what it leads to. The person's go-ahead (\"do it\", \"yes\", or the option that starts, chosen after you said what you would do) answers what it covers: never ask it again.";
|
|
28
|
+
const clarifyDeciding = "Clarify. A fact that looking would answer: look, don't guess. Anything else, decide yourself, since the person asked you to decide: choose what you would recommend, and say in a line what you chose and why. Put no question to the person in a reply either: decide, say what you chose, and go on. When the means they asked for works against their goal, or a clearly better way exists, say so in a line and take the way you would recommend.";
|
|
20
29
|
// Deliberating is chosen apart from the map, and names no worker, since the person may turn the council off (ADR 0103, 6).
|
|
21
|
-
const deliberate = "Deliberate. Only when the person asks for the approaches to be debated
|
|
22
|
-
const
|
|
23
|
-
const
|
|
24
|
-
const
|
|
25
|
-
const
|
|
26
|
-
const
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
30
|
+
const deliberate = "Deliberate. Only when the person asks for the approaches to be debated: once you understood the request and have the person's answers, and before any map or change, hand it in one `delegate run` to the worker of the `delegate` connector that debates approaches, when its entry lists one, briefed with the goal, what done looks like, the facts and paths you found, the constraints, and the person's answers. Check its final answer against what you read, then build on it: the map's steps and details when your path has a map, or the work itself when it doesn't. Deliberating and mapping are separate choices, and deliberate once per request, not per step.";
|
|
31
|
+
const mapStart = "Map. Only when your path needs one, after you understood the request, looked at what exists, and have your answers, and before you change anything: never in your first reply, because a map made before you looked is a guess. The map is the implementation plan the person reads and agrees to, so make it detailed, not an outline; the `execution-map` entry below says how to set it with its steps' details in one call, and keep it true. Choose for each step whoever does it best and fastest: yourself, with a connector, for an ordinary or small change, or a worker of the `delegate` connector whose description fits when the step needs that skill.";
|
|
32
|
+
const understood = 'say in a few lines what you understood (the goal, what done looks like, what stays as it is, and the choices you made for the person)';
|
|
33
|
+
const agreeAsking = `Once every step has details (its undetailed list is empty), and before you start any step, get the person's agreement. When they already told you to go ahead with what the map does, ${understood} and start. Otherwise call \`ask choice\` with other set to true: its question says those few lines, then asks whether to start, the option that starts first and one that changes the plan; when they ask for changes, set the map again, detail what changed, and ask again. A map set again with a change to what the person gets (the goal, what done looks like, what stays as it is, stored data, or what could go wrong) needs their agreement again; a change inside the plan (who does a step, the order, a step split or retried, or a worker reassigned) or of a step's status needs none: say what changed in one line.`;
|
|
34
|
+
const agreeDeciding = `Once every step of the map has details, ${understood} and start: the person asked you to decide, so don't wait for an answer.`;
|
|
35
|
+
const execute = "Execute. With a map, work through it as its entry says, so it always shows where you are: take the steps it returns as ready, mark each doing in the reply that makes its first call, never spend a reply only on `execution-map update` but send it in the reply that makes the next piece of work's calls, hand a step whose uses names a worker to that worker with `delegate run` and check its answer, and mark the step done with your evidence as soon as its check passed. For each step, or with no map for all of what was asked, make the smallest change that does it, check it, and fix a failure at its cause. A step is not done because you wrote it.";
|
|
36
|
+
const stayOnTask = 'Stay on the task. Do what was asked and nothing else. When you notice a problem the task does not need (a bug somewhere else, a refactor, an improvement), do not look into it: record it with `execution-map note`, or keep it for your final answer when there is no map, and go on.';
|
|
37
|
+
const delegate = "Delegate. A run is one deliverable of one kind: find (locate or explain), change (one change in the files it names), check (run commands or tests and diagnose), or review (review a finished change). Delegate find, check, and review runs, and change runs only when two or more run at once on files that don't overlap; never a question, a small change, work you already hold the context for, or work the person asked you to do. Ask for one review of a piece of work, not several. A task with several parts is several runs, and several `delegate run` calls in one reply run in parallel. Write the brief in plain full sentences: goal is one sentence of what the run delivers, done one condition anyone can check, and context the line ranges the worker needs, whose text kvcoder attaches, so it reads nothing again that you hold. A worker sees only its brief and the rule files, so the brief carries, in the person's words, what they asked that applies to the run, and a designer's brief gives the running app's address. Every run goes on in the background: after starting workers, go on with what doesn't need them or end your turn, and start what needs a worker's answer once it arrives; their answers come as messages that wake you, and you never wait for a helper with `background wait`. Read what a worker returns and check it before you rely on it: its work is your responsibility. Continue a worker that stopped early with all that is left. When a worker's answer needs nothing from you and changes nothing for the person, reply with nothing. A worker cannot ask the person or write an artifact: its questions, and anything worth showing the person, come back in its answer for you to act on.";
|
|
38
|
+
const show = 'Show what the person will look at. When the task includes a screen, a page, a layout, or a style, show it in an artifact: the design as an HTML page before you build it when the layout is a real choice, and the running app as a url artifact once it runs. Build it in the language and direction of its content (right to left for Arabic), with sizes that are easy to read, text that stands out clearly from its background, and calm colours; every field and every element that shows text the person typed has dir="auto", so Arabic they type reads right to left on any page. Check it as far as your connectors let you before you show it: when the mcp connector gives you a browser, try the page\'s main actions with one `mcp run`. When the person says they will test it themselves, start it, request its address once, give it to them, and stop, with no browser checks.';
|
|
39
|
+
const finish = `Finish. The work is done when it is ready for production: it does what was asked, it handles the errors and edge cases that will happen, it follows the project's conventions, and nothing unfinished or temporary is left behind. Stop what you started in the background and no longer need, and delete the temporary files you or your tools left in the workspace folder, such as logs, snapshots, and scratch files. Leave running what the person will try themselves, such as the app or page you built, with its address in a url artifact when it has one. When you found how this project is built, tested, or run and its AGENTS.md does not say it, add a short Commands section to AGENTS.md with risky set to true: that asks the person, so don't ask them a second time with \`ask\`. It holds only command lines, each with a few words of what it does, at most 15 lines: never notes, designs, or history. ${answer}`;
|
|
40
|
+
const leadMethodOf = (decides) => [
|
|
41
|
+
'How you work. You are the one who decides: connectors and workers are how you act, and the result is yours. No path is fixed: you choose it for each task from what the task is, and you change it when what you find changes it.',
|
|
42
|
+
narrate,
|
|
43
|
+
together,
|
|
44
|
+
path,
|
|
45
|
+
understand,
|
|
46
|
+
decides ? clarifyDeciding : clarifyAsking,
|
|
47
|
+
deliberate,
|
|
48
|
+
`${mapStart} ${decides ? agreeDeciding : agreeAsking}`,
|
|
49
|
+
execute,
|
|
50
|
+
stayOnTask,
|
|
51
|
+
delegate,
|
|
52
|
+
show,
|
|
53
|
+
finish,
|
|
54
|
+
evidence,
|
|
55
|
+
copy,
|
|
56
|
+
simplest,
|
|
57
|
+
readable,
|
|
58
|
+
scratch,
|
|
59
|
+
context,
|
|
60
|
+
artifacts,
|
|
61
|
+
...(decides ? [] : [asking]),
|
|
62
|
+
checked,
|
|
63
|
+
keepGoing,
|
|
64
|
+
callOrFinalAnswer,
|
|
65
|
+
].join('\n');
|
|
56
66
|
const generalSimplest = "Use the simplest way that does what was asked, and don't add what wasn't asked.";
|
|
57
67
|
const generalUnderstand = "How you work. Understand what the person wants: read everything they sent, attached images and files too, and look at what the task touches.";
|
|
58
|
-
const generalAsking = "When something only they can decide is unclear, ask it in one round with `ask`: one question per call, all the calls in the same reply and never one question per reply, and `ask choice` whenever you offer options, your recommended one first. Then do the task with your connectors and workers, check the result
|
|
59
|
-
const generalDeciding = 'When something only they could decide is unclear, decide it yourself, the choice you would recommend, and say in a line what you chose. Then do the task with your connectors and workers, check the result
|
|
60
|
-
const generalLeadMethodOf = (decides) => [`${generalUnderstand} ${decides ? generalDeciding : generalAsking}`,
|
|
68
|
+
const generalAsking = "When something only they can decide is unclear, ask it in one round with `ask`: one question per call, all the calls in the same reply and never one question per reply, and `ask choice` whenever you offer options, your recommended one first. Then do the task with your connectors and workers, and check the result.";
|
|
69
|
+
const generalDeciding = 'When something only they could decide is unclear, decide it yourself, the choice you would recommend, and say in a line what you chose. Then do the task with your connectors and workers, and check the result.';
|
|
70
|
+
const generalLeadMethodOf = (decides) => [`${generalUnderstand} ${decides ? generalDeciding : generalAsking}`, narrate, together, evidence, copy, generalSimplest, scratch, context, artifacts, ...(decides ? [] : [asking]), checked, answer, keepGoing, callOrFinalAnswer].join('\n');
|
|
61
71
|
const workerStart = [
|
|
62
72
|
"How you work. Do the task you were given and return the result to the lead agent; don't re-plan it or widen it. You don't talk to the person: the lead does. When you are blocked, stop and return what blocks you as a question for the lead.",
|
|
63
73
|
"1. Understand. Read the task, then the files, config, and tests it touches. Never assume or invent names, paths, APIs, or behavior; when you can't find a fact, say so in your answer.",
|
|
64
74
|
];
|
|
65
|
-
const engineeringDoIt = "2. Do it. Make the smallest change, and propose the smallest design, that does the task; check it
|
|
75
|
+
const engineeringDoIt = "2. Do it. Make the smallest change, and propose the smallest design, that does the task; check it, and fix a failure at its cause. Write each file in its own call, with `fs write`.";
|
|
66
76
|
const generalDoIt = '2. Do it. Do the task with your connectors, check what you found or made, and fix what is wrong.';
|
|
67
|
-
|
|
68
|
-
const
|
|
69
|
-
|
|
70
|
-
const
|
|
77
|
+
// A run ends when it is done, out of steps, or blocked, not after a part (ADR 0113, 1).
|
|
78
|
+
const workerFinish = 'Your run ends only when its done condition is met, your steps run out, or you are blocked: never to report progress or after one part. A large task is no blocker: do it in parts, one after another, in this run.';
|
|
79
|
+
// A report says how much it covered, so a partial check isn't read as a whole one (ADR 0113, 4).
|
|
80
|
+
const workerReturn = '3. Return. Your last reply is the only thing the lead agent reads, so put everything it needs there, under these headings. Result: what you did or found. Evidence: what you ran or read that shows it, with paths and lines; for a check, a review, or a comparison, how much you covered (for example "pages 36–66, 31 of 31") and what you didn\'t, since a claim without that goes under Unchecked. Files changed: each path and what changed, or none. Unchecked: what you could not verify or left undone. Questions: what the lead must decide or ask the person, or none. Keep it as short as the facts allow.';
|
|
81
|
+
const workerMethodOf = (doIt, craft) => [workerStart[0], together, workerStart[1], doIt, workerFinish, workerReturn, evidence, copy, ...craft, scratch, context, checked, keepGoing, callOrFinalAnswer].join('\n');
|
|
82
|
+
const workerMethod = workerMethodOf(engineeringDoIt, [simplest, readable]);
|
|
83
|
+
const generalWorkerMethod = workerMethodOf(generalDoIt, [generalSimplest]);
|
|
71
84
|
/** The first line of the prompt: who the agent is, and where it works; a product's profile names who the agent is instead (ADR 0082, 11). */
|
|
72
85
|
export function identityLine(role, place, identity) {
|
|
73
86
|
if (identity !== undefined)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"working-method.js","sourceRoot":"","sources":["../../src/prompt/working-method.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"working-method.js","sourceRoot":"","sources":["../../src/prompt/working-method.ts"],"names":[],"mappings":"AAAA,mMAAmM;AACnM,sJAAsJ;AACtJ,qJAAqJ;AACrJ,6EAA6E;AAQ7E,8EAA8E;AAC9E,MAAM,QAAQ,GAAG,4KAA4K,CAAC;AAC9L,+FAA+F;AAC/F,MAAM,IAAI,GAAG,8IAA8I,CAAC;AAC5J,MAAM,QAAQ,GAAG,6IAA6I,CAAC;AAC/J,MAAM,OAAO,GAAG,gIAAgI,CAAC;AACjJ,MAAM,QAAQ,GAAG,qLAAqL,CAAC;AACvM,MAAM,QAAQ,GACZ,snBAAsnB,CAAC;AACznB,MAAM,OAAO,GAAG,ybAAyb,CAAC;AAC1c,MAAM,SAAS,GAAG,uLAAuL,CAAC;AAC1M,MAAM,MAAM,GAAG,qFAAqF,CAAC;AACrG,MAAM,OAAO,GAAG,4UAA4U,CAAC;AAC7V,2GAA2G;AAC3G,MAAM,OAAO,GACX,m3BAAm3B,CAAC;AACt3B,uHAAuH;AACvH,MAAM,MAAM,GACV,icAAic,CAAC;AACpc,mGAAmG;AACnG,MAAM,SAAS,GACb,qSAAqS,CAAC;AACxS,MAAM,iBAAiB,GACrB,iUAAiU,CAAC;AAEpU,MAAM,IAAI,GACR,qvBAAqvB,CAAC;AACxvB,MAAM,UAAU,GACd,u2BAAu2B,CAAC;AAC12B,gEAAgE;AAChE,MAAM,aAAa,GACjB,i4BAAi4B,CAAC;AACp4B,MAAM,eAAe,GACnB,ubAAub,CAAC;AAC1b,2HAA2H;AAC3H,MAAM,UAAU,GACd,gpBAAgpB,CAAC;AACnpB,MAAM,QAAQ,GACZ,soBAAsoB,CAAC;AACzoB,MAAM,UAAU,GAAG,uIAAuI,CAAC;AAC3J,MAAM,WAAW,GACf,yLAAyL,UAAU,qmBAAqmB,CAAC;AAC3yB,MAAM,aAAa,GAAG,2CAA2C,UAAU,0EAA0E,CAAC;AACtJ,MAAM,OAAO,GACX,uoBAAuoB,CAAC;AAC1oB,MAAM,UAAU,GACd,wRAAwR,CAAC;AAC3R,MAAM,QAAQ,GACZ,gqDAAgqD,CAAC;AACnqD,MAAM,IAAI,GACR,k2BAAk2B,CAAC;AACr2B,MAAM,MAAM,GACV,i4BAAi4B,MAAM,EAAE,CAAC;AAE54B,MAAM,YAAY,GAAG,CAAC,OAAgB,EAAU,EAAE,CAChD;IACE,mOAAmO;IACnO,OAAO;IACP,QAAQ;IACR,IAAI;IACJ,UAAU;IACV,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,aAAa;IACzC,UAAU;IACV,GAAG,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,EAAE;IACtD,OAAO;IACP,UAAU;IACV,QAAQ;IACR,IAAI;IACJ,MAAM;IACN,QAAQ;IACR,IAAI;IACJ,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,OAAO;IACP,SAAS;IACT,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC5B,OAAO;IACP,SAAS;IACT,iBAAiB;CAClB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEf,MAAM,eAAe,GAAG,iFAAiF,CAAC;AAE1G,MAAM,iBAAiB,GAAG,8IAA8I,CAAC;AACzK,MAAM,aAAa,GAAG,4TAA4T,CAAC;AACnV,MAAM,eAAe,GAAG,kNAAkN,CAAC;AAE3O,MAAM,mBAAmB,GAAG,CAAC,OAAgB,EAAU,EAAE,CACvD,CAAC,GAAG,iBAAiB,IAAI,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEjP,MAAM,WAAW,GAA8B;IAC7C,gPAAgP;IAChP,wLAAwL;CACzL,CAAC;AACF,MAAM,eAAe,GAAG,sLAAsL,CAAC;AAC/M,MAAM,WAAW,GAAG,kGAAkG,CAAC;AACvH,wFAAwF;AACxF,MAAM,YAAY,GAAG,oNAAoN,CAAC;AAC1O,iGAAiG;AACjG,MAAM,YAAY,GAChB,wlBAAwlB,CAAC;AAE3lB,MAAM,cAAc,GAAG,CAAC,IAAY,EAAE,KAAwB,EAAU,EAAE,CACxE,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC7K,MAAM,YAAY,GAAG,cAAc,CAAC,eAAe,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;AAC3E,MAAM,mBAAmB,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;AAE3E,6IAA6I;AAC7I,MAAM,UAAU,YAAY,CAAC,IAAU,EAAE,KAAa,EAAE,QAAiB;IACvE,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,QAAQ,aAAa,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,QAAQ,yDAAyD,KAAK,GAAG,CAAC;IACrK,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,uLAAuL,KAAK,GAAG,CAAC;IAC5N,OAAO,0EAA0E,KAAK,mDAAmD,CAAC;AAC5I,CAAC;AAED,8HAA8H;AAC9H,MAAM,UAAU,aAAa,CAAC,IAAU,EAAE,SAAiB,aAAa,EAAE,OAAO,GAAG,KAAK;IACvF,IAAI,MAAM,KAAK,aAAa;QAAE,OAAO,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;IAC5F,OAAO,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC;AAC9E,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { Stored } from '@kvman/sdk';
|
|
2
|
+
import type { SessionDoc } from '../schemas/records.ts';
|
|
3
|
+
import type { TxRecords } from '../store/collections.ts';
|
|
4
|
+
/** Whether an empty reply in this turn ends it as done, with no hint. */
|
|
5
|
+
export declare function quietEnding(store: TxRecords, session: Stored<SessionDoc>, turnId: string): boolean;
|
|
6
|
+
//# sourceMappingURL=quiet-ending.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quiet-ending.d.ts","sourceRoot":"","sources":["../../src/turns/quiet-ending.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAQzD,yEAAyE;AACzE,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAMlG"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// A chat's lead may answer a background result that needs nothing with an empty reply (plan 08 §8.2, ADR 0113, 1): it
|
|
2
|
+
// ends the turn quietly when nothing since the chat's last reply came from the person. A helper's empty reply is never
|
|
3
|
+
// quiet, since its last reply is its answer, and a turn the person spoke in keeps ADR 0054's hint.
|
|
4
|
+
const scanned = 1000;
|
|
5
|
+
/** Whether an empty reply in this turn ends it as done, with no hint. */
|
|
6
|
+
export function quietEnding(store, session, turnId) {
|
|
7
|
+
if (session.parentId !== null)
|
|
8
|
+
return false;
|
|
9
|
+
const replies = store.messages.find({ sessionId: session.id, kind: 'assistant' }, { limit: scanned, order: 'desc' });
|
|
10
|
+
const before = replies.find((reply) => reply.turnId !== turnId)?.seq ?? -1;
|
|
11
|
+
const received = store.messages.find({ sessionId: session.id, kind: 'user' }, { limit: scanned, order: 'desc' }).filter((message) => message.seq > before);
|
|
12
|
+
return received.length > 0 && received.every((message) => message.source !== null && message.source.kind !== 'user');
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=quiet-ending.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quiet-ending.js","sourceRoot":"","sources":["../../src/turns/quiet-ending.ts"],"names":[],"mappings":"AAIA,sHAAsH;AACtH,uHAAuH;AACvH,mGAAmG;AAEnG,MAAM,OAAO,GAAG,IAAI,CAAC;AAErB,yEAAyE;AACzE,MAAM,UAAU,WAAW,CAAC,KAAgB,EAAE,OAA2B,EAAE,MAAc;IACvF,IAAI,OAAO,CAAC,QAAQ,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC5C,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IACrH,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;IAC3E,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC;IAC3J,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;AACvH,CAAC"}
|
package/dist/turns/step.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step.d.ts","sourceRoot":"","sources":["../../src/turns/step.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,GAAG,EAAe,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"step.d.ts","sourceRoot":"","sources":["../../src/turns/step.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,GAAG,EAAe,MAAM,YAAY,CAAC;AAsCpE,8DAA8D;AAC9D,eAAO,MAAM,WAAW;;;CAAuC,CAAC;AAgNhE,wBAAgB,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAS3C"}
|
package/dist/turns/step.js
CHANGED
|
@@ -17,6 +17,7 @@ import { appendMessage, appendNotice, appendQueued, userContent } from "./histor
|
|
|
17
17
|
import { levelFor } from "./model-info.js";
|
|
18
18
|
import { incompleteHint, incompleteReply, incompleteRetries, lostHint, lostRetries, lostTokens, repairedCalls } from "./lost-reply.js";
|
|
19
19
|
import { modelMessages, sentHistory } from "./model-context.js";
|
|
20
|
+
import { quietEnding } from "./quiet-ending.js";
|
|
20
21
|
import { completeWithRetries, transient } from "./model-retry.js";
|
|
21
22
|
import { triesUsed, waitForConnection } from "./connection-wait.js";
|
|
22
23
|
import { evaluateCalls, runApproved, runDeferred } from "./run-calls.js";
|
|
@@ -184,13 +185,15 @@ function failureDetails(error) {
|
|
|
184
185
|
return parsed.success ? parsed.data : {};
|
|
185
186
|
}
|
|
186
187
|
// Inbox/lost-reply decision and settlement/end/successor now share one canonical transaction.
|
|
187
|
-
async function finishWithoutCalls(ctx, lease, maxSteps, lost,
|
|
188
|
+
async function finishWithoutCalls(ctx, lease, maxSteps, lost, replied) {
|
|
188
189
|
const next = await ctx.store.transaction((tx) => {
|
|
189
190
|
ctx.job.signal.throwIfAborted();
|
|
190
191
|
const store = txRecords(tx);
|
|
191
192
|
const live = liveStep(store, lease, lease.jobId);
|
|
192
193
|
if (live === undefined)
|
|
193
194
|
return undefined;
|
|
195
|
+
// An empty reply to background results alone ends the turn quietly (ADR 0113, 1).
|
|
196
|
+
const incomplete = replied === 'empty' && quietEnding(store, live.session, lease.turnId) ? undefined : replied;
|
|
194
197
|
if (lost !== undefined && live.turn.lost >= lostRetries) {
|
|
195
198
|
const ended = endTurnState(store, lease.sessionId, lease.turnId, 'failed', 'step', { code: 'REPLY_LOST', params: { tokens: lost } }, lease);
|
|
196
199
|
return ended === undefined ? undefined : { kind: 'end', ended };
|
package/dist/turns/step.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step.js","sourceRoot":"","sources":["../../src/turns/step.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"step.js","sourceRoot":"","sources":["../../src/turns/step.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
.kvc-header .kvc-title strong,.kvc-session .kvc-session-title{text-align:match-parent}.kvc-jobs .kvc-jobs-icon,.kvc-jobs .kvc-jobs-count{display:none}@container kvc-workspace (inline-size<=30rem){.kvc-workspace .kvc-header{flex-wrap:nowrap}.kvc-workspace .kvc-title{flex-flow:column;flex:1 1 0;align-items:stretch}.kvc-workspace .kvc-header{gap:4px}.kvc-workspace .kvc-chats-bar>.kvc-button,.kvc-workspace .kvc-header>.kvc-button,.kvc-workspace .kvc-jobs>.kvc-button,.kvc-workspace .kvc-header [data-test=chat-menu]{padding-inline:8px}.kvc-jobs .kvc-jobs-words,.kvc-jobs .kvc-jobs-chevron{display:none}.kvc-jobs .kvc-jobs-icon,.kvc-jobs .kvc-jobs-count{display:inline-block}.kvc-workspace .kvc-start h1{font-size:20px}.kvc-artifact-panel .kvc-artifact-head{flex-wrap:wrap;row-gap:8px}.kvc-artifact-panel .kvc-artifact-name{flex:1 0 100%}.kvc-artifact-panel .kvc-artifact-body{overflow-wrap:anywhere}}.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-topline{align-items:stretch;display:flex}.kvc-topline>.kvc-header{background:var(--kv-color-surface);min-inline-size:0;color:var(--kv-color-text);flex:auto}.kvc-new-chat{display:none}.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-confirm{justify-content:space-between;align-items:center;gap:var(--kv-space-sm);padding-block:var(--kv-space-sm);padding-inline:var(--kv-space-lg);border-block-end:1px solid var(--kv-color-border);flex-wrap:wrap;display:flex}.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-popover-start{inset-inline:auto 0}.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-headline>summary{cursor:pointer;padding-block:2px;font-weight:600;list-style-position:inside}.kvc-headline>p{margin-block:4px 0}.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-topline{background:var(--kv-color-surface);border-block-end:1px solid var(--kv-color-border)}.kvc-chats-bar,.kvc-new-chat{align-items:center;display:flex}.kvc-chats-bar{padding-inline-start:var(--kv-space-sm)}.kvc-new-chat{padding-inline-end:var(--kv-space-sm)}.kvc-topline>.kvc-header{padding-inline:var(--kv-space-sm);border-block-end:0}}:root:has(.kvc-artifact-panel) .kvc-sessions{display:none}:root:has(.kvc-artifact-panel) .kvc-drawer .kvc-sessions{border-inline-end:0;inline-size:100%;display:flex}:root:has(.kvc-artifact-panel) .kvc-topline{background:var(--kv-color-surface);border-block-end:1px solid var(--kv-color-border)}:is(:root:has(.kvc-artifact-panel) .kvc-chats-bar,:root:has(.kvc-artifact-panel) .kvc-new-chat){align-items:center;display:flex}:root:has(.kvc-artifact-panel) .kvc-chats-bar{padding-inline-start:var(--kv-space-sm)}:root:has(.kvc-artifact-panel) .kvc-new-chat{padding-inline-end:var(--kv-space-sm)}:root:has(.kvc-artifact-panel) .kvc-topline>.kvc-header{padding-inline:var(--kv-space-sm);border-block-end:0}.kvc-composer{container:kvc-composer/inline-size}@container kvc-composer (inline-size<=36rem){.kvc-composer-row .kvc-picker-icon{display:block}.kvc-composer-row .kvc-picker-label,.kvc-composer-row .kvc-picker-chevron{display:none}.kvc-composer-hint{visibility:hidden}}.kvc-segments{gap:4px;display:flex}.kvc-segments>.kvc-button[aria-pressed=true]{background:var(--kv-color-primary);color:var(--kv-color-on-primary);border-color:var(--kv-color-primary)}.kvc-choice-note{font-size:12px}.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)}@container kvc-workspace (inline-size<=30rem){.kvc-composer-row{flex-wrap:wrap;gap:4px}.kvc-composer-row .kvc-picker{flex:none}.kvc-composer-row .kvc-button{min-block-size:32px;padding-inline:8px}.kvc-composer-row .kvc-picker-chevron{display:none}.kvc-composer-hint{visibility:hidden}.kvc-composer{padding-block:8px 10px;padding-inline:var(--kv-space-md)}.kvc-box{border-radius:12px;padding:8px}}.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-header .kvc-title strong,.kvc-session .kvc-session-title{text-align:match-parent}.kvc-jobs .kvc-jobs-icon,.kvc-jobs .kvc-jobs-count{display:none}@container kvc-workspace (inline-size<=30rem){.kvc-workspace .kvc-header{flex-wrap:nowrap}.kvc-workspace .kvc-title{flex-flow:column;flex:1 1 0;align-items:stretch}.kvc-workspace .kvc-header{gap:4px}.kvc-workspace .kvc-chats-bar>.kvc-button,.kvc-workspace .kvc-header>.kvc-button,.kvc-workspace .kvc-jobs>.kvc-button,.kvc-workspace .kvc-header [data-test=chat-menu]{padding-inline:8px}.kvc-jobs .kvc-jobs-words,.kvc-jobs .kvc-jobs-chevron{display:none}.kvc-jobs .kvc-jobs-icon,.kvc-jobs .kvc-jobs-count{display:inline-block}.kvc-workspace .kvc-start h1{font-size:20px}.kvc-artifact-panel .kvc-artifact-head{flex-wrap:wrap;row-gap:8px}.kvc-artifact-panel .kvc-artifact-name{flex:1 0 100%}.kvc-artifact-panel .kvc-artifact-body{overflow-wrap:anywhere}}.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-topline{align-items:stretch;display:flex}.kvc-topline>.kvc-header{background:var(--kv-color-surface);min-inline-size:0;color:var(--kv-color-text);flex:auto}.kvc-new-chat{display:none}.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-confirm{justify-content:space-between;align-items:center;gap:var(--kv-space-sm);padding-block:var(--kv-space-sm);padding-inline:var(--kv-space-lg);border-block-end:1px solid var(--kv-color-border);flex-wrap:wrap;display:flex}.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-background-line>summary{cursor:pointer;align-items:center;gap:6px;min-inline-size:0;padding-block:2px;list-style:none;display:flex}.kvc-background-line>summary::-webkit-details-marker{display:none}.kvc-background-line>summary>svg{flex:none}.kvc-background-line .kvc-background-ok{color:var(--kv-color-success)}.kvc-background-line .kvc-background-failed{color:var(--kv-color-danger)}.kvc-background-line>.kvc-output{border-radius:6px;margin-block-start:4px}.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-popover-start{inset-inline:auto 0}.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-topline{background:var(--kv-color-surface);border-block-end:1px solid var(--kv-color-border)}.kvc-chats-bar,.kvc-new-chat{align-items:center;display:flex}.kvc-chats-bar{padding-inline-start:var(--kv-space-sm)}.kvc-new-chat{padding-inline-end:var(--kv-space-sm)}.kvc-topline>.kvc-header{padding-inline:var(--kv-space-sm);border-block-end:0}}:root:has(.kvc-artifact-panel) .kvc-sessions{display:none}:root:has(.kvc-artifact-panel) .kvc-drawer .kvc-sessions{border-inline-end:0;inline-size:100%;display:flex}:root:has(.kvc-artifact-panel) .kvc-topline{background:var(--kv-color-surface);border-block-end:1px solid var(--kv-color-border)}:is(:root:has(.kvc-artifact-panel) .kvc-chats-bar,:root:has(.kvc-artifact-panel) .kvc-new-chat){align-items:center;display:flex}:root:has(.kvc-artifact-panel) .kvc-chats-bar{padding-inline-start:var(--kv-space-sm)}:root:has(.kvc-artifact-panel) .kvc-new-chat{padding-inline-end:var(--kv-space-sm)}:root:has(.kvc-artifact-panel) .kvc-topline>.kvc-header{padding-inline:var(--kv-space-sm);border-block-end:0}.kvc-composer{container:kvc-composer/inline-size}@container kvc-composer (inline-size<=36rem){.kvc-composer-row .kvc-picker-icon{display:block}.kvc-composer-row .kvc-picker-label,.kvc-composer-row .kvc-picker-chevron{display:none}.kvc-composer-hint{visibility:hidden}}.kvc-segments{gap:4px;display:flex}.kvc-segments>.kvc-button[aria-pressed=true]{background:var(--kv-color-primary);color:var(--kv-color-on-primary);border-color:var(--kv-color-primary)}.kvc-choice-note{font-size:12px}.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)}@container kvc-workspace (inline-size<=30rem){.kvc-composer-row{flex-wrap:wrap;gap:4px}.kvc-composer-row .kvc-picker{flex:none}.kvc-composer-row .kvc-button{min-block-size:32px;padding-inline:8px}.kvc-composer-row .kvc-picker-chevron{display:none}.kvc-composer-hint{visibility:hidden}.kvc-composer{padding-block:8px 10px;padding-inline:var(--kv-space-md)}.kvc-box{border-radius:12px;padding:8px}}.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*/
|