@wirecat/cli-template 0.13.2 → 0.14.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/.github/workflows/changelog-guard.yml +1 -1
- package/.github/workflows/ci.yml +1 -1
- package/.github/workflows/monthly.yml +1 -1
- package/.github/workflows/release.yml +1 -1
- package/CHANGELOG.md +25 -0
- package/config/parity-groups.json +32 -1
- package/contracts/mcp-tools.json +100 -0
- package/dist/bin/clidev.js +6 -2
- package/dist/bundle/{all-profiles-MJ6XSFOO.js → all-profiles-NVB2HT2S.js} +6 -6
- package/dist/bundle/{anthropic-W5UKBZUB.js → anthropic-ICTW7CNQ.js} +4 -4
- package/dist/bundle/{app-server-EZ46JAHB.js → app-server-B6BCKXR7.js} +40 -38
- package/dist/bundle/{bun-HB6O2TTT.js → bun-ILPS6AYA.js} +2 -2
- package/dist/bundle/{bun-sqlite-KBXOW2ES.js → bun-sqlite-JE6FJFQT.js} +3 -3
- package/dist/bundle/{chunk-KJTNT4SW.js → chunk-2DAXUNTS.js} +2 -2
- package/dist/bundle/chunk-3MDNAYQA.js +34 -0
- package/dist/bundle/chunk-3WDYHOAF.js +91 -0
- package/dist/bundle/{chunk-EGRB55FF.js → chunk-45244QQ6.js} +14 -12
- package/dist/bundle/{chunk-JHO2LL2J.js → chunk-4PA6DJ7F.js} +7 -7
- package/dist/bundle/{chunk-FZZIU4B7.js → chunk-5SAF3XOL.js} +8196 -5601
- package/dist/bundle/chunk-62JRF2JA.js +35 -0
- package/dist/bundle/{chunk-TGB5F7NC.js → chunk-66VMJGV6.js} +4 -4
- package/dist/bundle/{chunk-V3ZTQ24B.js → chunk-6AW4DDK4.js} +4 -4
- package/dist/bundle/{chunk-PJOVK7PG.js → chunk-7F5VMLVK.js} +49 -24
- package/dist/bundle/{chunk-MFS52LTZ.js → chunk-7Z4HR6GO.js} +1 -1
- package/dist/bundle/{chunk-E42W72PQ.js → chunk-AS2PJNQ2.js} +7 -5
- package/dist/bundle/{chunk-SVDF6NJF.js → chunk-ASHVHS52.js} +14 -14
- package/dist/bundle/{chunk-N2Z3MCOF.js → chunk-BEBD27QT.js} +37 -35
- package/dist/bundle/{chunk-IGHEW777.js → chunk-BM5ZCDPQ.js} +5 -40
- package/dist/bundle/{chunk-AK257OMS.js → chunk-BVLPNNEL.js} +209 -78
- package/dist/bundle/{chunk-ERKR3VJ5.js → chunk-BWBZCYUN.js} +141 -46
- package/dist/bundle/{chunk-Z7MSIRSQ.js → chunk-CGFQT3LQ.js} +1 -1
- package/dist/bundle/{chunk-QKWRL4OD.js → chunk-DQIBGCF3.js} +6 -6
- package/dist/bundle/{chunk-RUKDZEID.js → chunk-DZLHY4IA.js} +3 -3
- package/dist/bundle/{chunk-TAYOKLGF.js → chunk-EMHCXXNJ.js} +7 -6
- package/dist/bundle/{chunk-IBBN7Z3A.js → chunk-F34HGYWF.js} +12 -3
- package/dist/bundle/{chunk-ERGB4NJA.js → chunk-G45R7M42.js} +1 -1
- package/dist/bundle/{chunk-ZLY6GUAS.js → chunk-G7W53MQP.js} +3 -3
- package/dist/bundle/{chunk-JAOGZMKQ.js → chunk-GUFPQZUA.js} +2 -2
- package/dist/bundle/{chunk-4LURWBVV.js → chunk-HYTHTSJP.js} +188 -22
- package/dist/bundle/{chunk-EFHLQXG6.js → chunk-IOJ2DTCY.js} +162 -55
- package/dist/bundle/{chunk-L5WWMP5M.js → chunk-IZKXJJ7V.js} +121 -31
- package/dist/bundle/{chunk-NOVLCHDV.js → chunk-LATYBJ4T.js} +2 -2
- package/dist/bundle/{chunk-QBP7OMN5.js → chunk-LFLSV353.js} +2 -2
- package/dist/bundle/{chunk-HDY5X3WQ.js → chunk-LU4A2T7Y.js} +4 -4
- package/dist/bundle/{chunk-JRK73FOW.js → chunk-NENYWEXF.js} +1 -1
- package/dist/bundle/{chunk-2B5U4Z5H.js → chunk-NH6LZ3H3.js} +8 -13
- package/dist/bundle/{chunk-OV6PHTAY.js → chunk-NVNUUHT5.js} +17130 -2232
- package/dist/bundle/chunk-PIJUGF5F.js +392 -0
- package/dist/bundle/{chunk-7IXL4UFK.js → chunk-PX2KP4QE.js} +8 -8
- package/dist/bundle/{chunk-KRCCGWWS.js → chunk-QXOSPYM3.js} +1 -1
- package/dist/bundle/{chunk-PBN4RBHS.js → chunk-R2JKPHH5.js} +8 -8
- package/dist/bundle/{chunk-PDGXMKJS.js → chunk-R5RYPD23.js} +2 -2
- package/dist/bundle/{chunk-QJ6XW4DM.js → chunk-RJ7AS7UB.js} +6210 -1207
- package/dist/bundle/{chunk-35KYY65W.js → chunk-SOYOOU2D.js} +3 -3
- package/dist/bundle/{chunk-FDBINRWA.js → chunk-TJJ2XSJP.js} +5 -5
- package/dist/bundle/{chunk-O3UXNU3S.js → chunk-U6QD3J3F.js} +3 -3
- package/dist/bundle/{chunk-YJNUDHJD.js → chunk-UT5TQ6MD.js} +139 -35
- package/dist/bundle/{chunk-VYSUKHKL.js → chunk-VOTEB3AN.js} +1 -1
- package/dist/bundle/{chunk-IN3FVRPK.js → chunk-VS5LGSTM.js} +1 -1
- package/dist/bundle/{chunk-MJRSEUKG.js → chunk-VXOR76ZL.js} +13 -89
- package/dist/bundle/{chunk-CXQXVKUY.js → chunk-YIVY2WI3.js} +1 -1
- package/dist/bundle/{chunk-VLNKTMV7.js → chunk-YOJLIVGO.js} +959 -350
- package/dist/bundle/clidev.js +3 -3
- package/dist/bundle/command-contract-JMVMT5HT.js +28 -0
- package/dist/bundle/{decode-AMXUVKNY.js → decode-NXB5UKMO.js} +18 -16
- package/dist/bundle/{echarts-GJDMQ2AQ.js → echarts-DRDGGHJT.js} +2 -2
- package/dist/bundle/{embed-L4CRZ2XQ.js → embed-IKZ24BMC.js} +4 -4
- package/dist/bundle/{embedder-IBGV4M2K.js → embedder-GMQ24DOQ.js} +7 -7
- package/dist/bundle/{first-run-VTKC2IBV.js → first-run-MDD4SIUK.js} +8 -8
- package/dist/bundle/first-screen-376CXGXJ.js +26 -0
- package/dist/bundle/{instructions-YJECS4KN.js → instructions-EOQOXY6V.js} +1 -1
- package/dist/bundle/{mcp-OQBZXELQ.js → mcp-7HBLFGCW.js} +2 -2
- package/dist/bundle/mcp-KHUZOJO6.js +82 -0
- package/dist/bundle/{mcp-GBSAK3VW.js → mcp-MZHWJXAE.js} +38 -37
- package/dist/bundle/{node-NQG4EVZR.js → node-52WF2326.js} +2 -2
- package/dist/bundle/{node-sqlite-BR7F3BLB.js → node-sqlite-73Z4SFOA.js} +9 -3
- package/dist/bundle/{oauth-J7UAWNIK.js → oauth-EVTPAMZP.js} +5 -5
- package/dist/bundle/{open-BR47R5UE.js → open-46WZAPJ3.js} +3 -2
- package/dist/bundle/openai-GWRDAHDU.js +248 -0
- package/dist/bundle/{process-66I7RDPJ.js → process-YIQPKLZI.js} +1 -1
- package/dist/bundle/{program-EM4FKOCK.js → program-B3CY3FP7.js} +11346 -9559
- package/dist/bundle/{prompt-NE5JJ7UP.js → prompt-IVEYRLS5.js} +3 -3
- package/dist/bundle/{recognize-GC3YFVIA.js → recognize-WVEKHODM.js} +4 -2
- package/dist/bundle/{remote-QELOMKQM.js → remote-4K5VPMC7.js} +5 -5
- package/dist/bundle/{rerank-BH6TZ2SP.js → rerank-V24UJZYJ.js} +5 -5
- package/dist/bundle/{serve-WWLRNDT2.js → serve-PJWSOV7F.js} +7 -7
- package/dist/bundle/server-2ZN7KZHZ.js +40 -0
- package/dist/bundle/server-5VYM7CCF.js +53 -0
- package/dist/bundle/{state-2BEGXAMO.js → state-ZPYGECVP.js} +4 -4
- package/dist/bundle/{store-AH6WZMCF.js → store-6JQCLPQF.js} +14 -9
- package/dist/bundle/store-maintenance-command-7XICIYHW.js +42 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/docs/commands.md +37 -11
- package/docs/dev/reference-clis.md +1 -1
- package/docs/dev/skills/design-interview/SKILL.md +2 -2
- package/docs/dev/test-matrix.md +5 -1
- package/kit/dist/interview.js +1 -0
- package/kit/dist/new.js +8 -3
- package/package.json +3 -3
- package/src/program.test.ts +56 -0
- package/src/version.ts +1 -1
- package/dist/bundle/chunk-IDWW4TU2.js +0 -18
- package/dist/bundle/chunk-MUSYGFCY.js +0 -3556
- package/dist/bundle/chunk-O5EHUB2V.js +0 -2
- package/dist/bundle/command-contract-75VJ36U4.js +0 -29
- package/dist/bundle/first-screen-X5IJKBSU.js +0 -27
- package/dist/bundle/mcp-RDZGYPSY.js +0 -78
- package/dist/bundle/server-DE6NLNUF.js +0 -52
- package/dist/bundle/server-ZPSQKOAH.js +0 -39
- package/dist/bundle/store-maintenance-command-PBXX3IEV.js +0 -40
- /package/dist/bundle/{chunk-GOO67PDU.js → chunk-NL2DQPT7.js} +0 -0
|
@@ -2,9 +2,9 @@ import { createRequire as __bundleRequire } from "node:module";
|
|
|
2
2
|
const require = __bundleRequire(import.meta.url);
|
|
3
3
|
import {
|
|
4
4
|
readSecret
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-G7W53MQP.js";
|
|
6
|
+
import "./chunk-2DAXUNTS.js";
|
|
7
|
+
import "./chunk-IOJ2DTCY.js";
|
|
8
8
|
import "./chunk-Y5E2WNWB.js";
|
|
9
9
|
import "./chunk-ZVVMGPBJ.js";
|
|
10
10
|
export {
|
|
@@ -6,9 +6,10 @@ import {
|
|
|
6
6
|
detector,
|
|
7
7
|
loadSherpa,
|
|
8
8
|
openRecognizer,
|
|
9
|
+
openSpeechCutter,
|
|
9
10
|
toModelRate
|
|
10
|
-
} from "./chunk-
|
|
11
|
-
import "./chunk-
|
|
11
|
+
} from "./chunk-7F5VMLVK.js";
|
|
12
|
+
import "./chunk-IOJ2DTCY.js";
|
|
12
13
|
import "./chunk-Y5E2WNWB.js";
|
|
13
14
|
import "./chunk-ZVVMGPBJ.js";
|
|
14
15
|
export {
|
|
@@ -17,5 +18,6 @@ export {
|
|
|
17
18
|
detector,
|
|
18
19
|
loadSherpa,
|
|
19
20
|
openRecognizer,
|
|
21
|
+
openSpeechCutter,
|
|
20
22
|
toModelRate
|
|
21
23
|
};
|
|
@@ -8,11 +8,11 @@ import {
|
|
|
8
8
|
openRemote,
|
|
9
9
|
remoteKey,
|
|
10
10
|
remoteModel
|
|
11
|
-
} from "./chunk-
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-
|
|
11
|
+
} from "./chunk-SOYOOU2D.js";
|
|
12
|
+
import "./chunk-DQIBGCF3.js";
|
|
13
|
+
import "./chunk-45244QQ6.js";
|
|
14
|
+
import "./chunk-62JRF2JA.js";
|
|
15
|
+
import "./chunk-IOJ2DTCY.js";
|
|
16
16
|
import "./chunk-Y5E2WNWB.js";
|
|
17
17
|
import "./chunk-ZVVMGPBJ.js";
|
|
18
18
|
export {
|
|
@@ -4,16 +4,16 @@ import {
|
|
|
4
4
|
defaultThreads,
|
|
5
5
|
loadModel,
|
|
6
6
|
truncated
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
7
|
+
} from "./chunk-DQIBGCF3.js";
|
|
8
|
+
import "./chunk-45244QQ6.js";
|
|
9
|
+
import "./chunk-62JRF2JA.js";
|
|
10
|
+
import "./chunk-IOJ2DTCY.js";
|
|
11
11
|
import "./chunk-Y5E2WNWB.js";
|
|
12
12
|
import {
|
|
13
13
|
__name
|
|
14
14
|
} from "./chunk-ZVVMGPBJ.js";
|
|
15
15
|
|
|
16
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.
|
|
16
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.584.0_@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_type_ab8c0b68b8b4768d5b87d6e249ef10da/node_modules/@wirecat/cli-core/dist/embeddings/rerank.js
|
|
17
17
|
var openReranker = /* @__PURE__ */ __name(async (model, directory, { threads = defaultThreads() } = {}) => {
|
|
18
18
|
const { ort, tokenizer, session } = await loadModel(model, directory, threads);
|
|
19
19
|
const typeIds = session.inputNames.includes("token_type_ids");
|
|
@@ -3,14 +3,14 @@ const require = __bundleRequire(import.meta.url);
|
|
|
3
3
|
import {
|
|
4
4
|
MCP_PATH,
|
|
5
5
|
serveOverHttp
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-EMHCXXNJ.js";
|
|
7
|
+
import "./chunk-NENYWEXF.js";
|
|
8
|
+
import "./chunk-66VMJGV6.js";
|
|
9
9
|
import "./chunk-5D4AEUVA.js";
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
10
|
+
import "./chunk-6AW4DDK4.js";
|
|
11
|
+
import "./chunk-DZLHY4IA.js";
|
|
12
|
+
import "./chunk-VOTEB3AN.js";
|
|
13
|
+
import "./chunk-IOJ2DTCY.js";
|
|
14
14
|
import "./chunk-Y5E2WNWB.js";
|
|
15
15
|
import "./chunk-ZVVMGPBJ.js";
|
|
16
16
|
export {
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { createRequire as __bundleRequire } from "node:module";
|
|
2
|
+
const require = __bundleRequire(import.meta.url);
|
|
3
|
+
import {
|
|
4
|
+
createBotServer,
|
|
5
|
+
serveBotOverStdio
|
|
6
|
+
} from "./chunk-PX2KP4QE.js";
|
|
7
|
+
import "./chunk-YIVY2WI3.js";
|
|
8
|
+
import "./chunk-UT5TQ6MD.js";
|
|
9
|
+
import "./chunk-HYTHTSJP.js";
|
|
10
|
+
import "./chunk-F34HGYWF.js";
|
|
11
|
+
import "./chunk-5SAF3XOL.js";
|
|
12
|
+
import "./chunk-PIJUGF5F.js";
|
|
13
|
+
import "./chunk-2DAXUNTS.js";
|
|
14
|
+
import "./chunk-AS2PJNQ2.js";
|
|
15
|
+
import "./chunk-7Z4HR6GO.js";
|
|
16
|
+
import "./chunk-5D4AEUVA.js";
|
|
17
|
+
import "./chunk-SOYOOU2D.js";
|
|
18
|
+
import "./chunk-LATYBJ4T.js";
|
|
19
|
+
import "./chunk-RJ7AS7UB.js";
|
|
20
|
+
import "./chunk-VXOR76ZL.js";
|
|
21
|
+
import "./chunk-U6QD3J3F.js";
|
|
22
|
+
import "./chunk-VOTEB3AN.js";
|
|
23
|
+
import "./chunk-NVNUUHT5.js";
|
|
24
|
+
import "./chunk-R2JKPHH5.js";
|
|
25
|
+
import "./chunk-YOJLIVGO.js";
|
|
26
|
+
import "./chunk-3WDYHOAF.js";
|
|
27
|
+
import "./chunk-TJJ2XSJP.js";
|
|
28
|
+
import "./chunk-NH6LZ3H3.js";
|
|
29
|
+
import "./chunk-3MDNAYQA.js";
|
|
30
|
+
import "./chunk-CGFQT3LQ.js";
|
|
31
|
+
import "./chunk-DQIBGCF3.js";
|
|
32
|
+
import "./chunk-45244QQ6.js";
|
|
33
|
+
import "./chunk-62JRF2JA.js";
|
|
34
|
+
import "./chunk-IOJ2DTCY.js";
|
|
35
|
+
import "./chunk-Y5E2WNWB.js";
|
|
36
|
+
import "./chunk-ZVVMGPBJ.js";
|
|
37
|
+
export {
|
|
38
|
+
createBotServer,
|
|
39
|
+
serveBotOverStdio
|
|
40
|
+
};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { createRequire as __bundleRequire } from "node:module";
|
|
2
|
+
const require = __bundleRequire(import.meta.url);
|
|
3
|
+
import {
|
|
4
|
+
PER_RUN,
|
|
5
|
+
createServer,
|
|
6
|
+
envelope,
|
|
7
|
+
serveOverHttpUntilStopped,
|
|
8
|
+
serveOverStdio
|
|
9
|
+
} from "./chunk-BEBD27QT.js";
|
|
10
|
+
import "./chunk-BWBZCYUN.js";
|
|
11
|
+
import "./chunk-GUFPQZUA.js";
|
|
12
|
+
import "./chunk-VS5LGSTM.js";
|
|
13
|
+
import "./chunk-UT5TQ6MD.js";
|
|
14
|
+
import "./chunk-HYTHTSJP.js";
|
|
15
|
+
import "./chunk-F34HGYWF.js";
|
|
16
|
+
import "./chunk-IZKXJJ7V.js";
|
|
17
|
+
import "./chunk-5SAF3XOL.js";
|
|
18
|
+
import "./chunk-PIJUGF5F.js";
|
|
19
|
+
import "./chunk-2DAXUNTS.js";
|
|
20
|
+
import "./chunk-AS2PJNQ2.js";
|
|
21
|
+
import "./chunk-7Z4HR6GO.js";
|
|
22
|
+
import "./chunk-G45R7M42.js";
|
|
23
|
+
import "./chunk-5D4AEUVA.js";
|
|
24
|
+
import "./chunk-6AW4DDK4.js";
|
|
25
|
+
import "./chunk-DZLHY4IA.js";
|
|
26
|
+
import "./chunk-SOYOOU2D.js";
|
|
27
|
+
import "./chunk-LATYBJ4T.js";
|
|
28
|
+
import "./chunk-BM5ZCDPQ.js";
|
|
29
|
+
import "./chunk-RJ7AS7UB.js";
|
|
30
|
+
import "./chunk-VXOR76ZL.js";
|
|
31
|
+
import "./chunk-U6QD3J3F.js";
|
|
32
|
+
import "./chunk-VOTEB3AN.js";
|
|
33
|
+
import "./chunk-NVNUUHT5.js";
|
|
34
|
+
import "./chunk-R2JKPHH5.js";
|
|
35
|
+
import "./chunk-YOJLIVGO.js";
|
|
36
|
+
import "./chunk-3WDYHOAF.js";
|
|
37
|
+
import "./chunk-TJJ2XSJP.js";
|
|
38
|
+
import "./chunk-NH6LZ3H3.js";
|
|
39
|
+
import "./chunk-3MDNAYQA.js";
|
|
40
|
+
import "./chunk-CGFQT3LQ.js";
|
|
41
|
+
import "./chunk-DQIBGCF3.js";
|
|
42
|
+
import "./chunk-45244QQ6.js";
|
|
43
|
+
import "./chunk-62JRF2JA.js";
|
|
44
|
+
import "./chunk-IOJ2DTCY.js";
|
|
45
|
+
import "./chunk-Y5E2WNWB.js";
|
|
46
|
+
import "./chunk-ZVVMGPBJ.js";
|
|
47
|
+
export {
|
|
48
|
+
PER_RUN,
|
|
49
|
+
createServer,
|
|
50
|
+
envelope,
|
|
51
|
+
serveOverHttpUntilStopped,
|
|
52
|
+
serveOverStdio
|
|
53
|
+
};
|
|
@@ -12,10 +12,10 @@ import {
|
|
|
12
12
|
readHttpLock,
|
|
13
13
|
readStored,
|
|
14
14
|
signedInClients
|
|
15
|
-
} from "./chunk-
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
15
|
+
} from "./chunk-6AW4DDK4.js";
|
|
16
|
+
import "./chunk-DZLHY4IA.js";
|
|
17
|
+
import "./chunk-VOTEB3AN.js";
|
|
18
|
+
import "./chunk-IOJ2DTCY.js";
|
|
19
19
|
import "./chunk-Y5E2WNWB.js";
|
|
20
20
|
import "./chunk-ZVVMGPBJ.js";
|
|
21
21
|
export {
|
|
@@ -8,9 +8,11 @@ import {
|
|
|
8
8
|
CONVERSATION_COLUMNS,
|
|
9
9
|
DEFAULT_AGENT_CLOSE,
|
|
10
10
|
DEFAULT_FIRST_PASS_PER_CHAT,
|
|
11
|
+
MAIL_AGENDA_COLUMNS,
|
|
11
12
|
MENTION_QUERY,
|
|
12
13
|
MENTION_STATUSES,
|
|
13
14
|
OTHER_SOURCES,
|
|
15
|
+
THREAD_COLUMNS,
|
|
14
16
|
TRACKED_CHAT_COLUMNS,
|
|
15
17
|
accountGroupsOf,
|
|
16
18
|
attachmentColumns,
|
|
@@ -53,16 +55,17 @@ import {
|
|
|
53
55
|
threadConversation,
|
|
54
56
|
titlePart,
|
|
55
57
|
vectorIndexCounts
|
|
56
|
-
} from "./chunk-
|
|
57
|
-
import "./chunk-
|
|
58
|
-
import "./chunk-
|
|
59
|
-
import "./chunk-
|
|
60
|
-
import "./chunk-
|
|
61
|
-
import "./chunk-
|
|
62
|
-
import "./chunk-
|
|
63
|
-
import "./chunk-
|
|
58
|
+
} from "./chunk-NVNUUHT5.js";
|
|
59
|
+
import "./chunk-R2JKPHH5.js";
|
|
60
|
+
import "./chunk-YOJLIVGO.js";
|
|
61
|
+
import "./chunk-3WDYHOAF.js";
|
|
62
|
+
import "./chunk-TJJ2XSJP.js";
|
|
63
|
+
import "./chunk-NH6LZ3H3.js";
|
|
64
|
+
import "./chunk-3MDNAYQA.js";
|
|
65
|
+
import "./chunk-CGFQT3LQ.js";
|
|
66
|
+
import "./chunk-62JRF2JA.js";
|
|
67
|
+
import "./chunk-IOJ2DTCY.js";
|
|
64
68
|
import "./chunk-Y5E2WNWB.js";
|
|
65
|
-
import "./chunk-Z7MSIRSQ.js";
|
|
66
69
|
import "./chunk-ZVVMGPBJ.js";
|
|
67
70
|
export {
|
|
68
71
|
AGENDA_COLUMNS,
|
|
@@ -72,9 +75,11 @@ export {
|
|
|
72
75
|
CONVERSATION_COLUMNS,
|
|
73
76
|
DEFAULT_AGENT_CLOSE,
|
|
74
77
|
DEFAULT_FIRST_PASS_PER_CHAT,
|
|
78
|
+
MAIL_AGENDA_COLUMNS,
|
|
75
79
|
MENTION_QUERY,
|
|
76
80
|
MENTION_STATUSES,
|
|
77
81
|
OTHER_SOURCES,
|
|
82
|
+
THREAD_COLUMNS,
|
|
78
83
|
TRACKED_CHAT_COLUMNS,
|
|
79
84
|
accountGroupsOf,
|
|
80
85
|
attachmentColumns,
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { createRequire as __bundleRequire } from "node:module";
|
|
2
|
+
const require = __bundleRequire(import.meta.url);
|
|
3
|
+
import {
|
|
4
|
+
buildStems,
|
|
5
|
+
storeMaintenanceCommands,
|
|
6
|
+
storeSummary
|
|
7
|
+
} from "./chunk-BVLPNNEL.js";
|
|
8
|
+
import "./chunk-IZKXJJ7V.js";
|
|
9
|
+
import "./chunk-5SAF3XOL.js";
|
|
10
|
+
import "./chunk-PIJUGF5F.js";
|
|
11
|
+
import "./chunk-G7W53MQP.js";
|
|
12
|
+
import "./chunk-2DAXUNTS.js";
|
|
13
|
+
import "./chunk-HTQTIKWP.js";
|
|
14
|
+
import "./chunk-AS2PJNQ2.js";
|
|
15
|
+
import "./chunk-7Z4HR6GO.js";
|
|
16
|
+
import "./chunk-DZLHY4IA.js";
|
|
17
|
+
import "./chunk-SOYOOU2D.js";
|
|
18
|
+
import "./chunk-R5RYPD23.js";
|
|
19
|
+
import "./chunk-LATYBJ4T.js";
|
|
20
|
+
import "./chunk-RJ7AS7UB.js";
|
|
21
|
+
import "./chunk-VXOR76ZL.js";
|
|
22
|
+
import "./chunk-U6QD3J3F.js";
|
|
23
|
+
import "./chunk-VOTEB3AN.js";
|
|
24
|
+
import "./chunk-NVNUUHT5.js";
|
|
25
|
+
import "./chunk-R2JKPHH5.js";
|
|
26
|
+
import "./chunk-YOJLIVGO.js";
|
|
27
|
+
import "./chunk-3WDYHOAF.js";
|
|
28
|
+
import "./chunk-TJJ2XSJP.js";
|
|
29
|
+
import "./chunk-NH6LZ3H3.js";
|
|
30
|
+
import "./chunk-3MDNAYQA.js";
|
|
31
|
+
import "./chunk-CGFQT3LQ.js";
|
|
32
|
+
import "./chunk-DQIBGCF3.js";
|
|
33
|
+
import "./chunk-45244QQ6.js";
|
|
34
|
+
import "./chunk-62JRF2JA.js";
|
|
35
|
+
import "./chunk-IOJ2DTCY.js";
|
|
36
|
+
import "./chunk-Y5E2WNWB.js";
|
|
37
|
+
import "./chunk-ZVVMGPBJ.js";
|
|
38
|
+
export {
|
|
39
|
+
buildStems,
|
|
40
|
+
storeMaintenanceCommands,
|
|
41
|
+
storeSummary
|
|
42
|
+
};
|
package/dist/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "0.
|
|
1
|
+
export declare const VERSION = "0.14.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const VERSION = "0.
|
|
1
|
+
export const VERSION = "0.14.0";
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
package/docs/commands.md
CHANGED
|
@@ -27,6 +27,7 @@ lists the profiles on this computer.
|
|
|
27
27
|
| `--max-output-bytes <bytes>` | maximum machine output bytes (default: 4194304; 0 disables). |
|
|
28
28
|
| `--brief` | found items as reference, title, time, author and excerpt only. |
|
|
29
29
|
| `--full` | found items with their whole text and every provider field. |
|
|
30
|
+
| `--compact` | one line per item for an agent: reference first, text last, paging and next steps as # lines. |
|
|
30
31
|
| `--dry-run` | preview parsed arguments and permissions before running the action. |
|
|
31
32
|
| `--yes` | go ahead without the question an ask level puts before a write. |
|
|
32
33
|
| `--record` | keep this run even where the config says record false; record_input false leaves the typed words out. |
|
|
@@ -228,13 +229,9 @@ the settings in force, and where each one came from
|
|
|
228
229
|
the profile, the profiles that exist, and each setting with where it came from
|
|
229
230
|
|
|
230
231
|
```sh
|
|
231
|
-
clidev config show
|
|
232
|
+
clidev config show
|
|
232
233
|
```
|
|
233
234
|
|
|
234
|
-
| Option | What it does |
|
|
235
|
-
|---|---|
|
|
236
|
-
| `--bot` | the settings a bot command on this profile gets, rather than the personal account's. |
|
|
237
|
-
|
|
238
235
|
**Returns:** the profile, the profiles that exist, and each setting with where it came from
|
|
239
236
|
|
|
240
237
|
**Example:** `clidev personal config show`
|
|
@@ -251,14 +248,12 @@ clidev config set <setting> <value> [options]
|
|
|
251
248
|
|
|
252
249
|
| Argument | | What it is |
|
|
253
250
|
|---|---|---|
|
|
254
|
-
| `setting` | required | one of: limit, timeout_ms, color, record, record_input, keep_runs_for_days, keep_successful_runs_for_days, runs_size_limit_mb, permissions, requests_per_minute,
|
|
251
|
+
| `setting` | required | one of: limit, timeout_ms, color, record, record_input, keep_runs_for_days, keep_successful_runs_for_days, runs_size_limit_mb, permissions, requests_per_minute, search_reranker, embedding_provider, embedding_model, embedding_base_url, embedding_dims, models, update_check, skill_hint, search_stemmers.cyrillic, search_stemmers.latin. |
|
|
255
252
|
| `value` | required | a number, true or false; for a group tg:work,max:Alice,email:me@x. |
|
|
256
253
|
|
|
257
254
|
| Option | What it does |
|
|
258
255
|
|---|---|
|
|
259
256
|
| `--defaults` | change what every profile gets, rather than this profile. |
|
|
260
|
-
| `--personal` | only for personal accounts — the personal section of the file. |
|
|
261
|
-
| `--bot` | only for bots — the bot section of the file. |
|
|
262
257
|
|
|
263
258
|
**Returns:** save a setting to the configuration file
|
|
264
259
|
|
|
@@ -276,18 +271,48 @@ clidev config unset <setting> [options]
|
|
|
276
271
|
|
|
277
272
|
| Argument | | What it is |
|
|
278
273
|
|---|---|---|
|
|
279
|
-
| `setting` | required | one of: limit, timeout_ms, color, record, record_input, keep_runs_for_days, keep_successful_runs_for_days, runs_size_limit_mb, permissions, requests_per_minute,
|
|
274
|
+
| `setting` | required | one of: limit, timeout_ms, color, record, record_input, keep_runs_for_days, keep_successful_runs_for_days, runs_size_limit_mb, permissions, requests_per_minute, search_reranker, embedding_provider, embedding_model, embedding_base_url, embedding_dims, models, update_check, skill_hint, search_stemmers.cyrillic, search_stemmers.latin. |
|
|
280
275
|
|
|
281
276
|
| Option | What it does |
|
|
282
277
|
|---|---|
|
|
283
278
|
| `--defaults` | change what every profile gets, rather than this profile. |
|
|
284
|
-
| `--personal` | only for personal accounts — the personal section of the file. |
|
|
285
|
-
| `--bot` | only for bots — the bot section of the file. |
|
|
286
279
|
|
|
287
280
|
**Returns:** remove a setting from the configuration file
|
|
288
281
|
|
|
289
282
|
**Example:** `clidev personal config unset limit`
|
|
290
283
|
|
|
284
|
+
### `clidev config migrate`
|
|
285
|
+
|
|
286
|
+
write each setting the file lacks at its default, keeping yours
|
|
287
|
+
|
|
288
|
+
**Changes something on this computer only.**
|
|
289
|
+
|
|
290
|
+
```sh
|
|
291
|
+
clidev config migrate
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
**Returns:** write each setting the file lacks at its default, keeping yours
|
|
295
|
+
|
|
296
|
+
**Example:** `clidev config migrate`
|
|
297
|
+
|
|
298
|
+
### `clidev config repair`
|
|
299
|
+
|
|
300
|
+
fix broken JSON syntax in the settings file — comments, a missing or extra comma, unquoted keys, single quotes, missing closing brackets at the end — keeping every value, with a backup beside it; refuses anything with more than one reading and changes nothing then
|
|
301
|
+
|
|
302
|
+
**Changes something on this computer only.**
|
|
303
|
+
|
|
304
|
+
```sh
|
|
305
|
+
clidev config repair [options]
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
| Option | What it does |
|
|
309
|
+
|---|---|
|
|
310
|
+
| `--dry-run` | say what it would fix, and change nothing. |
|
|
311
|
+
|
|
312
|
+
**Returns:** fix the settings file's JSON syntax, keeping every value
|
|
313
|
+
|
|
314
|
+
**Example:** `clidev config repair`, `clidev config repair --dry-run`
|
|
315
|
+
|
|
291
316
|
## `clidev runs`
|
|
292
317
|
|
|
293
318
|
recorded runs — what this tool did, and when
|
|
@@ -369,5 +394,6 @@ Branch on the code, not on the text: the text can change, the code does not.
|
|
|
369
394
|
| `12` | `provider_unavailable` |
|
|
370
395
|
| `13` | `invalid_response` |
|
|
371
396
|
| `14` | `outcome_unknown` |
|
|
397
|
+
| `15` | `conflict` |
|
|
372
398
|
| `130` | `cancelled` |
|
|
373
399
|
| `1` | anything else |
|
|
@@ -10,7 +10,7 @@ the first question of the [design interview](skills/design-interview/SKILL.md):
|
|
|
10
10
|
| calendar | [gcal-cli](https://github.com/WireCatLabs/gcal-cli) |
|
|
11
11
|
| meetings | [zoom-cli](https://github.com/WireCatLabs/zoom-cli) |
|
|
12
12
|
| notes | [cli-memo](https://github.com/WireCatLabs/cli-memo) |
|
|
13
|
-
| mail, other | none of its own yet: pick the nearest one with the owner. cli-memo [imports mail](https://github.com/WireCatLabs/cli-memo/blob/c2d21254ab360aed7149a3250d17e879283aa603/docs/mail.md) |
|
|
13
|
+
| mail, CRM, other | none of its own yet: pick the nearest one with the owner. cli-memo [imports mail](https://github.com/WireCatLabs/cli-memo/blob/c2d21254ab360aed7149a3250d17e879283aa603/docs/mail.md) |
|
|
14
14
|
|
|
15
15
|
A messenger CLI sets `messenger: true` in `src/identity.ts`, and `new --category messenger` writes it. Every other
|
|
16
16
|
category keeps the template's `messenger: false`, so the shared help and `commands` do not speak of chats, messages
|
|
@@ -10,8 +10,8 @@ this order, one at a time, and write each answer down as it comes. `npx @wirecat
|
|
|
10
10
|
questions in a terminal and takes them as flags without one; when `DESIGN.md` already has the answers, read them and
|
|
11
11
|
go to the further questions.
|
|
12
12
|
|
|
13
|
-
1. **What kind of tool is it?** messenger · mail · notes · files and documents · calendar · meetings ·
|
|
14
|
-
picks the reference CLI (see [Reference CLIs](../../reference-clis.md)).
|
|
13
|
+
1. **What kind of tool is it?** messenger · mail · notes · files and documents · calendar · meetings · CRM (sales:
|
|
14
|
+
deals, contacts, companies) · other. It picks the reference CLI (see [Reference CLIs](../../reference-clis.md)).
|
|
15
15
|
2. **Which languages is the content in?** Any languages, several allowed: the messages, documents or transcripts the
|
|
16
16
|
CLI handles. The answer picks the language-dependent parts: search stemming, the embedding and speech models.
|
|
17
17
|
3. **How does a person sign in?** OAuth in the browser · an API token or key · a session (phone code, QR) · none ·
|
package/docs/dev/test-matrix.md
CHANGED
|
@@ -7,7 +7,7 @@ ran it · ⛔ not tested offline, with the reason and where it is checked instea
|
|
|
7
7
|
Measured from the test run (`coverage/argv.jsonl`), not searched for — see
|
|
8
8
|
[TESTING.md](TESTING.md) for how, and for the states and failures that cut across commands.
|
|
9
9
|
|
|
10
|
-
**
|
|
10
|
+
**54 ✅ · 6 ⛔ · 0 ❌** — 21 commands, 39 options.
|
|
11
11
|
|
|
12
12
|
| Command | Option | | Note |
|
|
13
13
|
|---|---|---|---|
|
|
@@ -41,6 +41,9 @@ Measured from the test run (`coverage/argv.jsonl`), not searched for — see
|
|
|
41
41
|
| `config unset` | `--defaults` | ✅ | |
|
|
42
42
|
| `config unset` | `--personal` | ✅ | |
|
|
43
43
|
| `config unset` | `--bot` | ✅ | |
|
|
44
|
+
| `config migrate` | | ✅ | |
|
|
45
|
+
| `config repair` | | ✅ | |
|
|
46
|
+
| `config repair` | `--dry-run` | ✅ | |
|
|
44
47
|
| `runs list` | | ✅ | |
|
|
45
48
|
| `runs list` | `--limit` | ✅ | |
|
|
46
49
|
| `runs list` | `--page` | ✅ | |
|
|
@@ -62,6 +65,7 @@ Measured from the test run (`coverage/argv.jsonl`), not searched for — see
|
|
|
62
65
|
| *global* | `--max-output-bytes` | ✅ | |
|
|
63
66
|
| *global* | `--brief` | ✅ | |
|
|
64
67
|
| *global* | `--full` | ✅ | |
|
|
68
|
+
| *global* | `--compact` | ✅ | |
|
|
65
69
|
| *global* | `--dry-run` | ✅ | |
|
|
66
70
|
| *global* | `--yes` | ✅ | |
|
|
67
71
|
| *global* | `--record` | ✅ | |
|
package/kit/dist/interview.js
CHANGED
package/kit/dist/new.js
CHANGED
|
@@ -117,8 +117,8 @@ export const designDoc = (names, answers) => {
|
|
|
117
117
|
"3. Ask the further questions in the interview that the reference CLI does not answer, and write the answers here.",
|
|
118
118
|
" Build only after the owner has read this page.",
|
|
119
119
|
"4. When the first command reaches the service, rewrite `README.md`, `docs/index.md` and the description in",
|
|
120
|
-
` \`skills/${names.name}/SKILL.md\` to say what the tool does and who it is for. Rewrite the
|
|
121
|
-
" instructions in `src/mcp.ts` too: name the kinds of outside text the CLI carries (WC-MCP-11).",
|
|
120
|
+
` \`package.json\` and \`skills/${names.name}/SKILL.md\` to say what the tool does and who it is for. Rewrite the`,
|
|
121
|
+
" MCP server's instructions in `src/mcp.ts` too: name the kinds of outside text the CLI carries (WC-MCP-11).",
|
|
122
122
|
"",
|
|
123
123
|
"## Answers",
|
|
124
124
|
"",
|
|
@@ -157,7 +157,12 @@ export const cliPackageJson = (text, names) => {
|
|
|
157
157
|
throw new Error("package.json must be a JSON object");
|
|
158
158
|
const isKit = (value) => typeof value === "string" && /^(\.\/)?kit(\/|$)/.test(value);
|
|
159
159
|
const repoUrl = `git+https://github.com/${names.owner}/${names.name}.git`;
|
|
160
|
-
const next = {
|
|
160
|
+
const next = {
|
|
161
|
+
...pkg,
|
|
162
|
+
name: names.package,
|
|
163
|
+
version: "0.0.0",
|
|
164
|
+
description: "A new WireCat CLI, started from cli-template",
|
|
165
|
+
};
|
|
161
166
|
const bin = typeof pkg.bin === "object" && pkg.bin ? pkg.bin : {};
|
|
162
167
|
next.bin = {
|
|
163
168
|
...Object.fromEntries(Object.entries(bin).filter(([, value]) => !isKit(value))),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wirecat/cli-template",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.14.0",
|
|
4
4
|
"description": "Start a new WireCat CLI: a working skeleton on cli-base and cli-core, copied by new and kept current by upgrade",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Viacheslav Ptsarev",
|
|
@@ -87,8 +87,8 @@
|
|
|
87
87
|
},
|
|
88
88
|
"dependencies": {
|
|
89
89
|
"@modelcontextprotocol/server": "2.4.0",
|
|
90
|
-
"@wirecat/cli-base": "0.
|
|
91
|
-
"@wirecat/cli-core": "0.
|
|
90
|
+
"@wirecat/cli-base": "0.77.1",
|
|
91
|
+
"@wirecat/cli-core": "0.584.0",
|
|
92
92
|
"commander": "15.0.0"
|
|
93
93
|
},
|
|
94
94
|
"devDependencies": {
|
package/src/program.test.ts
CHANGED
|
@@ -177,3 +177,59 @@ it("a failed run keeps the words typed, and record_input false masks them", asyn
|
|
|
177
177
|
expect((await ran(["personal", "config", "unset", "record_input"])).code).toBe(0)
|
|
178
178
|
}
|
|
179
179
|
})
|
|
180
|
+
|
|
181
|
+
it("runs list --compact prints one plain line per run and the next page as a # line, not JSON", async () => {
|
|
182
|
+
for (const _ of [1, 2]) expect((await ran(["--no-such-flag"])).code).toBe(2)
|
|
183
|
+
const { code, out } = await ran(["runs", "list", "--limit", "1", "--compact"])
|
|
184
|
+
expect(code).toBe(0)
|
|
185
|
+
expect(out.trim().split("\n")).toEqual([
|
|
186
|
+
expect.stringContaining("failed"),
|
|
187
|
+
"# more: clidev runs list --page 2 --limit 1 --compact",
|
|
188
|
+
])
|
|
189
|
+
expect(() => JSON.parse(out)).toThrow()
|
|
190
|
+
})
|
|
191
|
+
|
|
192
|
+
it("config migrate writes the missing defaults, keeps the owner's value, and repeats as a no-op", async () => {
|
|
193
|
+
const file = join(process.env.CLIDEV_CONFIG_DIR ?? "", "config.json")
|
|
194
|
+
mkdirSync(join(file, ".."), { recursive: true })
|
|
195
|
+
writeFileSync(file, '{ "defaults": { "limit": 5 } }')
|
|
196
|
+
try {
|
|
197
|
+
const first = await ran(["config", "migrate", "--json"])
|
|
198
|
+
expect(first.code).toBe(0)
|
|
199
|
+
expect(json(first.out).item.added).toContain("defaults.record")
|
|
200
|
+
expect(JSON.parse(readFileSync(file, "utf8")).defaults).toMatchObject({ limit: 5, record: expect.any(Boolean) })
|
|
201
|
+
const again = await ran(["config", "migrate", "--json"])
|
|
202
|
+
expect(json(again.out).item.added).toEqual([])
|
|
203
|
+
} finally {
|
|
204
|
+
rmSync(file)
|
|
205
|
+
}
|
|
206
|
+
})
|
|
207
|
+
|
|
208
|
+
it("config repair --dry-run changes nothing, and config repair fixes the JSON with a backup", async () => {
|
|
209
|
+
const dir = process.env.CLIDEV_CONFIG_DIR ?? ""
|
|
210
|
+
const file = join(dir, "config.json")
|
|
211
|
+
const broken = '{ "defaults": { "limit": 5, }, }'
|
|
212
|
+
mkdirSync(dir, { recursive: true })
|
|
213
|
+
writeFileSync(file, broken)
|
|
214
|
+
let backup = ""
|
|
215
|
+
try {
|
|
216
|
+
const preview = await ran(["config", "repair", "--dry-run", "--json"])
|
|
217
|
+
expect(preview.code).toBe(0)
|
|
218
|
+
expect(json(preview.out).item).toMatchObject({ dry_run: true, repaired: false, backup: null })
|
|
219
|
+
expect(readFileSync(file, "utf8")).toBe(broken)
|
|
220
|
+
|
|
221
|
+
const fixed = await ran(["config", "repair", "--json"])
|
|
222
|
+
expect(fixed.code).toBe(0)
|
|
223
|
+
const item = json(fixed.out).item
|
|
224
|
+
expect(item).toMatchObject({
|
|
225
|
+
repaired: true,
|
|
226
|
+
changes: expect.arrayContaining([{ kind: "trailing_comma", line: 1 }]),
|
|
227
|
+
})
|
|
228
|
+
backup = String(item.backup)
|
|
229
|
+
expect(readFileSync(backup, "utf8")).toBe(broken)
|
|
230
|
+
expect(JSON.parse(readFileSync(file, "utf8"))).toEqual({ defaults: { limit: 5 } })
|
|
231
|
+
} finally {
|
|
232
|
+
rmSync(file)
|
|
233
|
+
if (backup) rmSync(backup)
|
|
234
|
+
}
|
|
235
|
+
})
|
package/src/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const VERSION = "0.
|
|
1
|
+
export const VERSION = "0.14.0"
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { createRequire as __bundleRequire } from "node:module";
|
|
2
|
-
const require = __bundleRequire(import.meta.url);
|
|
3
|
-
import {
|
|
4
|
-
resolvePaths
|
|
5
|
-
} from "./chunk-EFHLQXG6.js";
|
|
6
|
-
import {
|
|
7
|
-
__name
|
|
8
|
-
} from "./chunk-ZVVMGPBJ.js";
|
|
9
|
-
|
|
10
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.495.0_@wirecat+cli-base@0.65.0_commander@15.0.0_esbuild@0.28.2_type_24cca5e5c8b0984f2f26e7d1ba6b6d47/node_modules/@wirecat/cli-core/dist/store/path.js
|
|
11
|
-
import { join } from "node:path";
|
|
12
|
-
var wirecatDirectory = /* @__PURE__ */ __name((env = process.env, platform) => resolvePaths({ appName: "WireCat", prefix: "WIRECAT", env, ...platform ? { platform } : {} }).state, "wirecatDirectory");
|
|
13
|
-
var storePath = /* @__PURE__ */ __name((env = process.env) => env.MESSAGING_STORE ?? join(wirecatDirectory(env), "wirecat.db"), "storePath");
|
|
14
|
-
|
|
15
|
-
export {
|
|
16
|
-
wirecatDirectory,
|
|
17
|
-
storePath
|
|
18
|
-
};
|