gooseworks 0.6.0-dev.67.fb8abd9f → 0.6.0-dev.70.37e3826a
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/dist/skills/server-entry-skills.d.ts +2 -2
- package/dist/skills/server-entry-skills.d.ts.map +1 -1
- package/dist/skills/server-entry-skills.js +45 -33
- package/dist/skills/server-entry-skills.js.map +1 -1
- package/package.json +2 -2
- package/skills/goose-video/SKILL.md +12 -12
- package/skills/make-custom-video/SKILL.md +27 -17
- package/skills/manifest.json +3 -3
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/** The rulebook version of the unchanged shared rules snapshot. */
|
|
2
2
|
export declare const SERVER_RULEBOOK_VERSION = "1.3.2";
|
|
3
3
|
export declare const SERVER_VIDEO_ENTRY_SKILLS: {
|
|
4
|
-
readonly 'goose-video': "---\nname: goose-video\ndescription: \"Make a video ad in this chat
|
|
5
|
-
readonly 'make-custom-video': "---\nname: make-custom-video\ndescription: \"Create a custom video with sourced product accuracy, explicit sound routing and exact-final audiovisual review.\"\nversion: 3.
|
|
4
|
+
readonly 'goose-video': "---\nname: goose-video\ndescription: \"Make a video ad in this chat from a real reference ad, found or theirs; styles are the fallback. Follow every answer's next_step.\"\nversion: 4.5.0\n---\n\n# GooseWorks video\n\nFrom an installed entry, first catalog_fetch type skill goose-video on this same connection and follow that body. An entry already fetched in this run needs no repeat fetch.\n\nFor a video already started, call video_read and follow its next_step.\n\nNew videos default to a real reference ad remade for the brand (custom); ready-made styles are the fallback. Start with get_started (wants video, request). A card is not a pick or proof of viewing.\n\n1. The request. If they haven't said what the video is about, ask in one short question.\n2. The brand. Ask which brand only when brand_read lists several; with one, use it.\n3. The product. Named or none wanted: find its id with brand_read (sections: products), or use []. Otherwise the product card asks: say one line and wait. Without cards, ask which product by name; use the only one, or go on with none. Never ask again after a pick.\n4. Research. Read the kit, learnings and selected products with brand_read, then knowledge_search. Verify product size/use from facts and size-reference photos; resolve essential unknowns before planning. Note what to say and avoid.\n5. The reference. Their own video ad: video_create with style custom, request, products, its reference_url and a new UUID idempotency_key, then the custom rule. Otherwise, custom asked or not, video_references (action find) with the request and products ([] for none); it's free and reuses the brand's saved list unless they want new ideas (fresh: true). Show it as the answer says; they pick.\n6. The pick. video_references (action pick) with candidate_id, request, products and a new UUID idempotency_key starts the custom video. Then the custom rule.\n7. Styles, only if no found ad fits or they ask for a style or template: video_formats with the request and products; they pick. Card on screen: one line and wait; else print its table as it is. Then video_create with that style and the products.\n\n## A supplied video reference comes first\n\nWatch the whole video with sound before choosing a style or writing a custom plan, or use the server's measured reference profile. URLs, titles, thumbnails and frames are not viewing. Log the hook, scene order, pace, speech, framing, product interactions, text and ending with timestamps and gaps. Unreadable essentials need an accessible video or their brief-only choice; never claim a viewing.\nStyles vs a reference: fetch plausible templates and compare plan_note, scenes, duration, cast, sound and assets; titles and rankings prove no fit.\nCustom route (a picked or supplied reference, or explicit custom): catalog_fetch type skill make-custom-video on this connection before a project write and follow it: full harness, current schemas, two authenticated approvals, cumulative budgets, verified execution. Keep their mechanics and assets. If anything is unavailable, say so and keep the brief; never run a template's renderer as custom, import the reference as a finished video, use retired actions or switch environments. Fetching a skill proves no execution capability.\n\n## Rules\n\n- Talk to marketers: what they get and decide, never how it's made.\n- Never mention tools, ids, JSON, commands, software, vendors, models, timings, retries or your checks.\n- Everything happens here: never ask the customer to install anything or use a CLI, slash command or other app, except a video's make command when a next_step gives it; its last line says who starts it, and where this app does, never show it to them (original videos follow their own). Never give any other command, sign-in step or setting, and never ask them a technical question.\n- Money is a credit number exactly as an answer gives it: never dollars or your own math.\n- Follow the next_step in every answer.\n- Card on screen (display_hint \"widget\"): one short line at most, then the wait in its next_step or end your turn; never re-list it or open a question box.\n- Paid work needs the customer's yes to the credit total first, on the card or in chat at the price shown; never decide it for them, and pass on a yes only once they gave it to that total.\n- If you can run commands on the customer's computer, ask for the yes with the answer's own question: it says the video is then made on their computer, so that one yes covers starting it.\n- A yes is to the credit total the customer was shown: their press on the plan card, or their yes in chat sent with that total.\n- Every video approval, including a higher price or a priced fix, can happen in this chat. Show the plan and its price here when no card is visible; cards and websites are optional for approval.\n- Never invent an offer, a claim or proof.\n- GooseWorks holds every provider key and bills the work: never ask for a key, token, password or ad account id, and never call a vendor yourself.\n";
|
|
5
|
+
readonly 'make-custom-video': "---\nname: make-custom-video\ndescription: \"Create a custom video with sourced product accuracy, explicit sound routing and exact-final audiovisual review.\"\nversion: 3.8.2\nrequires_skills: [video-production-harness]\nharness_binding: gooseworks/video-actions/v1\n---\n\n# Human version\n\nThe owner approves the script, then the actual ingredients and budget, in this chat; cards and Studio are optional. Production keeps the reference's format, the product and the sound. GooseWorks measures and judges the final itself.\n\n---\n\n# Agent version\n\n## Non-negotiables\n\n1. Watch every reference end to end with sound, or use the server's measured reference profile, and save the evidence before any script.\n2. Write the script with write-video-ad-script (catalog_fetch it; scripts without it are refused).\n3. Keep the reference's format: people stay people, demos stay demos, sound type stays. Otherwise list the change in changes_from_reference.\n4. The voice is the master clock. Never cut or retime sound apart from a talking face.\n5. Always real sound. No silent or tone tracks unless the owner asked for silence.\n6. Show the product correctly, at real size, from real photos.\n7. The review is listened or measured, never claimed.\n8. Under a deadline, deliver fewer correct videos. Never downgrade a format.\n\nRead one file per call; if output says truncated, re-read in parts. Fetch make-custom-video on this connection and read live schemas before writes. Keep this environment; no retired actions or reference-as-final import.\n\n## Load and resume\n\nFetch the complete video-production-harness with catalog_fetch delivery archive; read SKILL.md and its phase references and keep version/contentHash/files. Mixed or incomplete packages block work. Resume recorded jobs with video_read; never resend a batch instead of polling.\nCustom skips the style picker. With a supplied reference, create once with style custom, its reference_url and a UUID idempotency_key reused on retries. Without one, run video_references find with the request and products and show the list; the owner's pick goes to video_references pick, which creates the project. Never use a template's demo as the reference. Keep requested mechanics, assets, products and campaign. Resume the same project, plan_revision, approvals and production_manifest.\n\n## Reference, product and creative contract\n\nRead brand_read and knowledge_search. Source product geometry, colour, label, allowed use and scale; size-sensitive shots need dimensions or a known-scale photo. Never guess capacity or invent a real process.\nSave reference_observation bound to media_id/media_revision with duration, full coverage, audio_perception (listened, or measured from the server's sound profile), motion_perception and timed picture/audio findings. Skipping a reference needs the owner's brief-only user_quote.\nSave draft.creative_contract: speech_mode, soundtrack_modes, required_features, reference_map per scene (beat/action/proof/sound), sourced product_grounding, voice_plan and changes_from_reference. Native speech keeps source audio; external speech over a speaking face needs exact-audio lip sync. No detected words never authorizes mute.\nMatch capture/finish to the brief/reference; phone texture only for phone footage. Read harness references/talking-actor.md for speaking people: three actor options when needed, then playable voice choices beside the selected actor. Compare the generated voice with its audition.\n\n## Save and review twice\n\nvideo_change needs expected_revision and the current brand_context_digest; never author server context. Price paid requests free and read-only with data_price_provider (up to 20 per call; follow any price_unknown entry's next_step first). Save the shot_list with the script so the server prices Standard and Best, and put picture-upgrade money (about two pictures at high) in render_estimate.upgrade_allowance; it pays for no clip.\nShow the full saved script, then the actual playable ingredients and exact cumulative budget, here. At the script, show both approval_quote.tier_quotes totals as given, with no math of your own, and let the owner pick. Seedance is in neither total: offer each seedance_addons price, and only the owner's yes adds it. After the owner's explicit yes, call video_approve with the custom phase, review_token and total_credits from custom_review.approval_quote (with their quality_tier and its total when there are two), expected_revision and their words as user_quote. Never infer consent or approve yourself. Honor Stop.\n\n## Produce, assemble and deliver\n\nWith fitting parts, save the kit block and follow video_make after ingredient approval; otherwise run on the customer's verified shell, never a cloud sandbox. Report progress per paid piece.\nReview the first take and the riskiest product action before batching. Send every clip to clip_check; the final may use only checked bytes. Save full prompts/settings and source-byte clip reviews as custom production.\nBuild the source-linked assembly_timeline: native picture and audio ranges stay together, pauses and freezes are declared, real soundtrack cues. Edits invalidate affected evidence.\nReview the exact final at normal speed: listen, or rely on the server's final_measure and frame judge (measured). Save quality_report.content_review with final SHA-256, timeline and creative_contract revisions, reviewer, capabilities, full coverage and per-dimension findings. Serious defects block delivery.\nDirect builds also need the stored rebuild recipe (references/recipe-format.md). Complete with the confirmed same-project H.264/AAC MP4 URL and report complete again while server checks run. Kit uploads follow the saved review request. Pin only the checked version.\n\nUse plain words and returned credits. Never invent claims, approvals, assets or passing checks.\n";
|
|
6
6
|
};
|
|
7
7
|
export type ServerVideoEntrySlug = keyof typeof SERVER_VIDEO_ENTRY_SKILLS;
|
|
8
8
|
/** renderEntrySkillRules(product) for the products the CLI's own entry skills cover. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-entry-skills.d.ts","sourceRoot":"","sources":["../../src/skills/server-entry-skills.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server-entry-skills.d.ts","sourceRoot":"","sources":["../../src/skills/server-entry-skills.ts"],"names":[],"mappings":"AAuBA,mEAAmE;AACnE,eAAO,MAAM,uBAAuB,UAAU,CAAC;AAE/C,eAAO,MAAM,yBAAyB;;;CAoG5B,CAAC;AAEX,MAAM,MAAM,oBAAoB,GAAG,MAAM,OAAO,yBAAyB,CAAC;AAE1E,wFAAwF;AACxF,eAAO,MAAM,wBAAwB;;;;CA8B3B,CAAC"}
|
|
@@ -7,11 +7,13 @@
|
|
|
7
7
|
// apps/api/src/services/playbooks/entry-skill.ts buildVideoEntrySkill(slug)
|
|
8
8
|
// apps/api/src/app-mcp-server/lib/video-policy.ts renderEntrySkillRules(product)
|
|
9
9
|
//
|
|
10
|
-
// Custom entry source: gooseworks-app codex/custom-video-quality-oct14 @ be9ae35eca60339116dce791d1fc3e96a6876799, version 3.6.0.
|
|
11
10
|
// Approval fragments: gooseworks-app PR #2047, captured 2026-10-14.
|
|
12
|
-
//
|
|
13
|
-
//
|
|
14
|
-
//
|
|
11
|
+
// goose-video 4.5.0 (custom-first: a found or supplied reference ad by default) is copied whole from
|
|
12
|
+
// gooseworks-app akhil/custom-first-default @ b229eec47 (PR athina-ai/gooseworks-app#2076), rules block included (rulebook 1.5.1).
|
|
13
|
+
// make-custom-video 3.8.0 (custom-first: video_references find and pick when no reference is given; price check and
|
|
14
|
+
// Standard/Best prices included) is copied whole from gooseworks-app akhil/custom-first-default @ 50472f801 (PR #2076).
|
|
15
|
+
// Actor/voice selection and format guidance backported from the custom entry companion PR (2026-10-19).
|
|
16
|
+
// Custom review wording keeps approvals in this chat.
|
|
15
17
|
// Other entries and rule blocks retain the earlier source above.
|
|
16
18
|
// Video entries combine the recorded server snapshots above. The rules blocks are
|
|
17
19
|
// the rulebook's entry-skill rules for the skills the CLI writes itself
|
|
@@ -26,8 +28,8 @@ exports.SERVER_RULEBOOK_VERSION = '1.3.2';
|
|
|
26
28
|
exports.SERVER_VIDEO_ENTRY_SKILLS = {
|
|
27
29
|
'goose-video': `---
|
|
28
30
|
name: goose-video
|
|
29
|
-
description: "Make a video ad in this chat
|
|
30
|
-
version: 4.
|
|
31
|
+
description: "Make a video ad in this chat from a real reference ad, found or theirs; styles are the fallback. Follow every answer's next_step."
|
|
32
|
+
version: 4.5.0
|
|
31
33
|
---
|
|
32
34
|
|
|
33
35
|
# GooseWorks video
|
|
@@ -36,32 +38,32 @@ From an installed entry, first catalog_fetch type skill goose-video on this same
|
|
|
36
38
|
|
|
37
39
|
For a video already started, call video_read and follow its next_step.
|
|
38
40
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
For other new videos start with get_started (wants video, request). A card is not a style choice or proof of viewing. Follow the reference rule before style selection or a plan.
|
|
41
|
+
New videos default to a real reference ad remade for the brand (custom); ready-made styles are the fallback. Start with get_started (wants video, request). A card is not a pick or proof of viewing.
|
|
42
42
|
|
|
43
43
|
1. The request. If they haven't said what the video is about, ask in one short question.
|
|
44
44
|
2. The brand. Ask which brand only when brand_read lists several; with one, use it.
|
|
45
45
|
3. The product. Named or none wanted: find its id with brand_read (sections: products), or use []. Otherwise the product card asks: say one line and wait. Without cards, ask which product by name; use the only one, or go on with none. Never ask again after a pick.
|
|
46
|
-
4. Research. Read the
|
|
47
|
-
5. The
|
|
48
|
-
6. The
|
|
46
|
+
4. Research. Read the kit, learnings and selected products with brand_read, then knowledge_search. Verify product size/use from facts and size-reference photos; resolve essential unknowns before planning. Note what to say and avoid.
|
|
47
|
+
5. The reference. Their own video ad: video_create with style custom, request, products, its reference_url and a new UUID idempotency_key, then the custom rule. Otherwise, custom asked or not, video_references (action find) with the request and products ([] for none); it's free and reuses the brand's saved list unless they want new ideas (fresh: true). Show it as the answer says; they pick.
|
|
48
|
+
6. The pick. video_references (action pick) with candidate_id, request, products and a new UUID idempotency_key starts the custom video. Then the custom rule.
|
|
49
|
+
7. Styles, only if no found ad fits or they ask for a style or template: video_formats with the request and products; they pick. Card on screen: one line and wait; else print its table as it is. Then video_create with that style and the products.
|
|
49
50
|
|
|
50
51
|
## A supplied video reference comes first
|
|
51
52
|
|
|
52
|
-
Watch the
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
Watch the whole video with sound before choosing a style or writing a custom plan, or use the server's measured reference profile. URLs, titles, thumbnails and frames are not viewing. Log the hook, scene order, pace, speech, framing, product interactions, text and ending with timestamps and gaps. Unreadable essentials need an accessible video or their brief-only choice; never claim a viewing.
|
|
54
|
+
Styles vs a reference: fetch plausible templates and compare plan_note, scenes, duration, cast, sound and assets; titles and rankings prove no fit.
|
|
55
|
+
Custom route (a picked or supplied reference, or explicit custom): catalog_fetch type skill make-custom-video on this connection before a project write and follow it: full harness, current schemas, two authenticated approvals, cumulative budgets, verified execution. Keep their mechanics and assets. If anything is unavailable, say so and keep the brief; never run a template's renderer as custom, import the reference as a finished video, use retired actions or switch environments. Fetching a skill proves no execution capability.
|
|
55
56
|
|
|
56
57
|
## Rules
|
|
57
58
|
|
|
58
59
|
- Talk to marketers: what they get and decide, never how it's made.
|
|
59
60
|
- Never mention tools, ids, JSON, commands, software, vendors, models, timings, retries or your checks.
|
|
60
|
-
- Everything happens here: never ask the customer to install anything or use a CLI, slash command or other app, except a video's make command when a next_step gives it
|
|
61
|
+
- Everything happens here: never ask the customer to install anything or use a CLI, slash command or other app, except a video's make command when a next_step gives it; its last line says who starts it, and where this app does, never show it to them (original videos follow their own). Never give any other command, sign-in step or setting, and never ask them a technical question.
|
|
61
62
|
- Money is a credit number exactly as an answer gives it: never dollars or your own math.
|
|
62
63
|
- Follow the next_step in every answer.
|
|
63
64
|
- Card on screen (display_hint "widget"): one short line at most, then the wait in its next_step or end your turn; never re-list it or open a question box.
|
|
64
65
|
- Paid work needs the customer's yes to the credit total first, on the card or in chat at the price shown; never decide it for them, and pass on a yes only once they gave it to that total.
|
|
66
|
+
- If you can run commands on the customer's computer, ask for the yes with the answer's own question: it says the video is then made on their computer, so that one yes covers starting it.
|
|
65
67
|
- A yes is to the credit total the customer was shown: their press on the plan card, or their yes in chat sent with that total.
|
|
66
68
|
- Every video approval, including a higher price or a priced fix, can happen in this chat. Show the plan and its price here when no card is visible; cards and websites are optional for approval.
|
|
67
69
|
- Never invent an offer, a claim or proof.
|
|
@@ -70,46 +72,56 @@ If no available style fits, or they explicitly want custom, catalog_fetch type s
|
|
|
70
72
|
'make-custom-video': `---
|
|
71
73
|
name: make-custom-video
|
|
72
74
|
description: "Create a custom video with sourced product accuracy, explicit sound routing and exact-final audiovisual review."
|
|
73
|
-
version: 3.
|
|
75
|
+
version: 3.8.2
|
|
74
76
|
requires_skills: [video-production-harness]
|
|
75
77
|
harness_binding: gooseworks/video-actions/v1
|
|
76
78
|
---
|
|
77
79
|
|
|
78
80
|
# Human version
|
|
79
81
|
|
|
80
|
-
The owner approves the script, then actual ingredients and budget in this chat; cards and Studio are optional. Production
|
|
82
|
+
The owner approves the script, then the actual ingredients and budget, in this chat; cards and Studio are optional. Production keeps the reference's format, the product and the sound. GooseWorks measures and judges the final itself.
|
|
81
83
|
|
|
82
84
|
---
|
|
83
85
|
|
|
84
86
|
# Agent version
|
|
85
87
|
|
|
86
|
-
|
|
88
|
+
## Non-negotiables
|
|
89
|
+
|
|
90
|
+
1. Watch every reference end to end with sound, or use the server's measured reference profile, and save the evidence before any script.
|
|
91
|
+
2. Write the script with write-video-ad-script (catalog_fetch it; scripts without it are refused).
|
|
92
|
+
3. Keep the reference's format: people stay people, demos stay demos, sound type stays. Otherwise list the change in changes_from_reference.
|
|
93
|
+
4. The voice is the master clock. Never cut or retime sound apart from a talking face.
|
|
94
|
+
5. Always real sound. No silent or tone tracks unless the owner asked for silence.
|
|
95
|
+
6. Show the product correctly, at real size, from real photos.
|
|
96
|
+
7. The review is listened or measured, never claimed.
|
|
97
|
+
8. Under a deadline, deliver fewer correct videos. Never downgrade a format.
|
|
98
|
+
|
|
99
|
+
Read one file per call; if output says truncated, re-read in parts. Fetch make-custom-video on this connection and read live schemas before writes. Keep this environment; no retired actions or reference-as-final import.
|
|
87
100
|
|
|
88
101
|
## Load and resume
|
|
89
102
|
|
|
90
|
-
Fetch the complete video-production-harness with catalog_fetch delivery archive
|
|
91
|
-
|
|
103
|
+
Fetch the complete video-production-harness with catalog_fetch delivery archive; read SKILL.md and its phase references and keep version/contentHash/files. Mixed or incomplete packages block work. Resume recorded jobs with video_read; never resend a batch instead of polling.
|
|
104
|
+
Custom skips the style picker. With a supplied reference, create once with style custom, its reference_url and a UUID idempotency_key reused on retries. Without one, run video_references find with the request and products and show the list; the owner's pick goes to video_references pick, which creates the project. Never use a template's demo as the reference. Keep requested mechanics, assets, products and campaign. Resume the same project, plan_revision, approvals and production_manifest.
|
|
92
105
|
|
|
93
106
|
## Reference, product and creative contract
|
|
94
107
|
|
|
95
|
-
Read brand_read and knowledge_search. Source product geometry, colour, label, allowed use and scale
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
Use connected creator language and reference-appropriate pace. Reuse accepted character/voice/world/music/SFX/overlay examples with provenance. Emotion controls must fit the live schema. Candidates need qualification; never silently switch model families.
|
|
108
|
+
Read brand_read and knowledge_search. Source product geometry, colour, label, allowed use and scale; size-sensitive shots need dimensions or a known-scale photo. Never guess capacity or invent a real process.
|
|
109
|
+
Save reference_observation bound to media_id/media_revision with duration, full coverage, audio_perception (listened, or measured from the server's sound profile), motion_perception and timed picture/audio findings. Skipping a reference needs the owner's brief-only user_quote.
|
|
110
|
+
Save draft.creative_contract: speech_mode, soundtrack_modes, required_features, reference_map per scene (beat/action/proof/sound), sourced product_grounding, voice_plan and changes_from_reference. Native speech keeps source audio; external speech over a speaking face needs exact-audio lip sync. No detected words never authorizes mute.
|
|
111
|
+
Match capture/finish to the brief/reference; phone texture only for phone footage. Read harness references/talking-actor.md for speaking people: three actor options when needed, then playable voice choices beside the selected actor. Compare the generated voice with its audition.
|
|
100
112
|
|
|
101
113
|
## Save and review twice
|
|
102
114
|
|
|
103
|
-
video_change needs expected_revision and current brand_context_digest
|
|
104
|
-
Show the full saved script
|
|
115
|
+
video_change needs expected_revision and the current brand_context_digest; never author server context. Price paid requests free and read-only with data_price_provider (up to 20 per call; follow any price_unknown entry's next_step first). Save the shot_list with the script so the server prices Standard and Best, and put picture-upgrade money (about two pictures at high) in render_estimate.upgrade_allowance; it pays for no clip.
|
|
116
|
+
Show the full saved script, then the actual playable ingredients and exact cumulative budget, here. At the script, show both approval_quote.tier_quotes totals as given, with no math of your own, and let the owner pick. Seedance is in neither total: offer each seedance_addons price, and only the owner's yes adds it. After the owner's explicit yes, call video_approve with the custom phase, review_token and total_credits from custom_review.approval_quote (with their quality_tier and its total when there are two), expected_revision and their words as user_quote. Never infer consent or approve yourself. Honor Stop.
|
|
105
117
|
|
|
106
118
|
## Produce, assemble and deliver
|
|
107
119
|
|
|
108
|
-
|
|
109
|
-
Review the first
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
Direct builds also need the stored rebuild recipe (references/recipe-format.md). Complete with the confirmed same-project H.264/AAC MP4 URL and
|
|
120
|
+
With fitting parts, save the kit block and follow video_make after ingredient approval; otherwise run on the customer's verified shell, never a cloud sandbox. Report progress per paid piece.
|
|
121
|
+
Review the first take and the riskiest product action before batching. Send every clip to clip_check; the final may use only checked bytes. Save full prompts/settings and source-byte clip reviews as custom production.
|
|
122
|
+
Build the source-linked assembly_timeline: native picture and audio ranges stay together, pauses and freezes are declared, real soundtrack cues. Edits invalidate affected evidence.
|
|
123
|
+
Review the exact final at normal speed: listen, or rely on the server's final_measure and frame judge (measured). Save quality_report.content_review with final SHA-256, timeline and creative_contract revisions, reviewer, capabilities, full coverage and per-dimension findings. Serious defects block delivery.
|
|
124
|
+
Direct builds also need the stored rebuild recipe (references/recipe-format.md). Complete with the confirmed same-project H.264/AAC MP4 URL and report complete again while server checks run. Kit uploads follow the saved review request. Pin only the checked version.
|
|
113
125
|
|
|
114
126
|
Use plain words and returned credits. Never invent claims, approvals, assets or passing checks.
|
|
115
127
|
`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-entry-skills.js","sourceRoot":"","sources":["../../src/skills/server-entry-skills.ts"],"names":[],"mappings":";AAAA,iFAAiF;AACjF,uEAAuE;AACvE,8EAA8E;AAC9E,EAAE;AACF,uEAAuE;AACvE,mFAAmF;AACnF,uFAAuF;AACvF,EAAE;AACF,
|
|
1
|
+
{"version":3,"file":"server-entry-skills.js","sourceRoot":"","sources":["../../src/skills/server-entry-skills.ts"],"names":[],"mappings":";AAAA,iFAAiF;AACjF,uEAAuE;AACvE,8EAA8E;AAC9E,EAAE;AACF,uEAAuE;AACvE,mFAAmF;AACnF,uFAAuF;AACvF,EAAE;AACF,oEAAoE;AACpE,qGAAqG;AACrG,mIAAmI;AACnI,oHAAoH;AACpH,wHAAwH;AACxH,wGAAwG;AACxG,sDAAsD;AACtD,iEAAiE;AACjE,kFAAkF;AAClF,wEAAwE;AACxE,6EAA6E;AAC7E,6EAA6E;AAC7E,sEAAsE;AACtE,iEAAiE;;;AAEjE,mEAAmE;AACtD,QAAA,uBAAuB,GAAG,OAAO,CAAC;AAElC,QAAA,yBAAyB,GAAG;IACvC,aAAa,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0ChB;IACC,mBAAmB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuDtB;CACS,CAAC;AAIX,wFAAwF;AAC3E,QAAA,wBAAwB,GAAG;IACtC,GAAG,EAAE;;;;;;;;mJAQ4I;IACjJ,GAAG,EAAE;;;;;;;;;mJAS4I;IACjJ,MAAM,EAAE;;;;;;;;;mJASyI;CACzI,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gooseworks",
|
|
3
|
-
"version": "0.6.0-dev.
|
|
3
|
+
"version": "0.6.0-dev.70.37e3826a",
|
|
4
4
|
"description": "GooseWorks CLI — give your coding agent real data tools",
|
|
5
5
|
"bin": {
|
|
6
6
|
"gooseworks": "./dist/index.js"
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
"homepage": "https://gooseworks.ai",
|
|
78
78
|
"author": "GooseWorks <help@gooseworks.ai>",
|
|
79
79
|
"gooseworksRelease": {
|
|
80
|
-
"commit": "
|
|
80
|
+
"commit": "37e3826afeaf24eea5a52c7c20def5c3b61606dd",
|
|
81
81
|
"branch": "dev"
|
|
82
82
|
}
|
|
83
83
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: goose-video
|
|
3
|
-
description: "Make a video ad in this chat
|
|
4
|
-
version: 4.
|
|
3
|
+
description: "Make a video ad in this chat from a real reference ad, found or theirs; styles are the fallback. Follow every answer's next_step."
|
|
4
|
+
version: 4.5.0
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# GooseWorks video
|
|
@@ -10,32 +10,32 @@ From an installed entry, first catalog_fetch type skill goose-video on this same
|
|
|
10
10
|
|
|
11
11
|
For a video already started, call video_read and follow its next_step.
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
For other new videos start with get_started (wants video, request). A card is not a style choice or proof of viewing. Follow the reference rule before style selection or a plan.
|
|
13
|
+
New videos default to a real reference ad remade for the brand (custom); ready-made styles are the fallback. Start with get_started (wants video, request). A card is not a pick or proof of viewing.
|
|
16
14
|
|
|
17
15
|
1. The request. If they haven't said what the video is about, ask in one short question.
|
|
18
16
|
2. The brand. Ask which brand only when brand_read lists several; with one, use it.
|
|
19
17
|
3. The product. Named or none wanted: find its id with brand_read (sections: products), or use []. Otherwise the product card asks: say one line and wait. Without cards, ask which product by name; use the only one, or go on with none. Never ask again after a pick.
|
|
20
|
-
4. Research. Read the
|
|
21
|
-
5. The
|
|
22
|
-
6. The
|
|
18
|
+
4. Research. Read the kit, learnings and selected products with brand_read, then knowledge_search. Verify product size/use from facts and size-reference photos; resolve essential unknowns before planning. Note what to say and avoid.
|
|
19
|
+
5. The reference. Their own video ad: video_create with style custom, request, products, its reference_url and a new UUID idempotency_key, then the custom rule. Otherwise, custom asked or not, video_references (action find) with the request and products ([] for none); it's free and reuses the brand's saved list unless they want new ideas (fresh: true). Show it as the answer says; they pick.
|
|
20
|
+
6. The pick. video_references (action pick) with candidate_id, request, products and a new UUID idempotency_key starts the custom video. Then the custom rule.
|
|
21
|
+
7. Styles, only if no found ad fits or they ask for a style or template: video_formats with the request and products; they pick. Card on screen: one line and wait; else print its table as it is. Then video_create with that style and the products.
|
|
23
22
|
|
|
24
23
|
## A supplied video reference comes first
|
|
25
24
|
|
|
26
|
-
Watch the
|
|
27
|
-
|
|
28
|
-
|
|
25
|
+
Watch the whole video with sound before choosing a style or writing a custom plan, or use the server's measured reference profile. URLs, titles, thumbnails and frames are not viewing. Log the hook, scene order, pace, speech, framing, product interactions, text and ending with timestamps and gaps. Unreadable essentials need an accessible video or their brief-only choice; never claim a viewing.
|
|
26
|
+
Styles vs a reference: fetch plausible templates and compare plan_note, scenes, duration, cast, sound and assets; titles and rankings prove no fit.
|
|
27
|
+
Custom route (a picked or supplied reference, or explicit custom): catalog_fetch type skill make-custom-video on this connection before a project write and follow it: full harness, current schemas, two authenticated approvals, cumulative budgets, verified execution. Keep their mechanics and assets. If anything is unavailable, say so and keep the brief; never run a template's renderer as custom, import the reference as a finished video, use retired actions or switch environments. Fetching a skill proves no execution capability.
|
|
29
28
|
|
|
30
29
|
## Rules
|
|
31
30
|
|
|
32
31
|
- Talk to marketers: what they get and decide, never how it's made.
|
|
33
32
|
- Never mention tools, ids, JSON, commands, software, vendors, models, timings, retries or your checks.
|
|
34
|
-
- Everything happens here: never ask the customer to install anything or use a CLI, slash command or other app, except a video's make command when a next_step gives it
|
|
33
|
+
- Everything happens here: never ask the customer to install anything or use a CLI, slash command or other app, except a video's make command when a next_step gives it; its last line says who starts it, and where this app does, never show it to them (original videos follow their own). Never give any other command, sign-in step or setting, and never ask them a technical question.
|
|
35
34
|
- Money is a credit number exactly as an answer gives it: never dollars or your own math.
|
|
36
35
|
- Follow the next_step in every answer.
|
|
37
36
|
- Card on screen (display_hint "widget"): one short line at most, then the wait in its next_step or end your turn; never re-list it or open a question box.
|
|
38
37
|
- Paid work needs the customer's yes to the credit total first, on the card or in chat at the price shown; never decide it for them, and pass on a yes only once they gave it to that total.
|
|
38
|
+
- If you can run commands on the customer's computer, ask for the yes with the answer's own question: it says the video is then made on their computer, so that one yes covers starting it.
|
|
39
39
|
- A yes is to the credit total the customer was shown: their press on the plan card, or their yes in chat sent with that total.
|
|
40
40
|
- Every video approval, including a higher price or a priced fix, can happen in this chat. Show the plan and its price here when no card is visible; cards and websites are optional for approval.
|
|
41
41
|
- Never invent an offer, a claim or proof.
|
|
@@ -1,45 +1,55 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: make-custom-video
|
|
3
3
|
description: "Create a custom video with sourced product accuracy, explicit sound routing and exact-final audiovisual review."
|
|
4
|
-
version: 3.
|
|
4
|
+
version: 3.8.2
|
|
5
5
|
requires_skills: [video-production-harness]
|
|
6
6
|
harness_binding: gooseworks/video-actions/v1
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
# Human version
|
|
10
10
|
|
|
11
|
-
The owner approves the script, then actual ingredients and budget in this chat; cards and Studio are optional. Production
|
|
11
|
+
The owner approves the script, then the actual ingredients and budget, in this chat; cards and Studio are optional. Production keeps the reference's format, the product and the sound. GooseWorks measures and judges the final itself.
|
|
12
12
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
# Agent version
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
## Non-negotiables
|
|
18
|
+
|
|
19
|
+
1. Watch every reference end to end with sound, or use the server's measured reference profile, and save the evidence before any script.
|
|
20
|
+
2. Write the script with write-video-ad-script (catalog_fetch it; scripts without it are refused).
|
|
21
|
+
3. Keep the reference's format: people stay people, demos stay demos, sound type stays. Otherwise list the change in changes_from_reference.
|
|
22
|
+
4. The voice is the master clock. Never cut or retime sound apart from a talking face.
|
|
23
|
+
5. Always real sound. No silent or tone tracks unless the owner asked for silence.
|
|
24
|
+
6. Show the product correctly, at real size, from real photos.
|
|
25
|
+
7. The review is listened or measured, never claimed.
|
|
26
|
+
8. Under a deadline, deliver fewer correct videos. Never downgrade a format.
|
|
27
|
+
|
|
28
|
+
Read one file per call; if output says truncated, re-read in parts. Fetch make-custom-video on this connection and read live schemas before writes. Keep this environment; no retired actions or reference-as-final import.
|
|
18
29
|
|
|
19
30
|
## Load and resume
|
|
20
31
|
|
|
21
|
-
Fetch the complete video-production-harness with catalog_fetch delivery archive
|
|
22
|
-
|
|
32
|
+
Fetch the complete video-production-harness with catalog_fetch delivery archive; read SKILL.md and its phase references and keep version/contentHash/files. Mixed or incomplete packages block work. Resume recorded jobs with video_read; never resend a batch instead of polling.
|
|
33
|
+
Custom skips the style picker. With a supplied reference, create once with style custom, its reference_url and a UUID idempotency_key reused on retries. Without one, run video_references find with the request and products and show the list; the owner's pick goes to video_references pick, which creates the project. Never use a template's demo as the reference. Keep requested mechanics, assets, products and campaign. Resume the same project, plan_revision, approvals and production_manifest.
|
|
23
34
|
|
|
24
35
|
## Reference, product and creative contract
|
|
25
36
|
|
|
26
|
-
Read brand_read and knowledge_search. Source product geometry, colour, label, allowed use and scale
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
Use connected creator language and reference-appropriate pace. Reuse accepted character/voice/world/music/SFX/overlay examples with provenance. Emotion controls must fit the live schema. Candidates need qualification; never silently switch model families.
|
|
37
|
+
Read brand_read and knowledge_search. Source product geometry, colour, label, allowed use and scale; size-sensitive shots need dimensions or a known-scale photo. Never guess capacity or invent a real process.
|
|
38
|
+
Save reference_observation bound to media_id/media_revision with duration, full coverage, audio_perception (listened, or measured from the server's sound profile), motion_perception and timed picture/audio findings. Skipping a reference needs the owner's brief-only user_quote.
|
|
39
|
+
Save draft.creative_contract: speech_mode, soundtrack_modes, required_features, reference_map per scene (beat/action/proof/sound), sourced product_grounding, voice_plan and changes_from_reference. Native speech keeps source audio; external speech over a speaking face needs exact-audio lip sync. No detected words never authorizes mute.
|
|
40
|
+
Match capture/finish to the brief/reference; phone texture only for phone footage. Read harness references/talking-actor.md for speaking people: three actor options when needed, then playable voice choices beside the selected actor. Compare the generated voice with its audition.
|
|
31
41
|
|
|
32
42
|
## Save and review twice
|
|
33
43
|
|
|
34
|
-
video_change needs expected_revision and current brand_context_digest
|
|
35
|
-
Show the full saved script
|
|
44
|
+
video_change needs expected_revision and the current brand_context_digest; never author server context. Price paid requests free and read-only with data_price_provider (up to 20 per call; follow any price_unknown entry's next_step first). Save the shot_list with the script so the server prices Standard and Best, and put picture-upgrade money (about two pictures at high) in render_estimate.upgrade_allowance; it pays for no clip.
|
|
45
|
+
Show the full saved script, then the actual playable ingredients and exact cumulative budget, here. At the script, show both approval_quote.tier_quotes totals as given, with no math of your own, and let the owner pick. Seedance is in neither total: offer each seedance_addons price, and only the owner's yes adds it. After the owner's explicit yes, call video_approve with the custom phase, review_token and total_credits from custom_review.approval_quote (with their quality_tier and its total when there are two), expected_revision and their words as user_quote. Never infer consent or approve yourself. Honor Stop.
|
|
36
46
|
|
|
37
47
|
## Produce, assemble and deliver
|
|
38
48
|
|
|
39
|
-
|
|
40
|
-
Review the first
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
Direct builds also need the stored rebuild recipe (references/recipe-format.md). Complete with the confirmed same-project H.264/AAC MP4 URL and
|
|
49
|
+
With fitting parts, save the kit block and follow video_make after ingredient approval; otherwise run on the customer's verified shell, never a cloud sandbox. Report progress per paid piece.
|
|
50
|
+
Review the first take and the riskiest product action before batching. Send every clip to clip_check; the final may use only checked bytes. Save full prompts/settings and source-byte clip reviews as custom production.
|
|
51
|
+
Build the source-linked assembly_timeline: native picture and audio ranges stay together, pauses and freezes are declared, real soundtrack cues. Edits invalidate affected evidence.
|
|
52
|
+
Review the exact final at normal speed: listen, or rely on the server's final_measure and frame judge (measured). Save quality_report.content_review with final SHA-256, timeline and creative_contract revisions, reviewer, capabilities, full coverage and per-dimension findings. Serious defects block delivery.
|
|
53
|
+
Direct builds also need the stored rebuild recipe (references/recipe-format.md). Complete with the confirmed same-project H.264/AAC MP4 URL and report complete again while server checks run. Kit uploads follow the saved review request. Pin only the checked version.
|
|
44
54
|
|
|
45
55
|
Use plain words and returned credits. Never invent claims, approvals, assets or passing checks.
|
package/skills/manifest.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"package": "gooseworks",
|
|
3
|
-
"version": "0.6.0-dev.
|
|
3
|
+
"version": "0.6.0-dev.70.37e3826a",
|
|
4
4
|
"entries": {
|
|
5
5
|
"gooseworks": "2b5507cd937b2e5371bc1645530a13bda219914c9ecc4b14ea3871a9f43b95db",
|
|
6
6
|
"goose-ads": "ee52c2e83edc196bc22121e089b9bce526b789ce762935c35e1c989f918c6569",
|
|
7
|
-
"goose-video": "
|
|
7
|
+
"goose-video": "3419174c9e984e974b7486a088df480b44fcc2004ad4dcadc9c50bce36d7fdf2",
|
|
8
8
|
"goose-video-local": "3c8c8aecbfe3d8e58e6393e28dc67dc36f9d4b8dcfb1603f8bc442786ce839ee",
|
|
9
|
-
"make-custom-video": "
|
|
9
|
+
"make-custom-video": "e2acbb5b920ed7e6ca6a990871a3b8734ed760bdfd00f7e89d7488dcb3b4c839",
|
|
10
10
|
"goose-product-photos": "a8d04bcb320fb71885ff8df90cb32093b94c38d7cbf70f83d9275c6ff7e0be29"
|
|
11
11
|
}
|
|
12
12
|
}
|