chore: bump version to 10.0.2
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
import { existsSync, readFileSync, writeFileSync, renameSync, mkdirSync } from 'fs';
|
||||
import { dirname } from 'path';
|
||||
import { replaceTaggedContent } from './claude-md-utils.js';
|
||||
import { logger } from './logger.js';
|
||||
|
||||
/**
|
||||
* Write AGENTS.md with claude-mem context, preserving user content outside tags.
|
||||
* Uses atomic write to prevent partial writes.
|
||||
*/
|
||||
export function writeAgentsMd(agentsPath: string, context: string): void {
|
||||
if (!agentsPath) return;
|
||||
|
||||
const dir = dirname(agentsPath);
|
||||
if (!existsSync(dir)) {
|
||||
mkdirSync(dir, { recursive: true });
|
||||
}
|
||||
|
||||
let existingContent = '';
|
||||
if (existsSync(agentsPath)) {
|
||||
existingContent = readFileSync(agentsPath, 'utf-8');
|
||||
}
|
||||
|
||||
const contentBlock = `# Memory Context\n\n${context}`;
|
||||
const finalContent = replaceTaggedContent(existingContent, contentBlock);
|
||||
const tempFile = `${agentsPath}.tmp`;
|
||||
|
||||
try {
|
||||
writeFileSync(tempFile, finalContent);
|
||||
renameSync(tempFile, agentsPath);
|
||||
} catch (error) {
|
||||
logger.error('AGENTS_MD', 'Failed to write AGENTS.md', { agentsPath }, error as Error);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user