Commit Graph

326 Commits

Author SHA1 Message Date
4f73f54b44 docs(kyberforge): add Claude Code plugins and subagents research
Research from official docs (code.claude.com) and Context7, covering
plugin manifest schema, agent definition frontmatter spec, scope
priority, marketplace distribution, and plugin subagent restrictions.
Foundation for writing an agent-author skill.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-27 10:39:41 +00:00
dd73e1548a fix(skills): resolve audit findings in skill-audit and skill-author
skill-audit description understated its coverage by omitting three audit
dimensions (patterns, scripts, provenance); README carried the same stale
list. skill-author had an unconditional reference trigger that should be
conditional on whether a script is being added.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-27 09:53:42 +00:00
40c08661b4 chore(core): prefer subagents for bounded non-interactive actions
Adds behavior rule to always prefer subagents (clean or with session context)
for well-bounded actions that require no human interaction, keeping the parent
context lean and enabling parallel execution.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-27 09:34:37 +00:00
5fdeada27a fix(skill-author): resolve audit findings from post-#8 review
- Remove implementation-focused sentence from description (was not user-intent
  language per agentskills.io spec)
- Move source_keys template comment under metadata: block to match Step 5's
  instruction; contradicted agents scaffolding before reading Step 5
- Add Step 6 to new-skill.sh next-steps (populate references/sources.md);
  renumber validate step to 7 — script was missing the sources step entirely

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-27 09:33:24 +00:00
e899bc3883 fix(skill-audit): exempt Research doc: paths from cross-plugin path check
references/sources.md Research doc: fields are development-only provenance
pointers, not runtime references — they intentionally target paths outside the
skill directory and are expected to be non-resolvable after plugin install.
validate-provenance.sh degrades gracefully when they don't resolve.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-27 09:32:59 +00:00
8dc5241c1c docs: add ADR-0014 and provenance chain glossary entries
Record the decision to add INFO as a third skill-audit finding level
(observational, non-actionable, does not affect pass/fail). Add
Provenance chain and INFO (finding level) to CONTEXT.md glossary.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-27 09:09:43 +00:00
562527dfc4 chore(skill-author): backfill Research doc field in sources provenance
Add Research doc: pointer to all 7 agentskillsio entries so the new
validate-provenance.sh upstream checks resolve correctly for this skill.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-27 09:09:24 +00:00
229c7a4ab9 feat(skill-author): require Research doc field in sources provenance
Step 5 now records a Research doc: path per entry in references/sources.md,
pointing to the upstream plugin-level research file the slug was drawn from.
Updates the sources.md template to include the new required field, formalise
comma-separated Contributing files, and document the (none) convention.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-27 09:09:12 +00:00
02b816cbb0 chore(skill-audit): backfill Research doc field in sources provenance
Add Research doc: pointer to all 7 agentskillsio entries so the new
validate-provenance.sh upstream checks can resolve the research source.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-27 09:09:03 +00:00
79da149935 feat(skill-audit): validate sources provenance chain
Add validate-provenance.sh and validate-provenance.bats to enforce the
sources provenance chain introduced by skill-author. Eight checks cover
slug cross-references, Contributing files existence, bidirectional
source_keys linkage, Research doc: field presence, and upstream research
doc alignment (forward INFO, reverse FAIL). Adds a new Provenance report
dimension and INFO finding level (observational, exit-0, counted
separately as · P info in the result block).

Closes #8

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-27 09:08:53 +00:00
c048d2320e chore(skill-audit): backfill sources provenance from agentskillsio research
Records the upstream agentskills.io sources that informed skill-audit,
continuing the research → docs → skill provenance chain.

- New references/sources.md with 7 extracted sources attributed to skill files;
  agentskills-llms-txt demoted to discovery-only comment per skill-author precedent
- source_keys frontmatter added to SKILL.md (5 slugs), references/body-discipline.md
  (agentskills-spec, agentskills-best-practices), and references/description-quality.md
  (agentskills-spec, agentskills-optimizing-descriptions)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-26 21:24:11 +00:00
