mit einem Klick
artifacts
// Interactive interview to fill artifacts directory. Walks through domain, features, infrastructure, decisions, and unknowns. Use at project start or when adding features.
// Interactive interview to fill artifacts directory. Walks through domain, features, infrastructure, decisions, and unknowns. Use at project start or when adding features.
Validate contracts, validation specs, plan, and project map. Runs structural checks and LLM cross-review, then produces a verify report. Use after /generate or after manual edits to contracts, when the user says "verify", "check", or "validate structure".
Run all mandatory validation gates (from gates-policy.yaml) and produce a release decision. Use after /implement completes, when the user says "validate", "run gates", "check gates", or "release check".
Generate contracts, validation specs, and implementation plan from milestone artifacts. Use when the user has added requirements to milestone artifacts/ and wants to formalize them into contracts, or says "generate", "create contracts", or "formalize requirements".
Execute the implementation plan by assigning agents to tasks, generating code and tests from contracts. Agents work in parallel within stages. Use after /verify passes, when the user says "implement", "generate code", or "execute plan".
Interactive session to resolve open questions. Walks through each question, gives a recommendation, asks the user, and updates the file. Use after /generate when open questions exist.
| name | artifacts |
| description | Interactive interview to fill artifacts directory. Walks through domain, features, infrastructure, decisions, and unknowns. Use at project start or when adding features. |
| disable-model-invocation | true |
| allowed-tools | Read Write Edit Glob Grep |
| metadata | {"author":"hlv","version":"2.0"} |
You are conducting a structured interview to extract the user's knowledge about their project and write it into the artifacts directories. This is Phase 1 of the HLV workflow — the human dumps context, you help structure it.
project.yaml exists)project.yaml to confirm paths&&, ||, or ; — execute each command as a separate Bash tool call.❌ Wrong: git checkout main && git pull
✅ Right: Two separate Bash tool calls — first git checkout main, then git pull
HLV uses two artifact locations:
| Level | Path | What goes here | Lifespan |
|---|---|---|---|
| Global | human/artifacts/ | Domain context, tech stack, architectural decisions — things that outlive any single milestone | Project lifetime |
| Milestone | human/milestones/{id}/artifacts/ | Features, milestone-specific decisions, unknowns — things scoped to this milestone's work | Milestone lifetime |
human/artifacts/human/milestones/{id}/artifacts/milestones.yaml → get current.id (e.g., 003-new-payment-method)current in milestones.yaml → tell the user to run hlv milestone new <name> firsthuman/artifacts/ has any files (e.g., context.md exists)human/milestones/{id}/artifacts/ has any fileshuman/artifacts/When global artifacts are empty but milestone artifacts already contain files (specs, requirements, design docs), extract global context from them automatically instead of interviewing from scratch.
human/milestones/{id}/artifacts/human/artifacts/context.mdhuman/artifacts/stack.md + human/artifacts/constraints.mdhuman/artifacts/<decision>.mdI found global context in your milestone artifacts. Here's what I extracted:
human/artifacts/context.md — <summary>
human/artifacts/stack.md — <summary>
human/artifacts/constraints.md — <summary>
Does this look correct? Anything to add or fix?
If the artifacts directories already contain files, switch to incremental mode automatically:
human/artifacts/ and human/milestones/{id}/artifacts/)The interview has 5 blocks. Blocks 1, 3, and 4-global write to human/artifacts/. Blocks 2, 4-milestone, and 5 write to human/milestones/{id}/artifacts/. Complete them sequentially. Each block: ask → clarify → write → confirm → next.
human/artifacts/context.mdGoal: Understand what the system does, who uses it, and the business context.
Skip condition: If human/artifacts/context.md already exists, show summary and ask if anything changed. If nothing changed — skip.
Questions to ask (adapt based on answers, don't ask robotically):
Clarification triggers:
Output: Write human/artifacts/context.md
# Project Context
## What It Does
<user's description in their words>
## Users
<who uses this and how>
## Business Context
<why this exists, what problem it solves>
## Existing Systems
<what it replaces/integrates with, if any>
## Scale
<rough numbers if known>
## Open Questions
- <anything the user wasn't sure about>
After writing, show the file content and ask: "Does this capture it correctly? Anything to add or fix?"
human/milestones/{id}/artifacts/Goal: Discover every operation/action the system performs in this milestone and walk through user flows.
Questions to ask:
Clarification triggers:
Output: One file per feature in human/milestones/{id}/artifacts/<feature-name>.md
# <Feature Name>
## What It Does
<description>
## Trigger
<what starts this — user action, API, event, schedule>
## Input
<what data is needed>
## Flow
1. <step>
2. <step>
3. <step>
## Expected Result
<what the user/caller gets back>
## Error Cases
- <error>: <what happens>
- <error>: <what happens>
## Business Rules
- <rule>
- <rule>
## Open Questions
- <anything unclear>
After each feature file, show it and ask for corrections. After all features: "Are there any operations I missed? Anything else the system needs to do?"
human/artifacts/stack.md + human/artifacts/constraints.mdGoal: Understand the technical environment — databases, APIs, latency requirements, existing stack.
Skip condition: If human/artifacts/stack.md already exists, show summary and ask if anything changed for this milestone. If nothing changed — skip.
Before asking language-policy questions, read strict languages reference. Use it as a comparison guide, not as a rigid ranking. If the stack discussion enters Java/Kotlin/C# or JVM/.NET framework choice, also read JVM and .NET stack fit reference.
Questions to ask:
Clarification triggers:
Output: Two files:
human/artifacts/stack.md:
# Tech Stack
## Language & Framework
<what's being used>
## Language Selection Policy
<preferred languages, where they apply, and which exceptions are acceptable>
## Database
<type, version, configuration details>
## External Services
- <service>: <purpose, protocol, constraints>
## Infrastructure
<where it runs, deployment details>
human/artifacts/constraints.md:
# Technical Constraints
## Performance
- <latency targets>
- <throughput requirements>
- <availability SLA>
## Hard Constraints
- <organizational/team rules>
## External Limits
- <DB limits, API rate limits, etc.>
## Open Questions
- <unknowns>
Show both files. Ask: "Anything missing about the infrastructure or constraints?"
Goal: Capture decisions already made — what was chosen, why, and what was rejected.
Two types of decisions:
human/artifacts/<decision-name>.mdhuman/milestones/{id}/artifacts/<decision-name>.mdAsk the user which type each decision is, or infer from context.
Questions to ask:
Clarification triggers:
Output: One file per decision in the appropriate directory
# <Decision Title>
## Context
<what problem or question led to this decision>
## Decision
<what was chosen>
## Reasoning
<why — in the user's words>
## Alternatives Considered
- <alternative>: <why rejected>
## Status
<decided / tentative / revisit>
## Open Questions
- <if any>
If no decisions exist yet, skip file creation and tell the user: "No decisions to record yet — that's fine. They'll come up naturally during /generate."
human/milestones/{id}/artifacts/Goal: Surface what the user doesn't know or is worried about.
Questions to ask:
Output: Add "Open Questions" sections to the relevant existing files. If a question relates to a specific feature — add it to that feature's file. If it relates to global context — add it to the corresponding global file.
For significant unknowns that don't fit elsewhere, create human/milestones/{id}/artifacts/unknowns.md:
# Unknowns & Risks
## Technical Unknowns
- <what we don't know>
## Risks
- <what could go wrong>
## Dependencies
- <external blockers>
## Deferred Decisions
- <what we're putting off>
Print a summary:
=== /artifacts complete (milestone: {id}) ===
Global artifacts in human/artifacts/:
context.md — domain, users, business context
stack.md — tech stack
constraints.md — performance and hard constraints
<decision1>.md — <short description>
Milestone artifacts in human/milestones/{id}/artifacts/:
<feature1>.md — <short description>
<feature2>.md — <short description>
<decision2>.md — <short description>
unknowns.md — open questions and risks
Open Questions: <N> total
- <question 1>
- <question 2>
Next step: run /generate to create formal contracts from these artifacts.
After the skill completes:
hlv check to validate the project structure. If there are errors — fix them before finishing./clear to free up context window before the next skill.