agentix-cli 0.122.0 → 0.124.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/dist/{App-2D5W26LY.js → App-BUYK4EGC.js} +2 -2
- package/dist/{ChatApp-FZFZD2XY.js → ChatApp-ZS6EPDDK.js} +2 -2
- package/dist/{agent-PCRE3TRK.js → agent-W7UNXO6L.js} +2 -2
- package/dist/{board-dashboard-ZDJ4UDW4.js → board-dashboard-3AOENRSG.js} +292 -226
- package/dist/board-dashboard-3AOENRSG.js.map +1 -0
- package/dist/{chunk-XLCUHG3N.js → chunk-46ACP7A7.js} +71 -69
- package/dist/chunk-46ACP7A7.js.map +1 -0
- package/dist/{chunk-ZLUROC2Y.js → chunk-46JKX6CT.js} +17 -17
- package/dist/chunk-46JKX6CT.js.map +1 -0
- package/dist/{chunk-ZWZADDXV.js → chunk-5DFUUYEA.js} +2 -2
- package/dist/{chunk-NFS2VR3L.js → chunk-5RE2B5YQ.js} +2 -2
- package/dist/{chunk-NYAMY7EA.js → chunk-6GLJIA25.js} +2 -2
- package/dist/{chunk-5SLTRG66.js → chunk-6HKLRU62.js} +2 -2
- package/dist/{chunk-XBRVV4ZT.js → chunk-6PJ6XHG4.js} +2 -2
- package/dist/{chunk-54XX2LSW.js → chunk-AKLZ4YO2.js} +4 -4
- package/dist/{chunk-54XX2LSW.js.map → chunk-AKLZ4YO2.js.map} +1 -1
- package/dist/{chunk-TYFGL2YS.js → chunk-B3B7KEHJ.js} +2 -2
- package/dist/{chunk-EHKI2RKD.js → chunk-BN5QMNON.js} +2 -2
- package/dist/{chunk-2UDSIG5K.js → chunk-BSTIA4M6.js} +2 -2
- package/dist/{chunk-YCMO3KZ4.js → chunk-CY6ABHF2.js} +2 -2
- package/dist/{chunk-BRVQZC6P.js → chunk-FHBPKMCF.js} +2 -2
- package/dist/{chunk-C52IPIKJ.js → chunk-INLKJEEN.js} +2 -2
- package/dist/chunk-ITATBKUL.js +37 -0
- package/dist/chunk-ITATBKUL.js.map +1 -0
- package/dist/{chunk-DMPTCBX6.js → chunk-K5QUQNFE.js} +3 -3
- package/dist/chunk-K5QUQNFE.js.map +1 -0
- package/dist/{chunk-UVV6GUOG.js → chunk-PAM56O25.js} +257 -254
- package/dist/chunk-PAM56O25.js.map +1 -0
- package/dist/{chunk-SB7WMFJV.js → chunk-QQYXYJOG.js} +2 -2
- package/dist/{chunk-WJDFR3WE.js → chunk-VHT7HESZ.js} +2 -2
- package/dist/{chunk-QCPSGOSK.js → chunk-WEPON4FP.js} +2 -2
- package/dist/{chunk-XX6MLDTL.js → chunk-WMTGAVPW.js} +2 -2
- package/dist/{chunk-YUNMSLZN.js → chunk-YL4C63S2.js} +2 -2
- package/dist/{chunk-7ZGTRXWS.js → chunk-YSIRJZWF.js} +2 -2
- package/dist/cli.js +1 -1
- package/dist/{client-TFZEASIJ.js → client-PO5LDFS4.js} +2 -2
- package/dist/config-L2RQ6EJX.js +2 -0
- package/dist/config-mutator-44OAOZXM.js +2 -0
- package/dist/doctor-AU5TCOSG.js +2 -0
- package/dist/{editor-chat-4MLCP5D2.js → editor-chat-ELKNLXM6.js} +10 -3
- package/dist/{editor-chat-4MLCP5D2.js.map → editor-chat-ELKNLXM6.js.map} +1 -1
- package/dist/follow-up-tool-AIOLNUF7.js +6 -0
- package/dist/follow-up-tool-AIOLNUF7.js.map +1 -0
- package/dist/{grants-NGBKFONG.js → grants-HIFE6L5N.js} +2 -2
- package/dist/index.d.ts +80 -3
- package/dist/index.js +1 -1
- package/dist/{program-CGPPGRMR.js → program-EJWE7NVT.js} +221 -221
- package/dist/program-EJWE7NVT.js.map +1 -0
- package/dist/{promote-VTVIPRTC.js → promote-DPPNEINZ.js} +2 -2
- package/dist/push-bridge-325SXDGN.js +1 -1
- package/dist/{query-3CVDT2GZ.js → query-SLUOL6MQ.js} +2 -2
- package/dist/{registry-NOJMMWE3.js → registry-UBVBEEDW.js} +2 -2
- package/dist/{request-planner-E2Q5O66N.js → request-planner-2G73AJ4S.js} +2 -2
- package/dist/{review-candidates-I36HEYKX.js → review-candidates-S34UICQD.js} +2 -2
- package/dist/routing-K2LAUFRL.js +2 -0
- package/dist/schedule-tool-YRANRFHO.js +2 -0
- package/dist/scheduler-L4P4Z55R.js +2 -0
- package/dist/{seat-NGY2BMP6.js → seat-ZJT5T2NO.js} +2 -2
- package/dist/{select-X7VBGZ6X.js → select-Y23SKHCJ.js} +2 -2
- package/dist/{set-enabled-6NP63KCU.js → set-enabled-YWXWSKME.js} +2 -2
- package/dist/{tool-EZIILXYL.js → tool-5JTCSRTW.js} +2 -2
- package/dist/{tool-WKIF52OH.js → tool-FZEC5FQX.js} +2 -2
- package/dist/web/workflow-editor.global.js +1 -1
- package/dist/web/workflow-editor.global.js.map +1 -1
- package/dist/wiki-ZZ3MU5Y5.js +2 -0
- package/package.json +1 -1
- package/dist/board-dashboard-ZDJ4UDW4.js.map +0 -1
- package/dist/chunk-DMPTCBX6.js.map +0 -1
- package/dist/chunk-TLCURHW3.js +0 -28
- package/dist/chunk-TLCURHW3.js.map +0 -1
- package/dist/chunk-UVV6GUOG.js.map +0 -1
- package/dist/chunk-XLCUHG3N.js.map +0 -1
- package/dist/chunk-ZLUROC2Y.js.map +0 -1
- package/dist/config-IXCOAOPZ.js +0 -2
- package/dist/config-mutator-EPYIZVSG.js +0 -2
- package/dist/doctor-G5TM5GVF.js +0 -2
- package/dist/program-CGPPGRMR.js.map +0 -1
- package/dist/routing-KBUZON5R.js +0 -2
- package/dist/schedule-tool-GUHHYYTO.js +0 -2
- package/dist/scheduler-PGUELFMB.js +0 -2
- package/dist/wiki-7BFVMMNR.js +0 -2
- /package/dist/{App-2D5W26LY.js.map → App-BUYK4EGC.js.map} +0 -0
- /package/dist/{ChatApp-FZFZD2XY.js.map → ChatApp-ZS6EPDDK.js.map} +0 -0
- /package/dist/{agent-PCRE3TRK.js.map → agent-W7UNXO6L.js.map} +0 -0
- /package/dist/{chunk-ZWZADDXV.js.map → chunk-5DFUUYEA.js.map} +0 -0
- /package/dist/{chunk-NFS2VR3L.js.map → chunk-5RE2B5YQ.js.map} +0 -0
- /package/dist/{chunk-NYAMY7EA.js.map → chunk-6GLJIA25.js.map} +0 -0
- /package/dist/{chunk-5SLTRG66.js.map → chunk-6HKLRU62.js.map} +0 -0
- /package/dist/{chunk-XBRVV4ZT.js.map → chunk-6PJ6XHG4.js.map} +0 -0
- /package/dist/{chunk-TYFGL2YS.js.map → chunk-B3B7KEHJ.js.map} +0 -0
- /package/dist/{chunk-EHKI2RKD.js.map → chunk-BN5QMNON.js.map} +0 -0
- /package/dist/{chunk-2UDSIG5K.js.map → chunk-BSTIA4M6.js.map} +0 -0
- /package/dist/{chunk-YCMO3KZ4.js.map → chunk-CY6ABHF2.js.map} +0 -0
- /package/dist/{chunk-BRVQZC6P.js.map → chunk-FHBPKMCF.js.map} +0 -0
- /package/dist/{chunk-C52IPIKJ.js.map → chunk-INLKJEEN.js.map} +0 -0
- /package/dist/{chunk-SB7WMFJV.js.map → chunk-QQYXYJOG.js.map} +0 -0
- /package/dist/{chunk-WJDFR3WE.js.map → chunk-VHT7HESZ.js.map} +0 -0
- /package/dist/{chunk-QCPSGOSK.js.map → chunk-WEPON4FP.js.map} +0 -0
- /package/dist/{chunk-XX6MLDTL.js.map → chunk-WMTGAVPW.js.map} +0 -0
- /package/dist/{chunk-YUNMSLZN.js.map → chunk-YL4C63S2.js.map} +0 -0
- /package/dist/{chunk-7ZGTRXWS.js.map → chunk-YSIRJZWF.js.map} +0 -0
- /package/dist/{client-TFZEASIJ.js.map → client-PO5LDFS4.js.map} +0 -0
- /package/dist/{config-IXCOAOPZ.js.map → config-L2RQ6EJX.js.map} +0 -0
- /package/dist/{config-mutator-EPYIZVSG.js.map → config-mutator-44OAOZXM.js.map} +0 -0
- /package/dist/{doctor-G5TM5GVF.js.map → doctor-AU5TCOSG.js.map} +0 -0
- /package/dist/{grants-NGBKFONG.js.map → grants-HIFE6L5N.js.map} +0 -0
- /package/dist/{promote-VTVIPRTC.js.map → promote-DPPNEINZ.js.map} +0 -0
- /package/dist/{query-3CVDT2GZ.js.map → query-SLUOL6MQ.js.map} +0 -0
- /package/dist/{registry-NOJMMWE3.js.map → registry-UBVBEEDW.js.map} +0 -0
- /package/dist/{request-planner-E2Q5O66N.js.map → request-planner-2G73AJ4S.js.map} +0 -0
- /package/dist/{review-candidates-I36HEYKX.js.map → review-candidates-S34UICQD.js.map} +0 -0
- /package/dist/{routing-KBUZON5R.js.map → routing-K2LAUFRL.js.map} +0 -0
- /package/dist/{schedule-tool-GUHHYYTO.js.map → schedule-tool-YRANRFHO.js.map} +0 -0
- /package/dist/{scheduler-PGUELFMB.js.map → scheduler-L4P4Z55R.js.map} +0 -0
- /package/dist/{seat-NGY2BMP6.js.map → seat-ZJT5T2NO.js.map} +0 -0
- /package/dist/{select-X7VBGZ6X.js.map → select-Y23SKHCJ.js.map} +0 -0
- /package/dist/{set-enabled-6NP63KCU.js.map → set-enabled-YWXWSKME.js.map} +0 -0
- /package/dist/{tool-EZIILXYL.js.map → tool-5JTCSRTW.js.map} +0 -0
- /package/dist/{tool-WKIF52OH.js.map → tool-FZEC5FQX.js.map} +0 -0
- /package/dist/{wiki-7BFVMMNR.js.map → wiki-ZZ3MU5Y5.js.map} +0 -0
package/dist/index.d.ts
CHANGED
|
@@ -910,7 +910,14 @@ declare class AgentXRuntime {
|
|
|
910
910
|
private sendJson;
|
|
911
911
|
}
|
|
912
912
|
|
|
913
|
-
|
|
913
|
+
/** The tool sets `agentx serve --tools <set>` offers (#794). `full` is
|
|
914
|
+
* every tool and the default. */
|
|
915
|
+
declare const MCP_TOOL_SETS: readonly ["read", "full"];
|
|
916
|
+
type McpToolSet = (typeof MCP_TOOL_SETS)[number];
|
|
917
|
+
|
|
918
|
+
declare function startMcpServer(opts?: {
|
|
919
|
+
tools?: McpToolSet;
|
|
920
|
+
}): Promise<void>;
|
|
914
921
|
|
|
915
922
|
declare class MemoryHierarchy {
|
|
916
923
|
private cwd;
|
|
@@ -6653,6 +6660,36 @@ declare const daemonConfigSchema: z.ZodObject<{
|
|
|
6653
6660
|
autoRunThreshold?: number | undefined;
|
|
6654
6661
|
suggestThreshold?: number | undefined;
|
|
6655
6662
|
}>>;
|
|
6663
|
+
/** Follow-up workflows (#788): agents start a saved workflow for a
|
|
6664
|
+
* request, or build one from the owner's words, and the engine
|
|
6665
|
+
* follows each step to the end. */
|
|
6666
|
+
followUp: z.ZodDefault<z.ZodObject<{
|
|
6667
|
+
/** Agents get agentx_workflow and the hint naming a saved workflow
|
|
6668
|
+
* that fits the request. */
|
|
6669
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
6670
|
+
/** Per agent, by id: false turns it off for that agent. */
|
|
6671
|
+
agents: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodBoolean>>;
|
|
6672
|
+
/** An agent step with no progress for this long gets a reminder. */
|
|
6673
|
+
stallMinutes: z.ZodDefault<z.ZodNumber>;
|
|
6674
|
+
/** Reminders before the step counts as blocked and you are told. */
|
|
6675
|
+
maxNudges: z.ZodDefault<z.ZodNumber>;
|
|
6676
|
+
/** When you approve messages to people: all at once when a run
|
|
6677
|
+
* starts ("start"), or each before it is sent ("step"). A workflow
|
|
6678
|
+
* can set its own `approval`. */
|
|
6679
|
+
approval: z.ZodDefault<z.ZodEnum<["start", "step"]>>;
|
|
6680
|
+
}, "strip", z.ZodTypeAny, {
|
|
6681
|
+
enabled: boolean;
|
|
6682
|
+
agents: Record<string, boolean>;
|
|
6683
|
+
approval: "start" | "step";
|
|
6684
|
+
stallMinutes: number;
|
|
6685
|
+
maxNudges: number;
|
|
6686
|
+
}, {
|
|
6687
|
+
enabled?: boolean | undefined;
|
|
6688
|
+
agents?: Record<string, boolean> | undefined;
|
|
6689
|
+
approval?: "start" | "step" | undefined;
|
|
6690
|
+
stallMinutes?: number | undefined;
|
|
6691
|
+
maxNudges?: number | undefined;
|
|
6692
|
+
}>>;
|
|
6656
6693
|
/** Controls whether the dashboard exposes the visual editor. "readonly"
|
|
6657
6694
|
* serves the list + run timelines but strips write controls from the
|
|
6658
6695
|
* page. "disabled" hides the tab entirely. */
|
|
@@ -6660,6 +6697,13 @@ declare const daemonConfigSchema: z.ZodObject<{
|
|
|
6660
6697
|
}, "strip", z.ZodTypeAny, {
|
|
6661
6698
|
dir: string;
|
|
6662
6699
|
enabled: boolean;
|
|
6700
|
+
followUp: {
|
|
6701
|
+
enabled: boolean;
|
|
6702
|
+
agents: Record<string, boolean>;
|
|
6703
|
+
approval: "start" | "step";
|
|
6704
|
+
stallMinutes: number;
|
|
6705
|
+
maxNudges: number;
|
|
6706
|
+
};
|
|
6663
6707
|
n8n: {
|
|
6664
6708
|
apiKey: string;
|
|
6665
6709
|
baseUrl: string;
|
|
@@ -6674,6 +6718,13 @@ declare const daemonConfigSchema: z.ZodObject<{
|
|
|
6674
6718
|
}, {
|
|
6675
6719
|
dir?: string | undefined;
|
|
6676
6720
|
enabled?: boolean | undefined;
|
|
6721
|
+
followUp?: {
|
|
6722
|
+
enabled?: boolean | undefined;
|
|
6723
|
+
agents?: Record<string, boolean> | undefined;
|
|
6724
|
+
approval?: "start" | "step" | undefined;
|
|
6725
|
+
stallMinutes?: number | undefined;
|
|
6726
|
+
maxNudges?: number | undefined;
|
|
6727
|
+
} | undefined;
|
|
6677
6728
|
n8n?: {
|
|
6678
6729
|
apiKey?: string | undefined;
|
|
6679
6730
|
baseUrl?: string | undefined;
|
|
@@ -6902,8 +6953,8 @@ declare const daemonConfigSchema: z.ZodObject<{
|
|
|
6902
6953
|
* them while ToolSearch is available, so a list saves only their
|
|
6903
6954
|
* names (about 300 tokens) unless tool search is off. A tool left
|
|
6904
6955
|
* off cannot be found even through ToolSearch. `agentx_approval`,
|
|
6905
|
-
* `agentx_request`, `agentx_events
|
|
6906
|
-
* always kept, and so are `agentx_agents`, `agentx_recent` and
|
|
6956
|
+
* `agentx_request`, `agentx_events`, `agentx_attach_next` and
|
|
6957
|
+
* `agentx_workflow` are always kept, and so are `agentx_agents`, `agentx_recent` and
|
|
6907
6958
|
* `agentx_wiki_query` while `contextOnDemand` is on. A name that is
|
|
6908
6959
|
* not an agentx tool is rejected, so a typo cannot silently drop a
|
|
6909
6960
|
* reply tool. Only an agentx server started as a command (stdio)
|
|
@@ -7863,6 +7914,13 @@ declare const daemonConfigSchema: z.ZodObject<{
|
|
|
7863
7914
|
workflows: {
|
|
7864
7915
|
dir: string;
|
|
7865
7916
|
enabled: boolean;
|
|
7917
|
+
followUp: {
|
|
7918
|
+
enabled: boolean;
|
|
7919
|
+
agents: Record<string, boolean>;
|
|
7920
|
+
approval: "start" | "step";
|
|
7921
|
+
stallMinutes: number;
|
|
7922
|
+
maxNudges: number;
|
|
7923
|
+
};
|
|
7866
7924
|
n8n: {
|
|
7867
7925
|
apiKey: string;
|
|
7868
7926
|
baseUrl: string;
|
|
@@ -8781,6 +8839,13 @@ declare const daemonConfigSchema: z.ZodObject<{
|
|
|
8781
8839
|
workflows?: {
|
|
8782
8840
|
dir?: string | undefined;
|
|
8783
8841
|
enabled?: boolean | undefined;
|
|
8842
|
+
followUp?: {
|
|
8843
|
+
enabled?: boolean | undefined;
|
|
8844
|
+
agents?: Record<string, boolean> | undefined;
|
|
8845
|
+
approval?: "start" | "step" | undefined;
|
|
8846
|
+
stallMinutes?: number | undefined;
|
|
8847
|
+
maxNudges?: number | undefined;
|
|
8848
|
+
} | undefined;
|
|
8784
8849
|
n8n?: {
|
|
8785
8850
|
apiKey?: string | undefined;
|
|
8786
8851
|
baseUrl?: string | undefined;
|
|
@@ -9722,6 +9787,15 @@ declare class AgentXDaemon {
|
|
|
9722
9787
|
* closed ones are deleted (src/requests/sweep.ts). Plans first: a
|
|
9723
9788
|
* blocked step marks its request told, so the owner hears once. */
|
|
9724
9789
|
private sweepRequests;
|
|
9790
|
+
/** Tell the owner through the notify path: a push to the default
|
|
9791
|
+
* channel, the Mac banner where there is one (#788). */
|
|
9792
|
+
private notifyOwner;
|
|
9793
|
+
/** A card raised for a workflow (#788): a step's answer resumes its
|
|
9794
|
+
* run; a proposed workflow is kept (switched on) on a yes. */
|
|
9795
|
+
private workflowCardResult;
|
|
9796
|
+
/** A follow-up run ended: its request closes with the steps' evidence,
|
|
9797
|
+
* or needs attention (the summary already told the owner). */
|
|
9798
|
+
private workflowRequestEnded;
|
|
9725
9799
|
/** A check-in pass when one is due, or `force` now. macOS only. */
|
|
9726
9800
|
runCheckin(force?: PassKind): Promise<PassResult | null>;
|
|
9727
9801
|
private stopReminders?;
|
|
@@ -12248,6 +12322,8 @@ interface RunningTask {
|
|
|
12248
12322
|
/** Intent-graph path this request was classified under, once known.
|
|
12249
12323
|
* Classification runs alongside the turn, so it is absent until then. */
|
|
12250
12324
|
intentPath?: string[];
|
|
12325
|
+
/** Step autonomy the turn runs at (report | propose | act). Unset = act. */
|
|
12326
|
+
autonomy?: AgentTask["autonomy"];
|
|
12251
12327
|
}
|
|
12252
12328
|
type TaskOutputSubscriber = (chunk: string) => void;
|
|
12253
12329
|
/** Persisted record of a finished task, written to .agentx/task-history. */
|
|
@@ -12584,6 +12660,7 @@ declare class AgentRegistry {
|
|
|
12584
12660
|
}): {
|
|
12585
12661
|
taskId: string;
|
|
12586
12662
|
context: NonNullable<AgentTask["context"]>;
|
|
12663
|
+
autonomy?: AgentTask["autonomy"];
|
|
12587
12664
|
} | null;
|
|
12588
12665
|
/** Whether every slot of `agentId` is taken, and by which runs. Lets a
|
|
12589
12666
|
* synchronous delegation refuse at once when the only slot is held by
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as St,b as kt,c as vt,d as xt,e as $t,f as Ct,g as Pt,h as bt,la as Tt,ma as Mt}from"./chunk-
|
|
1
|
+
import{a as St,b as kt,c as vt,d as xt,e as $t,f as Ct,g as Pt,h as bt,la as Tt,ma as Mt}from"./chunk-PAM56O25.js";import"./chunk-K5QUQNFE.js";import"./chunk-GTJIKXDB.js";import"./chunk-5RE2B5YQ.js";import"./chunk-S2GAEH2F.js";import"./chunk-BGG3ZSMW.js";import"./chunk-ZVP6GB4G.js";import"./chunk-XGOBZCYC.js";import"./chunk-WCXXXAHV.js";import"./chunk-GRMCAO3Q.js";import"./chunk-LQE73AZR.js";import"./chunk-2D3RYIDU.js";import"./chunk-WEPON4FP.js";import"./chunk-AKLZ4YO2.js";import"./chunk-PPUN7YHA.js";import"./chunk-VZLIBDLH.js";import"./chunk-EKJG63EJ.js";import"./chunk-B3B7KEHJ.js";import"./chunk-2AXFYDWF.js";import"./chunk-AQASR6KR.js";import"./chunk-EMGB23H5.js";import"./chunk-JWDJMFU6.js";import"./chunk-KZKDVIOE.js";import{ca as yt,m as lt,n as ct,o as dt,p as mt,q as pt}from"./chunk-46ACP7A7.js";import"./chunk-ITATBKUL.js";import"./chunk-GLQLCBJS.js";import"./chunk-6W74CHNW.js";import{a as L}from"./chunk-UG2OF2EI.js";import{A as D,B as z,C as V,a as ye,b as we,c as Se,d as Ae,e as Ie,f as Oe,g as Ne,h as He,i as je,j as Ue,k as _e,l as I,m as q,n as Be,o as qe,p as Ye,q as O,r as ze,s as Ve,t as Xe,u as x,v as Y,w as Qe,x as Ze,y as et,z as wt}from"./chunk-6HKLRU62.js";import{a as B,b as M,c as F}from"./chunk-SFQUP3BP.js";import"./chunk-Y4CYQV7G.js";import"./chunk-LLNPKE7H.js";import"./chunk-SHEUCITK.js";import"./chunk-QQYXYJOG.js";import"./chunk-GV7S5BAX.js";import"./chunk-SZDACK6O.js";import"./chunk-76Z4VHDX.js";import"./chunk-W4YR2RO2.js";import"./chunk-AFRHKA7B.js";import{s as ut}from"./chunk-5DFUUYEA.js";import"./chunk-WMTGAVPW.js";import"./chunk-VWTBHLMX.js";import"./chunk-YSIRJZWF.js";import{a as ht}from"./chunk-6PJ6XHG4.js";import"./chunk-36AXN6ZB.js";import"./chunk-KA2UIZXG.js";import"./chunk-GQ76J72O.js";import"./chunk-ILEC3IAV.js";import"./chunk-J3SOEFRE.js";import"./chunk-SIU6STB2.js";import"./chunk-X5C5W3E4.js";import"./chunk-GSX4NK2N.js";import"./chunk-INLKJEEN.js";import"./chunk-MYVHVJWZ.js";import"./chunk-AV7T3SYT.js";import"./chunk-Y5MFVVTM.js";import"./chunk-QD6IICK7.js";import"./chunk-CECHWYJ2.js";import"./chunk-YL4C63S2.js";import{f as gt,g as ft}from"./chunk-VHT7HESZ.js";import"./chunk-WPNRDEHW.js";import"./chunk-56KNKUFF.js";import{j as it,k as rt,l as at}from"./chunk-BN5QMNON.js";import"./chunk-72SZI2UW.js";import"./chunk-FX3D7YON.js";import"./chunk-FCPTN6NF.js";import"./chunk-QOYAX2FT.js";import{a as ke,b as ve,c as xe,d as $e,e as Ce,f as Pe,g as be,h as Te,i as Me,j as Re,l as Ee,m as Ge,o as T,p as W}from"./chunk-2PJKGZWP.js";import{a as m,b as G}from"./chunk-7I7IEX4S.js";import{b as Fe,c as Le,d as A,e as De}from"./chunk-JHCI6XCJ.js";import{a as Ke,b as Je,e as We}from"./chunk-DSYKYZMT.js";import{ma as tt,oa as st,pa as ot,ra as nt}from"./chunk-46JKX6CT.js";import"./chunk-UIBUZ2N3.js";import"./chunk-BRK6M6LA.js";import"./chunk-2QNT5JDS.js";import"./chunk-RGDKHYY2.js";import"./chunk-QIJLFPWE.js";W();G();import{execa as Rt}from"execa";import{existsSync as se,promises as X}from"fs";import S from"path";import ie from"node-fetch";async function Et(o,e){let t=o.split("/");if(t.length<2)throw new Error(`Invalid skill package ID: ${o}. Expected format: owner/repo`);let s=t[0],i=t[1],n=t[2];try{let a=n?`${s}/${i}/${n}`:`${s}/${i}`;await Rt("npx",["-y","skills","add",a],{cwd:e,stdio:"pipe"}),m.success(`Installed skill package: ${o}`);let r=S.resolve(e,".skills",`${s}_${i}`);if(se(r))return await ne(r,o);let d=S.resolve(e,".skills");return se(d)?await ne(d,o):[]}catch{return m.info(`Fetching skills directly from GitHub: ${s}/${i}`),await Gt(s,i,n,e)}}async function Gt(o,e,t,s){let i=[];try{let n=`https://api.github.com/repos/${o}/${e}/git/trees/main?recursive=1`,a=await ie(n);if(!a.ok)throw new Error(`GitHub API error: ${a.status}`);let d=(await a.json()).tree.filter(p=>p.type==="blob"&&p.path.endsWith("SKILL.md"));if(t){let p=d.find(f=>f.path.includes(`/${t}/`)||f.path===`${t}/SKILL.md`);if(p){let f=await oe(o,e,p.path,s);f&&i.push(f)}}else for(let p of d){let f=await oe(o,e,p.path,s);f&&i.push(f)}}catch(n){m.error(`Failed to fetch skills from GitHub: ${n.message}`)}return i}async function oe(o,e,t,s){try{let i=`https://raw.githubusercontent.com/${o}/${e}/main/${t}`,n=await ie(i);if(!n.ok)return null;let a=await n.text(),r=A(a);if(r){r.source="remote",r.packageId=`${o}/${e}`;let d=S.dirname(t),p=S.resolve(s,".skills",`${o}_${e}`,d);await X.mkdir(p,{recursive:!0}),await X.writeFile(S.resolve(p,"SKILL.md"),a),r.path=S.resolve(p,"SKILL.md")}return r}catch{return null}}async function ne(o,e){let t=[],{default:s}=await import("fast-glob"),i=await s.glob("**/SKILL.md",{cwd:o,deep:5});for(let n of i)try{let a=S.resolve(o,n),r=await X.readFile(a,"utf8"),d=A(r);d&&(d.source="remote",d.path=a,d.packageId=e,t.push(d))}catch{}return t}async function At(o,e,t,s,i){let n=["---",`name: ${o}`,`description: ${e}`];if(s?.length){n.push("tags:");for(let a of s)n.push(` - ${a}`)}if(i?.length){n.push("globs:");for(let a of i)n.push(` - ${a}`)}return n.push("---"),`${n.join(`
|
|
2
2
|
`)}
|
|
3
3
|
|
|
4
4
|
${t}`}async function It(o){let{loadLocalSkills:e}=await import("./loader-YFVSSYSL.js");return e(o)}async function Ot(o,e,t,s,i){let a=[{role:"system",content:`You are a skill author for the Agent Skills ecosystem (skills.sh).
|