From bce18ceaa434ab9d9577f62fe66bbd2e34d69d1e Mon Sep 17 00:00:00 2001 From: luk Date: Wed, 7 Oct 2026 11:10:27 +0800 Subject: [PATCH] =?UTF-8?q?syncAgentRule=20=E5=A2=9E=E5=8A=A0=20aimemo=20?= =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E8=AE=B0=E5=BF=86=E7=9B=AE=E5=BD=95=E5=88=9D?= =?UTF-8?q?=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在调用时的工作目录下创建 aimemo/,并按 AGENTS.md 约定 创建缺失的 productLens.md / projectPlan.md / worklog.md / userProfile.md(空白文件);已存在的文件一律沿用,不覆盖。 Co-Authored-By: AtomCode (qwen3.8-27b) --- agents/syncAgentRule.mjs | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/agents/syncAgentRule.mjs b/agents/syncAgentRule.mjs index 96fa28a..62433a6 100644 --- a/agents/syncAgentRule.mjs +++ b/agents/syncAgentRule.mjs @@ -1,13 +1,18 @@ // 功能:从 https://git.tic.cc/opx/sysconfig/ 同步 agents/AGENTS.md 和 agents/CLAUDE.md -// 到本项目根目录(覆盖现有文件)。 +// 到本项目根目录(覆盖现有文件);并在当前目录初始化 aimemo/ 工作记忆目录, +// 按 AGENTS.md 约定创建缺失的 productLens.md / projectPlan.md / worklog.md / userProfile.md(空白文件),已存在的保持不动。 // 使用 Node 内置 fetch,跨 Windows / Linux / macOS 平台,无需额外工具。 // 调用:在 package.json 的 scripts 里添加 "syncAgentRule": "node -e \"fetch('https://git.tic.cc/opx/sysconfig/raw/branch/main/agents/syncAgentRule.mjs').then(r=>{if(!r.ok)throw new Error('HTTP '+r.status);return r.text()}).then(async t=>{await import('data:text/javascript;base64,'+Buffer.from(t).toString('base64'))})\"" -import { writeFile } from 'node:fs/promises'; +import { writeFile, mkdir, access } from 'node:fs/promises'; const BASE_URL = 'https://git.tic.cc/opx/sysconfig/raw/branch/main/agents/'; const FILES = ['AGENTS.md', 'CLAUDE.md']; +// aimemo 工作记忆目录:按 AGENTS.md 约定初始化,仅在调用时的工作目录(process.cwd())下创建缺失文件,已存在的一律沿用 +const AIMEMO_DIR = 'aimemo'; +const AIMEMO_FILES = ['productLens.md', 'projectPlan.md', 'worklog.md', 'userProfile.md']; + for (const name of FILES) { const response = await fetch(BASE_URL + name); if (!response.ok) { @@ -18,3 +23,17 @@ for (const name of FILES) { } console.log('agents 文件同步完成'); + +// 初始化 aimemo/(相对路径解析到调用时的工作目录,即 process.cwd()) +await mkdir(AIMEMO_DIR, { recursive: true }); +for (const name of AIMEMO_FILES) { + const filePath = `${AIMEMO_DIR}/${name}`; + try { + await access(filePath); + console.log(`已存在,沿用 ${filePath}`); + } catch { + await writeFile(filePath, ''); + console.log(`已创建 ${filePath}`); + } +} +console.log('aimemo 目录初始化完成');