codex-genesis-harness 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.codebase/API_CONTRACTS.md +12 -0
- package/.codebase/ARCHITECTURE.md +6 -0
- package/.codebase/CURRENT_STATE.md +6 -0
- package/.codebase/DEPENDENCY_GRAPH.md +14 -0
- package/.codebase/DOMAIN_MODELS.md +8 -0
- package/.codebase/EVOLUTION_PLAN.md +35 -0
- package/.codebase/KNOWN_PROBLEMS.md +6 -0
- package/.codebase/MODULE_INDEX.md +13 -0
- package/.codebase/PIPELINE_FLOW.md +14 -0
- package/.codebase/TEST_MATRIX.md +11 -0
- package/.codebase/UI_ROUTES.md +4 -0
- package/.codebase/context/backend-summary.md +4 -0
- package/.codebase/context/frontend-summary.md +4 -0
- package/.codebase/context/pipeline-summary.md +4 -0
- package/.codebase/context/providers-summary.md +4 -0
- package/.codebase/context/render-summary.md +4 -0
- package/.codebase/context/tests-summary.md +4 -0
- package/.codex/skills/ai-provider-skill/SKILL.md +46 -0
- package/.codex/skills/ai-provider-skill/agents/openai.yaml +7 -0
- package/.codex/skills/ai-provider-skill/checklists/checklist.md +9 -0
- package/.codex/skills/ai-provider-skill/examples/example.md +4 -0
- package/.codex/skills/ai-provider-skill/templates/provider-contract-template.md +9 -0
- package/.codex/skills/api-contract-skill/SKILL.md +46 -0
- package/.codex/skills/api-contract-skill/agents/openai.yaml +7 -0
- package/.codex/skills/api-contract-skill/checklists/checklist.md +8 -0
- package/.codex/skills/api-contract-skill/examples/example.md +4 -0
- package/.codex/skills/api-contract-skill/templates/api-contract-template.md +4 -0
- package/.codex/skills/architecture-skill/SKILL.md +46 -0
- package/.codex/skills/architecture-skill/agents/openai.yaml +7 -0
- package/.codex/skills/architecture-skill/checklists/checklist.md +8 -0
- package/.codex/skills/architecture-skill/examples/example.md +4 -0
- package/.codex/skills/architecture-skill/templates/architecture-decision-template.md +14 -0
- package/.codex/skills/codebase-map-skill/SKILL.md +46 -0
- package/.codex/skills/codebase-map-skill/agents/openai.yaml +7 -0
- package/.codex/skills/codebase-map-skill/checklists/checklist.md +7 -0
- package/.codex/skills/codebase-map-skill/examples/example.md +4 -0
- package/.codex/skills/codebase-map-skill/templates/map-update-template.md +8 -0
- package/.codex/skills/design-spec-skill/SKILL.md +46 -0
- package/.codex/skills/design-spec-skill/agents/openai.yaml +7 -0
- package/.codex/skills/design-spec-skill/checklists/checklist.md +7 -0
- package/.codex/skills/design-spec-skill/examples/example.md +4 -0
- package/.codex/skills/design-spec-skill/templates/design-spec-template.md +9 -0
- package/.codex/skills/docs-skill/SKILL.md +46 -0
- package/.codex/skills/docs-skill/agents/openai.yaml +7 -0
- package/.codex/skills/docs-skill/checklists/checklist.md +7 -0
- package/.codex/skills/docs-skill/examples/example.md +4 -0
- package/.codex/skills/docs-skill/templates/docs-update-template.md +8 -0
- package/.codex/skills/{project-genesis-harness → genesis-harness}/SKILL.md +43 -4
- package/.codex/skills/genesis-harness/agents/openai.yaml +9 -0
- package/.codex/skills/genesis-harness/checklists/checklist.md +10 -0
- package/.codex/skills/genesis-harness/examples/example.md +4 -0
- package/.codex/skills/genesis-harness/templates/harness-workflow-template.md +10 -0
- package/.codex/skills/genesis-new-design/SKILL.md +95 -0
- package/.codex/skills/genesis-new-design/agents/openai.yaml +4 -0
- package/.codex/skills/genesis-new-design/checklists/checklist.md +8 -0
- package/.codex/skills/genesis-new-design/examples/example.md +4 -0
- package/.codex/skills/genesis-new-design/templates/new-design-template.md +9 -0
- package/.codex/skills/genesis-upgrade-design/SKILL.md +97 -0
- package/.codex/skills/genesis-upgrade-design/agents/openai.yaml +4 -0
- package/.codex/skills/genesis-upgrade-design/checklists/checklist.md +8 -0
- package/.codex/skills/genesis-upgrade-design/examples/example.md +4 -0
- package/.codex/skills/genesis-upgrade-design/templates/upgrade-design-template.md +9 -0
- package/.codex/skills/harness-engineering-skill/SKILL.md +45 -0
- package/.codex/skills/harness-engineering-skill/agents/openai.yaml +7 -0
- package/.codex/skills/harness-engineering-skill/checklists/checklist.md +8 -0
- package/.codex/skills/harness-engineering-skill/examples/example.md +4 -0
- package/.codex/skills/harness-engineering-skill/templates/harness-change-template.md +8 -0
- package/.codex/skills/pipeline-orchestration-skill/SKILL.md +46 -0
- package/.codex/skills/pipeline-orchestration-skill/agents/openai.yaml +7 -0
- package/.codex/skills/pipeline-orchestration-skill/checklists/checklist.md +12 -0
- package/.codex/skills/pipeline-orchestration-skill/examples/example.md +4 -0
- package/.codex/skills/pipeline-orchestration-skill/templates/orchestration-template.md +12 -0
- package/.codex/skills/planning-skill/SKILL.md +46 -0
- package/.codex/skills/planning-skill/agents/openai.yaml +7 -0
- package/.codex/skills/planning-skill/checklists/checklist.md +8 -0
- package/.codex/skills/planning-skill/examples/example.md +4 -0
- package/.codex/skills/planning-skill/templates/plan-template.md +11 -0
- package/.codex/skills/release-skill/SKILL.md +46 -0
- package/.codex/skills/release-skill/agents/openai.yaml +7 -0
- package/.codex/skills/release-skill/checklists/checklist.md +8 -0
- package/.codex/skills/release-skill/examples/example.md +4 -0
- package/.codex/skills/release-skill/templates/release-checklist-template.md +9 -0
- package/.codex/skills/research-skill/SKILL.md +46 -0
- package/.codex/skills/research-skill/agents/openai.yaml +7 -0
- package/.codex/skills/research-skill/checklists/checklist.md +7 -0
- package/.codex/skills/research-skill/examples/example.md +4 -0
- package/.codex/skills/research-skill/templates/research-note-template.md +9 -0
- package/.codex/skills/ui-ux-test-skill/SKILL.md +46 -0
- package/.codex/skills/ui-ux-test-skill/agents/openai.yaml +7 -0
- package/.codex/skills/ui-ux-test-skill/checklists/checklist.md +8 -0
- package/.codex/skills/ui-ux-test-skill/examples/example.md +4 -0
- package/.codex/skills/ui-ux-test-skill/templates/playwright-test-template.md +4 -0
- package/.codex-plugin/plugin.json +13 -11
- package/README.md +164 -181
- package/bin/genesis-harness.js +124 -79
- package/contracts/agents/CharacterBibleAgent/error.json +1 -0
- package/contracts/agents/CharacterBibleAgent/example.json +1 -0
- package/contracts/agents/CharacterBibleAgent/request.json +1 -0
- package/contracts/agents/CharacterBibleAgent/response.json +1 -0
- package/contracts/agents/CharacterBibleAgent/schema.json +1 -0
- package/contracts/agents/ImageGenerationAgent/error.json +1 -0
- package/contracts/agents/ImageGenerationAgent/example.json +1 -0
- package/contracts/agents/ImageGenerationAgent/request.json +1 -0
- package/contracts/agents/ImageGenerationAgent/response.json +1 -0
- package/contracts/agents/ImageGenerationAgent/schema.json +1 -0
- package/contracts/agents/PipelineOrchestrator/error.json +1 -0
- package/contracts/agents/PipelineOrchestrator/example.json +1 -0
- package/contracts/agents/PipelineOrchestrator/request.json +1 -0
- package/contracts/agents/PipelineOrchestrator/response.json +1 -0
- package/contracts/agents/PipelineOrchestrator/schema.json +1 -0
- package/contracts/agents/PromptGenerationAgent/error.json +1 -0
- package/contracts/agents/PromptGenerationAgent/example.json +1 -0
- package/contracts/agents/PromptGenerationAgent/request.json +1 -0
- package/contracts/agents/PromptGenerationAgent/response.json +1 -0
- package/contracts/agents/PromptGenerationAgent/schema.json +1 -0
- package/contracts/agents/RenderAgent/error.json +1 -0
- package/contracts/agents/RenderAgent/example.json +1 -0
- package/contracts/agents/RenderAgent/request.json +1 -0
- package/contracts/agents/RenderAgent/response.json +1 -0
- package/contracts/agents/RenderAgent/schema.json +1 -0
- package/contracts/agents/ScenePlanningAgent/error.json +1 -0
- package/contracts/agents/ScenePlanningAgent/example.json +1 -0
- package/contracts/agents/ScenePlanningAgent/request.json +1 -0
- package/contracts/agents/ScenePlanningAgent/response.json +1 -0
- package/contracts/agents/ScenePlanningAgent/schema.json +1 -0
- package/contracts/agents/ScreenplayAgent/error.json +1 -0
- package/contracts/agents/ScreenplayAgent/example.json +1 -0
- package/contracts/agents/ScreenplayAgent/request.json +1 -0
- package/contracts/agents/ScreenplayAgent/response.json +1 -0
- package/contracts/agents/ScreenplayAgent/schema.json +1 -0
- package/contracts/agents/StoryAnalysisAgent/error.json +1 -0
- package/contracts/agents/StoryAnalysisAgent/example.json +1 -0
- package/contracts/agents/StoryAnalysisAgent/request.json +1 -0
- package/contracts/agents/StoryAnalysisAgent/response.json +1 -0
- package/contracts/agents/StoryAnalysisAgent/schema.json +1 -0
- package/contracts/agents/SubtitleGenerationAgent/error.json +1 -0
- package/contracts/agents/SubtitleGenerationAgent/example.json +1 -0
- package/contracts/agents/SubtitleGenerationAgent/request.json +1 -0
- package/contracts/agents/SubtitleGenerationAgent/response.json +1 -0
- package/contracts/agents/SubtitleGenerationAgent/schema.json +1 -0
- package/contracts/agents/VoiceGenerationAgent/error.json +1 -0
- package/contracts/agents/VoiceGenerationAgent/example.json +1 -0
- package/contracts/agents/VoiceGenerationAgent/request.json +1 -0
- package/contracts/agents/VoiceGenerationAgent/response.json +1 -0
- package/contracts/agents/VoiceGenerationAgent/schema.json +1 -0
- package/contracts/api/README.md +4 -0
- package/contracts/api/endpoint-template/error.json +7 -0
- package/contracts/api/endpoint-template/example.json +11 -0
- package/contracts/api/endpoint-template/request.json +7 -0
- package/contracts/api/endpoint-template/response.json +6 -0
- package/contracts/api/endpoint-template/schema.json +9 -0
- package/contracts/events/README.md +4 -0
- package/contracts/events/event-template/error.json +4 -0
- package/contracts/events/event-template/example.json +6 -0
- package/contracts/events/event-template/request.json +6 -0
- package/contracts/events/event-template/response.json +3 -0
- package/contracts/events/event-template/schema.json +8 -0
- package/contracts/ui/README.md +4 -0
- package/contracts/ui/screen-template/error.json +4 -0
- package/contracts/ui/screen-template/example.json +7 -0
- package/contracts/ui/screen-template/request.json +4 -0
- package/contracts/ui/screen-template/response.json +4 -0
- package/contracts/ui/screen-template/schema.json +8 -0
- package/fixtures/agents/agent-fixture-template.md +14 -0
- package/fixtures/api/api-fixture-template.md +14 -0
- package/fixtures/images/image-fixture-template.md +14 -0
- package/fixtures/pipeline/pipeline-fixture-template.md +14 -0
- package/fixtures/render/render-fixture-template.md +14 -0
- package/fixtures/tts/tts-fixture-template.md +14 -0
- package/fixtures/videos/video-fixture-template.md +14 -0
- package/observability/agent-runs/agent-run-template.md +22 -0
- package/observability/decision-logs/decision-log-template.md +18 -0
- package/observability/failures/failure-template.md +18 -0
- package/package.json +8 -2
- package/playwright/e2e/e2e-template.md +4 -0
- package/playwright/fixtures/ui-fixture-template.md +4 -0
- package/playwright/smoke/smoke-template.md +4 -0
- package/playwright/visual/visual-regression-template.md +4 -0
- package/scripts/install.sh +64 -39
- package/scripts/run-evals.sh +61 -22
- package/scripts/uninstall.sh +40 -20
- package/scripts/verify.sh +234 -55
- package/tests/contracts/contract-template.test.md +10 -0
- package/tests/fixtures/fixture-index.md +4 -0
- package/tests/integration/integration-template.test.md +4 -0
- package/tests/unit/unit-template.test.md +4 -0
- package/.codex/skills/project-genesis-harness/agents/openai.yaml +0 -9
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/references/planning-schema.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/references/quality-rubric.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/references/research-rubric.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/references/workflows.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/agents-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/api-docs-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/architecture-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/audit-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/bug-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/check-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/conventions-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/decision-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/design-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/escalation-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/feature-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/integrations-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/journeys-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/lessons-learned-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/observability-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/phase-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/pitfalls-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/planning-tree-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/project-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/quality-score-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/requirements-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/research-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/review-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/spec-changelog-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/stack-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/resources/verification-template.md +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/scripts/check-architecture-boundaries.sh +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/scripts/check-docs-sync.sh +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/scripts/check-no-debug-logs.sh +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/scripts/check-required-planning-files.sh +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/scripts/check-spec-changelog.sh +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/scripts/check-task-tracking.sh +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/scripts/create-adr.sh +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/scripts/create-bug.sh +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/scripts/create-feature.sh +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/scripts/detect-stack.sh +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/scripts/init-planning.sh +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/scripts/list-changed-files.sh +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/scripts/run-verification.sh +0 -0
- /package/.codex/skills/{project-genesis-harness → genesis-harness}/scripts/update-state.sh +0 -0
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# Render Fixture Template
|
|
2
|
+
|
|
3
|
+
## Input
|
|
4
|
+
|
|
5
|
+
Describe media inputs, timeline, subtitles, voice assets, and image assets.
|
|
6
|
+
|
|
7
|
+
## Expected Output
|
|
8
|
+
|
|
9
|
+
Describe rendered artifact metadata, duration, dimensions, and validation checks.
|
|
10
|
+
|
|
11
|
+
## Validation Notes
|
|
12
|
+
|
|
13
|
+
Check missing assets, invalid media, and deterministic output metadata.
|
|
14
|
+
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# TTS Fixture Template
|
|
2
|
+
|
|
3
|
+
## Input
|
|
4
|
+
|
|
5
|
+
Text, voice, language, timing, and provider options.
|
|
6
|
+
|
|
7
|
+
## Expected Output
|
|
8
|
+
|
|
9
|
+
Audio metadata, transcript alignment, and provider response shape.
|
|
10
|
+
|
|
11
|
+
## Validation Notes
|
|
12
|
+
|
|
13
|
+
Check retries, provider errors, empty text, and persistence.
|
|
14
|
+
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# Video Fixture Template
|
|
2
|
+
|
|
3
|
+
## Input
|
|
4
|
+
|
|
5
|
+
Scene plan, audio, subtitles, images, transitions, and render options.
|
|
6
|
+
|
|
7
|
+
## Expected Output
|
|
8
|
+
|
|
9
|
+
Video artifact metadata, duration, and validation checks.
|
|
10
|
+
|
|
11
|
+
## Validation Notes
|
|
12
|
+
|
|
13
|
+
Check missing clips, bad timing, retry behavior, and resumability.
|
|
14
|
+
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Agent Run Template
|
|
2
|
+
|
|
3
|
+
## Reason
|
|
4
|
+
|
|
5
|
+
Why the autonomous change was started.
|
|
6
|
+
|
|
7
|
+
## Predicted Impact
|
|
8
|
+
|
|
9
|
+
Expected files, behavior, and risks.
|
|
10
|
+
|
|
11
|
+
## Files Changed
|
|
12
|
+
|
|
13
|
+
List changed files.
|
|
14
|
+
|
|
15
|
+
## Tests Executed
|
|
16
|
+
|
|
17
|
+
List commands and results.
|
|
18
|
+
|
|
19
|
+
## Result
|
|
20
|
+
|
|
21
|
+
Completed, blocked, or reverted.
|
|
22
|
+
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codex-genesis-harness",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Install and manage the Project Genesis Harness Codex skill.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"bin": {
|
|
@@ -14,7 +14,13 @@
|
|
|
14
14
|
},
|
|
15
15
|
"files": [
|
|
16
16
|
".codex-plugin",
|
|
17
|
-
".codex/skills
|
|
17
|
+
".codex/skills",
|
|
18
|
+
".codebase",
|
|
19
|
+
"contracts",
|
|
20
|
+
"fixtures",
|
|
21
|
+
"tests",
|
|
22
|
+
"playwright",
|
|
23
|
+
"observability",
|
|
18
24
|
"bin",
|
|
19
25
|
"scripts",
|
|
20
26
|
"README.md",
|
package/scripts/install.sh
CHANGED
|
@@ -1,19 +1,35 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
2
|
set -euo pipefail
|
|
3
3
|
|
|
4
|
-
repo_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
repo_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
5
|
+
skill_names=(
|
|
6
|
+
genesis-harness
|
|
7
|
+
genesis-new-design
|
|
8
|
+
genesis-upgrade-design
|
|
9
|
+
architecture-skill
|
|
10
|
+
planning-skill
|
|
11
|
+
codebase-map-skill
|
|
12
|
+
design-spec-skill
|
|
13
|
+
api-contract-skill
|
|
14
|
+
ui-ux-test-skill
|
|
15
|
+
harness-engineering-skill
|
|
16
|
+
ai-provider-skill
|
|
17
|
+
pipeline-orchestration-skill
|
|
18
|
+
research-skill
|
|
19
|
+
docs-skill
|
|
20
|
+
release-skill
|
|
21
|
+
)
|
|
22
|
+
source_root="$repo_root/.codex/skills"
|
|
23
|
+
codex_home="${CODEX_HOME:-$HOME/.codex}"
|
|
24
|
+
agents_home="${GENESIS_HARNESS_HOME:-$HOME/.agents}"
|
|
25
|
+
target="both"
|
|
10
26
|
|
|
11
|
-
usage() {
|
|
12
|
-
echo "Usage: $0 [--target agents|legacy|both]" >&2
|
|
13
|
-
echo " agents: install to ${agents_home}/skills
|
|
14
|
-
echo " legacy: install to ${codex_home}/skills
|
|
15
|
-
echo " both: install to both locations" >&2
|
|
16
|
-
}
|
|
27
|
+
usage() {
|
|
28
|
+
echo "Usage: $0 [--target agents|legacy|both]" >&2
|
|
29
|
+
echo " agents: install to ${agents_home}/skills" >&2
|
|
30
|
+
echo " legacy: install to ${codex_home}/skills" >&2
|
|
31
|
+
echo " both: install to both locations" >&2
|
|
32
|
+
}
|
|
17
33
|
|
|
18
34
|
while [ "$#" -gt 0 ]; do
|
|
19
35
|
case "$1" in
|
|
@@ -38,32 +54,41 @@ case "$target" in
|
|
|
38
54
|
*) usage; exit 2 ;;
|
|
39
55
|
esac
|
|
40
56
|
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
57
|
+
for skill_name in "${skill_names[@]}"; do
|
|
58
|
+
if [ ! -f "$source_root/$skill_name/SKILL.md" ]; then
|
|
59
|
+
echo "Missing skill source: $source_root/$skill_name/SKILL.md" >&2
|
|
60
|
+
exit 1
|
|
61
|
+
fi
|
|
62
|
+
done
|
|
63
|
+
|
|
64
|
+
install_one() {
|
|
65
|
+
local target_root="$1"
|
|
66
|
+
mkdir -p "$target_root"
|
|
67
|
+
|
|
68
|
+
for skill_name in "${skill_names[@]}"; do
|
|
69
|
+
local source_dir="$source_root/$skill_name"
|
|
70
|
+
local target_dir="$target_root/$skill_name"
|
|
71
|
+
|
|
72
|
+
if [ -e "$target_dir" ]; then
|
|
73
|
+
backup_dir="${target_dir}.backup.$(date +%Y%m%d%H%M%S)"
|
|
74
|
+
mv "$target_dir" "$backup_dir"
|
|
75
|
+
echo "Existing skill backed up to: $backup_dir"
|
|
76
|
+
fi
|
|
77
|
+
|
|
78
|
+
cp -R "$source_dir" "$target_dir"
|
|
79
|
+
if [ -d "$target_dir/scripts" ]; then
|
|
80
|
+
find "$target_dir/scripts" -type f -name '*.sh' -exec chmod +x {} \;
|
|
81
|
+
fi
|
|
82
|
+
echo "Installed $skill_name to: $target_dir"
|
|
83
|
+
done
|
|
84
|
+
}
|
|
60
85
|
|
|
61
86
|
if [ "$target" = "agents" ] || [ "$target" = "both" ]; then
|
|
62
|
-
install_one "$agents_home/skills
|
|
63
|
-
fi
|
|
64
|
-
|
|
65
|
-
if [ "$target" = "legacy" ] || [ "$target" = "both" ]; then
|
|
66
|
-
install_one "$codex_home/skills
|
|
67
|
-
fi
|
|
68
|
-
|
|
69
|
-
echo "Invoke it in Codex with: Use
|
|
87
|
+
install_one "$agents_home/skills"
|
|
88
|
+
fi
|
|
89
|
+
|
|
90
|
+
if [ "$target" = "legacy" ] || [ "$target" = "both" ]; then
|
|
91
|
+
install_one "$codex_home/skills"
|
|
92
|
+
fi
|
|
93
|
+
|
|
94
|
+
echo "Invoke it in Codex with: Use \$genesis-harness"
|
package/scripts/run-evals.sh
CHANGED
|
@@ -1,8 +1,26 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
2
|
set -euo pipefail
|
|
3
3
|
|
|
4
|
-
repo_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
5
|
-
|
|
4
|
+
repo_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
5
|
+
skill_root="$repo_root/.codex/skills"
|
|
6
|
+
harness_dir="$skill_root/genesis-harness"
|
|
7
|
+
skill_names=(
|
|
8
|
+
genesis-harness
|
|
9
|
+
genesis-new-design
|
|
10
|
+
genesis-upgrade-design
|
|
11
|
+
architecture-skill
|
|
12
|
+
planning-skill
|
|
13
|
+
codebase-map-skill
|
|
14
|
+
design-spec-skill
|
|
15
|
+
api-contract-skill
|
|
16
|
+
ui-ux-test-skill
|
|
17
|
+
harness-engineering-skill
|
|
18
|
+
ai-provider-skill
|
|
19
|
+
pipeline-orchestration-skill
|
|
20
|
+
research-skill
|
|
21
|
+
docs-skill
|
|
22
|
+
release-skill
|
|
23
|
+
)
|
|
6
24
|
|
|
7
25
|
fail() {
|
|
8
26
|
echo "eval failed: $*" >&2
|
|
@@ -19,20 +37,37 @@ assert_contains() {
|
|
|
19
37
|
grep -q -- "$text" "$file" || fail "missing '$text' in ${file#$repo_root/}"
|
|
20
38
|
}
|
|
21
39
|
|
|
22
|
-
assert_file "$repo_root/.codex-plugin/plugin.json"
|
|
23
|
-
assert_contains "$repo_root/.codex-plugin/plugin.json" '"skills"'
|
|
24
|
-
assert_contains "$repo_root/.codex-plugin/plugin.json" '"
|
|
25
|
-
|
|
26
|
-
for ref in workflows.md planning-schema.md research-rubric.md quality-rubric.md; do
|
|
27
|
-
assert_file "$
|
|
28
|
-
assert_contains "$
|
|
29
|
-
done
|
|
40
|
+
assert_file "$repo_root/.codex-plugin/plugin.json"
|
|
41
|
+
assert_contains "$repo_root/.codex-plugin/plugin.json" '"skills"'
|
|
42
|
+
assert_contains "$repo_root/.codex-plugin/plugin.json" '"genesis-skill-set"'
|
|
43
|
+
|
|
44
|
+
for ref in workflows.md planning-schema.md research-rubric.md quality-rubric.md; do
|
|
45
|
+
assert_file "$harness_dir/references/$ref"
|
|
46
|
+
assert_contains "$harness_dir/SKILL.md" "references/$ref"
|
|
47
|
+
done
|
|
48
|
+
|
|
49
|
+
for skill_name in "${skill_names[@]}"; do
|
|
50
|
+
assert_file "$skill_root/$skill_name/SKILL.md"
|
|
51
|
+
assert_file "$skill_root/$skill_name/agents/openai.yaml"
|
|
52
|
+
assert_contains "$skill_root/$skill_name/SKILL.md" "name: $skill_name"
|
|
53
|
+
done
|
|
30
54
|
|
|
31
55
|
assert_contains "$repo_root/scripts/install.sh" '--target agents|legacy|both'
|
|
32
|
-
assert_contains "$repo_root/scripts/uninstall.sh" '--target agents|legacy|both'
|
|
33
|
-
assert_contains "$repo_root/bin/genesis-harness.js" '--target agents|legacy|both'
|
|
34
|
-
assert_contains "$repo_root/package.json" '".codex-plugin"'
|
|
35
|
-
assert_contains "$repo_root/
|
|
56
|
+
assert_contains "$repo_root/scripts/uninstall.sh" '--target agents|legacy|both'
|
|
57
|
+
assert_contains "$repo_root/bin/genesis-harness.js" '--target agents|legacy|both'
|
|
58
|
+
assert_contains "$repo_root/package.json" '".codex-plugin"'
|
|
59
|
+
assert_contains "$repo_root/package.json" '".codebase"'
|
|
60
|
+
assert_contains "$repo_root/package.json" '"contracts"'
|
|
61
|
+
assert_contains "$repo_root/package.json" '"fixtures"'
|
|
62
|
+
assert_contains "$repo_root/package.json" '"playwright"'
|
|
63
|
+
assert_contains "$repo_root/package.json" '"observability"'
|
|
64
|
+
assert_contains "$repo_root/README.md" '.agents/skills'
|
|
65
|
+
|
|
66
|
+
for skill_name in "${skill_names[@]}"; do
|
|
67
|
+
assert_contains "$repo_root/bin/genesis-harness.js" "$skill_name"
|
|
68
|
+
assert_contains "$repo_root/scripts/install.sh" "$skill_name"
|
|
69
|
+
assert_contains "$repo_root/scripts/uninstall.sh" "$skill_name"
|
|
70
|
+
done
|
|
36
71
|
|
|
37
72
|
tmp="$(mktemp -d)"
|
|
38
73
|
cleanup() {
|
|
@@ -40,13 +75,17 @@ cleanup() {
|
|
|
40
75
|
}
|
|
41
76
|
trap cleanup EXIT
|
|
42
77
|
|
|
43
|
-
CODEX_HOME="$tmp/codex" GENESIS_HARNESS_HOME="$tmp/agents" bash "$repo_root/scripts/install.sh" --target both >/dev/null
|
|
44
|
-
|
|
45
|
-
[ -f "$tmp/
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
78
|
+
CODEX_HOME="$tmp/codex" GENESIS_HARNESS_HOME="$tmp/agents" bash "$repo_root/scripts/install.sh" --target both >/dev/null
|
|
79
|
+
for skill_name in "${skill_names[@]}"; do
|
|
80
|
+
[ -f "$tmp/agents/skills/$skill_name/SKILL.md" ] || fail "agents install target missing: $skill_name"
|
|
81
|
+
[ -f "$tmp/codex/skills/$skill_name/SKILL.md" ] || fail "legacy install target missing: $skill_name"
|
|
82
|
+
done
|
|
83
|
+
bash "$repo_root/scripts/verify.sh" "$tmp/agents/skills" >/dev/null
|
|
84
|
+
bash "$repo_root/scripts/verify.sh" "$tmp/codex/skills" >/dev/null
|
|
85
|
+
CODEX_HOME="$tmp/codex" GENESIS_HARNESS_HOME="$tmp/agents" bash "$repo_root/scripts/uninstall.sh" --target both >/dev/null
|
|
86
|
+
for skill_name in "${skill_names[@]}" project-genesis-harness; do
|
|
87
|
+
[ ! -e "$tmp/agents/skills/$skill_name" ] || fail "agents uninstall target remains: $skill_name"
|
|
88
|
+
[ ! -e "$tmp/codex/skills/$skill_name" ] || fail "legacy uninstall target remains: $skill_name"
|
|
89
|
+
done
|
|
51
90
|
|
|
52
91
|
echo "evals passed"
|
package/scripts/uninstall.sh
CHANGED
|
@@ -1,9 +1,26 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
2
|
set -euo pipefail
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
skill_names=(
|
|
5
|
+
genesis-harness
|
|
6
|
+
genesis-new-design
|
|
7
|
+
genesis-upgrade-design
|
|
8
|
+
architecture-skill
|
|
9
|
+
planning-skill
|
|
10
|
+
codebase-map-skill
|
|
11
|
+
design-spec-skill
|
|
12
|
+
api-contract-skill
|
|
13
|
+
ui-ux-test-skill
|
|
14
|
+
harness-engineering-skill
|
|
15
|
+
ai-provider-skill
|
|
16
|
+
pipeline-orchestration-skill
|
|
17
|
+
research-skill
|
|
18
|
+
docs-skill
|
|
19
|
+
release-skill
|
|
20
|
+
project-genesis-harness
|
|
21
|
+
)
|
|
22
|
+
codex_home="${CODEX_HOME:-$HOME/.codex}"
|
|
23
|
+
agents_home="${GENESIS_HARNESS_HOME:-$HOME/.agents}"
|
|
7
24
|
target="both"
|
|
8
25
|
|
|
9
26
|
usage() {
|
|
@@ -33,20 +50,23 @@ case "$target" in
|
|
|
33
50
|
*) usage; exit 2 ;;
|
|
34
51
|
esac
|
|
35
52
|
|
|
36
|
-
remove_one() {
|
|
37
|
-
local
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
+
remove_one() {
|
|
54
|
+
local target_root="$1"
|
|
55
|
+
for skill_name in "${skill_names[@]}"; do
|
|
56
|
+
local target_dir="$target_root/$skill_name"
|
|
57
|
+
if [ ! -e "$target_dir" ]; then
|
|
58
|
+
echo "Skill is not installed at: $target_dir"
|
|
59
|
+
continue
|
|
60
|
+
fi
|
|
61
|
+
rm -rf "$target_dir"
|
|
62
|
+
echo "Removed: $target_dir"
|
|
63
|
+
done
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
if [ "$target" = "agents" ] || [ "$target" = "both" ]; then
|
|
67
|
+
remove_one "$agents_home/skills"
|
|
68
|
+
fi
|
|
69
|
+
|
|
70
|
+
if [ "$target" = "legacy" ] || [ "$target" = "both" ]; then
|
|
71
|
+
remove_one "$codex_home/skills"
|
|
72
|
+
fi
|