noah-cursor 1.5.9 → 1.5.10

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.
Files changed (169) hide show
  1. package/README.md +253 -182
  2. package/dist/commands/add.d.ts.map +1 -1
  3. package/dist/commands/add.js +2 -1
  4. package/dist/commands/add.js.map +1 -1
  5. package/dist/commands/analyze.d.ts +3 -0
  6. package/dist/commands/analyze.d.ts.map +1 -0
  7. package/dist/commands/analyze.js +48 -0
  8. package/dist/commands/analyze.js.map +1 -0
  9. package/dist/commands/auth.d.ts +3 -0
  10. package/dist/commands/auth.d.ts.map +1 -0
  11. package/dist/commands/auth.js +67 -0
  12. package/dist/commands/auth.js.map +1 -0
  13. package/dist/commands/bootstrap.d.ts +3 -0
  14. package/dist/commands/bootstrap.d.ts.map +1 -0
  15. package/dist/commands/bootstrap.js +92 -0
  16. package/dist/commands/bootstrap.js.map +1 -0
  17. package/dist/commands/config.d.ts +3 -0
  18. package/dist/commands/config.d.ts.map +1 -0
  19. package/dist/commands/config.js +109 -0
  20. package/dist/commands/config.js.map +1 -0
  21. package/dist/commands/dashboard.d.ts +3 -0
  22. package/dist/commands/dashboard.d.ts.map +1 -0
  23. package/dist/commands/dashboard.js +21 -0
  24. package/dist/commands/dashboard.js.map +1 -0
  25. package/dist/commands/doctor.d.ts.map +1 -1
  26. package/dist/commands/doctor.js +3 -2
  27. package/dist/commands/doctor.js.map +1 -1
  28. package/dist/commands/explain.d.ts +3 -0
  29. package/dist/commands/explain.d.ts.map +1 -0
  30. package/dist/commands/explain.js +27 -0
  31. package/dist/commands/explain.js.map +1 -0
  32. package/dist/commands/favorite.d.ts +3 -0
  33. package/dist/commands/favorite.d.ts.map +1 -0
  34. package/dist/commands/favorite.js +64 -0
  35. package/dist/commands/favorite.js.map +1 -0
  36. package/dist/commands/install.d.ts +3 -0
  37. package/dist/commands/install.d.ts.map +1 -0
  38. package/dist/commands/install.js +83 -0
  39. package/dist/commands/install.js.map +1 -0
  40. package/dist/commands/new.d.ts +3 -0
  41. package/dist/commands/new.d.ts.map +1 -0
  42. package/dist/commands/new.js +27 -0
  43. package/dist/commands/new.js.map +1 -0
  44. package/dist/commands/plugin.d.ts +3 -0
  45. package/dist/commands/plugin.d.ts.map +1 -0
  46. package/dist/commands/plugin.js +39 -0
  47. package/dist/commands/plugin.js.map +1 -0
  48. package/dist/commands/preview.d.ts +3 -0
  49. package/dist/commands/preview.d.ts.map +1 -0
  50. package/dist/commands/preview.js +25 -0
  51. package/dist/commands/preview.js.map +1 -0
  52. package/dist/commands/publish.d.ts +3 -0
  53. package/dist/commands/publish.d.ts.map +1 -0
  54. package/dist/commands/publish.js +22 -0
  55. package/dist/commands/publish.js.map +1 -0
  56. package/dist/commands/recent.d.ts +3 -0
  57. package/dist/commands/recent.d.ts.map +1 -0
  58. package/dist/commands/recent.js +27 -0
  59. package/dist/commands/recent.js.map +1 -0
  60. package/dist/commands/remove.d.ts.map +1 -1
  61. package/dist/commands/remove.js +2 -1
  62. package/dist/commands/remove.js.map +1 -1
  63. package/dist/commands/search.d.ts.map +1 -1
  64. package/dist/commands/search.js +39 -2
  65. package/dist/commands/search.js.map +1 -1
  66. package/dist/commands/try.d.ts +3 -0
  67. package/dist/commands/try.d.ts.map +1 -0
  68. package/dist/commands/try.js +22 -0
  69. package/dist/commands/try.js.map +1 -0
  70. package/dist/commands/undo.d.ts +3 -0
  71. package/dist/commands/undo.d.ts.map +1 -0
  72. package/dist/commands/undo.js +24 -0
  73. package/dist/commands/undo.js.map +1 -0
  74. package/dist/commands/uninstall.d.ts +3 -0
  75. package/dist/commands/uninstall.d.ts.map +1 -0
  76. package/dist/commands/uninstall.js +52 -0
  77. package/dist/commands/uninstall.js.map +1 -0
  78. package/dist/commands/update.d.ts.map +1 -1
  79. package/dist/commands/update.js +2 -1
  80. package/dist/commands/update.js.map +1 -1
  81. package/dist/commands/wizard.d.ts +3 -0
  82. package/dist/commands/wizard.d.ts.map +1 -0
  83. package/dist/commands/wizard.js +61 -0
  84. package/dist/commands/wizard.js.map +1 -0
  85. package/dist/commands/workspace.d.ts +3 -0
  86. package/dist/commands/workspace.d.ts.map +1 -0
  87. package/dist/commands/workspace.js +84 -0
  88. package/dist/commands/workspace.js.map +1 -0
  89. package/dist/constants/ides.d.ts +2 -2
  90. package/dist/constants/ides.d.ts.map +1 -1
  91. package/dist/constants/ides.js +47 -3
  92. package/dist/constants/ides.js.map +1 -1
  93. package/dist/constants/index.d.ts +4 -0
  94. package/dist/constants/index.d.ts.map +1 -1
  95. package/dist/constants/index.js +4 -0
  96. package/dist/constants/index.js.map +1 -1
  97. package/dist/core/program.d.ts.map +1 -1
  98. package/dist/core/program.js +38 -5
  99. package/dist/core/program.js.map +1 -1
  100. package/dist/index.js +36 -1
  101. package/dist/index.js.map +1 -1
  102. package/dist/metadata/user-store.d.ts +16 -0
  103. package/dist/metadata/user-store.d.ts.map +1 -0
  104. package/dist/metadata/user-store.js +99 -0
  105. package/dist/metadata/user-store.js.map +1 -0
  106. package/dist/noah-registry/manifest.json +129 -16
  107. package/dist/services/doctor-service.d.ts.map +1 -1
  108. package/dist/services/doctor-service.js +74 -7
  109. package/dist/services/doctor-service.js.map +1 -1
  110. package/dist/services/ecosystem.d.ts +17 -0
  111. package/dist/services/ecosystem.d.ts.map +1 -0
  112. package/dist/services/ecosystem.js +136 -0
  113. package/dist/services/ecosystem.js.map +1 -0
  114. package/dist/services/extras.d.ts +29 -0
  115. package/dist/services/extras.d.ts.map +1 -0
  116. package/dist/services/extras.js +164 -0
  117. package/dist/services/extras.js.map +1 -0
  118. package/dist/services/install-service.d.ts +12 -0
  119. package/dist/services/install-service.d.ts.map +1 -1
  120. package/dist/services/install-service.js +169 -12
  121. package/dist/services/install-service.js.map +1 -1
  122. package/dist/services/intelligence.d.ts +20 -0
  123. package/dist/services/intelligence.d.ts.map +1 -0
  124. package/dist/services/intelligence.js +146 -0
  125. package/dist/services/intelligence.js.map +1 -0
  126. package/dist/services/lockfile-service.d.ts +7 -0
  127. package/dist/services/lockfile-service.d.ts.map +1 -0
  128. package/dist/services/lockfile-service.js +36 -0
  129. package/dist/services/lockfile-service.js.map +1 -0
  130. package/dist/services/project-awareness.d.ts +12 -0
  131. package/dist/services/project-awareness.d.ts.map +1 -0
  132. package/dist/services/project-awareness.js +200 -0
  133. package/dist/services/project-awareness.js.map +1 -0
  134. package/dist/services/workspace-service.d.ts +49 -0
  135. package/dist/services/workspace-service.d.ts.map +1 -0
  136. package/dist/services/workspace-service.js +92 -0
  137. package/dist/services/workspace-service.js.map +1 -0
  138. package/dist/types/index.d.ts +508 -4
  139. package/dist/types/index.d.ts.map +1 -1
  140. package/dist/types/index.js +72 -0
  141. package/dist/types/index.js.map +1 -1
  142. package/dist/ui/banner.d.ts.map +1 -1
  143. package/dist/ui/banner.js +2 -3
  144. package/dist/ui/banner.js.map +1 -1
  145. package/dist/ui/homeMenu.d.ts +6 -0
  146. package/dist/ui/homeMenu.d.ts.map +1 -0
  147. package/dist/ui/homeMenu.js +72 -0
  148. package/dist/ui/homeMenu.js.map +1 -0
  149. package/dist/ui/preview.d.ts +3 -0
  150. package/dist/ui/preview.d.ts.map +1 -0
  151. package/dist/ui/preview.js +36 -0
  152. package/dist/ui/preview.js.map +1 -0
  153. package/dist/utils/assets.d.ts +7 -0
  154. package/dist/utils/assets.d.ts.map +1 -1
  155. package/dist/utils/assets.js +18 -14
  156. package/dist/utils/assets.js.map +1 -1
  157. package/dist/utils/fuzzy.d.ts +6 -0
  158. package/dist/utils/fuzzy.d.ts.map +1 -0
  159. package/dist/utils/fuzzy.js +51 -0
  160. package/dist/utils/fuzzy.js.map +1 -0
  161. package/dist/utils/registry.d.ts +8 -1
  162. package/dist/utils/registry.d.ts.map +1 -1
  163. package/dist/utils/registry.js +13 -5
  164. package/dist/utils/registry.js.map +1 -1
  165. package/dist/utils/semver.d.ts +11 -0
  166. package/dist/utils/semver.d.ts.map +1 -0
  167. package/dist/utils/semver.js +41 -0
  168. package/dist/utils/semver.js.map +1 -0
  169. package/package.json +6 -4
