fml
Work with Fast Modeling Language (FML) dimensional models through the repository's deterministic CLI. Use for creating or modifying .fml files, validating FML or supported engine-dialect syntax, diagnosing parser errors, formatting models, inspecting model AST structure, and transforming FML into any transformer dialect packaged by the project.
日本語の概要は準備中です。原文の説明を表示しています。
実行スコア 未検証
インストール方法を見る含まれるファイル(11)
- SKILL.md3.4 KB
- agents/openai.yaml222 B
- evals/evals.json5.4 KB
- evals/fixtures/customer.fml85 B
- evals/fixtures/inventory.fml67 B
- evals/fixtures/order_model.fml49 B
- evals/fixtures/shop.fml73 B
- evals/report.md1.4 KB
- evals/trigger-evals.json3.0 KB
- references/cli.md3.1 KB
- scripts/validate_evals.py9.8 KB
SKILL.md(原文)
インストールする前に、エージェントに与えられる指示の中身を確認できます。
FML
Use the fml CLI as the source of truth for parsing and transformation. Do not simulate parser behavior or claim that generated FML is valid without running validate.
Locate the CLI
From the repository root, prefer the packaged executable JAR:
java -jar fastmodel-agent-cli/target/fastmodel-agent-cli-*-executable.jar capabilities
If it is unavailable, build it:
mvn -pl fastmodel-agent-cli -am package -DskipTests
Store the resolved JAR path once and reuse it. Every command emits one JSON object on stdout.
Choose a command
- Run
validateafter creating or editing FML. - Run
validate --dialect DIALECTto parse supported native engine DDL. - Run
formatwhen canonical FML source is required. - Run
inspectto understand statement and child-node types. - Run
transform --dialect DIALECTto generate engine SQL or visualization output. - Run
capabilitiesbefore relying on a dialect or exit code not documented here.
Read references/cli.md when constructing commands or handling errors.
Reliable modeling workflow
- Read the existing model and preserve its naming and property conventions.
- Make the smallest requested source change.
- Run
validate FILE. - If validation fails, use diagnostic
line,column, andmessage; fix the source and rerun. - Run
format FILEwhen canonical formatting is requested. Extract the JSONoutputvalue before writing it back. - Run
capabilitiesand check the requested dialect'stransformorvalidateflag. - Run
transform --dialect DIALECT FILEwhen target output is requested. - Validate generated SQL with the target engine's own tooling when available. FML transformation success does not prove deployability in a specific engine environment.
Input safety
Prefer a file argument for repository artifacts. Use stdin for generated or temporary content:
printf '%s' "$FML_SOURCE" | java -jar "$FML_CLI_JAR" validate -
Use --text only for short, controlled snippets. Never interpolate untrusted model text into a shell command.
Interpret results
Treat ok: true and exit code 0 as success. Treat any nonzero exit code as failure even if partial output exists.
- Exit
2: invalid CLI input or arguments. - Exit
3: FML parsing failed. - Exit
4: transformation or execution failed.
Return diagnostics to the user with their error code and source location. Do not discard structured errors or replace them with generic prose.
Maintain the skill
When changing this skill, run its task and trigger evaluation contract:
python3 skills/fml/scripts/validate_evals.py
To include deterministic CLI results and refresh the checked-in report:
FML_CLI_JAR="$(find fastmodel-agent-cli/target -maxdepth 1 -name '*-executable.jar' -print -quit)"
python3 skills/fml/scripts/validate_evals.py \
--cli-jar "$FML_CLI_JAR" \
--report skills/fml/evals/report.md
Run the skill creator's quick_validate.py as a separate structural check. The evaluation datasets live in evals/evals.json and evals/trigger-evals.json.
レビュー
まだレビューはありません。使ってみた感想をお寄せください。
コメント
ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。
まだコメントはありません。最初のコメントを書いてみませんか。