Skip to content

v6.3.1

Choose a tag to compare

@yandy-r yandy-r released this 05 Nov 18:18
· 11 commits to main since this release
6fb290d

Release 6.3.1 — 2026-11-05

Summary

ycc 6.3.1 fixes duplicate ycc skills, agents, commands and MCP servers in opencode. install and sync --target opencode now add the @yandy-r/ycc-opencode npm plugin to opencode.json instead of copying the bundle into ~/.config/opencode, and retire the old copies that ycc can prove it wrote.

Added

  • install --target opencode writes one plugins entry. --mode local (default) points it at this checkout's packages/opencode/ycc-opencode; --mode repo pins @yandy-r/ycc-opencode@<version> from npm. --package @yandy-r/ycc-opencode does the same.

Changed

  • @yandy-r/ycc-opencode is now the primary opencode package (no longer experimental or opt-in). Settings, rules (AGENTS.md) and the opt-in plugin catalog stay on the installer.
  • The generated .opencode-plugin/opencode.json no longer lists the ./ycc-sensitive-guard plugin or an mcp block; the package ships both.
  • Release notes no longer mark the npm package "not yet published".

Removed

  • opencode file copies (skills, agents, commands, shared helpers, the guard directory) and the opencode MCP merge.
  • --mcps, --agents, --commands, list-mcps, --skills-home and its duplicate-skills prompt. --skills and --with-deps now apply to the agents target only.

Fixed