08abe9920a fix(skill-author): resolve skill-audit findings
- script: new-skill.sh now exits 0 when target already exists (idempotent
  retry-safe) instead of exit 1; --help updated to reflect narrowed error cases
- test: updated bats test to assert success and "nothing to do" output
- body: removed speculative "Extract the skill from a real task" advice
  (human-targeted, not agent-actionable)
- formatting: converted H4 headings in Step 2 to bold text (H2/H3 two-tier model)
- provenance: removed orphan agentskills-llms-txt entry from references/sources.md;
  added discovery-only comment

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-26 21:24:11 +00:00
99e64d67fc chore(skill-author): backfill sources provenance from agentskillsio research
Records the upstream agentskills.io sources that informed skill-author,
completing the research → docs → skill provenance chain introduced in
the previous commit.

- New references/sources.md with all 7 extracted agentskillsio sources,
  Contributing files attributed per-source to SKILL.md, references/deployment-modes.md,
  and references/scripts.md
- source_keys frontmatter added to SKILL.md (all 7 slugs), references/deployment-modes.md
  (agentskills-spec), and references/scripts.md (agentskills-using-scripts)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-26 20:52:33 +00:00
ca73a63c72 feat(skill-author): record research sources as skill provenance
Adds a sources provenance step to the skill creation workflow so the
chain from research output to skill content is traceable. Closes #4.

- New scaffold template `assets/templates/references/sources.md` mirroring
  the research skill's sources.md format (slug → URL, description,
  contributing files, status)
- `source_keys` commented-out optional field added to the SKILL.md
  template, mirroring how research topic files link back to sources
