midas-mcp 5.43.2 → 5.43.11
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/analyzer.d.ts +19 -0
- package/dist/analyzer.d.ts.map +1 -1
- package/dist/analyzer.js +95 -1
- package/dist/analyzer.js.map +1 -1
- package/dist/code-discovery.d.ts.map +1 -1
- package/dist/code-discovery.js +39 -2
- package/dist/code-discovery.js.map +1 -1
- package/dist/docs/INGREDIENTS.md +57 -17
- package/dist/file-index.d.ts +123 -0
- package/dist/file-index.d.ts.map +1 -0
- package/dist/file-index.js +430 -0
- package/dist/file-index.js.map +1 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +11 -2
- package/dist/server.js.map +1 -1
- package/dist/state/phase.d.ts +8 -3
- package/dist/state/phase.d.ts.map +1 -1
- package/dist/state/phase.js +85 -7
- package/dist/state/phase.js.map +1 -1
- package/dist/tools/completeness.d.ts.map +1 -1
- package/dist/tools/completeness.js +153 -24
- package/dist/tools/completeness.js.map +1 -1
- package/dist/tools/complexity.d.ts +91 -0
- package/dist/tools/complexity.d.ts.map +1 -0
- package/dist/tools/complexity.js +583 -0
- package/dist/tools/complexity.js.map +1 -0
- package/dist/tools/index.d.ts +2 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +4 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/vuln-scan.d.ts +74 -0
- package/dist/tools/vuln-scan.d.ts.map +1 -0
- package/dist/tools/vuln-scan.js +493 -0
- package/dist/tools/vuln-scan.js.map +1 -0
- package/dist/tracker.d.ts +22 -0
- package/dist/tracker.d.ts.map +1 -1
- package/dist/tracker.js +93 -16
- package/dist/tracker.js.map +1 -1
- package/dist/tui.d.ts.map +1 -1
- package/dist/tui.js +44 -32
- package/dist/tui.js.map +1 -1
- package/docs/INGREDIENTS.md +57 -17
- package/package.json +1 -1
package/dist/state/phase.d.ts
CHANGED
|
@@ -209,12 +209,17 @@ export interface GraduationItem {
|
|
|
209
209
|
action: string;
|
|
210
210
|
detail: string;
|
|
211
211
|
}
|
|
212
|
+
type ProjectType = 'cli' | 'library' | 'web-app' | 'api' | 'mobile' | 'monorepo' | 'unknown';
|
|
212
213
|
/**
|
|
213
|
-
* Get the graduation checklist for projects that have shipped
|
|
214
|
+
* Get the graduation checklist for projects that have shipped.
|
|
215
|
+
* Dynamically selects checklist based on project type.
|
|
216
|
+
*
|
|
217
|
+
* @param projectType - Detected project type (cli, library, web-app, api, mobile, monorepo)
|
|
214
218
|
*/
|
|
215
|
-
export declare function getGraduationChecklist(): GraduationItem[];
|
|
219
|
+
export declare function getGraduationChecklist(projectType?: ProjectType): GraduationItem[];
|
|
216
220
|
/**
|
|
217
221
|
* Format the graduation checklist as copyable text
|
|
218
222
|
*/
|
|
219
|
-
export declare function formatGraduationChecklist(): string;
|
|
223
|
+
export declare function formatGraduationChecklist(projectType?: ProjectType): string;
|
|
224
|
+
export {};
|
|
220
225
|
//# sourceMappingURL=phase.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phase.d.ts","sourceRoot":"","sources":["../../src/state/phase.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,oBAAoB,CAAC;AAG5B,MAAM,MAAM,QAAQ,GAChB,MAAM,GACN,UAAU,GACV,WAAW,GACX,KAAK,GACL,UAAU,CAAC;AAGf,MAAM,MAAM,cAAc,GAAG,QAAQ,CAAC;AAEtC,MAAM,MAAM,SAAS,GACjB,OAAO,GACP,OAAO,GACP,MAAM,GACN,UAAU,GACV,WAAW,GACX,MAAM,GACN,OAAO,CAAC;AAEZ,MAAM,MAAM,QAAQ,GAChB,QAAQ,GACR,QAAQ,GACR,SAAS,CAAC;AAEd,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAE9B,MAAM,MAAM,KAAK,GACb;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GACjB;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,GACjC;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GACnC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,GACjC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC;AAGtC,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAGD,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,UAAW,SAAQ,cAAc;IAChD,OAAO,EAAE,KAAK,CAAC;IACf,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE;QACJ,SAAS,EAAE,OAAO,CAAC;QACnB,GAAG,EAAE,OAAO,CAAC;QACb,QAAQ,EAAE,OAAO,CAAC;KACnB,CAAC;IAEF,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AASD,wBAAgB,eAAe,IAAI,UAAU,CAe5C;AAgED;;GAEG;AACH,wBAAgB,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,CAOzD;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI,CAatE;AAOD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,YAAY,CAM7D;AAED,wBAAgB,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,GAAG,UAAU,CAQzE;AAGD,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiEtB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG;IAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAsBvF;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,KAAK,GAAG,KAAK,CAyClD;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,KAAK,GAAG,KAAK,CAoClD;AAGD,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;
|
|
1
|
+
{"version":3,"file":"phase.d.ts","sourceRoot":"","sources":["../../src/state/phase.ts"],"names":[],"mappings":"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"}
|
package/dist/state/phase.js
CHANGED
|
@@ -288,20 +288,98 @@ export function getPrevPhase(current) {
|
|
|
288
288
|
return { phase: 'GROW', step: prev.step };
|
|
289
289
|
return current;
|
|
290
290
|
}
|
|
291
|
+
// Social/growth-focused checklists tailored to project type
|
|
292
|
+
// These are about getting users and traction, not technical polish
|
|
293
|
+
const PROJECT_CHECKLISTS = {
|
|
294
|
+
'cli': [
|
|
295
|
+
{ key: 'ANNOUNCE', name: 'Announce', action: 'Post to r/commandline, r/programming, HN', detail: 'CLI users hang out in tech communities - show a demo GIF' },
|
|
296
|
+
{ key: 'GIF', name: 'Demo', action: 'Create a terminal GIF showing the tool in action', detail: 'asciinema or terminalizer - motion sells CLI tools' },
|
|
297
|
+
{ key: 'NETWORK', name: 'Network', action: 'DM 10 devs who use similar tools', detail: 'Find people complaining about alternatives on Twitter/Reddit' },
|
|
298
|
+
{ key: 'FEEDBACK', name: 'Feedback', action: 'Ask 5 users: what flag is missing?', detail: 'CLI power users have strong opinions - listen to them' },
|
|
299
|
+
{ key: 'CONTENT', name: 'Content', action: 'Write "I built a CLI that does X" post', detail: 'Dev.to, Hashnode, your blog - developers read these' },
|
|
300
|
+
{ key: 'COMPARE', name: 'Compare', action: 'Create honest comparison with alternatives', detail: 'Help users decide - honesty builds trust' },
|
|
301
|
+
{ key: 'MEASURE', name: 'Measure', action: 'Track npm downloads weekly', detail: 'npm-stat.com or similar - know if growth is working' },
|
|
302
|
+
{ key: 'ITERATE', name: 'Iterate', action: 'Ship most-requested feature within a week', detail: 'Fast iteration signals active maintenance' },
|
|
303
|
+
],
|
|
304
|
+
'library': [
|
|
305
|
+
{ key: 'ANNOUNCE', name: 'Announce', action: 'Post to framework-specific Discord/Reddit', detail: 'React libs go to r/reactjs, Vue to r/vuejs, etc.' },
|
|
306
|
+
{ key: 'EXAMPLE', name: 'Example', action: 'Create a CodeSandbox/StackBlitz demo', detail: 'Tryable demos convert better than docs' },
|
|
307
|
+
{ key: 'NETWORK', name: 'Network', action: 'DM 10 devs building similar apps', detail: 'Find people asking "how do I do X" - your lib might help' },
|
|
308
|
+
{ key: 'FEEDBACK', name: 'Feedback', action: 'Ask 5 users: what API is confusing?', detail: 'DX feedback improves adoption rates' },
|
|
309
|
+
{ key: 'CONTENT', name: 'Content', action: 'Write tutorial: "How to do X with [your lib]"', detail: 'Tutorials rank in Google and attract users' },
|
|
310
|
+
{ key: 'COMPARE', name: 'Compare', action: 'Document when NOT to use your library', detail: 'Honest scoping builds trust and reduces bad reviews' },
|
|
311
|
+
{ key: 'MEASURE', name: 'Measure', action: 'Track weekly npm downloads', detail: 'Set a goal: 100/week, then 1000/week' },
|
|
312
|
+
{ key: 'ITERATE', name: 'Iterate', action: 'Fix top GitHub issue within a week', detail: 'Responsive maintenance attracts contributors' },
|
|
313
|
+
],
|
|
314
|
+
'web-app': [
|
|
315
|
+
{ key: 'LAUNCH', name: 'Launch', action: 'Post to Product Hunt, IndieHackers, HN', detail: 'Coordinate launch day - post early morning PT' },
|
|
316
|
+
{ key: 'VIDEO', name: 'Video', action: 'Create 60-second demo video', detail: 'Loom or screen recording - show the happy path' },
|
|
317
|
+
{ key: 'NETWORK', name: 'Network', action: 'DM 20 people in your target market', detail: 'Personal outreach converts 10x better than posts' },
|
|
318
|
+
{ key: 'FEEDBACK', name: 'Feedback', action: 'Ask 5 users to share screen while using it', detail: 'Watch confusion happen - it reveals UX issues' },
|
|
319
|
+
{ key: 'PROOF', name: 'Proof', action: 'Get 3 testimonials with photos', detail: 'Real faces + quotes on landing page = trust' },
|
|
320
|
+
{ key: 'CONTENT', name: 'Content', action: 'Write "How I built X in Y days" post', detail: 'Build in public content attracts early adopters' },
|
|
321
|
+
{ key: 'MEASURE', name: 'Measure', action: 'Set up one key metric dashboard', detail: 'Signups, active users, or revenue - pick one to obsess over' },
|
|
322
|
+
{ key: 'ITERATE', name: 'Iterate', action: 'Ship top user request this week', detail: 'Show users you listen - builds loyalty fast' },
|
|
323
|
+
],
|
|
324
|
+
'api': [
|
|
325
|
+
{ key: 'ANNOUNCE', name: 'Announce', action: 'Post to API-focused communities', detail: 'Dev.to, relevant Discord servers, Twitter API community' },
|
|
326
|
+
{ key: 'EXAMPLE', name: 'Example', action: 'Create copy-paste code snippets', detail: 'curl + JS + Python examples - reduce friction to first call' },
|
|
327
|
+
{ key: 'NETWORK', name: 'Network', action: 'DM 10 devs building in your space', detail: 'Find people asking "is there an API for X?"' },
|
|
328
|
+
{ key: 'FEEDBACK', name: 'Feedback', action: 'Ask 5 integrators: what was confusing?', detail: 'First integration experience determines word of mouth' },
|
|
329
|
+
{ key: 'CONTENT', name: 'Content', action: 'Write "Build X with our API" tutorial', detail: 'End-to-end tutorials attract developers searching for solutions' },
|
|
330
|
+
{ key: 'PROOF', name: 'Proof', action: 'Get 3 "Powered by" logos', detail: 'Show who uses your API - social proof for B2B' },
|
|
331
|
+
{ key: 'MEASURE', name: 'Measure', action: 'Track weekly API calls and unique users', detail: 'Usage metrics reveal if growth tactics work' },
|
|
332
|
+
{ key: 'ITERATE', name: 'Iterate', action: 'Add most-requested endpoint this week', detail: 'Fast iteration attracts serious integrators' },
|
|
333
|
+
],
|
|
334
|
+
'mobile': [
|
|
335
|
+
{ key: 'LAUNCH', name: 'Launch', action: 'Coordinate App Store + social launch', detail: 'Same day: store live + Product Hunt + Twitter thread' },
|
|
336
|
+
{ key: 'VIDEO', name: 'Video', action: 'Create app preview video', detail: 'Show the happy path in 30 seconds - vertical format' },
|
|
337
|
+
{ key: 'NETWORK', name: 'Network', action: 'DM 20 people who need this app', detail: 'Find people complaining about the problem you solve' },
|
|
338
|
+
{ key: 'FEEDBACK', name: 'Feedback', action: 'Watch 5 people use the app', detail: 'In person or screen share - watch where they get stuck' },
|
|
339
|
+
{ key: 'REVIEWS', name: 'Reviews', action: 'Ask happy users for App Store reviews', detail: 'Time the ask after a success moment in the app' },
|
|
340
|
+
{ key: 'CONTENT', name: 'Content', action: 'Post app journey on Twitter/TikTok', detail: 'Build in public attracts early adopters' },
|
|
341
|
+
{ key: 'MEASURE', name: 'Measure', action: 'Track daily active users', detail: 'DAU is the metric that matters for mobile' },
|
|
342
|
+
{ key: 'ITERATE', name: 'Iterate', action: 'Ship update within 2 weeks of launch', detail: 'Active updates improve store ranking' },
|
|
343
|
+
],
|
|
344
|
+
'monorepo': [
|
|
345
|
+
{ key: 'ANNOUNCE', name: 'Announce', action: 'Announce each package to its audience', detail: 'Different packages may have different communities' },
|
|
346
|
+
{ key: 'EXAMPLE', name: 'Example', action: 'Create example app using multiple packages', detail: 'Show how packages work together' },
|
|
347
|
+
{ key: 'NETWORK', name: 'Network', action: 'DM maintainers of related projects', detail: 'Collaboration opportunities and cross-promotion' },
|
|
348
|
+
{ key: 'FEEDBACK', name: 'Feedback', action: 'Ask contributors: what blocked you?', detail: 'Monorepos are complex - reduce friction' },
|
|
349
|
+
{ key: 'CONTENT', name: 'Content', action: 'Write "Why we chose monorepo" post', detail: 'Architecture posts attract serious developers' },
|
|
350
|
+
{ key: 'CONTRIB', name: 'Contributors', action: 'Respond to first PRs within 24 hours', detail: 'Fast response = more contributors' },
|
|
351
|
+
{ key: 'MEASURE', name: 'Measure', action: 'Track downloads per package', detail: 'Know which packages drive adoption' },
|
|
352
|
+
{ key: 'ITERATE', name: 'Iterate', action: 'Fix cross-package issue this week', detail: 'Show the monorepo actually works together' },
|
|
353
|
+
],
|
|
354
|
+
'unknown': [
|
|
355
|
+
{ key: 'ANNOUNCE', name: 'Announce', action: 'Post to 3 communities where users hang out', detail: 'Reddit, Discord, Twitter, Hacker News - find your people' },
|
|
356
|
+
{ key: 'NETWORK', name: 'Network', action: 'DM 10 people who would find this useful', detail: 'Personal outreach converts 10x better than posts' },
|
|
357
|
+
{ key: 'FEEDBACK', name: 'Feedback', action: 'Ask 5 users: what\'s confusing? what\'s missing?', detail: 'Real users reveal blind spots you can\'t see' },
|
|
358
|
+
{ key: 'PROOF', name: 'Proof', action: 'Get 3 testimonials, screenshot your metrics', detail: 'Social proof compounds - collect it early' },
|
|
359
|
+
{ key: 'ITERATE', name: 'Iterate', action: 'Ship one improvement based on feedback', detail: 'Show users you listen - builds loyalty fast' },
|
|
360
|
+
{ key: 'CONTENT', name: 'Content', action: 'Write "what I learned building X" post', detail: 'Teaching builds authority and attracts users' },
|
|
361
|
+
{ key: 'MEASURE', name: 'Measure', action: 'Set up analytics for your key metric', detail: 'Users, downloads, revenue - pick one to obsess over' },
|
|
362
|
+
{ key: 'AUTOMATE', name: 'Automate', action: 'Set up one recurring growth loop', detail: 'Newsletter, social schedule, referral system' },
|
|
363
|
+
],
|
|
364
|
+
};
|
|
291
365
|
/**
|
|
292
|
-
* Get the graduation checklist for projects that have shipped
|
|
366
|
+
* Get the graduation checklist for projects that have shipped.
|
|
367
|
+
* Dynamically selects checklist based on project type.
|
|
368
|
+
*
|
|
369
|
+
* @param projectType - Detected project type (cli, library, web-app, api, mobile, monorepo)
|
|
293
370
|
*/
|
|
294
|
-
export function getGraduationChecklist() {
|
|
295
|
-
const
|
|
296
|
-
return
|
|
371
|
+
export function getGraduationChecklist(projectType) {
|
|
372
|
+
const type = projectType || 'unknown';
|
|
373
|
+
return PROJECT_CHECKLISTS[type] || PROJECT_CHECKLISTS['unknown'];
|
|
297
374
|
}
|
|
298
375
|
/**
|
|
299
376
|
* Format the graduation checklist as copyable text
|
|
300
377
|
*/
|
|
301
|
-
export function formatGraduationChecklist() {
|
|
302
|
-
const items = getGraduationChecklist();
|
|
378
|
+
export function formatGraduationChecklist(projectType) {
|
|
379
|
+
const items = getGraduationChecklist(projectType);
|
|
380
|
+
const typeLabel = projectType && projectType !== 'unknown' ? ` (${projectType})` : '';
|
|
303
381
|
const lines = [
|
|
304
|
-
|
|
382
|
+
`🎉 YOU SHIPPED${typeLabel}! Now grow your project:`,
|
|
305
383
|
'',
|
|
306
384
|
...items.map((item, i) => `${i + 1}. ${item.name.toUpperCase()} - ${item.action}`),
|
|
307
385
|
'',
|
package/dist/state/phase.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phase.js","sourceRoot":"","sources":["../../src/state/phase.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"phase.js","sourceRoot":"","sources":["../../src/state/phase.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"completeness.d.ts","sourceRoot":"","sources":["../../src/tools/completeness.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAUxB,eAAO,MAAM,kBAAkB;;;;;;;;;EAG7B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAMnE,UAAU,aAAa;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACjC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,UAAU,kBAAkB;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC1C,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,eAAe,EAAE,OAAO,CAAC;CAC1B;
|
|
1
|
+
{"version":3,"file":"completeness.d.ts","sourceRoot":"","sources":["../../src/tools/completeness.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAUxB,eAAO,MAAM,kBAAkB;;;;;;;;;EAG7B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAMnE,UAAU,aAAa;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACjC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,UAAU,kBAAkB;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC1C,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,eAAe,EAAE,OAAO,CAAC;CAC1B;AAi7BD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,GAAG,kBAAkB,CA6D9E"}
|
|
@@ -114,6 +114,22 @@ function checkSecurity(projectPath) {
|
|
|
114
114
|
const findings = [];
|
|
115
115
|
const recommendations = [];
|
|
116
116
|
let score = 0;
|
|
117
|
+
// Track detected security features
|
|
118
|
+
const detected = {
|
|
119
|
+
gitignore: false,
|
|
120
|
+
noSecrets: false,
|
|
121
|
+
noVulnerabilities: false,
|
|
122
|
+
rateLimit: false,
|
|
123
|
+
helmet: false,
|
|
124
|
+
cors: false,
|
|
125
|
+
inputValidation: false,
|
|
126
|
+
orm: false,
|
|
127
|
+
passwordHashing: false,
|
|
128
|
+
authHeaders: false,
|
|
129
|
+
};
|
|
130
|
+
// =========================================================================
|
|
131
|
+
// 1. SECRETS MANAGEMENT
|
|
132
|
+
// =========================================================================
|
|
117
133
|
// Check .gitignore
|
|
118
134
|
const gitignorePath = join(projectPath, '.gitignore');
|
|
119
135
|
if (existsSync(gitignorePath)) {
|
|
@@ -121,17 +137,17 @@ function checkSecurity(projectPath) {
|
|
|
121
137
|
const patterns = ['.env', 'node_modules', '*.key', '*.pem', 'secrets'];
|
|
122
138
|
const found = patterns.filter(p => content.includes(p));
|
|
123
139
|
if (found.length >= 3) {
|
|
124
|
-
|
|
140
|
+
detected.gitignore = true;
|
|
125
141
|
findings.push('.gitignore covers sensitive files');
|
|
126
142
|
}
|
|
127
143
|
else {
|
|
128
|
-
recommendations.push('Add
|
|
144
|
+
recommendations.push('Add .env, *.key, *.pem to .gitignore');
|
|
129
145
|
}
|
|
130
146
|
}
|
|
131
147
|
else {
|
|
132
148
|
recommendations.push('Create .gitignore to exclude sensitive files');
|
|
133
149
|
}
|
|
134
|
-
// Check for hardcoded secrets
|
|
150
|
+
// Check for hardcoded secrets
|
|
135
151
|
const secretPatterns = [
|
|
136
152
|
/api[_-]?key\s*[:=]\s*['"][a-zA-Z0-9]{20,}/i,
|
|
137
153
|
/secret\s*[:=]\s*['"][a-zA-Z0-9]{20,}/i,
|
|
@@ -172,13 +188,15 @@ function checkSecurity(projectPath) {
|
|
|
172
188
|
}
|
|
173
189
|
scanForSecrets(projectPath);
|
|
174
190
|
if (!foundSecrets) {
|
|
175
|
-
|
|
191
|
+
detected.noSecrets = true;
|
|
176
192
|
findings.push('No hardcoded secrets detected');
|
|
177
193
|
}
|
|
178
194
|
else {
|
|
179
|
-
recommendations.push('Remove hardcoded secrets
|
|
195
|
+
recommendations.push('Remove hardcoded secrets, use environment variables');
|
|
180
196
|
}
|
|
181
|
-
//
|
|
197
|
+
// =========================================================================
|
|
198
|
+
// 2. DEPENDENCY VULNERABILITIES
|
|
199
|
+
// =========================================================================
|
|
182
200
|
try {
|
|
183
201
|
const audit = execSync('npm audit --json 2>/dev/null || echo "{}"', {
|
|
184
202
|
cwd: projectPath,
|
|
@@ -191,7 +209,7 @@ function checkSecurity(projectPath) {
|
|
|
191
209
|
const critical = vulns.critical || 0;
|
|
192
210
|
const high = vulns.high || 0;
|
|
193
211
|
if (critical === 0 && high === 0) {
|
|
194
|
-
|
|
212
|
+
detected.noVulnerabilities = true;
|
|
195
213
|
findings.push('No critical/high vulnerabilities');
|
|
196
214
|
}
|
|
197
215
|
else {
|
|
@@ -201,32 +219,143 @@ function checkSecurity(projectPath) {
|
|
|
201
219
|
}
|
|
202
220
|
catch {
|
|
203
221
|
findings.push('npm audit skipped');
|
|
204
|
-
score += 10; // Neutral
|
|
205
222
|
}
|
|
206
|
-
//
|
|
207
|
-
|
|
208
|
-
|
|
223
|
+
// =========================================================================
|
|
224
|
+
// 3. SECURITY PATTERNS IN CODE
|
|
225
|
+
// =========================================================================
|
|
226
|
+
function scanForPatterns(dir, depth = 0) {
|
|
227
|
+
if (depth > 4)
|
|
228
|
+
return;
|
|
209
229
|
try {
|
|
210
|
-
const
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
score += 25;
|
|
217
|
-
findings.push('Security middleware detected');
|
|
218
|
-
break;
|
|
219
|
-
}
|
|
230
|
+
for (const entry of readdirSync(dir, { withFileTypes: true })) {
|
|
231
|
+
if (entry.name.startsWith('.') || entry.name === 'node_modules' || entry.name === 'dist')
|
|
232
|
+
continue;
|
|
233
|
+
const path = join(dir, entry.name);
|
|
234
|
+
if (entry.isDirectory()) {
|
|
235
|
+
scanForPatterns(path, depth + 1);
|
|
220
236
|
}
|
|
221
|
-
|
|
222
|
-
|
|
237
|
+
else if (['.ts', '.js', '.tsx', '.jsx'].includes(extname(entry.name))) {
|
|
238
|
+
try {
|
|
239
|
+
const content = readFileSync(path, 'utf-8');
|
|
240
|
+
// Rate limiting
|
|
241
|
+
if (!detected.rateLimit && (content.includes('rate-limit') ||
|
|
242
|
+
content.includes('rateLimit') ||
|
|
243
|
+
content.includes('express-rate-limit') ||
|
|
244
|
+
content.includes('@nestjs/throttler'))) {
|
|
245
|
+
detected.rateLimit = true;
|
|
246
|
+
findings.push('Rate limiting detected');
|
|
247
|
+
}
|
|
248
|
+
// Helmet (security headers)
|
|
249
|
+
if (!detected.helmet && content.includes('helmet')) {
|
|
250
|
+
detected.helmet = true;
|
|
251
|
+
findings.push('Helmet security headers detected');
|
|
252
|
+
}
|
|
253
|
+
// CORS
|
|
254
|
+
if (!detected.cors && (content.includes("cors(") ||
|
|
255
|
+
content.includes("'cors'") ||
|
|
256
|
+
content.includes('"cors"'))) {
|
|
257
|
+
detected.cors = true;
|
|
258
|
+
findings.push('CORS configuration detected');
|
|
259
|
+
}
|
|
260
|
+
// Input validation (zod, yup, joi, class-validator)
|
|
261
|
+
if (!detected.inputValidation && (content.includes('from "zod"') ||
|
|
262
|
+
content.includes("from 'zod'") ||
|
|
263
|
+
content.includes('from "yup"') ||
|
|
264
|
+
content.includes("from 'yup'") ||
|
|
265
|
+
content.includes('from "joi"') ||
|
|
266
|
+
content.includes("from 'joi'") ||
|
|
267
|
+
content.includes('class-validator'))) {
|
|
268
|
+
detected.inputValidation = true;
|
|
269
|
+
findings.push('Input validation library detected');
|
|
270
|
+
}
|
|
271
|
+
// ORM (SQL injection prevention)
|
|
272
|
+
if (!detected.orm && (content.includes('from "prisma"') ||
|
|
273
|
+
content.includes("from 'prisma'") ||
|
|
274
|
+
content.includes('@prisma/client') ||
|
|
275
|
+
content.includes('from "drizzle') ||
|
|
276
|
+
content.includes("from 'drizzle") ||
|
|
277
|
+
content.includes('typeorm') ||
|
|
278
|
+
content.includes('sequelize') ||
|
|
279
|
+
content.includes('knex') ||
|
|
280
|
+
content.includes('mongoose'))) {
|
|
281
|
+
detected.orm = true;
|
|
282
|
+
findings.push('ORM/query builder detected (SQL injection prevention)');
|
|
283
|
+
}
|
|
284
|
+
// Password hashing
|
|
285
|
+
if (!detected.passwordHashing && (content.includes('bcrypt') ||
|
|
286
|
+
content.includes('argon2') ||
|
|
287
|
+
content.includes('scrypt'))) {
|
|
288
|
+
detected.passwordHashing = true;
|
|
289
|
+
findings.push('Password hashing detected');
|
|
290
|
+
}
|
|
291
|
+
// Authorization headers
|
|
292
|
+
if (!detected.authHeaders && (content.includes('authorization') ||
|
|
293
|
+
content.includes('Authorization') ||
|
|
294
|
+
content.includes('bearer') ||
|
|
295
|
+
content.includes('Bearer') ||
|
|
296
|
+
content.includes('jwt') ||
|
|
297
|
+
content.includes('JWT'))) {
|
|
298
|
+
detected.authHeaders = true;
|
|
299
|
+
findings.push('Authorization/JWT handling detected');
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
catch {
|
|
303
|
+
// Skip unreadable
|
|
304
|
+
}
|
|
223
305
|
}
|
|
224
306
|
}
|
|
225
307
|
}
|
|
226
308
|
catch {
|
|
227
|
-
// Skip
|
|
309
|
+
// Skip inaccessible
|
|
228
310
|
}
|
|
229
311
|
}
|
|
312
|
+
scanForPatterns(projectPath);
|
|
313
|
+
// =========================================================================
|
|
314
|
+
// 4. SCORE CALCULATION
|
|
315
|
+
// =========================================================================
|
|
316
|
+
// Secrets management (25 points)
|
|
317
|
+
if (detected.gitignore)
|
|
318
|
+
score += 10;
|
|
319
|
+
if (detected.noSecrets)
|
|
320
|
+
score += 15;
|
|
321
|
+
// Vulnerabilities (15 points)
|
|
322
|
+
if (detected.noVulnerabilities)
|
|
323
|
+
score += 15;
|
|
324
|
+
// API protection (30 points)
|
|
325
|
+
if (detected.rateLimit)
|
|
326
|
+
score += 10;
|
|
327
|
+
if (detected.helmet)
|
|
328
|
+
score += 10;
|
|
329
|
+
if (detected.cors)
|
|
330
|
+
score += 5;
|
|
331
|
+
if (detected.authHeaders)
|
|
332
|
+
score += 5;
|
|
333
|
+
// Injection prevention (20 points)
|
|
334
|
+
if (detected.inputValidation)
|
|
335
|
+
score += 10;
|
|
336
|
+
if (detected.orm)
|
|
337
|
+
score += 10;
|
|
338
|
+
// Password security (10 points)
|
|
339
|
+
if (detected.passwordHashing)
|
|
340
|
+
score += 10;
|
|
341
|
+
// =========================================================================
|
|
342
|
+
// 5. RECOMMENDATIONS FOR MISSING ITEMS
|
|
343
|
+
// =========================================================================
|
|
344
|
+
if (!detected.rateLimit) {
|
|
345
|
+
recommendations.push('Add rate limiting (express-rate-limit for Node.js)');
|
|
346
|
+
}
|
|
347
|
+
if (!detected.helmet) {
|
|
348
|
+
recommendations.push('Add security headers with helmet middleware');
|
|
349
|
+
}
|
|
350
|
+
if (!detected.cors) {
|
|
351
|
+
recommendations.push('Configure CORS (avoid wildcard * in production)');
|
|
352
|
+
}
|
|
353
|
+
if (!detected.inputValidation) {
|
|
354
|
+
recommendations.push('Add input validation (zod, yup, or joi)');
|
|
355
|
+
}
|
|
356
|
+
if (!detected.orm && existsSync(join(projectPath, 'src'))) {
|
|
357
|
+
recommendations.push('Use ORM/query builder to prevent SQL injection');
|
|
358
|
+
}
|
|
230
359
|
return {
|
|
231
360
|
score: Math.min(100, score),
|
|
232
361
|
weight: 3,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"completeness.js","sourceRoot":"","sources":["../../src/tools/completeness.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"completeness.js","sourceRoot":"","sources":["../../src/tools/completeness.ts"],"names":[],"mappings":"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"}
|