67 lines
2.1 KiB
JavaScript
67 lines
2.1 KiB
JavaScript
/**
|
||
* run-prompt.js - 执行一个prompt文件的AI工具脚本
|
||
*
|
||
* 此脚本描述如何执行一个prompt文件,供AI参考使用。
|
||
* 实际执行由外部AI工具完成,本项目不包含执行环境。
|
||
*
|
||
* 功能描述:
|
||
* 1. 读取指定的prompt文件
|
||
* 2. 提取文件中的元数据(target、priority等)
|
||
* 3. 检查Claude Code CLI是否可用(外部环境)
|
||
* 4. 调用Claude Code CLI执行prompt
|
||
* 5. 输出AI响应结果
|
||
*
|
||
* 输入:prompt文件路径
|
||
* 输出:AI生成的响应内容
|
||
*
|
||
* 伪代码逻辑:
|
||
*/
|
||
|
||
// 主函数:执行prompt文件
|
||
// 参数:promptFilePath - prompt文件的路径
|
||
// 返回:AI响应内容(字符串)
|
||
function executePromptFile(promptFilePath) {
|
||
// 步骤1:验证文件存在
|
||
// 如果文件不存在,抛出错误或返回错误信息
|
||
|
||
// 步骤2:读取文件内容
|
||
// 使用文件系统API读取文件内容,得到promptContent字符串
|
||
|
||
// 步骤3:提取元数据
|
||
// 从promptContent中匹配 <!-- target: xxx --> 格式的注释
|
||
// 提取target值,用于日志显示
|
||
|
||
// 步骤4:检查Claude Code CLI是否可用
|
||
// 尝试执行命令 'claude --version',如果失败则提示用户手动执行
|
||
|
||
// 步骤5:准备临时文件
|
||
// 在.temp目录下创建临时文件,将prompt内容写入
|
||
|
||
// 步骤6:调用Claude Code CLI
|
||
// 执行命令:claude --file "临时文件路径"
|
||
// 捕获输出结果
|
||
|
||
// 步骤7:清理临时文件
|
||
// 删除临时文件
|
||
|
||
// 步骤8:返回AI响应
|
||
// 将Claude Code的输出返回给调用者
|
||
|
||
// 注意:此函数为伪代码描述,实际实现由外部AI工具完成
|
||
}
|
||
|
||
// 辅助函数:提取prompt元数据
|
||
function extractPromptMetadata(promptContent) {
|
||
// 从prompt内容中提取target、priority等元数据
|
||
// 使用正则表达式匹配 <!-- key: value --> 格式
|
||
// 返回包含元数据的对象
|
||
}
|
||
|
||
// 辅助函数:调用Claude Code CLI
|
||
function invokeClaudeCode(promptContent) {
|
||
// 调用外部Claude Code CLI工具执行prompt
|
||
// 返回AI生成的响应
|
||
}
|
||
|
||
// 导出函数供AI参考
|
||
// 注意:这些函数不会实际执行,仅作为文档说明
|