環境設定ファイルを追加し、make-json.shにエラーハンドリングとJSONスキーマのバリデーションを追加。新しいスクリプトpromote-manifest.shを作成し、マニフェスト生成のプロセスを強化。README.mdを更新し、プロンプト生成の構造を明確化。シーンとスタイルの登録ルールを整理し、スキーマファイルを追加。

This commit is contained in:
president
2025-12-20 20:37:27 +09:00
parent 5636d56609
commit aaa4f7de56
12 changed files with 685 additions and 217 deletions

1
.env Normal file
View File

@@ -0,0 +1 @@
TOKEN="578edf8a8328fb37d6c32f56eb1450622db3492a"

3
.vscode/settings.json vendored Normal file
View File

@@ -0,0 +1,3 @@
{
"chatgpt.openOnStartup": false
}

103
README.md
View File

@@ -1,3 +1,102 @@
# 状況とか条件を書く
# AI-ART Repository Policy (Mandatory)
task_templateを参照すして作業を進めて下さい
This document defines **mandatory constraints and policies**.
All executions, generations, and outputs **MUST strictly comply**
with this document.
Failure to comply invalidates the output.
---
## 1. Role Definition
You are an **AI execution engine** operating on this repository.
- This repository is treated as an **execution context**
- Human-like interpretation, improvisation, or assumption is prohibited
- Follow instructions **exactly as written**
---
## 2. Execution Order (Strict)
You MUST process files in the following order:
1. README.md
→ Defines **global policies and constraints**
2. prompts/task_template.md
→ Defines **executable instructions**
3. images_dir (if referenced)
→ Reference-only assets
No reordering is allowed.
---
## 3. Authority Hierarchy
If instructions conflict, obey the following priority:
1. README.md (highest authority)
2. task_template.md
3. Inline assumptions (lowest, discouraged)
README.md always overrides other instructions.
---
## 4. Output Scope
You may ONLY output what is explicitly requested
by `task_template.md`.
- No explanations
- No commentary
- No meta discussion
- No additional suggestions
---
## 5. Prohibited Content
The following are strictly forbidden:
- NSFW or sexualized content
- Excessive violence or gore
- Direct imitation of copyrighted characters
- Trademarked designs copied verbatim
- Political or religious messaging (unless explicitly requested)
---
## 6. Style & Interpretation Rules
- Interpret instructions **literally**
- Do NOT extrapolate missing details
- If information is missing:
- Use the **minimum neutral interpretation**
- Do NOT invent lore, backstory, or settings
---
## 7. Image Reference Rules
If `images_dir` is referenced:
- Treat all files as **optional reference material**
- Ignore system files (e.g. `.DS_Store`)
- Do NOT infer content from filenames alone
- Use images ONLY if explicitly instructed
---
## 8. Determinism Requirement
Outputs must be:
- Reproducible
- Deterministic
- Stable across executions given the same inputs
Creative variance is allowed **only when explicitly permitted**
in `task_template

41
make-json.sh Normal file → Executable file
View File

@@ -1,24 +1,29 @@
#!/usr/bin/env bash
set -euo pipefail
TOKEN="578edf8a8328fb37d6c32f56eb1450622db3492a"
BASE="https://git.sunamura-llc.com"
OWNER="openRepo"
REPO="AI-ART"
BRANCH="main"
ROOT_DIR="$(cd "$(dirname "$0")" && pwd)"
SCHEMA="$ROOT_DIR/schema/prompt.schema.json"
OUT_DIR="$ROOT_DIR/output"
OUT_JSON="$OUT_DIR/prompt.json"
OUT="manifest.json"
mkdir -p "$OUT_DIR"
images_json=$(curl -s \
-H "Authorization: token ${TOKEN}" \
"${BASE}/api/v1/repos/${OWNER}/${REPO}/contents/images")
echo "[INFO] Generating JSON via AI (paste result)..."
echo "Paste JSON below. End with Ctrl+D:"
JSON_CONTENT=$(cat)
echo "{
\"repo\": \"${OWNER}/${REPO}\",
\"branch\": \"${BRANCH}\",
\"readme\": \"${BASE}/${OWNER}/${REPO}/raw/branch/${BRANCH}/README.md\",
\"task_template\": \"${BASE}/${OWNER}/${REPO}/raw/branch/${BRANCH}/prompts/task_template.md\",
\"rules\": \"${BASE}/${OWNER}/${REPO}/raw/branch/${BRANCH}/.cursorrules\",
\"images\": $(echo "$images_json" | jq '[.[] | {name: .name, url: .download_url}]')
}" > "${OUT}"
echo "$JSON_CONTENT" > "$OUT_JSON"
echo "✔ manifest.json generated"
echo "[INFO] Validating JSON schema..."
if ! command -v ajv >/dev/null 2>&1; then
echo "[ERROR] ajv not found. Install with:"
echo " npm install -g ajv-cli"
exit 1
fi
ajv validate -s "$SCHEMA" -d "$OUT_JSON" --strict=true
echo "[OK] JSON is valid and schema-compliant."
echo "[DONE] Output saved to: $OUT_JSON"

View File

@@ -1,3 +1,4 @@
{
"repo": "openRepo/AI-ART",
"branch": "main",

44
note Normal file
View File

@@ -0,0 +1,44 @@
constraints
省令styles / scenes
執行task
実行入口manifest.json
という 完全制御体系が完成。
task_type 別・設計意図(人間向けメモ)
これは README か docs/ に書く用。
今後の自分・他人のため。
character_full_body
キャラ台帳
三面図
設定資料
scene_composition
背景
世界観カット
ビジュアルテスト
em_design
道具
装備(※ weapon でない)
プロダクト的デザイン
prop_design
小物
UI 部品
世界観を壊さない補助物
④ make-json.sh は変更不要

50
promote-manifest.sh Normal file
View File

@@ -0,0 +1,50 @@
#!/usr/bin/env bash
set -euo pipefail
ROOT_DIR="$(cd "$(dirname "$0")" && pwd)"
PROMPT_JSON="$ROOT_DIR/output/prompt.json"
MANIFEST_JSON="$ROOT_DIR/manifest.json"
if [ ! -f "$PROMPT_JSON" ]; then
echo "[ERROR] prompt.json not found."
exit 1
fi
if ! command -v jq >/dev/null 2>&1; then
echo "[ERROR] jq not found. Install jq first."
exit 1
fi
WORLD_ID=$(jq -r '.meta.world_id' "$PROMPT_JSON")
WORLD_VERSION=$(jq -r '.meta.world_version' "$PROMPT_JSON")
STYLE_ID=$(jq -r '.meta.style_id' "$PROMPT_JSON")
SCENE_ID=$(jq -r '.meta.scene_id' "$PROMPT_JSON")
TASK_TYPE=$(jq -r '.meta.task_type' "$PROMPT_JSON")
if [[ "$WORLD_ID" == "null" || "$STYLE_ID" == "null" || "$TASK_TYPE" == "null" ]]; then
echo "[ERROR] Invalid meta fields in prompt.json"
exit 1
fi
cat > "$MANIFEST_JSON" <<EOF
{
"version": "1.0",
"world": {
"id": "$WORLD_ID",
"version": "$WORLD_VERSION"
},
"style": {
"id": "$STYLE_ID"
},
"scene": {
"id": "$SCENE_ID"
},
"task": {
"type": "$TASK_TYPE",
"prompt_ref": "output/prompt.json"
}
}
EOF
echo "[OK] manifest.json generated successfully."
echo "[DONE] $MANIFEST_JSON"

View File

@@ -1,113 +1,133 @@
# 風景ライブラリー
# AI-ART Scene Registry (Constraints-Compliant)
## [classroom]
This document defines **registered scene configurations**.
All scenes MUST comply with:
- 木製机が並ぶ教室、黒板にチョークの粉が残る
- 午後の斜光で埃が舞う、柔らかい逆光
- 35mm50mm、目線か少しローアングル
- README.md
- prompts/constraints.md
- prompts/world-set.md
## [office]
Scenes are identified by **SCENE_ID**.
Unregistered or free-form scenes are NOT allowed.
- ガラス張りの都会的オフィス、モニター光とシーリングライト
- 夜景のネオンが反射する、ガラス越しのボケ
- 24mm35mm、やや広角で奥行きを強調
---
## [server_room]
## 1. Scene System Rules
- 縦に並ぶラック、青と緑のステータスLED
- クリーンな冷気と薄い霧感、床のグリッド反射
- 28mm、ローアングルで圧迫感を出す
- Each scene has a unique SCENE_ID
- Scenes define ONLY:
- Environment
- Camera framing
- Spatial context
- Scenes MUST NOT:
- Add narrative or story
- Add effects or powers
- Add unauthorized background elements
- Scenes are inert unless explicitly activated
## [laboratory]
---
- 白基調の研究室、ドラフトチャンバーやビーカーが並ぶ
- クールな蛍光灯+ポイントで暖色のアクセント
- 35mm、被写界深度浅めで実験器具にフォーカス
## 2. Registered Scenes
## [ai_cyberspace]
### SCENE_ID: NONE_00
- 無重力のデータキューブが浮かぶ電脳空間
- ネオンシアンとマゼンタのグラデ、粒子と光のライン
- 50mm相当の仮想カメラで被写界深度深め、広さを見せる
Status: DEFAULT
Description: No scene / no environment
## [floating_market]
Rules:
- Background: none / plain / transparent
- Environment: absent
- Camera: neutral framing
- No spatial implication
- 水上に並ぶ小舟の市場、果物や布がカラフル
- 朝霧に差すオレンジの光、ゆるい水面反射
- 35mm、手前ボートを前ボケにして奥行き
Use case:
- Character sheets
- Full-body reference
- Design documentation
## [underwater_library]
---
- 水中に沈む図書館、光のカーテンと揺れる本棚
- 青緑の環境光に金色の差し込み光、浮遊する紙片
- 24mm、やや広角で非現実感を強調
### SCENE_ID: INTERIOR_MINIMAL_01
## [rooftop_garden_rain]
Status: OPTIONAL
Description: Minimal interior context without narrative
- 高層ビル屋上の緑化庭園、小道とベンチ
- 霧雨で濡れた葉と石畳、遠景に滲む街のライト
- 50mm、傘越しの前ボケや水滴をアクセントにする
Rules:
- Background: abstract or simplified interior suggestion
- No identifiable location
- No props
- No furniture detail
- No people
## [bunker]
Use case:
- Mood-neutral interior framing
- Reference without story
- 西暦2150年の日本、地下バンカーの指令・整備施設
- 厚いコンクリ壁と露出梁、レール照明、床の金属トラックと整備マーキング
- 装飾なし、機能最優先。帰還のための空間
- 「基地」ではなく **bunker** として扱う
- 「command room」ではなく maintenance + command の機能を併設した空間
- 未来感は装飾ではなく **技術レベル** で表現する
- 背景に大型防爆扉、機材ラック、整備コンソール、ケーブル導管、ユニット収納ベイ
- 冷白色と淡いアンバーの工業灯、柔らかな影。スポットライト演出なし
- 静かで重い空間。統制的でやや抑圧的
- シネマティックな写実、地に足のついたSF、機構は機械的に合理的
- 目線〜ややロー、広角のワイドショットで規模と重量感を強調
- ネガティブネオン光、ホログラム、ファンタジー建築、浮遊物、光沢の強いSF表面、豪華な内装、過度な装飾、誇張されたサイバーパンク表現、カラフルな照明、アニメ的誇張
- 「戦う場所」ではなく「戻ってきて、何も言わずに整備される場所」
---
## [command_room]
### SCENE_ID: EXTERIOR_NEUTRAL_01
- 西暦2150年の日本、民間研究機関の地下司令室軍のHQではない
- コンパクトだが密度が高い空間
- 厚いコンクリ壁、露出構造材、壁面に埋め込まれたデータパネルと戦術ディスプレイ
- 情報は物理スクリーンのみ。ホログラムなし
- 中央に単一の司令デスク。ミニマルで機能的、使い込みの痕がある
- 低く抑えた間接光。冷白色と淡いアンバーの工業灯、コントラスト弱め、スポットライトなし
- 静かで統制的、感情の入らない意思決定の場
- 窓なし、装飾なし、私物なし。孤立した空間
- シネマティックな写実、地に足のついたSF、工業的で機械的に合理的な設計
- 目線〜やや俯瞰、安定した構図、左右対称のバランスで静かな権威を表現
- 「叫ぶ指令室」ではなく「結果が選ばれる場所」
- 無人でも成立し、常に誰かが見ている気配がある
- 補足階級章・旗・エンブレムは不要。威圧ポーズや誇張構図はNG
- ネガティブネオン光、ホログラムUI、サイバーパンク表現、ファンタジー要素、豪華家具、ガラス壁、暖色で居心地の良い照明、アニメ的誇張、雑然
Status: OPTIONAL
Description: Neutral exterior with no narrative cues
## [observation_deck]
Rules:
- Background: simplified exterior shapes
- No landmarks
- No weather emphasis
- No time-of-day implication
- No crowd or objects
- 西暦2150年の日本、民間研究機関の地下観測デッキ公共・軍用ではない
- 静かでミニマル。厚いコンクリ壁、清潔だが摩耗した表面、露出構造材
- 片側に大型の観測窓。多層ガラスで、外は暗闇または遠い地下空間
- 室内は人物・人型・動物なし
- 窓際にシンプルな手すり、壁面に埋め込まれたセンサーパネル
- 表示は停止中の淡いシステム灯のみ、可読文字なし
- ごく控えめな照明。冷白色の工業灯で柔らかな落ち影、強いコントラストなし
- 無音・穏やか・感情のない空気。観測と待機のための場所
- 「誰かが立つための場所」だが、今は不在
- シネマティックな写実、地に足のついたSF、建築的に合理的
- 目線の静止カメラ、バランスの取れた構図で静けさと空虚さを強調
- 「行動の場」ではなく「決断が躊躇する場所」
- ネガティブ:人物、シルエット、人物の反射、ホログラム、ネオン光、サイバーパンク表現、ファンタジー建築、劇的なライティング、雑然、テキスト表示
Use case:
- Exterior spatial context only
## [observation_deck_night]
---
- 西暦2150年の日本、夜の地下観測デッキ民間研究機関、地上から隔離
- 建築は昼版と同一。厚いコンクリ壁、露出構造材、清潔だが摩耗した表面、機能最優先
- 片側に大型の観測窓。外は深い闇、遠方に微かな構造灯のみ、動きなし
- 室内は人物・人型・動物なし
- 夜間モードの最小照明。低輝度のインジケータ灯のみ稼働、青灰色トーン、影は極めて柔らかい
- 壁面のセンサーパネルは停止中。微弱なLEDのみ、可読文字なし、表示は消灯
- 無音・重い・わずかに緊張。長い待機に耐えるための空間
- 未使用だが廃墟ではない。稼働中で破損なし
- シネマティックな写実、地に足のついたSF、建築的に合理的
- 目線の静止カメラ、昼版と同じ構図で静けさ・暗さ・奥行きを強調
- 「場所は同じ、時間だけが違う。ここでは時間が重い」
- ネガティブ:人物、シルエット、人物の反射、強い光源、ネオン、ホログラム、サイバーパンク表現、ファンタジー建築、劇的なスポットライト、テキスト表示、霧効果
## 3. Forbidden Scene Behavior
Scenes MUST NOT introduce:
- Narrative meaning
- Emotional storytelling
- Dramatic lighting or weather
- Motion, action, or events
- Symbols, signs, or readable text
- Props, weapons, or tools
Any violation invalidates the output.
---
## 4. Activation Mechanism
Scenes are activated ONLY via:
- task_template.md
- or manifest.json
If no SCENE_ID is specified:
- `SCENE_ID: NONE_00` is automatically applied
---
## 5. Conflict Resolution
If a scene conflicts with:
- constraints.md → constraints take precedence
- styles.md → styles remain active, scene adapts
- task instructions → constraints override task
Scenes NEVER override constraints.
---
## 6. Extension Policy
To add a new scene:
- Assign a new unique SCENE_ID
- Define explicit environment-only rules
- Verify constraints.md compliance
- Do NOT modify existing SCENE_ID behavior
SCENE_ID definitions are immutable once registered.

View File

@@ -1,22 +1,124 @@
# Styles Library
# AI-ART Style Registry (Constraints-Compliant)
## [anime_style]
This document defines **registered visual styles**.
All styles MUST comply with:
- 説明: クリーンな線とフラット寄りの彩色。瞳にハイライトを入れ、輪郭は滑らか。背景は簡略化しつつ要所でグラデーション。
- キーワード: "anime style, clean lineart, cel shading, soft gradient background, glossy eyes, minimal noise"
- README.md
- prompts/constraints.md
## [cinematic]
Styles are identified by **STYLE_ID**.
No free-form styles are allowed.
- 説明: 映画ライクな質感。柔らかなリムライトとフィルムグレイン。浅い被写界深度で主題を浮かせ、色はわずかにティール&オレンジ寄せ。
- キーワード: "cinematic lighting, soft rim light, film grain, shallow depth of field, volumetric light, teal and orange grade, 35mm lens"
---
## [photoreal]
## 1. Style System Rules
- photorealistic, physically based rendering,
- shot on full-frame DSLR, 85mm lens, f/2.8,
- natural depth of field, realistic bokeh,
- subsurface scattering with natural skin tone variation,
- micro scratches, subtle wear and tear, imperfections,
- natural exposure, high dynamic range,
- single soft key light, realistic shadow falloff,
- atmospheric perspective, slight haze
- Each style has a unique STYLE_ID
- Only registered STYLE_IDs may be activated
- Styles are inert unless explicitly activated by task or manifest
- Styles NEVER override constraints.md
---
## 2. Registered Styles
### STYLE_ID: FLAT_BASE_01
Status: DEFAULT
Description: Neutral flat illustration baseline
Rules:
- Illustration-oriented
- Flat or semi-flat rendering
- Minimal shading
- Clean line work
- Neutral lighting
- No effects
Use case:
- Character sheets
- Full-body reference
- Default人物紹介
---
### STYLE_ID: FLAT_MUTED_02
Status: OPTIONAL
Description: Flat style with muted palette
Rules:
- Flat color blocks
- Low saturation
- Soft contrast
- No gradients or glow
Use case:
- Calm tone characters
- Background-less portraits
---
### STYLE_ID: LINE_ART_01
Status: OPTIONAL
Description: Clean line-art focused style
Rules:
- Strong line definition
- Minimal or no fill color
- Uniform line weight
- No texture
Use case:
- Design reference
- Technical character outlines
---
## 3. Forbidden Style Behavior
Styles MUST NOT introduce:
- Photorealism
- Cinematic lighting
- Effects, glow, aura
- Narrative implication
- Environmental elements
Any style violating constraints.md is INVALID.
---
## 4. Activation Mechanism
Styles are activated ONLY via:
- task_template.md
- or manifest.json
If no STYLE_ID is specified:
- `FLAT_BASE_01` is automatically applied
---
## 5. Conflict Resolution
If multiple STYLE_IDs are specified:
- Use the first listed STYLE_ID
- Ignore others
- Do NOT merge styles
---
## 6. Extension Policy
To add a new style:
- Assign a new unique STYLE_ID
- Define explicit rules
- Ensure constraints.md compliance
- Never modify existing STYLE_ID behavior
STYLE_IDs are immutable once defined.

View File

@@ -1,7 +1,76 @@
# ここにプロンプトを書くを書く 生成するイメージをストーリー展開して書き込む
## TASK: Structured Prompt Generation (JSON Only)
登場人物人物紹介のイメージを作って下さい対象キャラクターは 白鴉(はくあ)です
世界観を反映して下さい AI-ART/prompts/world-set.md
You are an AI system that outputs a SINGLE JSON object.
Any output that is not valid JSON is INVALID.
全身をフラットなイメージを描写して下さい
背景は無しでお願いします
You MUST comply with:
- README.md
- prompts/constraints.md
- prompts/world-set.md
- prompts/styles.md
- prompts/scenes.md
---
## 1. Active Configuration (Read-Only)
ACTIVE_WORLD_ID: AIART_CORE
ACTIVE_WORLD_VERSION: 1.0
ACTIVE_STYLE_ID: FLAT_BASE_01
ACTIVE_SCENE_ID: NONE_00
---
## 2. Task Objective
Generate a **character full-body prompt** for image generation.
Target character:
- Name: 白鴉(はくあ)
- Purpose: Character introduction reference
- Background: None
---
## 3. Output Requirements (Strict)
You MUST output a JSON object with EXACTLY the following structure:
```json
{
"meta": {
"world_id": "AIART_CORE",
"world_version": "WORLD_VERSION: 1.0",
"style_id": "FLAT_BASE_01",
"scene_id": "NONE_00",
"task_type": "character_full_body"
},
"prompt_text": "人物紹介用全身画像"
}
## Task Type Definitions (Binding)
The value of meta.task_type determines the scope of prompt_text.
- character_full_body
- Single character
- Full body visible
- No background narrative
- scene_composition
- Environment and spatial composition
- Characters may be absent or generic
- No named characters unless explicitly allowed
- item_design
- Standalone designed object
- No human presence
- Focus on form and material
- prop_design
- Small utilitarian object
- Human-scale
- No decorative symbolism
If prompt_text violates the declared task_type,
the output is INVALID.

