用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/shinpr/codex-workflows --skill recipe-add-integration-tests命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
Proposes and, after user confirmation, creates or maintains docs/project-context/quality.yaml from repository-specific review requirements. Use when asked to generate or update a repository quality profile.
Execute an approved backend Work Plan autonomously through task execution, quality fixes, commits, and final verification.
Execute an approved frontend Work Plan autonomously through frontend implementation, quality fixes, commits, and final verification.
| name | recipe-add-integration-tests |
| description | Add integration/E2E tests to existing codebase using Design Docs. |
testing — repository-aware test executionintegration-e2e-testing — value-based integration/E2E selectionsubagents-orchestration-guide — review resolution and agent coordinationllm-friendly-context — task file contractSpawn rule: every spawn_agent call uses fork_turns="none" so the subagent receives only the task message and explicitly provided context.
Context: Test addition workflow for existing implementations
Core Identity: Coordinate test addition, perform lightweight evidence collection and routing directly, and invoke specialists for generation, implementation, and review judgment.
Execution Plan: Reuse the active execution plan. When the workflow has multiple dependent actions and no plan exists, create one that tracks them through final verification.
Why Spawn: Orchestrator's context is shared across all steps. Direct implementation consumes context needed for review and quality check phases. Task files create context boundaries. Subagents work in isolated context.
Execution Method:
Document paths: $ARGUMENTS
Use the llm-friendly-context Task File Contract in Step 3.
# Verify at least one document path was provided
test -n "$ARGUMENTS" || { echo "ERROR: No document paths provided"; exit 1; }
# Verify provided paths exist
ls $ARGUMENTS
Treat the user-provided paths in $ARGUMENTS as the complete document selection.
Treat paths under docs/ui-spec/ as UI Specs and the supplied docs/design/ paths as Design Docs. When a filename is unclear, use the document title and content; layer classification is not an execution gate because the generator returns each artifact's implementation kind.
Spawn acceptance-test-generator with the validated document paths from Step 1. Include UI Specs as optional UI evidence.
Generate test skeletons from the following documents:
- Design Docs: [paths]
- UI Specs: [paths, when supplied]
Expected output: consume the acceptance-test-generator contract directly:
{
"status": "completed",
"artifacts": [{"path": "path", "implementationKind": "general | frontend"}]
}
Verify returned artifact paths. When the selected set is empty, report that no integration/E2E skeleton was valuable and finish; otherwise continue to Step 3.
Group the returned artifacts by implementationKind and create at most one task per non-empty group:
| implementationKind | Task file | Executor | Quality fixer |
|---|---|---|---|
general | docs/plans/tasks/integration-tests-task-YYYYMMDD.md | task-executor | quality-fixer |
frontend | docs/plans/tasks/integration-tests-frontend-task-YYYYMMDD.md | task-executor-frontend | quality-fixer-frontend |
Populate the llm-friendly-context Task File Contract with:
Source Plan Tasks: N/A — standalone test-addition flowImplementation Outcome: implement every skeleton in this task's artifact group as a runnable integration/E2E testGoverning Sources: the supplied Design Doc/UI Spec paths and the ACs cited by the skeletonsTarget Files: the path of every artifact in this task's groupInvestigation Targets: the governing sections, generated skeletons, and one representative existing test per selected laneImplementation Steps: implement the skeleton proof obligations, run their focused commands, and keep the selected boundaries observableOperation Verification Methods: repository commands and observable pass conditions for the selected lanesVerification Focus: when one material false-green condition controls completion, copy its Primary failure and smallest observable proof checkCompletion Criteria: every selected skeleton is executable and its observable checks passOutput: "Task file created at [path]. Ready for Step 4."
Start the subagents-orchestration-guide Per-Task Change Set before invoking the executor for each task.
For each task file from Step 3, invoke the executor from its table row with: "Task file: [task file path from Step 3]. Implement tests following the task file."
Inspect the executor result and repository diff, then add its paths to taskWriteSet. Resolve an incomplete or unusable implementation through Orchestrator Escalation Resolution.
Execute one task file at a time through Steps 4 -> 5 -> 6 -> 7 before starting the next.
Expected output: completion or escalation state, filesModified, testsAdded, requiresTestReview, and operation-verification evidence
Use integration/E2E paths from taskWriteSet as the test-review input set.
Spawn integration-test-reviewer with changedTestFiles, diffBase, skeletonFiles: [artifact paths in the current task], and taskFile.
Keep testsAdded as reporting metadata only.
Consume the reviewer decision, actionable findings, and governing basis. Apply Orchestrator Escalation Resolution when the result is blocked or cannot support the next action.
Proceed when the review is approved. When it contains actionable revision findings, apply Review Resolution with the layer-appropriate executor, add repair paths to taskWriteSet, and rerun the reviewer.
Spawn the quality fixer from the current task's Step 3 table row with task_file, filesModified: taskWriteSet, and the executor's operation-verification evidence.
Expected output: status (stub_detected/approved/blocked)
On quality approval, add its filesModified, reconcile and commit the Per-Task Change Set, then mark the temporary task file complete. Repair stubs through the current task's executor and accumulate their paths; resolve blocked results through Orchestrator Escalation Resolution.
status: completeddocs/plans/tasks/Before the completion report, delete only the integration-test task files this recipe created for the current run. Their work is committed; docs/plans/ is ephemeral working state.
If cleanup fails, preserve completed test work and report the failed path.
基于 SOC 职业分类