Ghostwriting Context JSON
The granular ghostwriting flow can import a complete story context from JSON. This is useful when you want to plan the context outside Bookcicle first, then bring the finished object into the local builder before starting the draft.
The import stays local until you start drafting. Bookcicle validates the object first, then fills the granular context builder with the metadata, prompt, cast, settings, outline, and style sample.
Required Fields
Your JSON must be a single object with these top-level fields:
metadatapromptcharacterslocationsoutlinestyleSample
The importer also accepts sample as an alias for styleSample.
Field Rules
metadata.projectNameis required and is trimmed to 80 characters.metadata.genresmust include at least one genre and can include up to three.metadata.sensitivitycan be0,1,2, or3.metadata.dialogueLevel,metadata.paceLevel, andmetadata.readingLevelcan below,medium, orhigh.metadata.lengthLevelcan bemediumorhigh.promptis required and must be 500 characters or fewer.charactersmust include at least one item. Each character needs aname.- Character
pronounsandgenderare optional freeform strings. Use them as continuity anchors when pronouns or gender are important, including mixed pronouns such asshe/they,he/they,they/them, or neopronouns. locationsmust include at least one item. Each location needs aname.outline.sectionsmust include 20 to 25 sections.- Each outline section needs a
headingandsummary. styleSamplemust be 500 to 5000 characters.
Outline sections also accept these aliases:
titlecan be used instead ofheading.descriptioncan be used instead ofsummary.beatscan be used instead ofbulletPoints.
Target draft length is a planning input, not a guaranteed final word count.
Schema
{
"type": "object",
"required": [
"metadata",
"prompt",
"characters",
"locations",
"outline",
"styleSample"
],
"properties": {
"metadata": {
"type": "object",
"required": ["projectName", "genres"],
"properties": {
"projectName": { "type": "string", "minLength": 1, "maxLength": 80 },
"projectType": { "type": "string", "default": "Novel" },
"category": { "type": "string", "default": "Fiction" },
"seriesId": { "type": "string" },
"seriesName": { "type": "string" },
"genres": {
"type": "array",
"items": { "type": "string" },
"minItems": 1,
"maxItems": 3
},
"language": { "type": "string", "default": "en-US" },
"sensitivity": { "type": "integer", "minimum": 0, "maximum": 3 },
"dialogueLevel": { "enum": ["low", "medium", "high"] },
"paceLevel": { "enum": ["low", "medium", "high"] },
"readingLevel": { "enum": ["low", "medium", "high"] },
"lengthLevel": { "enum": ["medium", "high"] }
}
},
"prompt": { "type": "string", "minLength": 1, "maxLength": 500 },
"characters": {
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"required": ["name"],
"properties": {
"name": { "type": "string", "minLength": 1 },
"role": { "type": "string" },
"pronouns": { "type": "string", "maxLength": 120 },
"gender": { "type": "string", "maxLength": 120 },
"description": { "type": "string" }
}
}
},
"locations": {
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"required": ["name"],
"properties": {
"name": { "type": "string", "minLength": 1 },
"description": { "type": "string" }
}
}
},
"outline": {
"type": "object",
"required": ["sections"],
"properties": {
"sections": {
"type": "array",
"minItems": 20,
"maxItems": 25,
"items": {
"type": "object",
"required": ["heading", "summary"],
"properties": {
"heading": { "type": "string", "minLength": 1 },
"summary": { "type": "string", "minLength": 1 },
"bulletPoints": {
"type": "array",
"items": { "type": "string" }
},
"pov": { "type": "string" },
"prompt": { "type": "string" }
}
}
}
}
},
"styleSample": { "type": "string", "minLength": 500, "maxLength": 5000 }
}
}
Example
{
"metadata": {
"projectName": "The Glass Orchard",
"projectType": "Novel",
"category": "Fiction",
"genres": ["Fantasy", "Mystery"],
"language": "en-US",
"sensitivity": 1,
"dialogueLevel": "medium",
"paceLevel": "medium",
"readingLevel": "medium",
"lengthLevel": "medium"
},
"prompt": "A disgraced orchard keeper discovers that every glass apple contains a memory stolen from the capital. She must decide whether to restore the memories and expose her family or keep the city peaceful.",
"characters": [
{
"name": "Mara Vell",
"role": "Protagonist",
"pronouns": "she/her",
"gender": "woman",
"description": "A careful orchard keeper with a talent for noticing lies."
},
{
"name": "Iren Vale",
"role": "Antagonist",
"pronouns": "they/them",
"gender": "nonbinary",
"description": "The royal archivist who believes stolen memories prevent civil collapse."
}
],
"locations": [
{
"name": "The Glass Orchard",
"description": "A moonlit orchard where transparent fruit stores stolen memories."
},
{
"name": "Crown Archive",
"description": "A quiet government hall where erased histories are cataloged."
}
],
"outline": {
"sections": [
{
"heading": "The Borrowed Harvest",
"summary": "Mara gathers glass apples after curfew and sees a child's birthday trapped inside one fruit.",
"bulletPoints": ["Show the orchard ritual", "Introduce the forbidden memory"],
"pov": "Mara",
"prompt": "Open with sensory detail and quiet unease."
},
{
"heading": "A Ledger With No Names",
"summary": "Mara finds her father's old ledger and realizes the orchard has been taking memories for years.",
"bulletPoints": ["Reveal family complicity", "Set Mara's private guilt"],
"pov": "Mara",
"prompt": "Focus on discovery and denial."
},
{
"heading": "The Archivist Arrives",
"summary": "Iren Vale visits the orchard and warns Mara not to inspect the fruit too closely.",
"bulletPoints": ["Introduce Iren", "Hint at state control"],
"pov": "Mara",
"prompt": "Make the conversation polite but threatening."
},
{
"heading": "Birthday Ashes",
"summary": "Mara returns the child's memory and causes a family to remember a forbidden loss.",
"bulletPoints": ["Test memory restoration", "Show consequences"],
"pov": "Mara",
"prompt": "Balance wonder with danger."
},
{
"heading": "The Peace Tax",
"summary": "Iren explains that the city trades painful memories for stability and calls Mara's act sabotage.",
"bulletPoints": ["Clarify the moral conflict", "Raise public stakes"],
"pov": "Iren",
"prompt": "Let Iren sound reasonable."
},
{
"heading": "Keys Under the Root Cellar",
"summary": "Mara uncovers a hidden route from the orchard into the Crown Archive.",
"bulletPoints": ["Find the tunnel", "Connect orchard and archive"],
"pov": "Mara",
"prompt": "Use tension and tactile detail."
},
{
"heading": "A City Without Nightmares",
"summary": "Mara sees citizens praising their peaceful lives while missing pieces of themselves.",
"bulletPoints": ["Complicate Mara's certainty", "Show what restoration may cost"],
"pov": "Mara",
"prompt": "Make the city feel beautiful and hollow."
},
{
"heading": "The Queen's Locked Door",
"summary": "A royal memory reveals the queen chose the orchard after a rebellion nearly destroyed the capital.",
"bulletPoints": ["Reveal origin history", "Tie Iren to the queen"],
"pov": "Mara",
"prompt": "Frame the memory as a vivid scene."
},
{
"heading": "Broken Fruit",
"summary": "Mara's first mass restoration attempt shatters several apples and injures a witness.",
"bulletPoints": ["Fail publicly", "Increase guilt"],
"pov": "Mara",
"prompt": "Keep the failure specific and costly."
},
{
"heading": "The Archivist's Daughter",
"summary": "Iren reveals his daughter is alive only because her worst memories were removed.",
"bulletPoints": ["Humanize Iren", "Deepen the dilemma"],
"pov": "Iren",
"prompt": "Avoid simple villain framing."
},
{
"heading": "Petitions in the Rain",
"summary": "Citizens divide between those who want truth returned and those who fear old pain.",
"bulletPoints": ["Show public split", "Pressure Mara to choose"],
"pov": "Mara",
"prompt": "Use crowd detail and conflicting voices."
},
{
"heading": "The Father's Apple",
"summary": "Mara finds the fruit containing her father's final memory and learns he tried to stop the system.",
"bulletPoints": ["Reveal family truth", "Renew Mara's resolve"],
"pov": "Mara",
"prompt": "Make this emotionally intimate."
},
{
"heading": "Archive Fire",
"summary": "Iren burns false records to protect the system while Mara saves the oldest memory index.",
"bulletPoints": ["Action set piece", "Preserve proof"],
"pov": "Mara",
"prompt": "Keep geography clear."
},
{
"heading": "The Choice of Return",
"summary": "Mara discovers memories can be offered back gradually if citizens consent.",
"bulletPoints": ["Find compromise", "Challenge both extremes"],
"pov": "Mara",
"prompt": "Turn the plot through discovery, not speech."
},
{
"heading": "Trial Beneath Glass Branches",
"summary": "Mara is tried in the orchard while witnesses demand different futures for the city.",
"bulletPoints": ["Stage public judgment", "Bring themes together"],
"pov": "Mara",
"prompt": "Let testimony carry the conflict."
},
{
"heading": "The Queen Remembers",
"summary": "Mara restores the queen's suppressed memory and forces her to face the rebellion's truth.",
"bulletPoints": ["Confront the ruler", "Expose the founding lie"],
"pov": "Mara",
"prompt": "Make the restoration cinematic."
},
{
"heading": "Iren's Last Bargain",
"summary": "Iren helps Mara prevent a violent backlash if she protects his daughter's choice.",
"bulletPoints": ["Shift alliance", "Protect consent"],
"pov": "Iren",
"prompt": "Show reluctant trust."
},
{
"heading": "The First Honest Harvest",
"summary": "The orchard begins returning memories only to those who ask for them.",
"bulletPoints": ["Resolve the system", "Show imperfect healing"],
"pov": "Mara",
"prompt": "Avoid making the ending too tidy."
},
{
"heading": "Seeds of Clear Fruit",
"summary": "Mara plants new trees that record memories by consent instead of theft.",
"bulletPoints": ["Create future path", "Echo the opening image"],
"pov": "Mara",
"prompt": "Use quiet hope and concrete action."
},
{
"heading": "What the City Keeps",
"summary": "The city learns to live with chosen memory, chosen forgetting, and public truth.",
"bulletPoints": ["Close character arcs", "End on theme"],
"pov": "Mara",
"prompt": "Finish with restraint and resonance."
}
]
},
"styleSample": "The rain made mirrors of the orchard paths, and Mara stepped through each reflection as if it belonged to someone else. By dawn the glass apples would be clear again, emptied of whatever they had taken from the sleeping city. Tonight, though, each branch glowed with borrowed grief. She held one fruit to the lantern and saw a child's birthday, a soldier's confession, a queen turning away from a locked door. Mara had been told never to look closely. She had been told many things by people who feared what memory could do when returned to its owner. The apple warmed in her palm, bright as a warning. She wanted to set it down. She wanted to carry it straight through the locked gates and make the whole city remember what it had paid for peace."
}