autogit-tool 1.0.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/LICENSE +21 -0
- package/README.md +42 -0
- package/dist/ai/prompts.d.ts +10 -0
- package/dist/ai/prompts.d.ts.map +1 -0
- package/dist/ai/prompts.js +169 -0
- package/dist/ai/prompts.js.map +1 -0
- package/dist/ai/provider.d.ts +24 -0
- package/dist/ai/provider.d.ts.map +1 -0
- package/dist/ai/provider.js +305 -0
- package/dist/ai/provider.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +228 -0
- package/dist/cli.js.map +1 -0
- package/dist/commands/analyze.d.ts +4 -0
- package/dist/commands/analyze.d.ts.map +1 -0
- package/dist/commands/analyze.js +63 -0
- package/dist/commands/analyze.js.map +1 -0
- package/dist/commands/config.d.ts +8 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +457 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/docs.d.ts +5 -0
- package/dist/commands/docs.d.ts.map +1 -0
- package/dist/commands/docs.js +22 -0
- package/dist/commands/docs.js.map +1 -0
- package/dist/commands/doctor.d.ts +2 -0
- package/dist/commands/doctor.d.ts.map +1 -0
- package/dist/commands/doctor.js +69 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/github.d.ts +5 -0
- package/dist/commands/github.d.ts.map +1 -0
- package/dist/commands/github.js +46 -0
- package/dist/commands/github.js.map +1 -0
- package/dist/commands/init.d.ts +2 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +38 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/linkedin.d.ts +4 -0
- package/dist/commands/linkedin.d.ts.map +1 -0
- package/dist/commands/linkedin.js +42 -0
- package/dist/commands/linkedin.js.map +1 -0
- package/dist/commands/login.d.ts +2 -0
- package/dist/commands/login.d.ts.map +1 -0
- package/dist/commands/login.js +301 -0
- package/dist/commands/login.js.map +1 -0
- package/dist/commands/publish.d.ts +5 -0
- package/dist/commands/publish.d.ts.map +1 -0
- package/dist/commands/publish.js +58 -0
- package/dist/commands/publish.js.map +1 -0
- package/dist/commands/readme.d.ts +5 -0
- package/dist/commands/readme.d.ts.map +1 -0
- package/dist/commands/readme.js +32 -0
- package/dist/commands/readme.js.map +1 -0
- package/dist/commands/release.d.ts +5 -0
- package/dist/commands/release.d.ts.map +1 -0
- package/dist/commands/release.js +56 -0
- package/dist/commands/release.js.map +1 -0
- package/dist/commands/resume.d.ts +8 -0
- package/dist/commands/resume.d.ts.map +1 -0
- package/dist/commands/resume.js +228 -0
- package/dist/commands/resume.js.map +1 -0
- package/dist/config/manager.d.ts +67 -0
- package/dist/config/manager.d.ts.map +1 -0
- package/dist/config/manager.js +78 -0
- package/dist/config/manager.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/pipeline/main-pipeline.d.ts +15 -0
- package/dist/pipeline/main-pipeline.d.ts.map +1 -0
- package/dist/pipeline/main-pipeline.js +279 -0
- package/dist/pipeline/main-pipeline.js.map +1 -0
- package/dist/scanner/file-scanner.d.ts +21 -0
- package/dist/scanner/file-scanner.d.ts.map +1 -0
- package/dist/scanner/file-scanner.js +90 -0
- package/dist/scanner/file-scanner.js.map +1 -0
- package/dist/scanner/project-analyzer.d.ts +26 -0
- package/dist/scanner/project-analyzer.d.ts.map +1 -0
- package/dist/scanner/project-analyzer.js +454 -0
- package/dist/scanner/project-analyzer.js.map +1 -0
- package/dist/services/docs-generator.d.ts +11 -0
- package/dist/services/docs-generator.d.ts.map +1 -0
- package/dist/services/docs-generator.js +172 -0
- package/dist/services/docs-generator.js.map +1 -0
- package/dist/services/git-service.d.ts +22 -0
- package/dist/services/git-service.d.ts.map +1 -0
- package/dist/services/git-service.js +162 -0
- package/dist/services/git-service.js.map +1 -0
- package/dist/services/github-service.d.ts +44 -0
- package/dist/services/github-service.d.ts.map +1 -0
- package/dist/services/github-service.js +131 -0
- package/dist/services/github-service.js.map +1 -0
- package/dist/services/insights.d.ts +24 -0
- package/dist/services/insights.d.ts.map +1 -0
- package/dist/services/insights.js +140 -0
- package/dist/services/insights.js.map +1 -0
- package/dist/services/readme-manager.d.ts +11 -0
- package/dist/services/readme-manager.d.ts.map +1 -0
- package/dist/services/readme-manager.js +180 -0
- package/dist/services/readme-manager.js.map +1 -0
- package/dist/services/resume-manager.d.ts +29 -0
- package/dist/services/resume-manager.d.ts.map +1 -0
- package/dist/services/resume-manager.js +186 -0
- package/dist/services/resume-manager.js.map +1 -0
- package/dist/services/social-generator.d.ts +14 -0
- package/dist/services/social-generator.d.ts.map +1 -0
- package/dist/services/social-generator.js +93 -0
- package/dist/services/social-generator.js.map +1 -0
- package/dist/utils/logger.d.ts +19 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +81 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/platform.d.ts +8 -0
- package/dist/utils/platform.d.ts.map +1 -0
- package/dist/utils/platform.js +27 -0
- package/dist/utils/platform.js.map +1 -0
- package/package.json +74 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { getProvider } from '../ai/provider.js';
|
|
2
|
+
import { linkedinPostPrompt, twitterPostPrompt } from '../ai/prompts.js';
|
|
3
|
+
import { logger, spinner } from '../utils/logger.js';
|
|
4
|
+
export async function generateSocialContent(analysis, useAI) {
|
|
5
|
+
if (!useAI) {
|
|
6
|
+
return generateTemplateSocialContent(analysis);
|
|
7
|
+
}
|
|
8
|
+
const spin = spinner('Generating social media content...').start();
|
|
9
|
+
try {
|
|
10
|
+
const provider = getProvider();
|
|
11
|
+
// Generate LinkedIn posts (3 versions)
|
|
12
|
+
const [shortPost, mediumPost, longPost, tweet] = await Promise.all([
|
|
13
|
+
generateSingle(provider, linkedinPostPrompt(analysis, 'short')),
|
|
14
|
+
generateSingle(provider, linkedinPostPrompt(analysis, 'medium')),
|
|
15
|
+
generateSingle(provider, linkedinPostPrompt(analysis, 'long')),
|
|
16
|
+
generateSingle(provider, twitterPostPrompt(analysis)),
|
|
17
|
+
]);
|
|
18
|
+
// Generate additional content
|
|
19
|
+
const devto = await generateSingle(provider, devtoPrompt(analysis));
|
|
20
|
+
const resumeBullet = await generateSingle(provider, resumePrompt(analysis));
|
|
21
|
+
const portfolioDesc = await generateSingle(provider, portfolioPrompt(analysis));
|
|
22
|
+
spin.succeed('Social media content generated');
|
|
23
|
+
return {
|
|
24
|
+
linkedin: {
|
|
25
|
+
short: shortPost,
|
|
26
|
+
medium: mediumPost,
|
|
27
|
+
long: longPost,
|
|
28
|
+
},
|
|
29
|
+
twitter: tweet,
|
|
30
|
+
devto,
|
|
31
|
+
resumeBullet,
|
|
32
|
+
portfolioDescription: portfolioDesc,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
catch (error) {
|
|
36
|
+
spin.fail('Social content generation failed');
|
|
37
|
+
logger.warn(`Falling back to templates: ${error.message}`);
|
|
38
|
+
return generateTemplateSocialContent(analysis);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
async function generateSingle(provider, prompt) {
|
|
42
|
+
const messages = [
|
|
43
|
+
{ role: 'system', content: 'You are a professional content writer for developers.' },
|
|
44
|
+
{ role: 'user', content: prompt },
|
|
45
|
+
];
|
|
46
|
+
const response = await provider.generate(messages, { temperature: 0.8, maxTokens: 2000 });
|
|
47
|
+
return response.content.trim();
|
|
48
|
+
}
|
|
49
|
+
function devtoPrompt(analysis) {
|
|
50
|
+
return `Write a brief DEV.to article draft (title + intro paragraph) announcing this project:
|
|
51
|
+
|
|
52
|
+
Project: ${analysis.name}
|
|
53
|
+
Tech: ${[...analysis.languages, ...analysis.frameworks].join(', ')}
|
|
54
|
+
${analysis.description || ''}
|
|
55
|
+
|
|
56
|
+
Include a catchy title, engaging intro, and mention to include code examples. Return title on first line, then content.`;
|
|
57
|
+
}
|
|
58
|
+
function resumePrompt(analysis) {
|
|
59
|
+
return `Write a single resume bullet point for this project:
|
|
60
|
+
|
|
61
|
+
Project: ${analysis.name}
|
|
62
|
+
Tech: ${[...analysis.languages, ...analysis.frameworks].join(', ')}
|
|
63
|
+
${analysis.description || ''}
|
|
64
|
+
|
|
65
|
+
Format: "Developed/Built/Created [what] using [tech] that [impact/result]"
|
|
66
|
+
Return ONLY the bullet point.`;
|
|
67
|
+
}
|
|
68
|
+
function portfolioPrompt(analysis) {
|
|
69
|
+
return `Write a 2-3 sentence portfolio description for this project:
|
|
70
|
+
|
|
71
|
+
Project: ${analysis.name}
|
|
72
|
+
Tech: ${[...analysis.languages, ...analysis.frameworks].join(', ')}
|
|
73
|
+
${analysis.description || ''}
|
|
74
|
+
|
|
75
|
+
Be concise and professional. Return ONLY the description.`;
|
|
76
|
+
}
|
|
77
|
+
function generateTemplateSocialContent(analysis) {
|
|
78
|
+
const techList = [...analysis.languages, ...analysis.frameworks].join(', ');
|
|
79
|
+
const name = analysis.name;
|
|
80
|
+
const desc = analysis.description || `A ${analysis.languages[0] || ''} project`;
|
|
81
|
+
return {
|
|
82
|
+
linkedin: {
|
|
83
|
+
short: `🚀 Just shipped ${name}! ${desc}. Built with ${techList}. Check it out: [GITHUB_LINK]\n\n#${analysis.languages[0] || 'coding'} #opensource #development`,
|
|
84
|
+
medium: `🚀 Excited to share my latest project: ${name}\n\n${desc}\n\nBuilt with: ${techList}\n\nKey highlights:\n${analysis.features.slice(0, 3).map(f => `• ${f}`).join('\n') || '• Clean architecture\n• Well documented'}\n\nCheck it out: [GITHUB_LINK]\n\nFeedback welcome! 🙏\n\n#${analysis.languages[0] || 'coding'} #opensource #softwaredevelopment`,
|
|
85
|
+
long: `🚀 Excited to announce the release of ${name}!\n\n${desc}\n\n🛠️ Tech Stack: ${techList}\n\nWhat it does:\n${analysis.features.slice(0, 5).map(f => `• ${f}`).join('\n') || '• Solves real-world problems\n• Clean, maintainable code'}\n\nThis project taught me a lot about ${analysis.frameworks[0] || analysis.languages[0] || 'software development'} and building production-quality software.\n\nI'd love to hear your thoughts and feedback. Star it if you find it useful! ⭐\n\n🔗 [GITHUB_LINK]\n\n#${analysis.languages[0] || 'coding'} #opensource #softwaredevelopment #programming`,
|
|
86
|
+
},
|
|
87
|
+
twitter: `🚀 Just released ${name} - ${desc}. Built with ${techList}. [GITHUB_LINK] #${analysis.languages[0] || 'coding'} #opensource`,
|
|
88
|
+
devto: `# Introducing ${name}\n\n${desc}\n\nBuilt with ${techList}.\n\n## Getting Started\n\n*Add installation and usage instructions here.*`,
|
|
89
|
+
resumeBullet: `Developed ${name} using ${techList}${analysis.description ? `, ${analysis.description.toLowerCase()}` : ''}`,
|
|
90
|
+
portfolioDescription: `${name} - ${desc}. Built with ${techList}.`,
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=social-generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"social-generator.js","sourceRoot":"","sources":["../../src/services/social-generator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAkB,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAcrD,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,QAAyB,EACzB,KAAc;IAEd,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,6BAA6B,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,oCAAoC,CAAC,CAAC,KAAK,EAAE,CAAC;IAEnE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;QAE/B,uCAAuC;QACvC,MAAM,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACjE,cAAc,CAAC,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC/D,cAAc,CAAC,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAChE,cAAc,CAAC,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC9D,cAAc,CAAC,QAAQ,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAC;SACtD,CAAC,CAAC;QAEH,8BAA8B;QAC9B,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;QACpE,MAAM,YAAY,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC5E,MAAM,aAAa,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEhF,IAAI,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;QAE/C,OAAO;YACL,QAAQ,EAAE;gBACR,KAAK,EAAE,SAAS;gBAChB,MAAM,EAAE,UAAU;gBAClB,IAAI,EAAE,QAAQ;aACf;YACD,OAAO,EAAE,KAAK;YACd,KAAK;YACL,YAAY;YACZ,oBAAoB,EAAE,aAAa;SACpC,CAAC;IACJ,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;QAC9C,MAAM,CAAC,IAAI,CAAC,8BAA8B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3D,OAAO,6BAA6B,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC;AACH,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,QAAa,EAAE,MAAc;IACzD,MAAM,QAAQ,GAAgB;QAC5B,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,uDAAuD,EAAE;QACpF,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE;KAClC,CAAC;IAEF,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1F,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;AACjC,CAAC;AAED,SAAS,WAAW,CAAC,QAAyB;IAC5C,OAAO;;WAEE,QAAQ,CAAC,IAAI;QAChB,CAAC,GAAG,QAAQ,CAAC,SAAS,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;EAChE,QAAQ,CAAC,WAAW,IAAI,EAAE;;wHAE4F,CAAC;AACzH,CAAC;AAED,SAAS,YAAY,CAAC,QAAyB;IAC7C,OAAO;;WAEE,QAAQ,CAAC,IAAI;QAChB,CAAC,GAAG,QAAQ,CAAC,SAAS,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;EAChE,QAAQ,CAAC,WAAW,IAAI,EAAE;;;8BAGE,CAAC;AAC/B,CAAC;AAED,SAAS,eAAe,CAAC,QAAyB;IAChD,OAAO;;WAEE,QAAQ,CAAC,IAAI;QAChB,CAAC,GAAG,QAAQ,CAAC,SAAS,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;EAChE,QAAQ,CAAC,WAAW,IAAI,EAAE;;0DAE8B,CAAC;AAC3D,CAAC;AAED,SAAS,6BAA6B,CAAC,QAAyB;IAC9D,MAAM,QAAQ,GAAG,CAAC,GAAG,QAAQ,CAAC,SAAS,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5E,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC3B,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,IAAI,KAAK,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,UAAU,CAAC;IAEhF,OAAO;QACL,QAAQ,EAAE;YACR,KAAK,EAAE,mBAAmB,IAAI,KAAK,IAAI,gBAAgB,QAAQ,qCAAqC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,QAAQ,2BAA2B;YAChK,MAAM,EAAE,0CAA0C,IAAI,OAAO,IAAI,mBAAmB,QAAQ,wBAAwB,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,yCAAyC,+DAA+D,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,QAAQ,mCAAmC;YAC/V,IAAI,EAAE,yCAAyC,IAAI,QAAQ,IAAI,uBAAuB,QAAQ,sBAAsB,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,0DAA0D,0CAA0C,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,sBAAsB,uJAAuJ,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,QAAQ,gDAAgD;SACzkB;QACD,OAAO,EAAE,oBAAoB,IAAI,MAAM,IAAI,gBAAgB,QAAQ,oBAAoB,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,QAAQ,cAAc;QACtI,KAAK,EAAE,iBAAiB,IAAI,OAAO,IAAI,kBAAkB,QAAQ,4EAA4E;QAC7I,YAAY,EAAE,aAAa,IAAI,UAAU,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;QAC3H,oBAAoB,EAAE,GAAG,IAAI,MAAM,IAAI,gBAAgB,QAAQ,GAAG;KACnE,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { type Ora } from 'ora';
|
|
2
|
+
export type LogLevel = 'verbose' | 'normal' | 'quiet';
|
|
3
|
+
export declare function setLogLevel(level: LogLevel): void;
|
|
4
|
+
export declare function getLogLevel(): LogLevel;
|
|
5
|
+
export declare const logger: {
|
|
6
|
+
info(msg: string): void;
|
|
7
|
+
success(msg: string): void;
|
|
8
|
+
warn(msg: string): void;
|
|
9
|
+
error(msg: string): void;
|
|
10
|
+
step(msg: string): void;
|
|
11
|
+
verbose(msg: string): void;
|
|
12
|
+
blank(): void;
|
|
13
|
+
header(msg: string): void;
|
|
14
|
+
dimmed(msg: string): void;
|
|
15
|
+
highlight(msg: string): void;
|
|
16
|
+
box(title: string, content: string): void;
|
|
17
|
+
};
|
|
18
|
+
export declare function spinner(text: string): Ora;
|
|
19
|
+
//# sourceMappingURL=logger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AACA,OAAY,EAAE,KAAK,GAAG,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAItD,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAEjD;AAED,wBAAgB,WAAW,IAAI,QAAQ,CAEtC;AAED,eAAO,MAAM,MAAM;cACP,MAAM,GAAG,IAAI;iBAKV,MAAM,GAAG,IAAI;cAKhB,MAAM,GAAG,IAAI;eAIZ,MAAM,GAAG,IAAI;cAId,MAAM,GAAG,IAAI;iBAKV,MAAM,GAAG,IAAI;aAKjB,IAAI;gBAKD,MAAM,GAAG,IAAI;gBAOb,MAAM,GAAG,IAAI;mBAKV,MAAM,GAAG,IAAI;eAKjB,MAAM,WAAW,MAAM,GAAG,IAAI;CAc1C,CAAC;AAEF,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAKzC"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import ora from 'ora';
|
|
3
|
+
let currentLevel = 'normal';
|
|
4
|
+
export function setLogLevel(level) {
|
|
5
|
+
currentLevel = level;
|
|
6
|
+
}
|
|
7
|
+
export function getLogLevel() {
|
|
8
|
+
return currentLevel;
|
|
9
|
+
}
|
|
10
|
+
export const logger = {
|
|
11
|
+
info(msg) {
|
|
12
|
+
if (currentLevel === 'quiet')
|
|
13
|
+
return;
|
|
14
|
+
console.log(chalk.blue('ℹ') + ' ' + msg);
|
|
15
|
+
},
|
|
16
|
+
success(msg) {
|
|
17
|
+
if (currentLevel === 'quiet')
|
|
18
|
+
return;
|
|
19
|
+
console.log(chalk.green('✔') + ' ' + msg);
|
|
20
|
+
},
|
|
21
|
+
warn(msg) {
|
|
22
|
+
console.log(chalk.yellow('⚠') + ' ' + chalk.yellow(msg));
|
|
23
|
+
},
|
|
24
|
+
error(msg) {
|
|
25
|
+
console.error(chalk.red('✖') + ' ' + chalk.red(msg));
|
|
26
|
+
},
|
|
27
|
+
step(msg) {
|
|
28
|
+
if (currentLevel === 'quiet')
|
|
29
|
+
return;
|
|
30
|
+
console.log(chalk.cyan('→') + ' ' + msg);
|
|
31
|
+
},
|
|
32
|
+
verbose(msg) {
|
|
33
|
+
if (currentLevel !== 'verbose')
|
|
34
|
+
return;
|
|
35
|
+
console.log(chalk.gray(' ' + msg));
|
|
36
|
+
},
|
|
37
|
+
blank() {
|
|
38
|
+
if (currentLevel === 'quiet')
|
|
39
|
+
return;
|
|
40
|
+
console.log();
|
|
41
|
+
},
|
|
42
|
+
header(msg) {
|
|
43
|
+
if (currentLevel === 'quiet')
|
|
44
|
+
return;
|
|
45
|
+
console.log();
|
|
46
|
+
console.log(chalk.bold.white(msg));
|
|
47
|
+
console.log(chalk.gray('─'.repeat(Math.min(msg.length + 4, 60))));
|
|
48
|
+
},
|
|
49
|
+
dimmed(msg) {
|
|
50
|
+
if (currentLevel === 'quiet')
|
|
51
|
+
return;
|
|
52
|
+
console.log(chalk.gray(msg));
|
|
53
|
+
},
|
|
54
|
+
highlight(msg) {
|
|
55
|
+
if (currentLevel === 'quiet')
|
|
56
|
+
return;
|
|
57
|
+
console.log(chalk.bold.cyan(msg));
|
|
58
|
+
},
|
|
59
|
+
box(title, content) {
|
|
60
|
+
if (currentLevel === 'quiet')
|
|
61
|
+
return;
|
|
62
|
+
const lines = content.split('\n');
|
|
63
|
+
const maxLen = Math.max(title.length, ...lines.map(l => l.length));
|
|
64
|
+
const border = '─'.repeat(maxLen + 2);
|
|
65
|
+
console.log();
|
|
66
|
+
console.log(chalk.gray(`┌${border}┐`));
|
|
67
|
+
console.log(chalk.gray('│ ') + chalk.bold.white(title.padEnd(maxLen)) + chalk.gray(' │'));
|
|
68
|
+
console.log(chalk.gray(`├${border}┤`));
|
|
69
|
+
for (const line of lines) {
|
|
70
|
+
console.log(chalk.gray('│ ') + line.padEnd(maxLen) + chalk.gray(' │'));
|
|
71
|
+
}
|
|
72
|
+
console.log(chalk.gray(`└${border}┘`));
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
export function spinner(text) {
|
|
76
|
+
if (currentLevel === 'quiet') {
|
|
77
|
+
return ora({ text, isSilent: true });
|
|
78
|
+
}
|
|
79
|
+
return ora({ text, color: 'cyan' });
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare function isWindows(): boolean;
|
|
2
|
+
export declare function isMacOS(): boolean;
|
|
3
|
+
export declare function isLinux(): boolean;
|
|
4
|
+
export declare function getConfigDir(): string;
|
|
5
|
+
export declare function getConfigPath(): string;
|
|
6
|
+
export declare function getShell(): string;
|
|
7
|
+
export declare function normalizePath(p: string): string;
|
|
8
|
+
//# sourceMappingURL=platform.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/utils/platform.ts"],"names":[],"mappings":"AAGA,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AAED,wBAAgB,OAAO,IAAI,OAAO,CAEjC;AAED,wBAAgB,OAAO,IAAI,OAAO,CAEjC;AAED,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,wBAAgB,QAAQ,IAAI,MAAM,CAKjC;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE/C"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { platform, homedir } from 'os';
|
|
2
|
+
import { join } from 'path';
|
|
3
|
+
export function isWindows() {
|
|
4
|
+
return platform() === 'win32';
|
|
5
|
+
}
|
|
6
|
+
export function isMacOS() {
|
|
7
|
+
return platform() === 'darwin';
|
|
8
|
+
}
|
|
9
|
+
export function isLinux() {
|
|
10
|
+
return platform() === 'linux';
|
|
11
|
+
}
|
|
12
|
+
export function getConfigDir() {
|
|
13
|
+
return join(homedir(), '.autogit');
|
|
14
|
+
}
|
|
15
|
+
export function getConfigPath() {
|
|
16
|
+
return join(getConfigDir(), 'config.json');
|
|
17
|
+
}
|
|
18
|
+
export function getShell() {
|
|
19
|
+
if (isWindows()) {
|
|
20
|
+
return process.env.COMSPEC || 'cmd.exe';
|
|
21
|
+
}
|
|
22
|
+
return process.env.SHELL || '/bin/sh';
|
|
23
|
+
}
|
|
24
|
+
export function normalizePath(p) {
|
|
25
|
+
return p.replace(/\\/g, '/');
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=platform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../../src/utils/platform.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,MAAM,UAAU,SAAS;IACvB,OAAO,QAAQ,EAAE,KAAK,OAAO,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,OAAO;IACrB,OAAO,QAAQ,EAAE,KAAK,QAAQ,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,OAAO;IACrB,OAAO,QAAQ,EAAE,KAAK,OAAO,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,IAAI,CAAC,YAAY,EAAE,EAAE,aAAa,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,QAAQ;IACtB,IAAI,SAAS,EAAE,EAAE,CAAC;QAChB,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,SAAS,CAAC;IAC1C,CAAC;IACD,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,SAAS,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,CAAS;IACrC,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC/B,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "autogit-tool",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Automate project documentation, GitHub publishing, and social media content generation — run autogit in any project folder",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"bin": {
|
|
9
|
+
"autogit": "dist/cli.js"
|
|
10
|
+
},
|
|
11
|
+
"scripts": {
|
|
12
|
+
"build": "tsc",
|
|
13
|
+
"dev": "tsc --watch",
|
|
14
|
+
"start": "node dist/cli.js",
|
|
15
|
+
"lint": "eslint src --ext .ts",
|
|
16
|
+
"prepublishOnly": "npm run build"
|
|
17
|
+
},
|
|
18
|
+
"keywords": [
|
|
19
|
+
"cli",
|
|
20
|
+
"git",
|
|
21
|
+
"github",
|
|
22
|
+
"documentation",
|
|
23
|
+
"readme",
|
|
24
|
+
"automation",
|
|
25
|
+
"publishing",
|
|
26
|
+
"linkedin",
|
|
27
|
+
"developer-tools",
|
|
28
|
+
"ai",
|
|
29
|
+
"openai",
|
|
30
|
+
"groq",
|
|
31
|
+
"commit",
|
|
32
|
+
"release"
|
|
33
|
+
],
|
|
34
|
+
"author": "Vardh Chhajer <chhajervardh@gmail.com>",
|
|
35
|
+
"license": "MIT",
|
|
36
|
+
"homepage": "https://github.com/membranegaming/autogit-cli",
|
|
37
|
+
"repository": {
|
|
38
|
+
"type": "git",
|
|
39
|
+
"url": "https://github.com/membranegaming/autogit-cli.git"
|
|
40
|
+
},
|
|
41
|
+
"bugs": {
|
|
42
|
+
"url": "https://github.com/membranegaming/autogit-cli/issues"
|
|
43
|
+
},
|
|
44
|
+
"engines": {
|
|
45
|
+
"node": ">=18.0.0"
|
|
46
|
+
},
|
|
47
|
+
"files": [
|
|
48
|
+
"dist/**/*",
|
|
49
|
+
"README.md",
|
|
50
|
+
"LICENSE"
|
|
51
|
+
],
|
|
52
|
+
"dependencies": {
|
|
53
|
+
"chalk": "^5.3.0",
|
|
54
|
+
"commander": "^12.1.0",
|
|
55
|
+
"conf": "^13.0.1",
|
|
56
|
+
"diff": "^5.2.0",
|
|
57
|
+
"globby": "^14.0.2",
|
|
58
|
+
"inquirer": "^9.3.7",
|
|
59
|
+
"ora": "^8.1.0",
|
|
60
|
+
"simple-git": "^3.27.0",
|
|
61
|
+
"octokit": "^4.0.2",
|
|
62
|
+
"cli-table3": "^0.6.5",
|
|
63
|
+
"marked": "^14.1.0",
|
|
64
|
+
"marked-terminal": "^7.1.0",
|
|
65
|
+
"dotenv": "^16.4.5",
|
|
66
|
+
"open": "^10.1.0"
|
|
67
|
+
},
|
|
68
|
+
"devDependencies": {
|
|
69
|
+
"@types/diff": "^5.2.2",
|
|
70
|
+
"@types/inquirer": "^9.0.7",
|
|
71
|
+
"@types/node": "^22.9.0",
|
|
72
|
+
"typescript": "^5.6.3"
|
|
73
|
+
}
|
|
74
|
+
}
|