
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
@erwanmarega/git-agent
Advanced tools
AI-powered Git assistant - Generate intelligent commit messages, detect secrets, analyze changes, and automate your Git workflow with Claude AI
AI-powered Git assistant that transforms your commit workflow into an interactive, intelligent experience using Claude AI.
npm install -g @erwanmarega/git-agent
Or use it locally in your project:
npm install @erwanmarega/git-agent
git-agent init
This will guide you through setting up:
# Stage your changes
git add .
# Use Git Agent for an intelligent commit
git-agent commit
Git Agent will:
git-agent initInteractive setup wizard to configure Git Agent.
git-agent commitInteractive commit workflow with AI assistance.
Options:
Git Agent can also be used as a library in your Node.js projects:
import {
AIService,
GitAnalyzer,
SuggestionsEngine,
BranchSuggester,
ChangeAnalyzer
} from '@erwanmarega/git-agent';
// Generate commit messages
const ai = new AIService(process.env.ANTHROPIC_API_KEY);
const message = await ai.generateCommitMessage(diff, context);
// Analyze git changes
const git = new GitAnalyzer();
const { files, diff, hasChanges } = await git.getStagedChanges();
// Detect secrets and TODOs
const suggestions = new SuggestionsEngine();
const result = suggestions.analyze(files, diff);
if (result.hasHighSeverity) {
console.log('Security issues detected!');
}
// Suggest branch names
const branchSuggester = new BranchSuggester();
const branchName = branchSuggester.suggestBranchName(files, diff);
// Analyze file changes
const changeAnalyzer = new ChangeAnalyzer();
const analysis = changeAnalyzer.analyzeFiles(files);
class AIService {
constructor(apiKey?: string);
generateCommitMessage(diff: string, context?: string): Promise<string>;
}
class GitAnalyzer {
getStagedChanges(): Promise<{ files: string[]; diff: string; hasChanges: boolean }>;
getStatus(): Promise<StatusResult>;
createCommit(message: string): Promise<void>;
getCurrentBranch(): Promise<string>;
push(branch: string, setUpstream?: boolean): Promise<void>;
// ... and more
}
class SuggestionsEngine {
analyze(files: string[], diff: string): SuggestionResult;
getSummary(result: SuggestionResult): string[];
}
interface SuggestionResult {
secrets: SecretDetection[];
todos: TodoDetection[];
hasHighSeverity: boolean;
hasMediumSeverity: boolean;
totalIssues: number;
}
class BranchSuggester {
suggestBranchName(files: string[], diff?: string): string;
generateMultipleSuggestions(files: string[], diff?: string): string[];
}
class ChangeAnalyzer {
analyzeFiles(files: string[]): AnalysisResult;
}
interface AnalysisResult {
groups: FileGroup[];
hasMultipleScopes: boolean;
totalFiles: number;
suggestions: string[];
}
class PRManager {
isGitHubCLIInstalled(): Promise<boolean>;
createPR(title: string, body: string, baseBranch?: string, reviewers?: string[]): Promise<string>;
generatePRTitle(commits: string[]): string;
generatePRBody(commits: string[]): string;
}
Git Agent stores its configuration in ~/.git-agent/config.json:
{
"anthropicApiKey": "your-api-key",
"model": "claude-sonnet-4-20250514",
"jira": {
"enabled": false,
"baseUrl": "",
"email": "",
"apiToken": ""
}
}
ANTHROPIC_API_KEY: Your Anthropic API key (alternative to config file)gh) for PR creation (optional)Git Agent helps you avoid committing sensitive data by detecting:
.env, credentials.json, *.pem, id_rsa, etc.Contributions are welcome! Please feel free to submit a Pull Request.
git checkout -b feat/amazing-feature)git-agent commit)git push origin feat/amazing-feature)MIT License - see the LICENSE file for details.
erwanmarega - GitHub
Made with Claude AI
FAQs
AI-powered Git assistant - Generate intelligent commit messages, detect secrets, analyze changes, and automate your Git workflow with Claude AI
We found that @erwanmarega/git-agent demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.