# Skillscript：面向智能体工作流的声明式语言

> Skillscript 是一种专为编写智能体工作流而设计的声明式语言，提供依赖 DAG、类型化操作和连接器机制，支持解释执行和编译为提示词产物。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-05-21T17:46:23.000Z
- 最近活动: 2026-05-21T17:51:00.659Z
- 热度: 150.9
- 关键词: Skillscript, 智能体工作流, 声明式语言, AI Agent, 工作流编排, LLM, Ollama, MCP
- 页面链接: https://www.zingnex.cn/forum/thread/skillscript
- Canonical: https://www.zingnex.cn/forum/thread/skillscript
- Markdown 来源: ingested_event

---

# Skillscript：面向智能体工作流的声明式语言\n\n## 背景：为什么需要专用语言\n\n随着大型语言模型（LLM）能力的提升，基于智能体的自动化工作流变得越来越普遍。然而，大多数开发者仍然使用通用编程语言（如 Python）来编排这些工作流，这带来了几个挑战：代码与配置混杂、依赖关系难以可视化、跨平台移植困难、以及难以将工作流编译为可供模型直接消费的提示词格式。\n\nSkillscript 的出现正是为了解决这些问题。它提供了一种声明式的、领域特定的方式来描述智能体工作流，让开发者能够专注于"做什么"而非"怎么做"。\n\n## 项目概览\n\nSkillscript 是一个小型声明式语言，专为编写智能体工作流而设计。其核心概念是"技能脚本"（skillscript）——一种带有依赖 DAG（有向无环图）的命名目标程序，每个目标由类型化的操作组成。\n\n该项目目前处于 v1 开发阶段，公共 API、语言语法和连接器合约可能会发生变化，直到 v1.0.0 正式发布前不保证向后兼容。\n\n## 核心设计理念\n\n### 声明式配方\n\nSkillscript 将工作流视为"配方"——一种描述依赖关系和数据流的声明式程序。开发者定义目标（targets）及其依赖关系，运行时负责解析和执行。这种方式天然支持并行执行和缓存优化。\n\n### 一次编写，多次执行\n\n技能脚本可以被解释执行（由自主运行的解释器或定时任务触发），也可以被编译为提示词产物供智能体读取。这种双重执行模式让同一个工作流定义可以适应不同的运行环境。\n\n### 类型化操作与连接器\n\n每个操作都有明确的类型签名，输入和输出经过类型检查。连接器（connectors）提供与外部系统的交互能力，包括文件系统、SQLite 内存存储、Ollama 本地模型等。\n\n## 快速上手\n\nSkillscript 的安装和使用非常简洁：\n\n```bash\nnpm install -g skillscript-runtime\nskillfile init\nskillfile run examples/hello.skill\n```\n\n值得注意的是，基础示例在冷安装后即可运行，无需配置 Ollama 或其他环境。当 Ollama 服务可用时，额外的示例会展示本地模型调度的能力。\n\n## 技术架构\n\n### CLI 工具链\n\nskillfile CLI 提供了完整的开发工作流支持：\n\n- `init`：初始化新项目\n- `run`：执行技能脚本\n- `compile`：编译为提示词产物\n- `lint`：静态检查和验证\n- `list`：列出可用技能和操作\n\n### 默认连接器\n\n项目内置了多种常用连接器：\n\n- **SkillStore**：基于文件系统的技能存储\n- **MemoryStore**：SQLite 内存存储，用于状态管理\n- **LocalModel**：Ollama 本地模型集成\n- **MCP scaffold**：Model Context Protocol 脚手架\n\n### 容器化支持\n\n项目提供了多架构容器镜像，并在示例 docker-compose.yml 中预配置了与 Ollama 和 SQLite 卷的集成，方便在生产环境中部署。\n\n### 库导出\n\n除了 CLI 工具，Skillscript 还提供了库级别的导出：\n\n```javascript\nimport { compile, execute, lint } from \"skillscript-runtime\"\n```\n\n这使得 Skillscript 可以被嵌入到其他应用程序中，作为工作流引擎使用。\n\n## 文档与规范\n\n项目的文档结构清晰，包含：\n\n- **LANGUAGE_REFERENCE.md**：语法、操作、生命周期和连接器的完整规范\n- **ERD.md**：工程需求文档\n- **ARCHITECTURE.md**：单页架构图，说明各文件职责\n\n这种文档组织方式体现了项目对可维护性和社区贡献的重视。\n\n## 实际意义与应用场景\n\n### 降低智能体工作流的开发门槛\n\n通过提供声明式语法和类型安全，Skillscript 让开发者能够以更低的认知成本构建复杂的智能体工作流。这对于希望快速原型化 AI 应用但不想深入学习底层框架的团队尤其有价值。\n\n### 促进工作流的可移植性\n\n声明式定义天然具有更好的可移植性。同一个 Skillscript 可以在本地开发环境、CI/CD 管道和生产环境中无缝迁移，而无需修改代码。\n\n### 支持人机协作的新模式\n\n编译为提示词产物的能力开启了人机协作的新可能：开发者编写结构化的工作流定义，智能体消费这些定义并执行相应任务。这种分工让各自发挥所长。\n\n## 局限与未来展望\n\n作为早期项目，Skillscript 目前存在以下局限：\n\n- API 和语法尚未稳定，可能随时变化\n- 生态系统尚不成熟，连接器种类有限\n- 社区规模较小，第三方资源相对匮乏\n\n然而，随着智能体工作流需求的持续增长，声明式语言的价值将愈发凸显。Skillscript 的设计理念——声明式、类型安全、可编译——代表了这一领域的发展方向。\n\n## 总结\n\nSkillscript 是一个值得关注的实验性项目，它尝试用声明式语言的方式重新定义智能体工作流的开发体验。虽然仍处于早期阶段，但其核心理念——将工作流视为带有依赖 DAG 的类型化程序——为解决当前智能体编排中的痛点提供了新的思路。对于关注 AI 工作流基础设施的开发者来说，这是一个值得跟踪的项目。
