用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/Datus-ai/Datus-agent --skill dosi-semantic-authoring命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
Create or update custom Datus subagents by editing the loaded agent.yml. Use when a workflow needs persistent agentic_nodes scoped to already-built tables, metrics, or reference SQL.
Bootstrap project reference SQL and metrics from a BI dashboard through an installed plugin. Use when the user asks to initialize, import, extract, or build context, reference SQL, semantic models, or metrics from a dashboard or requests dashboard bootstrap.
Build the project's vector-indexed knowledge base from files plus database metadata — optionally scoped to specific files / tables / datasources / domains. Scan the in-scope material, classify it into business domains, explore each domain's tables and docs in parallel with explore subagents (the validated-query SQL corpus is enumerated directly, no explore needed), then (after the user confirms a generation manifest — or directly, in the same turn, when the user has waived confirmation) route every artifact to its store via storage-classify, generating semantic_models / metrics / reference_sql (and mining any extra knowledge), and refresh AGENTS.md's KB index. The lightweight /init handles the AGENTS.md inventory plus file-based knowledge/memory; this skill owns the heavy vector-store generation.
基于 SOC 职业分类
| name | dosi-semantic-authoring |
| description | Dosi native OSI dataset, relationship, metric, and structured-window authoring contract |
| tags | ["semantic-model","metrics","osi","dosi"] |
| version | 1.0.0 |
| user_invocable | false |
| disable_model_invocation | false |
| allowed_agents | ["semantic_modeling","gen_semantic_model","gen_metrics"] |
Author the active Dosi semantic model as strict OSI core YAML. Use this skill for native document authoring rules; use the active adapter specification and native validation as the exact document and DATUS-extension contract. The node prompt owns target selection, result-set strategy, mutation order, validation, and synchronization.
semantic_model per file and stable snake_case names. Preserve unrelated content; an upsert replaces the complete same-named object.dimension: {is_time: true}. Keep other fields available as dimensions.from_columns and to_columns; bind the target columns to one complete verified key.Put each Dosi-only key in the owning object's custom_extensions entry. Encode data as one JSON-object string and stamp it with the runtime <datus_extension_version>.
| Carrier | Supported keys |
|---|---|
| Dataset | time_dimension |
| Time field | time_granularity |
| Relationship | join_type |
| Metric | dataset, time_dimension, fill_nulls_with, window, subject_path, unit, format |
time_dimension to resolve the business time when inference is ambiguous; qualify metric-level references when field names collide.time_granularity for the field's stored grain and join_type for left or inner relationship behavior.dataset to attribute an otherwise unbound aggregate such as COUNT(*).ai_context.instructions, and a three-level subject_path.- name: revenue
description: Total order revenue
ai_context: {instructions: Use order_date as business time.}
expression: {dialects: [{dialect: <osi_dialect>, expression: SUM(orders.amount)}]}
custom_extensions:
- vendor_name: DATUS
data: '{"v":"<datus_extension_version>","time_dimension":"orders.order_date","subject_path":["sales","revenue","total"],"unit":"USD"}'
CASE WHEN.window object.| Intent | Form |
|---|---|
| Period comparison or following-period value | pop or general offset |
| Trailing buckets | rolling |
| Running or period-to-date value | cumulative |
| Explicit aggregate/statistical frame | general frame |
| Ranking or distribution | rank |
| First, last, or nth value | value |
order.by values time or value. Use partition modes query_dimensions, query_dimensions_except, time_bucket, or none; qualify excluded fields.buckets for ntile, n for nth_value, and a second plain aggregate metric for covariance or correlation.Validate the final model with the native Dosi parser/compiler after the last mutation.