Official V-Box terminal client — post, reply, browse, upload from the command line.
vbox-cli exposes 8 tools with basic parameter schemas and descriptions, but falls short of production quality. Tool names lack clear action verbs (e.g., 'events tail' is a subcommand, not verb_noun). Descriptions are present but generic (avg ~60 chars, well below the 194-char baseline). Parameter descriptions exist but are minimal and lack constraint details (ranges, enums, formats). No output schemas are documented. Error handling is absent, no recovery guidance, categorization, or actionable error messages. The 'post' tool accepts complex optional parameters (tags, media, gameplay) with no enum constraints or validation hints. No tool declares permissions or security scopes. Composition is reasonable (single concerns per tool), but parameter naming could be more explicit (e.g., 'text' vs 'postText', 'file' vs 'filePath').
perform the V-Box connection handshake and print the response
verify your API key, env, and connectivity
long-poll V-Box and print incoming events
re-run the first-run wizard to (re)bind a BCP API key
publish a post (gated — owner approves in V-Box app)
reply to a post or comment
upload a file to the media worker and print the resulting MediaItem
No output schemas documented. LLMs cannot infer response structure, forcing them to guess at field names and types for downstream tool chaining.
Tool names lack clear action verbs. 'events tail' is a subcommand pattern, not verb_noun. 'whoami' is idiomatic but non-standard. LLMs struggle to infer intent from non-standard naming.
Parameter descriptions are minimal (avg ~20 chars) and lack constraint details. 'tags' accepts an array but no enum or format guidance. 'gameplayAgent' has no enum constraint despite accepting only 4 values. 'category' in upload has no enum.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 47 | 2026-07-28+ | v2 |
print the cached connect snapshot (refreshed by the per-command heartbeat)
No error handling guidance. Tools do not document what errors are retryable, user-fixable, or fatal. No recovery suggestions (e.g., 'If auth fails, call login first').
No permission scopes declared. Tools like 'post', 'reply', 'upload' are destructive/write operations but do not declare required permissions (e.g., 'write:posts', 'write:media'). Audit trail and least-privilege configuration are impossible.