Popopo CLI
Use this skill as a CLI user, not as a library maintainer.
Quick Start
- Ensure the command is available.
- Verify the install with a harmless read command.
- Run the smallest command that proves auth and target selection are correct before attempting a write flow.
Prefer this install path when the command is not available:
bun i -g popopo.js
popopo --help
Workflow
- Translate the user request into one concrete
popopo ...command. - Check required identifiers and auth state before running write operations.
- Prefer
--jsonwhen the output will be parsed, compared, or quoted back to the user. - Start with read-only commands such as
me,lookup,user get,spaces get,lives get,list, orcurrentwhen exploring unknown state. - Read references/commands.md only when you need the command catalog or a reminder of available flags.
Session And Output Rules
- Expect the default session file at
.popopo-session.jsonunless--session-fileoverrides it. - Assume auth-bearing commands persist updated session state automatically unless
--no-persistis passed. - Expect object results to print as formatted JSON even without
--json. - Use
--jsonanyway when output stability matters, because some stream and watch flows have custom human-readable output. - Firebase and Popopo connection defaults are built into the CLI; no Android resource file is required.
Command Selection
- Use auth commands for sign-in, sign-up, credential linking, phone verification, and token lookup.
- Use
usercommands for profile registration and profile field updates. - Use
spacescommands for room lookup, connection info, chat messages, and watch loops. - Use
livescommands for live discovery, entering, comments, selections, powers, and audio publish/receive flows. - Use
skins,coins,invites,notifications,push,calls, andtsoonly when the request clearly targets those domains.
Guardrails
- Verify required flags from
popopo --helpor references/commands.md before running a command you have not used yet. - Avoid write commands until you know which account and target resource the current session points at.
- Prefer explicit
--session-file,--space-key,--live-id,--user-id, and similar identifiers in automation or repeated debugging sessions. - For long-running watch or audio commands, set timeouts or byte limits when possible so the command terminates predictably.