提示词插槽

Prompt slots 是以声明式方式塑造智能体系统提示词的会话选项。请把它们用于宿主级行为—— 角色设定、编码规范、输出风格——这些内容不应写在每次的用户 prompt 里。这些槽位叠加在 智能体内置指令之上,因此核心工具行为(读取、写入、运行命令)会被保留。

共有四个槽位:

槽位用途
role / role智能体采用的角色设定。
guidelines / guidelines智能体必须遵循的规范与规则。
responseStyle / response_style智能体回复的格式方式。
extra / extra逐字追加的自由格式指令。

基本用法

在打开会话时设置任意子集的槽位。它们会应用于该会话的每一轮对话。

Rust
Node.js
Python
Go
Rust
use a3s_code_core::{Agent, SessionOptions, SystemPromptSlots};
#[tokio::main]
async fn main() -> a3s_code_core::Result<()> {
let agent = Agent::new("agent.acl").await?;
let slots = SystemPromptSlots::default()
.with_role("发布就绪审查员")
.with_guidelines("先找阻塞项,再提改进;完成结论必须有命令证据。")
.with_response_style("简洁,发现优先");
let session = agent
.session_builder("/repo")
.options(SessionOptions::new().with_prompt_slots(slots))
.build()
.await?;
let result = session.send("这个仓库可以发布了吗?", None).await?;
println!("{}", result.text);
session.close().await;
agent.close().await;
Ok(())
}

逐个槽位说明

这四个槽位彼此独立组合。仅设置角色的会话、带有严格准则的评审者、以及追加自由格式指令的 会话,使用的都是同一组选项。

Rust
Node.js
Python
Go

槽位用于定制角色设定与行为规则;它们不会禁用工具,也不会改变智能体的核心循环。请把 任务相关的请求保留在 send 消息中,而把应在会话每一轮都生效的行为交给这些槽位。

可运行版本位于 sdk/node/examples/skills/test_prompt_slots.ts。