feat: support claude cowork 2#102
Conversation
|
Warning Rate limit exceeded
You’ve run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After the wait time has elapsed, 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 have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (17)
✨ 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 |
🤖 Augment PR SummarySummary: Adds support for Claude Cowork v2 plugin marketplace consumption by introducing a dedicated generated plugin source directory. Changes:
Technical Notes: The build script consumes plugin metadata/skill paths from 🤖 Was this summary useful? React with 👍 or 👎 |
| } | ||
|
|
||
| // Generate | ||
| fs.rmSync(pluginDir, { recursive: true, force: true }); |
There was a problem hiding this comment.
tools/build-cowork-plugin.js:65: fs.rmSync(pluginDir, { recursive: true, force: true }) is driven by plugin.source from marketplace.json, so a misconfigured absolute path or ././ could wipe directories outside the intended generated area (including the repo root). Consider validating pluginDir is inside ROOT and not equal to ROOT before removing anything.
Severity: high
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
| } | ||
| const destDir = path.join(skillsDir, skillId); | ||
| fs.mkdirSync(destDir, { recursive: true }); | ||
| fs.copyFileSync(src, path.join(destDir, 'SKILL.md')); |
There was a problem hiding this comment.
tools/build-cowork-plugin.js:94: The generator copies only SKILL.md, but the canonical skill/workflow directories referenced in marketplace.json include required companion files (e.g., customize.toml, resources/, steps-*) that the SKILL activation text explicitly instructs the agent to read. As-is, the shipped cowork-plugin/skills/<id>/ trees won’t contain those files, so those activation steps will fail for Cowork users.
Severity: medium
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
| const skillId = path.basename(skillRelPath); | ||
| const dest = path.join(skillsDir, skillId, 'SKILL.md'); | ||
| const src = path.join(ROOT, skillRelPath, 'SKILL.md'); | ||
| if (!fs.existsSync(dest) || hash(dest) !== hash(src)) { |
There was a problem hiding this comment.
tools/build-cowork-plugin.js:55: In --check mode, hash(src) will throw a stack trace if the source SKILL.md is missing, because the code never checks fs.existsSync(src) before hashing. This will make CI failures harder to interpret compared to an explicit “missing source skill” error.
Severity: medium
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
| "release:next": "gh workflow run publish.yaml -f channel=next", | ||
| "release:patch": "gh workflow run publish.yaml -f channel=latest -f bump=patch", | ||
| "test": "npm run test:schemas && npm run test:install && npm run test:knowledge && npm run test:release-metadata && npm run test:tea-workflow-descriptions && npm run validate:schemas && npm run validate:marketplace && npm run lint && npm run lint:md && npm run format:check", | ||
| "test": "npm run test:schemas && npm run test:install && npm run test:knowledge && npm run test:release-metadata && npm run test:tea-workflow-descriptions && npm run validate:schemas && npm run validate:marketplace && npm run build:cowork-plugin && npm run lint && npm run lint:md && npm run format:check", |
There was a problem hiding this comment.
package.json:41: This PR introduces user-facing Cowork support + CI/pre-commit behavior changes, but there’s no accompanying CHANGELOG.md update. (Rule: AGENTS.md)
Severity: low
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
No description provided.