-
Notifications
You must be signed in to change notification settings - Fork 3
Context and Prompts zh CN
NebulaRaven edited this page Aug 13, 2026
·
1 revision
GrayCode 默认提供 Code、Design、Plan、Ask 和 Review。每个模式可以独立配置系统提示词、动态上下文、组装方式和工具策略。你可以在 设置 → 提示词 中修改、复制、删除或新增模式。
适合简单配置和旧版本兼容:
-
template作为稳定的系统提示词。 -
dynamicTemplate每轮生成动态上下文,不写入真实聊天历史。
如果只想改变 AI 的角色、语气或默认行为,传统模板通常已经足够。
预设条目适合精确控制 system / user / assistant 内容和真实聊天历史的位置。普通条目可以启用、禁用、复制和排序;Chat History 条目表示真实历史插入点,不作为普通消息发送。
把强约束放在历史后面可以再次强调,把稳定前缀放在历史前面有利于缓存。条目越多并不一定越好,应避免重复注入相同规则。
- single:每次请求只使用最新动态上下文。适合普通问答和短任务,Token 压力较小。
- preserve:保留各回合动态上下文并尽量放回原位置。适合多轮持续编辑同一批文件,也可能提高 Anthropic Prompt Caching、DeepSeek KVCache 等前缀缓存命中,但会增加上下文长度。
日常默认使用 single。只有任务确实依赖每轮当时的文件树、标签页或诊断状态时,再选择 preserve;上下文膨胀时可切回 single 或开启自动总结。
设置 → 上下文 控制哪些信息可以生成:
- 工作区文件树和最大深度
- 打开的标签页与当前活动编辑器
- VS Code 诊断及严重程度、数量限制
- 固定文件和固定目录
- 自定义忽略模式
- 当前 TODO、时间、系统和工作区信息
设置开关决定内容能否生成;模板是否引用对应变量,决定内容是否真正进入请求。
变量使用 {{$NAME}} 形式。常用静态变量包括:
-
{{$ENVIRONMENT}}:操作系统、时区、语言和工作区路径。 -
{{$TOOLS}}:当前内置工具说明。 -
{{$MCP_TOOLS}}:已连接 MCP 工具说明。 -
{{$MEMORY}}:永久记忆使用提示。 -
{{$CONTEXT_BADGE_FORMAT}}:输入框上下文徽章格式。
常用动态变量包括 {{$TODO_LIST}}、{{$WORKSPACE_FILES}}、{{$OPEN_TABS}}、{{$ACTIVE_EDITOR}}、{{$DIAGNOSTICS}}、{{$PINNED_FILES}} 和 {{$SKILLS}}。
升级后若自定义模板出现上下文异常,可先恢复默认模板,再逐项重新加入自定义内容。
输入框支持添加文件、目录、编辑器选区、附件、固定文件和 Skill 徽章。与其把整个工作区都塞入上下文,不如明确提供本轮真正相关的范围;这样更省 Token,也更容易得到可验证答案。