开发者文档 SDK
workflow 模块
workflow 模块暴露给任务脚本的一切——任务、MCP、项目状态、记忆、知识库与响应式状态。从 `workflow`(Python)或 `@allybuild/sdk`(TypeScript)导入即可使用。
Python
平台会把两个文件物化到你的脚本(task_script.py)旁:workflow.py——基于 SDK 构建的纯绑定面——与入口 starter.py,由它加载 task_script.py 并分发 run / on_change。绑定面以模块级名称暴露——按需导入:
from workflow import (
params, reporter, client,
create_task, wait_task, feedback, flush_tasks,
list_tasks, get_task, memories, okf,
mcp, project_status, fetch_statuses,
TASK_ID, PROJECT_ID, TASK_JWT,
)| 名称 | 类型 | 用途 |
|---|---|---|
| params | dict | TASK_PARAMS 解析自 JSON |
| reporter | Reporter | set_phase / set_progress |
| client | AllyBuildClient | 预配置的平台 client |
| create_task / wait_task | TasksApi | 派生并等待项目任务 |
| feedback | callable | 回应停在 pending_approval 的子任务 |
| flush_tasks | callable | 退出前汇合后台 on_complete 线程 |
| list_tasks / get_task | TasksApi | 检查任务实例 |
| list_agents / list_workspaces | AgentsApi | 名册与工作区读取 |
| memories | MemoriesApi | 按元任务与按运行的记忆 |
| list_task_type_memories / get_task_memories | callable | 直接读取记忆 |
| okf | OkfApi | 知识库检索与 lint |
| okf_search / okf_lint | callable | 知识库直接调用 |
| mcp / mcp_call / async_mcp_call | MCP | 项目 MCP 工具 |
| project_status | ProjectStatusProxy | 响应式共享项目状态 |
| fetch_statuses | callable | 拉取项目全部状态 store |
| project_tokens | dict | ALLYBUILD_PROJECT_TOKENS 解析自 JSON |
| defineStore / create_reactive / field / getter / action | reactive | 声明响应式 store 并接线注册表 |
| TASK_ID / PROJECT_ID / TASK_JWT | str | 注入的标识符 |
| ALLYBUILD_API_URL | str | 平台 API 基址,含 /api |
| BG_SERVICE_ID / SERVICE_WORKSPACE_ID | str | 后台服务上下文(服务 id / 绑定工作区) |
TypeScript
平台会把两个文件复制到你的脚本(task_script.ts)旁:workflow.ts——基于 SDK 构建的纯绑定面——与入口 starter.ts,由它加载 task_script.ts 并分发 run / on_change。绑定面从包根 @allybuild/sdk 直接导入:
import {
params, reporter,
create_task, wait_task, flush_tasks,
mcp, project_status,
TASK_ID, PROJECT_ID, TASK_JWT,
} from '@allybuild/sdk'| 名称 | 类型 | 用途 |
|---|---|---|
| params | object | TASK_PARAMS 解析自 JSON |
| reporter | Reporter | set_phase / set_progress |
| create_task / wait_task | TasksApi | 派生并等待项目任务 |
| flush_tasks | callable | 退出前汇合后台 on_complete 回调 |
| mcp / mcp_call | MCP | 项目 MCP 工具 |
| project_status | ProjectStatusProxy | 响应式共享项目状态 |
| project_tokens | object | ALLYBUILD_PROJECT_TOKENS 解析自 JSON(只读密钥) |
| defineStore / createReactive / HttpBackend | reactive | 自 @allybuild/sdk 再导出——声明 store 并接线注册表 |
| TASK_ID / PROJECT_ID / TASK_JWT | string | 注入的标识符 |
| ALLYBUILD_API_URL | string | 平台 API 基址,含 /api |
| BG_SERVICE_ID / SERVICE_WORKSPACE_ID | string | 脚本作为后台服务运行时设置 |
调用约定
- 函数式(推荐)——导出
run(params, reporter);starter 入口调用它并把返回的 dict 打印为结果。 - 模块级——顶层副作用在导入时执行;后台服务脚本定义
on_change(mutation, state)。