Commit Graph

25 Commits

Author SHA1 Message Date
semantic-release-bot
16b1b5a9cc chore(release): 2.34.6 [skip ci] 2026-03-10 23:38:32 +00:00
semantic-release-bot
86d8518282 chore(release): 2.34.5 [skip ci] 2026-03-10 23:36:14 +00:00
semantic-release-bot
ca57c67c1c chore(release): 2.34.4 [skip ci] 2026-03-04 04:31:05 +00:00
semantic-release-bot
020eb8836e chore(release): 2.34.3 [skip ci] 2026-03-03 05:43:25 +00:00
semantic-release-bot
97f9ab34f7 chore(release): 2.34.2 [skip ci] 2026-03-03 05:36:20 +00:00
Kieran Klaassen
eab77bc5b5 fix(release): add package repository metadata 2026-03-02 21:35:55 -08:00
semantic-release-bot
a3fb1bbfd6 chore(release): 2.34.1 [skip ci] 2026-03-03 05:32:50 +00:00
Kieran Klaassen
7c58eeeec6 fix(release): align cli versioning with repo tags 2026-03-02 21:32:25 -08:00
Kieran Klaassen
8fd1670ee2 fix(release): automate npm releases from main 2026-03-02 21:14:12 -08:00
Kieran Klaassen
168c946033 feat(sync): add Claude home sync parity across providers 2026-03-02 21:02:21 -08:00
Kieran Klaassen
15b2296bd8 chore: Resolve conflicts with main, update to v0.12.0
- sync.ts: add gemini + all targets, keep copilot, remove cursor (native), use shared hasPotentialSecrets
- install.ts + convert.ts: import both detectInstalledTools and resolveTargetOutputRoot; update --to all block to use new object API; fix resolvedScope ordering (was referencing target before definition)
- CHANGELOG.md: add v0.12.0 entry (auto-detect + Gemini sync)
- README.md: merge all install targets, collapsible output format table, sync defaults to --target all
- package.json: bump to 0.12.0
- sync --target now defaults to "all" when omitted

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-01 15:12:21 -08:00
Kieran Klaassen
63e76cf67f release: v0.9.1 — remove reports and decisions docs
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 16:18:24 -08:00
Kieran Klaassen
e84075660a release: v0.9.0 — add Kiro CLI target provider
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 12:37:33 -08:00
Kieran Klaassen
e1906592cb chore: bump version to 0.8.0, update CHANGELOG 2026-02-17 10:27:37 -08:00
Kieran Klaassen
877e265ec1 docs: add auto-detect and Gemini sync to README, bump to 0.8.0 2026-02-14 21:11:46 -08:00
Kieran Klaassen
1a3e8e2b58 release: v0.7.0 / plugin v2.34.0 — add Gemini CLI target
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 20:50:46 -08:00
Kieran Klaassen
e41904a569 Add droid and cursor sync targets, extract shared path helpers
- Add sync --target droid (skills to ~/.factory/skills/)
- Add sync --target cursor (skills + MCP to .cursor/)
- Extract expandHome/resolveTargetHome to src/utils/resolve-home.ts
- Remove duplicated path helpers from convert.ts and install.ts
- Bump version to 0.6.0

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 20:37:25 -08:00
Kieran Klaassen
87e98b24d3 Bump version to 0.5.2
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 13:32:15 -08:00
Kieran Klaassen
7232f26e0e Bump version to 0.5.1 for npm publish
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 13:29:55 -08:00
Kieran Klaassen
0aaca5a7a7 Add Cursor CLI as target provider (#179)
* feat(cursor): add Cursor CLI as target provider

Add converter, writer, types, and tests for converting Claude Code
plugins to Cursor-compatible format (.mdc rules, commands, skills,
mcp.json). Agents become Agent Requested rules (alwaysApply: false),
commands are plain markdown, skills copy directly, MCP is 1:1 JSON.

* docs: add Cursor spec and update README with cursor target

* chore: bump CLI version to 0.5.0 for cursor target

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs: note Cursor IDE + CLI compatibility in README

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 15:16:43 -06:00
Kieran Klaassen
ebf387d093 Add Factory Droid to README, bump to 0.4.0, add npm publish workflow
- Document Droid as third converter target alongside OpenCode and Codex
- Bump package version 0.3.0 → 0.4.0 for new target feature
- Add CHANGELOG entry for 2.32.0 with Droid details
- Add GitHub Actions workflow to publish to npm on release

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 10:14:16 -08:00
Kieran Klaassen
f744b797ef Reduce context token usage by 79% — fix silent component exclusion (#161)
* Update create-agent-skills to match 2026 official docs, add /triage-prs command

- Rewrite SKILL.md to document that commands and skills are now merged
- Add new frontmatter fields: disable-model-invocation, user-invocable, context, agent
- Add invocation control table and dynamic context injection docs
- Fix skill-structure.md: was incorrectly recommending XML tags over markdown headings
- Update official-spec.md with complete 2026 specification
- Add local /triage-prs command for PR triage workflow
- Add PR triage plan document

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* [2.31.0] Reduce context token usage by 79%, include recent community contributions

The plugin was consuming 316% of Claude Code's description character budget
(~50,500 chars vs 16,000 limit), causing components to be silently excluded.
Now at 65% (~10,400 chars) with all components visible.

Changes:
- Trim all 29 agent descriptions (move examples to body)
- Add disable-model-invocation to 18 manual commands
- Add disable-model-invocation to 6 manual skills
- Include recent community contributions in changelog
- Fix component counts (29 agents, 24 commands, 18 skills)

Contributors: @trevin, @terryli, @robertomello, @zacwilliams,
@aarnikoskela, @samxie, @davidalley

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Fix: keep disable-model-invocation off commands called by /lfg, rename xcode-test

- Remove disable-model-invocation from test-browser, feature-video,
  resolve_todo_parallel — these are called programmatically by /lfg and /slfg
- Rename xcode-test to test-xcode to match test-browser naming convention

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Fix: keep git-worktree skill auto-invocable (used by /workflows:work)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* feat(converter): support disable-model-invocation frontmatter

Parse disable-model-invocation from command and skill frontmatter.
Commands/skills with this flag are excluded from OpenCode command maps
and Codex prompt/skill generation, matching Claude Code behavior where
these components are user-only invocable.

Bump converter version to 0.3.0.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 22:28:51 -06:00
Terry Li
1bdd1030f5 feat: Add sync command for Claude Code personal config (#123)
* feat: Add sync command for Claude Code personal config

Add `compound-plugin sync` command to sync ~/.claude/ personal config
(skills and MCP servers) to OpenCode or Codex.

Features:
- Parses ~/.claude/skills/ for personal skills (supports symlinks)
- Parses ~/.claude/settings.json for MCP servers
- Syncs skills as symlinks (single source of truth)
- Converts MCP to JSON (OpenCode) or TOML (Codex)
- Dedicated sync functions bypass existing converter architecture

Usage:
  compound-plugin sync --target opencode
  compound-plugin sync --target codex

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: address security and quality review issues

Security fixes:
- Add path traversal validation with isValidSkillName()
- Warn when MCP servers contain potential secrets (API keys, tokens)
- Set restrictive file permissions (600) on config files
- Safe forceSymlink refuses to delete real directories
- Proper TOML escaping for quotes/backslashes/control chars

Code quality fixes:
- Extract shared symlink utils to src/utils/symlink.ts
- Replace process.exit(1) with thrown error
- Distinguish ENOENT from other errors in catch blocks
- Remove unused `root` field from ClaudeHomeConfig
- Make Codex sync idempotent (remove+rewrite managed section)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: revert version bump (leave to maintainers)

* feat: bump root version to 0.2.0 for sync command

---------

Co-authored-by: Claude <noreply@anthropic.com>
2026-02-08 17:00:48 -06:00
Kieran Klaassen
12b83e683f chore: bump version to 0.1.1
Includes fix for OpenCode global config path (#114, #117)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-23 08:54:23 -08:00
Kieran Klaassen
e97f85bd53 feat: add OpenCode/Codex outputs and update changelog (#104)
* Add OpenCode converter coverage and specs

* Add Codex target support and spec docs

* Generate Codex command skills and refresh spec docs

* Add global Codex install path

* fix: harden plugin path loading and codex descriptions

* feat: ensure codex agents block on convert/install

* docs: clarify target branch usage for review

* chore: prep npm package metadata and release notes

* docs: mention opencode and codex in changelog

* docs: update CLI usage and remove stale todos

* feat: install from GitHub with global outputs
2026-01-21 19:00:30 -06:00