Plori
Skill plori-ai/skills/plori
Agent Skills for plori: teach any coding agent to create and drive plori agents (cloud computers for AI agents)
npx -y skills add plori-ai/skills --skill ploriAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Create and drive plori agents (each an AI agent on its own cloud computer) from any MCP client, the plori CLI, or over REST. Covers authentication (OAuth 2.1 or API key), creating agents, invoking them and reading replies, answering human-in-the-loop requests, and scheduling deferred runs.
SKILL.md
5.0 KB, ~1.3k tokens by cl100k_base, as published. Nobody here has run it
Using plori from an agent
plori (https://plori.ai) gives you AI agents. Each agent runs on its own cloud computer with a persistent disk, a shell, developer tools, and memory. You can create agents, send them work, and read their replies programmatically.
Connect
MCP (recommended for a hosted client): Streamable HTTP at https://api.plori.ai/mcp.
- OAuth 2.1: compliant MCP clients connect with no hand-copied key. An unauthenticated request returns 401 with the discovery chain (RFC 9728 Protected Resource Metadata at https://api.plori.ai/.well-known/oauth-protected-resource, then dynamic client registration and authorization code + PKCE). The account owner signs in once with an email one-time code.
- API key: the account owner provisions a key at https://plori.ai and you send
Authorization: Bearer plori_sk_....
CLI (recommended from a terminal): npm i -g @plori/cli, or run it without installing
via npx -y @plori/cli, gives you the plori command for the same operations from your
shell. Authenticate with plori login or by setting PLORI_API_KEY. Output is
human-readable on a terminal and a single JSON document when piped or with --json, so it
composes in scripts. Commands are listed under "CLI commands" below.
REST: the same operations at https://api.plori.ai/v1 with the same bearer token.
Full authentication instructions: https://plori.ai/auth.md
Tools
Account and agents: list_agents, get_agent, create_agent
(name, optional model), set_agent_model, delete_agent, get_credits,
get_usage, get_disk.
Runs: invoke_agent sends a message and by default blocks until the turn finishes,
returning the assistant's reply. Pass wait=false to get a run_id immediately and
poll get_run_result. list_runs lists recent runs.
Human in the loop: a run can pause on an approval or input request (status
awaiting_input). Read the queue with list_pending_inputs and reply with
answer_pending_input (run_id + tool_call_id, then approved=true/false for approvals
or value for input requests). A queued row carrying a consent_tool is an outward-facing
write held for consent: approving it with always_allow=true also stops the agent asking
for that tool again. That is a standing grant, so set it only when the human explicitly
said to stop being asked, never on your own judgment.
Deferred work: schedule_run (agent_id, prompt, and delay_seconds or an RFC3339
fire_at) invokes the agent later as an ordinary run.
Workflows: list_workflows (optional agent_id UUID, or "none" for unassigned),
create_workflow (name, optional description/trigger_kind/cron_expr),
run_workflow (runs a workflow now: a real execution billed like any run,
returning the execution, terminal or still running), and get_workflow_execution to poll
one. A workflow's steps are built by an agent; these tools manage and run the result.
CLI commands
The CLI mirrors the tools above; an agent is addressable by name or id, and every command
accepts --json.
plori create <name>: get or create an agent by name (reusing a name returns the existing agent).plori agents,plori agent <name>,plori set-model <name> <model>,plori delete <name> --yes.plori run <name> "message": send a message and, by default, wait for the reply and print it. Add--followto stream the turn live, or--no-waitto get a run id back immediately. Pass-as the message to read it from stdin.plori result <name> <run-id>(add--waitto block) andplori runs <name>read run status and history.plori inputs <name>lists runs paused on a human request;plori answer <run-id> <tool-call-id> --approve|--deny|--value <v>replies. Add--always-allowto an--approve(only on the human's explicit instruction) to also grant the standing write consent.plori schedule <name> "prompt" --in <seconds>(or--at <rfc3339>) defers a run;plori schedules <name>andplori unschedule <name> <id>manage them.plori workflows list [--agent <name|id|none>],plori workflows create <name> [--trigger cron --cron <expr>],plori workflows run <name|id>(run it now),plori workflows execution <name|id> <exec-id>.plori credits,plori usage,plori diskread account state.
Costs and limits
Running an agent spends credits; check get_credits before invoking. Agent count and
model tier follow the account's plan. Every call is scoped to the account that owns the
credential; there is no cross-account access.
More
- Integration front door: https://plori.ai/agents.md
- MCP connect guide: https://plori.ai/mcp
- CLI on npm: https://www.npmjs.com/package/@plori/cli
- Authentication detail: https://plori.ai/auth.md
- Site map for agents: https://plori.ai/llms.txt
Gives 0 of the 12 instructions most auth identity skills give in ~1.3k tokens
Counted across 409 of the 410 authors here whose files we hold, read 2026-08-06
- hash passwords with bcrypt or argon2in 53 of 409, across 43 files
- use parameterized queriesin 47 of 409, across 39 files
- load SECRET_KEY from environment variablesin 23 of 409, across 14 files
- validate all input server-sidein 19 of 409, across 11 files
- refresh access tokens before expiryin 17 of 409, across 9 files
- store tokens in httponly cookiesin 17 of 409, across 16 files
- store refresh tokens securelyin 16 of 409, across 6 files
- validate webhook signatures before processingin 15 of 409, across 5 files
- sanitize user inputsin 15 of 409, across 9 files
- implement rate limiting on auth endpointsin 14 of 409, across 9 files
- encrypt sensitive data at restin 13 of 409, across 10 files
- validate uploaded file extensions and sizesin 12 of 409, across 5 files
Said here and by no other author read
- list agents before creating
- check credits before invoking an agent
- read pending inputs and answer them
- use always_allow only on explicit human instruction
- use schedule_run for deferred work
- stream live turn with follow
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.