@mcptoolshop/style-dataset-lab 2.0.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,3 +1,7 @@
1
+ <p align="center">
2
+ <a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
3
+ </p>
4
+
1
5
  <p align="center">
2
6
  <img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/style-dataset-lab/readme.png" width="400">
3
7
  </p>
@@ -9,148 +13,140 @@
9
13
 
10
14
  # style-dataset-lab
11
15
 
12
- A canon-bound visual dataset pipeline for directed image production.
16
+ Define visual canon. Curate approved work. Produce versioned datasets. Build training packages. Score outputs against canon. Re-ingest accepted results. Repeat.
13
17
 
14
- Define what your project looks like. Generate candidates. Curate against your canon. Bind approved work to constitution rules. Export trustworthy datasets for training, evaluation, and production reuse.
18
+ ## What this does
15
19
 
16
- ## What this is
20
+ Style Dataset Lab is a production pipeline for visual datasets. It takes a project from written canon through curation, dataset packaging, model training preparation, evaluation, and back again as a closed loop.
17
21
 
18
- A **visual canon + dataset pipeline** for teams that care about style consistency, provenance, and reviewable judgment. Every asset carries three things:
22
+ Every asset in the system carries full provenance, canon-bound judgments, and per-dimension quality scores. Nothing is a label without a reason.
23
+
24
+ ```
25
+ canon → curate → bind → snapshot → split → export → train → eval → reingest
26
+ ```
19
27
 
20
- 1. **Provenance** -- full generation history (checkpoint, LoRA, seed, sampler, cfg, timing)
21
- 2. **Canon binding** -- which constitution rules this asset passes, fails, or partially meets
22
- 3. **Quality judgment** -- approved/rejected/borderline with per-dimension scores
28
+ ## The artifacts
23
29
 
24
- The pipeline works for game art, character design, creature design, architecture, vehicle/mech concepts, and any domain where visual production needs to stay on-model.
30
+ The pipeline produces seven first-class artifacts. Each is versioned, checksummed, and linked to its predecessors.
31
+
32
+ | Artifact | What it is |
33
+ |----------|-----------|
34
+ | **Snapshot** | Frozen, fingerprinted record selection. Every inclusion has an explicit reason trace. |
35
+ | **Split** | Leakage-safe train/val/test partition. Subject families never cross split boundaries. |
36
+ | **Export package** | Self-contained dataset: manifest, metadata, images, splits, dataset card, checksums. |
37
+ | **Eval pack** | Canon-aware test tasks: lane coverage, forbidden drift, anchor/gold, subject continuity. |
38
+ | **Training package** | Trainer-ready layout built by adapters. Same truth, different format. |
39
+ | **Eval scorecard** | Per-task pass/fail verdict from scoring generated outputs against eval packs. |
40
+ | **Implementation pack** | Prompt examples, known failures, subject continuity tests, re-ingest guide. |
25
41
 
26
42
  ## Quick start
27
43
 
28
44
  ```bash
29
- # Install the CLI + pipeline
30
45
  npm install -g @mcptoolshop/style-dataset-lab
31
46
 
32
- # Scaffold a new project
33
47
  sdlab init my-project --domain character-design
34
-
35
- # Validate the project structure
36
48
  sdlab project doctor --project my-project
37
49
  ```
38
50
 
39
- Available domains: `game-art`, `character-design`, `creature-design`, `architecture`, `vehicle-mech`, or `generic`.
51
+ Available domains: `game-art`, `character-design`, `creature-design`, `architecture`, `vehicle-mech`.
40
52
 
41
- ## CLI
53
+ ## End-to-end example
42
54
 
