taisly-agent-kit — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited taisly-agent-kit (Plugin) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Taisly Agent Kit: AI agent social media posting for TikTok, Instagram Reels, YouTube Shorts, X, and Facebook
AI agent social media posting for short-form video. Taisly Agent Kit is a JSON-first SDK, CLI, Agent Skill, and MCP server that lets AI agents, developer tools, and automation workflows publish videos to TikTok, Instagram Reels, YouTube Shorts, X, Facebook, and other connected social platforms through Taisly.
Use it when your agent can create content, write captions, or prepare a campaign, but still needs a reliable video publishing API to put that content online.
Website | Agent Kit | API Docs | npm | GitHub | Glama | Guide
Read this guide in: English, Español, Deutsch, Français, Português, ไทย, 中文, Bahasa Indonesia, Русский, Nederlands, 한국어, 日本語, العربية, Türkçe, Polski.
Taisly handles the connected accounts and posting execution. Your agent handles planning, caption writing, campaign logic, or workflow orchestration.
This package includes the Taisly Social Media Posting Skill in SKILL.md. Use it with Claude Code, Codex, Cursor, OpenClaw, and custom agents when you want the agent to understand the safe posting workflow before it touches live social accounts.
Recommended skill workflow:
auth -> platforms -> validate -> confirm -> create -> statusThe skill tells agents to discover connected accounts, validate the post, ask for explicit user confirmation, create the post, and save the returned historyId for status checks.
npm install -g @taisly/agentOr run it without a global install:
npx @taisly/agent helpStart the stdio MCP server:
npx @taisly/agent mcpFor local development inside this repository:
node packages/agent/src/cli.js helpCreate an API key in Taisly Settings, then set:
export TAISLY_API_KEY="taisly_..."
export TAISLY_API_URL="https://app.taisly.com/api/private"TAISLY_API_URL is optional unless you need to target a non-default Taisly API environment.
List the connected social accounts available to the API key:
taisly auth:status
taisly platforms:listValidate a local video before publishing:
taisly posts:validate \
--video ./launch.mp4 \
--platforms platform_id_1,platform_id_2 \
--description "Launch day"Publish now:
taisly posts:create \
--video ./launch.mp4 \
--platforms platform_id_1,platform_id_2 \
--description "Launch day"Schedule for later:
taisly posts:create \
--video ./launch.mp4 \
--platforms platform_id_1,platform_id_2 \
--description "Launch day" \
--scheduled "2026-06-14T09:00:00+07:00"Check the returned post:
taisly posts:status --id <historyId>Every command prints JSON so agents can parse results without scraping terminal text.
Taisly Agent Kit includes a stdio MCP server in the same package. MCP clients can connect it with:
{
"mcpServers": {
"taisly": {
"command": "npx",
"args": ["@taisly/agent", "mcp"],
"env": {
"TAISLY_API_KEY": "taisly_..."
}
}
}
}Available MCP tools:
taisly_auth_statustaisly_platforms_listtaisly_platform_schemataisly_posts_validatetaisly_posts_createtaisly_posts_statustaisly_posts_listtaisly_reposts_listtaisly_reposts_createtaisly_posts_create requires confirmed: true. Set it only after the user explicitly approves the video, destination accounts, caption, and schedule.
Agents can write a payload file and pass it to the CLI:
{
"video": "./launch.mp4",
"platforms": ["platform_id_1", "platform_id_2"],
"description": "Launch day. Short demo, big update.",
"scheduled": "2026-06-14T09:00:00+07:00"
}Then run:
taisly posts:validate --json ./campaign.json
taisly posts:create --json ./campaign.jsonThe video path must point to a real local file available to the agent. Supported local preflight extensions are .mp4, .mov, .avi, .mkv, .webm, .flv, .mpeg, and .mpg.
taisly auth:status
taisly platforms:list
taisly integrations:list
taisly platforms:schema --platform TikTok
taisly posts:validate --video ./launch.mp4 --platforms platform_id_1 --description "Launch day"
taisly posts:create --video ./launch.mp4 --platforms platform_id_1 --description "Launch day"
taisly posts:create --json ./campaign.json
taisly posts:list --page 1
taisly posts:status --id <historyId>
taisly reposts:list
taisly reposts:create --from <platform_id> --to <platform_id_1,platform_id_2>
taisly mcpintegrations:* commands are aliases for platforms:* commands. Taisly calls connected social accounts platforms in the app, while many public APIs call them integrations.
import { Taisly } from "@taisly/agent";
const taisly = new Taisly({
apiKey: process.env.TAISLY_API_KEY,
});
const platforms = await taisly.platforms.list();
const validation = await taisly.posts.validate({
video: "./launch.mp4",
platforms: [platforms.data[0].id],
description: "Launch day",
});
const post = await taisly.posts.create({
video: "./launch.mp4",
platforms: [platforms.data[0].id],
description: "Launch day",
scheduled: "2026-06-14T09:00:00+07:00",
});
console.log(validation.success);
console.log(post.historyId);Taisly Agent Kit is designed for agentic workflows where the user gives a high-level instruction and the agent executes a safe posting path.
Recommended agent path:
auth:status -> platforms:list -> platforms:schema -> posts:validate -> user confirmation -> posts:create -> posts:statusThe examples/ folder includes copy-paste workflows for common coding agents:
examples/codex/post-video.mdexamples/claude-code/schedule-video.mdexamples/cursor/post-build-demo-video.mdexamples/post-video.shexamples/schedule-video.shposts:create uses the existing multipart /post API.posts:status reads recent history because a single-post status endpoint is not available yet.posts:validate is local preflight; final validation still happens in Taisly.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.