@holdyourvoice/hyv 3.3.4 → 3.4.0

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.
Files changed (98) hide show
  1. package/Readme.md +85 -365
  2. package/dist/agents/catalog.js +118 -0
  3. package/dist/agents/catalog.test.js +60 -0
  4. package/dist/agents/emit.js +42 -0
  5. package/dist/agents/emit.test.js +64 -0
  6. package/dist/agents/index.js +4 -0
  7. package/dist/agents/load.js +184 -0
  8. package/dist/agents/load.test.js +149 -0
  9. package/dist/agents/types.js +18 -0
  10. package/dist/approval-capability.js +1 -4
  11. package/dist/approval-context.js +1 -1
  12. package/dist/cli.js +111 -2
  13. package/dist/cli.test.js +76 -0
  14. package/dist/copy-spec.js +1 -6
  15. package/dist/editorial-packs.js +1 -3
  16. package/dist/hidden-text.js +2 -12
  17. package/dist/internal.js +30 -0
  18. package/dist/judgment-task.js +1 -13
  19. package/dist/lifecycle-adapter.js +2 -1
  20. package/dist/mcp-tools.js +2 -1
  21. package/dist/pipeline.js +4 -12
  22. package/dist/profile.js +1 -3
  23. package/dist/rebuild-task.js +1 -16
  24. package/dist/rebuild-task.test.js +1 -1
  25. package/dist/release-audit.test.js +5 -1
  26. package/dist/rewrite-task.js +1 -5
  27. package/dist/semantic-review.js +1 -2
  28. package/dist/version.js +1 -1
  29. package/package.json +3 -3
  30. package/skills/hyv-analyze/SKILL.md +24 -0
  31. package/skills/hyv-analyze/agent.json +49 -0
  32. package/skills/hyv-analyze/agents/openai.yaml +4 -0
  33. package/skills/hyv-apply-hidden-text-policy/SKILL.md +24 -0
  34. package/skills/hyv-apply-hidden-text-policy/agent.json +49 -0
  35. package/skills/hyv-apply-hidden-text-policy/agents/openai.yaml +4 -0
  36. package/skills/hyv-apply-rebuild/SKILL.md +24 -0
  37. package/skills/hyv-apply-rebuild/agent.json +49 -0
  38. package/skills/hyv-apply-rebuild/agents/openai.yaml +4 -0
  39. package/skills/hyv-apply-rewrite/SKILL.md +24 -0
  40. package/skills/hyv-apply-rewrite/agent.json +48 -0
  41. package/skills/hyv-apply-rewrite/agents/openai.yaml +4 -0
  42. package/skills/hyv-batch-analyze/SKILL.md +24 -0
  43. package/skills/hyv-batch-analyze/agent.json +45 -0
  44. package/skills/hyv-batch-analyze/agents/openai.yaml +4 -0
  45. package/skills/hyv-fact-lint/SKILL.md +24 -0
  46. package/skills/hyv-fact-lint/agent.json +50 -0
  47. package/skills/hyv-fact-lint/agents/openai.yaml +4 -0
  48. package/skills/hyv-final-check/SKILL.md +24 -0
  49. package/skills/hyv-final-check/agent.json +43 -0
  50. package/skills/hyv-final-check/agents/openai.yaml +4 -0
  51. package/skills/hyv-hygiene/SKILL.md +24 -0
  52. package/skills/hyv-hygiene/agent.json +50 -0
  53. package/skills/hyv-hygiene/agents/openai.yaml +4 -0
  54. package/skills/hyv-inspect-hidden-text/SKILL.md +24 -0
  55. package/skills/hyv-inspect-hidden-text/agent.json +48 -0
  56. package/skills/hyv-inspect-hidden-text/agents/openai.yaml +4 -0
  57. package/skills/hyv-learning/SKILL.md +24 -0
  58. package/skills/hyv-learning/agent.json +48 -0
  59. package/skills/hyv-learning/agents/openai.yaml +4 -0
  60. package/skills/hyv-lifecycle/SKILL.md +24 -0
  61. package/skills/hyv-lifecycle/agent.json +48 -0
  62. package/skills/hyv-lifecycle/agents/openai.yaml +4 -0
  63. package/skills/hyv-logic-lint/SKILL.md +24 -0
  64. package/skills/hyv-logic-lint/agent.json +47 -0
  65. package/skills/hyv-logic-lint/agents/openai.yaml +4 -0
  66. package/skills/hyv-mcp/SKILL.md +24 -0
  67. package/skills/hyv-mcp/agent.json +43 -0
  68. package/skills/hyv-mcp/agents/openai.yaml +4 -0
  69. package/skills/hyv-patterns/SKILL.md +24 -0
  70. package/skills/hyv-patterns/agent.json +43 -0
  71. package/skills/hyv-patterns/agents/openai.yaml +4 -0
  72. package/skills/hyv-prepare-judgment/SKILL.md +24 -0
  73. package/skills/hyv-prepare-judgment/agent.json +52 -0
  74. package/skills/hyv-prepare-judgment/agents/openai.yaml +4 -0
  75. package/skills/hyv-prepare-rebuild/SKILL.md +24 -0
  76. package/skills/hyv-prepare-rebuild/agent.json +54 -0
  77. package/skills/hyv-prepare-rebuild/agents/openai.yaml +4 -0
  78. package/skills/hyv-prepare-rewrite/SKILL.md +24 -0
  79. package/skills/hyv-prepare-rewrite/agent.json +51 -0
  80. package/skills/hyv-prepare-rewrite/agents/openai.yaml +4 -0
  81. package/skills/hyv-profile/SKILL.md +24 -0
  82. package/skills/hyv-profile/agent.json +50 -0
  83. package/skills/hyv-profile/agents/openai.yaml +4 -0
  84. package/skills/hyv-rebuild-writer-request/SKILL.md +24 -0
  85. package/skills/hyv-rebuild-writer-request/agent.json +47 -0
  86. package/skills/hyv-rebuild-writer-request/agents/openai.yaml +4 -0
  87. package/skills/hyv-reduce-judgment/SKILL.md +24 -0
  88. package/skills/hyv-reduce-judgment/agent.json +45 -0
  89. package/skills/hyv-reduce-judgment/agents/openai.yaml +4 -0
  90. package/skills/hyv-rewrite-prompt/SKILL.md +24 -0
  91. package/skills/hyv-rewrite-prompt/agent.json +48 -0
  92. package/skills/hyv-rewrite-prompt/agents/openai.yaml +4 -0
  93. package/skills/hyv-verify/SKILL.md +24 -0
  94. package/skills/hyv-verify/agent.json +49 -0
  95. package/skills/hyv-verify/agents/openai.yaml +4 -0
  96. package/skills/hyv-verify-spec/SKILL.md +24 -0
  97. package/skills/hyv-verify-spec/agent.json +50 -0
  98. package/skills/hyv-verify-spec/agents/openai.yaml +4 -0
