Sources & credits
skycmd stands on open data, open libraries and open research. This page lists what the shipped models were trained on, the main libraries and technologies of the codebase, and the reference models and runtimes we compared against. Exact licences, row counts and rejected datasets are in DATA_LICENSES.md. The research notes, with their papers, are in docs/research.md and docs/research-night.md.
Training data
Typed decisions (choice / score / noul)
| Dataset | Licence | Used as |
|---|---|---|
| tasksource/tasksource-jev-typed-decisions | per row; only rows tagged commercial | training |
| tasksource/procedural-typed-decisions | Apache-2.0 | training |
| tasksource/synthetic-typed-decisions | Apache-2.0 | training |
| pngwn/typed-decisions | CC-BY-SA-4.0 | training (soft gold_probs) |
| n4ze3m/typed-decisions-synth | MIT | training |
| kgrozdanovski/assistant-decisions | Apache-2.0 | training |
| helmo/synthetic-typed-decisions | MIT | training |
| m-lagnajit/calibrated-typed-decisions | CC-BY-4.0 | training |
| ZefanCai/Open-Jev (drone expansion split) | CC0 | training |
| Aditharavind/swarm-laya-decisions | Apache-2.0 | training |
Classic datasets converted into typed questions
| Dataset | Licence | Converted to |
|---|---|---|
| google/boolq | CC-BY-SA-3.0 | noul |
| nyu-mll/glue (MNLI) | see the GLUE card | choice |
| stanfordnlp/snli | CC-BY-SA-4.0 | choice |
| allenai/ai2_arc | CC-BY-SA-4.0 | choice |
| tau/commonsense_qa | MIT | choice |
| Rowan/hellaswag | MIT | choice |
| PolyAI/banking77 | CC-BY-4.0 | choice (8 candidates) |
| nvidia/HelpSteer2 | CC-BY-4.0 | score (5 levels) |
| nvidia/When2Call | CC-BY-4.0 | choice |
| google-research-datasets/paws-x (fr) | see the card | noul, French |
| tblard/allocine | MIT | noul, French |
Pretraining text
| Dataset | Licence |
|---|---|
| SimpleStories/SimpleStories | MIT |
| roneneldan/TinyStories | CDLA-Sharing-1.0 |
| btecsec/tinystories-fr | CDLA-Sharing-1.0 |
| HuggingFaceFW/fineweb-edu (one shard) | ODC-BY-1.0 |
HuggingFaceFW/fineweb-2 (fra_Latn, one shard) | ODC-BY-1.0 |
Generated data
- Game oracles, written in Rust (
crates/sky-games). They give exact labels for Flappy Drone, Rescue Run, Obstacle Dodge and the Doom-like game, plus the DAgger rounds, in which the model plays and the oracle labels the states it reaches. - Numeric curriculum (
sky-train s2-numeric): comparisons, ordering and closest values, with exact answers, in English and French. - GLM 5.3: 3,000 civil drone orders and about 2,000 paraphrases of question instructions (used by s1–s3 only).
Evaluation only (never trained on)
- LocalLLaMA/typed-decisions (Apache-2.0)
- AirsideLabs/notam-typed-decisions (CC-BY-4.0)
s4: teacher, real cases and zero-shot held-out sets
| Dataset or model | Licence | Used as |
|---|---|---|
| Qwen/Qwen3.5-4B (MLX 4-bit) | Apache-2.0 | teacher: soft labels from the option-letter logits |
| glaiveai/glaive-function-calling-v2 | Apache-2.0 | tool routing (choice over tools + no_tool) |
| NousResearch/hermes-function-calling-v1 | Apache-2.0 | tool routing |
| bitext/Bitext-customer-support-llm-chatbot-training-dataset | CDLA-Sharing-1.0 | ticket triage with an unsure option |
| google/civil_comments | CC0-1.0 | moderation on a written rule (noul) |
| PolyAI/banking77 | CC-BY-4.0 | held out from s4: zero-shot evaluation |
| mteb/amazon_massive_intent (MASSIVE, en + fr) | CC-BY-4.0 | held out: zero-shot evaluation |
s5: backbones, teacher and held-out evaluation
| Dataset or model | Licence | Used as |
|---|---|---|
| jhu-clsp/ettin-encoder-17m | MIT | s5-lite backbone |
| cross-encoder/ettin-reranker-17m-v1 | Apache-2.0 | alternative initialization of the backbone |
| convaiinnovations/laya-typed-decisions | Apache-2.0 | teacher: soft labels, run locally in Rust, kept only where they agree with the gold |
| btzsc/btzsc (wikitoxic, biasframes, amazonpolarity) | per source (CC0-1.0, CC-BY-4.0, Apache-2.0) | held out: zero-shot evaluation; yahootopics waits for its license |
| Davlan/sib200 | CC-BY-SA-4.0 | held out: zero-shot evaluation |
| DeepPavlov/hwu64 (HWU64, original data) | CC-BY-4.0 | held out for s5-lite only (its training excludes MASSIVE in every language) |
| bro789/typed-decision-coherence (ChaosNLI CC BY-NC 4.0, PubMedQA MIT) | MIT code; items under their own terms | the original coherence battery of 2609.33209: evaluation only, never redistributed |
No output of a hosted LLM is used by s5.
Libraries and technologies
Training (Rust, Apple Silicon)
- mlx-rs 0.32: Rust bindings for MLX, Apple's array framework, built through mlx-sys with the Xcode Metal toolchain.
- Hugging Face tokenizers 0.22: trains the byte-level BPE tokenizers.
- arrow-rs
parquet: reads Hugging Face parquet shards. - ureq: HTTPS downloads from the Hub, with range reads.
- Written in-house: the Muon optimizer (Newton–Schulz), the WSD schedule, ternary QAT, DAgger and closed-loop exit calibration.
Inference and formats
- GGUF reader and writer, written in-house (
sky-gguf), following the llama.cpp GGUF spec. - Engine written in-house (
sky-infer): byte-level BPE, the ModernBERT/Laya graph (s1), the s2/s3 graph, and NEON and WASM SIMD128 kernels. It depends on unicode-normalization for the NFC step. - serde / serde_json, clap, rand, indexmap.
Browser and distribution
- wasm-bindgen and wasm-pack: build the browser module that runs the games and the model.
- VitePress and Vue: this site.
- PyO3 and maturin: the Python wheel.
- tiny_http: the
skycmd serveHTTP server for/v1/systemone. - Freedoom (BSD-3-Clause): textures and sprites of the Doom-like game. It is not id Software's Doom.
Reference models and runtimes
- mgoeckel/oscar-1-17m (Apache-2.0): the golden reference for the Laya decision format.
- convaiinnovations/laya and SupersonicLabs/Julia-1: the decision-head format and prompt layout.
- llama.cpp
/v1/systemoneand wllama: compatibility checks for s1 GGUF files (seedocs/compat.md).
Research the architecture builds on
- Recursion of a tiny shared block: TRM, Less is More and Ouro, looped language models.
- One token per feature or number: FT-Transformer and FoNE.
- Early exit with risk control: Fast yet Safe. Readouts on looped trajectories: Adaptive Depth in Looped Transformers.
- Ternary weights at small scale: When are 1.58 bits enough?. Lookup-table kernels: T-MAC and bitnet.cpp.
- Imitation learning: DAgger (Ross, Gordon & Bagnell, 2011) and on-policy distillation.
- Bio-inspired ablations: Neural Circuit Policies and expand-and-sparsify / FlyHash.
s4
- Teacher: Qwen3.5 through mlx-lm; the teacher scores option letters in one pass and never generates.
- Encoders over decoders for classification at equal size: Ettin, Seq vs Seq.
- Ternary distillation from a teacher: BitNet Distillation.
- Supervising every loop toward an improving target: Deep Improvement Supervision, applied to the exits of the looped state stack (
--dis). - Hard and soft labels together: arXiv 2605.26246.
- Answer bias of LLM option scoring and its correction: Calibrate Before Use (contextual calibration) and Large Language Models Are Not Robust Multiple Choice Selectors.
- Small function-calling reference: Extending FunctionGemma.
s5
- Option isolation and shared positions: arXiv 2610.01601 (§ III, positions; § V-C, ablations).
- Label swaps that flip decision models: arXiv 2609.26758, the reassignment test against a 0/1 control.
- An aligned "none" option and recalibration: arXiv 2610.03387.
- Coherence across separate questions (negation, partition, disjunction): arXiv 2609.33209 and its battery.
- Evaluation checklist for decision models: arXiv 2609.32160. Rerankers as baselines: arXiv 2603.11991.
- The backbone: ModernBERT and Ettin.
- Escalation with a controlled error: Learn then Test (risk control by multiple testing) and Mondrian conformal prediction (Vovk et al.).