ワンクリックで
feat
Implement a new feature following EggPdf's test-first, performance-aware development loop
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Implement a new feature following EggPdf's test-first, performance-aware development loop
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Dual-perspective code review — Lead Dev (architecture/correctness) + Dev (implementation/tests). Runs entirely in the main agent for easy follow-up.
Update EggPdf documentation — README, docs/ wiki pages, site/, llms.txt, CLAUDE.md — to reflect current implementation
Render HTML through EggPdf and analyze PDF output for visual correctness issues
Render all WebUI templates through the PDF pipeline and verify output correctness
Run EggPdf benchmarks and analyze performance for specific rendering scenarios
Fix a bug following the test-first approach -- reproduce with test, then fix, then verify
| name | feat |
| description | Implement a new feature following EggPdf's test-first, performance-aware development loop |
| disable-model-invocation | true |
| user-invocable | true |
| allowed-tools | Bash, Read, Write, Edit, Grep, Glob, Agent, TodoWrite |
Implement a feature for EggPdf following the strict loop: write test -> write code -> verify test -> fix -> benchmark -> repeat until all green.
$ARGUMENTS -- description of the feature to implement (e.g., "HTML tokenizer data state", "CSS margin shorthand expansion", "block formatting context layout")Read the blueprint for implementation details:
BLUEPRINT.md -- find the relevant component and phasegh issue list --search "$ARGUMENTS"Read the affected files before writing any code. Understand existing patterns:
Create a feature branch:
git checkout -b feat/{feature-name}
Write tests FIRST -- this is non-negotiable:
Feature_Condition_ExpectedBehaviorRun tests -- they MUST fail (proves the test is meaningful):
dotnet test --configuration Release --filter "FullyQualifiedName~{TestClass}"
If tests pass before implementation, the tests are wrong. Fix them.
Implement the feature following these constraints:
Span<T> on netstandard2.1+, ArrayPool where appropriateRun tests -- they MUST pass:
dotnet test --configuration Release
Fix failures. Repeat until 100% green. Do NOT move forward with failing tests.
Review your own code:
Run all tests again -- full suite, not just your new ones:
dotnet test --configuration Release
If the change is in a hot path (parser, layout engine, paint, PDF writer):
cd benchmarks/EggPdf.Benchmarks && dotnet run -c Release -- --filter *{Scenario}* --exporters json markdown
Check for regressions -- compare against previous results:
Commit with conventional prefix:
feat: for new featuresfix: for bug fixesperf: for performance improvementstest: for test-only changesrefactor: for restructuring without behavior changePush the branch (but do NOT create PR -- use /ship for that):
git push -u origin feat/{feature-name}
main -- always feature branch + PR