@@ -0,0 +1,164 @@
1
+ import path from "node:path";
2
+ import fs from "fs-extra";
3
+ import { select } from "@inquirer/prompts";
4
+ import { DEFAULT_IDE, getIdeDefinition } from "../constants/index.js";
5
+ import { NotFoundError, ValidationError } from "../core/errors.js";
6
+ import { logInfo, logSuccess, logTitle, logWarn } from "../core/logger.js";
7
+ import { listInstalledAssets } from "../metadata/store.js";
8
+ import { popUndo, readUserStore, updateSettings, appendAudit, } from "../metadata/user-store.js";
9
+ import { assetTypeToDir } from "../utils/assets.js";
10
+ import { createTempDir, cleanupTempDir } from "../utils/fs.js";
11
+ import { installByPackageNames, removeAsset, getPackagePreview, listRegistryAssets, } from "./install-service.js";
12
+ import { computeHealthScores, detectProjectStack } from "./project-awareness.js";
13
+ import { getAnalyticsSummary, listTrending } from "./ecosystem.js";
14
+ import { readLockfile } from "./lockfile-service.js";
15
+ import { readWorkspace } from "./workspace-service.js";
16
+ export async function runUndo(options = {}) {
17
+ const entry = await popUndo();
18
+ if (!entry) {
19
+ logInfo("Nothing to undo.");
20
+ return;
21
+ }
22
+ logInfo(`Undoing ${entry.action} of ${entry.type}/${entry.id} (${entry.ide})`);
23
+ if (entry.action === "install") {
24
+ await removeAsset(entry.type, entry.id, {
25
+ yes: options.yes ?? true,
26
+ dryRun: options.dryRun,
27
+ verbose: options.verbose,
28
+ ide: entry.ide,
29
+ force: true,
30
+ });
31
+ logSuccess(`Undid install of ${entry.type}/${entry.id}`);
32
+ }
33
+ else {
34
+ await installByPackageNames([`${entry.type}/${entry.id}`], {
35
+ ide: entry.ide,
36
+ yes: true,
37
+ dryRun: options.dryRun,
38
+ verbose: options.verbose,
39
+ });
40
+ logSuccess(`Undid uninstall of ${entry.type}/${entry.id}`);
41
+ }
42
+ await appendAudit("undo", `${entry.action} ${entry.type}/${entry.id}`);
43
+ }
44
+ export async function tryPackage(input, options = {}) {
45
+ const ide = options.ide ?? DEFAULT_IDE;
46
+ const temp = await createTempDir("noah-try-");
47
+ const prev = process.cwd();
48
+ try {
49
+ process.chdir(temp);
50
+ await installByPackageNames([input], {
51
+ ide,
52
+ yes: true,
53
+ verbose: options.verbose,
54
+ });
55
+ const root = getIdeDefinition(ide).rootDir;
56
+ logSuccess(`Temporary install at ${path.join(temp, root)}`);
57
+ logWarn("Sandbox expires when this process exits — copy files you want to keep.");
58
+ logInfo(`Temp dir: ${temp}`);
59
+ return temp;
60
+ }
61
+ finally {
62
+ process.chdir(prev);
63
+ // Keep temp for inspection; user can delete. Schedule best-effort note.
64
+ void cleanupTempDir;
65
+ }
66
+ }
67
+ export async function showDashboard(ide = DEFAULT_IDE) {
68
+ const stack = await detectProjectStack();
69
+ const health = await computeHealthScores(process.cwd(), ide);
70
+ const installed = await listInstalledAssets(process.cwd(), ide);
71
+ const analytics = await getAnalyticsSummary();
72
+ const trending = await listTrending("week");
73
+ const lock = await readLockfile();
74
+ const workspace = await readWorkspace();
75
+ logTitle("Noah Dashboard");
76
+ console.log();
77
+ console.log(` Project stack: ${stack.frameworks.join(", ") || "unknown"}`);
78
+ console.log(` Health score: ${Math.round(health.overall * 10)}%`);
79
+ console.log(` Installed: ${installed.installed.length}`);
80
+ console.log(` Lockfile: ${lock ? `${lock.packages.length} pinned` : "none"}`);
81
+ console.log(` Workspace: ${workspace ? `${workspace.packages.length} packages` : "none"}`);
82
+ console.log(` Favorites: ${analytics.favorites}`);
83
+ console.log(` Recent: ${analytics.recent}`);
84
+ console.log(` Logged in: ${analytics.loggedIn ? "yes" : "no"}`);
85
+ console.log();
86
+ console.log(" Trending");
87
+ for (const t of trending.slice(0, 5)) {
88
+ console.log(` • ${t.type}/${t.id} ↓${t.downloads ?? 0} ★${t.rating ?? "–"}`);
89
+ }
90
+ }
91
+ export async function addPlugin(name) {
92
+ const store = await readUserStore();
93
+ const plugins = store.settings.plugins ?? [];
94
+ if (plugins.includes(name)) {
95
+ logInfo(`Plugin "${name}" already enabled.`);
96
+ return;
97
+ }
98
+ await updateSettings({ plugins: [...plugins, name] });
99
+ await appendAudit("plugin-add", name);
100
+ logSuccess(`Enabled plugin "${name}" (local stub — hooks run on install/sync).`);
101
+ }
102
+ export async function listPlugins() {
103
+ const store = await readUserStore();
104
+ return store.settings.plugins ?? [];
105
+ }
106
+ export async function createTemplate(name, options = {}) {
107
+ const templates = {
108
+ saas: ["rule/stack-architecture", "skill/generate-readme", "skill/commit-push"],
109
+ api: ["rule/laravel-api", "skill/larastan-fix", "skill/generate-readme"],
110
+ react: ["rule/react-spa-dashboard", "skill/react-doctor-fix", "skill/commit-push"],
111
+ marketing: ["rule/nextjs-marketing", "skill/generate-readme"],
112
+ };
113
+ const key = name.toLowerCase();
114
+ const packages = templates[key];
115
+ if (!packages) {
116
+ throw new ValidationError(`Unknown template "${name}". Available: ${Object.keys(templates).join(", ")}`);
117
+ }
118
+ logTitle(`Template: ${key}`);
119
+ for (const p of packages)
120
+ console.log(` • ${p}`);
121
+ if (options.dryRun) {
122
+ logInfo("[dry-run] Would install template packages");
123
+ return;
124
+ }
125
+ await installByPackageNames(packages, {
126
+ ide: options.ide ?? DEFAULT_IDE,
127
+ yes: true,
128
+ verbose: options.verbose,
129
+ });
130
+ logSuccess(`Scaffolded "${key}" AI workflow`);
131
+ }
132
+ export async function previewDiff(input, options = {}) {
133
+ const pkg = await getPackagePreview(input, options);
134
+ const ide = options.ide ?? DEFAULT_IDE;
135
+ const dest = path.join(process.cwd(), getIdeDefinition(ide).rootDir, assetTypeToDir(pkg.type), pkg.id);
136
+ const exists = await fs.pathExists(dest);
137
+ logTitle(`Diff preview · ${pkg.type}/${pkg.id}@${pkg.version}`);
138
+ console.log();
139
+ console.log(` Target: ${dest}`);
140
+ console.log(` Status: ${exists ? "would overwrite existing files (--force)" : "new install"}`);
141
+ console.log(` Contains: ${pkg.type} package files from registry`);
142
+ if (pkg.description)
143
+ console.log(` About: ${pkg.description}`);
144
+ console.log();
145
+ logInfo("Run with: noah-cursor install " + `${pkg.type}/${pkg.id}` + (exists ? " --force" : ""));
146
+ }
147
+ export async function interactivePackagePicker(packages) {
148
+ if (packages.length === 0)
149
+ return null;
150
+ return select({
151
+ message: "Select a package",
152
+ choices: packages.map((p) => ({
153
+ name: `${p.type}/${p.id}${p.description ? ` — ${p.description}` : ""}`,
154
+ value: `${p.type}/${p.id}`,
155
+ })),
156
+ });
157
+ }
158
+ export async function ensurePackageExists(input) {
159
+ const listed = await listRegistryAssets();
160
+ const hit = listed.assets.some((a) => `${a.type}/${a.id}` === input || a.id === input);
161
+ if (!hit)
162
+ throw new NotFoundError(`Package "${input}" not found`);
163
+ }
164
+ //# sourceMappingURL=extras.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extras.js","sourceRoot":"","sources":["../../src/services/extras.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAc,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EACL,OAAO,EACP,aAAa,EACb,cAAc,EACd,WAAW,GACZ,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EACL,qBAAqB,EACrB,WAAW,EACX,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGvD,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,UAAkE,EAAE;IAEpE,MAAM,KAAK,GAAG,MAAM,OAAO,EAAE,CAAC;IAC9B,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,OAAO,CAAC,WAAW,KAAK,CAAC,MAAM,OAAO,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;IAE/E,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE;YACtC,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI,IAAI;YACxB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC;QACH,UAAU,CAAC,oBAAoB,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;IAC3D,CAAC;SAAM,CAAC;QACN,MAAM,qBAAqB,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE;YACzD,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,GAAG,EAAE,IAAI;YACT,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,UAAU,CAAC,sBAAsB,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;IAC7D,CAAC;IACD,MAAM,WAAW,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;AACzE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,KAAa,EACb,UAA8C,EAAE;IAEhD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,WAAW,CAAC;IACvC,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC3B,IAAI,CAAC;QACH,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpB,MAAM,qBAAqB,CAAC,CAAC,KAAK,CAAC,EAAE;YACnC,GAAG;YACH,GAAG,EAAE,IAAI;YACT,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;QAC3C,UAAU,CAAC,wBAAwB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5D,OAAO,CAAC,wEAAwE,CAAC,CAAC;QAClF,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;YAAS,CAAC;QACT,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpB,wEAAwE;QACxE,KAAK,cAAc,CAAC;IACtB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAAa,WAAW;IAC1D,MAAM,KAAK,GAAG,MAAM,kBAAkB,EAAE,CAAC;IACzC,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;IAC7D,MAAM,SAAS,GAAG,MAAM,mBAAmB,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,MAAM,mBAAmB,EAAE,CAAC;IAC9C,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,MAAM,YAAY,EAAE,CAAC;IAClC,MAAM,SAAS,GAAG,MAAM,aAAa,EAAE,CAAC;IAExC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC3B,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC;IAC5E,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACpE,OAAO,CAAC,GAAG,CAAC,oBAAoB,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IACpF,OAAO,CAAC,GAAG,CAAC,oBAAoB,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,MAAM,WAAW,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAChG,OAAO,CAAC,GAAG,CAAC,oBAAoB,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,oBAAoB,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,CAAC,oBAAoB,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC1B,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC,CAAC;IACpF,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAY;IAC1C,MAAM,KAAK,GAAG,MAAM,aAAa,EAAE,CAAC;IACpC,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC;IAC7C,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,WAAW,IAAI,oBAAoB,CAAC,CAAC;QAC7C,OAAO;IACT,CAAC;IACD,MAAM,cAAc,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IACtD,MAAM,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IACtC,UAAU,CAAC,mBAAmB,IAAI,6CAA6C,CAAC,CAAC;AACnF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW;IAC/B,MAAM,KAAK,GAAG,MAAM,aAAa,EAAE,CAAC;IACpC,OAAO,KAAK,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC;AACtC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,IAAY,EACZ,UAAgE,EAAE;IAElE,MAAM,SAAS,GAA6B;QAC1C,IAAI,EAAE,CAAC,yBAAyB,EAAE,uBAAuB,EAAE,mBAAmB,CAAC;QAC/E,GAAG,EAAE,CAAC,kBAAkB,EAAE,oBAAoB,EAAE,uBAAuB,CAAC;QACxE,KAAK,EAAE,CAAC,0BAA0B,EAAE,wBAAwB,EAAE,mBAAmB,CAAC;QAClF,SAAS,EAAE,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;KAC9D,CAAC;IAEF,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAC/B,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IAChC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,eAAe,CACvB,qBAAqB,IAAI,iBAAiB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC9E,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,aAAa,GAAG,EAAE,CAAC,CAAC;IAC7B,KAAK,MAAM,CAAC,IAAI,QAAQ;QAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAElD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,2CAA2C,CAAC,CAAC;QACrD,OAAO;IACT,CAAC;IAED,MAAM,qBAAqB,CAAC,QAAQ,EAAE;QACpC,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI,WAAW;QAC/B,GAAG,EAAE,IAAI;QACT,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC,CAAC;IACH,UAAU,CAAC,eAAe,GAAG,eAAe,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,KAAa,EACb,UAA8C,EAAE;IAEhD,MAAM,GAAG,GAAG,MAAM,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACpD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,WAAW,CAAC;IACvC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CACpB,OAAO,CAAC,GAAG,EAAE,EACb,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,EAC7B,cAAc,CAAC,GAAG,CAAC,IAAiB,CAAC,EACrC,GAAG,CAAC,EAAE,CACP,CAAC;IACF,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAEzC,QAAQ,CAAC,kBAAkB,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IAChE,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;IACjC,OAAO,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,CAAC,CAAC,0CAA0C,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;IAChG,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,CAAC,IAAI,8BAA8B,CAAC,CAAC;IACnE,IAAI,GAAG,CAAC,WAAW;QAAE,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;IAChE,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,gCAAgC,GAAG,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACnG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,QAAmE;IAEnE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,OAAO,MAAM,CAAC;QACZ,OAAO,EAAE,kBAAkB;QAC3B,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC5B,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;YACtE,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,EAAE;SAC3B,CAAC,CAAC;KACJ,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,KAAa;IACrD,MAAM,MAAM,GAAG,MAAM,kBAAkB,EAAE,CAAC;IAC1C,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAC5B,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,EAAE,KAAK,KAAK,CACvD,CAAC;IACF,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,aAAa,CAAC,YAAY,KAAK,aAAa,CAAC,CAAC;AACpE,CAAC"}
@@ -18,7 +18,19 @@ export declare function installFromSelections(registry: ClonedRegistry, selectio
18
18
  export declare function addFromRegistry(repository: string | undefined, options: AddOptions): Promise<InstallResult[]>;
19
19
  export declare function searchRegistry(query: string, repository?: string, options?: {
20
20
  verbose?: boolean;
21
+ tag?: string;
22
+ type?: AssetType;
21
23
  }): Promise<SearchResult[]>;
24
+ /** Resolve a package ref like `laravel-api`, `rule/laravel-api`, or `laravel-api@1.0.0`. */
25
+ export declare function resolvePackageRequest(input: string, repository?: string, options?: {
26
+ verbose?: boolean;
27
+ }): Promise<AssetRequest>;
28
+ /** Expand dependsOn strings (`type/id` or bare id) into AssetRequests. */
29
+ export declare function expandDependencies(manifest: Manifest, requests: AssetRequest[]): AssetRequest[];
30
+ export declare function installByPackageNames(packages: string[], options?: AddOptions): Promise<InstallResult[]>;
31
+ export declare function getPackagePreview(input: string, options?: {
32
+ verbose?: boolean;
33
+ }): Promise<SearchResult>;
22
34
  export declare function listRegistryAssets(repository?: string, options?: {
23
35
  verbose?: boolean;
24
36
  }): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"install-service.d.ts","sourceRoot":"","sources":["../../src/services/install-service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgD,KAAK,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAQjG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,KAAK,EACV,UAAU,EACV,YAAY,EACZ,SAAS,EACT,aAAa,EACb,QAAQ,EAER,YAAY,EACb,MAAM,mBAAmB,CAAC;AA0B3B,wBAAgB,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,YAAY,EAAE,CA8BjF;AAiDD,MAAM,WAAW,wBAAwB;IACvC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,KAAK,CAAC;IACZ,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,YAAY,EAAE,EAC1B,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,aAAa,EAAE,CAAC,CAsF1B;AAED,wBAAsB,eAAe,CACnC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,OAAO,EAAE,UAAU,GAClB,OAAO,CAAC,aAAa,EAAE,CAAC,CAoD1B;AAED,wBAAsB,cAAc,CAClC,KAAK,EAAE,MAAM,EACb,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GAClC,OAAO,CAAC,YAAY,EAAE,CAAC,CAoBzB;AAED,wBAAsB,kBAAkB,CACtC,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GAClC,OAAO,CAAC;IACT,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,YAAY,EAAE,CAAC;CACxB,CAAC,CAcD;AAED,wBAAsB,WAAW,CAC/B,IAAI,EAAE,SAAS,EACf,EAAE,EAAE,MAAM,EACV,OAAO,GAAE;IACP,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,KAAK,CAAC;CACR,GACL,OAAO,CAAC,IAAI,CAAC,CAgCf;AAED,wBAAsB,YAAY,CAChC,OAAO,GAAE;IACP,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,KAAK,CAAC;CACR,GACL,OAAO,CAAC,aAAa,EAAE,CAAC,CA+C1B"}
1
+ {"version":3,"file":"install-service.d.ts","sourceRoot":"","sources":["../../src/services/install-service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgD,KAAK,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAUjG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,KAAK,EACV,UAAU,EACV,YAAY,EACZ,SAAS,EACT,aAAa,EACb,QAAQ,EAER,YAAY,EACb,MAAM,mBAAmB,CAAC;AA6B3B,wBAAgB,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,YAAY,EAAE,CA8BjF;AAiDD,MAAM,WAAW,wBAAwB;IACvC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,KAAK,CAAC;IACZ,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,YAAY,EAAE,EAC1B,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,aAAa,EAAE,CAAC,CAsG1B;AAED,wBAAsB,eAAe,CACnC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,OAAO,EAAE,UAAU,GAClB,OAAO,CAAC,aAAa,EAAE,CAAC,CAoD1B;AAED,wBAAsB,cAAc,CAClC,KAAK,EAAE,MAAM,EACb,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,SAAS,CAAA;CAAO,GAClE,OAAO,CAAC,YAAY,EAAE,CAAC,CAsBzB;AAED,4FAA4F;AAC5F,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,MAAM,EACb,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GAClC,OAAO,CAAC,YAAY,CAAC,CAyDvB;AAED,0EAA0E;AAC1E,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,YAAY,EAAE,GACvB,YAAY,EAAE,CA2BhB;AAED,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,GAAE,UAAe,GACvB,OAAO,CAAC,aAAa,EAAE,CAAC,CAmD1B;AAED,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GAClC,OAAO,CAAC,YAAY,CAAC,CASvB;AAED,wBAAsB,kBAAkB,CACtC,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GAClC,OAAO,CAAC;IACT,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,YAAY,EAAE,CAAC;CACxB,CAAC,CAcD;AAED,wBAAsB,WAAW,CAC/B,IAAI,EAAE,SAAS,EACf,EAAE,EAAE,MAAM,EACV,OAAO,GAAE;IACP,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,KAAK,CAAC;CACR,GACL,OAAO,CAAC,IAAI,CAAC,CA0Cf;AAED,wBAAsB,YAAY,CAChC,OAAO,GAAE;IACP,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,KAAK,CAAC;CACR,GACL,OAAO,CAAC,aAAa,EAAE,CAAC,CA+C1B"}
@@ -3,11 +3,16 @@ import { NotFoundError, ValidationError } from "../core/errors.js";
3
3
  import { logInfo, logSuccess, logVerbose, logWarn } from "../core/logger.js";
4
4
  import { DEFAULT_IDE, getIdeDefinition, METADATA_FILE } from "../constants/index.js";
5
5
  import { installAsset, removeAssetFiles } from "../installers/asset-installer.js";
6
- import { findInstalled, readMetadata, removeInstalledAsset, upsertInstalledAssets, } from "../metadata/store.js";
6
+ import { findInstalled, listInstalledAssets, readMetadata, removeInstalledAsset, upsertInstalledAssets, } from "../metadata/store.js";
7
+ import { addRecent, appendAudit, pushUndo } from "../metadata/user-store.js";
7
8
  import { loadRegistry } from "./registry-loader.js";
9
+ import { syncLockfileFromInstalled } from "./lockfile-service.js";
8
10
  import { findAssetInManifest, getManifestAssets, listAllManifestAssets, } from "../utils/assets.js";
11
+ import { fuzzyFilter } from "../utils/fuzzy.js";
12
+ import { parsePackageRef, versionMatches } from "../utils/semver.js";
9
13
  import { pluralize } from "../utils/fs.js";
10
14
  import { preferLocalRegistry, resolveNoahRegistry, toPublicRegistryLabel, toStoredRegistryUrl, } from "../utils/registry.js";
15
+ import { ASSET_TYPES } from "../constants/index.js";
11
16
  function collectRequests(options) {
12
17
  const requests = [];
13
18
  if (options.skill)
@@ -155,6 +160,20 @@ export async function installFromSelections(registry, selections, options = {})
155
160
  await options.onStepStart?.("Updating noah.json");
156
161
  await upsertInstalledAssets(toStoredRegistryUrl(registry.url), installedMeta, process.cwd(), options.ide);
157
162
  await options.onStepDone?.("Updating noah.json");
163
+ const ide = options.ide ?? DEFAULT_IDE;
164
+ for (const meta of installedMeta) {
165
+ await addRecent(meta.type, meta.id, "installed");
166
+ await pushUndo({
167
+ action: "install",
168
+ type: meta.type,
169
+ id: meta.id,
170
+ ide,
171
+ at: new Date().toISOString(),
172
+ });
173
+ await appendAudit("install", `${meta.type}/${meta.id}@${meta.version}`);
174
+ }
175
+ const listed = await listInstalledAssets(process.cwd(), ide);
176
+ await syncLockfileFromInstalled(listed.installed, ide);
158
177
  }
159
178
  return results;
160
179
  }
@@ -203,23 +222,151 @@ export async function searchRegistry(query, repository, options = {}) {
203
222
  const source = resolveNoahRegistry(repository);
204
223
  const registry = await loadRegistry(source, options);
205
224
  try {
206
- const needle = query.toLowerCase();
207
- return listAllManifestAssets(registry.manifest).filter((asset) => {
208
- const haystack = [
209
- asset.id,
210
- asset.description ?? "",
211
- ...(asset.tags ?? []),
212
- asset.type,
213
- ]
214
- .join(" ")
215
- .toLowerCase();
216
- return haystack.includes(needle);
225
+ let assets = listAllManifestAssets(registry.manifest);
226
+ if (options.type) {
227
+ assets = assets.filter((a) => a.type === options.type);
228
+ }
229
+ if (options.tag) {
230
+ const tag = options.tag.toLowerCase();
231
+ assets = assets.filter((a) => (a.tags ?? []).some((t) => t.toLowerCase() === tag));
232
+ }
233
+ return fuzzyFilter(assets, query, (asset) => [
234
+ asset.id,
235
+ asset.description ?? "",
236
+ ...(asset.tags ?? []),
237
+ asset.type,
238
+ ]);
239
+ }
240
+ finally {
241
+ await registry.cleanup();
242
+ }
243
+ }
244
+ /** Resolve a package ref like `laravel-api`, `rule/laravel-api`, or `laravel-api@1.0.0`. */
245
+ export async function resolvePackageRequest(input, repository, options = {}) {
246
+ const ref = parsePackageRef(input);
247
+ const source = resolveNoahRegistry(repository);
248
+ const registry = await loadRegistry(source, options);
249
+ try {
250
+ const assets = listAllManifestAssets(registry.manifest);
251
+ if (ref.type) {
252
+ if (!ASSET_TYPES.includes(ref.type)) {
253
+ throw new ValidationError(`Invalid asset type "${ref.type}". Expected one of: ${ASSET_TYPES.join(", ")}`);
254
+ }
255
+ const found = findAssetInManifest(registry.manifest, ref.type, ref.id);
256
+ if (!found) {
257
+ throw new NotFoundError(`${ref.type}/${ref.id} not found in registry`);
258
+ }
259
+ if (ref.version && !versionMatches(found.version, ref.version)) {
260
+ throw new NotFoundError(`${ref.type}/${ref.id}@${ref.version} not found (available: ${found.version})`);
261
+ }
262
+ return { type: ref.type, id: ref.id, version: found.version };
263
+ }
264
+ const exact = assets.filter((a) => a.id === ref.id);
265
+ if (exact.length === 1) {
266
+ const asset = exact[0];
267
+ if (ref.version && !versionMatches(asset.version, ref.version)) {
268
+ throw new NotFoundError(`${asset.id}@${ref.version} not found (available: ${asset.version})`);
269
+ }
270
+ return { type: asset.type, id: asset.id, version: asset.version };
271
+ }
272
+ if (exact.length > 1) {
273
+ throw new ValidationError(`Ambiguous package "${ref.id}". Specify type: ${exact.map((a) => `${a.type}/${a.id}`).join(", ")}`);
274
+ }
275
+ const fuzzy = fuzzyFilter(assets, ref.id, (a) => [a.id, ...(a.tags ?? [])], 5);
276
+ if (fuzzy.length === 1) {
277
+ const asset = fuzzy[0];
278
+ return { type: asset.type, id: asset.id, version: asset.version };
279
+ }
280
+ if (fuzzy.length > 1) {
281
+ throw new ValidationError(`Ambiguous package "${ref.id}". Did you mean: ${fuzzy.map((a) => `${a.type}/${a.id}`).join(", ")}?`);
282
+ }
283
+ throw new NotFoundError(`Package "${input}" not found in registry`);
284
+ }
285
+ finally {
286
+ await registry.cleanup();
287
+ }
288
+ }
289
+ /** Expand dependsOn strings (`type/id` or bare id) into AssetRequests. */
290
+ export function expandDependencies(manifest, requests) {
291
+ const resolved = [];
292
+ const seen = new Set();
293
+ const visit = (request) => {
294
+ const key = `${request.type}:${request.id}`;
295
+ if (seen.has(key))
296
+ return;
297
+ seen.add(key);
298
+ const entry = findAssetInManifest(manifest, request.type, request.id);
299
+ for (const dep of entry?.dependsOn ?? []) {
300
+ const ref = parsePackageRef(dep);
301
+ if (ref.type && ASSET_TYPES.includes(ref.type)) {
302
+ visit({ type: ref.type, id: ref.id });
303
+ }
304
+ else {
305
+ const matches = listAllManifestAssets(manifest).filter((a) => a.id === ref.id);
306
+ if (matches[0]) {
307
+ visit({ type: matches[0].type, id: matches[0].id });
308
+ }
309
+ }
310
+ }
311
+ resolved.push(request);
312
+ };
313
+ for (const request of requests)
314
+ visit(request);
315
+ return resolved;
316
+ }
317
+ export async function installByPackageNames(packages, options = {}) {
318
+ if (packages.length === 0) {
319
+ throw new ValidationError("Specify at least one package to install");
320
+ }
321
+ const source = resolveNoahRegistry(undefined);
322
+ const registry = await loadRegistry(source, { verbose: options.verbose });
323
+ try {
324
+ const requests = [];
325
+ for (const pkg of packages) {
326
+ const resolved = await resolvePackageRequest(pkg, undefined, { verbose: options.verbose });
327
+ requests.push(resolved);
328
+ }
329
+ const withDeps = expandDependencies(registry.manifest, requests);
330
+ if (!options.yes && !options.dryRun && withDeps.length > 5) {
331
+ const ok = await confirm({
332
+ message: `Install ${withDeps.length} assets from ${toPublicRegistryLabel()}?`,
333
+ default: true,
334
+ });
335
+ if (!ok) {
336
+ logWarn("Installation cancelled.");
337
+ return [];
338
+ }
339
+ }
340
+ const results = await installFromSelections(registry, withDeps, {
341
+ force: options.force,
342
+ dryRun: options.dryRun,
343
+ verbose: options.verbose,
344
+ ide: options.ide,
217
345
  });
346
+ const installed = results.filter((r) => !r.skipped);
347
+ if (options.dryRun) {
348
+ logInfo(`[dry-run] Would install ${installed.length} ${pluralize(installed.length, "asset")}`);
349
+ }
350
+ else {
351
+ logSuccess(`Installed ${installed.length} ${pluralize(installed.length, "asset")} ` +
352
+ `from ${toPublicRegistryLabel()}`);
353
+ }
354
+ return results;
218
355
  }
219
356
  finally {
220
357
  await registry.cleanup();
221
358
  }
222
359
  }
360
+ export async function getPackagePreview(input, options = {}) {
361
+ const request = await resolvePackageRequest(input, undefined, options);
362
+ await addRecent(request.type, request.id, "viewed");
363
+ const listed = await listRegistryAssets(undefined, options);
364
+ const found = listed.assets.find((a) => a.type === request.type && a.id === request.id);
365
+ if (!found) {
366
+ throw new NotFoundError(`Package "${input}" not found`);
367
+ }
368
+ return found;
369
+ }
223
370
  export async function listRegistryAssets(repository, options = {}) {
224
371
  const source = resolveNoahRegistry(repository ?? (await preferLocalRegistry()));
225
372
  const registry = await loadRegistry(source, options);
@@ -259,6 +406,16 @@ export async function removeAsset(type, id, options = {}) {
259
406
  await removeAssetFiles(type, id, { ...options, ide });
260
407
  if (!options.dryRun) {
261
408
  await removeInstalledAsset(type, id, process.cwd(), ide);
409
+ await pushUndo({
410
+ action: "uninstall",
411
+ type,
412
+ id,
413
+ ide,
414
+ at: new Date().toISOString(),
415
+ });
416
+ await appendAudit("uninstall", `${type}/${id}`);
417
+ const listed = await listInstalledAssets(process.cwd(), ide);
418
+ await syncLockfileFromInstalled(listed.installed, ide);
262
419
  logSuccess(`Removed ${type}/${id}`);
263
420
  }
264
421
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"install-service.js","sourceRoot":"","sources":["../../src/services/install-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install-service.js","sourceRoot":"","sources":["../../src/services/install-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { type IdeId } from "../constants/index.js";
2
+ import type { InstallResult, SearchResult } from "../types/index.js";
3
+ export declare function explainPackage(input: string, options?: {
4
+ verbose?: boolean;
5
+ }): Promise<SearchResult>;
6
+ export declare function formatExplanation(pkg: SearchResult): string[];
7
+ export declare function runSetupWizard(options?: {
8
+ yes?: boolean;
9
+ dryRun?: boolean;
10
+ verbose?: boolean;
11
+ ide?: IdeId;
12
+ }): Promise<InstallResult[]>;
13
+ export declare function runUpgradeAssistant(options?: {
14
+ yes?: boolean;
15
+ dryRun?: boolean;
16
+ verbose?: boolean;
17
+ ide?: IdeId;
18
+ }): Promise<InstallResult[]>;
19
+ export declare function runAnalyze(ide?: IdeId, verbose?: boolean): Promise<import("../types/index.js").ProjectAnalysis>;
20
+ //# sourceMappingURL=intelligence.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intelligence.d.ts","sourceRoot":"","sources":["../../src/services/intelligence.ts"],"names":[],"mappings":"AAEA,OAAO,EAAe,KAAK,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAWrE,wBAAsB,cAAc,CAClC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GAClC,OAAO,CAAC,YAAY,CAAC,CAEvB;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,EAAE,CA+B7D;AAED,wBAAsB,cAAc,CAClC,OAAO,GAAE;IAAE,GAAG,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,KAAK,CAAA;CAAO,GAChF,OAAO,CAAC,aAAa,EAAE,CAAC,CAkE1B;AAED,wBAAsB,mBAAmB,CACvC,OAAO,GAAE;IAAE,GAAG,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,KAAK,CAAA;CAAO,GAChF,OAAO,CAAC,aAAa,EAAE,CAAC,CAkD1B;AAED,wBAAsB,UAAU,CAAC,GAAG,GAAE,KAAmB,EAAE,OAAO,CAAC,EAAE,OAAO,wDAE3E"}