takomi 2.1.39 → 2.1.41

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.
Files changed (68) hide show
  1. package/.agents/plugins/marketplace.json +22 -22
  2. package/README.md +217 -422
  3. package/assets/.agent/skills/remotion/rules/assets/charts-bar-chart.tsx +173 -173
  4. package/assets/.agent/skills/remotion/rules/assets/text-animations-typewriter.tsx +100 -100
  5. package/assets/.agent/skills/remotion/rules/text-animations.md +20 -20
  6. package/assets/.agent/skills/remotion/rules/videos.md +171 -171
  7. package/assets/.agent/skills/remotion-real-ui-video/SKILL.md +264 -0
  8. package/assets/.agent/skills/remotion-real-ui-video/references/anti-patterns.md +114 -0
  9. package/assets/.agent/skills/remotion-real-ui-video/references/completion-checklist.md +75 -0
  10. package/assets/.agent/skills/remotion-real-ui-video/references/real-ui-bridge-example.md +93 -0
  11. package/assets/.agent/skills/takomi-flow/SKILL.md +244 -235
  12. package/docs/features/TakomiFlow_Portable_Plugin.md +82 -78
  13. package/docs/takomi-flow-onboarding.md +86 -76
  14. package/docs/takomi-flow-public-distribution.md +94 -94
  15. package/package.json +1 -1
  16. package/plugins/takomi-flow/.mcp.json +11 -11
  17. package/plugins/takomi-flow/assets/capabilities.json +203 -171
  18. package/plugins/takomi-flow/assets/collection.schema.json +29 -29
  19. package/plugins/takomi-flow/assets/examples.json +94 -94
  20. package/plugins/takomi-flow/assets/request.schema.json +91 -67
  21. package/plugins/takomi-flow/assets/result.schema.json +46 -45
  22. package/plugins/takomi-flow/assets/templates/image-request.json +17 -13
  23. package/plugins/takomi-flow/assets/templates/video-request.json +19 -15
  24. package/plugins/takomi-flow/package.json +38 -38
  25. package/plugins/takomi-flow/pnpm-lock.yaml +813 -813
  26. package/plugins/takomi-flow/references/flow-provider-contract.md +349 -326
  27. package/plugins/takomi-flow/scripts/lib/agent-plan.mjs +140 -130
  28. package/plugins/takomi-flow/scripts/lib/api.mjs +113 -113
  29. package/plugins/takomi-flow/scripts/lib/args.mjs +66 -57
  30. package/plugins/takomi-flow/scripts/lib/audit.mjs +65 -65
  31. package/plugins/takomi-flow/scripts/lib/browser.mjs +78 -39
  32. package/plugins/takomi-flow/scripts/lib/capabilities.mjs +11 -11
  33. package/plugins/takomi-flow/scripts/lib/collect.mjs +53 -53
  34. package/plugins/takomi-flow/scripts/lib/commands.mjs +192 -175
  35. package/plugins/takomi-flow/scripts/lib/doctor.mjs +77 -77
  36. package/plugins/takomi-flow/scripts/lib/examples.mjs +17 -17
  37. package/plugins/takomi-flow/scripts/lib/flow-media.mjs +39 -0
  38. package/plugins/takomi-flow/scripts/lib/flow-outcome.mjs +115 -90
  39. package/plugins/takomi-flow/scripts/lib/flow-project-session.mjs +153 -0
  40. package/plugins/takomi-flow/scripts/lib/flow-ui.mjs +204 -165
  41. package/plugins/takomi-flow/scripts/lib/generation.mjs +190 -90
  42. package/plugins/takomi-flow/scripts/lib/inspect.mjs +81 -81
  43. package/plugins/takomi-flow/scripts/lib/mcp-prompts.mjs +39 -39
  44. package/plugins/takomi-flow/scripts/lib/mcp-resources.mjs +16 -16
  45. package/plugins/takomi-flow/scripts/lib/mcp-tools.mjs +165 -150
  46. package/plugins/takomi-flow/scripts/lib/media.mjs +78 -78
  47. package/plugins/takomi-flow/scripts/lib/observe.mjs +54 -54
  48. package/plugins/takomi-flow/scripts/lib/paths.mjs +37 -37
  49. package/plugins/takomi-flow/scripts/lib/playwright-loader.mjs +23 -23
  50. package/plugins/takomi-flow/scripts/lib/prompts.mjs +72 -72
  51. package/plugins/takomi-flow/scripts/lib/report.mjs +141 -141
  52. package/plugins/takomi-flow/scripts/lib/request-validator.mjs +73 -58
  53. package/plugins/takomi-flow/scripts/lib/request.mjs +66 -55
  54. package/plugins/takomi-flow/scripts/lib/resource-files.mjs +69 -69
  55. package/plugins/takomi-flow/scripts/lib/result.mjs +31 -31
  56. package/plugins/takomi-flow/scripts/lib/review.mjs +44 -44
  57. package/plugins/takomi-flow/scripts/lib/selftest.mjs +153 -153
  58. package/plugins/takomi-flow/scripts/lib/settings-plan.mjs +44 -39
  59. package/plugins/takomi-flow/scripts/lib/templates.mjs +37 -37
  60. package/plugins/takomi-flow/scripts/lib/trusted-chrome.mjs +67 -67
  61. package/plugins/takomi-flow/scripts/lib/workflow.mjs +56 -56
  62. package/plugins/takomi-flow/scripts/mcp-server.mjs +18 -18
  63. package/plugins/takomi-flow/scripts/mcp-smoke.mjs +144 -142
  64. package/plugins/takomi-flow/scripts/takomi-flow.mjs +17 -17
  65. package/plugins/takomi-flow/skills/takomi-flow/SKILL.md +244 -235
  66. package/plugins/takomi-flow/skills/takomi-flow/agents/openai.yaml +7 -7
  67. package/scripts/install-takomi-flow.ps1 +85 -85
  68. package/src/skills-catalog.js +10 -9
