首页
/ PromptLab扩展中Action Script输入变量的使用技巧

PromptLab扩展中Action Script输入变量的使用技巧

2025-06-04 06:22:01作者:董斯意

在Raycast的PromptLab扩展开发过程中,开发者经常会遇到需要在Action Script中获取用户输入文本的需求。本文将通过一个实际案例,深入探讨PromptLab中变量传递的机制和最佳实践。

问题背景

当开发者创建自定义命令时,通常会设计一个AI处理流程:首先获取用户选中的文本(selectedText),经过AI处理后生成响应(response),最后可能需要将这些信息保存到文件中。在这个过程中,如何将初始输入文本传递给后续的Action Script成为了一个关键问题。

变量传递机制分析

PromptLab提供了两种主要的变量传递方式:

  1. 传统环境变量方式:通过$input变量传递,这种方式实际上获取的是通过QuickLink输入参数传递的文本,而不是模板中的{{selectedText}}值。

  2. 模板占位符方式:直接使用{{selectedText}}这样的占位符语法,这种方式会在脚本执行时动态获取当前的选中文本值。

技术实现对比

方式 优点 缺点 适用场景
$input变量 简单直接 只能获取QuickLink输入 简单命令处理
{{selectedText}}占位符 动态获取最新值 值可能随时间变化 需要精确获取输入文本的场景

最佳实践建议

  1. 对于需要精确获取初始输入文本的场景,推荐使用模板占位符方式,如/script.sh "{{selectedText}}" "$response"

  2. 注意时效性问题:占位符方式获取的是执行时的当前值,如果用户在AI处理过程中改变了选中文本,获取的值也会相应变化。

  3. 未来改进方向:PromptLab可能会改进这一机制,使Action Script能够访问发送给模型的原始占位符值,这将提供更一致的开发体验。

实际应用示例

以下是一个完整的英语文本校正命令实现示例:

# 提示词模板
"You are the English teacher. Try to fix typo, grammar and repeats for the text. Keep original meaning.

Input text: "{{selectedText}}"
As result, give only result text."

# 动作脚本
/save_corrections.sh "{{selectedText}}" "$response"

这种方式确保了原始输入文本和AI校正结果都能被准确记录,非常适合用于学习分析和内容存档等场景。

通过理解PromptLab的这些特性,开发者可以构建更可靠、功能更丰富的自定义命令,提升工作效率和用户体验。

登录后查看全文
热门项目推荐