- New Step 5 in the creation workflow: populate references/sources.md
  from research input (attributing contributing skill files) or delete it
  if no research was provided; add source_keys to SKILL.md and any
  references/*.md files

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-26 20:42:46 +00:00
add2fbf37d Merge pull request 'chore: move gitea to bin' (#7) from chore/move-gitea into main
Reviewed-on: https://git.dev.rkdr.net/Defame1297/holocron/pulls/7
2026-06-26 20:07:43 +00:00
4f603cdfd8 chore: move gitea to bin 2026-06-26 20:04:38 +00:00
7ccdef1c10 docs(git): add submodule conventions from first-hand experience
Push submodule before parent, check for -dirty flag, use rtk git
only for parent repo operations.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-25 20:51:36 +00:00
71dfa50107 chore: update wiki submodule pointer to latest commit
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-25 20:49:56 +00:00
ac0d0ba2b2 chore: add holocron.wiki as submodule at docs/wiki
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-25 20:48:18 +00:00
eee1540ece test: remove stale @CONTEXT.md assertion from instructions test
@CONTEXT.md was deliberately removed from repo CLAUDE.md to reduce
token usage; the test enforcing its presence was no longer valid.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-25 20:42:44 +00:00
ad051e2f35 chore: reorder settings.json keys and remove stale CONTEXT.md ref
Remove @CONTEXT.md directive from CLAUDE.md (stale reference) and
reorder settings.json to put hooks before enabledPlugins for consistency.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-25 20:40:24 +00:00
89fc44bccc chore: remove run-tests.bats to prevent bats recursion
run-tests.sh calls run-bats.sh which picks up .bats files — testing
run-tests.sh from within bats creates an infinite loop. Shell runner
scripts (run-tests.sh, run-bats.sh) are not bats-tested by design.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-25 20:21:30 +00:00
dd1959b12b chore: remove test-neuledge-context.sh
Neuledge context skill moved to plugins; test no longer applies.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-25 19:48:44 +00:00
32cd2e3128 test: add run-tests.sh, fix stale tests for marketplace model
- Add tests/run-tests.sh: discovers and runs all test-*.sh (including
  plugin subdirs) and the bats suite; replaces per-script pre-push calls
- Add tests/run-tests.bats: TDD coverage for run-tests.sh behaviours
- Update setup-hooks.sh: pre-push block now calls run-tests.sh
- Fix test-install.sh: remove provider adapter symlink tests (adapter
  removed in marketplace migration), guard skills loops on dir existence
- Fix test-instructions-and-docs.sh: content index checks now point to
  core/AGENTS.md (where it lives), remove ard/bug dir assertions
- Fix test-setup-hooks.sh: assert pre-push hook calls run-tests.sh

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-25 19:47:20 +00:00
93e3de4d02 fix(install): handle missing provider manifests and skills dir
With the marketplace architecture, provider-manifest.sh files and the
.agents/skills/ source directory may not exist. Guard both loops so
install.sh doesn't hard-fail when they're absent.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-25 19:22:26 +00:00
e50c98f722 chore: move skills and evals to plugins/bin, remove legacy root configs
Skills and evals migrated from .agents/ to plugins/bin/ plugin directory.
Remove .mcp.json, provider-manifest.sh, and skills-lock.json legacy artifacts.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-25 19:18:41 +00:00
2bf0365aa5 chore: remove .gitkeep files from populated core/ directories
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-25 19:00:12 +00:00
b0d132f59a fix(kyberforge/gitea): correct Status dispatch and issue create enrichment
Status now calls list_issues + list_pull_requests in parallel instead
of passing a non-existent type parameter to list_issues. Stale type
reference in Gotchas removed.

Issue create now infers labels from conversation context (Kind/*/
Priority/*/Status/*) before the write call, resolving names to IDs
via label_read first.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-25 18:59:06 +00:00
b9c73cc0b2 feat(kyberforge): add gitea dispatch skill with research docs
Adds the gitea skill to kyberforge — a dispatch skill for managing
Defame1297/holocron via Gitea MCP from within Claude Code. Covers
issues, PRs, milestones, labels, branches, and status. Owner/repo
derived from git remote at runtime; no config required.

Also adds research docs (api-reference, data-model, examples,
overview, troubleshooting) and token-access reference used during
authoring and available for runtime scope lookups.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-25 18:42:29 +00:00
04e7cfa089 chore: cleanup context to reduce token usage 2026-06-24 20:01:26 +00:00
8b26245163 chore(kyberforge): remove skill-write and skill-improve (AC6)
Completes issue #5. skill-author now covers both create and improve flows;
skill-write and skill-improve are superseded and removed.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016z2ZFYHQCex8yZAMVMTZzZ
2026-06-24 19:52:28 +00:00
252741a312 fix(kyberforge): apply skill-audit findings to skill-author
Body discipline: collapsed 4-bullet script rules to single critical callout
(no interactive prompts); full contract stays in references/scripts.md.
stderr discipline: redirect all confirmation/progress output in new-skill.sh
to stderr per scripts.md contract. Also expands references/scripts.md with
input validation and --help guidance.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016z2ZFYHQCex8yZAMVMTZzZ
2026-06-24 19:52:16 +00:00
7ec34dd0de fix(kyberforge): improve skill-author based on spec validation and audit
- Add name field format constraints (1-64 chars, hyphens rules)
- Add output format template pattern to ## Patterns
- Add scope design note before prerequisites checklist
- Add reference depth rule (one level deep)
- Restore Placement table to README
- Trim script rules to 2 inline + full contract in references/scripts.md
- Add script contract section to references/scripts.md (error messages,
  dry-run/confirm pairing, output size, idempotency, exit codes)
- Update Step 5 headings to "Validate and close" in both flows
- Remove "Performs best when preceded by grill session" from description
- Condense Include/Exclude block to single forwarding sentence
- Fix README Files table: add README.md row, update scripts.md description

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016z2ZFYHQCex8yZAMVMTZzZ
2026-06-24 19:18:50 +00:00
a193ccce9f feat(kyberforge): add skill-author, merging skill-write and skill-improve
Closes #5. Single authoring skill replaces the factory trio — one set of
standards, one script, one place for future governance rules. Routes to
create or improve flow based on context. Passes skill-audit with no findings.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016z2ZFYHQCex8yZAMVMTZzZ
2026-06-24 18:42:51 +00:00
62aa89b566 docs(adr): add ADR-0013 skill-author merge decision
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016z2ZFYHQCex8yZAMVMTZzZ
2026-06-24 18:04:39 +00:00
80427e08db chore(skills): remove deepeval skill and all related artifacts
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016z2ZFYHQCex8yZAMVMTZzZ
2026-06-24 18:03:45 +00:00
7afa1f3f02 feat(skills): install deepeval skill from confident-ai/deepeval
Adds the deepeval eval-loop skill via `npx skills add` with skills-lock.json
for reproducible reinstalls. Symlinked to Claude Code via .claude/skills/.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016z2ZFYHQCex8yZAMVMTZzZ
2026-06-24 17:06:58 +00:00
9369d97934 fix(kyberforge): fix tests/ read gap, evals/ loop, and description nav pointers
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016z2ZFYHQCex8yZAMVMTZzZ
2026-06-23 20:45:07 +00:00
3c35f2fbd5 fix(kyberforge): fix template test docs, dangling skill ref, and README table consistency
- Rewrite assets/templates/tests/README.md with correct repo-root context and
  SKILL_NAME placeholder in bats run command (was: `bats tests/`, wrong CWD)
- Add sed substitution for tests/README.md in new-skill.sh so SKILL_NAME is
  replaced in scaffolded test docs; test added to new-skill.bats (red→green)
- Remove /write-eval reference from skill-improve SKILL.md; reword as direct
  action since the skill does not exist in the kyberforge plugin
- Remove self-referential README.md rows from skill-audit and skill-improve
  Files tables to match template and skill-write convention

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-23 20:33:18 +00:00
8598a187e4 fix(kyberforge): apply cross-skill audit findings to skill factory trio
- validate.sh: move FAIL lines and failure summary to stdout; stderr
  reserved for fatal script errors only (missing SKILL.md, bad args)
- skill-audit SKILL.md: replace concrete plugins/kyberforge/skills/...
  example with abstract placeholder to fix meta-circularity
- skill-write SKILL.md: rephrase placeholder section-heading instruction
  to remove embedded FILL IN: from a code span, clearing validator false positive
- skill-improve SKILL.md: wrap Step 2 root-cause example in a text fence
- skill-write assets/templates/README.md: update Files table to individual-
  file rows so skill-audit can verify per-file coverage

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-23 20:16:22 +00:00
97e56c55e6 fix(kyberforge): apply cross-skill audit findings to skill factory trio
- 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>
2026-06-23 20:04:24 +00:00
60d1f0852c fix(kyberforge): apply audit findings across skill factory trio
- 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>
2026-06-23 19:48:20 +00:00
193c40106d fix(kyberforge): fix bats SCRIPT path and clarify test helper install location
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>
2026-06-23 19:31:08 +00:00
3709010b34 fix(kyberforge): update new-skill.bats to assert tests/ in scaffold
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-23 19:19:25 +00:00
3290b93640 fix(kyberforge): align skill factory with agentskills.io spec on directory rules
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>
2026-06-23 19:16:47 +00:00
4d36251b57 chore(kyberforge): remove write-eval skill
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-23 18:48:28 +00:00
b06fe7b13c fix(kyberforge): redesign skill-audit output format
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>
2026-06-23 18:42:31 +00:00
6146120974 chore: remove neuledge-context skill and multiple kyberforge skills
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>
2026-06-23 18:13:43 +00:00
12b38ee8eb fix(kyberforge): apply audit improvements to skill-improve
Remove redundant gotcha (duplicated description + Step 1), replace
2-item checklist with prose, and add README.md to file table.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-23 18:11:30 +00:00
29392e9dc8 feat(kyberforge): add skill-improve skill to factory workflow
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>
2026-06-23 18:02:11 +00:00