Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/skills.md
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,7 @@ Ready-to-read references live in [`examples/skills/`](../examples/skills):
| `file-organizer` | Filesystem writes — sort a folder by type/date. A "local hands" chore ChatGPT can't do itself. |
| `local-backup` | Shell allowlist (`tar` only) — timestamped `.tar.gz` snapshots. |
| `article-publisher` | Network + secrets + git — publish to Zenn/Qiita/note. |
| `flowkit` | Local REST API — control a running FlowKit video-generation server. |

## Generating a skill from ChatGPT

Expand Down
21 changes: 21 additions & 0 deletions examples/skills/flowkit/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# FlowKit

LocalAnt skill for controlling a running FlowKit server.

Prerequisites:

1. Start FlowKit locally, usually with `python -m agent.main`.
2. Load the FlowKit Chrome extension and open Google Flow.
3. Confirm `flowkit_health` returns `extension_connected: true`.

The skill defaults to `http://127.0.0.1:8100`. Pass `baseUrl` to any tool when FlowKit is running elsewhere.

Typical flow:

1. `flowkit_create_workflow`
2. `flowkit_generate_references`
3. `flowkit_generate_images`
4. `flowkit_generate_videos`
5. `flowkit_poll`

Generation tools submit batch requests; FlowKit handles throttling internally.
6 changes: 6 additions & 0 deletions examples/skills/flowkit/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"name": "@localant-skill/flowkit",
"version": "0.1.0",
"private": true,
"type": "module"
}
124 changes: 124 additions & 0 deletions examples/skills/flowkit/skill.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
{
"name": "flowkit",
"displayName": "FlowKit",
"version": "0.1.0",
"description": "Control a local FlowKit video-generation server through LocalAnt tools.",
"author": "LocalAnt",
"license": "MIT",
"entry": "src/index.ts",
"riskLevel": 3,
"permissions": {
"filesystem": { "mode": "none", "allowedDirectories": [] },
"shell": { "mode": "none", "allowedCommands": [] },
"network": { "mode": "allowlist", "allowedHosts": ["127.0.0.1", "localhost"] },
"secrets": [],
"browser": "none",
"adb": "none",
"git": "none",
"agent": "none"
},
"tools": [
{
"name": "flowkit_health",
"description": "Check FlowKit API health and Chrome extension connection status.",
"riskLevel": 0,
"inputSchema": {
"type": "object",
"properties": {
"baseUrl": { "type": "string" }
}
}
},
{
"name": "flowkit_status",
"description": "Summarize FlowKit health, projects, and request status.",
"riskLevel": 0,
"inputSchema": {
"type": "object",
"properties": {
"baseUrl": { "type": "string" },
"projectId": { "type": "string" },
"limit": { "type": "number" }
}
}
},
{
"name": "flowkit_create_workflow",
"description": "Create a FlowKit project, video, and scenes from a structured workflow spec.",
"riskLevel": 3,
"inputSchema": {
"type": "object",
"properties": {
"baseUrl": { "type": "string" },
"project": { "type": "object" },
"video": { "type": "object" },
"scenes": { "type": "array", "items": { "type": "object" } }
},
"required": ["project", "video", "scenes"]
}
},
{
"name": "flowkit_generate_references",
"description": "Submit batch requests to generate reference images for project entities.",
"riskLevel": 3,
"inputSchema": {
"type": "object",
"properties": {
"baseUrl": { "type": "string" },
"projectId": { "type": "string" },
"characterIds": { "type": "array", "items": { "type": "string" } }
},
"required": ["projectId"]
}
},
{
"name": "flowkit_generate_images",
"description": "Submit batch requests to generate FlowKit scene images.",
"riskLevel": 3,
"inputSchema": {
"type": "object",
"properties": {
"baseUrl": { "type": "string" },
"projectId": { "type": "string" },
"videoId": { "type": "string" },
"sceneIds": { "type": "array", "items": { "type": "string" } },
"orientation": { "type": "string", "enum": ["VERTICAL", "HORIZONTAL"] }
},
"required": ["projectId", "videoId"]
}
},
{
"name": "flowkit_generate_videos",
"description": "Submit batch requests to generate FlowKit scene video clips.",
"riskLevel": 3,
"inputSchema": {
"type": "object",
"properties": {
"baseUrl": { "type": "string" },
"projectId": { "type": "string" },
"videoId": { "type": "string" },
"sceneIds": { "type": "array", "items": { "type": "string" } },
"orientation": { "type": "string", "enum": ["VERTICAL", "HORIZONTAL"] }
},
"required": ["projectId", "videoId"]
}
},
{
"name": "flowkit_poll",
"description": "Poll FlowKit batch status for project/video request completion.",
"riskLevel": 0,
"inputSchema": {
"type": "object",
"properties": {
"baseUrl": { "type": "string" },
"projectId": { "type": "string" },
"videoId": { "type": "string" },
"type": { "type": "string" },
"orientation": { "type": "string" },
"timeoutSeconds": { "type": "number" },
"intervalSeconds": { "type": "number" }
}
}
}
]
}
Loading
Loading