@@ -0,0 +1,51 @@
1
+ {
2
+ "schema_version": "1.0.0",
3
+ "id": "hyv-prepare-rewrite",
4
+ "title": "hyv-prepare-rewrite",
5
+ "description": "Prepare a local, versioned, fingerprint-bound rewrite task.",
6
+ "instruction_file": "SKILL.md",
7
+ "role": "Task preparer",
8
+ "workflow_phase": "plan",
9
+ "input": {
10
+ "required": [
11
+ "draft path",
12
+ "profile path",
13
+ "task output path"
14
+ ],
15
+ "optional": [
16
+ "copy-spec.json",
17
+ "writing-brief.json"
18
+ ]
19
+ },
20
+ "output": {
21
+ "required": [
22
+ "written task.json"
23
+ ],
24
+ "optional": []
25
+ },
26
+ "evidence_requirements": [
27
+ "Report only the deterministic result the command returns; never invent a model or provider call that did not occur."
28
+ ],
29
+ "permissions": [
30
+ "execute_commands",
31
+ "read_repository",
32
+ "write_repository"
33
+ ],
34
+ "stop_conditions": [
35
+ "Stop when required input is missing, when the command cannot run without changing existing behavior, or when a claimed capability is unavailable."
36
+ ],
37
+ "tool_free_mode": {
38
+ "available": true,
39
+ "behavior": "Provide the decision, artifact template, and exact unavailable capability; never claim a tool action occurred.",
40
+ "unavailable_statuses": [
41
+ "NOT_AVAILABLE",
42
+ "NOT_CONFIGURED",
43
+ "NOT_RUN",
44
+ "STALE",
45
+ "ERROR"
46
+ ]
47
+ },
48
+ "handoff_to": [
49
+ "hyv-apply-rewrite"
50
+ ]
51
+ }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Hyv Prepare Rewrite"
3
+ short_description: "Prepare a local, versioned, fingerprint-bound rewrite task."
4
+ default_prompt: "Use $hyv-prepare-rewrite to prepare a local, versioned, fingerprint-bound rewrite task."
@@ -0,0 +1,24 @@
1
+ ---
2
+ name: hyv-profile
3
+ description: Build a portable VoiceDNA profile from at least two writing samples.
4
+ ---
5
+
6
+ # hyv-profile
7
+
8
+ Build a portable VoiceDNA profile from at least two writing samples. Samples stay in memory and are not saved into the profile; only measured voice features are written. The output path must be supplied first, followed by two or more sample paths. Use --avoid=phrase to add phrases that must never appear in later output.
9
+
10
+ ## Usage
11
+
12
+ ```text
13
+ hyv profile profile.json sample-a.md sample-b.md [sample-c.md] [--avoid=phrase]
14
+ ```
15
+
16
+ ## Behavior
17
+
18
+ - Deterministic and local-first: this command never calls a provider and never sends drafts, samples, profiles, or telemetry to a service.
19
+ - Commands that write use an explicit output path. Confirm that path before running the command.
20
+ - This agent describes how to invoke the command and what it returns. It does not change command behavior or exit codes.
21
+
22
+ ## Handoff
23
+
24
+ Run `hyv profile` directly to execute the operation. Follow-on agents: hyv-analyze, hyv-rewrite-prompt.
@@ -0,0 +1,50 @@
1
+ {
2
+ "schema_version": "1.0.0",
3
+ "id": "hyv-profile",
4
+ "title": "hyv-profile",
5
+ "description": "Build a portable VoiceDNA profile from at least two writing samples.",
6
+ "instruction_file": "SKILL.md",
7
+ "role": "Profile builder",
8
+ "workflow_phase": "analyze",
9
+ "input": {
10
+ "required": [
11
+ "profile output path",
12
+ "two or more sample paths"
13
+ ],
14
+ "optional": [
15
+ "--avoid=phrase avoid-list entries"
16
+ ]
17
+ },
18
+ "output": {
19
+ "required": [
20
+ "written profile.json"
21
+ ],
22
+ "optional": []
23
+ },
24
+ "evidence_requirements": [
25
+ "Report only the deterministic result the command returns; never invent a model or provider call that did not occur."
26
+ ],
27
+ "permissions": [
28
+ "execute_commands",
29
+ "read_repository",
30
+ "write_repository"
31
+ ],
32
+ "stop_conditions": [
33
+ "Stop when required input is missing, when the command cannot run without changing existing behavior, or when a claimed capability is unavailable."
34
+ ],
35
+ "tool_free_mode": {
36
+ "available": true,
37
+ "behavior": "Provide the decision, artifact template, and exact unavailable capability; never claim a tool action occurred.",
38
+ "unavailable_statuses": [
39
+ "NOT_AVAILABLE",
40
+ "NOT_CONFIGURED",
41
+ "NOT_RUN",
42
+ "STALE",
43
+ "ERROR"
44
+ ]
45
+ },
46
+ "handoff_to": [
47
+ "hyv-analyze",
48
+ "hyv-rewrite-prompt"
49
+ ]
50
+ }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Hyv Profile"
3
+ short_description: "Build a portable VoiceDNA profile from at least two writing samples."
4
+ default_prompt: "Use $hyv-profile to build a portable voicedna profile from at least two writing samples."
@@ -0,0 +1,24 @@
1
+ ---
2
+ name: hyv-rebuild-writer-request
3
+ description: Create the writer-only payload for a prepared rebuild task.
4
+ ---
5
+
6
+ # hyv-rebuild-writer-request
7
+
8
+ Create the writer-only payload for a prepared rebuild. It excludes the source draft, capability, profile body, and validation evidence.
9
+
10
+ ## Usage
11
+
12
+ ```text
13
+ hyv rebuild-writer-request task.json writer-request.json
14
+ ```
15
+
16
+ ## Behavior
17
+
18
+ - Deterministic and local-first: this command never calls a provider and never sends drafts, samples, profiles, or telemetry to a service.
19
+ - Commands that write use an explicit output path. Confirm that path before running the command.
20
+ - This agent describes how to invoke the command and what it returns. It does not change command behavior or exit codes.
21
+
22
+ ## Handoff
23
+
24
+ Run `hyv rebuild-writer-request` directly to execute the operation. Follow-on agents: hyv-apply-rebuild.
@@ -0,0 +1,47 @@
1
+ {
2
+ "schema_version": "1.0.0",
3
+ "id": "hyv-rebuild-writer-request",
4
+ "title": "hyv-rebuild-writer-request",
5
+ "description": "Create the writer-only payload for a prepared rebuild task.",
6
+ "instruction_file": "SKILL.md",
7
+ "role": "Writer-request author",
8
+ "workflow_phase": "plan",
9
+ "input": {
10
+ "required": [
11
+ "task.json",
12
+ "writer-request output path"
13
+ ],
14
+ "optional": []
15
+ },
16
+ "output": {
17
+ "required": [
18
+ "written writer-request.json"
19
+ ],
20
+ "optional": []
21
+ },
22
+ "evidence_requirements": [
23
+ "Report only the deterministic result the command returns; never invent a model or provider call that did not occur."
24
+ ],
25
+ "permissions": [
26
+ "execute_commands",
27
+ "read_repository",
28
+ "write_repository"
29
+ ],
30
+ "stop_conditions": [
31
+ "Stop when required input is missing, when the command cannot run without changing existing behavior, or when a claimed capability is unavailable."
32
+ ],
33
+ "tool_free_mode": {
34
+ "available": true,
35
+ "behavior": "Provide the decision, artifact template, and exact unavailable capability; never claim a tool action occurred.",
36
+ "unavailable_statuses": [
37
+ "NOT_AVAILABLE",
38
+ "NOT_CONFIGURED",
39
+ "NOT_RUN",
40
+ "STALE",
41
+ "ERROR"
42
+ ]
43
+ },
44
+ "handoff_to": [
45
+ "hyv-apply-rebuild"
46
+ ]
47
+ }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Hyv Rebuild Writer Request"
3
+ short_description: "Create the writer-only payload for a prepared rebuild task."
4
+ default_prompt: "Use $hyv-rebuild-writer-request to create the writer-only payload for a prepared rebuild task."
@@ -0,0 +1,24 @@
1
+ ---
2
+ name: hyv-reduce-judgment
3
+ description: Reduce bound judgment envelopes into SHIP, EDIT, REBUILD, CLEAR, or ESCALATE.
4
+ ---
5
+
6
+ # hyv-reduce-judgment
7
+
8
+ Reduce bound judgment envelopes into SHIP, EDIT, REBUILD, CLEAR, or ESCALATE. It does not call a model.
9
+
10
+ ## Usage
11
+
12
+ ```text
13
+ hyv reduce-judgment envelope.json envelope.json envelope.json [envelope.json...]
14
+ ```
15
+
16
+ ## Behavior
17
+
18
+ - Deterministic and local-first: this command never calls a provider and never sends drafts, samples, profiles, or telemetry to a service.
19
+ - Commands that write use an explicit output path. Confirm that path before running the command.
20
+ - This agent describes how to invoke the command and what it returns. It does not change command behavior or exit codes.
21
+
22
+ ## Handoff
23
+
24
+ Run `hyv reduce-judgment` directly to execute the operation. Follow-on agents: hyv-prepare-rebuild.
@@ -0,0 +1,45 @@
1
+ {
2
+ "schema_version": "1.0.0",
3
+ "id": "hyv-reduce-judgment",
4
+ "title": "hyv-reduce-judgment",
5
+ "description": "Reduce bound judgment envelopes into SHIP, EDIT, REBUILD, CLEAR, or ESCALATE.",
6
+ "instruction_file": "SKILL.md",
7
+ "role": "Judgment reducer",
8
+ "workflow_phase": "review",
9
+ "input": {
10
+ "required": [
11
+ "three or more judgment envelope.json paths"
12
+ ],
13
+ "optional": []
14
+ },
15
+ "output": {
16
+ "required": [
17
+ "reduced decision"
18
+ ],
19
+ "optional": []
20
+ },
21
+ "evidence_requirements": [
22
+ "Report only the deterministic result the command returns; never invent a model or provider call that did not occur."
23
+ ],
24
+ "permissions": [
25
+ "execute_commands",
26
+ "read_repository"
27
+ ],
28
+ "stop_conditions": [
29
+ "Stop when required input is missing, when the command cannot run without changing existing behavior, or when a claimed capability is unavailable."
30
+ ],
31
+ "tool_free_mode": {
32
+ "available": true,
33
+ "behavior": "Provide the decision, artifact template, and exact unavailable capability; never claim a tool action occurred.",
34
+ "unavailable_statuses": [
35
+ "NOT_AVAILABLE",
36
+ "NOT_CONFIGURED",
37
+ "NOT_RUN",
38
+ "STALE",
39
+ "ERROR"
40
+ ]
41
+ },
42
+ "handoff_to": [
43
+ "hyv-prepare-rebuild"
44
+ ]
45
+ }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Hyv Reduce Judgment"
3
+ short_description: "Reduce bound judgment envelopes into SHIP, EDIT, REBUILD, CLEAR, or ESCALATE."
4
+ default_prompt: "Use $hyv-reduce-judgment to reduce bound judgment envelopes into ship, edit, rebuild, clear, or escalate."
@@ -0,0 +1,24 @@
1
+ ---
2
+ name: hyv-rewrite-prompt
3
+ description: Create a constrained editing brief without rewriting the draft.
4
+ ---
5
+
6
+ # hyv-rewrite-prompt
7
+
8
+ Create a constrained editing brief. It does not rewrite the draft or call a model. The brief is printed to stdout for redirect into a markdown file.
9
+
10
+ ## Usage
11
+
12
+ ```text
13
+ hyv rewrite-prompt draft.md profile.json [writing-brief.json] > rewrite-brief.md
14
+ ```
15
+
16
+ ## Behavior
17
+
18
+ - Deterministic and local-first: this command never calls a provider and never sends drafts, samples, profiles, or telemetry to a service.
19
+ - Commands that write use an explicit output path. Confirm that path before running the command.
20
+ - This agent describes how to invoke the command and what it returns. It does not change command behavior or exit codes.
21
+
22
+ ## Handoff
23
+
24
+ Run `hyv rewrite-prompt` directly to execute the operation. Follow-on agents: hyv-prepare-rewrite.
@@ -0,0 +1,48 @@
1
+ {
2
+ "schema_version": "1.0.0",
3
+ "id": "hyv-rewrite-prompt",
4
+ "title": "hyv-rewrite-prompt",
5
+ "description": "Create a constrained editing brief without rewriting the draft.",
6
+ "instruction_file": "SKILL.md",
7
+ "role": "Brief author",
8
+ "workflow_phase": "plan",
9
+ "input": {
10
+ "required": [
11
+ "draft path",
12
+ "profile path"
13
+ ],
14
+ "optional": [
15
+ "writing-brief.json"
16
+ ]
17
+ },
18
+ "output": {
19
+ "required": [
20
+ "markdown editing brief"
21
+ ],
22
+ "optional": []
23
+ },
24
+ "evidence_requirements": [
25
+ "Report only the deterministic result the command returns; never invent a model or provider call that did not occur."
26
+ ],
27
+ "permissions": [
28
+ "execute_commands",
29
+ "read_repository"
30
+ ],
31
+ "stop_conditions": [
32
+ "Stop when required input is missing, when the command cannot run without changing existing behavior, or when a claimed capability is unavailable."
33
+ ],
34
+ "tool_free_mode": {
35
+ "available": true,
36
+ "behavior": "Provide the decision, artifact template, and exact unavailable capability; never claim a tool action occurred.",
37
+ "unavailable_statuses": [
38
+ "NOT_AVAILABLE",
39
+ "NOT_CONFIGURED",
40
+ "NOT_RUN",
41
+ "STALE",
42
+ "ERROR"
43
+ ]
44
+ },
45
+ "handoff_to": [
46
+ "hyv-prepare-rewrite"
47
+ ]
48
+ }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Hyv Rewrite Prompt"
3
+ short_description: "Create a constrained editing brief without rewriting the draft."
4
+ default_prompt: "Use $hyv-rewrite-prompt to create a constrained editing brief without rewriting the draft."
@@ -0,0 +1,24 @@
1
+ ---
2
+ name: hyv-verify
3
+ description: Verify a revised candidate against an original draft and portable profile.
4
+ ---
5
+
6
+ # hyv-verify
7
+
8
+ Verify a revised candidate against an original draft and portable profile without changing learning state. Verification is read-only; learning changes require an explicit learning command or a separately approved lifecycle transition.
9
+
10
+ ## Usage
11
+
12
+ ```text
13
+ hyv verify original.md candidate.md profile.json [writing-brief.json]
14
+ ```
15
+
16
+ ## Behavior
17
+
18
+ - Deterministic and local-first: this command never calls a provider and never sends drafts, samples, profiles, or telemetry to a service.
19
+ - Commands that write use an explicit output path. Confirm that path before running the command.
20
+ - This agent describes how to invoke the command and what it returns. It does not change command behavior or exit codes.
21
+
22
+ ## Handoff
23
+
24
+ Run `hyv verify` directly to execute the operation. Follow-on agents: hyv-lifecycle.
@@ -0,0 +1,49 @@
1
+ {
2
+ "schema_version": "1.0.0",
3
+ "id": "hyv-verify",
4
+ "title": "hyv-verify",
5
+ "description": "Verify a revised candidate against an original draft and portable profile.",
6
+ "instruction_file": "SKILL.md",
7
+ "role": "Verifier",
8
+ "workflow_phase": "verify",
9
+ "input": {
10
+ "required": [
11
+ "original path",
12
+ "candidate path",
13
+ "profile path"
14
+ ],
15
+ "optional": [
16
+ "writing-brief.json"
17
+ ]
18
+ },
19
+ "output": {
20
+ "required": [
21
+ "verification report"
22
+ ],
23
+ "optional": []
24
+ },
25
+ "evidence_requirements": [
26
+ "Report only the deterministic result the command returns; never invent a model or provider call that did not occur."
27
+ ],
28
+ "permissions": [
29
+ "execute_commands",
30
+ "read_repository"
31
+ ],
32
+ "stop_conditions": [
33
+ "Stop when required input is missing, when the command cannot run without changing existing behavior, or when a claimed capability is unavailable."
34
+ ],
35
+ "tool_free_mode": {
36
+ "available": true,
37
+ "behavior": "Provide the decision, artifact template, and exact unavailable capability; never claim a tool action occurred.",
38
+ "unavailable_statuses": [
39
+ "NOT_AVAILABLE",
40
+ "NOT_CONFIGURED",
41
+ "NOT_RUN",
42
+ "STALE",
43
+ "ERROR"
44
+ ]
45
+ },
46
+ "handoff_to": [
47
+ "hyv-lifecycle"
48
+ ]
49
+ }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Hyv Verify"
3
+ short_description: "Verify a revised candidate against an original draft and portable profile."
4
+ default_prompt: "Use $hyv-verify to verify a revised candidate against an original draft and portable profile."
@@ -0,0 +1,24 @@
1
+ ---
2
+ name: hyv-verify-spec
3
+ description: Verify a candidate against the existing voice gates and a local CopySpec.
4
+ ---
5
+
6
+ # hyv-verify-spec
7
+
8
+ Verify a candidate against the existing voice gates and a local CopySpec. Immutable claims remain verbatim unless atoms are supplied; then each declared atom must remain. Prohibited claims fail closed.
9
+
10
+ ## Usage
11
+
12
+ ```text
13
+ hyv verify-spec original.md candidate.md profile.json copy-spec.json [writing-brief.json]
14
+ ```
15
+
16
+ ## Behavior
17
+
18
+ - Deterministic and local-first: this command never calls a provider and never sends drafts, samples, profiles, or telemetry to a service.
19
+ - Commands that write use an explicit output path. Confirm that path before running the command.
20
+ - This agent describes how to invoke the command and what it returns. It does not change command behavior or exit codes.
21
+
22
+ ## Handoff
23
+
24
+ Run `hyv verify-spec` directly to execute the operation. Follow-on agents: hyv-lifecycle.
@@ -0,0 +1,50 @@
1
+ {
2
+ "schema_version": "1.0.0",
3
+ "id": "hyv-verify-spec",
4
+ "title": "hyv-verify-spec",
5
+ "description": "Verify a candidate against the existing voice gates and a local CopySpec.",
6
+ "instruction_file": "SKILL.md",
7
+ "role": "CopySpec verifier",
8
+ "workflow_phase": "verify",
9
+ "input": {
10
+ "required": [
11
+ "original path",
12
+ "candidate path",
13
+ "profile path",
14
+ "copy-spec.json"
15
+ ],
16
+ "optional": [
17
+ "writing-brief.json"
18
+ ]
19
+ },
20
+ "output": {
21
+ "required": [
22
+ "verification report with CopySpec claim gate"
23
+ ],
24
+ "optional": []
25
+ },
26
+ "evidence_requirements": [
27
+ "Report only the deterministic result the command returns; never invent a model or provider call that did not occur."
28
+ ],
29
+ "permissions": [
30
+ "execute_commands",
31
+ "read_repository"
32
+ ],
33
+ "stop_conditions": [
34
+ "Stop when required input is missing, when the command cannot run without changing existing behavior, or when a claimed capability is unavailable."
35
+ ],
36
+ "tool_free_mode": {
37
+ "available": true,
38
+ "behavior": "Provide the decision, artifact template, and exact unavailable capability; never claim a tool action occurred.",
39
+ "unavailable_statuses": [
40
+ "NOT_AVAILABLE",
41
+ "NOT_CONFIGURED",
42
+ "NOT_RUN",
43
+ "STALE",
44
+ "ERROR"
45
+ ]
46
+ },
47
+ "handoff_to": [
48
+ "hyv-lifecycle"
49
+ ]
50
+ }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Hyv Verify Spec"
3
+ short_description: "Verify a candidate against the existing voice gates and a local CopySpec."
4
+ default_prompt: "Use $hyv-verify-spec to verify a candidate against the existing voice gates and a local copyspec."