From 7dfbc9897dc0638ac9cfeb63954dcbc48d25ff6c Mon Sep 17 00:00:00 2001 From: Defame1297 Date: Sat, 20 Jun 2026 18:13:38 +0000 Subject: [PATCH] docs: update CONTEXT.md with plugin and marketplace glossary entries Updates Skills glossary to document both direct and plugin-based deployment paths. Updates META.md path to reflect write-skill move to kyberforge plugin. Adds Plugin and Plugin marketplace glossary terms. Co-Authored-By: Claude Sonnet 4.6 --- CONTEXT.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/CONTEXT.md b/CONTEXT.md index d02c667..6acd8b4 100644 --- a/CONTEXT.md +++ b/CONTEXT.md @@ -67,7 +67,13 @@ This repo is built by a junior developer as a homelab tool intended to scale to A separate product (separate repo) for browsing, editing, and configuring AI development configs through a proper product UI. Git is the persistence layer, invisible to the user. The app is repo-agnostic — it works with any git repo that follows these conventions. This repo is the canonical default content (the official starter). See `docs/VISION.md` for the phased roadmap. ### Skills -Reusable slash commands for AI coding tools, defined as `SKILL.md` files following the [Agent Skills open standard](https://agentskills.io). Canonical location: `.agents/skills//SKILL.md` in this repo; deployed to `~/.agents/skills/` on install. Providers that don't read `~/.agents/skills/` natively get a symlink adapter declared in `providers//provider-manifest.sh` (e.g. Claude Code: `~/.claude/skills/ → ~/.agents/skills/`). +Reusable slash commands for AI coding tools, defined as `SKILL.md` files following the [Agent Skills open standard](https://agentskills.io). Two deployment paths: (1) **direct** — `.agents/skills//SKILL.md` in this repo, deployed to `~/.agents/skills/` on install, available immediately as slash commands; (2) **via plugin** — `plugins//skills//SKILL.md`, available only after the plugin is installed (`claude plugin install @`). Providers that don't read `~/.agents/skills/` natively get a symlink adapter declared in `providers//provider-manifest.sh` (e.g. Claude Code: `~/.claude/skills/ → ~/.agents/skills/`). Skills inside plugins are self-contained — they cannot reference files outside the plugin directory after install-time caching. + +### Plugin +The deployable unit in the plugin marketplace. A plugin bundles one or more skills, agents, hooks, prompts, MCP servers, and optionally a `bin/` directory into a single installable directory. Each plugin has two manifests: `.claude-plugin/plugin.json` (Claude Code) and `plugin.json` at the plugin root (Copilot CLI). Plugins are copied to a cache on install — they cannot reference files outside their own directory. In this repo, plugins live under `plugins//`. Install a plugin with `claude plugin install @`. + +### Plugin marketplace +A Git repository with a `marketplace.json` manifest listing installable plugins. No backend, registry, or SaaS required — the Git repo is the marketplace. This repo is the `holocron` marketplace. The manifest lives at `.claude-plugin/marketplace.json` (read by both Claude Code and Copilot CLI) and is mirrored to `.github/plugin/marketplace.json`. Register the marketplace with `claude plugin marketplace add /`. Plugin names must be kebab-case and not reserved (`anthropic-*`, `claude-*`, `agent-skills`, `official-claude-plugins`). Cross-tool compatibility reference: `plugins/kyberforge/docs/plugin-marketplace-architecture.md`. ### Content types - **Instructions** — stateless rules defining AI behavior. Split into two tiers: (1) universal rules (communication, behavior) live in `AGENTS.md` (provider-agnostic), loaded into every session via the provider adapter (`CLAUDE.md` imports `AGENTS.md`); (2) topic-specific rules (coding, git, testing) live in `core/instructions/.md` and are read on-demand via `@import` in the Claude Code adapter. @@ -98,7 +104,7 @@ A skill calling another skill by name to delegate a sub-task. The calling skill Field (`source:`) in a skill's `META.md` tracking upstream provenance. An array — supports multiple upstream sources per skill. Each entry: `repo` (GitHub slug, e.g. `mattpocock/skills` — no URL, slug is stable and searchable), `commit` (exact SHA reviewed at adoption), `files` (list of files adopted with inline comments on what was taken), `updated` (date of last upstream review for this entry). Absence of `source:` means self-authored original. Upstream review cadence: per-skill during Chunk 3 (run during source review step); quarterly after roadmap completion (post Chunk 7). Companion field: `references:` (array of URLs or citations) for general external citations — distinct from `source:` which tracks adoptions with commit-level traceability. Both fields live in `META.md`, not in SKILL.md frontmatter. ### META.md -A per-skill markdown file containing a single YAML code block with provenance and audit fields: `version`, `updated`, `when`, `source`, and `references`. Lives alongside the SKILL.md in the skill directory (`.agents/skills//META.md`). Not loaded at agent startup — progressive disclosure principle: name and description route the skill; provenance is only needed for upgrade reviews and audits. Prevents these fields from being scanned on every session start alongside every skill's name and description. The authoritative schema is `META-TEMPLATE.md` in `.agents/skills/write-skill/`. See also: [[Source field]]. +A per-skill markdown file containing a single YAML code block with provenance and audit fields: `version`, `updated`, `when`, `source`, and `references`. Lives alongside the SKILL.md in the skill directory (either `.agents/skills//META.md` or `plugins//skills//META.md`). Not loaded at agent startup — progressive disclosure principle: name and description route the skill; provenance is only needed for upgrade reviews and audits. Prevents these fields from being scanned on every session start alongside every skill's name and description. The authoritative schema is `META-TEMPLATE.md` in `plugins/kyberforge/skills/write-skill/`. See also: [[Source field]]. ### Provider-agnostic issue tracker Skills and workflows reference "linked issue" generically rather than a specific provider. In the file-based phase, an issue is a `docs/issues/NNNN-.md` file. When Gitea MCP is configured, the same skills use it instead. The active backend is determined at runtime by MCP availability. "Issue" is the canonical cross-provider term (GitHub, GitLab, Gitea all use it). Gitea-specific skills are a provider adapter (`providers/gitea/`), not part of the core library. See ADR-0011.