refactor: caplets inspect, setup, and landing page cohesion#95
Conversation
|
Warning Review limit reached
More reviews will be available in 25 minutes and 23 seconds. Learn how PR review limits work. Your organization has run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughLanding page redesigned for proof-led activation with theme toggle and activation examples; the CLI adds a new setup command and renames the discovery operation from get_caplet → inspect across core runtime, handlers, and tests; added validation script, packaging/config updates, and a small commit automation change. ChangesCaplets UX, CLI, and Setup
Sequence Diagram(s)(Skipped — changes are broad and the review stack is best read as grouped checkpoints.) Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
|
🚀 Preview DeployedYour changes have been deployed to a preview environment: 🌐 Landing Page: https://pr-95.preview.caplets.dev Built from commit 0869452 🤖 This comment updates automatically with each push. |
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
|
| Filename | Overview |
|---|---|
| packages/core/src/cli/setup.ts | New caplets setup command; minor issues with flag: "wx" EEXIST UX, missing timeout on execFileAsync, and unused label field in plain-text output |
| packages/core/src/cli.ts | Wires the new setup command and renames get-caplet → inspect throughout; changes look correct and consistent |
| packages/core/src/cli/commands.ts | Adds setup to command registry and renames getCaplet → inspect; straightforward rename with no gaps |
| packages/core/src/tools.ts | Renames get_caplet operation to inspect in the tool handler and validation; all paths updated |
| packages/core/src/remote-control/types.ts | Renames get_caplet to inspect in RemoteCliCommand union type; consistent with rest of rename |
| caplets/github/CAPLET.md | Switches GitHub caplet from Docker container to hosted MCP endpoint with bearer auth; migrates env var from GITHUB_PERSONAL_ACCESS_TOKEN to GH_TOKEN |
| apps/landing/test/campaign-copy.check.mjs | New static check enforcing campaign copy, CSS border-radius tokens, and forbidden legacy text; checks for 87.9% consistent with benchmarks doc |
| apps/landing/src/pages/index.astro | Major landing page redesign: proof-led hero, dark/light theme toggle, copyable commands, remote Caplets section, and example caplets tabs |
Sequence Diagram
sequenceDiagram
participant User
participant CLI as caplets CLI
participant Setup as cli/setup.ts
participant Runner as SetupCommandRunner
participant FS as File System
User->>CLI: caplets setup codex
CLI->>Setup: runSetup("codex", options)
Setup->>Setup: parseSetupIntegrationId("codex")
Setup->>Setup: setupDefinition(id, options)
loop For each action
alt "action.type === command"
Setup->>Runner: runner(command, args)
Runner-->>Setup: "{ stdout, stderr }"
else "action.type === writeFile"
Setup->>FS: mkdirSync + writeFileSync(flag:wx)
FS-->>Setup: ok or EEXIST error
end
end
Setup-->>CLI: SetupResult
CLI-->>User: formatted output
User->>CLI: caplets setup mcp-client --output ./config.json
CLI->>Setup: "runSetup(mcp-client, { output })"
Setup->>FS: "writeFileSync(path, content, { flag: wx })"
alt File does not exist
FS-->>User: success
else File already exists
FS-->>Setup: EEXIST
Setup-->>User: CapletsError CONFIG_INVALID
end
Reviews (5): Last reviewed commit: "fix(landing): remove local dev config" | Re-trigger Greptile
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@apps/landing/src/styles/global.css`:
- Around line 207-215: Remove the deprecated CSS property by deleting the `clip:
rect(0 0 0 0);` declaration from the `.copy-status` rule and keep the existing
`clip-path: inset(50%)` (along with position, width, height, overflow,
white-space) so the element remains visually hidden while using the modern,
supported API.
In `@docs/specs/2026-05-29-landing-proof-led-activation-design.md`:
- Line 62: Replace the stale operation name get_caplet with the current name
inspect wherever it appears in the activation flow sequence (specifically the
listed path "get_caplet, search_tools, get_tool, call_tool") and update any
nearby prose or copy assertions that reference get_caplet to use inspect so the
spec and implementations remain consistent.
In `@README.md`:
- Line 46: Update the deterministic payload reduction sentence in the README to
match the committed benchmark numbers in docs/benchmarks/coding-agent.md and the
README's benchmark table: replace the "87.8%" value (and any related phrasing
about "106 flat tools became 3 top-level capabilities") with the exact
deterministic percentage and wording used in the benchmark report so the claim
is consistent; keep the reference to the call sequence (context7 -> inspect ->
search_tools -> get_tool -> call_tool) but ensure the numeric percent matches
the canonical report.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: 37c56095-d19f-483b-8042-5223abc471fc
⛔ Files ignored due to path filters (43)
.brv/context-tree/curated/extracted/extracted_facts.mdis excluded by!.brv/**.brv/context-tree/curation/extracted/extracted_context.mdis excluded by!.brv/**.brv/context-tree/facts/project/animation.mdis excluded by!.brv/**.brv/context-tree/facts/project/apps_landing_src_pages_index_astro.mdis excluded by!.brv/**.brv/context-tree/facts/project/border_usage.mdis excluded by!.brv/**.brv/context-tree/facts/project/build.mdis excluded by!.brv/**.brv/context-tree/facts/project/campaign_headline.mdis excluded by!.brv/**.brv/context-tree/facts/project/caplets.mdis excluded by!.brv/**.brv/context-tree/facts/project/caplets_try_it_in_60_seconds_path.mdis excluded by!.brv/**.brv/context-tree/facts/project/card_grids.mdis excluded by!.brv/**.brv/context-tree/facts/project/color_specification.mdis excluded by!.brv/**.brv/context-tree/facts/project/color_strategy.mdis excluded by!.brv/**.brv/context-tree/facts/project/color_usage.mdis excluded by!.brv/**.brv/context-tree/facts/project/communication_assets.mdis excluded by!.brv/**.brv/context-tree/facts/project/context_loading.mdis excluded by!.brv/**.brv/context-tree/facts/project/core_line.mdis excluded by!.brv/**.brv/context-tree/facts/project/design_md.mdis excluded by!.brv/**.brv/context-tree/facts/project/easing.mdis excluded by!.brv/**.brv/context-tree/facts/project/footer.mdis excluded by!.brv/**.brv/context-tree/facts/project/glassmorphism.mdis excluded by!.brv/**.brv/context-tree/facts/project/gradient_text.mdis excluded by!.brv/**.brv/context-tree/facts/project/hero_metric_template.mdis excluded by!.brv/**.brv/context-tree/facts/project/hero_section.mdis excluded by!.brv/**.brv/context-tree/facts/project/hierarchy.mdis excluded by!.brv/**.brv/context-tree/facts/project/impeccable_context_dir.mdis excluded by!.brv/**.brv/context-tree/facts/project/line_length.mdis excluded by!.brv/**.brv/context-tree/facts/project/loader_output.mdis excluded by!.brv/**.brv/context-tree/facts/project/log.mdis excluded by!.brv/**.brv/context-tree/facts/project/missing_design_md.mdis excluded by!.brv/**.brv/context-tree/facts/project/missing_product_md.mdis excluded by!.brv/**.brv/context-tree/facts/project/modal_usage.mdis excluded by!.brv/**.brv/context-tree/facts/project/next_move.mdis excluded by!.brv/**.brv/context-tree/facts/project/overall_content.mdis excluded by!.brv/**.brv/context-tree/facts/project/pnpm.mdis excluded by!.brv/**.brv/context-tree/facts/project/problem_section.mdis excluded by!.brv/**.brv/context-tree/facts/project/product_md.mdis excluded by!.brv/**.brv/context-tree/facts/project/punctuation.mdis excluded by!.brv/**.brv/context-tree/facts/project/readme_md.mdis excluded by!.brv/**.brv/context-tree/facts/project/theme_selection.mdis excluded by!.brv/**.brv/context-tree/facts/project/typecheck.mdis excluded by!.brv/**apps/landing/public/icon-header-dark.pngis excluded by!**/*.pngapps/landing/public/icon-header-light.pngis excluded by!**/*.pngpnpm-lock.yamlis excluded by!**/pnpm-lock.yaml
📒 Files selected for processing (35)
.impeccable/critique/2026-05-29T10-04-14Z__apps-landing-src-pages-index-astro.md.oxfmtrc.jsonREADME.mdapps/landing/package.jsonapps/landing/src/pages/index.astroapps/landing/src/styles/global.cssapps/landing/test/campaign-copy.check.mjsdocs/benchmarks/coding-agent.mddocs/plans/2026-05-29-caplets-growth-campaign.mddocs/plans/2026-05-29-landing-proof-led-activation.mddocs/specs/2026-05-29-landing-proof-led-activation-design.mdpackage.jsonpackages/benchmarks/lib/surface.tspackages/core/src/capability-description.tspackages/core/src/cli.tspackages/core/src/cli/commands.tspackages/core/src/cli/completion.tspackages/core/src/generated-tool-input-schema.tspackages/core/src/native/tools.tspackages/core/src/remote-control/dispatch.tspackages/core/src/remote-control/types.tspackages/core/src/result-content.tspackages/core/src/tools.tspackages/core/test/cli-completion.test.tspackages/core/test/cli-remote.test.tspackages/core/test/cli.test.tspackages/core/test/native-remote.test.tspackages/core/test/native.test.tspackages/core/test/registry.test.tspackages/core/test/remote-control-dispatch.test.tspackages/core/test/tools.test.tspackages/opencode/test/opencode.test.tspackages/pi/test/pi.test.tsscripts/commit-byterover-context.test.tsscripts/commit-byterover-context.ts
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@apps/landing/astro.config.mjs`:
- Around line 13-22: Remove the developer-specific Vite server configuration:
delete the server block that defines allowedHosts and the proxy for
"/__impeccable" (including the target, changeOrigin, and rewrite) so these
hardcoded localtunnel and debug proxy settings are not committed; if you still
need them for local testing, move that server configuration into a local
override file (e.g., astro.config.local.mjs), reference the same keys (server,
allowedHosts, proxy, "/__impeccable", rewrite) when copying, and add that local
override to .gitignore so it is not checked into the repo.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: 047a2088-dff0-450c-9cdb-f43cd93abe00
⛔ Files ignored due to path filters (1)
pnpm-lock.yamlis excluded by!**/pnpm-lock.yaml
📒 Files selected for processing (26)
.changeset/quick-setup-cli.md.gitignore.impeccable/critique/2026-05-29T16-03-18Z__apps-landing-src-pages-index-astro.mdREADME.mdapps/landing/astro.config.mjsapps/landing/package.jsonapps/landing/src/components/HugeIcon.astroapps/landing/src/pages/index.astroapps/landing/src/styles/global.cssapps/landing/test/campaign-copy.check.mjscaplets/github/CAPLET.mdcaplets/github/README.mddocs/plans/2026-05-29-cli-integration-setup.mdpackage.jsonpackages/benchmarks/package.jsonpackages/cli/package.jsonpackages/core/package.jsonpackages/core/src/cli.tspackages/core/src/cli/commands.tspackages/core/src/cli/completion.tspackages/core/src/cli/setup.tspackages/core/test/cli-completion.test.tspackages/core/test/cli.test.tspackages/core/test/config.test.tspackages/opencode/package.jsonpackages/pi/package.json
✅ Files skipped from review due to trivial changes (9)
- .changeset/quick-setup-cli.md
- packages/pi/package.json
- packages/cli/package.json
- packages/benchmarks/package.json
- packages/core/package.json
- .gitignore
- packages/opencode/package.json
- docs/plans/2026-05-29-cli-integration-setup.md
- .impeccable/critique/2026-05-29T16-03-18Z__apps-landing-src-pages-index-astro.md
🚧 Files skipped from review as they are similar to previous changes (3)
- apps/landing/package.json
- packages/core/src/cli/commands.ts
- apps/landing/src/pages/index.astro
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@apps/landing/src/styles/global.css`:
- Around line 350-354: Update the CSS rule for the .header-action-icon class to
use the lowercase keyword for the color value; change the color declaration in
.header-action-icon from currentColor to currentcolor so it conforms to
stylelint's expected casing.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: eb0c3c86-067c-4f45-b1bd-82ae2480b5a9
📒 Files selected for processing (5)
README.mdapps/landing/src/pages/index.astroapps/landing/src/styles/global.cssapps/landing/test/campaign-copy.check.mjsdocs/specs/2026-05-29-landing-proof-led-activation-design.md
✅ Files skipped from review due to trivial changes (1)
- docs/specs/2026-05-29-landing-proof-led-activation-design.md
🚧 Files skipped from review as they are similar to previous changes (3)
- apps/landing/test/campaign-copy.check.mjs
- README.md
- apps/landing/src/pages/index.astro
Summary by CodeRabbit
New Features
Documentation
Tests / Chores