da77850 fix(opencode)!: install the @yandy-r/ycc-opencode npm plugin instead of copying the bundle (YAN-1973) (#536)

  • A ycc-written, bare or @latest @yandy-r/ycc-opencode entry is replaced in place, keeping its options. A pinned version you set yourself, or another checkout's directory, is kept unless you pass --force.
  • The legacy cleanup runs only after the package is confirmed loadable: package.json in local mode, the npm release in repo mode, and opencode 2.0.30 or later when opencode is on PATH. It removes only byte-identical copies, owned mcp.servers entries and the owned guard item. Edited and foreign entries are kept, and a symlinked opencode.json is refused.

Packages

Package Runtime Status Mechanism Listed Version or target Notes
@yandy-r/ycc-opencode opencode included npm no 6.3.1 Primary opencode route since YAN-1973: install.sh --target opencode (base step, or --package @yandy-r/ycc-opencode) writes the plugins entry (local mode: a file:// directory entry for this checkout; repo mode: the published lockstep version) and retires the old file copy. The V2 setup hook registers components and delivers instructions through the context hook; the @yandy-r npm scope is owned.
ycc claude included native yes 6.3.1 Shipping entry; stays visible in every catalog throughout the v6 flip. status-bar@ycc-mods is versioned independently and stays outside this manifest.
ycc codex included native yes 6.3.1 Listed in the ycc Codex catalog (.agents/plugins/marketplace.json) with a local source at ./.codex-plugin/ycc; installs together with ycc-mcp. Replaces the legacy local-ycc-plugins catalog.
ycc cursor included native yes 6.3.1 Ships through the GitHub marketplace; no cursor.com submission before post-6.0.
ycc omp included native yes 6.3.1 Generated OMP package under packages/omp/ycc (omp >=18.12.2) with .omp-plugin and .claude-plugin manifests and package.json, rewritten ${CLAUDE_PLUGIN_ROOT}, /ycc: and _shared references, agents translated to @ROLE models, and one commands/.md entrypoint per public skill (/ycc:). Listed in the root .omp-plugin/marketplace.json (YAN-1180). install.sh --target omp exports it to a local marketplace (--mode local) or registers the repository catalog (--mode repo) and installs it through omp plugin (user or project scope).
ycc pi deferred native no target v6.3.0 Deferred: generated Pi package under packages/pi/ycc (pi >=1.2.0, recommended 1.5.0) with skills, _shared, ycc: command and subagent extensions, and agent data; rewrites ${CLAUDE_PLUGIN_ROOT}, /ycc: and $ARGUMENTS, which Pi leaves literal. Pi has no catalog: install.sh --target pi will run pi install . No generator or installer ships yet.
ycc-agents claude deferred native no target v7.0.0 Deferred to v7.0.0 as a breaking change with qualified ycc-agents: references; the v6 namespace spike rejects a shared manifest name. Hidden prep: claude_agents_split.py builds and validates the split on demand (claude-native check); test-claude-agents-split.sh is the opt-in live dispatch proof.
ycc-all claude included native yes 6.3.1 Meta plugin that installs ycc, ycc-mcp, and ycc-hooks through Claude plugin dependencies.
ycc-all omp excluded native no target v6.1.0 Excluded: the OMP marketplace does not read plugin dependencies, so ycc-all (on Claude the union of ycc, ycc-mcp, and ycc-hooks) is omitted from the OMP catalog; install ycc and ycc-mcp separately; herdr reporting comes from herdr integration install omp.
ycc-all pi excluded native no target v6.3.0 Excluded: Pi packages cannot depend on Pi packages, so ycc-all (on Claude the union of ycc, ycc-mcp, and ycc-hooks) has no Pi package; install ycc and ycc-mcp separately; ycc-hooks is excluded on Pi and herdr reporting comes from herdr integration install pi.
ycc-hooks claude included native yes 6.3.1 Native plugin hooks/hooks.json needs Claude Code 2.1.300 or later. install.sh installs it (project scope by default, user scope with --global); once ycc-hooks@ycc is explicitly enabled in ~/.claude/settings.json, the automatic legacy cleanup prunes the installer-owned settings hooks an older installer wrote.
ycc-hooks codex excluded native no target v6.0.0 Excluded: NO-GO until verified under YAN-1149 (YAN-1149 gate). Hooks stay out of the Codex bundle.
ycc-hooks cursor included native yes 6.3.1 sessionStart only; WorktreeCreate is not implemented for Cursor.
ycc-hooks omp excluded native no target v6.1.0 Excluded: herdr ships its own OMP integration (herdr integration install omp), which reports the session and agent state; a ycc reporter is ignored by herdr (non-herdr source) or corrupts herdr's ordering (herdr:omp). WorktreeCreate has no OMP event. ycc ships no OMP hooks (YAN-1174); its only OMP extension is the agent scope guard inside the ycc package (YAN-1250).
ycc-hooks pi excluded native no target v6.3.0 Excluded: Pi never runs shell hooks or hooks.json, and WorktreeCreate has no Pi event. herdr reporting is herdr's own integration (herdr integration install pi), and ycc ships no Pi hook extension (ADR 0003).
ycc-mcp claude included native yes 6.3.1 Native MCP-only plugin.
ycc-mcp codex included native yes 6.3.1 Native MCP-only plugin; carries the MCP servers the Codex ycc plugin used to ship. Listed together with ycc.
ycc-mcp cursor included native yes 6.3.1 Native MCP-only plugin.
ycc-mcp omp included native yes 6.3.1 Generated OMP package under packages/omp/ycc-mcp (omp >=18.12.2) with .omp-plugin and .claude-plugin manifests, package.json, and a root .mcp.json byte-identical to mcp-configs/mcp.json (secret-literal audited; ${VAR} env placeholders stay unexpanded until omp starts a server). Servers load as ycc-mcp:. Listed in the root .omp-plugin/marketplace.json (YAN-1180). install.sh --target omp installs it next to ycc through omp plugin (user or project scope); a running session picks it up after /reload-plugins or a restart.
ycc-mcp pi deferred native no target v6.3.0 Deferred: extension package (pi >=1.2.0) whose registrar calls pi.registerMcpServer for the shipped server set read as package data, because Pi never reads mcp.json from a package; a same-name user mcp.json entry wins, tools become mcp____, and SSE servers are rejected. An opt-in install.sh --mcp merge into /mcp.json is the fallback for pi mcp shell commands.
ycc-rules cursor included native yes 6.3.1 Cursor-only rules package. No Claude ycc-rules: Claude rules stay on install.sh (see installer-fallback claude).
ycc-rules omp included native yes 6.3.1 Generated package under packages/omp/ycc-rules (omp >=18.12.2): 31 flat rules named ycc--, paths→globs, description kept, alwaysApply only when true. Language rules are rulebook entries read via rule://; 5 description-less ycc--trigger TTSR rules (glob-gated edit/write, interruptMode never) attach them once per session and once per subagent that edits a matching file. Listed in the root .omp-plugin/marketplace.json (YAN-1180).
ycc-rules pi deferred native no target v6.3.0 Deferred: extension package (pi >=1.2.0) carrying the rule files and a path-rule injector that attaches a family's rules after a matching read, edit, or write. Always rules use the installer-fallback AGENTS.md link.

File-copy packages (the installer fallback) have no native manifest and are not versioned here.

Validation

  • ./scripts/sync.sh — OK
  • ./scripts/validate.sh — OK
  • python3 -m json.tool .claude-plugin/marketplace.json — OK
  • python3 -m json.tool ycc/.claude-plugin/plugin.json — OK

Upgrade Notes

Breaking for scripts that pass removed flags. Run ycc install --target opencode (or sync --target opencode --intent base) once. It replaces your plugins entry and removes the old copies under ~/.config/opencode that ycc can prove it wrote, then restart opencode.

  • Drop --mcps, --agents, --commands, --skills-home and list-mcps from scripts. --skills and --with-deps still work for --target agents.
  • To keep a specific pinned @yandy-r/ycc-opencode@<version> entry, leave it; the installer reports and keeps it. Pass --force to replace it.
  • Use --mode repo for the published npm package, or the default local mode to load this checkout.

Commit Log

da77850 fix(opencode)!: install the @yandy-r/ycc-opencode npm plugin instead of copying the bundle (YAN-1973) (#536)


Previous release: v6.3.0