@@ -1,67 +1,91 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "takomi-flow://schemas/request",
4
- "title": "TakomiFlow Request",
5
- "description": "Request file for preparing or running a safe Google Flow image/video generation.",
6
- "type": "object",
7
- "additionalProperties": true,
8
- "required": ["kind", "prompt"],
9
- "properties": {
10
- "schemaVersion": {
11
- "type": "integer",
12
- "const": 1
13
- },
14
- "kind": {
15
- "type": "string",
16
- "enum": ["video", "image"]
17
- },
18
- "prompt": {
19
- "type": "string",
20
- "minLength": 1
21
- },
22
- "variations": {
23
- "type": "integer",
24
- "minimum": 1,
25
- "maximum": 4,
26
- "default": 1
27
- },
28
- "aspectRatio": {
29
- "type": "string",
30
- "enum": ["16:9", "9:16", "1:1"]
31
- },
32
- "durationSeconds": {
33
- "type": "number",
34
- "enum": [4, 6, 8, 10]
35
- },
36
- "mode": {
37
- "type": "string",
38
- "enum": ["text-to-video", "image-to-video", "text-to-image"]
39
- },
40
- "modelHint": {
41
- "type": "string",
42
- "default": "best-available"
43
- },
44
- "outputDir": {
45
- "type": "string",
46
- "description": "Base directory where requests, run metadata, downloads, screenshots, frames, and reports are written."
47
- },
48
- "allowSpend": {
49
- "type": "boolean",
50
- "default": false,
51
- "description": "Must be true, or TAKOMI_FLOW_ALLOW_SPEND=true must be set, before TakomiFlow submits a generation."
52
- },
53
- "extractFrames": {
54
- "type": "integer",
55
- "minimum": 0,
56
- "default": 0
57
- },
58
- "sourceAssets": {
59
- "type": "array",
60
- "items": { "type": "string" },
61
- "default": []
62
- },
63
- "notes": {
64
- "type": "string"
65
- }
66
- }
67
- }
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "takomi-flow://schemas/request",
4
+ "title": "TakomiFlow Request",
5
+ "description": "Request file for preparing or running a safe Google Flow image/video generation.",
6
+ "type": "object",
7
+ "additionalProperties": true,
8
+ "required": ["kind", "prompt"],
9
+ "properties": {
10
+ "schemaVersion": {
11
+ "type": "integer",
12
+ "const": 1
13
+ },
14
+ "kind": {
15
+ "type": "string",
16
+ "enum": ["video", "image"]
17
+ },
18
+ "prompt": {
19
+ "type": "string",
20
+ "minLength": 1
21
+ },
22
+ "variations": {
23
+ "type": "integer",
24
+ "minimum": 1,
25
+ "maximum": 4,
26
+ "default": 1
27
+ },
28
+ "aspectRatio": {
29
+ "type": "string",
30
+ "enum": ["16:9", "9:16", "1:1"]
31
+ },
32
+ "durationSeconds": {
33
+ "type": "number",
34
+ "enum": [4, 6, 8, 10]
35
+ },
36
+ "mode": {
37
+ "type": "string",
38
+ "enum": ["text-to-video", "image-to-video", "text-to-image"]
39
+ },
40
+ "modelHint": {
41
+ "type": "string",
42
+ "default": "best-available"
43
+ },
44
+ "outputDir": {
45
+ "type": "string",
46
+ "description": "Base directory where requests, run metadata, downloads, screenshots, frames, and reports are written."
47
+ },
48
+ "allowSpend": {
49
+ "type": "boolean",
50
+ "default": false,
51
+ "description": "Must be true, or TAKOMI_FLOW_ALLOW_SPEND=true must be set, before TakomiFlow submits a generation."
52
+ },
53
+ "extractFrames": {
54
+ "type": "integer",
55
+ "minimum": 0,
56
+ "default": 0
57
+ },
58
+ "sourceAssets": {
59
+ "type": "array",
60
+ "items": { "type": "string" },
61
+ "default": []
62
+ },
63
+ "projectUrl": {
64
+ "type": "string",
65
+ "description": "Existing Google Flow project/editor URL to reuse for this generation."
66
+ },
67
+ "reuseCurrentProject": {
68
+ "type": "boolean",
69
+ "default": true,
70
+ "description": "When attached to Chrome, prefer an already open Flow project tab."
71
+ },
72
+ "allowNewProject": {
73
+ "type": "boolean",
74
+ "default": false,
75
+ "description": "Permit TakomiFlow to click New project when no reusable project/editor is available."
76
+ },
77
+ "freshChatOnFailure": {
78
+ "type": "boolean",
79
+ "default": true,
80
+ "description": "Try one same-project fresh chat recovery when prompt or submit controls are broken."
81
+ },
82
+ "editorWaitMs": {
83
+ "type": "integer",
84
+ "minimum": 1000,
85
+ "description": "Maximum time to wait for the Flow project editor to become usable."
86
+ },
87
+ "notes": {
88
+ "type": "string"
89
+ }
90
+ }
91
+ }
@@ -1,45 +1,46 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "takomi-flow://schemas/result",
4
- "title": "TakomiFlow Run Result",
5
- "description": "Run metadata written by TakomiFlow browser, smoke, generate, and self-test commands.",
6
- "type": "object",
7
- "additionalProperties": true,
8
- "required": ["schemaVersion", "status", "runId"],
9
- "properties": {
10
- "schemaVersion": { "type": "integer", "const": 1 },
11
- "status": {
12
- "type": "string",
13
- "enum": ["prepared", "ok", "downloaded", "manual_action_required", "blocked", "failed"]
14
- },
15
- "runId": { "type": "string" },
16
- "command": { "type": "string" },
17
- "kind": { "type": "string", "enum": ["video", "image"] },
18
- "prompt": { "type": "string" },
19
- "flowUrl": { "type": "string" },
20
- "projectUrl": { "type": "string" },
21
- "settingsPlan": { "type": "object" },
22
- "assets": {
23
- "type": "array",
24
- "items": { "type": "string" },
25
- "default": []
26
- },
27
- "assetCatalogPath": { "type": "string" },
28
- "screenshots": {
29
- "type": "array",
30
- "items": { "type": "string" },
31
- "default": []
32
- },
33
- "errors": {
34
- "type": "array",
35
- "items": { "type": "string" },
36
- "default": []
37
- },
38
- "manualActions": {
39
- "type": "array",
40
- "items": { "type": "string" },
41
- "default": []
42
- },
43
- "metadataPath": { "type": "string" }
44
- }
45
- }
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "takomi-flow://schemas/result",
4
+ "title": "TakomiFlow Run Result",
5
+ "description": "Run metadata written by TakomiFlow browser, smoke, generate, and self-test commands.",
6
+ "type": "object",
7
+ "additionalProperties": true,
8
+ "required": ["schemaVersion", "status", "runId"],
9
+ "properties": {
10
+ "schemaVersion": { "type": "integer", "const": 1 },
11
+ "status": {
12
+ "type": "string",
13
+ "enum": ["prepared", "ok", "downloaded", "manual_action_required", "blocked", "failed"]
14
+ },
15
+ "runId": { "type": "string" },
16
+ "command": { "type": "string" },
17
+ "kind": { "type": "string", "enum": ["video", "image"] },
18
+ "prompt": { "type": "string" },
19
+ "flowUrl": { "type": "string" },
20
+ "projectUrl": { "type": "string" },
21
+ "projectSession": { "type": "object" },
22
+ "settingsPlan": { "type": "object" },
23
+ "assets": {
24
+ "type": "array",
25
+ "items": { "type": "string" },
26
+ "default": []
27
+ },
28
+ "assetCatalogPath": { "type": "string" },
29
+ "screenshots": {
30
+ "type": "array",
31
+ "items": { "type": "string" },
32
+ "default": []
33
+ },
34
+ "errors": {
35
+ "type": "array",
36
+ "items": { "type": "string" },
37
+ "default": []
38
+ },
39
+ "manualActions": {
40
+ "type": "array",
41
+ "items": { "type": "string" },
42
+ "default": []
43
+ },
44
+ "metadataPath": { "type": "string" }
45
+ }
46
+ }
@@ -1,13 +1,17 @@
1
- {
2
- "schemaVersion": 1,
3
- "kind": "image",
4
- "prompt": "Describe the image Flow should generate.",
5
- "variations": 1,
6
- "aspectRatio": "1:1",
7
- "mode": "text-to-image",
8
- "modelHint": "best-available",
9
- "outputDir": "C:/Users/johno/.takomi-flow/runs",
10
- "allowSpend": false,
11
- "sourceAssets": [],
12
- "notes": "Set allowSpend=true only after explicit user approval."
13
- }
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "image",
4
+ "prompt": "Describe the image Flow should generate.",
5
+ "variations": 1,
6
+ "aspectRatio": "1:1",
7
+ "mode": "text-to-image",
8
+ "modelHint": "best-available",
9
+ "outputDir": "C:/Users/johno/.takomi-flow/runs",
10
+ "allowSpend": false,
11
+ "sourceAssets": [],
12
+ "projectUrl": "",
13
+ "reuseCurrentProject": true,
14
+ "allowNewProject": false,
15
+ "freshChatOnFailure": true,
16
+ "notes": "Set allowSpend=true only after explicit user approval."
17
+ }
@@ -1,15 +1,19 @@
1
- {
2
- "schemaVersion": 1,
3
- "kind": "video",
4
- "prompt": "Describe the video Flow should generate.",
5
- "variations": 1,
6
- "aspectRatio": "16:9",
7
- "durationSeconds": 4,
8
- "mode": "text-to-video",
9
- "modelHint": "best-available",
10
- "outputDir": "C:/Users/johno/.takomi-flow/runs",
11
- "allowSpend": false,
12
- "extractFrames": 4,
13
- "sourceAssets": [],
14
- "notes": "Set allowSpend=true only after explicit user approval."
15
- }
1
+ {
2
+ "schemaVersion": 1,
3
+ "kind": "video",
4
+ "prompt": "Describe the video Flow should generate.",
5
+ "variations": 1,
6
+ "aspectRatio": "16:9",
7
+ "durationSeconds": 4,
8
+ "mode": "text-to-video",
9
+ "modelHint": "best-available",
10
+ "outputDir": "C:/Users/johno/.takomi-flow/runs",
11
+ "allowSpend": false,
12
+ "extractFrames": 4,
13
+ "sourceAssets": [],
14
+ "projectUrl": "",
15
+ "reuseCurrentProject": true,
16
+ "allowNewProject": false,
17
+ "freshChatOnFailure": true,
18
+ "notes": "Set allowSpend=true only after explicit user approval."
19
+ }
@@ -1,38 +1,38 @@
1
- {
2
- "name": "takomi-flow",
3
- "version": "0.1.0",
4
- "type": "module",
5
- "private": true,
6
- "description": "Agent-first Google Flow browser automation for Codex.",
7
- "scripts": {
8
- "takomi-flow": "node scripts/takomi-flow.mjs",
9
- "doctor": "node scripts/takomi-flow.mjs doctor",
10
- "audit": "node scripts/takomi-flow.mjs audit",
11
- "capabilities": "node scripts/takomi-flow.mjs capabilities",
12
- "examples": "node scripts/takomi-flow.mjs examples",
13
- "trusted-chrome": "node scripts/takomi-flow.mjs trusted-chrome",
14
- "plan": "node scripts/takomi-flow.mjs plan",
15
- "observe": "node scripts/takomi-flow.mjs observe",
16
- "bootstrap": "node scripts/takomi-flow.mjs bootstrap",
17
- "smoke": "node scripts/takomi-flow.mjs smoke",
18
- "template": "node scripts/takomi-flow.mjs template",
19
- "validate-request": "node scripts/takomi-flow.mjs validate",
20
- "prepare-request": "node scripts/takomi-flow.mjs prepare",
21
- "workflow": "node scripts/takomi-flow.mjs workflow",
22
- "generate": "node scripts/takomi-flow.mjs generate",
23
- "selftest": "node scripts/takomi-flow.mjs selftest",
24
- "mcp": "node scripts/mcp-server.mjs",
25
- "mcp-smoke": "node scripts/mcp-smoke.mjs",
26
- "inspect": "node scripts/takomi-flow.mjs inspect",
27
- "runs": "node scripts/takomi-flow.mjs runs",
28
- "assets": "node scripts/takomi-flow.mjs assets",
29
- "review": "node scripts/takomi-flow.mjs review",
30
- "collect": "node scripts/takomi-flow.mjs collect",
31
- "report": "node scripts/takomi-flow.mjs report"
32
- },
33
- "dependencies": {
34
- "@modelcontextprotocol/sdk": "^1.29.0",
35
- "playwright": "^1.61.1",
36
- "zod": "^4.4.3"
37
- }
38
- }
1
+ {
2
+ "name": "takomi-flow",
3
+ "version": "0.1.0",
4
+ "type": "module",
5
+ "private": true,
6
+ "description": "Agent-first Google Flow browser automation for Codex.",
7
+ "scripts": {
8
+ "takomi-flow": "node scripts/takomi-flow.mjs",
9
+ "doctor": "node scripts/takomi-flow.mjs doctor",
10
+ "audit": "node scripts/takomi-flow.mjs audit",
11
+ "capabilities": "node scripts/takomi-flow.mjs capabilities",
12
+ "examples": "node scripts/takomi-flow.mjs examples",
13
+ "trusted-chrome": "node scripts/takomi-flow.mjs trusted-chrome",
14
+ "plan": "node scripts/takomi-flow.mjs plan",
15
+ "observe": "node scripts/takomi-flow.mjs observe",
16
+ "bootstrap": "node scripts/takomi-flow.mjs bootstrap",
17
+ "smoke": "node scripts/takomi-flow.mjs smoke",
18
+ "template": "node scripts/takomi-flow.mjs template",
19
+ "validate-request": "node scripts/takomi-flow.mjs validate",
20
+ "prepare-request": "node scripts/takomi-flow.mjs prepare",
21
+ "workflow": "node scripts/takomi-flow.mjs workflow",
22
+ "generate": "node scripts/takomi-flow.mjs generate",
23
+ "selftest": "node scripts/takomi-flow.mjs selftest",
24
+ "mcp": "node scripts/mcp-server.mjs",
25
+ "mcp-smoke": "node scripts/mcp-smoke.mjs",
26
+ "inspect": "node scripts/takomi-flow.mjs inspect",
27
+ "runs": "node scripts/takomi-flow.mjs runs",
28
+ "assets": "node scripts/takomi-flow.mjs assets",
29
+ "review": "node scripts/takomi-flow.mjs review",
30
+ "collect": "node scripts/takomi-flow.mjs collect",
31
+ "report": "node scripts/takomi-flow.mjs report"
32
+ },
33
+ "dependencies": {
34
+ "@modelcontextprotocol/sdk": "^1.29.0",
35
+ "playwright": "^1.61.1",
36
+ "zod": "^4.4.3"
37
+ }
38
+ }