- skill-audit: remove contradictory skip clause in Step 2 (binary only)
- skill-improve: drop redundant "Fix the root" heading; keep specific directive
- skill-write: add section-rename guidance to body discipline step
- template SKILL.md: make Instructions heading an explicit FILL IN placeholder
- template README.md: remove "Invoke via your agent tool:" prefix to match convention
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- skill-audit: promote internal-working gotcha to ## Gotchas section;
narrow cross-plugin path check to exclude tests/ (dev-only, repo-level
deps are expected); require tests/README.md to declare that dependency
- skill-write/skill-improve: reorder descriptions to lead with "Use when..."
for consistency with skill-audit and the agentskills.io spec trigger pattern
- skill-write: add tests/README.md with self-contained bats setup instructions;
remove cross-skill reference to skill-audit's tests/README.md
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Both validate.bats and new-skill.bats constructed SCRIPT using
$(dirname "$BATS_TEST_FILENAME"), which resolves to tests/ — causing
every test to fail with file-not-found. Fixed to use
$BATS_TEST_DIRNAME/../scripts/ to reach the actual scripts/ directory.
Also clarifies that bats-support/bats-assert must be installed from the
repo root (not the skill root) to match where the tests load them from,
and adds text language tags to three output-template code blocks in
skill-audit's SKILL.md.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Move test infrastructure (validate.bats, new-skill.bats) from scripts/ to
tests/ — the spec defines scripts/ as executable code agents can run, so
test files don't belong there. Add tests/README.md placeholders with
bats-support dependency declaration.
Update skill-audit to permit tests/ and flag other unlisted directories,
add scripts/ purpose check, and add /skill-improve near-miss exclusion.
Update skill-improve and skill-write to cover tests/ in directory lists,
scaffold template, and authoring guidance.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Replace verbose three-pass output (punch list + priority table + fix
proposals) with a compact findings-only report: coverage line, findings
grouped by dimension with Why+Fix per entry, and a result block with
/skill-improve handoff. Suppress PASS lines — absence confirms pass.
Fix validate.bats executable bit.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Deletes the neuledge-context skill (.agents/skills/) and four kyberforge
plugin skills — marketplace-architect, plugin-create, promptfoo, and
write-agent — along with associated docs (adding-agents.md,
plugin-marketplace-architecture.md).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Applies evidence-based improvements to existing skills using signals
from grill sessions, audit reports, eval failures, and inline feedback.
Groups signals by root cause before editing to avoid per-symptom patching.
Hands off to /skill-audit on completion.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Two data errors in sources.md files:
- agentskillsio/sources.md: Contributing files used agentskills-* prefix
(e.g. agentskills-overview.md) but actual filenames have no prefix
(overview.md, specification.md, etc.)
- write-agent/references/sources.md: plugin-marketplace-architecture entry
used a machine-specific absolute path; replaced with repo-relative path
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Separates development-time reference material from live plugin docs.
agentskillsio/, agentsmd/, and examples/skill-write/ are not shipped with
the plugin — grouping them under research/ makes that boundary explicit.
README now lists all top-level files and explains what research/ is for.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Bats files moved up to scripts/ directly; tests/ subdirectory was non-spec
and created a directory structure not defined by agentskills.io.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Reorder skill-audit description to lead with 'Use when...' trigger (P3)
- Add concrete example to 'control calibration' body discipline check (P4)
- Add bats test files to README file tables for both skills
- Fix REPO_ROOT and SCRIPT paths in bats files after tests/ subdirectory removed
- Add three lessons: plugin cache isolation, spec-grounded rubrics, test file placement
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Add references/description-quality.md and references/body-discipline.md to
skill-audit — condensed, rubric-focused extracts from the agentskills.io
specification docs. Both files are loaded conditionally via progressive
disclosure triggers added to Step 3 (Description and Body discipline
dimensions), so the agent consults the spec source when a finding is
borderline rather than relying solely on inline heuristics developed
during the skill-write authoring cycle.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Move validate.sh ownership to skill-audit/scripts/ — it is the canonical
structural validator; skill-write now delegates Step 5 to /skill-audit
- Add skill-write/references/scripts.md and deployment-modes.md for progressive
disclosure of package runner patterns and plugin cache isolation rules
- Fix skill-audit Step 1 cross-skill path reference (was repo-absolute, now
skill-relative); add manual fallback for sandboxed/Bash-denied contexts
- Scope Step 2 "read every file" to exclude binaries and unreferenced files
- Fix new-skill.sh next-steps output to reference /skill-audit instead of
the removed validate.sh
- Remove stale Dependencies section from skill-audit README; flip dependency
arrow — skill-write depends on skill-audit, not vice versa
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Moves the previous write-skill implementation to docs/examples/skill-write/write-skill/
for reference. The skill has been superseded by the spec-compliant skill-write rewrite.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Rewrote the skill authoring factory skill from scratch against the agentskills.io
specification. Renamed write-skill → skill-write (name now matches directory per spec).
skill-write:
- Full scaffold via new-skill.sh (annotated templates for SKILL.md, README.md,
scripts/, references/, assets/)
- validate.sh checks all spec constraints deterministically (name format/length,
description length, placeholder detection, line count, script rules)
- SKILL.md body includes description rules, body discipline, patterns, and scripts
guidance with "why" rationale throughout
- Templates usable standalone by agents and humans
skill-audit:
- Structural validation (via validate.sh) + seven qualitative dimensions
- Produces PASS/FAIL/SUGGESTION punch list with per-FAIL fix proposals
- Report-only: does not apply fixes
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds write-agent to plugins/kyberforge/skills/ — a factory skill parallel
to write-skill that authors Claude Code subagent definitions and cross-tool
plugin agents (Claude Code + GitHub Copilot CLI two-file pattern).
Includes research references (claude-code-agents.md, copilot-cli-agents.md,
cross-compat.md), three asset templates (subagent, plugin-agent-claude,
plugin-agent-copilot), eval coverage, and CATEGORIES.md updated to register
write-agent in the factory category per the conflict check finding.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
claude plugin validate scans all .md files in agents/ as agent
definitions and warns on missing YAML frontmatter. The file was a
contributor guide, not an agent. Kyberforge ships no agents, so the
agents/ directory is now correctly empty.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Gv5iNACZxumtF2k6TsK18q
No longer needed — kyberforge plugin-create provides a bundled template that
serves as the canonical scaffold reference. Remove hello-world from marketplace
manifests and update docs accordingly.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Move all evals into each skill's own evals/ directory and test_scripts.sh into
marketplace-architect/scripts/ so test artefacts live alongside the code they test.
Also fix: hooks.json array→object, displayName title-case, marketplace.json owner
placeholders, and .github/plugin/marketplace.json metadata-wrapper schema divergence.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Renames plugins/kyberforge/skills/create-plugin/ to plugin-create/ to match
the directory-based skill name Claude Code uses for slash commands. Adds
.claude/settings.json with kyberforge plugin enabled. Gitignores
.claude/settings.local.json (machine-local MCP permissions).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Moves create-plugin, marketplace-architect, write-skill, and write-eval
from canonical .agents/skills/ into plugins/kyberforge/skills/, along
with all bundled sub-files, evals, and the plugin-marketplace-architecture
research doc. Bundles templates/plugin/ into create-plugin/assets/plugin-template/
so the skill is self-contained after install-time caching. Removes
templates/plugin/ and docs/research/plugin-marketplace-architecture.md
from the repo root as they are now exclusively in the plugin.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Scaffolds the kyberforge marketplace management plugin (create-plugin and
marketplace-architect skills will live here). Renames the plugin-create
skill directory to create-plugin to match the canonical kebab-order convention.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
23 tests covering the full JSON-RPC 2.0 protocol surface:
initialize handshake, silent notifications/initialized, tools/list
schema, tools/call with and without args, unknown tool error,
unknown method error, and invalid JSON resilience.
Fixed assert helpers to use grep -qF -- to prevent leading-dash
patterns (like -32601) from being parsed as grep flags.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Minimal dependency-free Node.js MCP server (JSON-RPC 2.0 over stdio).
Exposes one tool: say_hello. Handles initialize, tools/list, tools/call,
and SIGTERM cleanly. No npm packages required — uses only readline.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds every cross-compatible component between Claude Code and Copilot CLI:
skills (shared), agents (per-tool .md vs .agent.md), hooks (per-tool
paths), and .mcp.json (shared). Both plugin.json manifests now carry all
shared identity fields (name, description, author, license, keywords)
with Copilot-specific component paths only in the root manifest.
Updates validate.sh sync check to verify shared identity fields rather
than demanding content equality, since component path declarations
legitimately diverge between tools.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds marketplace scaffolding (.claude-plugin/marketplace.json,
.github/plugin/marketplace.json) and a hello-world proof-of-concept
plugin to validate the format before migrating real skills.
Also fixes inventory.sh to include .agents/ in the hidden-dir exception
list so audits correctly surface the 16 existing skills.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>