Community编程与开发github.com

astrale-os/astrale-domain

创建、修改、测试、迁移或调试 Astrale 域:Schema、策略、操作/工作流运行时、集成、视图、数据集以及部署。对于新域,请遵循分阶段工作流;对于重点任务,只加载相关的参考资料。

astrale-domain 是什么?

这是一个全面指导开发人员处理 Astrale Domain 生命周期各个方面(从搭建新域到调试生产问题)的 AI 助手技能。它通过一个意向路由器提供精确定位的知识,该路由器会根据当前任务(如 Schema 设计、运行时实现、集成或策略配置)指示助手加载特定的参考文件。该技能支持所有主要的 AI 代理平台(Claude Code、Cursor、Codex),并规定了一种结构化的工作流:对于新域,按顺序进行基础搭建、Schema、可调用函数、视图、演示数据和完成阶段,仅加载与当前阶段相关的参考资料。它强制要求使用工具边界(例如,仅通过 `@astrale-os/sdk/*` 子路径导入,避免直接调用内核),并通过内置规则(例如,Schema 中的授权优先于处理函数)增强安全性。通过将庞大的文档按任务分块——包括迁移、性能调优和调试的单独参考文件——该技能减少了认知负载,同时确保代理在适当的环境中生成正确、类型安全的代码。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/astrale-os/cli/tree/main/skills/astrale-domain

Installed? Explore more 编程与开发 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Astrale Domain

从与目标匹配的参考资料中加载详细的领域知识。

内核边界

  • 使用 Schema、可执行证据和 SDK 的域 lint 工具作为防护栏。
  • 域源代码只能通过匹配的语义 @astrale-os/sdk/* 子路径导入 Core 和 DSL 创作值。不要直接导入 @astrale-os/kernel-core 或 @astrale-os/kernel-dsl,也不要将它们替换为扁平的 SDK 根桶。
  • 将授权保持在 Schema 拥有的 Policy 和可调用的 auth 模式中;处理程序仅执行允许的调用,不定义第二个授权模型。
  • 有选择地选择每个存在性 Policy Node 的范围:node() 用于拓扑拥有的匹配,node(Class) 用于多态的 Class 族,或 node.exact(Class) 用于精确身份。
  • 将已安装 SDK 的公共导出和当前域源代码视为 API 语法的权威来源。

意向路由器

使用此路由器仅加载当前任务所拥有的参考资料。对于新域,也使用下面的分阶段工作流;现有的公共支架应已满足其基础阶段。

  • 搭建、部署、安装、测试或配置域的 TypeScript:阅读 references/development.md。
  • 编写 Schema、词汇表、属性、Class/Edge 选择或审查 Schema:首先阅读 references/schema.md。在处理 Schema 工作时始终阅读它。
  • 实现处理程序、可调用绑定、内核调用、图读/写或跨域调用:阅读 references/runtime.md。
  • 包装外部 API、定义集成/提供程序、接收 Webhooks 或设计副作用/重试行为:阅读 references/integrations.md。
  • 决定是重用/导入原生 Astrale 域而不是自己建模功能:阅读 references/domains.md。
  • 建模登录用户、邀请/注册现有人员或分配 Shell 组:阅读 references/users.md。
  • 保护域、函数、视图、客户端调用、公共端点、身份、委派、认证模式或策略:阅读 references/policies.md。
  • 构建或审查浏览器视图、挂载的 UI、视图访问、视图解析或前端设计:阅读 references/views.md,并应用 astrale-frontend-design 进行产品界面布局、交互和文案。
  • 计划或验证已安装的 Schema 修订版、数据迁移或回填:阅读 references/migration.md。
  • 优化图访问、减少往返、选择索引/查询或审查调用模式以降低延迟:阅读 references/performance.md。
  • 编写或更新演示数据——Studio 绘制和证明策略所依赖的 tests/ 下的数据集:阅读 references/datasets.md。
  • 编写测试、夹具、演示流程或烟雾测试场景:阅读 references/testing.md。
  • 诊断失败的实时域、发布者/发现混淆、调用路由或运行时漂移:阅读 references/debugging.md。

新域创建工作流

对于创建、构建、原型设计或制作域 POC 的请求,请按顺序遵循适用的阶段,并仅在阶段开始时加载参考资料。

  1. 基础: 首先检查工作区。当不存在公共支架时,阅读 references/development.md;仅在决定是否重用原生域时阅读 references/domains.md。当工作区已经声明了 SDK、部署适配器、Application 和 Runtime 时,保留该管道并直接进入 Schema。
  2. Schema: 在编写 Schema 之前,阅读 references/schema.md;对于登录用户和组,在发明身份或注册词汇表之前,也要阅读 references/users.md。
  3. 可调用函数: 在实现可调用函数之前,阅读 references/runtime.md 和 references/policies.md。如果涉及外部系统,还要阅读 references/integrations.md。
  4. 视图: 当域拥有浏览器界面时,在设计或实现之前阅读 references/views.md。视图是 Schema 声明,而不是 SDK 域定义上的字段。
  5. 演示数据: 对于具有有意义示例图的域,在 tests/ 下编写一个小的 Dataset,并从 astrale.config.ts 引用它。先阅读 references/datasets.md;不要为仅 API 的域发明图数据,也不要将针对性的编辑扩展到不相关的演示工作中。
  6. 完成: 阅读 references/testing.md;用代表性的成功和适用的拒绝输入来测试交付的公共可调用函数,然后运行相关测试、类型检查、lint 和构建。在交付可消费包时验证打包,在声称部署或集成成功时验证实时行为。

仅在域的生命周期或当前问题需要时,才阅读 references/migration.md、references/performance.md 和 references/debugging.md。

始终在线工作流

  1. 在依赖记忆中的 API 语法之前,检查当前仓库或支架。
  2. 对于实时行为,使用 references/debugging.md 并在将源代码编辑视为有效之前,先验证已部署/已安装/运行时路径。
  3. 当 Schema 更改影响现有数据集时,在同一更改中使它们保持有效且具有代表性。阅读 references/datasets.md;示例补充测试而非穷举每种情况。

Individual skills in this repo

This repo contains 3 individual skills — each has its own dedicated page.

相关技能