From klingai-pack
Provides Kling AI pricing: subscriptions, credits for video/image gen, API packs, and Python cost estimator. Useful for budgeting video/audio generation projects.
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin klingai-packThis skill is limited to using the following tools:
Kling AI uses a credit-based pricing system. Credits are consumed per video/image generation based on duration, mode, and model. API pricing uses resource packs billed separately from subscription plans.
Creates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Executes implementation plans in current session by dispatching fresh subagents per independent task, with two-stage reviews: spec compliance then code quality.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
Kling AI uses a credit-based pricing system. Credits are consumed per video/image generation based on duration, mode, and model. API pricing uses resource packs billed separately from subscription plans.
| Plan | Monthly | Credits/Month | Key Features |
|---|---|---|---|
| Free | $0 | 66/day (no rollover) | Basic access, watermarked |
| Standard | $6.99 | 660 | No watermark, standard models |
| Pro | $25.99 | 3,000 | Priority queue, all models |
| Premier | $64.99 | 8,000 | Professional mode, priority |
| Ultra | $180 | 26,000 | Max priority, all features |
Warning: Paid credits expire at end of billing period. Unused credits do not roll over.
| Duration | Standard Mode | Professional Mode |
|---|---|---|
| 5 seconds | 10 credits | 35 credits |
| 10 seconds | 20 credits | 70 credits |
| Duration | Standard + Audio | Professional + Audio |
|---|---|---|
| 5 seconds | 50 credits | 100 credits |
| 10 seconds | 100 credits | 200 credits |
| Feature | Credits |
|---|---|
| Text-to-image | 1 credit/image |
| Image restyle | 2 credits/image |
| Virtual try-on | 5 credits/image |
API access is billed separately from subscriptions via prepaid packs:
| Pack | Units | Price | Validity |
|---|---|---|---|
| Starter | 1,000 | ~$140 | 90 days |
| Growth | 10,000 | ~$1,400 | 90 days |
| Enterprise | 30,000 | ~$4,200 | 90 days |
1 unit = 1 credit equivalent. API pricing works out to ~$0.07-0.14 per second of generated video.
def estimate_cost(videos: int, duration: int = 5, mode: str = "standard",
audio: bool = False) -> dict:
"""Estimate credits needed for a batch of videos."""
base_credits = {
(5, "standard"): 10,
(5, "professional"): 35,
(10, "standard"): 20,
(10, "professional"): 70,
}
per_video = base_credits.get((duration, mode), 10)
if audio:
per_video *= 5 # audio multiplier
total = videos * per_video
return {
"videos": videos,
"credits_per_video": per_video,
"total_credits": total,
"estimated_cost_usd": total * 0.14, # high estimate
}
# Example: 100 five-second standard videos
print(estimate_cost(100, duration=5, mode="standard"))
# → {'videos': 100, 'credits_per_video': 10, 'total_credits': 1000, 'estimated_cost_usd': 140.0}
| Strategy | Savings | Trade-off |
|---|---|---|
Use standard mode for drafts | 3.5x cheaper | Slightly lower quality |
| Use 5s duration, extend if needed | 2x cheaper per clip | Requires extension step |
Use kling-v2-5-turbo | 40% faster (less queue time) | Marginally lower quality than v2.6 |
| Batch during off-peak hours | Faster processing | Schedule dependency |
| Skip audio, add in post | 5x cheaper | Extra post-production step |
| Use callbacks instead of polling | No cost savings, but fewer API calls | Requires webhook endpoint |
class BudgetGuard:
"""Prevent overspending by tracking credit usage."""
def __init__(self, daily_limit: int = 500):
self.daily_limit = daily_limit
self._used_today = 0
def check(self, credits_needed: int) -> bool:
if self._used_today + credits_needed > self.daily_limit:
raise RuntimeError(
f"Budget exceeded: {self._used_today + credits_needed} > {self.daily_limit}"
)
return True
def record(self, credits_used: int):
self._used_today += credits_used