@creative-int/kumori
v0.1.1
Published
AI-powered image transformation from your terminal
Downloads
360
Maintainers
Readme
Kumori CLI
AI-powered image transformation from your terminal.
Distribution posture
The scoped @creative-int/kumori package is intentionally public on npm. The
CLI uses the shared creative-int command chassis and Oclif manifest lifecycle,
while the installed executable remains the short kumori command.
Install
npm install --global @creative-int/kumori
kumori --helpFrom this repository:
pnpm install
pnpm -C apps/cli build
node apps/cli/bin/run.js --helpCommands
kumori image.jpg --filter anime
kumori generate image.png --filter holo --sticker
kumori generate
kumori filters
kumori tui
kumori auth
kumori whoami
kumori logoutRunning kumori <input> remains the short form for kumori generate <input>.
Running kumori with no arguments opens an interactive local image picker and
then the live Convex filter catalog. kumori filters reads the same live
catalog, with a short local cache for transient network failures.
kumori tui launches the sibling Rust terminal studio. From a source checkout,
run pnpm tui:build first if the binary has not been built.
Shell and machine contract
- Human output uses the shared
chrome,scene, andfooterslots from@creative-int/cli-kit/shell. --jsonand--format jsonreturn the canonical cli-core{ data, meta }success envelope.--ndjsonemits one canonical envelope per command result.- Typed failures emit
{ error, meta }without interactive prompt output. authandlogoutstay intentionally interactive because they open a browser or delete the local token.
Exit codes are stable across text and machine output:
| Code | Meaning | Next action |
| --- | --- | --- |
| 0 | Success or intentional cancellation | None |
| 1 | Generation/backend failure | Retry; use --json for the typed error |
| 64 | Invalid command usage | Check kumori <command> --help |
| 66 | Missing or invalid input file | Fix the input path or image |
| 78 | Authentication, network, or service configuration unavailable | Run kumori auth for auth failures, or check connectivity and retry |
Authentication and environment
kumori auth starts a device authorization, opens Kumori's own
/cli/authorize page, and stores the revocable operator grant in
~/.kumori/auth.json. The CLI never opens an auth-vendor consent page or a
localhost callback. Each command exchanges the stored grant for a short-lived
Convex session.
Non-interactive generation can provide a short-lived Convex JWT through
KUMORI_AUTH_TOKEN or a revocable operator grant through
KUMORI_OPERATOR_TOKEN. KUMORI_AUTH_API_URL overrides the production Convex
HTTP endpoint for local testing. CONVEX_URL overrides the development
deployment; --prod selects Kumori's production deployment.
Verification
pnpm verify
pnpm prepack
pnpm postpackverify runs package lint, typecheck, build, command tests, and help smoke.
prepack generates oclif.manifest.json; postpack removes it after package
proof.
