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,85 +1,85 @@
1
- param(
2
- [string]$RepoRoot = (Resolve-Path (Join-Path $PSScriptRoot '..')).Path,
3
- [string]$UserHome = $HOME,
4
- [switch]$InstallDependencies,
5
- [switch]$NoCopy
6
- )
7
-
8
- $ErrorActionPreference = 'Stop'
9
-
10
- function Write-Step($Message) {
11
- Write-Host "[takomi-flow] $Message"
12
- }
13
-
14
- function Copy-Plugin($Source, $Destination) {
15
- if ($NoCopy) {
16
- Write-Step "Skipping copy because -NoCopy was set."
17
- return
18
- }
19
- if (Test-Path -LiteralPath $Destination) {
20
- Remove-Item -LiteralPath $Destination -Recurse -Force
21
- }
22
- New-Item -ItemType Directory -Force -Path (Split-Path -Parent $Destination) | Out-Null
23
- Copy-Item -LiteralPath $Source -Destination $Destination -Recurse
24
- $nodeModules = Join-Path $Destination 'node_modules'
25
- if (Test-Path -LiteralPath $nodeModules) {
26
- Remove-Item -LiteralPath $nodeModules -Recurse -Force
27
- }
28
- }
29
-
30
- function Ensure-Marketplace($MarketplacePath) {
31
- New-Item -ItemType Directory -Force -Path (Split-Path -Parent $MarketplacePath) | Out-Null
32
- if (Test-Path -LiteralPath $MarketplacePath) {
33
- $payload = Get-Content -LiteralPath $MarketplacePath -Raw | ConvertFrom-Json
34
- } else {
35
- $payload = [ordered]@{
36
- name = 'jstarfilmsstudios'
37
- interface = @{ displayName = 'J StaR Films Studios' }
38
- plugins = @()
39
- }
40
- }
41
- $entry = [ordered]@{
42
- name = 'takomi-flow'
43
- source = @{ source = 'local'; path = './plugins/takomi-flow' }
44
- policy = @{ installation = 'AVAILABLE'; authentication = 'ON_INSTALL' }
45
- category = 'Productivity'
46
- }
47
- $plugins = @($payload.plugins | Where-Object { $_.name -ne 'takomi-flow' })
48
- $payload.plugins = @($plugins + $entry)
49
- $payload | ConvertTo-Json -Depth 8 | Set-Content -LiteralPath $MarketplacePath -Encoding UTF8
50
- }
51
-
52
- function Install-NodeDeps($PluginPath) {
53
- if (-not $InstallDependencies) {
54
- Write-Step "Skipping dependency install. Run with -InstallDependencies when needed."
55
- return
56
- }
57
- Push-Location $PluginPath
58
- try {
59
- if (Get-Command pnpm -ErrorAction SilentlyContinue) {
60
- pnpm install
61
- } else {
62
- npm install
63
- }
64
- } finally {
65
- Pop-Location
66
- }
67
- }
68
-
69
- $sourcePlugin = Join-Path $RepoRoot 'plugins/takomi-flow'
70
- $targetPlugin = Join-Path $UserHome 'plugins/takomi-flow'
71
- $marketplace = Join-Path $UserHome '.agents/plugins/marketplace.json'
72
-
73
- if (-not (Test-Path -LiteralPath $sourcePlugin)) {
74
- throw "TakomiFlow source plugin was not found: $sourcePlugin"
75
- }
76
-
77
- Write-Step "Source: $sourcePlugin"
78
- Write-Step "Target: $targetPlugin"
79
- Copy-Plugin $sourcePlugin $targetPlugin
80
- Ensure-Marketplace $marketplace
81
- Install-NodeDeps $targetPlugin
82
-
83
- Write-Step "Registered marketplace: $marketplace"
84
- Write-Step "First run: node $targetPlugin/scripts/takomi-flow.mjs doctor"
85
- Write-Step "Trusted Chrome: node $targetPlugin/scripts/takomi-flow.mjs trusted-chrome"
1
+ param(
2
+ [string]$RepoRoot = (Resolve-Path (Join-Path $PSScriptRoot '..')).Path,
3
+ [string]$UserHome = $HOME,
4
+ [switch]$InstallDependencies,
5
+ [switch]$NoCopy
6
+ )
7
+
8
+ $ErrorActionPreference = 'Stop'
9
+
10
+ function Write-Step($Message) {
11
+ Write-Host "[takomi-flow] $Message"
12
+ }
13
+
14
+ function Copy-Plugin($Source, $Destination) {
15
+ if ($NoCopy) {
16
+ Write-Step "Skipping copy because -NoCopy was set."
17
+ return
18
+ }
19
+ if (Test-Path -LiteralPath $Destination) {
20
+ Remove-Item -LiteralPath $Destination -Recurse -Force
21
+ }
22
+ New-Item -ItemType Directory -Force -Path (Split-Path -Parent $Destination) | Out-Null
23
+ Copy-Item -LiteralPath $Source -Destination $Destination -Recurse
24
+ $nodeModules = Join-Path $Destination 'node_modules'
25
+ if (Test-Path -LiteralPath $nodeModules) {
26
+ Remove-Item -LiteralPath $nodeModules -Recurse -Force
27
+ }
28
+ }
29
+
30
+ function Ensure-Marketplace($MarketplacePath) {
31
+ New-Item -ItemType Directory -Force -Path (Split-Path -Parent $MarketplacePath) | Out-Null
32
+ if (Test-Path -LiteralPath $MarketplacePath) {
33
+ $payload = Get-Content -LiteralPath $MarketplacePath -Raw | ConvertFrom-Json
34
+ } else {
35
+ $payload = [ordered]@{
36
+ name = 'jstarfilmsstudios'
37
+ interface = @{ displayName = 'J StaR Films Studios' }
38
+ plugins = @()
39
+ }
40
+ }
41
+ $entry = [ordered]@{
42
+ name = 'takomi-flow'
43
+ source = @{ source = 'local'; path = './plugins/takomi-flow' }
44
+ policy = @{ installation = 'AVAILABLE'; authentication = 'ON_INSTALL' }
45
+ category = 'Productivity'
46
+ }
47
+ $plugins = @($payload.plugins | Where-Object { $_.name -ne 'takomi-flow' })
48
+ $payload.plugins = @($plugins + $entry)
49
+ $payload | ConvertTo-Json -Depth 8 | Set-Content -LiteralPath $MarketplacePath -Encoding UTF8
50
+ }
51
+
52
+ function Install-NodeDeps($PluginPath) {
53
+ if (-not $InstallDependencies) {
54
+ Write-Step "Skipping dependency install. Run with -InstallDependencies when needed."
55
+ return
56
+ }
57
+ Push-Location $PluginPath
58
+ try {
59
+ if (Get-Command pnpm -ErrorAction SilentlyContinue) {
60
+ pnpm install
61
+ } else {
62
+ npm install
63
+ }
64
+ } finally {
65
+ Pop-Location
66
+ }
67
+ }
68
+
69
+ $sourcePlugin = Join-Path $RepoRoot 'plugins/takomi-flow'
70
+ $targetPlugin = Join-Path $UserHome 'plugins/takomi-flow'
71
+ $marketplace = Join-Path $UserHome '.agents/plugins/marketplace.json'
72
+
73
+ if (-not (Test-Path -LiteralPath $sourcePlugin)) {
74
+ throw "TakomiFlow source plugin was not found: $sourcePlugin"
75
+ }
76
+
77
+ Write-Step "Source: $sourcePlugin"
78
+ Write-Step "Target: $targetPlugin"
79
+ Copy-Plugin $sourcePlugin $targetPlugin
80
+ Ensure-Marketplace $marketplace
81
+ Install-NodeDeps $targetPlugin
82
+
83
+ Write-Step "Registered marketplace: $marketplace"
84
+ Write-Step "First run: node $targetPlugin/scripts/takomi-flow.mjs doctor"
85
+ Write-Step "Trusted Chrome: node $targetPlugin/scripts/takomi-flow.mjs trusted-chrome"
@@ -138,21 +138,22 @@ export const SKILL_CATEGORIES = [
138
138
  'ai-marketing-videos',
139
139
  'ai-podcast-creation',
140
140
  'ai-product-photography',
141
- 'ai-social-media-content',
142
- 'ai-voice-cloning',
143
- 'takomi-flow',
144
- ],
145
- },
141
+ 'ai-social-media-content',
142
+ 'ai-voice-cloning',
143
+ 'takomi-flow',
144
+ ],
145
+ },
146
146
  {
147
147
  id: 'creative-video',
148
148
  title: 'Creative / Video / Art',
149
149
  color: 'blue',
150
150
  description: 'Creative visuals, video, animation, and art workflows.',
151
151
  skills: [
152
- 'algorithmic-art',
153
- 'blender-mcp-scene-director',
154
- 'takomi-flow',
155
- 'remotion',
152
+ 'algorithmic-art',
153
+ 'blender-mcp-scene-director',
154
+ 'takomi-flow',
155
+ 'remotion',
156
+ 'remotion-real-ui-video',
156
157
  'youtube-pipeline',
157
158
  'ai-avatar-video',
158
159
  'ai-marketing-videos',