43
55
  ```bash
44
- sdlab init <name> [--domain <domain>] # Scaffold a new project
45
- sdlab project doctor [--project <name>] # Validate project config
46
-
47
- sdlab generate <pack> [--project <name>] # Generate candidates via ComfyUI
48
- sdlab generate:identity <packet> # Named-subject identity images
49
- sdlab generate:controlnet # ControlNet-guided generation
50
- sdlab generate:ipadapter # IP-Adapter reference-guided
51
-
52
- sdlab curate <id> <status> <explanation> # Record review judgment
53
- sdlab compare <a> <b> <winner> <reason> # Pairwise A-vs-B comparison
54
- sdlab bind [--project <name>] # Bind records to constitution rules
55
- sdlab painterly [--project <name>] # Post-processing style pass
56
+ # 1. Curate and bind records to constitution rules
57
+ sdlab curate <id> approved "Strong silhouette, correct palette"
58
+ sdlab bind --project my-project
59
+
60
+ # 2. Produce a versioned dataset
61
+ sdlab snapshot create --project my-project
62
+ sdlab split build --project my-project
63
+ sdlab export build --project my-project
64
+
65
+ # 3. Build a training package
66
+ sdlab training-manifest create --profile character-style-lora
67
+ sdlab training-package build --project my-project
68
+
69
+ # 4. Evaluate and close the loop
70
+ sdlab eval-pack build --project my-project
71
+ sdlab eval-run create --project my-project
72
+ sdlab eval-run score <id> --outputs results.jsonl
73
+ sdlab reingest generated --source ./outputs --manifest <id>
56
74
  ```
57
75
 
58
- All commands accept `--project <name>` (default: `star-freight`).
59
-
60
- ## Project model
76
+ ## Project structure
61
77
 
62
- Each project is a self-contained directory under `projects/` with its own canon, config, and data:
78
+ Each project is self-contained under `projects/<name>/`:
63
79
 
64
80
  ```
65
- projects/
66
- my-project/
67
- project.json Project identity + generation defaults
68
- constitution.json Rules array with rationale templates
69
- lanes.json Subject lanes with detection patterns
70
- rubric.json Scoring dimensions + thresholds
71
- terminology.json Group vocabulary + detection order
72
- canon/ Style constitution (markdown)
73
- records/ Per-asset JSON (provenance + judgment + canon)
74
- inputs/prompts/ Prompt packs (JSON)
75
- outputs/ Generated images (gitignored)
76
- comparisons/ A-vs-B preference judgments
77
- exports/ Training data output (gitignored)
81
+ project.json Identity + generation defaults
82
+ constitution.json Rules with rationale templates
83
+ lanes.json Subject lanes with detection patterns
84
+ rubric.json Scoring dimensions + thresholds
85
+ terminology.json Group vocabulary + detection order
86
+ canon/ Style constitution (markdown)
87
+ records/ Per-asset JSON (provenance + judgment + canon)
88
+ snapshots/ Frozen dataset snapshots
89
+ splits/ Train/val/test partitions
90
+ exports/ Versioned export packages
91
+ eval-packs/ Canon-aware eval instruments
92
+ training/
93
+ profiles/ What kind of model asset to produce
94
+ manifests/ Frozen training contracts
95
+ packages/ Trainer-ready layouts
96
+ eval-runs/ Scored output evaluations
97
+ implementations/ Usage examples + re-ingest guides
78
98
  ```
79
99
 
80
- ## Pipeline
100
+ ## Key properties
81
101
 
82
- ```
83
- canon --> prompts --> generate --> curate --> bind --> compare --> export
84
- | | | | | | |
85
- rules packs ComfyUI judgment assertions preferences dataset
86
- ```
102
+ **Snapshots are frozen.** Once created, a snapshot never silently changes. The config fingerprint (SHA-256 of all project config files) proves reproducibility.
87
103
 
