快速开始

最小可用的程序:从 ACL 文件创建一个 agent,在项目目录上打开会话,使用 send (Go 中为 Run,即使用会话自身历史的 Send 简写形式)运行一轮对话,打印回复文本, 并查看运行时为该轮生成的验证摘要。

Rust
Node.js
Python
Go
Rust
use a3s_code_core::Agent;
#[tokio::main]
async fn main() -> a3s_code_core::Result<()> {
// Agent::new 接受 .acl 文件路径或内联 ACL 源文本。
let agent = Agent::new("agent.acl").await?;
let session = agent.session_builder(".").build().await?;
let result = session.send("列出当前目录中的文件。", None).await?;
println!("{}", result.text);
// 运行时在生成这个回合时执行的验证。
println!("{}", result.verification_summary_text());
session.close().await;
agent.close().await;
Ok(())
}

四种 SDK 的 Agent 工厂都接收 .acl 文件路径或内联 ACL 源文本。使用完毕后, 先关闭 Session,再关闭 Agent,让 Runtime 刷新状态并释放资源;关闭 Agent 也会关闭它仍持有的 所有 Session。在 Node.js 中请使用 sessionAsync() 和 closeAsync():同步的 session() 与 close() 会阻塞事件循环,已被弃用。Go 的关闭操作接收 Context, 因为它还需要停止桥接程序持有的原生资源。

下一步