goga-define-scope
SkillAI & modelsTransform the established problem, goals, requirements, and constraints into a clear statement of:
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the goga-define-scope skill
About this capability
Goga is an AI engineering platform for building software with AI agents. Combine engineering knowledge, AI tools, and pipelines into repeatable development processes — from specification to implementation, review, and delivery.
What this skill tells your AI
The instructions your AI receives, as published by qarium/goga in goga/assets/skills/goga-define-scope/SKILL.md and read by ahel’s review.
Purpose
Define the boundaries of the product change.
Transform the established problem, goals, requirements, and constraints into a clear statement of:
- what is included in the current solution;
- what is explicitly excluded;
- what should not be solved as part of this change.
The result must protect the product work from scope creep while ensuring that everything necessary to solve the identified problem remains inside the scope.
Contract
consume:
- product
- problem
- goals
- requirements
- constraints
produce:
- scope
Core Principle
Scope is a boundary, not a feature list.
The central question is:
What must be part of this product change to solve the problem, and what deliberately remains outside it?
Scope must be derived from the problem and goals.
Do not define scope based on what happens to be technically convenient or interesting.
Product Interview
Scope boundaries are product decisions.
Do not infer what belongs in or out of scope solely from implementation convenience.
Interview the user when the boundary between the current change and adjacent functionality is materially ambiguous.
Clarify when necessary:
- which user scenarios are part of the current change;
- which related scenarios should remain unchanged;
- whether an adjacent workflow should be modified;
- what is intentionally deferred;
- what the minimum complete solution is.
Do not automatically include related functionality merely because it would be convenient to change it at the same time.
Process
1. Define the required scope
Identify everything that is necessary to solve the problem and achieve the established goals.
Consider:
- essential user scenarios;
- required product behaviour;
- required states;
- necessary user roles;
- necessary supporting behaviour;
- constraints that require additional product behaviour.
If removing something would prevent the product from solving the problem, it belongs in scope.
2. Define the excluded scope
Identify functionality that may appear related but is not necessary for the current problem.
Common examples:
- future enhancements;
- additional user segments;
- unrelated workflow improvements;
- advanced customization;
- reporting or analytics not required by the goals;
- integrations that are not necessary for the current solution;
- optimizations that do not affect the defined outcome.
Explicitly exclude these when they are likely to become sources of scope creep.
3. Protect the core problem
Check that scope remains centered on the original problem.
Ask:
- Does everything in scope contribute to solving the problem?
- Is any functionality included simply because it is convenient?
- Are we solving adjacent problems that were not identified?
- Are we adding capabilities because they might be useful later?
- Would removing this item prevent achievement of the goals?
If an item does not contribute materially to the current goals, challenge its inclusion.
4. Check completeness
Scope must contain everything necessary to deliver the agreed user experience.
Compare:
Problem
↓
Goals
↓
Requirements
↓
Scope
Verify that the scope does not accidentally exclude a requirement that is necessary for the solution.
5. Check constraints
Ensure that the scope can be implemented while respecting established constraints.
A scope decision must not silently invalidate a constraint.
If the goals cannot be achieved within the current constraints and scope, report a conflict.
6. Handle adjacent concerns
When the problem touches an adjacent product area, determine whether that area is actually required for the current solution.
Do not automatically expand the scope because another part of the product is involved.
Ask:
Is changing this area necessary to solve the current problem, or merely a potentially better future improvement?
Only the former belongs in scope.
Scope Structure
Produce two explicit boundaries:
scope:
in:
- ...
out:
- ...
in
Items that are necessary for the current product change.
out
Items that are intentionally excluded from the current product change.
Do not use out as a backlog of future features. Include an item only when its exclusion is relevant to preventing ambiguity or scope creep.
Scope Quality
A good scope is:
Focused
Centered on the identified problem.
Complete
Contains everything necessary to achieve the goals.
Explicit
Leaves important boundaries unambiguous.
Defensible
Every included item can be justified by the product context.
Limited
Does not expand into unrelated improvements.
Challenge the Scope
Challenge both inclusion and exclusion.
If both inclusion and exclusion are reasonable interpretations and they would materially change the product outcome, ask the user to choose.
Do not resolve scope boundaries through assumption.
Challenge in
Ask:
- Is this necessary?
- Which goal or requirement requires it?
- Is it solving the current problem?
- Could it be removed without affecting the intended outcome?
Challenge out
Ask:
- Is this actually unnecessary?
- Does excluding it break an important user scenario?
- Does a requirement implicitly depend on it?
- Are we excluding it only because it is inconvenient?
Do not use scope to hide unresolved product decisions.
Conflict Detection
Report a conflict when:
- an in-scope item contradicts a constraint;
- an out-of-scope item is required to achieve a goal;
- the scope excludes a necessary requirement;
- the scope includes functionality unrelated to the problem and its inclusion creates a conflicting goal or requirement;
- the requested solution cannot achieve the goals within the defined scope.
Example:
conflict: |
The current scope excludes the administrative workflow,
but the requirements require administrators to configure
the behaviour before users can use the feature.
reason: |
The excluded workflow is necessary for the defined product
behaviour to function.
The orchestrator will invoke goga-define-resolve.
Do not resolve cross-context conflicts yourself.
Missing Information
Ask the user only when a scope decision materially affects the product outcome and cannot be derived from the existing context.
Valid questions may concern:
- which users are included;
- which scenarios are required;
- whether an adjacent workflow is part of the current change;
- whether a particular capability is necessary for the core outcome.
Do not ask about technical implementation.
Do Not Define
This skill must not define:
- technical implementation;
- architecture;
- project tasks;
- development estimates;
- release planning;
- technology choices;
- future product roadmap.
Scope is about product boundaries, not engineering planning.
Output
Produce:
scope:
in:
- ...
out:
- ...
The result must clearly establish the boundaries of the current product change.
The final scope must be broad enough to solve the problem completely and narrow enough to prevent unrelated work from entering the PRD.
Signals
- GitHub stars
- 29
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
goga-define-scope- Source
- github.com/qarium/goga