88
- 1. **Define canon** -- write your style constitution and review rubric
89
- 2. **Create prompt packs** -- structured subjects with style prefix and variations
90
- 3. **Generate** -- ComfyUI produces candidates with full provenance
91
- 4. **Curate** -- approve/reject with per-dimension scores and failure modes
92
- 5. **Bind** -- link each asset to constitution rules with pass/fail/partial verdicts
93
- 6. **Compare** -- record pairwise preferences for DPO/ranking datasets
94
- 7. **Export** -- produce training data via [`repo-dataset`](https://github.com/mcp-tool-shop-org/repo-dataset) in 10+ formats
104
+ **Splits prevent leakage.** Records sharing a subject family (by identity name, lineage chain, or ID suffix) always land in the same partition. Lane balance is maintained across train/val/test.
105
+
106
+ **Manifests are immutable contracts.** A training manifest captures the exact export, split, profile, and config fingerprint. If anything changes, a new manifest is required.
107
+
108
+ **Adapters never mutate truth.** Trainer-specific adapters (`generic-image-caption`, `diffusers-lora`) transform layout but cannot add, remove, or reclassify records.
109
+
110
+ **Generated outputs re-enter through review.** Re-ingested work gets a new record with full provenance and must be curated and canon-bound like everything else. No bypass.
95
111
 
96
112
  ## Domain templates
97
113
 
98
- Each domain template ships with lane definitions, constitution rules, scoring rubrics, and terminology structures designed for that production context:
114
+ Five starter templates with real production rules, lane definitions, and scoring rubrics:
99
115
 
100
116
  | Domain | Lanes | Key concerns |
101
117
  |--------|-------|-------------|
102
- | **game-art** | character, environment, prop, UI, ship, interior, equipment | Silhouette at gameplay scale, faction differentiation, wear/aging |
103
- | **character-design** | portrait, full_body, turnaround, expression_sheet, action_pose | Proportion accuracy, costume logic, personality read, gesture clarity |
104
- | **creature-design** | concept, orthographic, detail_study, action, scale_reference, habitat | Anatomical plausibility, evolutionary logic, silhouette distinction |
105
- | **architecture** | exterior, interior, streetscape, structural_detail, ruin, landscape | Structural plausibility, material consistency, perspective, era coherence |
106
- | **vehicle-mech** | exterior, cockpit, component, schematic, silhouette_sheet, damage_variant | Mechanical logic, functional design language, access points, damage narrative |
118
+ | **game-art** | character, environment, prop, UI, ship, interior, equipment | Silhouette at gameplay scale, faction read, wear/aging |
119
+ | **character-design** | portrait, full_body, turnaround, expression_sheet, action_pose | Proportions, costume logic, personality, gesture |
120
+ | **creature-design** | concept, orthographic, detail_study, action, scale_reference, habitat | Anatomy, evolutionary logic, silhouette distinction |
121
+ | **architecture** | exterior, interior, streetscape, structural_detail, ruin, landscape | Structure, material consistency, perspective, era |
122
+ | **vehicle-mech** | exterior, cockpit, component, schematic, silhouette_sheet, damage_variant | Mechanical logic, design language, access points |
107
123
 
108
- ## The dataset angle
124
+ ## Downstream formats
109
125
 
110
- The pipeline produces more than organized images. It produces **trustworthy, structured datasets** with:
126
+ `sdlab` defines and owns the dataset. Downstream format conversion is handled by [`repo-dataset`](https://github.com/mcp-tool-shop-org/repo-dataset): TRL, LLaVA, Qwen2-VL, JSONL, Parquet, and more. `repo-dataset` renders formats; it never decides inclusion.
111
127
 
112
- - **Full provenance** on every asset (reproducible generations)
113
- - **Canon-bound judgments** (not just labels -- reasoned verdicts against declared rules)
114
- - **Pairwise preferences** (for DPO and ranking-based training)
115
- - **Per-dimension scoring** (fine-grained quality signals, not just pass/fail)
116
- - **Failure mode tagging** (what specifically went wrong and which rules were violated)
128
+ ## Star Freight
117
129
 
118
- Export via `repo-dataset` to TRL, LLaVA, Qwen2-VL, JSONL, Parquet, and more.
119
-
120
- ## Star Freight example
121
-
122
- Clone the repo for a complete working example: 1,182 records, 28 prompt waves, 5 factions, 7 lanes, 24 constitution rules, and 892 approved assets from a gritty sci-fi RPG.
130
+ Clone the repo for a complete working example: 1,182 records, 5 factions, 7 lanes, 24 constitution rules, 2 training profiles.
123
131
 
124
132
  ```bash
125
133
  git clone https://github.com/mcp-tool-shop-org/style-dataset-lab
126
134
  cd style-dataset-lab
127
- sdlab bind --stats --project star-freight
128
135
  sdlab project doctor --project star-freight
136
+ sdlab snapshot create --project star-freight
137
+ sdlab split build --project star-freight
138
+ sdlab training-manifest create --profile character-style-lora --project star-freight
129
139
  ```
130
140
 
131
- ## Migrating from v1.x
132
-
133
- v2.0 renames `games/` to `projects/` and `--game` to `--project`:
134
-
135
- ```bash
136
- # Rename your data directory
137
- mv games projects
138
-
139
- # --game still works with a deprecation warning (removed in v3.0)
140
- sdlab bind --game star-freight # works, prints warning
141
- sdlab bind --project star-freight # canonical form
142
- ```
143
-
144
- ## Security model
141
+ ## Security
145
142
 
146
- **Local-only.** Talks to ComfyUI on `localhost:8188`. No telemetry, no analytics, no external requests. Images stay on your GPU and filesystem.
143
+ Local-only. Talks to ComfyUI on `localhost:8188`. No telemetry, no analytics, no external requests. Images stay on your GPU and filesystem.
147
144
 
148
145
  ## Requirements
149
146
 
150
147
  - [ComfyUI](https://github.com/comfyanonymous/ComfyUI) running on localhost:8188
151
148
  - SDXL-compatible checkpoint + style LoRA
152
149
  - Node.js 20+
153
- - [`@mcptoolshop/repo-dataset`](https://github.com/mcp-tool-shop-org/repo-dataset) for training export
154
150
 
155
151
  ## License
156
152
 
package/README.pt-BR.md CHANGED
@@ -13,158 +13,187 @@
13
13
 
14
14
  # style-dataset-lab
15
15
 
16
- Uma linha de produção para a criação de conjuntos de dados visuais – desde regras predefinidas até prompts estruturados, passando pela geração no ComfyUI, até dados de treinamento selecionados e vinculados a regras predefinidas.
16
+ Transforme trabalhos visuais aprovados em conjuntos de dados versionados, com revisões, divisões, pacotes de exportação e pacotes de avaliação.
17
17
 
18
18
  ## O que é isso
19
19
 
20
- Uma **linha de produção** para a criação de conjuntos de dados visuais estruturados para treinamento. Você define regras de estilo (regras predefinidas), compõe prompts, gera imagens com o ComfyUI, seleciona os resultados com base em critérios específicos, associa as avaliações às regras predefinidas e exporta em 10 formatos através do [`@mcptoolshop/repo-dataset`](https://github.com/mcp-tool-shop-org/repo-dataset).
20
+ Um **pipeline de produção de conjuntos de dados e de referências visuais**. Defina a aparência do seu projeto. Crie conjuntos de dados de acordo com as regras estabelecidas. Produza pacotes de dados reproduzíveis com divisões seguras contra vazamento de informações. Gere pacotes de avaliação para a verificação futura do modelo.
21
21
 
22
- A linha de produção é independente de qualquer jogo específico. Cada jogo possui seu próprio diretório de dados em `games/<nome>/`; os 13 scripts e modelos vazios são compartilhados. Cada ativo gerado contém três elementos.
22
+ O pipeline produz quatro artefatos:
23
23
 
24
- 1. **Pixels da imagem** – gerados pelo ComfyUI com total rastreabilidade (checkpoint, LoRA, seed, sampler, cfg).
25
- 2. **Explicação detalhada** – por que este elemento está ou não de acordo com o estilo definido, com base em uma "constituição" de estilo.
26
- 3. **Avaliação de qualidade** – aprovado/rejeitado, com pontuações por dimensão e regras citadas.
24
+ | Artefato | O que é |
25
+ |----------|-----------|
26
+ | **Snapshot** | Seleção de registros elegíveis, com informações detalhadas e rastreáveis. Cada inclusão tem uma justificativa explícita. |
27
+ | **Split** | Partição de treinamento/validação/teste segura contra vazamento de informações. Registros que compartilham a mesma família de sujeitos sempre ficam na mesma divisão. |
28
+ | **Export package** | Conjunto de dados autônomo: manifesto, metadados, imagens, divisões, descrição do conjunto de dados e checksums. |
29
+ | **Eval pack** | Tarefas de verificação compatíveis com as referências: cobertura de aspectos, prevenção de desvios indesejados, pontos de referência/referências, continuidade do sujeito. |
27
30
 
28
- ## Modelo de segurança
29
-
30
- **Apenas local.** O style-dataset-lab se comunica com o ComfyUI em `localhost:8188` e nunca faz solicitações de rede externas. Sem telemetria, sem análise, sem envio de dados. A geração de imagens ocorre inteiramente na sua GPU. Os registros e os dados de referência permanecem no seu sistema de arquivos.
31
-
32
- ## O que o pacote npm oferece:
33
-
34
- `npm install @mcptoolshop/style-dataset-lab` fornece:
31
+ Cada ativo no pipeline contém três elementos:
35
32
 
36
- - **13 scripts** – para geração, seleção, comparação, vinculação a regras predefinidas, estilo pictórico, geração de identidade, geração ControlNet/IP-Adapter, seleção em massa, migração.
37
- - **Modelos vazios** – um modelo inicial, um guia de avaliação e um conjunto de exemplos de prompts, localizados em `templates/`.
33
+ 1. **Rastreabilidade** -- histórico completo de geração (checkpoint, LoRA, seed, sampler, cfg, tempo de execução)
34
+ 2. **Conformidade com as referências** -- quais regras de estilo este ativo cumpre, não cumpre ou cumpre parcialmente
35
+ 3. **Avaliação de qualidade** -- aprovado/rejeitado/limítrofe, com pontuações por dimensão
38
36
 
39
- O pacote npm **não** inclui dados de jogos. Clone o repositório se você quiser o exemplo do Star Freight (1.182 registros, 28 sequências de prompts, 18 categorias visuais).
37
+ Funciona para arte de jogos, design de personagens, design de criaturas, arquitetura, conceitos de veículos/máquinas, e qualquer área onde a produção visual precisa seguir um padrão.
40
38
 
41
- ## Instalação
39
+ ## Como começar
42
40
 
43
41
  ```bash
44
- # Get the pipeline scripts + templates
45
- npm install @mcptoolshop/style-dataset-lab
42
+ # Install the CLI + pipeline
43
+ npm install -g @mcptoolshop/style-dataset-lab
46
44
 
47
- # Or clone the repo for the Star Freight example data
48
- git clone https://github.com/mcp-tool-shop-org/style-dataset-lab
49
- cd style-dataset-lab
50
- npm install
45
+ # Scaffold a new project
46
+ sdlab init my-project --domain character-design
47
+
48
+ # Validate the project structure
49
+ sdlab project doctor --project my-project
51
50
  ```
52
51
 
53
- Para iniciar um novo jogo a partir dos modelos:
52
+ Domínios disponíveis: `game-art`, `character-design`, `creature-design`, `architecture`, `vehicle-mech` ou `generic`.
53
+
54
+ ## Interface de linha de comando (CLI)
54
55
 
55
56
  ```bash
56
- # Copy templates into your game directory
57
- mkdir -p games/my-game/{records,comparisons,inputs/prompts,outputs/{candidates,approved,rejected,borderline,painterly},exports}
58
- cp -r templates/canon games/my-game/canon
59
- cp templates/inputs/prompts/example-wave.json games/my-game/inputs/prompts/wave1.json
60
- # Edit the canon and prompts, then generate
57
+ sdlab init <name> [--domain <domain>] # Scaffold a new project
58
+ sdlab project doctor [--project <name>] # Validate project config
59
+
60
+ sdlab generate <pack> [--project <name>] # Generate candidates via ComfyUI
61
+ sdlab generate:identity <packet> # Named-subject identity images
62
+ sdlab generate:controlnet # ControlNet-guided generation
63
+ sdlab generate:ipadapter # IP-Adapter reference-guided
64
+
65
+ sdlab curate <id> <status> <explanation> # Record review judgment
66
+ sdlab compare <a> <b> <winner> <reason> # Pairwise A-vs-B comparison
67
+ sdlab bind [--project <name>] # Bind records to constitution rules
68
+ sdlab painterly [--project <name>] # Post-processing style pass
69
+
70
+ sdlab snapshot create [--profile <name>] # Create frozen dataset snapshot
71
+ sdlab snapshot list # List all snapshots
72
+ sdlab snapshot diff <a> <b> # Compare two snapshots
73
+ sdlab eligibility audit # Audit record training eligibility
74
+ sdlab split build [--snapshot <id>] # Build train/val/test split
75
+ sdlab split audit <id> # Audit split for leakage + balance
76
+ sdlab card generate # Generate dataset card (md + JSON)
77
+ sdlab export build [--snapshot <id>] # Build versioned export package
78
+ sdlab eval-pack build # Build canon-aware eval pack
61
79
  ```
62
80
 
63
- ## Estrutura do monorepository
81
+ Todos os comandos aceitam `--project <nome>` (padrão: `star-freight`).
82
+
83
+ ## Modelo do projeto
64
84
 
65
- A linha de produção está localizada nos diretórios `scripts/` e `templates/`. Cada jogo está em `games/<nome>/`, com suas próprias regras predefinidas, registros e ativos. Os scripts aceitam o argumento `--game <nome>` (o padrão é `star-freight`).
85
+ Cada projeto é um diretório autônomo dentro de `projects/`, com suas próprias referências, configuração e dados:
66
86
 
67
87
  ```
68
- style-dataset-lab/
69
- scripts/ 13 pipeline scripts (generate, curate, compare, etc.)
70
- templates/ Blank starting point for new games
71
- canon/ Starter constitution + review rubric
72
- inputs/prompts/ Example prompt pack
73
- games/
74
- star-freight/ Star Freight example (1,182 records, repo-only)
75
- canon/ Style constitution, review rubric, species canon
76
- records/ Per-asset JSON (provenance + judgment + canon)
77
- comparisons/ A-vs-B preference judgments
78
- inputs/ Prompt packs, identity packets, references
79
- outputs/ Generated images (gitignored)
80
- exports/ repo-dataset output (gitignored)
81
- <your-game>/ Add more games with the same structure
88
+ projects/
89
+ my-project/
90
+ project.json Project identity + generation defaults
91
+ constitution.json Rules array with rationale templates
92
+ lanes.json Subject lanes with detection patterns
93
+ rubric.json Scoring dimensions + thresholds
94
+ terminology.json Group vocabulary + detection order
95
+ canon/ Style constitution (markdown)
96
+ records/ Per-asset JSON (provenance + judgment + canon)
97
+ inputs/prompts/ Prompt packs (JSON)
98
+ outputs/ Generated images (gitignored)
99
+ comparisons/ A-vs-B preference judgments
100
+ snapshots/ Frozen dataset snapshots
101
+ splits/ Train/val/test partitions
102
+ exports/ Versioned export packages
103
+ eval-packs/ Canon-aware eval instruments
82
104
  ```
83
105
 
84
- ## Fluxo de trabalho da linha de produção
106
+ ## Pipeline
85
107
 
86
- A linha de produção completa, desde as regras predefinidas até a exportação para treinamento:
87
-
88
- ```bash
89
- # 1. Write your canon -- style constitution + review rubric
90
- # (start from templates/ or write from scratch)
108
+ ```
109
+ canon → generate → curate → bind → snapshot → split → export → eval
110
+ | | | | | | | |
111
+ rules ComfyUI judgment rules frozen subject package verify
112
+ selection isolation
113
+ ```
91
114
 
92
- # 2. Create prompt packs in inputs/prompts/
93
- # (see templates/inputs/prompts/example-wave.json)
115
+ 1. **Definir referências** -- escreva sua constituição de estilo e guia de revisão
116
+ 2. **Gerar** -- o ComfyUI produz candidatos com rastreabilidade completa
117
+ 3. **Curadoria** -- aprovar/rejeitar com pontuações por dimensão e modos de falha
118
+ 4. **Associar** -- vincular cada ativo às regras de estilo, com veredictos de aprovação/rejeição/parcial
119
+ 5. **Captura de instantâneo** -- congelar os registros elegíveis em uma seleção determinística e identificada
120
+ 6. **Dividir** -- particionar em treinamento/validação/teste, com isolamento do sujeito e equilíbrio de aspectos
121
+ 7. **Exportar** -- criar um pacote autônomo com manifesto, metadados, imagens e checksums
122
+ 8. **Avaliar** -- gerar instrumentos de teste compatíveis com as referências para a verificação do modelo
94
123
 
95
- # 3. Start ComfyUI and generate candidates
96
- npm run generate -- --game star-freight inputs/prompts/wave1.json
97
- npm run generate -- --game star-freight inputs/prompts/wave1.json --dry-run
124
+ A conversão de formato para outros sistemas (TRL, LLaVA, Parquet, etc.) é gerenciada por [`repo-dataset`](https://github.com/mcp-tool-shop-org/repo-dataset). O `sdlab` define a "verdade" do conjunto de dados; o `repo-dataset` a transforma em formatos especializados.
98
125
 
99
- # 4. Generate identity-packet characters (named subjects)
100
- npm run generate:identity -- --game star-freight inputs/identity-packets/wave27a.json
126
+ ## Modelos de domínio
101
127
 
102
- # 5. Curate -- approve, reject, or mark borderline
103
- npm run curate -- --game star-freight <asset_id> approved "explanation"
104
- npm run curate -- --game star-freight <asset_id> rejected "explanation" --failures "too_clean"
128
+ Cada modelo de domínio é fornecido com definições de aspectos, regras de estilo, guias de pontuação e estruturas de terminologia projetadas para aquele contexto de produção:
105
129
 
106
- # 6. Generate painterly variants of approved assets
107
- npm run painterly -- --game star-freight
130
+ | Domínio | Aspectos | Principais preocupações |
131
+ |--------|-------|-------------|
132
+ | **game-art** | personagem, ambiente, acessório, interface do usuário, nave, interior, equipamento | Silhueta na escala do jogo, diferenciação de facções, desgaste/envelhecimento |
133
+ | **character-design** | retrato, corpo inteiro, vista de 360 graus, folha de expressões, pose de ação | Precisão das proporções, lógica do figurino, leitura da personalidade, clareza dos gestos |
134
+ | **creature-design** | conceito, ortográfico, estudo de detalhes, ação, referência de escala, habitat | Plausibilidade anatômica, lógica evolutiva, distinção de silhuetas |
135
+ | **architecture** | exterior, interior, paisagem urbana, detalhe estrutural, ruína, paisagem | Plausibilidade estrutural, consistência dos materiais, perspectiva, coerência da época |
136
+ | **vehicle-mech** | exterior, cockpit, componente, esquema, folha de silhuetas, variação de dano | Lógica mecânica, linguagem de design funcional, pontos de acesso, descrição de danos. |
108
137
 
109
- # 7. Bind canon explanations to curated assets
110
- npm run canon-bind -- --game star-freight
138
+ ## Produção do conjunto de dados
111
139
 
112
- # 8. Record pairwise comparisons
113
- npm run compare -- --game star-freight <asset_a> <asset_b> a "A has better faction read"
140
+ A estrutura completa do conjunto de dados: instantâneo, divisão, exportação, avaliação.
114
141
 
115
- # 9. Export training data via repo-dataset
116
- repo-dataset visual generate ./games/star-freight --format trl
117
- repo-dataset visual inspect ./games/star-freight
142
+ ```
143
+ snapshot --> split --> export --> eval-pack
144
+ | | | |
145
+ frozen subject package canon-aware
146
+ selection isolation (manifest, test instruments
147
+ + lane metadata, (4 task types)
148
+ balance images,
149
+ checksums,
150
+ card)
118
151
  ```
119
152
 
120
- ## Adicionando um novo jogo
153
+ **Instantâneos** congelam uma seleção determinística de registros elegíveis. Cada inclusão tem um registro de motivo. As "impressões digitais" de configuração garantem a reprodutibilidade.
154
+
155
+ **Divisões** atribuem registros às partições de treinamento/validação/teste, com isolamento de sujeitos (nenhuma família de sujeitos aparece em várias divisões) e distribuição equilibrada por "faixa". Um gerador de números pseudoaleatórios (PRNG) com semente garante resultados idênticos a partir da mesma semente.
156
+
157
+ Os **pacotes de exportação** são autônomos: manifesto, metadata.jsonl, imagens (com links simbólicos ou cópias), divisões, cartão do conjunto de dados (Markdown + JSON) e somas de verificação no formato BSD. Tudo o que é necessário para reconstruir o conjunto de dados do zero.
158
+
159
+ Os **pacotes de avaliação** são instrumentos de teste que levam em consideração o contexto e possuem quatro tipos de tarefas: cobertura de "faixas", desvio proibido, âncora/referência e continuidade do sujeito. Eles comprovam que a estrutura do conjunto de dados está sendo usada para futuras avaliações de modelos, e não apenas para descartar arquivos.
160
+
161
+ Exportação para formatos compatíveis através de [`repo-dataset`](https://github.com/mcp-tool-shop-org/repo-dataset) (TRL, LLaVA, Qwen2-VL, JSONL, Parquet, e mais). `repo-dataset` gerencia a conversão de formatos; `sdlab` detém a "verdade" do conjunto de dados.
162
+
163
+ ## Exemplo do Star Freight
164
+
165
+ Clone o repositório para um exemplo completo e funcional: 1.182 registros, 28 "ondas" de prompts, 5 facções, 7 "faixas", 24 regras constitucionais e 892 ativos aprovados de um RPG de ficção científica.
121
166
 
122
167
  ```bash
123
- # Create structure and copy blank templates
124
- mkdir -p games/my-game/{records,comparisons,inputs/prompts,outputs/{candidates,approved,rejected,borderline,painterly},exports}
125
- cp -r templates/canon games/my-game/canon
126
- cp templates/inputs/prompts/example-wave.json games/my-game/inputs/prompts/wave1.json
168
+ git clone https://github.com/mcp-tool-shop-org/style-dataset-lab
169
+ cd style-dataset-lab
170
+
171
+ # Validate the project
172
+ sdlab project doctor --project star-freight
127
173
 
128
- # Edit your canon/constitution.md and canon/review-rubric.md
129
- # Edit your prompt pack, then run the pipeline with --game my-game
174
+ # Run the full dataset spine
175
+ sdlab snapshot create --project star-freight # 839 eligible records
176
+ sdlab split build --project star-freight # ~80/10/10, zero leakage
177
+ sdlab export build --project star-freight # package with checksums
178
+ sdlab eval-pack build --project star-freight # 78 eval records
130
179
  ```
131
180
 
132
- ## Estrutura do diretório por jogo
181
+ ## Migrando da versão v1.x
133
182
 
134
- Cada diretório `games/<nome>/` contém:
183
+ A versão 2.0 renomeia `games/` para `projects/` e `--game` para `--project`:
135
184
 
136
- ```
137
- canon/ Style constitution, review rubric, species canon, identity gates
138
- inputs/
139
- prompts/ Prompt packs per wave (JSON: subjects, variations, defaults)
140
- references/ IP-Adapter reference images
141
- control-guides/ ControlNet guide overlays
142
- identity-packets/ Named character identity spines
143
- outputs/
144
- candidates/ Raw generations (gitignored)
145
- approved/ Curated approved (gitignored)
146
- rejected/ Curated rejected (gitignored)
147
- borderline/ Curated borderline (gitignored)
148
- painterly/ Painterly-style variants (gitignored)
149
- records/ Per-asset JSON (provenance + judgment + canon binding)
150
- comparisons/ A-vs-B preference judgments
151
- exports/ repo-dataset output (gitignored)
152
- ```
185
+ ```bash
186
+ # Rename your data directory
187
+ mv games projects
153
188
 
154
- ## Configuração de geração
155
-
156
- ```yaml
157
- checkpoint: dreamshaperXL_v21TurboDPMSDE.safetensors
158
- lora: classipeintxl_v21.safetensors (weight: 1.0)
159
- resolution: 1024x1024
160
- steps: 8
161
- cfg: 2.0
162
- sampler: dpmpp_sde
163
- scheduler: karras
164
- speed: ~9s per image (RTX 5080)
189
+ # --game still works with a deprecation warning (removed in v3.0)
190
+ sdlab bind --game star-freight # works, prints warning
191
+ sdlab bind --project star-freight # canonical form
165
192
  ```
166
193
 
167
- Modos de geração adicionais: ControlNet (guiado por pose/profundidade), IP-Adapter (guiado por referência) e pacotes de identidade (consistência de personagens nomeados).
194
+ ## Modelo de segurança
195
+
196
+ **Apenas local.** Comunica-se com o ComfyUI em `localhost:8188`. Sem telemetria, sem análises, sem requisições externas. As imagens permanecem na sua GPU e sistema de arquivos.
168
197
 
169
198
  ## Requisitos
170
199