View File

@@ -1,131 +1,164 @@
# LAL-GUARD
## AI-ART World Registry (Versioned)
## Left Arm Labo Guardian-unit System
This document defines the **registered world settings**.
All executions MUST reference a valid WORLD_ID and VERSION.
** 公式設定資料(未完成版)**
World definitions MUST comply with:
- README.md
- prompts/constraints.md
---
## 0. 表記ルール(全キャラクター共通)
## 1. World System Rules
- 見出しの区切りは全角「|」を使用し、前後にスペースを入れない
- キャラクター見出しは「日本語名(よみ)」で統一する
- 英語表記は見出しに入れず、各シートの「基本情報」にまとめる
- セクション見出しは `## ■` を使用する
- 性別表記は「男性/女性」で統一する
- 英語表記は `英語表記` のラベルで統一する
- 登場人物の並び順は LAL-GUARD-01 → 02 → 03 → ケルベロス → 整備主任とし、章内の小見出しにも適用する
- 背景設定は `prompts/scenes.md` を参照すること(バンカーは `[bunker]`
- Each world is identified by:
- WORLD_ID
- WORLD_VERSION
- Worlds define:
- Technology level
- Social structure
- Atmosphere and tone
- Permitted conceptual scope
- Worlds MUST NOT:
- Override constraints.md
- Introduce narrative beyond definition
- Free-form world creation is NOT allowed
---
## 1. 世界観概要
## 2. Registered Worlds
* 時代西暦2150年近未来
* 舞台:日本
* 主体:民間研究機関 **Left Arm Labo**
### WORLD_ID: AIART_CORE
WORLD_VERSION: 1.0
国家による正規軍事行動は縮小され、
代替として民間研究機関による
**限定的・管理された戦闘行為**が常態化している。
Left Arm Labo が開発・運用する
LAL-GUARD は、兵器ではない。
これは
**「戦いが成立し、必ず戻ってくること」**
を目的とした計画である。
Status: ACTIVE
Description: Core neutral world for AI-ART baseline operations
---
## 2. LAL-GUARD 計画思想
#### 2.1 Technology Level
* 完璧な兵器は作らない
* 役割の異なる個体を組み合わせる
* 人間の判断を排除しない
* 勝利よりも「成立」と「帰還」を優先する
- Near-future to abstract-modern
- No magic systems
- No unexplained supernatural phenomena
- Technology must appear:
- Plausible
- Understated
- Non-spectacular
量産は想定されていない。
この三体で、十分である。
Allowed:
- Minimal wearable tech
- Subtle machinery
- Abstract interfaces (non-HUD)
Forbidden:
- Magical devices
- Reality-bending technology
- Glowing or energy-based systems
---
## 3. 登場人物と参照
#### 2.2 Society & Culture
本章では登場人物名のみ明記する。
詳細設定は各キャラクターシートを参照すること。
- Undefined global politics
- No named nations or factions
- No explicit religions
- No ideological messaging
参照先:
- `prompts/charcterseet/hakua.md`
- `prompts/charcterseet/kokukyo.md`
- `prompts/charcterseet/mio.md`
- `prompts/charcterseet/mente-char.md`
### LAL-GUARD-01白鴉はくあ
### LAL-GUARD-02黒梟こっきょう
### LAL-GUARD-03みお
### ケルベロス
### 整備主任
Society is implied only through:
- Clothing design
- Material choice
- Structural aesthetics
---
## 6. チーム定義
#### 2.3 Atmosphere & Tone
* 白鴉:**動**
* 黒梟:**静**
* 澪:**流**
- Calm
- Controlled
- Restrained
- Professional
- Neutral emotional baseline
三体が揃って初めて
LAL-GUARD は成立する。
Forbidden tones:
- Epic
- Mythological
- Dark fantasy
- High drama
- Horror
---
## 7. 絶対禁止事項・物理ルール
#### 2.4 Visual Language Constraints
### ABSOLUTE RULES
- Functional design over ornament
- Clean silhouettes
- Minimal symbolism
- No heraldry or emblems
* ケルベロスは澪専属
* 他ユニットはケルベロスに干渉不可
* 黒梟は騎乗・搭乗を行わない
* 黒梟は歩行のみ
* 重さ・慣性・接地を無視しない
* 無重力・空中静止は禁止
### 演出制約
* 過剰な感情表現は禁止
* 説明的動作は禁止
* 世界はすでに存在している前提で描写する
Visual identity must remain:
- Subtle
- Interpretable
- Non-referential
---
## 8. 内部ログ要約(未完成ストーリー)
#### 2.5 Vocabulary Scope (Implicit)
* 整備主任が冗談を言わない日が発生
* 澪が初めて「意味」を問い始める
* 主宰は澪を「変われない存在」と定義
* 整備主任は計画の外側に立つ
* 澪が判断を **0.3秒遅らせる**
* それでも任務は成立し、全員帰還
* 主宰は遅延を解析するが、修正を保留
Permitted concepts:
- Human-scale environments
- Designed objects
- Abstract modern spaces
Forbidden concepts:
- Gods, demons, spirits
- Legendary artifacts
- Named historical references
- Explicit sci-fi tropes (warp, hyperspace, etc.)
---
## 9. 現在の状態(凍結)
## 3. Versioning Policy
* 計画はまだ成立している
* しかし「唯一の正解」は失われた
* 正しさ・計画・人間性は同時に成立しない
この物語は
**壊れる直前で凍結された未完成の世界**である。
- WORLD_VERSION is semantic (MAJOR.MINOR)
- Increment rules:
- MAJOR: Conceptual break
- MINOR: Additive clarification
- Existing WORLD_ID behavior MUST NOT change retroactively
---
## 10. 最終定義
## 4. Activation Mechanism
LAL-GUARD は兵器ではない。
これは **計画** である。
A world is activated ONLY via:
そして計画は、
まだ終わっていない。
- task_template.md
- or manifest.json
If no WORLD_ID is specified:
- Execution MUST HALT (no default world allowed)
---
## 5. Conflict Resolution
If world definition conflicts with:
- constraints.md → constraints override world
- styles.md / scenes.md → world constrains scope
- task instructions → world limits interpretation
Worlds NEVER override constraints.
---
## 6. Extension Policy
To add a new world:
- Define a new WORLD_ID
- Assign initial WORLD_VERSION
- Fully specify sections 2.12.5
- Do NOT modify existing worlds
World definitions are immutable once published.

41
schema/prompt.schema.json Normal file
View File

@@ -0,0 +1,41 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"required": ["meta", "prompt_text"],
"additionalProperties": false,
"properties": {
"meta": {
"type": "object",
"required": [
"world_id",
"world_version",
"style_id",
"scene_id",
"task_type"
],
"additionalProperties": false,
"properties": {
"world_id": { "type": "string" },
"world_version": {
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
},
"style_id": { "type": "string" },
"scene_id": { "type": "string" },
"task_type": {
"type": "string",
"enum": [
"character_full_body",
"scene_composition",
"item_design",
"prop_design"
]
}
}
},
"prompt_text": {
"type": "string",
"minLength": 20
}
}
}