docs(pi): add experimental pi support (Phase 1)#500
docs(pi): add experimental pi support (Phase 1)#500
Conversation
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 WalkthroughWalkthroughAdds experimental Pi support documentation: new Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Possibly related issues
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
11a6b67 to
d025851
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
.pi/INSTALL.md (1)
3-6: Prerequisites omit the Pi installation command itself.Since this file doubles as human-readable documentation, consider adding the npm install step so new users have a fully self-contained guide.
npm install -g@mariozechner/pi-coding-agent`` is the command that installs Pi.📝 Suggested addition
## Prerequisites +- [Node.js](https://nodejs.org/) (for `npm install -g `@mariozechner/pi-coding-agent``) - [Pi](https://github.com/mariozechner/pi-coding-agent) installed - Git🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.pi/INSTALL.md around lines 3 - 6, Add the missing npm install step to the Prerequisites section of .pi/INSTALL.md so the guide is self-contained: under the "Prerequisites" heading insert the global install command for Pi (npm install -g `@mariozechner/pi-coding-agent`) and ensure it appears above or alongside the existing Git bullet so new users can copy/paste the full installation step.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In @.pi/INSTALL.md:
- Around line 36-38: Replace the ambiguous example `pi update` in the HTTPS
install path with a source-specific command to avoid updating all installed
packages: change the code block that currently shows `pi update` to `pi update
https://github.com/obra/superpowers` so the example updates only that repository
rather than all globally installed Pi packages.
---
Nitpick comments:
In @.pi/INSTALL.md:
- Around line 3-6: Add the missing npm install step to the Prerequisites section
of .pi/INSTALL.md so the guide is self-contained: under the "Prerequisites"
heading insert the global install command for Pi (npm install -g
`@mariozechner/pi-coding-agent`) and ensure it appears above or alongside the
existing Git bullet so new users can copy/paste the full installation step.
Add documentation for using superpowers with pi coding agent: - .pi/INSTALL.md: machine-readable install instructions - docs/README.pi.md: full guide with tool mapping, architecture, troubleshooting, and known differences from Claude Code - README.md: add pi section alongside Codex/OpenCode Pi discovers skills from the skills/ directory via its native package system. No plugins, hooks, bootstrap scripts, or CLI wrappers needed. Refs: obra#435
d025851 to
6b0dc4d
Compare
|
Does pi have a way to autoload the using-superpowers bootstrap at startup? |
Bare `pi update` updates all installed packages. Specify the source URL so the example only updates superpowers.
|
Pi doesn't have a hooks system like Claude Code's A small This is a code change, not documentation. I'll track it as Phase 2 work. The docs already note the limitation under "Known Differences from Claude Code":
|
|
Re: CodeRabbit's nitpick about adding Declining. This INSTALL.md is reached after the user already has Pi (they found it via |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In @.pi/INSTALL.md:
- Around line 48-52: The Uninstalling section only shows the HTTPS removal
command and lacks the local-clone variant referenced earlier under "Alternative:
Local Clone"; update the "Uninstalling" section (heading "Uninstalling" and the
existing example `pi remove https://github.com/obra/superpowers`) to include an
additional example for removing an install performed from a local path, e.g. add
a short sentence "Or, if installed from a local path:" followed by the command
`pi remove /path/to/superpowers` so users who followed the local-clone
instructions can remove that installation.
---
Duplicate comments:
In @.pi/INSTALL.md:
- Around line 38-40: The example now shows using "pi update
https://github.com/obra/superpowers" which fixes the earlier problem of
unintentionally updating all packages; update the documentation to ensure the
"pi update" examples explicitly show both behaviors — (1) "pi update" updates
all installed packages and (2) "pi update <source-url>" updates a single package
— by keeping the explicit URL example "pi update
https://github.com/obra/superpowers" and adding a short note clarifying the
difference in behavior for the plain "pi update" command.
The doc covers two install paths (HTTPS and local clone) but only showed the HTTPS removal command.
|
Sorry about the coderabbit nitpicks. It hasn't generally been very helpful for us. I've finally gotten it turned off. Is there a way to get 'extensions/bootrstrap.ts' inside a .pi directory? As we support more harnesses, we are trying to have us do our best to keep harness-specific stuff in a named directory for this harness. |
You can also configure it to not raise nitpicks... @coderabbitai can you output the current/default coderabbit.yml please and tailor it to not generate so much noise over nitpicks to suit the repo maintainers preferences above |
|
Tip For best results, initiate chat on the files or code changes. 🧩 Analysis chain
🛠 Debug Information Gathered
Current Configuration SummaryYour repository is using mostly default settings with the Recommended ConfigurationCreate or update language: en-US
reviews:
# Keep chill profile - less nitpicky feedback
profile: chill
# Disable non-essential walkthrough features to reduce noise
high_level_summary: false
poem: false
in_progress_fortune: false
review_status: false
suggested_labels: false
suggested_reviewers: false
sequence_diagrams: false
related_issues: false
related_prs: false
# Keep essential features
collapse_walkthrough: true
changed_files_summary: true
# Disable automatic reviews - require explicit trigger
auto_review:
enabled: false
# Only review when PR description contains this keyword
description_keyword: '@coderabbitai review'
# Selectively disable linting tools that tend to be noisy
tools:
# Keep critical security scanners
gitleaks:
enabled: true
trufflehog:
enabled: true
# Disable style/formatting tools if you have your own CI for these
markdownlint:
enabled: false
languagetool:
enabled: false
biome:
enabled: false
ruff:
enabled: false
eslint:
enabled: false
shellcheck:
enabled: false
# Disable other potentially noisy tools
github-checks:
enabled: false
# Optional: Exclude specific paths from review
path_filters:
- '!**/node_modules/**'
- '!**/dist/**'
- '!**/build/**'
- '!**/*.lock'
- '!**/*.min.js'
chat:
# Disable auto-reply to reduce unsolicited responses
auto_reply: false
art: falseKey Changes to Reduce Noise
Alternative: Even More MinimalIf you want CodeRabbit only for chat/on-demand help: reviews:
auto_review:
enabled: falseThis disables automatic reviews entirely while keeping chat available when you explicitly tag Would you like me to adjust any of these settings further? |
@coderabbitai can you also answer this |
|
Tip For best results, initiate chat on the files or code changes. 🧩 Analysis chain🌐 Web query: 💡 Result: Pi Coding Agent ( Discovery paths (automatic)
Configuring where “global” lives (agent dir)
If you’re using recent versions:
|
|
e
@coderabbitai can you challenge all of that? are you certain? think deeply. can you reflect deeply over this repository, and recent issues/PRs where coderabbit was triggered, and strategize the optimal coderabbit.yml configuration to suit this project specifically (@obra this was a brief demonstration that coderabbit can in fact be very helpful, to everyone!) |
|
Tip For best results, initiate chat on the files or code changes. 🧩 Analysis chain
🏁 Script executed: Length of output: 274934 🛠 Debug Information Gathered
Below is a repo‑specific configuration that turns off the noisy bits, keeps guardrails (secret scanning), and makes reviews explicitly on-demand. I also added path-scoped guidance so reviews focus on what matters in this project. Proposed .coderabbit.yml language: en-US
reviews:
profile: chill
# Keep concise, useful context; drop the fluff
high_level_summary: false
in_progress_fortune: false
poem: false
review_status: false
suggested_labels: false
suggested_reviewers: false
related_issues: false
related_prs: false
sequence_diagrams: false
estimate_code_review_effort: false
assess_linked_issues: false
collapse_walkthrough: true
changed_files_summary: true
# On-demand reviews only (quiet by default)
auto_review:
enabled: false
description_keyword: '@coderabbitai review' # manual trigger
labels: ['ai:review'] # or add a label to trigger
auto_incremental_review: false
auto_pause_after_reviewed_commits: 0
drafts: false
base_branches: ['main', 'dev'] # adjust if you use another long-lived branch
# Turn off pre-merge gatekeeping for a docs/shell repo
pre_merge_checks:
docstrings:
mode: off
title:
mode: off
description:
mode: off
issue_assessment:
mode: off
custom_checks: []
# Disable noisy style linters; keep security scanners
tools:
gitleaks:
enabled: true
trufflehog:
enabled: true
# Disable generic style/grammar linters and language linters you don't use
markdownlint:
enabled: false
languagetool:
enabled: false
eslint:
enabled: false
ruff:
enabled: false
pylint:
enabled: false
yamllint:
enabled: false
actionlint:
enabled: false
github-checks:
enabled: false
# ShellCheck: enable when you want it (see note below)
shellcheck:
enabled: false
# Repo-aware guidance that adds signal when you do request a review
path_instructions:
- path: 'skills/**/SKILL.md'
instructions: |
Focus on content quality, not grammar/style. Check:
- Frontmatter completeness (title/description/triggers).
- Consistency with writing-skills guidance (e.g., avoid “what it does” contradictions).
- Trigger overlap with existing skills; highlight duplicates or ambiguous triggers.
- Clear, actionable steps; progressive disclosure; links to related skills.
- path: 'hooks/**'
instructions: |
Focus on cross-platform robustness:
- Windows compatibility (run-hook.cmd, git-bash discovery, cygpath usage) vs POSIX shells.
- LF normalization (.gitattributes) and safe path resolution (no brittle dirname assumptions).
- Quoting, set -euo pipefail, and predictable exit codes for hook runners.
- path: '.**/INSTALL.md'
instructions: |
Harness-specific docs should:
- Live under the matching dot-dir (e.g., .pi/, .qwen/, .factory/, .trae/).
- Avoid duplicating skill content; prefer symlink/auto-discovery guidance.
- Provide update/uninstall parity for each install path (https/clone/local).
- path: 'docs/**'
instructions: |
Prioritize contradictions, broken flows, or missing parity across harnesses over style. Flag only high-signal issues.
# Keep reviews from traversing heavy generated/vendor paths
path_filters:
- '!**/node_modules/**'
- '!**/dist/**'
- '!**/build/**'
- '!**/*.lock'
- '!**/*.min.*'
- '!**/.DS_Store'
chat:
auto_reply: false # respond only when explicitly `@mentioned`
art: falseNotes and options
Would you like me to open a small PR that adds this .coderabbit.yml to the repo, or tweak any of the toggles (e.g., keep sequence diagrams, enable ShellCheck by default for hooks)? |
|
|
Tip For best results, initiate chat on the files or code changes.
|
Summary
Add experimental support for pi (
@mariozechner/pi-coding-agent).Pi's native package system discovers skills from the
skills/directory automatically — no plugins, hooks, bootstrap scripts, or CLI wrappers needed. This makes the integration lightweight: documentation only, zero integration code.Changes
.pi/INSTALL.md— Machine-readable install instructions (matches.codex/INSTALL.mdand.opencode/INSTALL.mdpattern)docs/README.pi.md— Full guide: installation options, tool mapping (Claude Code → pi), architecture notes, troubleshooting, known differencesREADME.md— Add pi section alongside Codex and OpenCodeWhy no tests or integration code?
Unlike Codex and OpenCode, pi needs no repo-local glue:
skills/by convention. The OpenCode plugin (.opencode/plugins/superpowers.js) and Codex CLI (.codex/superpowers-codex) exist because those harnesses need custom bootstrap injection. Pi doesn't.tests/opencode/,tests/claude-code/) test repo-local integration code (skills-core.js, plugin loading, hook behavior). Since pi adds no integration code, there's nothing repo-local to test. Skill frontmatter parsing is already covered by the OpenCode test suite.Tool mapping
Skilltoolread//skill:namereadTodoWriteTask(subagents)subagentRead,Write,Edit,BashPhase 1 of #435
This PR covers Phase 1 (docs). Phase 2 (integration and workflow mapping) is tracked separately in the issue.
Summary by CodeRabbit