@letrquan/book 0.2.0 → 0.4.0-beta.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 +3771 -40
- package/README.md +135 -1311
- package/dist/additional-roots-VAWRQ625.js +32 -0
- package/dist/{app-MOXXWEOY.js → app-J7BVPSUH.js} +9648 -5509
- package/dist/app-J7BVPSUH.js.map +1 -0
- package/dist/chunk-2AAOF5B5.js +28 -0
- package/dist/chunk-2AAOF5B5.js.map +1 -0
- package/dist/chunk-32WBCUAN.js +660 -0
- package/dist/chunk-32WBCUAN.js.map +1 -0
- package/dist/chunk-4DKHLZRI.js +120 -0
- package/dist/chunk-4DKHLZRI.js.map +1 -0
- package/dist/{chunk-CAGOB2N4.js → chunk-62EEAUID.js} +6 -4
- package/dist/chunk-62EEAUID.js.map +1 -0
- package/dist/chunk-AHC7OU75.js +1124 -0
- package/dist/chunk-AHC7OU75.js.map +1 -0
- package/dist/{chunk-E75IPST5.js → chunk-AJZWLKLQ.js} +73 -70
- package/dist/chunk-AJZWLKLQ.js.map +1 -0
- package/dist/chunk-B5FC3MYZ.js +395 -0
- package/dist/chunk-B5FC3MYZ.js.map +1 -0
- package/dist/{chunk-KWHQ2XXL.js → chunk-DNFQTSMJ.js} +55 -13
- package/dist/chunk-DNFQTSMJ.js.map +1 -0
- package/dist/{chunk-J7MIZ5CA.js → chunk-E5WLQSKA.js} +719 -89
- package/dist/chunk-E5WLQSKA.js.map +1 -0
- package/dist/chunk-ECLC4CIJ.js +1181 -0
- package/dist/chunk-ECLC4CIJ.js.map +1 -0
- package/dist/chunk-EEX6QNXV.js +127 -0
- package/dist/chunk-EEX6QNXV.js.map +1 -0
- package/dist/chunk-EFXVSQ5J.js +931 -0
- package/dist/chunk-EFXVSQ5J.js.map +1 -0
- package/dist/{chunk-V4BOYR52.js → chunk-ENLB7NYV.js} +1304 -326
- package/dist/chunk-ENLB7NYV.js.map +1 -0
- package/dist/chunk-FPR7SKIE.js +6926 -0
- package/dist/chunk-FPR7SKIE.js.map +1 -0
- package/dist/{chunk-DGMQEI6Y.js → chunk-HFB74CLM.js} +30 -9
- package/dist/chunk-HFB74CLM.js.map +1 -0
- package/dist/{chunk-5RDRAO4B.js → chunk-HOZXKOE3.js} +37 -1
- package/dist/chunk-HOZXKOE3.js.map +1 -0
- package/dist/chunk-IDYWN37T.js +36 -0
- package/dist/chunk-IDYWN37T.js.map +1 -0
- package/dist/chunk-J4F2QLM2.js +273 -0
- package/dist/chunk-J4F2QLM2.js.map +1 -0
- package/dist/chunk-JGF5HLSI.js +1065 -0
- package/dist/chunk-JGF5HLSI.js.map +1 -0
- package/dist/{chunk-XIFFTATU.js → chunk-KDNWMKXV.js} +7166 -4237
- package/dist/chunk-KDNWMKXV.js.map +1 -0
- package/dist/chunk-KXAYUIKP.js +90 -0
- package/dist/chunk-KXAYUIKP.js.map +1 -0
- package/dist/{chunk-3U5IBM24.js → chunk-MEOB2DZA.js} +12 -2
- package/dist/chunk-MEOB2DZA.js.map +1 -0
- package/dist/{chunk-WKBO5R4O.js → chunk-MV5PQNIA.js} +2 -2
- package/dist/chunk-MV5PQNIA.js.map +1 -0
- package/dist/chunk-N2G4Q7ME.js +2672 -0
- package/dist/chunk-N2G4Q7ME.js.map +1 -0
- package/dist/chunk-OJBMDM5H.js +299 -0
- package/dist/chunk-OJBMDM5H.js.map +1 -0
- package/dist/{chunk-URLQAXTR.js → chunk-PTDC7ZUP.js} +2 -2
- package/dist/chunk-PTDC7ZUP.js.map +1 -0
- package/dist/{chunk-574C6MQR.js → chunk-REASC2QG.js} +173 -64
- package/dist/chunk-REASC2QG.js.map +1 -0
- package/dist/{chunk-7N4J557C.js → chunk-RT5SATF7.js} +1 -1
- package/dist/chunk-RT5SATF7.js.map +1 -0
- package/dist/chunk-SBTU5BEC.js +114 -0
- package/dist/chunk-SBTU5BEC.js.map +1 -0
- package/dist/{chunk-5KLVH3PY.js → chunk-SWPDKLNM.js} +5 -3
- package/dist/chunk-SWPDKLNM.js.map +1 -0
- package/dist/chunk-UCFJ43OS.js +520 -0
- package/dist/chunk-UCFJ43OS.js.map +1 -0
- package/dist/{chunk-VZQXX3WW.js → chunk-W7SLYS3M.js} +80 -16
- package/dist/chunk-W7SLYS3M.js.map +1 -0
- package/dist/{chunk-ANSJPYGI.js → chunk-WV3O5PGX.js} +3 -3
- package/dist/chunk-WV3O5PGX.js.map +1 -0
- package/dist/chunk-XHAO3K7I.js +18 -0
- package/dist/chunk-XHAO3K7I.js.map +1 -0
- package/dist/chunk-XJRJVXJR.js +1050 -0
- package/dist/chunk-XJRJVXJR.js.map +1 -0
- package/dist/chunk-YIL6HTJX.js +663 -0
- package/dist/chunk-YIL6HTJX.js.map +1 -0
- package/dist/{chunk-24AXE6SP.js → chunk-ZPSZZUWF.js} +1 -1
- package/dist/chunk-ZPSZZUWF.js.map +1 -0
- package/dist/{command-approvals-6Y57VCWZ.js → command-approvals-ZRY66LCW.js} +7 -5
- package/dist/context-C3RAP6K5.js +41 -0
- package/dist/{hook-approvals-CTUFKEJT.js → hook-approvals-DPQD5H65.js} +6 -5
- package/dist/index.js +947 -203
- package/dist/index.js.map +1 -1
- package/dist/{interactive-assets-CCAAWVKH.js → interactive-assets-73AQO5WP.js} +18 -9
- package/dist/interactive-assets-73AQO5WP.js.map +1 -0
- package/dist/job-runner.js +166 -111
- package/dist/job-runner.js.map +1 -1
- package/dist/job-supervisor.d.ts +2 -0
- package/dist/job-supervisor.js +121 -0
- package/dist/job-supervisor.js.map +1 -0
- package/dist/loader-DQNPDKOX.js +27 -0
- package/dist/{mcp-approvals-WNPH65BK.js → mcp-approvals-27LJYADQ.js} +6 -5
- package/dist/{mcp-config-YIJIES2C.js → mcp-config-GXSODNCM.js} +4 -3
- package/dist/memory-store-I6Z54VUN.js +51 -0
- package/dist/{model-window-store-YFVNXCIP.js → model-window-store-6VKXXTPJ.js} +9 -4
- package/dist/openai-compatible-IPUNBJ53.js +16 -0
- package/dist/permission-approvals-Q5IMFEZI.js +15 -0
- package/dist/permissions-7Y35X6HZ.js +62 -0
- package/dist/provider-approvals-5AGH3RVT.js +76 -0
- package/dist/sandbox-N2RY72GN.js +42 -0
- package/dist/{scrollback-LUKLIBVI.js → scrollback-GD76GNM4.js} +44 -26
- package/dist/scrollback-GD76GNM4.js.map +1 -0
- package/dist/sdk.d.ts +2739 -2069
- package/dist/sdk.js +77 -42
- package/dist/sdk.js.map +1 -1
- package/dist/settings-loader-KDBH45AQ.js +43 -0
- package/dist/settings-loader-KDBH45AQ.js.map +1 -0
- package/dist/{settings-removed-JWWPT4WA.js → settings-removed-3ATWJEF3.js} +2 -2
- package/dist/settings-removed-3ATWJEF3.js.map +1 -0
- package/dist/shell-selection-Z5WORZU4.js +31 -0
- package/dist/shell-selection-Z5WORZU4.js.map +1 -0
- package/package.json +25 -24
- package/dist/app-MOXXWEOY.js.map +0 -1
- package/dist/chunk-24AXE6SP.js.map +0 -1
- package/dist/chunk-3U5IBM24.js.map +0 -1
- package/dist/chunk-574C6MQR.js.map +0 -1
- package/dist/chunk-5GDZ22YP.js +0 -449
- package/dist/chunk-5GDZ22YP.js.map +0 -1
- package/dist/chunk-5KLVH3PY.js.map +0 -1
- package/dist/chunk-5RDRAO4B.js.map +0 -1
- package/dist/chunk-7N4J557C.js.map +0 -1
- package/dist/chunk-A7JLBK2Y.js +0 -3506
- package/dist/chunk-A7JLBK2Y.js.map +0 -1
- package/dist/chunk-ANSJPYGI.js.map +0 -1
- package/dist/chunk-BTZZUCLI.js +0 -264
- package/dist/chunk-BTZZUCLI.js.map +0 -1
- package/dist/chunk-C7D4NJ2D.js +0 -217
- package/dist/chunk-C7D4NJ2D.js.map +0 -1
- package/dist/chunk-CAGOB2N4.js.map +0 -1
- package/dist/chunk-DGMQEI6Y.js.map +0 -1
- package/dist/chunk-E75IPST5.js.map +0 -1
- package/dist/chunk-EYGD6X2T.js +0 -180
- package/dist/chunk-EYGD6X2T.js.map +0 -1
- package/dist/chunk-GTVB4HEM.js +0 -765
- package/dist/chunk-GTVB4HEM.js.map +0 -1
- package/dist/chunk-J7MIZ5CA.js.map +0 -1
- package/dist/chunk-KWHQ2XXL.js.map +0 -1
- package/dist/chunk-L6LK2QIQ.js +0 -657
- package/dist/chunk-L6LK2QIQ.js.map +0 -1
- package/dist/chunk-MAQXCUR4.js +0 -1007
- package/dist/chunk-MAQXCUR4.js.map +0 -1
- package/dist/chunk-S4XL7HOM.js +0 -402
- package/dist/chunk-S4XL7HOM.js.map +0 -1
- package/dist/chunk-URLQAXTR.js.map +0 -1
- package/dist/chunk-V4BOYR52.js.map +0 -1
- package/dist/chunk-VZQXX3WW.js.map +0 -1
- package/dist/chunk-WKBO5R4O.js.map +0 -1
- package/dist/chunk-XIFFTATU.js.map +0 -1
- package/dist/context-ZC5IFEAX.js +0 -25
- package/dist/interactive-assets-CCAAWVKH.js.map +0 -1
- package/dist/loader-4IDS2RIE.js +0 -15
- package/dist/openai-compatible-RHZUBHV6.js +0 -10
- package/dist/permission-approvals-76PVREFD.js +0 -14
- package/dist/permissions-CHCKTFQQ.js +0 -28
- package/dist/sandbox-CNVAQDA7.js +0 -23
- package/dist/scrollback-LUKLIBVI.js.map +0 -1
- package/dist/settings-loader-M2QP5TX2.js +0 -21
- package/dist/shell-selection-V6QAYXPX.js +0 -17
- package/patches/ink+6.8.0.patch +0 -13
- package/scripts/apply-ink-patch.mjs +0 -29
- package/scripts/ink-patch.mjs +0 -59
- package/scripts/verify-ink-patch.mjs +0 -11
- /package/dist/{command-approvals-6Y57VCWZ.js.map → additional-roots-VAWRQ625.js.map} +0 -0
- /package/dist/{context-ZC5IFEAX.js.map → command-approvals-ZRY66LCW.js.map} +0 -0
- /package/dist/{hook-approvals-CTUFKEJT.js.map → context-C3RAP6K5.js.map} +0 -0
- /package/dist/{loader-4IDS2RIE.js.map → hook-approvals-DPQD5H65.js.map} +0 -0
- /package/dist/{mcp-approvals-WNPH65BK.js.map → loader-DQNPDKOX.js.map} +0 -0
- /package/dist/{mcp-config-YIJIES2C.js.map → mcp-approvals-27LJYADQ.js.map} +0 -0
- /package/dist/{model-window-store-YFVNXCIP.js.map → mcp-config-GXSODNCM.js.map} +0 -0
- /package/dist/{openai-compatible-RHZUBHV6.js.map → memory-store-I6Z54VUN.js.map} +0 -0
- /package/dist/{permission-approvals-76PVREFD.js.map → model-window-store-6VKXXTPJ.js.map} +0 -0
- /package/dist/{permissions-CHCKTFQQ.js.map → openai-compatible-IPUNBJ53.js.map} +0 -0
- /package/dist/{sandbox-CNVAQDA7.js.map → permission-approvals-Q5IMFEZI.js.map} +0 -0
- /package/dist/{settings-loader-M2QP5TX2.js.map → permissions-7Y35X6HZ.js.map} +0 -0
- /package/dist/{settings-removed-JWWPT4WA.js.map → provider-approvals-5AGH3RVT.js.map} +0 -0
- /package/dist/{shell-selection-V6QAYXPX.js.map → sandbox-N2RY72GN.js.map} +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@letrquan/book",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0-beta.0",
|
|
4
4
|
"description": "AI coding agent CLI with rich TUI",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "PolyForm-Small-Business-1.0.0",
|
|
@@ -24,18 +24,14 @@
|
|
|
24
24
|
"agent"
|
|
25
25
|
],
|
|
26
26
|
"engines": {
|
|
27
|
-
"node": ">=22.
|
|
27
|
+
"node": ">=22.19.0"
|
|
28
28
|
},
|
|
29
29
|
"packageManager": "npm@11.16.0",
|
|
30
30
|
"files": [
|
|
31
31
|
"dist",
|
|
32
32
|
"README.md",
|
|
33
33
|
"CHANGELOG.md",
|
|
34
|
-
"LICENSE"
|
|
35
|
-
"patches/ink+6.8.0.patch",
|
|
36
|
-
"scripts/apply-ink-patch.mjs",
|
|
37
|
-
"scripts/ink-patch.mjs",
|
|
38
|
-
"scripts/verify-ink-patch.mjs"
|
|
34
|
+
"LICENSE"
|
|
39
35
|
],
|
|
40
36
|
"publishConfig": {
|
|
41
37
|
"access": "public"
|
|
@@ -58,8 +54,7 @@
|
|
|
58
54
|
"scripts": {
|
|
59
55
|
"build": "tsup",
|
|
60
56
|
"dev": "tsx src/index.ts",
|
|
61
|
-
"
|
|
62
|
-
"typecheck": "tsc --noEmit",
|
|
57
|
+
"typecheck": "tsc --noEmit && tsc -p tsconfig.scripts.json",
|
|
63
58
|
"pretest": "npm run build",
|
|
64
59
|
"test": "npm run test:unit && npm run test:contract && npm run test:integration",
|
|
65
60
|
"test:unit": "vitest run --config vitest.unit.config.ts",
|
|
@@ -68,22 +63,24 @@
|
|
|
68
63
|
"test:watch": "vitest",
|
|
69
64
|
"test:coverage": "vitest run --coverage --config vitest.coverage.config.ts",
|
|
70
65
|
"bench:ui": "node scripts/run-ui-benchmark.mjs",
|
|
71
|
-
"verify:ink
|
|
66
|
+
"verify:ink": "tsx scripts/verify-ink.ts",
|
|
72
67
|
"bench:runtime": "tsx src/tui/__benchmarks__/runtime.bench.ts",
|
|
73
68
|
"eval:edit": "tsx scripts/edit-eval.ts",
|
|
74
69
|
"eval:compact": "tsx scripts/compact-eval.ts",
|
|
70
|
+
"eval:compact-replay": "tsx scripts/compact-replay.ts",
|
|
71
|
+
"eval:memory": "tsx scripts/memory-eval.ts",
|
|
75
72
|
"eval:skills": "tsx scripts/skill-eval.ts",
|
|
76
73
|
"eval:review": "tsx scripts/review-eval.ts",
|
|
77
|
-
"
|
|
74
|
+
"eval:prompt": "tsx scripts/prompt-eval.ts",
|
|
78
75
|
"lint": "eslint src/ --ext .ts,.tsx --max-warnings 0",
|
|
79
|
-
"format": "prettier --write \"src/**/*.{ts,tsx}\"",
|
|
80
|
-
"format:check": "prettier --check \"{src,scripts}/**/*.{ts,tsx}\" \"*.config.ts\"",
|
|
76
|
+
"format": "prettier --write \"{src,scripts}/**/*.{ts,tsx}\" \"*.config.ts\" \"*.md\" \"docs/**/*.md\"",
|
|
77
|
+
"format:check": "prettier --check \"{src,scripts}/**/*.{ts,tsx}\" \"*.config.ts\" \"*.md\" \"docs/**/*.md\"",
|
|
81
78
|
"architecture:check": "tsx scripts/check-architecture.ts",
|
|
82
79
|
"deadcode:check": "knip",
|
|
83
80
|
"deadcode:report": "knip --reporter markdown --no-exit-code",
|
|
84
81
|
"deadcode:json": "knip --reporter json --no-exit-code",
|
|
85
|
-
"audit:prod": "
|
|
86
|
-
"audit:all": "
|
|
82
|
+
"audit:prod": "tsx scripts/audit-gate.ts --omit=dev",
|
|
83
|
+
"audit:all": "tsx scripts/audit-gate.ts",
|
|
87
84
|
"version:check": "tsx scripts/verify-release.ts",
|
|
88
85
|
"package:smoke": "npm run build && tsx scripts/package-smoke.ts",
|
|
89
86
|
"release:check": "npm run version:check && npm run audit:all && npm run package:smoke",
|
|
@@ -94,26 +91,28 @@
|
|
|
94
91
|
"@modelcontextprotocol/sdk": "^1.30.0",
|
|
95
92
|
"commander": "15.0.0",
|
|
96
93
|
"cross-spawn": "^7.0.6",
|
|
97
|
-
"fast-glob": "^3.3.0",
|
|
98
94
|
"fuse.js": "^7.5.0",
|
|
99
95
|
"htmlparser2": "^12.0.0",
|
|
100
96
|
"ignore": "^7.0.6",
|
|
101
|
-
"ink": "
|
|
97
|
+
"ink": "7.1.1",
|
|
102
98
|
"ink-text-input": "^6.0.0",
|
|
103
99
|
"marked": "^18.0.9",
|
|
100
|
+
"picomatch": "^4.0.7",
|
|
104
101
|
"react": "^19.2.8",
|
|
102
|
+
"tinyglobby": "^0.2.17",
|
|
105
103
|
"turndown": "^7.2.4",
|
|
106
|
-
"undici": "^
|
|
107
|
-
"zod": "
|
|
104
|
+
"undici": "^8.11.2",
|
|
105
|
+
"zod": "4.6.5"
|
|
108
106
|
},
|
|
109
107
|
"devDependencies": {
|
|
110
108
|
"@eslint/js": "^10.0.1",
|
|
111
109
|
"@types/cross-spawn": "^6.0.6",
|
|
112
110
|
"@types/node": "^26.2.0",
|
|
111
|
+
"@types/picomatch": "^4.0.3",
|
|
113
112
|
"@types/react": "^19.2.18",
|
|
114
113
|
"@types/turndown": "^5.0.6",
|
|
115
|
-
"@typescript-eslint/eslint-plugin": "8.
|
|
116
|
-
"@typescript-eslint/parser": "8.
|
|
114
|
+
"@typescript-eslint/eslint-plugin": "8.71.0",
|
|
115
|
+
"@typescript-eslint/parser": "8.71.0",
|
|
117
116
|
"@vitest/coverage-v8": "^4.1.9",
|
|
118
117
|
"@xterm/headless": "^6.0.0",
|
|
119
118
|
"eslint": "^10.8.1",
|
|
@@ -122,18 +121,20 @@
|
|
|
122
121
|
"ink-testing-library": "^4.0.0",
|
|
123
122
|
"knip": "^6.32.2",
|
|
124
123
|
"node-pty": "^1.1.0",
|
|
125
|
-
"patch-package": "^8.0.1",
|
|
126
124
|
"prettier": "^3.9.6",
|
|
125
|
+
"sharp": "^0.35.4",
|
|
127
126
|
"tinybench": "^6.1.3",
|
|
128
127
|
"tsup": "^8.5.0",
|
|
129
128
|
"tsx": "^4.23.12",
|
|
130
129
|
"typescript": "5.9.3",
|
|
131
|
-
"vitest": "^4.1.
|
|
130
|
+
"vitest": "^4.1.11"
|
|
132
131
|
},
|
|
133
132
|
"overrides": {
|
|
134
133
|
"postcss": "8.5.26",
|
|
134
|
+
"sharp": "$sharp",
|
|
135
135
|
"adm-zip": "^0.6.0",
|
|
136
|
-
"fast-uri": "^3.1.7"
|
|
136
|
+
"fast-uri": "^3.1.7",
|
|
137
|
+
"esbuild": "0.28.1"
|
|
137
138
|
},
|
|
138
139
|
"allowScripts": {
|
|
139
140
|
"esbuild@0.27.7": true,
|