718c79a deleted every per-plugin .claude-plugin/plugin.json, which
reclassified each package from a marketplace plugin to a plain apm
package. That silently broke MCP propagation: apm_cli/deps/plugin_parser.py
maps a plugin-root .mcp.json into .apm/.mcp.json, and that code path runs
only for marketplace plugins. With no manifest, apm never reads the file.
Reproduced on ref-pinned consumer clones: at the parent commit a consumer
receives the obsidian server, at HEAD it receives none, and on upgrade apm
prints "Removed stale MCP server 'obsidian' from .mcp.json". This repo
consumes its own plugins through apm (ADR-0018), so the tracked root
.mcp.json would have been rewritten to an empty server map on the next
lock re-resolve -- silent tool loss plus unexplained working-tree drift.
The server is removed entirely rather than relocated to .apm/. It was
already a standing question (SIMPLIFICATION-AUDIT finding 37, deferred on
2026-09-13 pending confirmation, now confirmed), and plugins/bin/apm.yml
declares dependencies.mcp: [] -- apm's supported mechanism was never used.
All seven .mcp.json files go; the root one is apm-generated output and is
now gitignored alongside the other install artifacts.
ADR-0011's deferred ".mcp.json wiring gap" is moot twice over -- the
install route it blocked no longer exists and neither does the file --
and ADR-0018 records why it lost its only worked example of MCP
propagation. apm.lock.yaml still carries the server; it clears on the
first apm update after this reaches the default branch.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YR2CjVumUbEGWcMikcoXBD
kyberforge
Skills and agents for creating, maintaining, and managing a Claude Code / Copilot CLI plugin marketplace.
Install
apm is the only supported install path (ADR-0024). Declare this package in the consuming project's apm.yml:
dependencies:
apm:
- git: git@git.dev.rkdr.net:Defame1297/holocron.git
path: plugins/kyberforge
Then:
apm install
The entry above is unpinned and tracks the remote's default branch — add ref: <tag> to pin a release. Registering the catalogue instead (apm marketplace add git@git.dev.rkdr.net:Defame1297/holocron.git --name holocron) gets you the kyberforge@holocron short name, but writes to ~/.apm/marketplaces.json at user scope; the git+path object needs nothing beyond the manifest.
Native plugin installs do not work. This package ships no per-plugin manifest and no flat content directories, so a host that installs it natively gets zero skills, agents and hooks — and Claude Code raises no error while doing it (ADR-0024).
Contents
Authoring source lives in .apm/; it is the only content source and the only thing apm install deploys (ADR-0024).
| Component | Path | Description |
|---|---|---|
| Skills | .apm/skills/ |
Slash commands available after install |
| Agents | .apm/agents/*.agent.md |
Role-based agents; one vendor-neutral .agent.md per agent (ADR-0016) |
| Hooks | .apm/hooks/ |
Event-triggered automation — Claude Code only, see below |
Hooks are Claude Code-only. apm merges .apm/hooks/*.json into the consuming project's .claude/settings.json at install. Copilot CLI has no default hooks path — agents and skills default to agents/ and skills/, but hooks defaults to nothing (docs/research/docs/github-copilot-plugins/configuration.md:47), so Copilot reads hooks only via an explicit pointer in a plugin manifest — and since ADR-0024 there is no per-plugin manifest to carry one. Copilot therefore loads no hooks from this plugin. Details, including why a pointer was the wrong fix even when a manifest existed, are in docs/hooks.md.
Skills
| Skill | Description |
|---|---|
forge |
Grill an unclassified "I want to add something" request, decide whether it's a skill, agent, plugin, or marketplace entry, then route to the matching author skill |
skill-author |
Create or improve a skill from scratch, audit findings, or inline feedback |
skill-audit |
Audit a skill directory against the agentskills.io spec and produce a findings report |
agent-author |
Author an agent definition file |
agent-audit |
Audit an agent definition across structure, provider safety, description and body quality, and provenance; produces a findings report |
apm-install |
Install or upgrade the apm CLI and set up the agent runtimes it drives (Copilot CLI, Codex, Gemini, generic llm) |
apm-workflow |
Author apm.yml, scaffold an apm package/marketplace, install dependencies, and compile/pack/publish/audit apm content |
Pre-commit tooling (pc-author, pc-run) lives in the git plugin, not here.
Author
Defame1297