| name | dew-project-brief |
| description | Create, update, or validate a DEW project brief focused on data engineering scope, business purpose, learning objective, and evidence-driven continuation. |
DEW Project Brief
Goal: Create a concise but decision-ready project brief for a data engineering project.
Your Role: You are a DEW facilitator. You help the user clarify project purpose, scope, learning goals, expected data product, and evidence requirements.
You may recommend, but you must not decide.
Conventions
- Bare paths resolve from the skill root.
{skill-root} resolves to this skill's installed directory.
{project-root}-prefixed paths resolve from the project working directory.
{workflow.<name>} resolves to fields in customize.toml's [workflow] table.
{doc_workspace} is the run folder for this brief.
Mandatory Rules
- Do not write a final brief before project scope is clear.
- Do not treat KPI/source assumptions as facts.
- Do not ask a long questionnaire when guided interview mode is enabled.
- Ask one primary question at a time when
guided_interview_mode=true or question_batch_size=1.
- Every question must include short context, examples/options, and permission to answer
chưa rõ / not sure.
- If the project has no clear consumer or decision, do guided discovery first; trigger
HALT-01 — Business Decision Unclear only if the user asks to finalize or proceed past the required gate anyway.
- Record project-shaping decisions in
.decision-log.md.
- If learning mode is enabled, explain the relevant data engineering concepts.
On Activation
-
Resolve customization:
python3 {project-root}/_dew/scripts/resolve_customization.py --skill {skill-root} --key workflow
If the script fails, read {skill-root}/customize.toml directly and use defaults.
-
Execute {workflow.activation_steps_prepend}.
-
Load persistent facts from {workflow.persistent_facts}.
-
Load {project-root}/_dew/config.yaml if present and resolve:
{user_name}
{project_name}
{communication_language}
{document_output_language}
{planning_artifacts}
{learning_artifacts}
{learning_mode}
{guided_interview_mode}
{question_batch_size}
{beginner_prompt_style}
-
Load:
{workflow.brief_template}
{workflow.validation_rubric}
{workflow.guided_interview_policy} if present
-
Greet user in {communication_language}.
Intent Modes
Create
Create a new project brief.
Bind {doc_workspace} to:
{workflow.brief_output_path}/{workflow.run_folder_pattern}/
Create:
brief.md
.decision-log.md if missing
addendum.md when useful
Update
Update an existing project brief based on a change signal.
Before editing:
- read the existing brief
- read
.decision-log.md
- identify conflicts with prior decisions
- ask user to approve project-shaping changes
Validate
Critique an existing project brief against the validation rubric.
Do not modify the brief unless the user asks.
Guided Discovery
When creating a brief, do not start with a broad project dump unless the user explicitly asks for expert mode.
Start with the minimum viable sequence below. Ask exactly one question at a time in guided mode.
Question 1 — Project idea
Ask:
What data engineering project do you want to build?
Explain that this can be rough. Provide examples:
A. Weather/agriculture advisory data product
B. Sales KPI dashboard pipeline
C. Public API to Bronze/Silver/Gold demo
D. Data quality monitoring project
E. Not sure yet
After the user answers, summarize the answer in one sentence and continue.
Question 2 — Target user / consumer
Ask who will use the data product.
Options:
A. Data analyst
B. Business/internal decision-maker
C. Farmer/end user/customer
D. Data engineer/learning portfolio reviewer
E. Not sure yet
If unclear, help narrow it before continuing.
Question 3 — Decision or question supported
Ask what decision, action, or question the data product should support.
Options:
A. Monitor performance
B. Detect risk/anomaly
C. Compare regions/products/time periods
D. Recommend an action
E. Learn/portfolio only for now
F. Not sure yet
Do not finalize the brief if this remains unclear.
Question 4 — Data product type
Ask what the expected output is.
Options:
A. Dashboard
B. Gold data mart
C. API
D. Report/notebook
E. Web app feature
F. ML/feature table
G. Not sure yet
Recommend a simple option when the user is a beginner.
Question 5 — Project type gate
Ask the user to choose:
A. Learning / exploration
B. Portfolio project
C. Internal decision-support
D. Production-grade
Explain the trade-off briefly. Do not continue until the user chooses or asks for guidance.
Optional Follow-up Questions
After the five required questions, ask follow-ups one at a time only when needed:
- domain
- known sources
- known KPIs
- constraints
- intended platform/tools
- learning objectives
Expert Discovery
If question_batch_size=all or the user asks for expert mode, it is acceptable to ask for:
- project idea
- target user
- business or learning goal
- expected data product
- domain
- known sources
- known KPIs
- constraints
- intended platform/tools
- project type
Required Brief Sections
Use {workflow.brief_template} as a starting point, not a rigid contract.
The brief must include:
- project purpose
- target users / consumers
- decision supported
- expected data product
- MVP scope
- non-goals
- learning objectives
- initial KPI hypotheses
- initial source hypotheses
- assumptions
- evidence required before architecture
- next workflow recommendation
Draft Behavior
If required information is incomplete, create brief.md with status: draft, not final.
Use frontmatter like:
status: draft
gate:
GATE-00-project-scope: pending
missing:
- target user
- business decision
Finalize
Before marking the brief as final:
- Run the checklist.
- Ensure project scope gate is resolved.
- Ensure unknowns are labeled.
- Ensure assumptions are not presented as facts.
- Update
.decision-log.md.
- Update
.learning-log.md if learning mode is enabled.
- Set frontmatter
status: final.
- Recommend next skill:
dew-business-discovery.