@cat-kit/agent-context 1.0.5 → 1.0.7

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/README.md CHANGED
@@ -69,9 +69,9 @@ init → plan → replan → implement → patch → done
69
69
  | 工具 | 命令文件目录 | 调用方式示例 |
70
70
  | -------------- | ------------------- | ------------ |
71
71
  | Claude | `.claude/commands/` | `/ac:init` |
72
- | Codex | `.codex/commands/` | `/ac-init` |
72
+ | Codex | `.codex/prompts/` | `/ac-init` |
73
73
  | Cursor | `.cursor/commands/` | `/ac-init` |
74
- | Antigravity | `.agents/` | `/ac-init` |
74
+ | Antigravity | `.agent/workflows/` | `/ac-init` |
75
75
  | GitHub Copilot | `.github/prompts/` | `#ac-init` |
76
76
 
77
77
  ## 命令参考
@@ -1,2 +1,2 @@
1
- import{resolve as e}from"node:path";import{existsSync as t}from"node:fs";const n={claude:{id:`claude`,name:`Claude Code`,rootDir:`.claude/commands`,fileExtension:`.md`,supportsFrontmatter:!0,commandSeparator:`:`,commandPrefix:`/`},codex:{id:`codex`,name:`Codex`,rootDir:`.codex/commands`,fileExtension:`.md`,supportsFrontmatter:!0,commandSeparator:`-`,commandPrefix:`/`},cursor:{id:`cursor`,name:`Cursor`,rootDir:`.cursor/commands`,fileExtension:`.md`,supportsFrontmatter:!1,commandSeparator:`-`,commandPrefix:`/`},antigravity:{id:`antigravity`,name:`Antigravity`,rootDir:`.agents`,fileExtension:`.md`,supportsFrontmatter:!0,commandSeparator:`-`,commandPrefix:`/`},copilot:{id:`copilot`,name:`GitHub Copilot`,rootDir:`.github/prompts`,fileExtension:`.prompt.md`,supportsFrontmatter:!0,commandSeparator:`-`,commandPrefix:`#`}},r=[`claude`,`codex`,`cursor`,`antigravity`,`copilot`],i=[`init`,`plan`,`replan`,`implement`,`patch`,`done`];function a(){return r.map(e=>({id:e,name:n[e].name}))}function o(e){let t=e.split(`,`).map(e=>e.trim().toLowerCase()).filter(Boolean);if(t.length===0)return[...r];let n=[];for(let e of t){if(!u(e))throw Error(`不支持的工具标识: ${e}。可选值: ${r.join(`, `)}`);n.includes(e)||n.push(e)}return n}function s(e){return(e&&e.length>0?e:r).map(e=>({...n[e]}))}function c(e){return r.filter(r=>{let a=n[r],o=l(a,e);return i.some(e=>t(o.commandFile(e)))})}function l(t,n){let r=e(n,t.rootDir),i=t.fileExtension;if(t.commandSeparator===`:`){let t=e(r,`ac`);return{commandFile:n=>e(t,`${n}${i}`)}}return{commandFile:t=>e(r,`ac-${t}${i}`)}}function u(e){return Object.hasOwn(n,e)}export{r as DEFAULT_TOOL_ORDER,c as detectConfiguredToolIds,a as getToolChoices,o as parseToolIds,s as resolveToolTargets,l as resolveWorkflowPaths};
1
+ import{existsSync as e}from"node:fs";import{resolve as t}from"node:path";const n={claude:{id:`claude`,name:`Claude Code`,rootDir:`.claude/commands`,fileExtension:`.md`,supportsFrontmatter:!0,commandSeparator:`:`,commandPrefix:`/`},codex:{id:`codex`,name:`Codex`,rootDir:`.codex/prompts`,fileExtension:`.md`,supportsFrontmatter:!0,commandSeparator:`-`,commandPrefix:`/`},cursor:{id:`cursor`,name:`Cursor`,rootDir:`.cursor/commands`,fileExtension:`.md`,supportsFrontmatter:!1,commandSeparator:`-`,commandPrefix:`/`},antigravity:{id:`antigravity`,name:`Antigravity`,rootDir:`.agent/workflows`,fileExtension:`.md`,supportsFrontmatter:!0,commandSeparator:`-`,commandPrefix:`/`},copilot:{id:`copilot`,name:`GitHub Copilot`,rootDir:`.github/prompts`,fileExtension:`.prompt.md`,supportsFrontmatter:!0,commandSeparator:`-`,commandPrefix:`#`}},r=[`claude`,`codex`,`cursor`,`antigravity`,`copilot`],i=[`init`,`plan`,`replan`,`implement`,`patch`,`done`];function a(){return r.map(e=>({id:e,name:n[e].name}))}function o(e){let t=e.split(`,`).map(e=>e.trim().toLowerCase()).filter(Boolean);if(t.length===0)return[...r];let n=[];for(let e of t){if(!u(e))throw Error(`不支持的工具标识: ${e}。可选值: ${r.join(`, `)}`);n.includes(e)||n.push(e)}return n}function s(e){return(e&&e.length>0?e:r).map(e=>({...n[e]}))}function c(t){return r.filter(r=>{let a=n[r],o=l(a,t);return i.some(t=>e(o.commandFile(t)))})}function l(e,n){let r=t(n,e.rootDir),i=e.fileExtension;if(e.commandSeparator===`:`){let e=t(r,`ac`);return{commandFile:n=>t(e,`${n}${i}`)}}return{commandFile:e=>t(r,`ac-${e}${i}`)}}function u(e){return Object.hasOwn(n,e)}export{r as DEFAULT_TOOL_ORDER,c as detectConfiguredToolIds,a as getToolChoices,o as parseToolIds,s as resolveToolTargets,l as resolveWorkflowPaths};
2
2
  //# sourceMappingURL=tool-targets.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-targets.js","names":[],"sources":["../../src/adapters/tool-targets.ts"],"sourcesContent":["import { resolve } from 'node:path'\nimport { existsSync } from 'node:fs'\n\nimport type { ToolId, ToolTarget, WorkflowCommandName } from '../domain/types'\n\nconst TOOL_TARGET_MAP: Record<ToolId, ToolTarget> = {\n claude: {\n id: 'claude',\n name: 'Claude Code',\n rootDir: '.claude/commands',\n fileExtension: '.md',\n supportsFrontmatter: true,\n commandSeparator: ':',\n commandPrefix: '/'\n },\n codex: {\n id: 'codex',\n name: 'Codex',\n rootDir: '.codex/commands',\n fileExtension: '.md',\n supportsFrontmatter: true,\n commandSeparator: '-',\n commandPrefix: '/'\n },\n cursor: {\n id: 'cursor',\n name: 'Cursor',\n rootDir: '.cursor/commands',\n fileExtension: '.md',\n supportsFrontmatter: false,\n commandSeparator: '-',\n commandPrefix: '/'\n },\n antigravity: {\n id: 'antigravity',\n name: 'Antigravity',\n rootDir: '.agents',\n fileExtension: '.md',\n supportsFrontmatter: true,\n commandSeparator: '-',\n commandPrefix: '/'\n },\n copilot: {\n id: 'copilot',\n name: 'GitHub Copilot',\n rootDir: '.github/prompts',\n fileExtension: '.prompt.md',\n supportsFrontmatter: true,\n commandSeparator: '-',\n commandPrefix: '#'\n }\n}\n\nexport const DEFAULT_TOOL_ORDER: ToolId[] = [\n 'claude',\n 'codex',\n 'cursor',\n 'antigravity',\n 'copilot'\n]\n\nconst WORKFLOW_COMMAND_ORDER: WorkflowCommandName[] = [\n 'init',\n 'plan',\n 'replan',\n 'implement',\n 'patch',\n 'done'\n]\n\nexport interface ToolChoice {\n id: ToolId\n name: string\n}\n\nexport function getToolChoices(): ToolChoice[] {\n return DEFAULT_TOOL_ORDER.map(id => ({\n id,\n name: TOOL_TARGET_MAP[id].name\n }))\n}\n\nexport function parseToolIds(toolsText: string): ToolId[] {\n const parsed = toolsText\n .split(',')\n .map(item => item.trim().toLowerCase())\n .filter(Boolean)\n\n if (parsed.length === 0) {\n return [...DEFAULT_TOOL_ORDER]\n }\n\n const uniqueIds: ToolId[] = []\n\n for (const value of parsed) {\n if (!isToolId(value)) {\n throw new Error(\n `不支持的工具标识: ${value}。可选值: ${DEFAULT_TOOL_ORDER.join(', ')}`\n )\n }\n\n if (!uniqueIds.includes(value)) {\n uniqueIds.push(value)\n }\n }\n\n return uniqueIds\n}\n\nexport function resolveToolTargets(tools?: ToolId[]): ToolTarget[] {\n const selected = tools && tools.length > 0 ? tools : DEFAULT_TOOL_ORDER\n return selected.map(id => ({ ...TOOL_TARGET_MAP[id] }))\n}\n\nexport function detectConfiguredToolIds(cwd: string): ToolId[] {\n return DEFAULT_TOOL_ORDER.filter((toolId) => {\n const target = TOOL_TARGET_MAP[toolId]\n const workflowPaths = resolveWorkflowPaths(target, cwd)\n\n return WORKFLOW_COMMAND_ORDER.some(command =>\n existsSync(workflowPaths.commandFile(command))\n )\n })\n}\n\n// ── 工作流路径解析 ────────────────────────────────────\n\nexport interface WorkflowPaths {\n commandFile(name: WorkflowCommandName): string\n}\n\n/**\n * 根据工具约束计算工作流文件输出路径\n *\n * - separator=':' (Claude) → 嵌套: .claude/commands/ac/init.md → /ac:init\n * - separator='-' (其他) → 扁平: .cursor/commands/ac-init.md → /ac-init\n */\nexport function resolveWorkflowPaths(target: ToolTarget, cwd: string): WorkflowPaths {\n const root = resolve(cwd, target.rootDir)\n const ext = target.fileExtension\n const nested = target.commandSeparator === ':'\n\n if (nested) {\n const nsDir = resolve(root, 'ac')\n return {\n commandFile: name => resolve(nsDir, `${name}${ext}`)\n }\n }\n\n return {\n commandFile: name => resolve(root, `ac-${name}${ext}`)\n }\n}\n\nfunction isToolId(value: string): value is ToolId {\n return Object.hasOwn(TOOL_TARGET_MAP, value)\n}\n"],"mappings":"yEAKA,MAAM,EAA8C,CAClD,OAAQ,CACN,GAAI,SACJ,KAAM,cACN,QAAS,mBACT,cAAe,MACf,oBAAqB,GACrB,iBAAkB,IAClB,cAAe,IAChB,CACD,MAAO,CACL,GAAI,QACJ,KAAM,QACN,QAAS,kBACT,cAAe,MACf,oBAAqB,GACrB,iBAAkB,IAClB,cAAe,IAChB,CACD,OAAQ,CACN,GAAI,SACJ,KAAM,SACN,QAAS,mBACT,cAAe,MACf,oBAAqB,GACrB,iBAAkB,IAClB,cAAe,IAChB,CACD,YAAa,CACX,GAAI,cACJ,KAAM,cACN,QAAS,UACT,cAAe,MACf,oBAAqB,GACrB,iBAAkB,IAClB,cAAe,IAChB,CACD,QAAS,CACP,GAAI,UACJ,KAAM,iBACN,QAAS,kBACT,cAAe,aACf,oBAAqB,GACrB,iBAAkB,IAClB,cAAe,IAChB,CACF,CAEY,EAA+B,CAC1C,SACA,QACA,SACA,cACA,UACD,CAEK,EAAgD,CACpD,OACA,OACA,SACA,YACA,QACA,OACD,CAOD,SAAgB,GAA+B,CAC7C,OAAO,EAAmB,IAAI,IAAO,CACnC,KACA,KAAM,EAAgB,GAAI,KAC3B,EAAE,CAGL,SAAgB,EAAa,EAA6B,CACxD,IAAM,EAAS,EACZ,MAAM,IAAI,CACV,IAAI,GAAQ,EAAK,MAAM,CAAC,aAAa,CAAC,CACtC,OAAO,QAAQ,CAElB,GAAI,EAAO,SAAW,EACpB,MAAO,CAAC,GAAG,EAAmB,CAGhC,IAAM,EAAsB,EAAE,CAE9B,IAAK,IAAM,KAAS,EAAQ,CAC1B,GAAI,CAAC,EAAS,EAAM,CAClB,MAAU,MACR,aAAa,EAAM,QAAQ,EAAmB,KAAK,KAAK,GACzD,CAGE,EAAU,SAAS,EAAM,EAC5B,EAAU,KAAK,EAAM,CAIzB,OAAO,EAGT,SAAgB,EAAmB,EAAgC,CAEjE,OADiB,GAAS,EAAM,OAAS,EAAI,EAAQ,GACrC,IAAI,IAAO,CAAE,GAAG,EAAgB,GAAK,EAAE,CAGzD,SAAgB,EAAwB,EAAuB,CAC7D,OAAO,EAAmB,OAAQ,GAAW,CAC3C,IAAM,EAAS,EAAgB,GACzB,EAAgB,EAAqB,EAAQ,EAAI,CAEvD,OAAO,EAAuB,KAAK,GACjC,EAAW,EAAc,YAAY,EAAQ,CAAC,CAC/C,EACD,CAeJ,SAAgB,EAAqB,EAAoB,EAA4B,CACnF,IAAM,EAAO,EAAQ,EAAK,EAAO,QAAQ,CACnC,EAAM,EAAO,cAGnB,GAFe,EAAO,mBAAqB,IAE/B,CACV,IAAM,EAAQ,EAAQ,EAAM,KAAK,CACjC,MAAO,CACL,YAAa,GAAQ,EAAQ,EAAO,GAAG,IAAO,IAAM,CACrD,CAGH,MAAO,CACL,YAAa,GAAQ,EAAQ,EAAM,MAAM,IAAO,IAAM,CACvD,CAGH,SAAS,EAAS,EAAgC,CAChD,OAAO,OAAO,OAAO,EAAiB,EAAM"}
