How should a good prompt be structured, according to GitHub?
Why C is the answer
Start general, then get specific
State the broad goal first, then list specific requirements so Copilot understands both.
In detail
- Start with the general goal, then add specifics.
- Lead with the goal, then the constraints.
Use case
An illustrative scenario, not a real incident.
A developer starts with "build a CSV importer", then adds the columns, error handling and limits, so Copilot has the goal and the details.
See it in different ways
flowchart LR A["Start general"] --> B["Add specifics"] B --> C["Give examples"] C --> D["Break up big tasks"] D --> E["Review and refine"]
mindmap
root((Prompting))
Examples
Zero-shot
One-shot
Few-shot
Structure
General, then specific
Small tasks
Target
Tests first
Context
New thread when staleflowchart LR S0["State the goal"] --> S1["Add requirements"] --> S2["Add constraints"]
Key point: Start general, then get specific.
Why the other options are wrong
- A. Start with the model name, followed by the language that you want
- A model name is not how a prompt should start.
- B. Start with every detail, then remove some of them if the answer is poor
- Starting with every detail is not GitHub's advice.
- D. Start with an example only, and leave the goal for a later prompt
- The goal should not be left for later.

