Concept Exploration
Use this skill when the user has a half-formed idea and needs it cleaned up enough to enter the normal research and planning workflow. This skill is intentionally pre-ICP: it clarifies the concept, problem hypothesis, beneficiary hypothesis, value wedge, constraints, non-goals, and unknowns, but does not select an ICP, analyze competitors, define UX/UI, choose architecture, or write implementation specs.
Process
Resolve context
- Read
.agents/project.json if it exists.
- Read README, CLAUDE.md, AGENTS.md, existing
research/, specs/, and task docs when present.
- Determine whether the current directory is already a bootstrapped project. Treat it as bootstrapped when it has meaningful
README.md plus AGENTS.md or CLAUDE.md; treat it as unbootstrapped when those are missing, placeholder-only, or the user is describing an idea outside any project repo.
- If
$ARGUMENTS contains a rough idea, use it as the starting draft.
- If
$ARGUMENTS names an app that matches research/{app}/, use app-scoped output paths. Otherwise use top-level research/.
- Determine the concept identity and a normalized concept slug as soon as either is known from
$ARGUMENTS, repo context, or the interview. Normalize by lowercasing, removing URL suffix noise, replacing non-alphanumeric runs with -, trimming leading/trailing -, and dropping only project-wide brand prefixes when the remaining word is the actual scoped concept (for example, poketo.work -> work; Poketo Core -> poketo-core).
- If existing research or the prompt suggests multiple related concepts may exist, prefer slugged output paths over generic filenames. Reserve generic
concept-brief.md only for a single unambiguous project-level concept.
- If no rough idea is available from arguments or repo context, ask the user for the idea in plain language.
- Read
research/.progress.yaml when present. Treat active_path as the current product/app/ICP focus and product_paths[] as parked or promoted product-path state, not git branch state.
- When the prompt, repo context, interview, or pivot history surfaces multiple related concepts, apps, product lines, or future pivots, update or propose updates to
research/.progress.yaml with product-path entries instead of merging them into one generic concept. Use fields: id, label, source_skill, scope_path, status, reason, evidence_refs, revisit_trigger, next_skill, and last_touched.
- Keep the central concept as
active_path when it is the current focus. Record related or future concepts as status: deferred or status: revisit_candidate with a concrete revisit trigger and a likely next skill such as /icp <path/audience>.
Keep the boundary clear
- Do not run ICP, competitive analysis, journey mapping, UX variation, UI interview, roadmap, or implementation planning inside this skill.
- Do not validate the market with broad web research. Use light repo/context inspection only; downstream research skills own evidence gathering.
- Treat every user claim as a hypothesis unless supported by existing project files.
Surface a Concept Assumptions Manifest
- Before deep questioning, present what you think the concept is.
- Tag assumptions as
[from prompt], [from repo], [from research], or [inferred].
- Cover:
- concept summary
- problem hypothesis
- target beneficiary or user hypothesis
- product/category guess
- value wedge
- constraints
- non-goals
- riskiest unknowns
- Ask the user to confirm, correct, or flag assumptions before writing.
Interview until concept-ready
- Ask 1 to 3 focused questions per turn.
- Resolve only concept-level ambiguity:
- what problem exists
- who might care
- what outcome changes for them
- what makes the idea different enough to investigate
- what must stay out of scope
- what constraints are real now
- When unsure, recommend a practical default and clearly mark it as an assumption.
Coverage checkpoint
- Present the final concept summary, unknowns, and readiness for ICP.
- Restate the resolved concept identity, slug, and exact output paths before writing.
- If the conversation pivoted from the initial concept to a different central concept, write the pivoted concept to its own slugged brief and preserve the initial concept as a related or future concept in the brief and interview log. Do not merge both concepts into one generic project-level brief.
- Ask whether any core premise, constraint, or non-goal is wrong before writing.
Output
Write:
- For one unambiguous project-level concept only:
research/concept-brief.md and research/concept-brief-interview.md.
- When a concept identity is known, multiple concepts exist or may exist, or a pivot occurs:
research/concept-brief-{slug}.md and research/concept-brief-{slug}-interview.md.
- If
$ARGUMENTS names an app that matches research/{app}/, use the same filenames under research/{app}/: research/{app}/concept-brief-{slug}.md and research/{app}/concept-brief-{slug}-interview.md, or unsuffixed app-scoped files only when that app has one unambiguous concept.
research/.progress.yaml — create or update only when multiple concepts, product paths, product lines, app scopes, or pivots are present. Use product_paths terminology instead of branch terminology.
The concept brief must include:
## Summary
## Problem Hypothesis
## Beneficiary Hypothesis
## Product Category Guess
## Value Wedge
## Constraints
## Non-Goals
## Assumptions And Unknowns
## ICP Readiness
## Next Steps
The ## ICP Readiness section must state whether the concept is ready for /icp, what inputs /icp should use, and which assumptions should be tested first.
The ## Next Steps section must recommend exactly one primary command:
- If the concept appears to be a business app or user-facing product and the business discovery lane is not enabled:
/pack install business-discovery — this installs the research skills (ICP, competitive analysis, value prop, positioning, lean canvas) needed before any repo bootstrapping or development.
- If
business-discovery or the compatibility business-app alias is enabled: /icp
- If the concept already has ICP/market evidence but needs journey, onboarding, conversion, or retention planning:
/pack install customer-lifecycle
- If project type is unclear:
/pack recommend
Include 1-3 other options only when they are materially useful.
Alignment Page
Follow the shared Alignment Page convention in CLAUDE.md. Output: alignment/concept-exploration-{topic}.html.
Constraints
- Keep the skill short and pre-research.
- Do not write specs, UX variants, UI specs, roadmap phases, or implementation tasks.
- Do not recommend
/scaffold unless the user explicitly asks to create a package/app shell before research; normal product flow scaffolds after research, prototype consolidation, spec, roadmap, and phase planning identify the first implementation target. /scaffold requires the monorepo pack (/pack install monorepo).
- Do not update
tasks/todo.md.
- New files do not need archive snapshots. Before replacing an existing concept brief, including slugged briefs, archive it to
docs/history/archive/YYYY-MM-DD/HHMMSS/<original-relative-path>.
Default Shipping Contract
Follow the shared shipping contract convention in CLAUDE.md.
1---2name: concept-exploration-43description: Shape a rough product or project idea into an actionable concept brief before ICP, market research, specifications, UX, UI, or implementation planning4---5
6# Concept Exploration
7
8Use this skill when the user has a half-formed idea and needs it cleaned up enough to enter the normal research and planning workflow. This skill is intentionally pre-ICP: it clarifies the concept, problem hypothesis, beneficiary hypothesis, value wedge, constraints, non-goals, and unknowns, but does not select an ICP, analyze competitors, define UX/UI, choose architecture, or write implementation specs.
9
10## Process
11
121. **Resolve context**
13 - Read `.agents/project.json` if it exists.
14 - Read README, CLAUDE.md, AGENTS.md, existing `research/`, `specs/`, and task docs when present.
15 - Determine whether the current directory is already a bootstrapped project. Treat it as bootstrapped when it has meaningful `README.md` plus `AGENTS.md` or `CLAUDE.md`; treat it as unbootstrapped when those are missing, placeholder-only, or the user is describing an idea outside any project repo.
16 - If `$ARGUMENTS` contains a rough idea, use it as the starting draft.
17 - If `$ARGUMENTS` names an app that matches `research/{app}/`, use app-scoped output paths. Otherwise use top-level `research/`.
18 - Determine the concept identity and a normalized concept slug as soon as either is known from `$ARGUMENTS`, repo context, or the interview. Normalize by lowercasing, removing URL suffix noise, replacing non-alphanumeric runs with `-`, trimming leading/trailing `-`, and dropping only project-wide brand prefixes when the remaining word is the actual scoped concept (for example, `poketo.work` -> `work`; `Poketo Core` -> `poketo-core`).
19 - If existing research or the prompt suggests multiple related concepts may exist, prefer slugged output paths over generic filenames. Reserve generic `concept-brief.md` only for a single unambiguous project-level concept.
20 - If no rough idea is available from arguments or repo context, ask the user for the idea in plain language.
21 - Read `research/.progress.yaml` when present. Treat `active_path` as the current product/app/ICP focus and `product_paths[]` as parked or promoted product-path state, not git branch state.
22 - When the prompt, repo context, interview, or pivot history surfaces multiple related concepts, apps, product lines, or future pivots, update or propose updates to `research/.progress.yaml` with product-path entries instead of merging them into one generic concept. Use fields: `id`, `label`, `source_skill`, `scope_path`, `status`, `reason`, `evidence_refs`, `revisit_trigger`, `next_skill`, and `last_touched`.
23 - Keep the central concept as `active_path` when it is the current focus. Record related or future concepts as `status: deferred` or `status: revisit_candidate` with a concrete revisit trigger and a likely next skill such as `/icp <path/audience>`.
24
252. **Keep the boundary clear**
26 - Do not run ICP, competitive analysis, journey mapping, UX variation, UI interview, roadmap, or implementation planning inside this skill.
27 - Do not validate the market with broad web research. Use light repo/context inspection only; downstream research skills own evidence gathering.
28 - Treat every user claim as a hypothesis unless supported by existing project files.
29
303. **Surface a Concept Assumptions Manifest**
31 - Before deep questioning, present what you think the concept is.
32 - Tag assumptions as `[from prompt]`, `[from repo]`, `[from research]`, or `[inferred]`.
33 - Cover:
34 - concept summary
35 - problem hypothesis
36 - target beneficiary or user hypothesis
37 - product/category guess
38 - value wedge
39 - constraints
40 - non-goals
41 - riskiest unknowns
42 - Ask the user to confirm, correct, or flag assumptions before writing.
43
444. **Interview until concept-ready**
45 - Ask 1 to 3 focused questions per turn.
46 - Resolve only concept-level ambiguity:
47 - what problem exists
48 - who might care
49 - what outcome changes for them
50 - what makes the idea different enough to investigate
51 - what must stay out of scope
52 - what constraints are real now
53 - When unsure, recommend a practical default and clearly mark it as an assumption.
54
555. **Coverage checkpoint**
56 - Present the final concept summary, unknowns, and readiness for ICP.
57 - Restate the resolved concept identity, slug, and exact output paths before writing.
58 - If the conversation pivoted from the initial concept to a different central concept, write the pivoted concept to its own slugged brief and preserve the initial concept as a related or future concept in the brief and interview log. Do not merge both concepts into one generic project-level brief.
59 - Ask whether any core premise, constraint, or non-goal is wrong before writing.
60
61## Output
62
63Write:
64
65- For one unambiguous project-level concept only: `research/concept-brief.md` and `research/concept-brief-interview.md`.
66- When a concept identity is known, multiple concepts exist or may exist, or a pivot occurs: `research/concept-brief-{slug}.md` and `research/concept-brief-{slug}-interview.md`.
67- If `$ARGUMENTS` names an app that matches `research/{app}/`, use the same filenames under `research/{app}/`: `research/{app}/concept-brief-{slug}.md` and `research/{app}/concept-brief-{slug}-interview.md`, or unsuffixed app-scoped files only when that app has one unambiguous concept.
68- `research/.progress.yaml` — create or update only when multiple concepts, product paths, product lines, app scopes, or pivots are present. Use `product_paths` terminology instead of branch terminology.
69
70The concept brief must include:
71
72- `## Summary`
73- `## Problem Hypothesis`
74- `## Beneficiary Hypothesis`
75- `## Product Category Guess`
76- `## Value Wedge`
77- `## Constraints`
78- `## Non-Goals`
79- `## Assumptions And Unknowns`
80- `## ICP Readiness`
81- `## Next Steps`
82
83The `## ICP Readiness` section must state whether the concept is ready for `/icp`, what inputs `/icp` should use, and which assumptions should be tested first.
84
85The `## Next Steps` section must recommend exactly one primary command:
86
87- If the concept appears to be a business app or user-facing product and the business discovery lane is not enabled: `/pack install business-discovery` — this installs the research skills (ICP, competitive analysis, value prop, positioning, lean canvas) needed before any repo bootstrapping or development.
88- If `business-discovery` or the compatibility `business-app` alias is enabled: `/icp`
89- If the concept already has ICP/market evidence but needs journey, onboarding, conversion, or retention planning: `/pack install customer-lifecycle`
90- If project type is unclear: `/pack recommend`
91
92Include 1-3 other options only when they are materially useful.
93
94### Alignment Page
95
96Follow the shared Alignment Page convention in CLAUDE.md. Output: `alignment/concept-exploration-{topic}.html`.
97
98## Constraints
99
100- Keep the skill short and pre-research.
101- Do not write specs, UX variants, UI specs, roadmap phases, or implementation tasks.
102- Do not recommend `/scaffold` unless the user explicitly asks to create a package/app shell before research; normal product flow scaffolds after research, prototype consolidation, spec, roadmap, and phase planning identify the first implementation target. `/scaffold` requires the monorepo pack (`/pack install monorepo`).
103- Do not update `tasks/todo.md`.
104- New files do not need archive snapshots. Before replacing an existing concept brief, including slugged briefs, archive it to `docs/history/archive/YYYY-MM-DD/HHMMSS/<original-relative-path>`.
105
106## Default Shipping Contract
107
108Follow the shared shipping contract convention in CLAUDE.md.