Eosphor
Vyane 核心概念

session 与 goal

长任务怎么保上下文、跨天接续、额度接力

Vyane 里有两个容易混的概念:sessiongoal。一句话分清:

  • session = 一条对话线程,负责「上下文别丢」
  • goal = 一个长目标,负责「这件事有没有做完,做的过程能不能跨天、跨模型」

session:保住上下文

一个任务要跨好几轮对话,你不想每次都从头交代背景 —— 用 session 把它们串成一条线。

# 建一条 session(标题是位置参数)
uv run vyane session create "ISSUE-42 鉴权层重构"
# 输出一个 session id,例如 session-abc123

# 后续每次调用带上它,上下文自动接续
uv run vyane dispatch "先把 session 层拆出来" --session session-abc123
uv run vyane dispatch "现在给它补单元测试" --session session-abc123

# 看这条 session 的历史
uv run vyane session history session-abc123

参数是 --session

给 dispatch 接续上下文的参数是 --session,不是 --vyane-session

两种 session,别搞混

底层其实有两层"会话",MCP 工具里你会看到两个参数:

  • Vyane session(话题会话) —— Vyane 自己的逻辑会话,不绑死具体模型 / harness,可以跨模型、跨执行壳接续。上面 --session 接的就是它。
  • native session(运行时会话) —— 执行壳自己的会话(比如 Claude Code 的 session-id、Codex 的 session)。它绑在某一个具体 harness 上。

日常用 Vyane session 就够了(它更上层、更灵活);native session 是在需要精确复用某个 harness 的原生会话时才用。

goal:管一个长目标

goal 是「一件要做完的大事」,有验收标准、有生命周期(创建 → 进行 → 完成 / 失败)。它最有用的地方是 额度接力(quota handoff):某个模型的额度用光了,自动切到备选模型继续,而不是卡死。

# 建一个长目标
uv run vyane goal create --title "把 review 流水线搬到新引擎"

# 追进度
uv run vyane goal progress <goal_id> "已完成 specialist 阶段迁移"

# 完成
uv run vyane goal done <goal_id>

额度接力

当主力模型额度耗尽,Vyane 不自动瞎切,而是走「扫描 → 预览 → 批准 → 执行」四步,让你有掌控:

uv run vyane goal continuity-scan       # 扫描:有没有目标卡在额度上
uv run vyane goal continuity-preview    # 预览:打算怎么切
uv run vyane goal continuity-execute    # 执行:切到备选模型继续

session vs goal 一句话

同一件事,可以既有 goal(这事要做完)又有 session(做的过程中这条对话别断)。 goal 管「做没做完」,session 管「聊到哪了」。

接下来

On this page