Start with the installation model, then choose a profile or individual workflow. This guide
explains destinations, dependency resolution, host activation, invocation, verification,
updates, removal, and the purpose of every bundled skill.
Choose an installation path
The two paths solve different problems. Choose one before running commands.
SELECTIVE
npm installer
Best when Codex, OpenCode, or Pi should load only the workflows you select.
Install one skill, several skills, a profile, or all 54.
Installing the full native plugin and copying the same skills with npm does not make the
catalog smaller. Prefer one activation path for a given host and scope.
Selective npm installer
Inspect the catalog
This prints the eight profiles and all 54 available skill IDs. It does not modify files.
npx @waybarrios/opencode-power-pack list
Select skills or a profile
Pass any number of skill IDs, or use one or more repeatable --profile flags.
# One skill
npx @waybarrios/opencode-power-pack install code-review
# Several skills
npx @waybarrios/opencode-power-pack install code-review security-review
# A curated profile
npx @waybarrios/opencode-power-pack install --profile review
# Combine a profile with another skill
npx @waybarrios/opencode-power-pack install --profile frontend code-quality
The default --global scope writes to ~/.agents/skills for your
user. --project finds the current Git root and writes to
<repo>/.agents/skills so the selection travels with one repository.
# User-level, the default
npx @waybarrios/opencode-power-pack install code-review --global
# Current Git repository only
npx @waybarrios/opencode-power-pack install --profile review --project
Preview, install, and restart
Use --dry-run first when you want to inspect the resolved selection.
Start a new Codex, OpenCode, or Pi session if the newly copied skills do not appear automatically.
What the installer copies
Each selected directory is copied intact, including its SKILL.md, references,
scripts, or assets. The installer also attaches UPSTREAMS.json, third-party
notices, and license texts to every copied skill. Declared companion skills are resolved
recursively and added automatically.
Existing directories are skipped by default. --force stages the replacement,
locks the skill, preserves a rollback copy during promotion, and restores it if promotion fails.
Let your agent install it
Paste the prompt below into a terminal-capable Codex, OpenCode, or Pi session. It makes the
agent ask what you need, recommend the smallest useful selection, and preview the exact destination
and dependency closure before writing project-local skills.
It does not modify package.json or add an application runtime dependency.
AGENT PROMPTSAFE PROJECT INSTALL
Help me choose and install the right OpenCode Power Pack skills safely and project-locally in the current Git repository.
Your goal is to understand what I need, recommend the smallest useful profile or set of individual skills, obtain my explicit selection, install it for the active coding-agent host, preserve all existing project work, and leave a reproducible verification report.
Safety rules:
1. Do not modify package.json, package-lock.json, npm-shrinkwrap.json, pnpm-lock.yaml, yarn.lock, bun.lock, or application dependencies.
2. Do not use --force, --global, --all, sudo, destructive Git commands, or manual deletion/replacement of existing skill directories. Do not choose a profile or skill for me, and do not install anything before I explicitly approve the selection.
3. Do not clean, reset, stash, commit, or push the user's worktree. Existing changes belong to the user.
4. Do not create or modify repository files outside the resolved project-local .agents/skills directory. npm/npx may use its normal user cache, but must not add the package to this project's dependencies.
5. Stop and report the exact command, exit code, and error if a prerequisite, network request, permission check, or installer step fails. Do not bypass a failure with broader permissions or different flags.
Phase 1: detect the host and choose one installation path.
- If the active host is Claude Code, do not run the portable npm installer. Explain that Claude Code should use the collision-safe native plugin, then show these commands exactly:
/plugin marketplace add waybarrios/opencode-power-pack
/plugin install opencode-power-pack@opencode-power-pack
After the user runs them, tell them to run /reload-plugins if prompted, verify the plugin with /plugin, and test /opencode-power-pack:code-review. Report this Claude-specific plan and stop.
- If the active host is Codex, OpenCode, or Pi, continue with the portable project-local selection procedure below.
- If the host cannot be determined confidently, stop and ask which host is active. Do not guess from repository files alone.
Phase 2: preflight without changing repository files.
1. Print the current directory with pwd.
2. Run git rev-parse --show-toplevel. Stop if this is not a Git repository. Save the absolute Git root.
3. Run node --version. Parse the major version and require Node.js 20 or newer. If it is older or unavailable, stop and explain how to satisfy the prerequisite without changing this project.
4. Run npm --version and stop if npm or npx is unavailable.
5. Capture git status --short before installation. Use it only as a baseline; do not alter any listed file.
6. State that the only permitted destination is <git-root>/.agents/skills.
Phase 3: discover my needs and obtain an explicit selection.
1. Run npx @waybarrios/opencode-power-pack list to read the current profiles and skill IDs from the published package. Treat that output as authoritative; do not invent names.
2. Ask what I want to accomplish, what kind of repository I am working in, and whether I prefer a broad workflow pack or only the minimum individual skills. Wait for my answer.
3. Map my answer to at most three clear options. Consider these curated profiles when relevant: `recommended` for a balanced starter set, `review` for PR and bug review, `feature-dev` for structured feature delivery, `frontend` for interface work, `security` for application-security workflows, `huggingface` for Hugging Face and ML work, `authoring` for creating skills and MCP servers, and `project-memory` for improving agent instruction files. Individual skill IDs may be selected instead of a profile, and profiles may be combined only when the need clearly requires both.
4. For each option, state the exact profile flags or skill IDs, what it enables, important companion skills it may resolve, and the tradeoff in installed scope. Recommend the smallest option that fully addresses my stated goal.
5. Ask me to choose or modify the proposed selection. Wait for explicit approval. Do not treat silence or a vague acknowledgement as approval.
6. Convert the approved choice into `<approved-selection>`, using one or more `--profile <name>` flags and/or exact individual skill IDs. Never substitute `--all` unless I explicitly request the complete catalog.
Phase 4: preview the exact dependency closure.
Run exactly:
npx @waybarrios/opencode-power-pack install <approved-selection> --project --dry-run
Require a successful exit code. Before writing anything, report:
- the detected host, my stated goal, the approved selection, Git root, and resolved destination;
- the number and complete list of resolved skills, including automatically included companion skills;
- every planned status printed by the installer;
- which entries are new and which already exist;
- any warning, conflict, unexpected path, or permission problem.
Interpret `would-update` as an existing destination conflict. Do not claim it will be overwritten: without --force, the real installation will skip that entry. If the resolved destination is not exactly <git-root>/.agents/skills, or the preview proposes anything outside it, stop. If existing entries are present, explain that they will be preserved and that the result may be a partial update. Never add --force on your own.
Phase 5: install only after the preview satisfies every safety rule.
Run exactly:
npx @waybarrios/opencode-power-pack install <approved-selection> --project
Use the exact same approved selection as the successful dry-run and remove only `--dry-run`. If it fails, stop and report the failure. Do not retry with sudo, --global, --force, or manual copying.
Phase 6: verify and report.
1. Compare the install output with the dry-run selection. Record every `installed`, `skipped`, and warning result.
2. Confirm that every newly installed skill directory exists under <git-root>/.agents/skills and contains a SKILL.md file.
3. Run git status --short again and compare it with the saved baseline. Confirm that installation introduced no changes outside .agents/skills and did not change dependency manifests or lockfiles. Do not revert unrelated differences.
4. Tell the user to start a new agent session if the skills do not appear automatically.
5. Give the host-specific verification command:
- Codex: inspect /plugins, then invoke an installed skill such as $code-review.
- OpenCode: run opencode debug skill, then invoke /code-review.
- Pi: run pi list, then request a task that matches an installed workflow.
6. Finish with a concise structured report containing: stated need, approved selection and rationale, alternatives not chosen, host, Node/npm versions, Git root, destination, exact commands run, resolved skill count and names, installed entries, preserved/skipped entries, warnings or failures, worktree comparison, verification result, and any user action still required.
Remove --project for a user-level install. Replace recommended with
review, feature-dev, frontend, security,
huggingface, authoring, or project-memory.
Claude Code native commands
Run these inside Claude Code because its native plugin supplies the complete namespaced catalog.
Agent-assisted installation still follows the current host's approval and sandbox rules. The
prompt authorizes only the scoped installation described above, not forced replacement or other
project changes.
CLI command reference
Command or option
Behavior
list
Print all profiles and skill IDs from the installed package.
install <skill...>
Install one or more explicit skill IDs.
--profile <name>
Add a curated profile. Repeat the option to combine profiles.
--all
Select the complete 54-skill catalog.
--global
Write to ~/.agents/skills. This is the default.
--project
Find the current Git root and write to .agents/skills inside it.
--dry-run
Show the resolved destination and changes without writing files.
--force
Replace existing copies using locking, staging, and rollback.
-h or --help
Print installer syntax and options.
Run without a global install
npx @waybarrios/opencode-power-pack@latest --help
Keep the CLI globally
npm install --global @waybarrios/opencode-power-pack
opencode-power-pack list
opencode-power-pack install code-review
How skills work
A skill is an instruction package centered on a SKILL.md file. It is not a
background service and does not add a runtime dependency to your application. Your coding
agent reads the skill's trigger description, then follows its workflow when the task matches
or when you invoke the skill explicitly.
01
Discover
The host loads installed skill IDs and their trigger descriptions.
02
Select
You name a skill explicitly, or the host matches one to the current task.
03
Execute
The agent follows the workflow and uses only tools and permissions available in that host.
04
Coordinate
Coordinator skills may call companion workflows for exploration, architecture, review, or deployment.
Installing a skill does not grant extra operating-system or cloud permissions. Authentication,
tool access, approvals, and sandbox rules remain controlled by Claude Code, Codex, OpenCode,
Pi, and your local environment.
Full native host installs
Each method below installs all 54 workflows. Use the npm path above when you want a smaller
set for Codex, OpenCode, or Pi.
01
Claude Code
FULL CATALOG
Run both commands inside Claude Code. The first registers the repository marketplace; the second activates its plugin.
huggingface Model and deployment workflows25 skills
Covers Hub operations, model and dataset discovery, local inference, training, evaluation, Gradio, Spaces, tracking, ZeroGPU, and production SageMaker deployment.
The selective CLI has no remove command in v0.4.0. To remove a copied workflow, verify the
destination printed by the installer and delete only its exact skill directory, such as
~/.agents/skills/code-review or <repo>/.agents/skills/code-review.
To remove it, delete the matching opencode-power-pack@... entry from the config where it was installed, then restart OpenCode.
Pi
pi update git:github.com/waybarrios/opencode-power-pack
pi remove git:github.com/waybarrios/opencode-power-pack
Troubleshooting
Node rejects the package
The selective installer requires Node.js 20 or newer. Check with node --version, upgrade Node, and run the same npx command again.
Unknown skill or profile
Run npx @waybarrios/opencode-power-pack list and copy the lowercase hyphenated ID exactly. Profile names and skill IDs are case-sensitive.
--project cannot find a repository
Run the installer from inside a Git working tree. The option walks upward until it finds the repository's .git entry.
A copied skill is not visible
Start a new host session and confirm that the skill exists under the expected user or project .agents/skills directory.
A Claude skill name conflicts
Use the namespaced form, such as /opencode-power-pack:code-review.
The installer will not overwrite a skill
This is deliberate. Preview the update with --dry-run, then repeat it with --force.
An .opp-lock directory remains
First confirm that no installer process is running. The lock prevents concurrent replacement
of the same skill. If a terminated process left it behind, remove only the exact lock path
reported in the error and repeat the install.
The same skill appears from two sources
A full native plugin and an npm-copied skill can overlap. Disable one activation path for that
host and scope. In Claude Code, prefer the namespaced plugin form to avoid name collisions.