{"server":"com.brix36/brix36","count":50,"changes":[{"tool":"studio_artist_ready_made_choose","kind":"changed","observed_at":"2026-10-17T15:05:59.618Z","fields":["description"],"description_before":"Saves one Brix36 ready-made fictional portrait on an existing artist using the same service as the app. Requires artist permission and a starId from studio_ready_made_stars_list. Returns the saved reference pack and whether it was newly created; choosing the same star retains the existing pack. No image generation or credit charge. Current generation readiness is read separately with studio_artists_list.","description_after":"Saves one Brix36 ready-made fictional portrait on an existing artist using the same service as the app. Requires artist permission and a current starId from the ready-made star list. Returns the saved reference pack and whether it was newly created; choosing the same star retains the existing pack. No image generation or credit charge. Current generation readiness is read separately from the artist list.","description_similarity":0.922,"before_hash":"9789307dc4e3b14d21db93af42606946","after_hash":"cebd1731c4042a10d726a96638044ad4"},{"tool":"studio_ready_made_stars_list","kind":"changed","observed_at":"2026-10-17T15:05:59.618Z","fields":["description"],"description_before":"Lists the same free fictional character portraits offered by the Brix36 app, with each current star ID, name, description and versioned preview image. Read-only; creates no artist, image, generation or charge. Choose a portrait for an existing artist with studio_artist_ready_made_choose.","description_after":"Lists the same free fictional character portraits offered by the Brix36 app, with each current star ID, name, description and versioned preview image. Read-only; creates no artist, image, generation or charge.","description_similarity":0.769,"before_hash":"3401d81d67e2132ac811557833dc5a10","after_hash":"8467941bbfeda018f90d394160b595cd"},{"tool":"studio_ai_sharing_choose","kind":"changed","observed_at":"2026-10-17T15:05:59.618Z","fields":["description"],"description_before":"Records the person's own answer to the AI-sharing question after a creation tool returned ai_processing_choice_required. Call it only with their explicit reply: allowed true for Allow, false for Not now. Never infer consent from the request to create, and never answer on their behalf. Pass supersedes as the sequence that refusal returned (null when it was unset). Returns the stored answer; nothing is created or charged.","description_after":"Records the person's own answer to the AI-sharing question after a creation tool returned ai_processing_choice_required. allowed true means Allow and false means Not now. Consent counts only as that explicit reply; it is never inferred from the request to create and never supplied on the person's behalf. supersedes is the sequence that refusal returned (null when it was unset). Returns the stored answer; nothing is created or charged.","description_similarity":0.839,"before_hash":"6de7aa32cb1fb84521f65d9b7d7d71ad","after_hash":"ec17557292fc73f185b992544af614d6"},{"tool":"studio_motion_catalogue","kind":"added","observed_at":"2026-10-15T07:16:26.216Z","fields":[],"description_before":null,"description_after":"List available Motion Graphics templates (lyric_video, audio_visualiser, living_cover, kinetic_type, club_tunnel, organic_landscape), 7 genre looks (pop, hiphop_drill, rnb, house_edm, rock, country_acoustic, afrobeats), and all 24 popular motion styles with preview video URLs and input requirements. Read-only discovery.","description_similarity":null,"before_hash":null,"after_hash":"886a8a48f6d7b99198712d8965493a00"},{"tool":"studio_motion_quote","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Returns the server price in credits and GBP including VAT, bound to the exact revision, output, source and runtime. A paid render requires one explicit customer approval of this exact price, followed by studio_motion_confirm. Edits invalidate prior quotes. No debit or render.","description_after":"Returns the server price in credits and GBP including VAT, bound to the exact revision, output, source and runtime. A paid render requires one explicit customer approval of this exact price. Edits invalidate prior quotes. No debit or render.","description_similarity":0.872,"before_hash":"b2fda755b58b44f880e82d2ece3a9486","after_hash":"9c8d06c54a608d938163e4109ff78346"},{"tool":"studio_motion_create","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description","inputSchema"],"description_before":"Saves a ready server-rendered Motion scene and returns its exact paid-render quote plus an optional free first-frame preview. Supports lyric video, beat-reactive visualiser, kinetic titles, photo-motion poster and promo cards. Uses owned audio and picture asset IDs; saved song timing supplies lyric cues and the saved scene can be edited. No AI video model or paid render is called. requestId identifies the saved document across retries. Each returned quote has its own identity; rendering requires explicit customer approval bound to that quote.","description_after":"Saves a ready server-rendered Motion scene and returns its exact paid-render quote plus an optional free first-frame preview. Supports lyric video, beat-reactive visualiser, kinetic titles, photo-motion poster, promo cards, the 6 music/lyric/visualiser templates (lyric_video, audio_visualiser, living_cover, kinetic_type, club_tunnel, organic_landscape) across 7 genre looks (pop, hiphop_drill, rnb, house_edm, rock, country_acoustic, afrobeats), and all 24 popular motion styles (styleId). Uses owned audio and picture asset IDs; saved song timing supplies lyric cues and the saved scene can be edited. No AI video model or paid render is called. requestId identifies the saved document across retries. Each returned quote has its own identity; rendering requires explicit customer approval bound to that quote.","description_similarity":0.72,"before_hash":"07128d12d51df2f512fdcc85fd7a02c7","after_hash":"a6415fa29abe5d1a81f816a2730ef163"},{"tool":"studio_film_set_duration","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Set one scene’s duration, normalized to 4–30 seconds; later scenes move to follow it. Read studio_film_read first. Uses the current revision and stable operationId; retry identical inputs only. No model call or credit charge.","description_after":"Set one scene’s duration, normalized to 4–30 seconds; later scenes move to follow it. Uses expectedRevision, the current saved Film plan revision, and a stable operationId; identical operationId/input retries reconcile the same edit. No model call or credit charge.","description_similarity":0.667,"before_hash":"3afdf533cd64495c22923d9182d7e9a0","after_hash":"0f7e63b5f25c189e440f7412d1be9fda"},{"tool":"studio_film_set_lip_sync","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Set the lip-sync choice for one saved scene. Read studio_film_read first. Uses the current revision and stable operationId; retry identical inputs only. No model call or credit charge.","description_after":"Set the lip-sync choice for one saved scene. Uses expectedRevision, the current saved Film plan revision, and a stable operationId; identical operationId/input retries reconcile the same edit. No model call or credit charge.","description_similarity":0.622,"before_hash":"32ab3d0ebc4c1b5d0302b2d98d0de1c7","after_hash":"78cca7576c98d4be4f534c82dd59e949"},{"tool":"studio_film_toggle_sound","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Toggle one Film music, background or effects layer. Read studio_film_read first. Uses the current revision and stable operationId; retry identical inputs only. No model call or credit charge.","description_after":"Toggle one Film music, background or effects layer. Uses expectedRevision, the current saved Film plan revision, and a stable operationId; identical operationId/input retries reconcile the same edit. No model call or credit charge.","description_similarity":0.583,"before_hash":"4ef50315e15d13b0e374e8b4f5095e5e","after_hash":"88dbe5b2a54306fd9e701dff1e247ab6"},{"tool":"studio_film_toggle_camera","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Toggle whether one dialogue line’s speaker is on camera. Read studio_film_read first. Uses the current revision and stable operationId; retry identical inputs only. No model call or credit charge.","description_after":"Toggle whether one dialogue line’s speaker is on camera. Uses expectedRevision, the current saved Film plan revision, and a stable operationId; identical operationId/input retries reconcile the same edit. No model call or credit charge.","description_similarity":0.625,"before_hash":"380c3d602effc4634c0f59f8aea71cc1","after_hash":"691806a85023d0ad011b6fdd763d1aaf"},{"tool":"studio_film_remove_line","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Remove one saved dialogue line. Read studio_film_read first. Uses the current revision and stable operationId; retry identical inputs only. No model call or credit charge.","description_after":"Remove one saved dialogue line. Uses expectedRevision, the current saved Film plan revision, and a stable operationId; identical operationId/input retries reconcile the same edit. No model call or credit charge.","description_similarity":0.588,"before_hash":"a7fe22a137e3fb4f608f5f1521a47143","after_hash":"6ed7c818eefcce6e6e686fe3892d3309"},{"tool":"studio_film_edit_line","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Replace the text of one saved dialogue line. Read studio_film_read first. Uses the current revision and stable operationId; retry identical inputs only. No model call or credit charge.","description_after":"Replace the text of one saved dialogue line. Uses expectedRevision, the current saved Film plan revision, and a stable operationId; identical operationId/input retries reconcile the same edit. No model call or credit charge.","description_similarity":0.611,"before_hash":"066cd6e909c11881dfad8acfecf44d99","after_hash":"90f8565c9acb573d9ba019e3aef00f9d"},{"tool":"studio_film_add_line","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Add one finished dialogue line to a scene and return its lineId. Read studio_film_read first. Uses the current revision and stable operationId; retry identical inputs only. No model call or credit charge.","description_after":"Add one finished dialogue line to a scene and return its lineId. Uses expectedRevision, the current saved Film plan revision, and a stable operationId; identical operationId/input retries reconcile the same edit. No model call or credit charge.","description_similarity":0.65,"before_hash":"003d6040b67ddbf90cdaa3708a519c56","after_hash":"5d6ee9fbe0e5f3e5405c8b173457505b"},{"tool":"studio_film_assign_actor","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Assign one available artist to one saved dialogue line. Read studio_film_read first. Uses the current revision and stable operationId; retry identical inputs only. No model call or credit charge.","description_after":"Assign one available artist to one saved dialogue line. Uses expectedRevision, the current saved Film plan revision, and a stable operationId; identical operationId/input retries reconcile the same edit. No model call or credit charge.","description_similarity":0.622,"before_hash":"63b3aa42b1c02f4c8805a73bbaeb8e0d","after_hash":"93ae783c481da8c51df31118678a3540"},{"tool":"studio_film_direction_set","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Replace one scene’s direction and reference pictures. A null sceneIndex with empty text binds whole-Film references. Read studio_film_read first. Uses the current revision and stable operationId; retry identical inputs only. No model call or credit charge.","description_after":"Replace one scene’s direction and reference pictures. A null sceneIndex with empty text binds whole-Film references. Uses expectedRevision, the current saved Film plan revision, and a stable operationId; identical operationId/input retries reconcile the same edit. No model call or credit charge.","description_similarity":0.689,"before_hash":"a7d61f372ec67810a9f787b64bd53595","after_hash":"c25c93ac09e3672eaab7cfb1c5d0f986"},{"tool":"studio_film_set_speech_voice","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Set the saved-character or native speech voice choice for one character in one scene. Read studio_film_read first. Uses the current revision and stable operationId; retry identical inputs only. No model call or credit charge.","description_after":"Set the saved-character or native speech voice choice for one character in one scene. Uses expectedRevision, the current saved Film plan revision, and a stable operationId; identical operationId/input retries reconcile the same edit. No model call or credit charge.","description_similarity":0.65,"before_hash":"168d3f0e93b787860912d96a0576ff59","after_hash":"f16a0eaeeb0c21172ebdb7bdff0ca63b"},{"tool":"studio_image_result","kind":"added","observed_at":"2026-10-15T07:16:26.216Z","fields":[],"description_before":null,"description_after":"Returns the owned picture for an approved quoteId with image.url, downloadUrl and gallery-widget data once ready, or its current progress. Links are private and signed; another read refreshes them. No processing or charge is repeated.","description_similarity":null,"before_hash":null,"after_hash":"cdda27e0b87696b2a887fa8914df6245"},{"tool":"studio_image_confirm","kind":"added","observed_at":"2026-10-15T07:16:26.216Z","fields":[],"description_before":null,"description_after":"Spends Brix36 credits and starts one picture under the customer's financial approval of the exact quoted draftId and quoteId. Identical retries return the same operation without another charge.","description_similarity":null,"before_hash":null,"after_hash":"b1133ae7bbe5a17cbb99559bf01df4dc"},{"tool":"studio_image_quote","kind":"added","observed_at":"2026-10-15T07:16:26.216Z","fields":[],"description_before":null,"description_after":"Prices one standalone picture from a text prompt and optional owned uploads, using the same pricing as the Brix36 create box. Returns the exact credits and price with draftId and quoteId. Nothing is generated or charged.","description_similarity":null,"before_hash":null,"after_hash":"2270b88a1cbbcaf5efea3255ad71c094"},{"tool":"studio_storyboard_submit","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Validates and saves a finished Music storyboard with one DirectedShot per fixed shot order, exact expectedRevisionId/audioAnalysisId, optional treatment and visualWorld. Creates an immutable revision while preserving server-owned timing. visualWorld is required for quoting and may also be saved through studio_storyboard_prepare. No model, queue, provider or credit use.","description_after":"Validates and saves a finished Music storyboard with one DirectedShot per fixed shot order, exact expectedRevisionId/audioAnalysisId, optional treatment and visualWorld. Creates an immutable revision while preserving server-owned timing. visualWorld is required for quoting. No model, queue, provider or credit use.","description_similarity":0.851,"before_hash":"1e552d74b7d31560eaf15d92bee4242c","after_hash":"37aa96055e1c82d4848a6bb9ec54cfa6"},{"tool":"studio_artist_voice_choose","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Assigns an offered ready-made voice from the voice library through a durable revision-bound operation. voiceId is an opaque catalogue ID and expectedRevision is the current voice revision, or null when no voice exists. May add a shared library voice; creates no speech and debits no credits. Film speech requires its separate quoted financial approval. Identical operation retries retain identity; status is available through studio_artist_voice_status.","description_after":"Assigns an offered ready-made voice from the voice library through a durable revision-bound operation. voiceId is an opaque catalogue ID and expectedRevision is the current voice revision, or null when no voice exists. May add a shared library voice; creates no speech and debits no credits. Film speech requires its separate quoted financial approval. Identical operation retries retain identity.","description_similarity":0.92,"before_hash":"364cc3f94d73cff5b67c4675e0a90d81","after_hash":"81c9eb55ea49723f0630526f1a46ad9e"},{"tool":"studio_film_scenes_write","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Saves finished Film scenes, visualWorld, camera directions and dialogue against the current revision. Scenes form 30-second cards, with at most six spoken lines per card and five minutes per Film. Identical operationId/input retries return the saved result. visualWorld is required for quoting and can also be saved through studio_storyboard_prepare. No Brix36 planning model, media generation or credit charge.","description_after":"Saves finished Film scenes, visualWorld, camera directions and dialogue against the current revision. Scenes form 30-second cards, with at most six spoken lines per card and five minutes per Film. Identical operationId/input retries return the saved result. visualWorld is required for quoting. No Brix36 planning model, media generation or credit charge.","description_similarity":0.87,"before_hash":"9fe7791c4a97edb4eba99a01069d50e5","after_hash":"8e297b8ec07ea4710a711efb139e076f"},{"tool":"studio_film_read","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["outputSchema"],"description_before":null,"description_after":null,"description_similarity":null,"before_hash":"c1c17156d77a1bf89ef9b9439f3d86ba","after_hash":"669341a1343d6d03027c72fef67857d5"},{"tool":"studio_artist_reference_pack_confirm","kind":"added","observed_at":"2026-10-15T07:16:26.216Z","fields":[],"description_before":null,"description_after":"Places the one quoted reference-pack purchase only after the customer has explicitly approved the exact credits in this chat. Takes the exact operationId, quoteToken, quotedCredits and priceVersion from the quote (and the same look inputs); an existing Brix36 approval code is accepted as confirmationToken instead. Identical retries return the first outcome and never charge twice. status still_checking keeps the original operation; an identical later call returns its outcome without a new price.","description_similarity":null,"before_hash":null,"after_hash":"9aa49612647566358532283a2c94dd4e"},{"tool":"studio_artist_reference_pack_quote","kind":"added","observed_at":"2026-10-15T07:16:26.216Z","fields":[],"description_before":null,"description_after":"Prices the artist's missing reference views (photo_pack) or invented look (look) with the same signed price the Brix36 app shows. Charges nothing. Returns creditAmount, operationId, quoteToken, priceVersion and approvalExpiresAt. Approval of the exact credits takes place in this chat; no link is created. When nothing can be offered, says so without claiming their references are complete. Creating an artist stays free.","description_similarity":null,"before_hash":null,"after_hash":"b51955357bc6f447c31dac6d29f2f597"},{"tool":"studio_release_create","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Creates an album, EP or single collection with title, type, year and artwork preset. Returns release summary and app project-creation links. Creation has no replay receipt; studio_releases_list exposes saved title/type/year after an uncertain response. No language model, generation or charge.","description_after":"Creates an album, EP or single collection with title, type, year and artwork preset. Returns release summary and app project-creation links. Creation has no replay receipt; the artist's release list exposes saved title/type/year after an uncertain response. No language model, generation or charge.","description_similarity":0.875,"before_hash":"49be618a9884d3b98b7d06af237c4479","after_hash":"38fde05b69c0e4c25b31e4c84e33bd77"},{"tool":"studio_reference_upload_link","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Returns the app reference-upload screen for an editable project, including for files over the 512 KiB inline limit. Uploaded results are listed by studio_references_list. No upload or generation occurs in this read.","description_after":"Returns the app reference-upload screen for an editable project, including for files over the 512 KiB inline limit. Uploaded results appear in the project's reference list. No upload or generation occurs in this read.","description_similarity":0.794,"before_hash":"cdbdeccb76e67992c631481068369cb3","after_hash":"16778ba572322c186c195a361a6400e5"},{"tool":"studio_artist_dna_write","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Saves customer-authored or approved creative facts as a new published Artist DNA version, preserving facts pinned by older projects. baseVersionId identifies the current version, or null when absent. Returns versionId and facts. Facts apply at once and need no pin; read them back with studio_artist_dna_read when writing a storyboard. Requires manager permission; no language model or credit charge.","description_after":"Saves customer-authored or approved creative facts as a new published Artist DNA version, preserving facts pinned by older projects. baseVersionId identifies the current version, or null when absent. Returns versionId and facts. Facts apply at once and need no pin. Requires manager permission; no language model or credit charge.","description_similarity":0.857,"before_hash":"84bf1e140f306b84a9d9c6fed5015157","after_hash":"4e9f6bcdd75dc412fcf6a4533c805dfe"},{"tool":"studio_artist_ready_made_choose","kind":"added","observed_at":"2026-10-15T07:16:26.216Z","fields":[],"description_before":null,"description_after":"Saves one Brix36 ready-made fictional portrait on an existing artist using the same service as the app. Requires artist permission and a starId from studio_ready_made_stars_list. Returns the saved reference pack and whether it was newly created; choosing the same star retains the existing pack. No image generation or credit charge. Current generation readiness is read separately with studio_artists_list.","description_similarity":null,"before_hash":null,"after_hash":"9789307dc4e3b14d21db93af42606946"},{"tool":"studio_ready_made_stars_list","kind":"added","observed_at":"2026-10-15T07:16:26.216Z","fields":[],"description_before":null,"description_after":"Lists the same free fictional character portraits offered by the Brix36 app, with each current star ID, name, description and versioned preview image. Read-only; creates no artist, image, generation or charge. Choose a portrait for an existing artist with studio_artist_ready_made_choose.","description_similarity":null,"before_hash":null,"after_hash":"3401d81d67e2132ac811557833dc5a10"},{"tool":"studio_list_skills","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description","inputSchema"],"description_before":"Searches Brix36 creative skills and style cards by keyword, medium or family. Returns summaries, resource URIs and nextCursor. Full bodies are available through studio_get_skill. No Brix36 language-model call.","description_after":"Searches Brix36 creative skills and style cards by keyword, medium or family. Returns summaries rather than full bodies, plus resource URIs and nextCursor. No Brix36 language-model call.","description_similarity":0.719,"before_hash":"2a66064ecf8546823116b52c91213cae","after_hash":"fdd4cf39da3cdaf4819052ef97c86446"},{"tool":"studio_song_understanding_write","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["inputSchema"],"description_before":null,"description_after":null,"description_similarity":null,"before_hash":"50f7392479cfd9c009ad05b0da112033","after_hash":"8de11d052bf45737e09ef371d2582324"},{"tool":"studio_storyboard_readiness","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Returns readyForVideo, shotsMissingStills, public likenessGate, look-test state and reviewStills for the exact project and revision. Each review binding identifies a saved stableShotId/stillAssetId. A likenessGate of not_required needs no likeness verdict; an absent look test needs no look acceptance. Required likeness verdicts are recorded by studio_storyboard_likeness_record; acceptance of the saved look set is recorded by studio_storyboard_look_accept. Video uses the original approved price and the existing readiness gates. No state change, provider call or charge.","description_after":"Returns readyForVideo, shotsMissingStills, public likenessGate, look-test state and reviewStills for the exact project and revision. Each review binding identifies a saved stableShotId/stillAssetId. A likenessGate of not_required needs no likeness verdict; an absent look test needs no look acceptance. Required likeness verdicts and acceptance of the saved look set are recorded separately. Video uses the original approved price and the existing readiness gates. No state change, provider call or charge.","description_similarity":0.877,"before_hash":"29f44f7cd333d66132e1a13600ace1b9","after_hash":"16cb209005e5a034f4736e610bea1f0a"},{"tool":"studio_video_status","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Waits up to 45 seconds while rendering, then returns draft, storyboard_ready, making, ready or needs_attention state, section progress counts, the studio's explanation and video.url when finished. Excluded sections are counted separately from failures. Provider fallback remains within the quoted price. No new work or charge.","description_after":"Waits up to 45 seconds while rendering, then returns draft, storyboard_ready, making, ready or needs_attention state, section progress counts, the studio's explanation and video.url when finished, with selected range labels, extent and original file links. Excluded sections are counted separately from failures. Provider fallback remains within the quoted price. No new work or charge.","description_similarity":0.852,"before_hash":"7e2759373b8c0bf01106a79e9c9f971d","after_hash":"1c996a0c663805ddb9ea6dcb6bab2357"},{"tool":"studio_ai_sharing_choose","kind":"added","observed_at":"2026-10-15T07:16:26.216Z","fields":[],"description_before":null,"description_after":"Records the person's own answer to the AI-sharing question after a creation tool returned ai_processing_choice_required. Call it only with their explicit reply: allowed true for Allow, false for Not now. Never infer consent from the request to create, and never answer on their behalf. Pass supersedes as the sequence that refusal returned (null when it was unset). Returns the stored answer; nothing is created or charged.","description_similarity":null,"before_hash":null,"after_hash":"6de7aa32cb1fb84521f65d9b7d7d71ad"},{"tool":"studio_video_export","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Returns a ready Music video or Film's signed master download link. Unfinished work returns a refusal. No public publishing, render, payment or extra export charge.","description_after":"Returns signed download links for existing finished Music video or Film results and selected range files, including results beside unfinished edits. No public publishing, render, payment or extra export charge.","description_similarity":0.457,"before_hash":"2087b9381444203c4814d4fef56e1952","after_hash":"600772b6e43e6d72f4bf6be02a7b7cbe"},{"tool":"studio_video_preview","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Returns generation status, the signed finished master URL when ready and a player for supported hosts. No generation or credit charge.","description_after":"Returns current edit status and signed playback links for an existing finished master or selected range files, including finished results beside unfinished edits. Supported hosts receive players. No generation or credit charge.","description_similarity":0.389,"before_hash":"48a01485edbb03429973b0c1aa8dde56","after_hash":"78afdd9710f8309cfd7056849f7dca53"},{"tool":"studio_film_script_write","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Imports finished screenplay-style Film text, with SCENE headings, NAME: dialogue and optional visualWorld. Preserves scenes, dialogue and speaker names, caps Film at five minutes and reports uncast speakers. Identical retries return the same plan. A visualWorld is required for quoting and can also be saved through studio_storyboard_prepare. No Brix36 planning model or credit charge.","description_after":"Imports finished screenplay-style Film text, with SCENE headings, NAME: dialogue and optional visualWorld. Preserves scenes, dialogue and speaker names, caps Film at five minutes and reports uncast speakers. Identical retries return the same plan. A visualWorld is required for quoting. No Brix36 planning model or credit charge.","description_similarity":0.843,"before_hash":"56fb26b0c1444b053cd93598d70a753c","after_hash":"4c1878195d4a6ad4c36ba1086db49373"},{"tool":"studio_media_upload_url","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Creates an HTTPS POST upload capability bound to the user, project, role, exact file metadata and SHA-256, expiring in 15 minutes. Returns uploadUrl, uploadToken, method and expiresAt. The upload accepts raw bytes with the declared MIME Content-Type; studio_media_confirm returns attachment status. No file bytes pass through MCP and no generation credits are spent.","description_after":"Creates an HTTPS POST upload capability bound to the user, project, role, exact file metadata and SHA-256, expiring in 15 minutes. Returns uploadUrl, uploadToken, method and expiresAt. The upload accepts raw bytes with the declared MIME Content-Type; attachment status is confirmed separately. No file bytes pass through MCP and no generation credits are spent.","description_similarity":0.882,"before_hash":"5385f3fdb327d9ccfa71f1029c38ec1f","after_hash":"d4dcdd40c8acf87b0f164141af894fd7"},{"tool":"studio_media_upload_widget","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"Opens a file picker for a song, artist photo or image/video reference on the specified project. The customer selects the file; bytes go directly to Brix36. Non-widget upload is available through studio_media_upload_url and studio_media_confirm. No paid work.","description_after":"Opens a file picker for a song, artist photo or image/video reference on the specified project. The customer selects the file; bytes go directly to Brix36. No paid work.","description_similarity":0.703,"before_hash":"f06009171fdad8f24a3bfe3e45e89c32","after_hash":"ef325d3802f07854649b5c48c29c37d9"},{"tool":"studio_songs_list","kind":"changed","observed_at":"2026-10-15T07:16:26.216Z","fields":["description"],"description_before":"List one artist songs using the app canonical grouping, including their available project versions. Returns a bounded songs page and nextCursor. Each song projectId can be read with studio_song_status or continued through the storyboard tools. Free; this does not upload or generate audio.","description_after":"List one artist songs using the app canonical grouping, including their available project versions. Returns a bounded songs page and nextCursor. Each song projectId identifies the project holding that song version. Free; this does not upload or generate audio.","description_similarity":0.689,"before_hash":"25066789c45ced34745caf165ddc8538","after_hash":"dc773f7b125e529febc9cde77c6cc953"},{"tool":"studio_project_artist_choice","kind":"removed","observed_at":"2026-10-11T18:33:53.063Z","fields":[],"description_before":"Records the customer's pin_current_dna, featured or not_featured project choice. Pinning binds the artist's published Artist DNA photos (their look) once and refuses closed or already-pinned windows; it needs a screened face photo, added with studio_artist_reference_add. Saved creative facts need no pin. Featured requires pinned DNA; presence is fixed after a fully directed storyboard. Returns identityPack or artistPresence with projectId/action. Pinning is not replayable; saved state is available from project reads. No generation, voice work, language model or charge.","description_after":null,"description_similarity":null,"before_hash":"cc0543a0505a1ca1ae2ea04ba42adc9e","after_hash":null},{"tool":"studio_storyboard_review","kind":"removed","observed_at":"2026-10-11T18:33:53.063Z","fields":[],"description_before":"Records the customer's explicit review of saved pictures using canonical likeness and key-look services. record_likeness binds confirmed/rejected to stableShotId and expectedStillAssetId. accept_look binds the complete saved key-look set in expectedStills to the reviewed stillAssetIds. Returns public likenessGate or lookTest. Changed pictures, lost access and stale revisions are refused. This records customer decisions, with no generation or charge. Likeness not_required does not require a likeness verdict.","description_after":null,"description_similarity":null,"before_hash":"48934f7754417c1510e4a6cf72c25243","after_hash":null},{"tool":"studio_storyboard_redo","kind":"removed","observed_at":"2026-10-11T18:33:53.063Z","fields":[],"description_before":"Prices requested picture changes by original projectId/operationId, a new requestId and selected stableShotIds. New approvals produce separate picture-only quotes containing operationId, quoteToken, revisionId, modelId, mode, priceVersion and totalCredits. Identical requestId retries return the original quotes. Historical approvals can complete their previously approved paid picture changes. No charge for quoting.","description_after":null,"description_similarity":null,"before_hash":"f910c230a2ff53fc65afefb927aee7f5","after_hash":null},{"tool":"studio_film_edit","kind":"removed","observed_at":"2026-10-11T18:33:53.063Z","fields":[],"description_before":"Applies a revision-bound Film edit: direction/references, cast, dialogue, visibility, sound, lip sync or 4–30 second scene duration. set_speech_voice applies useCharacterVoice to one character and sceneIndex: true uses saved Artist DNA voice; false uses the selected video model with optional voiceDescription. Unsupported or mixed native/saved routes in one scene refuse before charging. A prompt with sceneIndex:null and empty text binds whole-Film references. add_line returns the new line's lineId. Identical operationId/input retries reconcile the same edit. No model call or credit charge.","description_after":null,"description_similarity":null,"before_hash":"8a9dc289d4950c08b385f488ad2628be","after_hash":null},{"tool":"studio_storyboard_picture_changes_prepare","kind":"added","observed_at":"2026-10-11T18:33:53.063Z","fields":[],"description_before":null,"description_after":"Prices requested picture changes by original projectId/operationId, a new requestId and selected stableShotIds. New approvals produce separate picture-only quotes containing operationId, quoteToken, revisionId, modelId, mode, priceVersion and totalCredits. Identical requestId retries return the original quotes. Historical approvals can complete their previously approved paid picture changes. No charge for quoting.","description_similarity":null,"before_hash":null,"after_hash":"32831c445d097020725462145c874aeb"},{"tool":"studio_film_set_duration","kind":"added","observed_at":"2026-10-11T18:33:53.063Z","fields":[],"description_before":null,"description_after":"Set one scene’s duration, normalized to 4–30 seconds; later scenes move to follow it. Read studio_film_read first. Uses the current revision and stable operationId; retry identical inputs only. No model call or credit charge.","description_similarity":null,"before_hash":null,"after_hash":"3afdf533cd64495c22923d9182d7e9a0"},{"tool":"studio_film_set_lip_sync","kind":"added","observed_at":"2026-10-11T18:33:53.063Z","fields":[],"description_before":null,"description_after":"Set the lip-sync choice for one saved scene. Read studio_film_read first. Uses the current revision and stable operationId; retry identical inputs only. No model call or credit charge.","description_similarity":null,"before_hash":null,"after_hash":"32ab3d0ebc4c1b5d0302b2d98d0de1c7"},{"tool":"studio_film_toggle_sound","kind":"added","observed_at":"2026-10-11T18:33:53.063Z","fields":[],"description_before":null,"description_after":"Toggle one Film music, background or effects layer. Read studio_film_read first. Uses the current revision and stable operationId; retry identical inputs only. No model call or credit charge.","description_similarity":null,"before_hash":null,"after_hash":"4ef50315e15d13b0e374e8b4f5095e5e"},{"tool":"studio_film_toggle_camera","kind":"added","observed_at":"2026-10-11T18:33:53.063Z","fields":[],"description_before":null,"description_after":"Toggle whether one dialogue line’s speaker is on camera. Read studio_film_read first. Uses the current revision and stable operationId; retry identical inputs only. No model call or credit charge.","description_similarity":null,"before_hash":null,"after_hash":"380c3d602effc4634c0f59f8aea71cc1"}],"next_before":"619719","next_actions":[{"action":"list_changes","description":"Older changes","href":"/v1/servers/com.brix36%2Fbrix36/changes?before=619719&limit=50"}]}