mirror of
https://github.com/obra/superpowers.git
synced 2026-04-30 14:09:04 +08:00
Compare commits
2 Commits
lift-code-
...
codex/pri-
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3d7b32ba57 | ||
|
|
772332a476 |
@@ -1,67 +0,0 @@
|
|||||||
# Installing Superpowers for Codex
|
|
||||||
|
|
||||||
Enable superpowers skills in Codex via native skill discovery. Just clone and symlink.
|
|
||||||
|
|
||||||
## Prerequisites
|
|
||||||
|
|
||||||
- Git
|
|
||||||
|
|
||||||
## Installation
|
|
||||||
|
|
||||||
1. **Clone the superpowers repository:**
|
|
||||||
```bash
|
|
||||||
git clone https://github.com/obra/superpowers.git ~/.codex/superpowers
|
|
||||||
```
|
|
||||||
|
|
||||||
2. **Create the skills symlink:**
|
|
||||||
```bash
|
|
||||||
mkdir -p ~/.agents/skills
|
|
||||||
ln -s ~/.codex/superpowers/skills ~/.agents/skills/superpowers
|
|
||||||
```
|
|
||||||
|
|
||||||
**Windows (PowerShell):**
|
|
||||||
```powershell
|
|
||||||
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.agents\skills"
|
|
||||||
cmd /c mklink /J "$env:USERPROFILE\.agents\skills\superpowers" "$env:USERPROFILE\.codex\superpowers\skills"
|
|
||||||
```
|
|
||||||
|
|
||||||
3. **Restart Codex** (quit and relaunch the CLI) to discover the skills.
|
|
||||||
|
|
||||||
## Migrating from old bootstrap
|
|
||||||
|
|
||||||
If you installed superpowers before native skill discovery, you need to:
|
|
||||||
|
|
||||||
1. **Update the repo:**
|
|
||||||
```bash
|
|
||||||
cd ~/.codex/superpowers && git pull
|
|
||||||
```
|
|
||||||
|
|
||||||
2. **Create the skills symlink** (step 2 above) — this is the new discovery mechanism.
|
|
||||||
|
|
||||||
3. **Remove the old bootstrap block** from `~/.codex/AGENTS.md` — any block referencing `superpowers-codex bootstrap` is no longer needed.
|
|
||||||
|
|
||||||
4. **Restart Codex.**
|
|
||||||
|
|
||||||
## Verify
|
|
||||||
|
|
||||||
```bash
|
|
||||||
ls -la ~/.agents/skills/superpowers
|
|
||||||
```
|
|
||||||
|
|
||||||
You should see a symlink (or junction on Windows) pointing to your superpowers skills directory.
|
|
||||||
|
|
||||||
## Updating
|
|
||||||
|
|
||||||
```bash
|
|
||||||
cd ~/.codex/superpowers && git pull
|
|
||||||
```
|
|
||||||
|
|
||||||
Skills update instantly through the symlink.
|
|
||||||
|
|
||||||
## Uninstalling
|
|
||||||
|
|
||||||
```bash
|
|
||||||
rm ~/.agents/skills/superpowers
|
|
||||||
```
|
|
||||||
|
|
||||||
Optionally delete the clone: `rm -rf ~/.codex/superpowers`.
|
|
||||||
@@ -1,126 +0,0 @@
|
|||||||
# Superpowers for Codex
|
|
||||||
|
|
||||||
Guide for using Superpowers with OpenAI Codex via native skill discovery.
|
|
||||||
|
|
||||||
## Quick Install
|
|
||||||
|
|
||||||
Tell Codex:
|
|
||||||
|
|
||||||
```
|
|
||||||
Fetch and follow instructions from https://raw.githubusercontent.com/obra/superpowers/refs/heads/main/.codex/INSTALL.md
|
|
||||||
```
|
|
||||||
|
|
||||||
## Manual Installation
|
|
||||||
|
|
||||||
### Prerequisites
|
|
||||||
|
|
||||||
- OpenAI Codex CLI
|
|
||||||
- Git
|
|
||||||
|
|
||||||
### Steps
|
|
||||||
|
|
||||||
1. Clone the repo:
|
|
||||||
```bash
|
|
||||||
git clone https://github.com/obra/superpowers.git ~/.codex/superpowers
|
|
||||||
```
|
|
||||||
|
|
||||||
2. Create the skills symlink:
|
|
||||||
```bash
|
|
||||||
mkdir -p ~/.agents/skills
|
|
||||||
ln -s ~/.codex/superpowers/skills ~/.agents/skills/superpowers
|
|
||||||
```
|
|
||||||
|
|
||||||
3. Restart Codex.
|
|
||||||
|
|
||||||
4. **For subagent skills** (optional): Skills like `dispatching-parallel-agents` and `subagent-driven-development` require Codex's multi-agent feature. Add to your Codex config:
|
|
||||||
```toml
|
|
||||||
[features]
|
|
||||||
multi_agent = true
|
|
||||||
```
|
|
||||||
|
|
||||||
### Windows
|
|
||||||
|
|
||||||
Use a junction instead of a symlink (works without Developer Mode):
|
|
||||||
|
|
||||||
```powershell
|
|
||||||
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.agents\skills"
|
|
||||||
cmd /c mklink /J "$env:USERPROFILE\.agents\skills\superpowers" "$env:USERPROFILE\.codex\superpowers\skills"
|
|
||||||
```
|
|
||||||
|
|
||||||
## How It Works
|
|
||||||
|
|
||||||
Codex has native skill discovery — it scans `~/.agents/skills/` at startup, parses SKILL.md frontmatter, and loads skills on demand. Superpowers skills are made visible through a single symlink:
|
|
||||||
|
|
||||||
```
|
|
||||||
~/.agents/skills/superpowers/ → ~/.codex/superpowers/skills/
|
|
||||||
```
|
|
||||||
|
|
||||||
The `using-superpowers` skill is discovered automatically and enforces skill usage discipline — no additional configuration needed.
|
|
||||||
|
|
||||||
## Usage
|
|
||||||
|
|
||||||
Skills are discovered automatically. Codex activates them when:
|
|
||||||
- You mention a skill by name (e.g., "use brainstorming")
|
|
||||||
- The task matches a skill's description
|
|
||||||
- The `using-superpowers` skill directs Codex to use one
|
|
||||||
|
|
||||||
### Personal Skills
|
|
||||||
|
|
||||||
Create your own skills in `~/.agents/skills/`:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
mkdir -p ~/.agents/skills/my-skill
|
|
||||||
```
|
|
||||||
|
|
||||||
Create `~/.agents/skills/my-skill/SKILL.md`:
|
|
||||||
|
|
||||||
```markdown
|
|
||||||
---
|
|
||||||
name: my-skill
|
|
||||||
description: Use when [condition] - [what it does]
|
|
||||||
---
|
|
||||||
|
|
||||||
# My Skill
|
|
||||||
|
|
||||||
[Your skill content here]
|
|
||||||
```
|
|
||||||
|
|
||||||
The `description` field is how Codex decides when to activate a skill automatically — write it as a clear trigger condition.
|
|
||||||
|
|
||||||
## Updating
|
|
||||||
|
|
||||||
```bash
|
|
||||||
cd ~/.codex/superpowers && git pull
|
|
||||||
```
|
|
||||||
|
|
||||||
Skills update instantly through the symlink.
|
|
||||||
|
|
||||||
## Uninstalling
|
|
||||||
|
|
||||||
```bash
|
|
||||||
rm ~/.agents/skills/superpowers
|
|
||||||
```
|
|
||||||
|
|
||||||
**Windows (PowerShell):**
|
|
||||||
```powershell
|
|
||||||
Remove-Item "$env:USERPROFILE\.agents\skills\superpowers"
|
|
||||||
```
|
|
||||||
|
|
||||||
Optionally delete the clone: `rm -rf ~/.codex/superpowers` (Windows: `Remove-Item -Recurse -Force "$env:USERPROFILE\.codex\superpowers"`).
|
|
||||||
|
|
||||||
## Troubleshooting
|
|
||||||
|
|
||||||
### Skills not showing up
|
|
||||||
|
|
||||||
1. Verify the symlink: `ls -la ~/.agents/skills/superpowers`
|
|
||||||
2. Check skills exist: `ls ~/.codex/superpowers/skills`
|
|
||||||
3. Restart Codex — skills are discovered at startup
|
|
||||||
|
|
||||||
### Windows junction issues
|
|
||||||
|
|
||||||
Junctions normally work without special permissions. If creation fails, try running PowerShell as administrator.
|
|
||||||
|
|
||||||
## Getting Help
|
|
||||||
|
|
||||||
- Report issues: https://github.com/obra/superpowers/issues
|
|
||||||
- Main documentation: https://github.com/obra/superpowers
|
|
||||||
@@ -70,10 +70,11 @@ specified in the instructions above.
|
|||||||
|
|
||||||
### When this workaround can be removed
|
### When this workaround can be removed
|
||||||
|
|
||||||
This approach compensates for Codex's plugin system not yet supporting an `agents`
|
This approach compensates for Codex not yet exposing plugin-packaged custom
|
||||||
field in `plugin.json`. When `RawPluginManifest` gains an `agents` field, the
|
agents as named `spawn_agent` targets. OpenAI plugin examples can include
|
||||||
plugin can symlink to `agents/` (mirroring the existing `skills/` symlink) and
|
plugin-level `agents/` directories, but skills still need to read those prompts
|
||||||
skills can dispatch named agent types directly.
|
and spawn a built-in agent role. When Codex exposes plugin agents as callable
|
||||||
|
named agent types, this manual prompt-loading workaround can be removed.
|
||||||
|
|
||||||
## Environment Detection
|
## Environment Detection
|
||||||
|
|
||||||
|
|||||||
@@ -14,11 +14,29 @@ Skills use Claude Code tool names. When you encounter these in a skill, use your
|
|||||||
| `Skill` tool (invoke a skill) | `activate_skill` |
|
| `Skill` tool (invoke a skill) | `activate_skill` |
|
||||||
| `WebSearch` | `google_web_search` |
|
| `WebSearch` | `google_web_search` |
|
||||||
| `WebFetch` | `web_fetch` |
|
| `WebFetch` | `web_fetch` |
|
||||||
| `Task` tool (dispatch subagent) | No equivalent — Gemini CLI does not support subagents |
|
| `Task` tool (dispatch subagent) | `@agent-name` (see [Subagent support](#subagent-support)) |
|
||||||
|
|
||||||
## No subagent support
|
## Subagent support
|
||||||
|
|
||||||
Gemini CLI has no equivalent to Claude Code's `Task` tool. Skills that rely on subagent dispatch (`subagent-driven-development`, `dispatching-parallel-agents`) will fall back to single-session execution via `executing-plans`.
|
Gemini CLI supports subagents natively via the `@` syntax. Use the built-in `@generalist` agent to dispatch any task — it has access to all tools and follows the prompt you provide.
|
||||||
|
|
||||||
|
When a skill says to dispatch a named agent type, use `@generalist` with the full prompt from the skill's prompt template:
|
||||||
|
|
||||||
|
| Skill instruction | Gemini CLI equivalent |
|
||||||
|
|-------------------|----------------------|
|
||||||
|
| `Task tool (superpowers:implementer)` | `@generalist` with the filled `implementer-prompt.md` template |
|
||||||
|
| `Task tool (superpowers:spec-reviewer)` | `@generalist` with the filled `spec-reviewer-prompt.md` template |
|
||||||
|
| `Task tool (superpowers:code-reviewer)` | `@code-reviewer` (bundled agent) or `@generalist` with the filled review prompt |
|
||||||
|
| `Task tool (superpowers:code-quality-reviewer)` | `@generalist` with the filled `code-quality-reviewer-prompt.md` template |
|
||||||
|
| `Task tool (general-purpose)` with inline prompt | `@generalist` with your inline prompt |
|
||||||
|
|
||||||
|
### Prompt filling
|
||||||
|
|
||||||
|
Skills provide prompt templates with placeholders like `{WHAT_WAS_IMPLEMENTED}` or `[FULL TEXT of task]`. Fill all placeholders and pass the complete prompt as the message to `@generalist`. The prompt template itself contains the agent's role, review criteria, and expected output format — `@generalist` will follow it.
|
||||||
|
|
||||||
|
### Parallel dispatch
|
||||||
|
|
||||||
|
Gemini CLI supports parallel subagent dispatch. When a skill asks you to dispatch multiple independent subagent tasks in parallel, request all of those `@generalist` or named subagent tasks together in the same prompt. Keep dependent tasks sequential, but do not serialize independent subagent tasks just to preserve a simpler history.
|
||||||
|
|
||||||
## Additional Gemini CLI tools
|
## Additional Gemini CLI tools
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user