Answers from the documentation; checking which model is on duty
Hi - I answer from the OpenSmartRoute documentation: routing, the API, plans and quotas, self-hosting. Ask away, or open a support ticket if you need a person.
Grounded in the docs - follow a source before acting on it.
cli-anything-live2d - Skill - OpenSmartRoute
Skillv1.0.0
cli-anything-live2d
Inspect, validate, edit, lint, diff, batch-manage, and deploy Live2D Cubism models (.model3.json) from the command line.
Imported from hkuds/cli-anything (skills/cli-anything-live2d/SKILL.md). Install upstream with npx skills add hkuds/cli-anything --skill cli-anything-live2d. Copyright stays with the author.
cli-anything-live2d
Full-featured CLI for Live2D Cubism models. 42 commands covering inspection,
editing, linting, diffing, batch operations, asset management, generation,
and deployment — all without the Live2D Editor.
Commands (42 total)
Read (18)
Command
Purpose
inspect <model>
Model overview (version, counts, features)
validate <model>
Check all referenced files exist
motions <model>
List motions with fade times
motion-info <file>
Detailed motion analysis
expressions <model>
List expression presets
expr-info <file>
Detailed expression analysis
textures <model>
List textures with dimensions and sizes
physics <file>
Physics simulation config
moc3 <file>
Moc3 binary info
params <model>
Parameter groups
param-list <model>
All params across motions/expressions
deps <model>
Dependency graph
compare <a> <b>
Quick comparison
diff <a> <b>
Detailed diff
scan <dir>
Find all models in directory
export <model>
Export as JSON/CSV
stats <dir>
Project overview
manifest <model>
File inventory with SHA256 checksums
Edit (10, all auto-backup)
Command
Purpose
edit-motion
Edit motion fade times or file path
add-motion
Add motion to group
rm-motion
Remove motion
add-expr
Add expression
rm-expr
Remove expression
edit-texture
Replace texture path
edit-model
Edit moc3/physics/pose/userdata
param-edit
Edit parameter value in .exp3.json
rename-group
Rename a motion group
find-replace
Batch rename file references
Generation (3)
Command
Purpose
init
Generate full model template
gen-motion
Generate skeleton .motion3.json
gen-expr
Generate skeleton .exp3.json
Analysis (4)
Command
Purpose
lint
Best practice checks
runtime-check
Cubism Viewer / Web SDK / Yoyo compatibility
atlas
Texture atlas analysis
orphan
Find unreferenced files
Workflow (7)
Command
Purpose
undo
Restore from auto-backup
backup-clean
Rotate old backups
restore-file
Restore specific file from backup
batch
Batch-edit multiple models
snapshot
Generate HTML preview
watch
Auto-validate on file changes
flatten
Flatten directory for deployment
Other (3)
Command
Purpose
migrate
Model format version upgrade
pack
Package model + deps into zip
yoyo-check
Yoyo desktop-pet readiness
All read commands support --json. Edit commands auto-backup.
Install cli-anything-live2d and it becomes one more candidate the router can pick - when it fits.
A listing is a routing target with a manifest: what it does, which domains it covers, what it costs and who publishes it. Once installed it sits beside your own models and tools, is scored like any other candidate for each request, and shows up in the trace when it wins. Ratings come from workspaces that installed it, one per account.
When a provider is down or over quota the request moves on; the trace says it did.
Use it
Copy one of these into your project. Installing also returns the manifest and these snippets.
# after Install: the listing is in your workspace's routing pool - a plan picks it for its slotcurl-s-X POST https://osr-api.kindrock-caaab1a2.centralindia.azurecontainerapps.io/api/v1/route -H 'Authorization: Bearer $OSR_API_KEY' -H 'Content-Type: application/json' -d '{"text": "...", "plan": true}'
Manifest
An Open Capability Manifest: the router reads it to know what this does, what it costs and when to pick it.