文件历史

提交图

14 次代码提交

作者 SHA1 备注 提交日期
Vishnu J c4b82b0ad7 fix(codex): fall back to plugin name when description is empty (#617) (#626)
Code Quality / Python (ruff + ty) (push) Has been cancelled
Code Quality / Markdown (markdownlint-cli2) (push) Has been cancelled
Code Quality / JSON / TOML / YAML syntax (push) Has been cancelled
Validate / Validate JSON files (push) Has been cancelled
Validate / plugin-eval pytest (push) Has been cancelled
Validate / tools pytest (adapters + validators + gardener) (push) Has been cancelled
Validate / Cross-harness generation + validation (push) Has been cancelled
Validate / Real-CLI smoke test (OpenCode + Gemini) (push) Has been cancelled
* fix(codex): fall back to plugin name when description is empty (#617)

npx codex-marketplace add wshobson/agents --plugins fails with
"String must contain at least 1 character(s)" at path ["description"]
because codex-marketplace's installer parses each plugin's
plugins/<name>/.codex-plugin/plugin.json with a zod schema requiring
description: z.string().min(1) (pluginManifestSchema in the installer's
dist/schema.js). _codex_plugin_manifest() previously wrote
"description": plugin.description or "" — plugin-eval's own
.claude-plugin/plugin.json has no description field, so its generated
Codex manifest shipped an empty string and failed that check for every
--plugins install of this repo.

Fix: use the same plugin.description or plugin.name fallback already
used two lines below for the interface.shortDescription field. Also
add a top-level description to each .agents/plugins/marketplace.json
entry as forward-compatible metadata, since the installer's currently
published marketplacePluginSchema doesn't declare or require it there
(unknown keys are silently stripped by zod's default .parse()) — that
alone does not fix the crash, which lives in the per-plugin manifest.

Regenerated the committed Codex artifacts via make generate-all; only
plugin-eval's .codex-plugin/plugin.json needed the description fix,
confirming it's the only plugin missing an upstream description. Added
a regression test for the plugin.name fallback in
_codex_plugin_manifest(), alongside the existing marketplace-entry
description test.

Reported by jkroepke.

* test(codex): cover marketplace description fallback to plugin name

CodeRabbit: synthetic_plugin already has a description, so the
_codex_marketplace name fallback was untested. Add a no-desc plugin
and assert description == name.

* chore: regenerate .agents marketplace after main merge

plugin-eval now carries its real description (#630) instead of the name
fallback, and the pptx-deck-creation entry (#625) gains the description
field this PR's generator emits for every marketplace entry.

---------

Co-authored-by: Seth Hobson <wshobson@gmail.com>
2026-07-18 17:25:19 -04:00
kimtth 73d2f99cd4 feat: add pptx-deck-creation plugin (#625)
* fix: read validation artifacts as UTF-8

* Add pptx-deck-creation plugin

* fix: resolve CodeRabbit quality issues

* fix: consolidate ooxml skill into reference-deck-analysis

* fix: resolve CodeRabbit quality issues
2026-07-18 17:00:10 -04:00
Seth Hobson baa5bd7997 feat: add llm-finetuning and dgx-spark-ops plugins (eval-gated fine-tuning lifecycle) (#624)
* feat(dgx-spark-ops): scaffold plugin and register in marketplace

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(dgx-spark-ops): add spark-environment-setup skill

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* fix(dgx-spark-ops): tighten spark-environment-setup per review

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(dgx-spark-ops): add spark-training-gotchas skill

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* fix(dgx-spark-ops): align preflight.sh output contract with docs

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(dgx-spark-ops): add spark-memory-thermal-ops skill

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* fix(dgx-spark-ops): trim spark-memory-thermal-ops and source 68GB anchor

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(dgx-spark-ops): add dgx-spark-ops-engineer agent

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* fix(dgx-spark-ops): defer agent facts to skills

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(dgx-spark-ops): add /spark-preflight command

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(llm-finetuning): scaffold plugin and register in marketplace

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(llm-finetuning): add finetuning-method-selection skill with dated model catalog

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(llm-finetuning): add lora-qlora-recipes skill

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(llm-finetuning): add preference-optimization skill

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(llm-finetuning): add grpo-rlvr-training skill

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* fix(llm-finetuning): add isolation warning to execution reward

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(llm-finetuning): add vision-sft skill

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(llm-finetuning): add dataset-curation skill

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* fix(llm-finetuning): correct loss-masking example in dataset-curation

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(llm-finetuning): add eval-harness-first skill (Phase 0 gate)

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* fix(llm-finetuning): bring eval-harness-first into line band

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* fix(llm-finetuning): reclaim byte headroom in eval-harness-first

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(llm-finetuning): add trace-to-training-data skill

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(llm-finetuning): add checkpoint-promotion skill

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(llm-finetuning): add quantized-export skill

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(llm-finetuning): add llm-finetuning-architect agent

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(llm-finetuning): add llm-finetuning-training-engineer agent

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(llm-finetuning): add llm-finetuning-eval-engineer agent

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(llm-finetuning): add /finetune phase-gated lifecycle command

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* fix(llm-finetuning): thread checkpoint path into /finetune Phase 6

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* feat(llm-finetuning): add /promote-checkpoint command

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* fix(llm-finetuning): thread checkpoint path via phase5.output in /promote-checkpoint

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* fix(llm-finetuning): robust checkpoint discovery and goldens fingerprint in re-gate

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* docs: register llm-finetuning and dgx-spark-ops (94 plugins, 203 agents, 175 skills, 109 commands)

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* docs(agents): add fine-tuning and spark-ops agent entries (203 agents)

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* chore: generate per-harness artifacts for llm-finetuning and dgx-spark-ops

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* fix: final-review cleanups for fine-tuning plugins

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* fix: address PR #624 review feedback (G1 NGC detection, Phase 3 fallback dispatch, registry metadata)

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* fix: enforce sandbox boundary in execution grader and reward examples

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* fix: address CodeRabbit review findings on PR #624

Verified and fixed 37 of 43 outstanding CodeRabbit findings across the
llm-finetuning and dgx-spark-ops plugins (skipping 6 confirmed false
positives/already-fixed, with reasons in the disposition report).

Highlights: cross-file contracts (goldens fingerprint persistence,
paired-arena stage numbering, canonical golden-ID field, RERUN
resolution before promotion) now match between finetune.md,
promote-checkpoint.md, and checkpoint-promotion's templates. TRL API
usages (SFTConfig.max_length, trl.experimental ORPO/CPO imports)
verified against live TRL docs rather than blindly renamed. Several
runnable examples hardened against real failure modes: malformed
judge output, empty arena results, non-distinct DPO pairs, unbounded
rejection-sampling fan-out, non-deterministic smoke-test comparisons,
silent FP8-to-bf16 fallback, and orphaned background thermal-sampler
processes. Container detection (G9) and LoRA adapter-size math fixed
in both dgx-spark-ops and llm-finetuning where the same bugs were
independently present in each plugin.

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* fix: apply dogfood friction-log remediations (F1-F32) from DGX Spark run

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf

* fix: address CodeRabbit round-2 findings (digest pins, suite-size math, monkeypatch scoping)

Claude-Session: https://claude.ai/code/session_01RsN3Vz5fZRTdVMkNtmxhSf
2026-07-14 13:18:02 -04:00
Burak Bayır c7dc145e81 Add hermes-tweet plugin (#582)
Adds the source-native `hermes-tweet` plugin (Hermes Agent X/Twitter research + approval-gated action workflows) with Claude/Codex manifests and a portable skill. Registered across the Claude, Codex, and Cursor marketplaces; catalog counts updated to 91 plugins / 162 skills. Maintainer disclosure present per the #611 policy. Verified: make validate STRICT=1 clean across 5 harnesses, make garden 0 errors.
2026-07-08 10:24:28 -04:00
Adit Jain 3ea6aadc8a feat(plugin): skill-forge-essentials - 3 novel behavioral skills (#577)
* feat(plugin): add skill-forge-essentials - 3 novel behavioral skills

Focused subset per #570 feedback: only genuinely novel skills, markdown-first, no executable components.

* style: address CodeRabbit nitpicks - tighter wording

* feat: register plugin, regenerate harnesses, update docs, trim stats

Per maintainer review:
- Added skill-forge-essentials to .claude-plugin/marketplace.json
- Ran generate-all (codex/copilot/cursor/gemini/opencode registries regenerated)
- Bumped counts in AGENTS.md (89 plugins, 161 skills)
- Added catalog row in docs/plugins.md (Quality section)
- Trimmed unverifiable stats from ai-debt-detector
- Generalized design-mode to remove Cursor-specific framing

* fix: address review feedback - rename, bump counts, fix category

- Rename skills/design-mode/ to skills/visual-edit-precision/ (match frontmatter name)
- Bump docs/plugins.md counts: 88 -> 89 plugins, Quality (3) -> (4)
- Change category code-quality -> quality in .claude-plugin/marketplace.json
- Ran generate-all (no additional changes needed)
2026-07-07 19:44:36 -04:00
Vishal Sharma 2f9990dd53 Add operating-kit plugin: session lifecycle, code-review, deploy, prod-logs (#596)
* Add operating-kit plugin: session lifecycle + code-review + deploy + prod-logs

Five project-agnostic agents with {{placeholders}} that adapt to any project:

- session-start: reads state doc + verifies live state at session open
- session-end: updates state doc and memory index at session close
- code-review-preshipment: 10-section pre-ship review with SHIP verdict
- deploy-with-verification: test > build > deploy > verify-live, never reports
  shipped until the live system confirms
- prod-logs-health-check: pulls real logs, distinguishes failures from retries

Closes #595
Source: https://github.com/Sharrmavishal/operating-kit

Co-authored-by: Cursor <cursoragent@cursor.com>

* Address CodeRabbit review

- Revert .claude-plugin/marketplace.json to upstream — registry updates
  must go through a separate flow, not inside plugin PRs
- code-review-preshipment: replace 'in a hurry' with 'rushed' (wordiness)
- session-start: replace Read: tool-name syntax with action-verb prose
- session-end: replace Read: tool-name syntax with action-verb prose

Co-authored-by: Cursor <cursoragent@cursor.com>

* Address maintainer review: register plugin and sync agents

- Add operating-kit to marketplace.json and run make generate-all
- Fix plugin category workflow -> workflows
- Add deploy trigger phrase; sync deploy/session agents with operating-kit
  (deploy updates state doc after verify-live; session-end is finalization)
- Bump catalog counts in AGENTS.md and docs/plugins.md

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Co-authored-by: Sharrmavishal <sharrmavishal@users.noreply.github.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 16:10:46 -04:00
Seth Hobson f7a922c505 Merge PR #576: add file-conversion plugin
# Conflicts:
#	.claude-plugin/marketplace.json
#	README.md
2026-06-25 11:51:39 +09:00
Seth Hobson 184e119f70 Merge PR #578: add before-you-build plugin 2026-06-25 11:50:08 +09:00
bin1874 f661b956ba feat: add before-you-build plugin 2026-06-12 19:28:44 +08:00
RunAPI 3921ebcbde Fix runapi-mcp plugin metadata 2026-06-12 10:13:44 +08:00
Aadil Razvi 2189eb4de8 Add file-conversion plugin (ChangeThisFile) 2026-06-11 00:01:41 +00:00
Seth Hobson 767d969a73 docs: sync plugin/agent/skill counts to 84/192/156 after social-publishing merge
PR #558 updated the headline totals but left trailing references at
83/191/155 across README, AGENTS.md, GEMINI.md, ARCHITECTURE.md, and
docs/*. Sync them all to the true counts (82 local + 2 external = 84
plugins, 192 agents, 156 skills).

Also runs make generate-all to bring the committed harness registries in
sync — adds the social-publishing entries to .agents/ and .cursor-plugin/
(which the original PR could not regenerate) and fixes the stale count in
the generated cursor manifests.

Left round-trip-results.md (point-in-time CLI verification results) and
plugin-eval.md (grade threshold) unchanged.
2026-06-02 19:15:30 -04:00
Seth Hobson d31e8b8fea fix: address PR review + upgrade ruff/ty so CI matches local
Review feedback:
- codex.py: Codex marketplace entries now conform to the openai/codex
  core-plugins schema — source {source: "local", path}, policy
  {installation, authentication}, and category (was missing required
  fields; flagged P1). Top-level trimmed to {name, plugins}.
- codex.py: interface.shortDescription cuts on a word boundary + ellipsis
  instead of a mid-word [:120] slice in committed .codex-plugin manifests.
- cursor.py: top-level .cursor-plugin/plugin.json displayName is now the
  short "Claude Code Workflows" instead of the long marketplace description.

Tooling (local drives CI):
- Bump ruff 0.15.14 -> 0.15.15 and ty 0.0.39 -> 0.0.40 in plugin-eval's
  uv.lock so CI installs the same versions we run locally, and reformat the
  tools/ + plugin-eval sources to ruff 0.15.15 (fixes the failing
  ruff format --check; the lock-hash change also busts CI's stale cache).

make validate STRICT=1 clean / garden 0 errors / 442 tests pass; regeneration
remains drift-free.
2026-05-29 13:18:48 -04:00
Seth Hobson 608c3840ca feat: native plugin-install for Codex/Cursor/Gemini + CLAUDE.md→AGENTS.md symlink
Add lean, native plugin-install entry points so each harness's own plugin
manager can install this marketplace (mirroring obra/superpowers) — committing
only small JSON registries, not duplicated skill/agent content trees.

- Codex: committed marketplace registry (.agents/plugins/marketplace.json) +
  per-plugin manifests (plugins/*/.codex-plugin/plugin.json). Entries point at
  source ./plugins/<name>; Codex reads SKILL.md directly. Transformed
  .codex/skills|agents stay gitignored.
- Cursor: commit the existing .cursor-plugin/ marketplace + .cursor/rules/
  (these already point at source plugins/).
- Gemini: gemini-extension.json already committed (contextFileName: AGENTS.md);
  transformed trees stay gitignored (install via clone + make generate).
- OpenCode: unchanged — install via `make install-opencode` (transformed tree
  stays gitignored).
- CLAUDE.md is now a symlink to AGENTS.md; Claude-Code addenda moved to
  docs/harnesses.md.
- CI: new step fails if `make generate-all` drifts from the committed registries.

Net new committed: ~720 KB of manifests (no skill/agent duplication). Adds
round-trip tests for the new registries + the symlink. Docs updated across
README, docs/harnesses.md, ARCHITECTURE.md, CONTRIBUTING.md, GEMINI.md,
docs/authoring.md, and the PR template.
2026-05-29 13:02:40 -04:00