1
+ {"version":3,"file":"tool-targets.js","names":[],"sources":["../../src/adapters/tool-targets.ts"],"sourcesContent":["import { resolve } from 'node:path'\nimport { existsSync } from 'node:fs'\n\nimport type { ToolId, ToolTarget, WorkflowCommandName } from '../domain/types'\n\nconst TOOL_TARGET_MAP: Record<ToolId, ToolTarget> = {\n claude: {\n id: 'claude',\n name: 'Claude Code',\n rootDir: '.claude/commands',\n fileExtension: '.md',\n supportsFrontmatter: true,\n commandSeparator: ':',\n commandPrefix: '/'\n },\n codex: {\n id: 'codex',\n name: 'Codex',\n rootDir: '.codex/prompts',\n fileExtension: '.md',\n supportsFrontmatter: true,\n commandSeparator: '-',\n commandPrefix: '/'\n },\n cursor: {\n id: 'cursor',\n name: 'Cursor',\n rootDir: '.cursor/commands',\n fileExtension: '.md',\n supportsFrontmatter: false,\n commandSeparator: '-',\n commandPrefix: '/'\n },\n antigravity: {\n id: 'antigravity',\n name: 'Antigravity',\n rootDir: '.agent/workflows',\n fileExtension: '.md',\n supportsFrontmatter: true,\n commandSeparator: '-',\n commandPrefix: '/'\n },\n copilot: {\n id: 'copilot',\n name: 'GitHub Copilot',\n rootDir: '.github/prompts',\n fileExtension: '.prompt.md',\n supportsFrontmatter: true,\n commandSeparator: '-',\n commandPrefix: '#'\n }\n}\n\nexport const DEFAULT_TOOL_ORDER: ToolId[] = [\n 'claude',\n 'codex',\n 'cursor',\n 'antigravity',\n 'copilot'\n]\n\nconst WORKFLOW_COMMAND_ORDER: WorkflowCommandName[] = [\n 'init',\n 'plan',\n 'replan',\n 'implement',\n 'patch',\n 'done'\n]\n\nexport interface ToolChoice {\n id: ToolId\n name: string\n}\n\nexport function getToolChoices(): ToolChoice[] {\n return DEFAULT_TOOL_ORDER.map(id => ({\n id,\n name: TOOL_TARGET_MAP[id].name\n }))\n}\n\nexport function parseToolIds(toolsText: string): ToolId[] {\n const parsed = toolsText\n .split(',')\n .map(item => item.trim().toLowerCase())\n .filter(Boolean)\n\n if (parsed.length === 0) {\n return [...DEFAULT_TOOL_ORDER]\n }\n\n const uniqueIds: ToolId[] = []\n\n for (const value of parsed) {\n if (!isToolId(value)) {\n throw new Error(\n `不支持的工具标识: ${value}。可选值: ${DEFAULT_TOOL_ORDER.join(', ')}`\n )\n }\n\n if (!uniqueIds.includes(value)) {\n uniqueIds.push(value)\n }\n }\n\n return uniqueIds\n}\n\nexport function resolveToolTargets(tools?: ToolId[]): ToolTarget[] {\n const selected = tools && tools.length > 0 ? tools : DEFAULT_TOOL_ORDER\n return selected.map(id => ({ ...TOOL_TARGET_MAP[id] }))\n}\n\nexport function detectConfiguredToolIds(cwd: string): ToolId[] {\n return DEFAULT_TOOL_ORDER.filter((toolId) => {\n const target = TOOL_TARGET_MAP[toolId]\n const workflowPaths = resolveWorkflowPaths(target, cwd)\n\n return WORKFLOW_COMMAND_ORDER.some(command =>\n existsSync(workflowPaths.commandFile(command))\n )\n })\n}\n\n// ── 工作流路径解析 ────────────────────────────────────\n\nexport interface WorkflowPaths {\n commandFile(name: WorkflowCommandName): string\n}\n\n/**\n * 根据工具约束计算工作流文件输出路径\n *\n * - separator=':' (Claude) → 嵌套: .claude/commands/ac/init.md → /ac:init\n * - separator='-' (其他) → 扁平: .cursor/commands/ac-init.md → /ac-init\n */\nexport function resolveWorkflowPaths(target: ToolTarget, cwd: string): WorkflowPaths {\n const root = resolve(cwd, target.rootDir)\n const ext = target.fileExtension\n const nested = target.commandSeparator === ':'\n\n if (nested) {\n const nsDir = resolve(root, 'ac')\n return {\n commandFile: name => resolve(nsDir, `${name}${ext}`)\n }\n }\n\n return {\n commandFile: name => resolve(root, `ac-${name}${ext}`)\n }\n}\n\nfunction isToolId(value: string): value is ToolId {\n return Object.hasOwn(TOOL_TARGET_MAP, value)\n}\n"],"mappings":"yEAKA,MAAM,EAA8C,CAClD,OAAQ,CACN,GAAI,SACJ,KAAM,cACN,QAAS,mBACT,cAAe,MACf,oBAAqB,GACrB,iBAAkB,IAClB,cAAe,IAChB,CACD,MAAO,CACL,GAAI,QACJ,KAAM,QACN,QAAS,iBACT,cAAe,MACf,oBAAqB,GACrB,iBAAkB,IAClB,cAAe,IAChB,CACD,OAAQ,CACN,GAAI,SACJ,KAAM,SACN,QAAS,mBACT,cAAe,MACf,oBAAqB,GACrB,iBAAkB,IAClB,cAAe,IAChB,CACD,YAAa,CACX,GAAI,cACJ,KAAM,cACN,QAAS,mBACT,cAAe,MACf,oBAAqB,GACrB,iBAAkB,IAClB,cAAe,IAChB,CACD,QAAS,CACP,GAAI,UACJ,KAAM,iBACN,QAAS,kBACT,cAAe,aACf,oBAAqB,GACrB,iBAAkB,IAClB,cAAe,IAChB,CACF,CAEY,EAA+B,CAC1C,SACA,QACA,SACA,cACA,UACD,CAEK,EAAgD,CACpD,OACA,OACA,SACA,YACA,QACA,OACD,CAOD,SAAgB,GAA+B,CAC7C,OAAO,EAAmB,IAAI,IAAO,CACnC,KACA,KAAM,EAAgB,GAAI,KAC3B,EAAE,CAGL,SAAgB,EAAa,EAA6B,CACxD,IAAM,EAAS,EACZ,MAAM,IAAI,CACV,IAAI,GAAQ,EAAK,MAAM,CAAC,aAAa,CAAC,CACtC,OAAO,QAAQ,CAElB,GAAI,EAAO,SAAW,EACpB,MAAO,CAAC,GAAG,EAAmB,CAGhC,IAAM,EAAsB,EAAE,CAE9B,IAAK,IAAM,KAAS,EAAQ,CAC1B,GAAI,CAAC,EAAS,EAAM,CAClB,MAAU,MACR,aAAa,EAAM,QAAQ,EAAmB,KAAK,KAAK,GACzD,CAGE,EAAU,SAAS,EAAM,EAC5B,EAAU,KAAK,EAAM,CAIzB,OAAO,EAGT,SAAgB,EAAmB,EAAgC,CAEjE,OADiB,GAAS,EAAM,OAAS,EAAI,EAAQ,GACrC,IAAI,IAAO,CAAE,GAAG,EAAgB,GAAK,EAAE,CAGzD,SAAgB,EAAwB,EAAuB,CAC7D,OAAO,EAAmB,OAAQ,GAAW,CAC3C,IAAM,EAAS,EAAgB,GACzB,EAAgB,EAAqB,EAAQ,EAAI,CAEvD,OAAO,EAAuB,KAAK,GACjC,EAAW,EAAc,YAAY,EAAQ,CAAC,CAC/C,EACD,CAeJ,SAAgB,EAAqB,EAAoB,EAA4B,CACnF,IAAM,EAAO,EAAQ,EAAK,EAAO,QAAQ,CACnC,EAAM,EAAO,cAGnB,GAFe,EAAO,mBAAqB,IAE/B,CACV,IAAM,EAAQ,EAAQ,EAAM,KAAK,CACjC,MAAO,CACL,YAAa,GAAQ,EAAQ,EAAO,GAAG,IAAO,IAAM,CACrD,CAGH,MAAO,CACL,YAAa,GAAQ,EAAQ,EAAM,MAAM,IAAO,IAAM,CACvD,CAGH,SAAS,EAAS,EAAgC,CAChD,OAAO,OAAO,OAAO,EAAiB,EAAM"}
package/dist/cli.js CHANGED
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- import{setupCommand as e}from"./commands/setup.js";import{updateCommand as t}from"./commands/update.js";import{Command as n}from"commander";const r=new n;r.name(`agent-context`).description(`Agent Context 工作流生成工具`).version(`2.0.0`),r.command(`setup`).description(`初始化工作流命令`).option(`--tools <tools>`,`指定目标工具,逗号分隔:claude,codex,cursor,antigravity,copilot`).option(`--yes`,`非交互模式预留参数(当前版本无需确认)`).option(`--check`,`仅检查是否存在待更新内容,不写入文件`).action(e),r.command(`update`).description(`更新工作流命令`).option(`--tools <tools>`,`指定目标工具,逗号分隔:claude,codex,cursor,antigravity,copilot`).option(`--yes`,`非交互模式预留参数(当前版本无需确认)`).option(`--check`,`仅检查是否存在待更新内容,不写入文件`).action(t),r.parseAsync().catch(e=>{let t=e instanceof Error?e.message:String(e);console.error(`\n❌ ${t}`),process.exitCode=1});export{};
2
+ import{setupCommand as e}from"./commands/setup.js";import{updateCommand as t}from"./commands/update.js";import{readFileSync as n}from"node:fs";import{Command as r}from"commander";const i=JSON.parse(n(new URL(`../package.json`,import.meta.url),`utf8`)),a=typeof i.version==`string`?i.version:`0.0.0`,o=new r;o.name(`agent-context`).description(`Agent Context 工作流生成工具`).version(a),o.command(`setup`).description(`初始化工作流命令`).option(`--tools <tools>`,`指定目标工具,逗号分隔:claude,codex,cursor,antigravity,copilot`).option(`--yes`,`非交互模式预留参数(当前版本无需确认)`).option(`--check`,`仅检查是否存在待更新内容,不写入文件`).action(e),o.command(`update`).description(`更新工作流命令`).option(`--tools <tools>`,`指定目标工具,逗号分隔:claude,codex,cursor,antigravity,copilot`).option(`--yes`,`非交互模式预留参数(当前版本无需确认)`).option(`--check`,`仅检查是否存在待更新内容,不写入文件`).action(t),o.parseAsync().catch(e=>{let t=e instanceof Error?e.message:String(e);console.error(`\n❌ ${t}`),process.exitCode=1});export{};
3
3
  //# sourceMappingURL=cli.js.map
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","names":[],"sources":["../src/cli.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport { Command } from 'commander'\n\nimport { setupCommand } from './commands/setup'\nimport { updateCommand } from './commands/update'\n\nconst program = new Command()\n\nprogram.name('agent-context').description('Agent Context 工作流生成工具').version('2.0.0')\n\nprogram\n .command('setup')\n .description('初始化工作流命令')\n .option('--tools <tools>', '指定目标工具,逗号分隔:claude,codex,cursor,antigravity,copilot')\n .option('--yes', '非交互模式预留参数(当前版本无需确认)')\n .option('--check', '仅检查是否存在待更新内容,不写入文件')\n .action(setupCommand)\n\nprogram\n .command('update')\n .description('更新工作流命令')\n .option('--tools <tools>', '指定目标工具,逗号分隔:claude,codex,cursor,antigravity,copilot')\n .option('--yes', '非交互模式预留参数(当前版本无需确认)')\n .option('--check', '仅检查是否存在待更新内容,不写入文件')\n .action(updateCommand)\n\nprogram.parseAsync().catch((error: unknown) => {\n const message = error instanceof Error ? error.message : String(error)\n console.error(`\\n❌ ${message}`) // eslint-disable-line no-console\n process.exitCode = 1\n})\n"],"mappings":";4IAOA,MAAM,EAAU,IAAI,EAEpB,EAAQ,KAAK,gBAAgB,CAAC,YAAY,wBAAwB,CAAC,QAAQ,QAAQ,CAEnF,EACG,QAAQ,QAAQ,CAChB,YAAY,WAAW,CACvB,OAAO,kBAAmB,sDAAsD,CAChF,OAAO,QAAS,sBAAsB,CACtC,OAAO,UAAW,qBAAqB,CACvC,OAAO,EAAa,CAEvB,EACG,QAAQ,SAAS,CACjB,YAAY,UAAU,CACtB,OAAO,kBAAmB,sDAAsD,CAChF,OAAO,QAAS,sBAAsB,CACtC,OAAO,UAAW,qBAAqB,CACvC,OAAO,EAAc,CAExB,EAAQ,YAAY,CAAC,MAAO,GAAmB,CAC7C,IAAM,EAAU,aAAiB,MAAQ,EAAM,QAAU,OAAO,EAAM,CACtE,QAAQ,MAAM,OAAO,IAAU,CAC/B,QAAQ,SAAW,GACnB"}
1
+ {"version":3,"file":"cli.js","names":[],"sources":["../src/cli.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport { readFileSync } from 'node:fs'\nimport { Command } from 'commander'\n\nimport { setupCommand } from './commands/setup'\nimport { updateCommand } from './commands/update'\n\nconst packageJson = JSON.parse(readFileSync(new URL('../package.json', import.meta.url), 'utf8')) as {\n version?: string\n}\nconst packageVersion = typeof packageJson.version === 'string' ? packageJson.version : '0.0.0'\n\nconst program = new Command()\n\nprogram.name('agent-context').description('Agent Context 工作流生成工具').version(packageVersion)\n\nprogram\n .command('setup')\n .description('初始化工作流命令')\n .option('--tools <tools>', '指定目标工具,逗号分隔:claude,codex,cursor,antigravity,copilot')\n .option('--yes', '非交互模式预留参数(当前版本无需确认)')\n .option('--check', '仅检查是否存在待更新内容,不写入文件')\n .action(setupCommand)\n\nprogram\n .command('update')\n .description('更新工作流命令')\n .option('--tools <tools>', '指定目标工具,逗号分隔:claude,codex,cursor,antigravity,copilot')\n .option('--yes', '非交互模式预留参数(当前版本无需确认)')\n .option('--check', '仅检查是否存在待更新内容,不写入文件')\n .action(updateCommand)\n\nprogram.parseAsync().catch((error: unknown) => {\n const message = error instanceof Error ? error.message : String(error)\n console.error(`\\n❌ ${message}`) // eslint-disable-line no-console\n process.exitCode = 1\n})\n"],"mappings":";mLAQA,MAAM,EAAc,KAAK,MAAM,EAAa,IAAI,IAAI,kBAAmB,OAAO,KAAK,IAAI,CAAE,OAAO,CAAC,CAG3F,EAAiB,OAAO,EAAY,SAAY,SAAW,EAAY,QAAU,QAEjF,EAAU,IAAI,EAEpB,EAAQ,KAAK,gBAAgB,CAAC,YAAY,wBAAwB,CAAC,QAAQ,EAAe,CAE1F,EACG,QAAQ,QAAQ,CAChB,YAAY,WAAW,CACvB,OAAO,kBAAmB,sDAAsD,CAChF,OAAO,QAAS,sBAAsB,CACtC,OAAO,UAAW,qBAAqB,CACvC,OAAO,EAAa,CAEvB,EACG,QAAQ,SAAS,CACjB,YAAY,UAAU,CACtB,OAAO,kBAAmB,sDAAsD,CAChF,OAAO,QAAS,sBAAsB,CACtC,OAAO,UAAW,qBAAqB,CACvC,OAAO,EAAc,CAExB,EAAQ,YAAY,CAAC,MAAO,GAAmB,CAC7C,IAAM,EAAU,aAAiB,MAAQ,EAAM,QAAU,OAAO,EAAM,CACtE,QAAQ,MAAM,OAAO,IAAU,CAC/B,QAAQ,SAAW,GACnB"}
package/dist/shared/fs.js CHANGED
@@ -1,3 +1,3 @@
1
- import{dirname as e}from"node:path";import{existsSync as t}from"node:fs";import{mkdir as n,readFile as r,writeFile as i}from"node:fs/promises";async function a(r,a){let s={created:[],updated:[],unchanged:[],changed:[]};for(let c of r){let r=t(c.path),l=await o(c,r);if(!l.changed){s.unchanged.push(c.path);continue}a||(await n(e(c.path),{recursive:!0}),await i(c.path,l.content,`utf-8`)),s.changed.push(c.path),r?s.updated.push(c.path):s.created.push(c.path)}return s}async function o(e,t){let n=s(e.body);return t?{content:n,changed:await r(e.path,`utf-8`)!==n}:{content:n,changed:!0}}function s(e){return e.endsWith(`
1
+ import{existsSync as e}from"node:fs";import{dirname as t}from"node:path";import{mkdir as n,readFile as r,writeFile as i}from"node:fs/promises";async function a(r,a){let s={created:[],updated:[],unchanged:[],changed:[]};for(let c of r){let r=e(c.path),l=await o(c,r);if(!l.changed){s.unchanged.push(c.path);continue}a||(await n(t(c.path),{recursive:!0}),await i(c.path,l.content,`utf-8`)),s.changed.push(c.path),r?s.updated.push(c.path):s.created.push(c.path)}return s}async function o(e,t){let n=s(e.body);return t?{content:n,changed:await r(e.path,`utf-8`)!==n}:{content:n,changed:!0}}function s(e){return e.endsWith(`
2
2
  `)?e:`${e}\n`}export{a as applyManagedMutations};
3
3
  //# sourceMappingURL=fs.js.map
package/dist/stats.html CHANGED
@@ -4930,7 +4930,7 @@ var drawChart = (function (exports) {
4930
4930
  </script>
4931
4931
  <script>
4932
4932
  /*<!--*/
4933
- const data = {"version":2,"tree":{"name":"root","children":[{"name":"cli.d.ts","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/cli.d.ts","uid":"892e0f80-1"}]},{"name":"cli.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/cli.ts","uid":"892e0f80-3"}]},{"name":"adapters/tool-targets.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/adapters/tool-targets.ts","uid":"892e0f80-5"}]},{"name":"commands/setup.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/commands/setup.ts","uid":"892e0f80-7"}]},{"name":"commands/shared.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/commands/shared.ts","uid":"892e0f80-9"}]},{"name":"commands/update.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/commands/update.ts","uid":"892e0f80-11"}]},{"name":"domain/workflow-content.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-content.ts","uid":"892e0f80-13"}]},{"name":"domain/workflow-context.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-context.ts","uid":"892e0f80-15"}]},{"name":"domain/workflow-templates/done.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/done.ts","uid":"892e0f80-17"}]},{"name":"domain/workflow-templates/implement.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/implement.ts","uid":"892e0f80-19"}]},{"name":"domain/workflow-templates/init.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/init.ts","uid":"892e0f80-21"}]},{"name":"domain/workflow-templates/patch.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/patch.ts","uid":"892e0f80-23"}]},{"name":"domain/workflow-templates/plan.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/plan.ts","uid":"892e0f80-25"}]},{"name":"domain/workflow-templates/replan.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/replan.ts","uid":"892e0f80-27"}]},{"name":"generators/workflow.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/generators/workflow.ts","uid":"892e0f80-29"}]},{"name":"runtime/execute.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/runtime/execute.ts","uid":"892e0f80-31"}]},{"name":"shared/fs.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/shared/fs.ts","uid":"892e0f80-33"}]}],"isRoot":true},"nodeParts":{"892e0f80-1":{"renderedLength":0,"gzipLength":0,"brotliLength":0,"metaUid":"892e0f80-0"},"892e0f80-3":{"renderedLength":1029,"gzipLength":0,"brotliLength":0,"metaUid":"892e0f80-2"},"892e0f80-5":{"renderedLength":2841,"gzipLength":0,"brotliLength":0,"metaUid":"892e0f80-4"},"892e0f80-7":{"renderedLength":1002,"gzipLength":0,"brotliLength":0,"metaUid":"892e0f80-6"},"892e0f80-9":{"renderedLength":973,"gzipLength":0,"brotliLength":0,"metaUid":"892e0f80-8"},"892e0f80-11":{"renderedLength":752,"gzipLength":0,"brotliLength":0,"metaUid":"892e0f80-10"},"892e0f80-13":{"renderedLength":340,"gzipLength":0,"brotliLength":0,"metaUid":"892e0f80-12"},"892e0f80-15":{"renderedLength":926,"gzipLength":0,"brotliLength":0,"metaUid":"892e0f80-14"},"892e0f80-17":{"renderedLength":1638,"gzipLength":0,"brotliLength":0,"metaUid":"892e0f80-16"},"892e0f80-19":{"renderedLength":2036,"gzipLength":0,"brotliLength":0,"metaUid":"892e0f80-18"},"892e0f80-21":{"renderedLength":2170,"gzipLength":0,"brotliLength":0,"metaUid":"892e0f80-20"},"892e0f80-23":{"renderedLength":1811,"gzipLength":0,"brotliLength":0,"metaUid":"892e0f80-22"},"892e0f80-25":{"renderedLength":2476,"gzipLength":0,"brotliLength":0,"metaUid":"892e0f80-24"},"892e0f80-27":{"renderedLength":1720,"gzipLength":0,"brotliLength":0,"metaUid":"892e0f80-26"},"892e0f80-29":{"renderedLength":468,"gzipLength":0,"brotliLength":0,"metaUid":"892e0f80-28"},"892e0f80-31":{"renderedLength":750,"gzipLength":0,"brotliLength":0,"metaUid":"892e0f80-30"},"892e0f80-33":{"renderedLength":1128,"gzipLength":0,"brotliLength":0,"metaUid":"892e0f80-32"}},"nodeMetas":{"892e0f80-0":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/cli.d.ts","moduleParts":{"cli.d.ts":"892e0f80-1"},"imported":[],"importedBy":[],"isEntry":true},"892e0f80-2":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/cli.ts","moduleParts":{"cli.js":"892e0f80-3"},"imported":[{"uid":"892e0f80-34"},{"uid":"892e0f80-6"},{"uid":"892e0f80-10"}],"importedBy":[],"isEntry":true},"892e0f80-4":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/adapters/tool-targets.ts","moduleParts":{"adapters/tool-targets.js":"892e0f80-5"},"imported":[{"uid":"892e0f80-36"},{"uid":"892e0f80-37"}],"importedBy":[{"uid":"892e0f80-6"},{"uid":"892e0f80-10"},{"uid":"892e0f80-30"},{"uid":"892e0f80-28"}]},"892e0f80-6":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/commands/setup.ts","moduleParts":{"commands/setup.js":"892e0f80-7"},"imported":[{"uid":"892e0f80-35"},{"uid":"892e0f80-4"},{"uid":"892e0f80-30"},{"uid":"892e0f80-8"}],"importedBy":[{"uid":"892e0f80-2"}]},"892e0f80-8":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/commands/shared.ts","moduleParts":{"commands/shared.js":"892e0f80-9"},"imported":[{"uid":"892e0f80-36"}],"importedBy":[{"uid":"892e0f80-6"},{"uid":"892e0f80-10"}]},"892e0f80-10":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/commands/update.ts","moduleParts":{"commands/update.js":"892e0f80-11"},"imported":[{"uid":"892e0f80-4"},{"uid":"892e0f80-30"},{"uid":"892e0f80-8"}],"importedBy":[{"uid":"892e0f80-2"}]},"892e0f80-12":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-content.ts","moduleParts":{"domain/workflow-content.js":"892e0f80-13"},"imported":[{"uid":"892e0f80-39"}],"importedBy":[{"uid":"892e0f80-28"}]},"892e0f80-14":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-context.ts","moduleParts":{"domain/workflow-context.js":"892e0f80-15"},"imported":[],"importedBy":[{"uid":"892e0f80-39"},{"uid":"892e0f80-20"},{"uid":"892e0f80-24"},{"uid":"892e0f80-26"},{"uid":"892e0f80-18"},{"uid":"892e0f80-22"},{"uid":"892e0f80-16"}]},"892e0f80-16":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/done.ts","moduleParts":{"domain/workflow-templates/done.js":"892e0f80-17"},"imported":[{"uid":"892e0f80-14"}],"importedBy":[{"uid":"892e0f80-39"}]},"892e0f80-18":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/implement.ts","moduleParts":{"domain/workflow-templates/implement.js":"892e0f80-19"},"imported":[{"uid":"892e0f80-14"}],"importedBy":[{"uid":"892e0f80-39"}]},"892e0f80-20":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/init.ts","moduleParts":{"domain/workflow-templates/init.js":"892e0f80-21"},"imported":[{"uid":"892e0f80-14"}],"importedBy":[{"uid":"892e0f80-39"}]},"892e0f80-22":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/patch.ts","moduleParts":{"domain/workflow-templates/patch.js":"892e0f80-23"},"imported":[{"uid":"892e0f80-14"}],"importedBy":[{"uid":"892e0f80-39"}]},"892e0f80-24":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/plan.ts","moduleParts":{"domain/workflow-templates/plan.js":"892e0f80-25"},"imported":[{"uid":"892e0f80-14"}],"importedBy":[{"uid":"892e0f80-39"}]},"892e0f80-26":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/replan.ts","moduleParts":{"domain/workflow-templates/replan.js":"892e0f80-27"},"imported":[{"uid":"892e0f80-14"}],"importedBy":[{"uid":"892e0f80-39"}]},"892e0f80-28":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/generators/workflow.ts","moduleParts":{"generators/workflow.js":"892e0f80-29"},"imported":[{"uid":"892e0f80-4"},{"uid":"892e0f80-12"}],"importedBy":[{"uid":"892e0f80-30"}]},"892e0f80-30":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/runtime/execute.ts","moduleParts":{"runtime/execute.js":"892e0f80-31"},"imported":[{"uid":"892e0f80-4"},{"uid":"892e0f80-28"},{"uid":"892e0f80-32"}],"importedBy":[{"uid":"892e0f80-6"},{"uid":"892e0f80-10"}]},"892e0f80-32":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/shared/fs.ts","moduleParts":{"shared/fs.js":"892e0f80-33"},"imported":[{"uid":"892e0f80-36"},{"uid":"892e0f80-37"},{"uid":"892e0f80-38"}],"importedBy":[{"uid":"892e0f80-30"}]},"892e0f80-34":{"id":"commander","moduleParts":{},"imported":[],"importedBy":[{"uid":"892e0f80-2"}]},"892e0f80-35":{"id":"@inquirer/prompts","moduleParts":{},"imported":[],"importedBy":[{"uid":"892e0f80-6"}]},"892e0f80-36":{"id":"node:path","moduleParts":{},"imported":[],"importedBy":[{"uid":"892e0f80-4"},{"uid":"892e0f80-8"},{"uid":"892e0f80-32"}]},"892e0f80-37":{"id":"node:fs","moduleParts":{},"imported":[],"importedBy":[{"uid":"892e0f80-4"},{"uid":"892e0f80-32"}]},"892e0f80-38":{"id":"node:fs/promises","moduleParts":{},"imported":[],"importedBy":[{"uid":"892e0f80-32"}]},"892e0f80-39":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/index.ts","moduleParts":{},"imported":[{"uid":"892e0f80-14"},{"uid":"892e0f80-20"},{"uid":"892e0f80-24"},{"uid":"892e0f80-26"},{"uid":"892e0f80-18"},{"uid":"892e0f80-22"},{"uid":"892e0f80-16"}],"importedBy":[{"uid":"892e0f80-12"}]}},"env":{"rollup":"4.23.0"},"options":{"gzip":false,"brotli":false,"sourcemap":false}};
4933
+ const data = {"version":2,"tree":{"name":"root","children":[{"name":"cli.d.ts","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/cli.d.ts","uid":"f096d9a8-1"}]},{"name":"cli.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/cli.ts","uid":"f096d9a8-3"}]},{"name":"adapters/tool-targets.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/adapters/tool-targets.ts","uid":"f096d9a8-5"}]},{"name":"commands/setup.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/commands/setup.ts","uid":"f096d9a8-7"}]},{"name":"commands/shared.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/commands/shared.ts","uid":"f096d9a8-9"}]},{"name":"commands/update.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/commands/update.ts","uid":"f096d9a8-11"}]},{"name":"domain/workflow-content.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-content.ts","uid":"f096d9a8-13"}]},{"name":"domain/workflow-context.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-context.ts","uid":"f096d9a8-15"}]},{"name":"domain/workflow-templates/done.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/done.ts","uid":"f096d9a8-17"}]},{"name":"domain/workflow-templates/implement.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/implement.ts","uid":"f096d9a8-19"}]},{"name":"domain/workflow-templates/init.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/init.ts","uid":"f096d9a8-21"}]},{"name":"domain/workflow-templates/patch.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/patch.ts","uid":"f096d9a8-23"}]},{"name":"domain/workflow-templates/plan.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/plan.ts","uid":"f096d9a8-25"}]},{"name":"domain/workflow-templates/replan.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/replan.ts","uid":"f096d9a8-27"}]},{"name":"generators/workflow.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/generators/workflow.ts","uid":"f096d9a8-29"}]},{"name":"runtime/execute.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/runtime/execute.ts","uid":"f096d9a8-31"}]},{"name":"shared/fs.js","children":[{"name":"home/whj/codes/cat-kit/packages/agent-context/src/shared/fs.ts","uid":"f096d9a8-33"}]}],"isRoot":true},"nodeParts":{"f096d9a8-1":{"renderedLength":0,"gzipLength":0,"brotliLength":0,"metaUid":"f096d9a8-0"},"f096d9a8-3":{"renderedLength":1231,"gzipLength":0,"brotliLength":0,"metaUid":"f096d9a8-2"},"f096d9a8-5":{"renderedLength":2849,"gzipLength":0,"brotliLength":0,"metaUid":"f096d9a8-4"},"f096d9a8-7":{"renderedLength":1002,"gzipLength":0,"brotliLength":0,"metaUid":"f096d9a8-6"},"f096d9a8-9":{"renderedLength":973,"gzipLength":0,"brotliLength":0,"metaUid":"f096d9a8-8"},"f096d9a8-11":{"renderedLength":752,"gzipLength":0,"brotliLength":0,"metaUid":"f096d9a8-10"},"f096d9a8-13":{"renderedLength":340,"gzipLength":0,"brotliLength":0,"metaUid":"f096d9a8-12"},"f096d9a8-15":{"renderedLength":926,"gzipLength":0,"brotliLength":0,"metaUid":"f096d9a8-14"},"f096d9a8-17":{"renderedLength":1638,"gzipLength":0,"brotliLength":0,"metaUid":"f096d9a8-16"},"f096d9a8-19":{"renderedLength":2036,"gzipLength":0,"brotliLength":0,"metaUid":"f096d9a8-18"},"f096d9a8-21":{"renderedLength":2170,"gzipLength":0,"brotliLength":0,"metaUid":"f096d9a8-20"},"f096d9a8-23":{"renderedLength":1811,"gzipLength":0,"brotliLength":0,"metaUid":"f096d9a8-22"},"f096d9a8-25":{"renderedLength":2476,"gzipLength":0,"brotliLength":0,"metaUid":"f096d9a8-24"},"f096d9a8-27":{"renderedLength":1720,"gzipLength":0,"brotliLength":0,"metaUid":"f096d9a8-26"},"f096d9a8-29":{"renderedLength":468,"gzipLength":0,"brotliLength":0,"metaUid":"f096d9a8-28"},"f096d9a8-31":{"renderedLength":750,"gzipLength":0,"brotliLength":0,"metaUid":"f096d9a8-30"},"f096d9a8-33":{"renderedLength":1128,"gzipLength":0,"brotliLength":0,"metaUid":"f096d9a8-32"}},"nodeMetas":{"f096d9a8-0":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/cli.d.ts","moduleParts":{"cli.d.ts":"f096d9a8-1"},"imported":[],"importedBy":[],"isEntry":true},"f096d9a8-2":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/cli.ts","moduleParts":{"cli.js":"f096d9a8-3"},"imported":[{"uid":"f096d9a8-34"},{"uid":"f096d9a8-35"},{"uid":"f096d9a8-6"},{"uid":"f096d9a8-10"}],"importedBy":[],"isEntry":true},"f096d9a8-4":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/adapters/tool-targets.ts","moduleParts":{"adapters/tool-targets.js":"f096d9a8-5"},"imported":[{"uid":"f096d9a8-37"},{"uid":"f096d9a8-34"}],"importedBy":[{"uid":"f096d9a8-6"},{"uid":"f096d9a8-10"},{"uid":"f096d9a8-30"},{"uid":"f096d9a8-28"}]},"f096d9a8-6":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/commands/setup.ts","moduleParts":{"commands/setup.js":"f096d9a8-7"},"imported":[{"uid":"f096d9a8-36"},{"uid":"f096d9a8-4"},{"uid":"f096d9a8-30"},{"uid":"f096d9a8-8"}],"importedBy":[{"uid":"f096d9a8-2"}]},"f096d9a8-8":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/commands/shared.ts","moduleParts":{"commands/shared.js":"f096d9a8-9"},"imported":[{"uid":"f096d9a8-37"}],"importedBy":[{"uid":"f096d9a8-6"},{"uid":"f096d9a8-10"}]},"f096d9a8-10":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/commands/update.ts","moduleParts":{"commands/update.js":"f096d9a8-11"},"imported":[{"uid":"f096d9a8-4"},{"uid":"f096d9a8-30"},{"uid":"f096d9a8-8"}],"importedBy":[{"uid":"f096d9a8-2"}]},"f096d9a8-12":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-content.ts","moduleParts":{"domain/workflow-content.js":"f096d9a8-13"},"imported":[{"uid":"f096d9a8-39"}],"importedBy":[{"uid":"f096d9a8-28"}]},"f096d9a8-14":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-context.ts","moduleParts":{"domain/workflow-context.js":"f096d9a8-15"},"imported":[],"importedBy":[{"uid":"f096d9a8-39"},{"uid":"f096d9a8-20"},{"uid":"f096d9a8-24"},{"uid":"f096d9a8-26"},{"uid":"f096d9a8-18"},{"uid":"f096d9a8-22"},{"uid":"f096d9a8-16"}]},"f096d9a8-16":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/done.ts","moduleParts":{"domain/workflow-templates/done.js":"f096d9a8-17"},"imported":[{"uid":"f096d9a8-14"}],"importedBy":[{"uid":"f096d9a8-39"}]},"f096d9a8-18":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/implement.ts","moduleParts":{"domain/workflow-templates/implement.js":"f096d9a8-19"},"imported":[{"uid":"f096d9a8-14"}],"importedBy":[{"uid":"f096d9a8-39"}]},"f096d9a8-20":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/init.ts","moduleParts":{"domain/workflow-templates/init.js":"f096d9a8-21"},"imported":[{"uid":"f096d9a8-14"}],"importedBy":[{"uid":"f096d9a8-39"}]},"f096d9a8-22":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/patch.ts","moduleParts":{"domain/workflow-templates/patch.js":"f096d9a8-23"},"imported":[{"uid":"f096d9a8-14"}],"importedBy":[{"uid":"f096d9a8-39"}]},"f096d9a8-24":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/plan.ts","moduleParts":{"domain/workflow-templates/plan.js":"f096d9a8-25"},"imported":[{"uid":"f096d9a8-14"}],"importedBy":[{"uid":"f096d9a8-39"}]},"f096d9a8-26":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/replan.ts","moduleParts":{"domain/workflow-templates/replan.js":"f096d9a8-27"},"imported":[{"uid":"f096d9a8-14"}],"importedBy":[{"uid":"f096d9a8-39"}]},"f096d9a8-28":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/generators/workflow.ts","moduleParts":{"generators/workflow.js":"f096d9a8-29"},"imported":[{"uid":"f096d9a8-4"},{"uid":"f096d9a8-12"}],"importedBy":[{"uid":"f096d9a8-30"}]},"f096d9a8-30":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/runtime/execute.ts","moduleParts":{"runtime/execute.js":"f096d9a8-31"},"imported":[{"uid":"f096d9a8-4"},{"uid":"f096d9a8-28"},{"uid":"f096d9a8-32"}],"importedBy":[{"uid":"f096d9a8-6"},{"uid":"f096d9a8-10"}]},"f096d9a8-32":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/shared/fs.ts","moduleParts":{"shared/fs.js":"f096d9a8-33"},"imported":[{"uid":"f096d9a8-37"},{"uid":"f096d9a8-34"},{"uid":"f096d9a8-38"}],"importedBy":[{"uid":"f096d9a8-30"}]},"f096d9a8-34":{"id":"node:fs","moduleParts":{},"imported":[],"importedBy":[{"uid":"f096d9a8-2"},{"uid":"f096d9a8-4"},{"uid":"f096d9a8-32"}]},"f096d9a8-35":{"id":"commander","moduleParts":{},"imported":[],"importedBy":[{"uid":"f096d9a8-2"}]},"f096d9a8-36":{"id":"@inquirer/prompts","moduleParts":{},"imported":[],"importedBy":[{"uid":"f096d9a8-6"}]},"f096d9a8-37":{"id":"node:path","moduleParts":{},"imported":[],"importedBy":[{"uid":"f096d9a8-4"},{"uid":"f096d9a8-8"},{"uid":"f096d9a8-32"}]},"f096d9a8-38":{"id":"node:fs/promises","moduleParts":{},"imported":[],"importedBy":[{"uid":"f096d9a8-32"}]},"f096d9a8-39":{"id":"/home/whj/codes/cat-kit/packages/agent-context/src/domain/workflow-templates/index.ts","moduleParts":{},"imported":[{"uid":"f096d9a8-14"},{"uid":"f096d9a8-20"},{"uid":"f096d9a8-24"},{"uid":"f096d9a8-26"},{"uid":"f096d9a8-18"},{"uid":"f096d9a8-22"},{"uid":"f096d9a8-16"}],"importedBy":[{"uid":"f096d9a8-12"}]}},"env":{"rollup":"4.23.0"},"options":{"gzip":false,"brotli":false,"sourcemap":false}};
4934
4934
 
4935
4935
  const run = () => {
4936
4936
  const width = window.innerWidth;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cat-kit/agent-context",
3
- "version": "1.0.5",
3
+ "version": "1.0.7",
4
4
  "description": "代理上下文管理工具",
5
5
  "bin": {
6
6
  "agent-context": "./dist/cli.js"
@@ -16,7 +16,7 @@ const TOOL_TARGET_MAP: Record<ToolId, ToolTarget> = {
16
16
  codex: {
17
17
  id: 'codex',
18
18
  name: 'Codex',
19
- rootDir: '.codex/commands',
19
+ rootDir: '.codex/prompts',
20
20
  fileExtension: '.md',
21
21
  supportsFrontmatter: true,
22
22
  commandSeparator: '-',
@@ -34,7 +34,7 @@ const TOOL_TARGET_MAP: Record<ToolId, ToolTarget> = {
34
34
  antigravity: {
35
35
  id: 'antigravity',
36
36
  name: 'Antigravity',
37
- rootDir: '.agents',
37
+ rootDir: '.agent/workflows',
38
38
  fileExtension: '.md',
39
39
  supportsFrontmatter: true,
40
40
  commandSeparator: '-',
package/src/cli.ts CHANGED
@@ -1,13 +1,19 @@
1
1
  #!/usr/bin/env node
2
2
 
3
+ import { readFileSync } from 'node:fs'
3
4
  import { Command } from 'commander'
4
5
 
5
6
  import { setupCommand } from './commands/setup'
6
7
  import { updateCommand } from './commands/update'
7
8
 
9
+ const packageJson = JSON.parse(readFileSync(new URL('../package.json', import.meta.url), 'utf8')) as {
10
+ version?: string
11
+ }
12
+ const packageVersion = typeof packageJson.version === 'string' ? packageJson.version : '0.0.0'
13
+
8
14
  const program = new Command()
9
15
 
10
- program.name('agent-context').description('Agent Context 工作流生成工具').version('2.0.0')
16
+ program.name('agent-context').description('Agent Context 工作流生成工具').version(packageVersion)
11
17
 
12
18
  program
13
19
  .command('setup')