Conversation
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Congratulations on your new Raycast extension! 🚀 We're currently experiencing a high volume of incoming requests. As a result, the initial review may take up to 10-15 business days. Once the PR is approved and merged, the extension will be available on our Store. |
Greptile SummaryThis PR introduces DOGEAR, a new Raycast extension that reads bookmarks from a user-defined YAML config file and provides fuzzy search, favicon display, browser-open, and clipboard-copy actions. The implementation is clean and straightforward, with good error handling and correct use of
Confidence Score: 3/5
Important Files Changed
Last reviewed commit: 1f92d21 |
extensions/dogear/eslint.config.js
Outdated
| @@ -0,0 +1 @@ | |||
| module.exports = require("@raycast/eslint-config").flat(); | |||
There was a problem hiding this comment.
Use defineConfig from eslint/config
ESLint v9+ requires using defineConfig from the eslint/config subpath to correctly handle nested arrays from config presets. The current CJS module.exports pattern without defineConfig is outdated.
| module.exports = require("@raycast/eslint-config").flat(); | |
| const { defineConfig } = require("eslint/config"); | |
| const raycastConfig = require("@raycast/eslint-config"); | |
| module.exports = defineConfig([...raycastConfig]); |
Rule Used: What: In ESLint v9+, defineConfig is exported fr... (source)
extensions/dogear/CHANGELOG.md
Outdated
| @@ -0,0 +1,7 @@ | |||
| # DOGEAR Changelog | |||
|
|
|||
| ## [Initial Version] - 2026-03-11 | |||
There was a problem hiding this comment.
Use {PR_MERGE_DATE} placeholder
Changelog entry titles must use the {PR_MERGE_DATE} placeholder so the merge date is set automatically during release, rather than a hardcoded date.
| ## [Initial Version] - 2026-03-11 | |
| ## [Initial Version] - {PR_MERGE_DATE} |
Rule Used: What: Changelog entries must use {PR_MERGE_DATE}... (source)
| interface Preferences { | ||
| configPath: string; | ||
| } |
There was a problem hiding this comment.
Avoid manually defining the Preferences interface
Preference types are auto-generated in raycast-env.d.ts when the extension runs, so manually defining Preferences here creates a maintenance burden and risks going out of sync with the actual package.json preference schema.
Remove the manual interface and rely on the auto-generated type:
| interface Preferences { | |
| configPath: string; | |
| } |
Then update the call site to just:
const { configPath } = getPreferenceValues<Preferences>();The Preferences type will be available from the auto-generated raycast-env.d.ts.
Rule Used: What: Don't manually define Preferences for `get... (source)
extensions/dogear/package.json
Outdated
| "description": "Fuzzy search bookmarks from config.yaml and open in browser", | ||
| "icon": "extension-icon.png", | ||
| "author": "flexphere", | ||
| "categories": ["Productivity"], |
There was a problem hiding this comment.
Category should be Web, not Productivity
DOGEAR is a bookmark search and browser-opening tool, which maps directly to the Web category ("Web search and browsing tools"). Productivity is intended for task management tools like Todoist. Using the most specific category improves discoverability in the Raycast store.
| "categories": ["Productivity"], | |
| "categories": ["Web"], |
Rule Used: What: Assign at least one predefined category to e... (source)
- Use defineConfig in eslint.config.js (CJS format)
- Use {PR_MERGE_DATE} placeholder in CHANGELOG
- Remove manual Preferences interface (use auto-generated type)
- Change category to Web
- Update README with improved documentation
- Clean up package.json for Raycast monorepo
There was a problem hiding this comment.
issue: metadata image style
The current screenshot has local extension icon in the bottom bar
Could you make sure that the metadata images use the same background/appearance as the rest to maintain the same visual expression?
Reference:
| { | ||
| "$schema": "https://www.raycast.com/schemas/extension.json", | ||
| "name": "dogear", | ||
| "title": "DOGEAR", |
There was a problem hiding this comment.
issue: update name
DOGEAR → Dogear - Bookmarks
0xdhrv
left a comment
There was a problem hiding this comment.
Hey @flexphere 👋
I have added a few comments for you to address.
Also, can you look into the failing checks?
I'm looking forward to testing this extension again 🔥
Feel free to contact me here or at Slack if you have any questions.
I converted this PR into a draft until it's ready for the review, please press the button Ready for review when it's ready and we'll have a look 😊
Description
DOGEAR is a Raycast extension for fuzzy searching bookmarks defined in a YAML config file and opening them in the browser.
Features
Configuration
Users create a
config.yamlwith their bookmarks and set the file path in extension preferences.Checklist
npm run build- buildsass successfullynpm run lint- no linting issuesmetadata/🤖 Generated with Claude Code