agents-inc 0.164.0 → 0.166.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +63 -0
- package/README.md +8 -9
- package/dist/{chunk-X4SSJZLY.js → chunk-25MPBIK3.js} +12 -261
- package/dist/chunk-25MPBIK3.js.map +1 -0
- package/dist/{chunk-LT5GXEB2.js → chunk-2VUYFTUB.js} +8 -7
- package/dist/chunk-2VUYFTUB.js.map +1 -0
- package/dist/chunk-4AAOOAIN.js +49 -0
- package/dist/chunk-4AAOOAIN.js.map +1 -0
- package/dist/{chunk-ARYNOWKF.js → chunk-4NDBUJHK.js} +8 -8
- package/dist/{chunk-S63LXWMC.js → chunk-6L75SQZU.js} +2 -2
- package/dist/{chunk-7REKOTKG.js → chunk-6LF4CQBY.js} +3 -3
- package/dist/{chunk-K5ITEA3I.js → chunk-7JNJ52CD.js} +34 -17
- package/dist/chunk-7JNJ52CD.js.map +1 -0
- package/dist/{chunk-XPDVAJDH.js → chunk-A4KDXNOT.js} +3519 -1568
- package/dist/chunk-A4KDXNOT.js.map +1 -0
- package/dist/{chunk-XHPWTL4I.js → chunk-DAIEQJIF.js} +3 -3
- package/dist/{chunk-UITEKY2R.js → chunk-ENGYJCTF.js} +28 -4
- package/dist/chunk-ENGYJCTF.js.map +1 -0
- package/dist/{chunk-G2JJ5BO5.js → chunk-G4JK7WVO.js} +336 -140
- package/dist/chunk-G4JK7WVO.js.map +1 -0
- package/dist/{chunk-X37UYIE3.js → chunk-G6UREQ4V.js} +436 -739
- package/dist/chunk-G6UREQ4V.js.map +1 -0
- package/dist/chunk-GE3WKJ6Q.js +375 -0
- package/dist/chunk-GE3WKJ6Q.js.map +1 -0
- package/dist/{chunk-RGYDFBCT.js → chunk-HHIYT3PI.js} +5 -5
- package/dist/{chunk-2CQNPLVF.js → chunk-HWEKHVLE.js} +63 -42
- package/dist/chunk-HWEKHVLE.js.map +1 -0
- package/dist/{chunk-XVAQG2CV.js → chunk-JOEA52NR.js} +10 -8
- package/dist/chunk-JOEA52NR.js.map +1 -0
- package/dist/{chunk-3WVH2CTK.js → chunk-JQRJQ4SS.js} +15 -8
- package/dist/chunk-JQRJQ4SS.js.map +1 -0
- package/dist/{chunk-DSL66I4N.js → chunk-LFWLEDUG.js} +6 -6
- package/dist/{chunk-B3Y3QMWI.js → chunk-MAWNVT2C.js} +4 -4
- package/dist/{chunk-Q4IRRVXK.js → chunk-MPTNC32T.js} +3 -3
- package/dist/chunk-NBXXFIIW.js +73 -0
- package/dist/chunk-NBXXFIIW.js.map +1 -0
- package/dist/{chunk-B6FSLXYN.js → chunk-PMJWD27C.js} +3 -3
- package/dist/{chunk-XATLUKXK.js → chunk-PNB3524H.js} +6 -6
- package/dist/chunk-PXWG7KFO.js +39 -0
- package/dist/chunk-PXWG7KFO.js.map +1 -0
- package/dist/{chunk-4VL3CEOS.js → chunk-QHDPLLK6.js} +3 -3
- package/dist/{chunk-AOTCIUGX.js → chunk-RAHSOJQ2.js} +2 -2
- package/dist/{chunk-PHCPUQVR.js → chunk-RZDXDMT6.js} +2 -2
- package/dist/{chunk-6MV4JOCL.js → chunk-SAYZWCH6.js} +2 -2
- package/dist/{chunk-URXIQE7I.js → chunk-SCOQ34YM.js} +2 -2
- package/dist/{chunk-NQXO4LR3.js → chunk-SXVHSOTH.js} +16 -11
- package/dist/chunk-SXVHSOTH.js.map +1 -0
- package/dist/{chunk-QZX7SYKU.js → chunk-T6UWJAB3.js} +2 -2
- package/dist/{chunk-ZVXGW2IC.js → chunk-TODCQFRB.js} +4 -6
- package/dist/chunk-TODCQFRB.js.map +1 -0
- package/dist/{chunk-YRS3QZP2.js → chunk-TTY6DPJN.js} +3 -3
- package/dist/{chunk-QGUP3QJF.js → chunk-TZ2YJJKK.js} +22 -18
- package/dist/{chunk-QGUP3QJF.js.map → chunk-TZ2YJJKK.js.map} +1 -1
- package/dist/chunk-V3I7VQ7N.js +356 -0
- package/dist/chunk-V3I7VQ7N.js.map +1 -0
- package/dist/{chunk-AVK2HEKB.js → chunk-V5WXIM2F.js} +2 -6
- package/dist/{chunk-AVK2HEKB.js.map → chunk-V5WXIM2F.js.map} +1 -1
- package/dist/{chunk-NKGYKOB7.js → chunk-VAPTVR3J.js} +7 -8
- package/dist/chunk-VAPTVR3J.js.map +1 -0
- package/dist/chunk-VRXX4D6K.js +31 -0
- package/dist/chunk-VRXX4D6K.js.map +1 -0
- package/dist/{chunk-ABAZMMG4.js → chunk-WVUDLKIO.js} +2 -2
- package/dist/{chunk-ECURHW3T.js → chunk-WWIFNPJG.js} +13 -12
- package/dist/chunk-WWIFNPJG.js.map +1 -0
- package/dist/{chunk-J27W6TXS.js → chunk-XQHZPINL.js} +8 -4
- package/dist/chunk-XQHZPINL.js.map +1 -0
- package/dist/{chunk-V5GLL2JB.js → chunk-XZEVWPX6.js} +7 -7
- package/dist/chunk-Y3VIRVVE.js +932 -0
- package/dist/chunk-Y3VIRVVE.js.map +1 -0
- package/dist/{chunk-NTF4UXGK.js → chunk-Y47EV74W.js} +73 -30
- package/dist/chunk-Y47EV74W.js.map +1 -0
- package/dist/chunk-ZR4YPKXQ.js +159 -0
- package/dist/chunk-ZR4YPKXQ.js.map +1 -0
- package/dist/chunk-ZXKBERQU.js +250 -0
- package/dist/chunk-ZXKBERQU.js.map +1 -0
- package/dist/commands/build/marketplace.js +17 -17
- package/dist/commands/build/marketplace.js.map +1 -1
- package/dist/commands/build/plugins.js +11 -9
- package/dist/commands/build/plugins.js.map +1 -1
- package/dist/commands/compile.js +105 -27
- package/dist/commands/compile.js.map +1 -1
- package/dist/commands/doctor.js +309 -171
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/edit.js +503 -314
- package/dist/commands/edit.js.map +1 -1
- package/dist/commands/eject.js +40 -23
- package/dist/commands/eject.js.map +1 -1
- package/dist/commands/init.js +44 -40
- package/dist/commands/list.js +44 -10
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/new/marketplace.js +13 -10
- package/dist/commands/new/marketplace.js.map +1 -1
- package/dist/commands/search.js +12 -10
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/share.js +102 -15
- package/dist/commands/share.js.map +1 -1
- package/dist/commands/uninstall.js +231 -103
- package/dist/commands/uninstall.js.map +1 -1
- package/dist/commands/update.js +49 -20
- package/dist/commands/update.js.map +1 -1
- package/dist/components/common/prompt-confirm.js +1 -1
- package/dist/components/common/removal-plan-confirm.js +2 -2
- package/dist/components/common/select-list.js +3 -3
- package/dist/components/common/spinner.js +6 -3
- package/dist/components/wizard/category-grid.js +5 -5
- package/dist/components/wizard/checkbox-grid.js +4 -4
- package/dist/components/wizard/domain-selection.js +9 -9
- package/dist/components/wizard/run-wizard-session.js +29 -29
- package/dist/components/wizard/scroll-affordance.js +2 -2
- package/dist/components/wizard/skill-agent-summary.js +5 -5
- package/dist/components/wizard/source-grid.js +6 -6
- package/dist/components/wizard/stack-selection.js +8 -8
- package/dist/components/wizard/step-agents.js +8 -8
- package/dist/components/wizard/step-build.js +8 -8
- package/dist/components/wizard/step-confirm.js +9 -9
- package/dist/components/wizard/step-sources.js +9 -9
- package/dist/components/wizard/step-stack.js +9 -9
- package/dist/components/wizard/summary-panel.js +8 -8
- package/dist/components/wizard/toast.js +2 -2
- package/dist/components/wizard/wizard-layout.js +12 -12
- package/dist/components/wizard/wizard-tabs.js +2 -2
- package/dist/components/wizard/wizard.js +27 -27
- package/dist/hooks/init.js +69 -43
- package/dist/hooks/init.js.map +1 -1
- package/dist/load-agent-defs-3C27ENC7.js +14 -0
- package/dist/recompile-project-agents-DGNBCU3N.js +18 -0
- package/dist/{source-loader-GRBVNRAW.js → source-loader-7KZ3MD5O.js} +6 -4
- package/dist/src/agents/_templates/agent-body.liquid +55 -0
- package/dist/src/agents/_templates/agent.liquid +1 -55
- package/dist/src/agents/meta/agent-summoner/output.md +1 -1
- package/dist/src/agents/meta/agent-summoner/playbook.md +15 -7
- package/dist/stores/wizard-store.js +4 -4
- package/package.json +10 -9
- package/src/agents/_templates/agent-body.liquid +55 -0
- package/src/agents/_templates/agent.liquid +1 -55
- package/src/agents/meta/agent-summoner/output.md +1 -1
- package/src/agents/meta/agent-summoner/playbook.md +15 -7
- package/src/schemas/project-config.schema.json +1 -1
- package/src/schemas/project-source-config.schema.json +1 -1
- package/dist/chunk-2CQNPLVF.js.map +0 -1
- package/dist/chunk-3WVH2CTK.js.map +0 -1
- package/dist/chunk-7ANJQLPJ.js +0 -35
- package/dist/chunk-7ANJQLPJ.js.map +0 -1
- package/dist/chunk-ECURHW3T.js.map +0 -1
- package/dist/chunk-FLW25ORT.js +0 -130
- package/dist/chunk-FLW25ORT.js.map +0 -1
- package/dist/chunk-G2JJ5BO5.js.map +0 -1
- package/dist/chunk-J27W6TXS.js.map +0 -1
- package/dist/chunk-JCPANDNR.js +0 -35
- package/dist/chunk-JCPANDNR.js.map +0 -1
- package/dist/chunk-JIERYE6B.js +0 -480
- package/dist/chunk-JIERYE6B.js.map +0 -1
- package/dist/chunk-JU4ZGJ7A.js +0 -668
- package/dist/chunk-JU4ZGJ7A.js.map +0 -1
- package/dist/chunk-K5ITEA3I.js.map +0 -1
- package/dist/chunk-LT5GXEB2.js.map +0 -1
- package/dist/chunk-NKGYKOB7.js.map +0 -1
- package/dist/chunk-NQXO4LR3.js.map +0 -1
- package/dist/chunk-NTF4UXGK.js.map +0 -1
- package/dist/chunk-UITEKY2R.js.map +0 -1
- package/dist/chunk-X37UYIE3.js.map +0 -1
- package/dist/chunk-X4SSJZLY.js.map +0 -1
- package/dist/chunk-XPDVAJDH.js.map +0 -1
- package/dist/chunk-XVAQG2CV.js.map +0 -1
- package/dist/chunk-ZBPEFQ4G.js +0 -12
- package/dist/chunk-ZBPEFQ4G.js.map +0 -1
- package/dist/chunk-ZVXGW2IC.js.map +0 -1
- package/dist/load-agent-defs-7IM3GBEQ.js +0 -13
- package/dist/recompile-project-agents-VR4NLGOU.js +0 -17
- /package/dist/{chunk-ARYNOWKF.js.map → chunk-4NDBUJHK.js.map} +0 -0
- /package/dist/{chunk-S63LXWMC.js.map → chunk-6L75SQZU.js.map} +0 -0
- /package/dist/{chunk-7REKOTKG.js.map → chunk-6LF4CQBY.js.map} +0 -0
- /package/dist/{chunk-XHPWTL4I.js.map → chunk-DAIEQJIF.js.map} +0 -0
- /package/dist/{chunk-RGYDFBCT.js.map → chunk-HHIYT3PI.js.map} +0 -0
- /package/dist/{chunk-DSL66I4N.js.map → chunk-LFWLEDUG.js.map} +0 -0
- /package/dist/{chunk-B3Y3QMWI.js.map → chunk-MAWNVT2C.js.map} +0 -0
- /package/dist/{chunk-Q4IRRVXK.js.map → chunk-MPTNC32T.js.map} +0 -0
- /package/dist/{chunk-B6FSLXYN.js.map → chunk-PMJWD27C.js.map} +0 -0
- /package/dist/{chunk-XATLUKXK.js.map → chunk-PNB3524H.js.map} +0 -0
- /package/dist/{chunk-4VL3CEOS.js.map → chunk-QHDPLLK6.js.map} +0 -0
- /package/dist/{chunk-AOTCIUGX.js.map → chunk-RAHSOJQ2.js.map} +0 -0
- /package/dist/{chunk-PHCPUQVR.js.map → chunk-RZDXDMT6.js.map} +0 -0
- /package/dist/{chunk-6MV4JOCL.js.map → chunk-SAYZWCH6.js.map} +0 -0
- /package/dist/{chunk-URXIQE7I.js.map → chunk-SCOQ34YM.js.map} +0 -0
- /package/dist/{chunk-QZX7SYKU.js.map → chunk-T6UWJAB3.js.map} +0 -0
- /package/dist/{chunk-YRS3QZP2.js.map → chunk-TTY6DPJN.js.map} +0 -0
- /package/dist/{chunk-ABAZMMG4.js.map → chunk-WVUDLKIO.js.map} +0 -0
- /package/dist/{chunk-V5GLL2JB.js.map → chunk-XZEVWPX6.js.map} +0 -0
- /package/dist/{load-agent-defs-7IM3GBEQ.js.map → load-agent-defs-3C27ENC7.js.map} +0 -0
- /package/dist/{recompile-project-agents-VR4NLGOU.js.map → recompile-project-agents-DGNBCU3N.js.map} +0 -0
- /package/dist/{source-loader-GRBVNRAW.js.map → source-loader-7KZ3MD5O.js.map} +0 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import {
|
|
3
|
+
render
|
|
4
|
+
} from "./chunk-JFLVEFFP.js";
|
|
5
|
+
|
|
6
|
+
// src/cli/components/common/prompt-confirm.tsx
|
|
7
|
+
import "react";
|
|
8
|
+
async function promptValue(build, options) {
|
|
9
|
+
const answer = { settle: () => {
|
|
10
|
+
} };
|
|
11
|
+
const chosen = new Promise((resolve) => {
|
|
12
|
+
answer.settle = resolve;
|
|
13
|
+
});
|
|
14
|
+
const releaseInput = holdInputRaw(process.stdin);
|
|
15
|
+
try {
|
|
16
|
+
const instance = render(build((value2) => answer.settle(value2)));
|
|
17
|
+
instance.waitUntilExit().then(
|
|
18
|
+
() => answer.settle(options.onExit),
|
|
19
|
+
() => answer.settle(options.onExit)
|
|
20
|
+
);
|
|
21
|
+
const value = await chosen;
|
|
22
|
+
if (options.clearOnResolve) instance.clear();
|
|
23
|
+
instance.unmount();
|
|
24
|
+
return value;
|
|
25
|
+
} finally {
|
|
26
|
+
releaseInput();
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
function holdInputRaw(input) {
|
|
30
|
+
if (!input.isTTY) return () => {
|
|
31
|
+
};
|
|
32
|
+
const wasRaw = input.isRaw;
|
|
33
|
+
input.setRawMode(true);
|
|
34
|
+
return () => {
|
|
35
|
+
input.setRawMode(wasRaw);
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
async function promptConfirm(build) {
|
|
39
|
+
return promptValue(
|
|
40
|
+
(resolve) => build({ onConfirm: () => resolve("confirmed"), onCancel: () => resolve("cancelled") }),
|
|
41
|
+
{ onExit: "cancelled" }
|
|
42
|
+
);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export {
|
|
46
|
+
promptValue,
|
|
47
|
+
promptConfirm
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=chunk-4AAOOAIN.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/cli/components/common/prompt-confirm.tsx"],"sourcesContent":["import React from \"react\";\nimport { render } from \"../render.js\";\n\nexport type ConfirmHandlers = {\n onConfirm: () => void;\n onCancel: () => void;\n};\n\nexport type PromptValueOptions<T> = {\n /** Value resolved when the Ink app exits before any callback fires (Ctrl+C / render failure). */\n onExit: T;\n /** Call instance.clear() before unmount — repaints a clean terminal (used by the dashboard). */\n clearOnResolve?: boolean;\n};\n\n/**\n * Renders an Ink prompt and resolves with the value produced by its callbacks.\n * First-wins: the first resolve (a callback or the app-exit fallback) settles the\n * promise; later resolves are ignored. The element is unmounted at the resolution\n * site (optionally cleared first). Callers own exit policy (exit codes, logging).\n *\n * A prompt may resolve before `render()` has handed its instance back: Ink flushes\n * mount effects synchronously, so a component that settles on mount reaches the\n * callback first. The teardown is then run the moment the instance exists — one\n * statement later, on the same tick — so callers that resolve from a keypress see\n * exactly the order they always did.\n *\n * The terminal is raw before the first frame is painted, through {@link holdInputRaw}.\n */\nexport async function promptValue<T>(\n build: (resolve: (value: T) => void) => React.ReactElement,\n options: PromptValueOptions<T>,\n): Promise<T> {\n // The promise's own `resolve`, lifted out so the render can be a plain `const` below\n // rather than a binding the element's callbacks would reach while `render()` is still\n // producing it. The seed is never called: a Promise executor runs synchronously, so the\n // next statement has already replaced it by the time anything can answer.\n const answer: { settle: (value: T) => void } = { settle: () => {} };\n const chosen = new Promise<T>((resolve) => {\n answer.settle = resolve;\n });\n\n const releaseInput = holdInputRaw(process.stdin);\n try {\n const instance = render(build((value) => answer.settle(value)));\n\n // App exit without a callback (e.g. Ctrl+C) or a render failure counts as the\n // fallback; the promise is first-wins, so a prior callback value is unaffected.\n instance.waitUntilExit().then(\n () => answer.settle(options.onExit),\n () => answer.settle(options.onExit),\n );\n\n const value = await chosen;\n\n // Taken down here rather than at each resolve site: it then happens exactly once,\n // whichever of the three endings settled the promise, and always with an instance in\n // hand — including the ending that arrives before `render()` has returned one.\n if (options.clearOnResolve) instance.clear();\n instance.unmount();\n\n return value;\n } finally {\n releaseInput();\n }\n}\n\n/**\n * Puts a terminal's input into raw mode for as long as a prompt is up, and returns what puts it\n * back the way it was. Input that is not a terminal has no mode to set, and is left alone.\n *\n * Ink takes raw mode only from `useInput`'s effect, which runs after the frame it belongs to has\n * been written. A key pressed between the two reaches a terminal still in cooked mode: the kernel\n * echoes an Enter as a line break, which scrolls a full-height frame up by a line that is never\n * repainted, and turns it into `\\n`, which Ink reads as `enter` — and every prompt here waits for\n * `return`. Taken here, before the render, the key is held as typed until Ink starts reading.\n *\n * Ink's own handling is unchanged: `useInput` still sets raw mode and Ink still turns it off at\n * unmount. This closes the gap before the effect, and restores the mode for a prompt that never\n * took input or failed to render, where Ink has nothing to turn off.\n *\n * Prompts only, never every render: raw mode turns Ctrl+C into a byte for whoever reads input,\n * and the spinner reads none, so a load under it could no longer be interrupted.\n */\nfunction holdInputRaw(input: NodeJS.ReadStream): () => void {\n if (!input.isTTY) return () => {};\n const wasRaw = input.isRaw;\n input.setRawMode(true);\n return () => {\n input.setRawMode(wasRaw);\n };\n}\n\n/**\n * Renders a confirm UI and resolves with the user's choice. The element is\n * unmounted as soon as either handler fires; a clean exit or render failure\n * without a choice resolves as \"cancelled\". Callers own exit policy.\n */\nexport async function promptConfirm(\n build: (handlers: ConfirmHandlers) => React.ReactElement,\n): Promise<\"confirmed\" | \"cancelled\"> {\n return promptValue<\"confirmed\" | \"cancelled\">(\n (resolve) =>\n build({ onConfirm: () => resolve(\"confirmed\"), onCancel: () => resolve(\"cancelled\") }),\n { onExit: \"cancelled\" },\n );\n}\n"],"mappings":";;;;;;AAAA,OAAkB;AA6BlB,eAAsB,YACpB,OACA,SACY;AAKZ,QAAM,SAAyC,EAAE,QAAQ,MAAM;AAAA,EAAC,EAAE;AAClE,QAAM,SAAS,IAAI,QAAW,CAAC,YAAY;AACzC,WAAO,SAAS;AAAA,EAClB,CAAC;AAED,QAAM,eAAe,aAAa,QAAQ,KAAK;AAC/C,MAAI;AACF,UAAM,WAAW,OAAO,MAAM,CAACA,WAAU,OAAO,OAAOA,MAAK,CAAC,CAAC;AAI9D,aAAS,cAAc,EAAE;AAAA,MACvB,MAAM,OAAO,OAAO,QAAQ,MAAM;AAAA,MAClC,MAAM,OAAO,OAAO,QAAQ,MAAM;AAAA,IACpC;AAEA,UAAM,QAAQ,MAAM;AAKpB,QAAI,QAAQ,eAAgB,UAAS,MAAM;AAC3C,aAAS,QAAQ;AAEjB,WAAO;AAAA,EACT,UAAE;AACA,iBAAa;AAAA,EACf;AACF;AAmBA,SAAS,aAAa,OAAsC;AAC1D,MAAI,CAAC,MAAM,MAAO,QAAO,MAAM;AAAA,EAAC;AAChC,QAAM,SAAS,MAAM;AACrB,QAAM,WAAW,IAAI;AACrB,SAAO,MAAM;AACX,UAAM,WAAW,MAAM;AAAA,EACzB;AACF;AAOA,eAAsB,cACpB,OACoC;AACpC,SAAO;AAAA,IACL,CAAC,YACC,MAAM,EAAE,WAAW,MAAM,QAAQ,WAAW,GAAG,UAAU,MAAM,QAAQ,WAAW,EAAE,CAAC;AAAA,IACvF,EAAE,QAAQ,YAAY;AAAA,EACxB;AACF;","names":["value"]}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
SummaryPanel
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-2VUYFTUB.js";
|
|
5
5
|
import {
|
|
6
6
|
Toast
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-T6UWJAB3.js";
|
|
8
8
|
import {
|
|
9
9
|
WizardTabs,
|
|
10
10
|
wizardTabsFor
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-6L75SQZU.js";
|
|
12
12
|
import {
|
|
13
13
|
getDomainDisplayName,
|
|
14
14
|
getStackName
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-QHDPLLK6.js";
|
|
16
16
|
import {
|
|
17
17
|
HOTKEY_INFO,
|
|
18
18
|
HOTKEY_SCOPE,
|
|
@@ -25,17 +25,17 @@ import {
|
|
|
25
25
|
import {
|
|
26
26
|
getActiveStepFlow,
|
|
27
27
|
useWizardStore
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-7JNJ52CD.js";
|
|
29
29
|
import {
|
|
30
30
|
formatTerminalTooSmallMessage,
|
|
31
31
|
isTerminalLargeEnough
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-RZDXDMT6.js";
|
|
33
33
|
import {
|
|
34
34
|
CLI_COLORS,
|
|
35
35
|
FALLBACK_DOMAIN,
|
|
36
36
|
LOGO_MIN_TERMINAL_ROWS,
|
|
37
37
|
orderDomains
|
|
38
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-ENGYJCTF.js";
|
|
39
39
|
|
|
40
40
|
// src/cli/components/wizard/wizard-layout.tsx
|
|
41
41
|
import { Box, Text } from "ink";
|
|
@@ -234,4 +234,4 @@ export {
|
|
|
234
234
|
useTerminalDimensions,
|
|
235
235
|
WizardLayout
|
|
236
236
|
};
|
|
237
|
-
//# sourceMappingURL=chunk-
|
|
237
|
+
//# sourceMappingURL=chunk-4NDBUJHK.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
CLI_COLORS
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-ENGYJCTF.js";
|
|
5
5
|
|
|
6
6
|
// src/cli/components/wizard/wizard-tabs.tsx
|
|
7
7
|
import { Box, Text } from "ink";
|
|
@@ -165,4 +165,4 @@ export {
|
|
|
165
165
|
wizardTabsFor,
|
|
166
166
|
WizardTabs
|
|
167
167
|
};
|
|
168
|
-
//# sourceMappingURL=chunk-
|
|
168
|
+
//# sourceMappingURL=chunk-6L75SQZU.js.map
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
useKeyboardNavigation
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-JOEA52NR.js";
|
|
5
5
|
import {
|
|
6
6
|
CLI_COLORS,
|
|
7
7
|
UI_SYMBOLS
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-ENGYJCTF.js";
|
|
9
9
|
|
|
10
10
|
// src/cli/components/common/select-list.tsx
|
|
11
11
|
import { useCallback } from "react";
|
|
@@ -48,4 +48,4 @@ function SelectList({
|
|
|
48
48
|
export {
|
|
49
49
|
SelectList
|
|
50
50
|
};
|
|
51
|
-
//# sourceMappingURL=chunk-
|
|
51
|
+
//# sourceMappingURL=chunk-6LF4CQBY.js.map
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
getUnmetRequiredBy,
|
|
10
10
|
isLocalOnlySkill,
|
|
11
11
|
warn
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-A4KDXNOT.js";
|
|
13
13
|
import {
|
|
14
14
|
getCategoryDomain,
|
|
15
15
|
getSkillById,
|
|
@@ -18,7 +18,7 @@ import {
|
|
|
18
18
|
typedFromEntries,
|
|
19
19
|
typedKeys,
|
|
20
20
|
typedValues
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-V5WXIM2F.js";
|
|
22
22
|
import {
|
|
23
23
|
CLI_INVOKE_COMMAND,
|
|
24
24
|
DEFAULT_PUBLIC_SOURCE_NAME,
|
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
isGlobalTombstone,
|
|
32
32
|
isProjectOwned,
|
|
33
33
|
orderDomains
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-ENGYJCTF.js";
|
|
35
35
|
|
|
36
36
|
// src/cli/stores/wizard-store.ts
|
|
37
37
|
import { create } from "zustand";
|
|
@@ -347,7 +347,7 @@ function wouldOverwriteGlobalEject(config, liveConfigs, installedSkillConfigs) {
|
|
|
347
347
|
}
|
|
348
348
|
function isInheritedGlobalSlot(installed, id, scope) {
|
|
349
349
|
if (installed === null) return false;
|
|
350
|
-
return scope === "global" && hasGlobalActive(installed, id);
|
|
350
|
+
return scope === "global" && (hasGlobalActive(installed, id) || hasGlobalTombstone(installed, id));
|
|
351
351
|
}
|
|
352
352
|
function withActiveEntryOrigin(configs, id, scope, origin) {
|
|
353
353
|
return configs.map(
|
|
@@ -445,13 +445,23 @@ function survivesRosterRebuild(agentConfig, roster, rebuiltSlots) {
|
|
|
445
445
|
}
|
|
446
446
|
return !isProjectOwned(agentConfig) && !roster.has(agentConfig.name);
|
|
447
447
|
}
|
|
448
|
+
function tuningOf(agentConfig) {
|
|
449
|
+
return {
|
|
450
|
+
...agentConfig?.model !== void 0 && { model: agentConfig.model },
|
|
451
|
+
...agentConfig?.effort !== void 0 && { effort: agentConfig.effort }
|
|
452
|
+
};
|
|
453
|
+
}
|
|
454
|
+
function tunedEntryFor(agentConfigs, agent) {
|
|
455
|
+
return agentConfigs?.find((ac) => ac.name === agent && !ac.excluded && ac.scope === "project") ?? agentConfigs?.find((ac) => ac.name === agent && !ac.excluded);
|
|
456
|
+
}
|
|
448
457
|
function restoreDualScopeAgent(selectedAgents, agentConfigs, agent) {
|
|
458
|
+
const tuning = tuningOf(tunedEntryFor(agentConfigs, agent));
|
|
449
459
|
return {
|
|
450
460
|
selectedAgents: [...selectedAgents, agent],
|
|
451
461
|
agentConfigs: [
|
|
452
462
|
...agentConfigs.filter((ac) => ac.name !== agent),
|
|
453
|
-
{ name: agent, scope: "project" },
|
|
454
|
-
{ name: agent, scope: "global", excluded: true }
|
|
463
|
+
{ name: agent, scope: "project", ...tuning },
|
|
464
|
+
{ name: agent, scope: "global", ...tuning, excluded: true }
|
|
455
465
|
]
|
|
456
466
|
};
|
|
457
467
|
}
|
|
@@ -469,14 +479,13 @@ function buildSkillConfigForId(id, savedConfigs) {
|
|
|
469
479
|
};
|
|
470
480
|
}
|
|
471
481
|
function buildAgentConfigForName(name, savedConfigs) {
|
|
472
|
-
const saved =
|
|
482
|
+
const saved = tunedEntryFor(savedConfigs, name);
|
|
473
483
|
return {
|
|
474
484
|
name,
|
|
475
485
|
scope: saved?.scope ?? "global",
|
|
476
|
-
//
|
|
477
|
-
//
|
|
478
|
-
...saved
|
|
479
|
-
...saved?.effort !== void 0 && { effort: saved.effort }
|
|
486
|
+
// The tuning is the user's deliberate choice, not something the roster re-derives — it
|
|
487
|
+
// survives the rebuild on the same terms as scope.
|
|
488
|
+
...tuningOf(saved)
|
|
480
489
|
};
|
|
481
490
|
}
|
|
482
491
|
function restoreSkillConfigs(existingConfigs, restoredIds) {
|
|
@@ -615,7 +624,7 @@ function classifySkillSourceRows(skillId, options, context) {
|
|
|
615
624
|
}
|
|
616
625
|
];
|
|
617
626
|
}
|
|
618
|
-
const readOnly = !isEditingFromGlobalScope && !!installedGlobalConfig;
|
|
627
|
+
const readOnly = !isEditingFromGlobalScope && (!!installedGlobalConfig || isInheritedGlobalSlot(installedSkillConfigs, skillId, configEntry?.scope));
|
|
619
628
|
return [
|
|
620
629
|
{
|
|
621
630
|
skillId,
|
|
@@ -664,6 +673,8 @@ var createInitialState = (overrides) => ({
|
|
|
664
673
|
skillConfigs: [],
|
|
665
674
|
focusedSkillId: null,
|
|
666
675
|
unresolvableSkillIds: [],
|
|
676
|
+
foldedSkillIds: [],
|
|
677
|
+
setupMarketplace: null,
|
|
667
678
|
showInfo: false,
|
|
668
679
|
selectedAgents: [],
|
|
669
680
|
agentConfigs: [],
|
|
@@ -881,10 +892,14 @@ var useWizardStore = create((set, get) => ({
|
|
|
881
892
|
skillConfigs: needsTombstone ? [
|
|
882
893
|
...rescoped,
|
|
883
894
|
{ id: skillId, scope: "global", excluded: true, origin: config.origin }
|
|
884
|
-
] : rescoped
|
|
895
|
+
] : rescoped,
|
|
896
|
+
foldedSkillIds: state.foldedSkillIds.filter((id) => id !== skillId)
|
|
885
897
|
};
|
|
886
898
|
}
|
|
887
|
-
return {
|
|
899
|
+
return {
|
|
900
|
+
skillConfigs: rescoped.filter((sc) => !(sc.id === skillId && sc.excluded)),
|
|
901
|
+
foldedSkillIds: isDualScopePair(state.skillConfigs, skillId) ? [...state.foldedSkillIds, skillId] : state.foldedSkillIds
|
|
902
|
+
};
|
|
888
903
|
}),
|
|
889
904
|
setFocusedSkillId: (id) => set({ focusedSkillId: id }),
|
|
890
905
|
seedFocusedSkillForActiveDomain: () => {
|
|
@@ -1084,7 +1099,8 @@ function hydrateForEdit(initialStep, options) {
|
|
|
1084
1099
|
installedSkillIds,
|
|
1085
1100
|
installedSkillConfigs,
|
|
1086
1101
|
installedAgentConfigs,
|
|
1087
|
-
isEditingFromGlobalScope
|
|
1102
|
+
isEditingFromGlobalScope,
|
|
1103
|
+
setupMarketplace
|
|
1088
1104
|
} = options;
|
|
1089
1105
|
if (installedSkillIds?.length) {
|
|
1090
1106
|
useWizardStore.getState().populateFromSkillIds(installedSkillIds, installedSkillConfigs);
|
|
@@ -1105,7 +1121,8 @@ function hydrateForEdit(initialStep, options) {
|
|
|
1105
1121
|
installedSkillConfigs: installedSkillConfigs ?? null,
|
|
1106
1122
|
installedAgentConfigs: installedAgentConfigs ?? null
|
|
1107
1123
|
} : {},
|
|
1108
|
-
...isEditingFromGlobalScope ? { isEditingFromGlobalScope: true } : {}
|
|
1124
|
+
...isEditingFromGlobalScope ? { isEditingFromGlobalScope: true } : {},
|
|
1125
|
+
...setupMarketplace !== void 0 && { setupMarketplace }
|
|
1109
1126
|
});
|
|
1110
1127
|
useWizardStore.getState().seedFocusedSkillForActiveDomain();
|
|
1111
1128
|
}
|
|
@@ -1159,4 +1176,4 @@ export {
|
|
|
1159
1176
|
showWarningsAsToast,
|
|
1160
1177
|
hydrateWizardStore
|
|
1161
1178
|
};
|
|
1162
|
-
//# sourceMappingURL=chunk-
|
|
1179
|
+
//# sourceMappingURL=chunk-7JNJ52CD.js.map
|