Agent skill
json-formatter
JSON formatting rules for lore entity output. Enforces export-compatible JSON, plural collections, consistent IDs, and domain field names.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/other/json-formatter
SKILL.md
json-formatter
Base skill for JSON output formatting. All extraction skills produce JSON that can be loaded by the Lore GUI (LoreData.from_dict).
Rules
- Valid JSON: Output must be parseable JSON — no trailing commas, no comments.
- Export schema: Use the GUI export format defined in
src/presentation/gui/lore_data.py. - Plural collections: Each entity collection is a top-level key with a plural name and an array value (e.g.,
worlds,characters,locations). - IDs are consistent: Use integer IDs for GUI export collections. For entity types that use UUIDs in the domain model, use UUID strings consistently across references.
- Field names: Use exact domain field names (snake_case). Do not invent
typeorentity_typeunless that field exists in the domain model. - Dates: Use ISO 8601 strings for timestamps (
created_at,updated_at,start_date,end_date).
Output Structure (Export-Compatible)
{
"worlds": [],
"characters": [],
"locations": [],
"quests": [],
"items": [],
"events": [],
"stories": [],
"storylines": [],
"tags": [],
"images": [],
"choices": [],
"flowcharts": [],
"handouts": [],
"inspirations": [],
"environments": [],
"banners": [],
"character_relationships": [],
"factions": [],
"shops": [],
"maps": [],
"notes": [],
"requirements": [],
"sessions": [],
"tokenboards": [],
"pity": [],
"pulls": [],
"player_profiles": [],
"currencies": [],
"rewards": [],
"purchases": [],
"event_chains": [],
"faction_memberships": [],
"lore_axioms": [],
"music_controls": [],
"music_states": [],
"music_themes": [],
"music_tracks": [],
"progression_events": [],
"character_states": [],
"textures": [],
"models": [],
"next_id": 1
}
Required Fields (Core Entities)
Use these minimum fields so JSON loads without validation errors:
- worlds:
id,name,description,created_at,updated_at,version - characters:
id,world_id,name,backstory,status,abilities,created_at,updated_at,version - locations:
id,world_id,name,description,location_type,created_at,updated_at,version - quests:
id,world_id,name,description,objectives,status,participant_ids,reward_ids,created_at,updated_at,version
If a field is unknown, set it to null or an empty list (for arrays), but keep the key.
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?