Unicli
olo-dot-io/Uni-CLI
Comprehensive guide to Uni-CLI — the open Agent-Computer Interface runtime for real software.
Sets up a beginner-friendly Oz cloud software factory that automatically triages new GitHub issues, specs issues labeled ready-to-spec, implements issues labeled ready-to-implement, reviews PRs, and…
$ npx skills add warpdotdev-demos/cloud-factory-demo --skill oz-cloud-factory-demo -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install warpdotdev-demos/cloud-factory-demo oz-cloud-factory-demo --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/warpdotdev-demos/cloud-factory-demo.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/oz-cloud-factory-demo .claude/skills/oz-cloud-factory-demo && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "oz-cloud-factory-demo" agent skill from https://github.com/warpdotdev-demos/cloud-factory-demo/tree/main/.agents/skills/oz-cloud-factory-demo into .claude/skills/oz-cloud-factory-demo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "oz-cloud-factory-demo", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/warpdotdev-demos/cloud-factory-demo/tree/main/.agents/skills/oz-cloud-factory-demoType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add warpdotdev-demos/cloud-factory-demo --skill oz-cloud-factory-demo -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install warpdotdev-demos/cloud-factory-demo oz-cloud-factory-demo --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/warpdotdev-demos/cloud-factory-demo.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/oz-cloud-factory-demo .agents/skills/oz-cloud-factory-demo && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "oz-cloud-factory-demo" agent skill from https://github.com/warpdotdev-demos/cloud-factory-demo/tree/main/.agents/skills/oz-cloud-factory-demo into .agents/skills/oz-cloud-factory-demo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "oz-cloud-factory-demo", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add warpdotdev-demos/cloud-factory-demo --skill oz-cloud-factory-demo -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install warpdotdev-demos/cloud-factory-demo oz-cloud-factory-demo --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/warpdotdev-demos/cloud-factory-demo.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/oz-cloud-factory-demo .cursor/skills/oz-cloud-factory-demo && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "oz-cloud-factory-demo" agent skill from https://github.com/warpdotdev-demos/cloud-factory-demo/tree/main/.agents/skills/oz-cloud-factory-demo into .cursor/skills/oz-cloud-factory-demo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "oz-cloud-factory-demo", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/warpdotdev-demos/cloud-factory-demo.git --path .agents/skills/oz-cloud-factory-demo--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add warpdotdev-demos/cloud-factory-demo --skill oz-cloud-factory-demo -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install warpdotdev-demos/cloud-factory-demo oz-cloud-factory-demo --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/warpdotdev-demos/cloud-factory-demo.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/oz-cloud-factory-demo .gemini/skills/oz-cloud-factory-demo && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "oz-cloud-factory-demo" agent skill from https://github.com/warpdotdev-demos/cloud-factory-demo/tree/main/.agents/skills/oz-cloud-factory-demo into .gemini/skills/oz-cloud-factory-demo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "oz-cloud-factory-demo", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install warpdotdev-demos/cloud-factory-demo oz-cloud-factory-demoInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add warpdotdev-demos/cloud-factory-demo --skill oz-cloud-factory-demo -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/warpdotdev-demos/cloud-factory-demo.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/oz-cloud-factory-demo .github/skills/oz-cloud-factory-demo && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "oz-cloud-factory-demo" agent skill from https://github.com/warpdotdev-demos/cloud-factory-demo/tree/main/.agents/skills/oz-cloud-factory-demo into .github/skills/oz-cloud-factory-demo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "oz-cloud-factory-demo", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add warpdotdev-demos/cloud-factory-demo --skill oz-cloud-factory-demo -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install warpdotdev-demos/cloud-factory-demo oz-cloud-factory-demo --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/warpdotdev-demos/cloud-factory-demo.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/oz-cloud-factory-demo .opencode/skills/oz-cloud-factory-demo && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "oz-cloud-factory-demo" agent skill from https://github.com/warpdotdev-demos/cloud-factory-demo/tree/main/.agents/skills/oz-cloud-factory-demo into .opencode/skills/oz-cloud-factory-demo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "oz-cloud-factory-demo", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
oz-cloud-factory-demoSets up a beginner-friendly Oz cloud software factory that automatically triages new GitHub issues, specs issues labeled ready-to-spec, implements issues labeled ready-to-implement, reviews PRs, and…
Oz Cloud Factory Demo is an agent skill from warpdotdev-demos/cloud-factory-demo. Sets up a beginner-friendly Oz cloud software factory that automatically triages new GitHub issues, specs issues labeled ready-to-spec, implements issues labeled ready-to-implement, reviews PRs, and verifies visible behavior with Oz computer-use subagents. Use when a user wants to install, configure, test, or understand the Cloud Factory demo in a repository of their choice.
Its SKILL.md is about 6.8k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Productivity & Automation, covering Desktop control. It works with GitHub. The licence is MIT.
8 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit ab21d0c. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
ghbrewcurlnpxbashFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
github.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
WARP_API_KEYGITHUB_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Oz Cloud Factory Demo loads about 6.8k tokens when it runs. Until then it costs about 100 tokens; SKILL.md has 3,670 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from warpdotdev-demos/cloud-factory-demo at commit ab21d0c, republished under its MIT licence (© warpdotdev-demos). 3,670 words, ~6,754 tokens.
.claude/skills/oz-cloud-factory-demo/SKILL.md (or your agent's skills folder).Guide a user who is new to Oz through setting up this flow in a GitHub repository:
new issue -> Oz triage (+ optional verify-behavior reproduce) -> Ready to spec label -> Oz spec -> PRODUCT.md + TECH.md PR -> Oz implementation (+ optional verify-behavior verify, with parallel story fan-out for features) -> pull request -> Oz review (+ optional verify-behavior)Use the canonical installer and workflows from warpdotdev-demos/cloud-factory-demo. Explain each action before taking it, keep secrets out of output and files, and stop at explicit activation checkpoints.
The setup is complete when:
triage, spec, write-product-spec, write-tech-spec, validate-changes-match-specs, implementation, and verify-behavior skills.WARP_API_KEY Actions secret. A team key is preferred for shared automation, but a personal key is supported and may be necessary when creating keys through the Oz CLI.Ready to spec triggers spec work and, for a suitable issue, opens a PR containing PRODUCT.md and TECH.md.Ready to implement triggers implementation and, for a suitable issue, produces a pull request..agents/skills/.Ready to implement, Ready to spec, Needs info, or Wait to implement.contents: read and issues: read and has it emit a structured JSON result, and a second deterministic apply job (issues: write) applies the label and comment to the triggering issue only. The agent never holds issue-write access, so it cannot modify other issues.verify-behavior) is a shared skill other stages invoke as Oz cloud subagent work. It chooses browser use (Chrome + Puppeteer MCP) for most web flows or computer use for native apps and multi-surface journeys. Triage can use it in reproduce mode for UI bugs; implementation and review can use it in verify mode for greenfield features and fixes. When PRODUCT.md defines multiple user stories, feature verification defaults to parallel story fan-out with computer-use-capable workers. Default evidence is video of each critical path, with screenshots as keyframes or fallbacks.write-product-spec and write-tech-spec skills, and opens a specs PR containing PRODUCT.md and TECH.md.PRODUCT.md and TECH.md specs exist, it reads them first and uses validate-changes-match-specs to check the completed diff against the specs before opening a PR. For visible UI features or fixes it should also invoke verify-behavior in verify mode when cloud verification is available.Accept any of these from the user's prompt:
owner/repo nameIf none is supplied, ask for one. Do not guess.
Resolve the target to:
TARGET_REPO: GitHub owner/repoTARGET_DIR: local checkout pathDEFAULT_BRANCH: repository default branchIf no local checkout exists, ask where the user wants it cloned, then clone it with gh repo clone. Confirm gh auth status succeeds and that the user has permission to manage Actions secrets and push workflow files.
Always inventory the target before changing anything. This skill must support both:
Inspect the local checkout for:
.agents/skills/triage/SKILL.md.agents/skills/spec/SKILL.md.agents/skills/write-product-spec/SKILL.md.agents/skills/write-tech-spec/SKILL.md.agents/skills/validate-changes-match-specs/SKILL.md.agents/skills/implementation/SKILL.md.agents/skills/verify-behavior/SKILL.md.github/workflows/triage-issues.yml.github/workflows/spec-ready-issues.yml.github/workflows/implement-ready-issues.ymlroadmap.mdvision.mdAlso inspect the remote repository when possible:
gh workflow list --repo "$TARGET_REPO" for Triage New Issues, Spec Ready Issues, and Implement Ready Issues.gh secret list --repo "$TARGET_REPO" for WARP_API_KEY.Ready to implement, Ready to spec, Needs info, and Wait to implement.Classify the setup before proceeding:
Report the classification, the files present, the files missing, and whether WARP_API_KEY appears to be configured. Explain that automated runs consume credits and that workflow files only activate after they are present on the default branch.
Before changing anything, ask whether the user wants to:
Do not reject an existing setup merely because files are present. Treat existing triage or implementation setup as reusable unless it conflicts with the desired flow.
First determine whether the user is running the setup from Warp or another terminal.
If the user is running in Warp, explain that the Oz CLI is bundled with the Warp app and should already be available. Verify it rather than reinstalling it:
command -v oz
oz --versionIf oz is not available in Warp, have the user open the Command Palette, search for Install Oz CLI Command, and run that action. Then verify oz --version again.
If the user is not running in Warp:
On macOS, favor the supported Homebrew installation:
brew tap warpdotdev/warp
brew update
brew install --cask ozOn Linux, use Warp's supported package repository for the distribution and install oz-stable with apt, yum, or pacman.
On Windows, install the Warp app because a standalone Oz CLI package is not currently available.
After installation, verify:
command -v oz
oz --versionDo not continue until both commands succeed. Use the stable oz command, not oz-preview, unless the user explicitly asks to use Preview.
Verify these commands are available:
gitghnode and npxcurlConfirm the user is logged in with oz whoami. If not, run oz login and let the user complete the interactive login.
Use oz whoami to determine whether the user belongs to the intended Warp team and whether this setup should run as a team automation or as the installing user.
Prefer a team API key when the repository is owned by a team and the team has GitHub authorization configured. Team keys are best for durable shared automation because runs are not tied to one user's account.
Allow a personal API key when:
When using a personal key, clearly explain:
If the user wants team-owned automation and does not have a Warp team, guide them through this setup before continuing:
oz whoami again and verify it shows the intended team before creating or storing team keys.A Warp user can belong to only one team at a time. If the user already belongs to a different team, do not create another or switch teams without explaining the impact and receiving explicit approval.
Treat team-owned Oz automation as enabled for this Cloud Factory only after the team exists, the supported plan and credits are confirmed, the Oz by Warp GitHub App can access the repository, the GitHub organization is enabled in the Admin Panel, and oz whoami shows the intended team.
Confirm:
gh auth status succeeds for the GitHub account that will create secrets, push workflow files, open issues, and inspect Actions runs.pull-requests: write.Explain that a run failing with insufficient_credits means a team admin must purchase Add-on Credits in the Oz web app or Warp billing settings. Never claim a credit balance was verified unless a tool actually exposed it.
From TARGET_DIR, inspect the existing .agents/skills/ and .github/workflows/ files first. If any target file already exists, compare it with the canonical file before overwriting it. Show the differences and ask before replacing customized files.
For a clean install, run the canonical installer from the target repository root. Prefer downloading it to a temporary file before running it so child commands cannot consume the rest of the script from stdin:
tmp_installer="$(mktemp)"
curl -fsSL https://raw.githubusercontent.com/warpdotdev-demos/cloud-factory-demo/main/scripts/install-cloud-factory.sh -o "$tmp_installer"
bash "$tmp_installer"
rm "$tmp_installer"The installer should add:
.agents/skills/triage/SKILL.md.agents/skills/spec/SKILL.md.agents/skills/write-product-spec/SKILL.md.agents/skills/write-tech-spec/SKILL.md.agents/skills/validate-changes-match-specs/SKILL.md.agents/skills/implementation/SKILL.md.agents/skills/verify-behavior/SKILL.md.github/workflows/triage-issues.yml.github/workflows/spec-ready-issues.yml.github/workflows/implement-ready-issues.ymlFor an incremental Part 1 → Part 2 upgrade, do not blindly rerun the installer if it would overwrite customized triage or implementation files. Add or update only the missing spec-flow pieces:
npx skills add warpdotdev-demos/cloud-factory-demo --skill spec --agent warp --yes
npx skills add warpdotdev/common-skills --skill write-product-spec --skill write-tech-spec --skill validate-changes-match-specs --agent warp --yes
mkdir -p .github/workflows
curl -fsSL https://raw.githubusercontent.com/warpdotdev-demos/cloud-factory-demo/main/templates/github/workflows/spec-ready-issues.yml -o .github/workflows/spec-ready-issues.ymlThen compare the existing local files against the current canonical versions and ask before updating them:
.agents/skills/triage/SKILL.md may need the Part 2 readiness logic that uses roadmap.md and vision.md to decide when to return Ready to spec..agents/skills/implementation/SKILL.md may need the Part 2 logic that reads PRODUCT.md and TECH.md before implementation and runs validate-changes-match-specs after implementation..github/workflows/implement-ready-issues.yml may need the step that installs validate-changes-match-specs before running the implementation agent.roadmap.md and vision.md should be added if they do not already exist, because the Part 2 triage flow relies on them.For a partial setup repair, install or copy only missing required pieces when possible. If a file exists but is incomplete or outdated, show a diff against the canonical template and get approval before overwriting.
Review the resulting diff. Explain:
triage-issues.yml triggers when an issue is opened.spec-ready-issues.yml triggers when an issue receives a ready-to-spec label and opens a specs PR containing PRODUCT.md and TECH.md.implement-ready-issues.yml triggers when an issue receives a ready-to-implement label and validates the completed implementation against PRODUCT.md and TECH.md when specs exist.verify-behavior is not a separate GitHub workflow. Parent agents (triage, implementation, review) invoke it as a cloud subagent when visual evidence helps.warpdotdev/oz-agent-action@v1.WARP_API_KEY authenticates Oz.Do not silently customize the installed skills. If the repository has special build, test, security, or contribution requirements, offer to add them to the implementation skill and show the proposed changes first.
The workflows require a repository Actions secret named WARP_API_KEY. It may contain either:
If the user already has an appropriate key, have them put it into an environment variable without printing it. Then store it and clear the local variable:
printf '%s' "$WARP_API_KEY" | gh secret set WARP_API_KEY --repo "$TARGET_REPO"
unset WARP_API_KEYIf they need a key, the most explicit path is Settings > Cloud platform > Oz Cloud API Keys in Warp or the Oz web app. Create a key named cloud-factory-github-actions, choose an expiration appropriate for the demo or automation, and choose Team or Personal based on the identity decision above. Copy its one-time value into WARP_API_KEY without printing it.
If using the Oz CLI to create the key, first run oz api-key create --help and use the supported form. If the CLI only supports creating a personal key in the current environment, it is acceptable to use that personal key for this demo. When using JSON output, the one-time secret value is currently in the raw_api_key field. Pipe or store only that value directly into the GitHub secret.
After creating a key by any method, verify metadata only, never the raw key value:
oz api-key list --output-format jsonThe key used for automation should show the intended scope: Team for team-owned automation, or Personal for a user-owned demo or CLI-created setup. If a personal key is used, document that choice in the setup summary so future maintainers know the automation depends on that user's account.
Never print, read back, commit, or write the key to a repository file. Confirm only that the WARP_API_KEY secret name exists using gh secret list --repo "$TARGET_REPO".
An optional WARP_AGENT_PROFILE repository variable may select a preconfigured Oz Agent Profile. For team-key automation, prefer a team profile. For personal-key demos, a personal profile is acceptable if the user understands it is tied to their account.
Before activation, review:
Do not commit or push without explicit user approval. The workflows only activate after they are present on the default branch. If the user prefers review first, create a setup branch and pull request, then explain that automation begins after merge.
After activation, confirm all three workflows appear with:
gh workflow list --repo "$TARGET_REPO"If this was an incremental Part 1 → Part 2 upgrade, also confirm:
.github/workflows/spec-ready-issues.yml was added..agents/skills/spec/SKILL.md, .agents/skills/write-product-spec/SKILL.md, .agents/skills/write-tech-spec/SKILL.md, and .agents/skills/validate-changes-match-specs/SKILL.md exist.roadmap.md and vision.md exist or the user explicitly chose to defer adding them.Ready to spec for issues that match the roadmap and vision but are too ambiguous or complex to one-shot.Ask permission before creating a test issue because opening it triggers a billable cloud run.
Create one small, clear, safe issue that is relevant to the target repository. Avoid an issue likely to cause destructive, security-sensitive, or broad changes. Capture its URL.
Watch the Triage New Issues workflow and inspect its result with gh run list and gh run view. The workflow runs two jobs: a read-only triage job (the agent analyzes the issue and emits a JSON result) and a deterministic apply job that posts the result comment and applies the label. Confirm:
apply job posted the triage result as a comment on the issue.If triage does not choose Ready to implement or Ready to spec, do not override the label merely to force a downstream run. Explain the result and either improve the test issue with the user or create a separate suitable test issue with permission.
If triage applies Ready to spec but no spec workflow starts, check whether the label was applied by github-actions using GitHub's default token. GitHub does not trigger most new workflow runs from events created by GITHUB_TOKEN, so a label applied by the triage workflow may not fire the separate issues.labeled spec workflow. For a smoke test, explain this limitation and ask before manually removing and re-adding the label as a human user. For a durable setup, recommend changing the workflow design to use a PAT or GitHub App token for label writes, dispatch the spec workflow explicitly, or combine orchestration so spec work is not dependent on a suppressed follow-up event.
If triage applies Ready to implement but no implementation workflow starts, check whether the label was applied by github-actions using GitHub's default token. GitHub does not trigger most new workflow runs from events created by GITHUB_TOKEN, so a label applied by the triage workflow may not fire the separate issues.labeled implementation workflow. For a smoke test, explain this limitation and ask before manually removing and re-adding the label as a human user. For a durable setup, recommend changing the workflow design to use a PAT or GitHub App token for label writes, dispatch the implementation workflow explicitly, or combine orchestration so implementation is not dependent on a suppressed follow-up event.
Before allowing a Ready to spec label to trigger spec work, remind the user that this starts another billable run that may create a branch, open a specs PR, post comments, and change labels.
Watch the Spec Ready Issues workflow. Confirm:
PRODUCT.md and TECH.md under a specs directory.Ready to implement until the specs PR has been reviewed or the repository explicitly treats authored specs as implementation-ready without review.If spec applies Ready to implement but no implementation workflow starts, check whether the label was applied by github-actions using GitHub's default token. Account for GitHub's GITHUB_TOKEN event suppression in the same way as the triage-to-spec handoff.
Before allowing a Ready to implement label to trigger implementation, remind the user that this starts another billable run that may push a branch and open a PR.
Watch the Implement Ready Issues workflow. Confirm:
Do not merge the test PR. Present the PR, validation results, Oz run link, and any failures for human review.
WARP_API_KEY error: Confirm the repository secret exists and the key is valid. Never expose its value.WARP_API_KEY secret with a key created by the intended user, or move to a team key with team GitHub authorization.insufficient_credits: Direct a team admin to purchase Add-on Credits in Oz or Warp billing settings, then retry.permissions block with the attempted action and check repository or organization Actions policy.triage.Ready to spec, ready-to-spec, or ready to spec. If triage added the label from github-actions, account for GitHub's GITHUB_TOKEN event suppression.Ready to implement, ready-to-implement, or ready to implement. If triage added the label from github-actions, account for GitHub's GITHUB_TOKEN event suppression.Ready to implement.© warpdotdev-demos, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/oz-cloud-factory-demo of warpdotdev-demos/cloud-factory-demo.
Open the folder on GitHubat commit ab21d0c
Oz Cloud Factory Demo next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Oz Cloud Factory Demo this skillwarpdotdev-demos/cloud-factory-demo | 334 | — | ~6.8k | Automated safety check: Pass | MIT | |
| Unicliolo-dot-io/Uni-CLI | 274 | — | ~3.8k | Automated safety check: Notes | Apache-2.0 | |
| Evidence-Driven Testingmichaelshimeles/skills | 1.3k | 1 repos | ~3.9k | Automated safety check: Pass | None | |
| Vision SkillsAnionex/agent-vision-toolkit | 1.2k | — | ~4k | Automated safety check: Pass | MIT | |
| Mac Computer UseTo3akaRin/mac-computer-use | 1.1k | — | ~495 | Automated safety check: Pass | MIT | |
| Connect Apps with ComposioComposioHQ/awesome-claude-skills | 77k | 3 repos | ~557 | Automated safety check: Pass | None |
olo-dot-io/Uni-CLI
Comprehensive guide to Uni-CLI — the open Agent-Computer Interface runtime for real software.
michaelshimeles/skills
Records an annotated screen recording of the agent testing an app hands-on, then posts the video and a results summary to the PR and tracker issue.
Anionex/agent-vision-toolkit
Local vision CLIs: glance (describe/ask/OCR an image), ground (locate a target, pixel box), detect (element inventory), trace (image to SVG geometry), crop (cut a pixel box to a file), and…
To3akaRin/mac-computer-use
操作 macOS 桌面应用,探测窗口和自动化接口、截图、读取或修改辅助功能元素、执行鼠标键盘动作,以及通过 CDP 操作内嵌 Chromium 页面。适用于桌面应用自动化与界面验收;普通网页任务优先使用已有浏览器工具。
ComposioHQ/awesome-claude-skills
Connects an agent to 1000+ external apps through the Composio Tool Router plugin, so it can actually send emails, create issues and post messages instead of only drafting them.
Rion-Wu-tech/ai-daily-briefing
Generate a source-linked Chinese AI/Web3 daily briefing with official model releases, infrastructure, application adoption, funding, and cross-industry signals directly in Codex, then save the…
warpdotdev-demos/cloud-factory-demo
Daily outer loop that reviews human reactions to automated review-pr comments, synthesizes durable organizational knowledge, and opens a PR to update the review-pr skill when the feedback is worth…
warpdotdev-demos/cloud-factory-demo
Review a PR from local annotated-diff artifacts and write validated review.json for the workflow to publish.
warpdotdev-demos/cloud-factory-demo
Triage an incoming GitHub, Jira, Linear, or other issue-tracker issue against the current codebase and related open issues, then return a structured decision with exactly one…
warpdotdev-demos/cloud-factory-demo
Verify or reproduce visible product behavior by delegating to Oz's dedicated computer-use capability, requiring a native Oz video artifact for meaningful UI flows and durable Oz run/artifact links.
warpdotdev-demos/cloud-factory-demo
Implement a fix or feature from a GitHub, Jira, Linear, or other issue-tracker issue by fetching issue context, inspecting the current codebase, making code changes, validating them, verifying…
warpdotdev-demos/cloud-factory-demo
Coordinate spec-driven development for a GitHub, Jira, Linear, or other issue-tracker issue marked ready-to-spec by using write-product-spec and write-tech-spec, creating PRODUCT.md and TECH.md…
Works with
Categories
Sets up a beginner-friendly Oz cloud software factory that automatically triages new GitHub issues, specs issues labeled ready-to-spec, implements issues labeled ready-to-implement, reviews PRs, and…. Oz Cloud Factory Demo is an agent skill from warpdotdev-demos/cloud-factory-demo. Sets up a beginner-friendly Oz cloud software factory that automatically triages new GitHub issues, specs issues labeled ready-to-spec, implements issues labeled ready-to-implement, reviews PRs, and verifies visible behavior with Oz computer-use subagents.
Oz Cloud Factory Demo fits situations like: A user wants to install; understand the Cloud Factory demo in a repository of their choice.
Run `npx skills add warpdotdev-demos/cloud-factory-demo --skill oz-cloud-factory-demo -a claude-code`. Or copy the skill folder (.agents/skills/oz-cloud-factory-demo in warpdotdev-demos/cloud-factory-demo) into .claude/skills/oz-cloud-factory-demo in your project. Claude Code loads it when a task matches its description.
Run `npx skills add warpdotdev-demos/cloud-factory-demo --skill oz-cloud-factory-demo -a codex`. Or copy the skill folder (.agents/skills/oz-cloud-factory-demo in warpdotdev-demos/cloud-factory-demo) into .agents/skills/oz-cloud-factory-demo in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add warpdotdev-demos/cloud-factory-demo --skill oz-cloud-factory-demo -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/oz-cloud-factory-demo, .gemini/skills/oz-cloud-factory-demo, .github/skills/oz-cloud-factory-demo and .opencode/skills/oz-cloud-factory-demo in your project.
Going by SKILL.md and its folder, Oz Cloud Factory Demo needs the command-line tools its instructions call (gh, brew, curl, npx and bash) and credentials named WARP_API_KEY and GITHUB_TOKEN. Our summary lists: A credential in WARP_API_KEY.
SKILL.md names 1 domain. As links in the text: github.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Oz Cloud Factory Demo is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 6.8k tokens (SKILL.md is roughly 27k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Oz Cloud Factory Demo: Unicli (olo-dot-io/Uni-CLI, 274 stars), Evidence-Driven Testing (michaelshimeles/skills, 1.3k stars), Vision Skills (Anionex/agent-vision-toolkit, 1.2k stars) and Mac Computer Use (To3akaRin/mac-computer-use, 1.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
warpdotdev-demos (a GitHub organization) maintains it in warpdotdev-demos/cloud-factory-demo, which has 334 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on August 12, 2026.
Source: warpdotdev-demos/cloud-factory-demo on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.