discover-product

discover-product is a skill for Claude Code from kohj1018/agentic-dev-harness. It costs 28 tokens per session (3,004 once invoked), scanned A, original, MIT.

A structured product-discovery process that examines users, problems, desired outcomes, situations, a first release, and assumptions, then writes DISCOVERY.md.

In plain words
What is it for?
Use it to explore target users, identify their problems, define jobs to be done, describe usage scenarios, shape an initial release, and record open assumptions.
Why use it?
It turns an early product idea into documented decisions and assumptions before implementation.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter. Also seen: reads .claude/ paths; mentions subagents; names the AskUserQuestion tool.

Good fit Use it to explore target users, identify their problems, define jobs to be done, describe usage scenarios, shape an initial release, and record open assumptions.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/kohj1018/agentic-dev-harness/discover-product
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add kohj1018/agentic-dev-harness --skill discover-product
Clone the repo
git clone --depth 1 https://github.com/kohj1018/agentic-dev-harness

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for discover-product

README.md
[![agentmods](https://agentmods.dev/badge/skills/kohj1018/agentic-dev-harness/discover-product/github.svg)](https://agentmods.dev/skills/kohj1018/agentic-dev-harness/discover-product)
Your own site
<a href="https://agentmods.dev/skills/kohj1018/agentic-dev-harness/discover-product"><img src="https://agentmods.dev/badge/skills/kohj1018/agentic-dev-harness/discover-product/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for discover-product

Your own site · 80×15
<a href="https://agentmods.dev/skills/kohj1018/agentic-dev-harness/discover-product"><img src="https://agentmods.dev/badge/skills/kohj1018/agentic-dev-harness/discover-product.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 28 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,004 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00028 $0.03004
Opus 5 $0.00014 $0.01502
Sonnet 5 $0.00006 $0.00601
Haiku 4.5 $0.00003 $0.00300

Measured 9d ago against content hash 7ef458d2e6f0, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-09, from the pricing page.

Security

Grade A, and why

discover-product scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/discover-product/SKILL.md · 101 lines

How it starts

The opening of the file, as written. The whole thing — 101 lines — stays where its author put it; the contents beside it link to each section on GitHub.

이 skill은 메인 세션이 R0R4 라운드를 직접 운전하는 절차서다. 무거운 추론(R0의 페르소나 후보, R1의 pain inventory)은 architect 단발 sub-call로 위임한다. R0R3 산출물은 메인 컨텍스트에 누적시키지 않고 docs/10-charter/DISCOVERY.md에 누적 적재한다.

트레이드오프 명시 — 이 skill은 의도적으로 fork 격리를 풀고 메인 세션이 사용자 인터랙션을 직접 운전한다. R0~R3 산출물은 DISCOVERY.md에 적재해 메인 컨텍스트 부담을 최소화하지만, 라운드 요약 일부는 메인에 남는다. 종료 후 사용자가 /clear 또는 새 세션으로 컨텍스트를 정리할 것을 권장한다.

Codex: 본 skill은 wrapper 미보유(자연어 호출) — Codex에서는 "Follow .claude/skills/discover-product/SKILL.md"로 호출한다(목록 SSOT = README, ADR-010#amend-3·#amend-4).

입력:

  • $ARGUMENTS에 자연어 설명이 들어온다.
  • --fast 플래그가 있으면 R0의 페르소나 후보 제시·선택을 건너뛰고 R3(가정 정리)도 생략한 채 R1+R2+R4만 도는 단축 흐름. 단, R1은 페르소나 입력이 필요하므로 다음 절차로 페르소나를 확보한다:
    1. $ARGUMENTS에 페르소나가 한 줄이라도 명시되어 있으면 그것을 그대로 사용한다(예: --fast 회고 SaaS — 페르소나: 직장인 개인 사용자).
    2. 명시되지 않았으면 architect 단발 sub-call로 페르소나 후보 1개를 자동 선정하고, 해당 페르소나를 가정으로 표시해 R1을 진행한다(출력에 "이 페르소나는 fast 모드의 R0 사용자 확인 단계를 생략한 자동 선정 결과이며, 가정으로 취급한다"를 명시).
    3. 사용자가 마음에 들지 않으면 /discover-product (fast 없이)로 재실행하면 된다는 안내를 출력에 포함.

사용자 응답 수단:

  • 라운드별 응답은 자연어로만 받는다(AskUserQuestion공식 문서의 Limitations 섹션 기준 sub-agent에서 사용 불가).
  • 매 라운드 끝에 skip / good / refine: ...로 응답할 수 있다.

라운드 출력 포맷 (ADR-046 출력 스타일 — 사용자-facing 표면만 압축, 내부 분석·DISCOVERY.md 적재 내용은 불변): 각 라운드는 다음 고정 포맷으로 압축해 출력한다.

이번 결정: <1~2줄>
확인 필요: <있으면 ≤3개, 없으면 생략>
답변: skip / good / refine: …

단, 사용자가 선택해야 하는 옵션(R0 페르소나 후보·R1 pain 목록 등)은 선택 가능하도록 보존한다 — 압축은 framing·서술에만 적용하고 선택지 자체는 빠뜨리지 않는다(ADR-046#d3). architect 단발 sub-call의 과정만 대화에 풀어쓰지 않는다.

라운드 구성:

R0 — 문제 한 줄 + 페르소나 확인

  • 입력 한 줄을 그대로 되돌려 "이 한 문장이 핵심 맞나" 확인.
  • 동시에 페르소나 후보 2~3개를 한 단락씩 제시(직무·맥락·일과·압력 요소). architect 단발 sub-call로 위임해 후보 생성.
  • 사용자가 1개를 고르거나 합쳐달라고 한다.

R1 — 핵심 pain + JTBD + 시나리오

  • 선택된 페르소나의 pain 6~10개를 brainstorm 후 빈도×고통으로 정렬. architect 단발 sub-call.
  • 상위 1~3개를 사용자가 고른다.
  • 가장 큰 pain의 JTBD(Jobs To Be Done) 한 줄, happy path/alternate path/fail path를 5~7단계로 같이 적는다.
  • 사용자가 끊을 지점·수용 가능 fail을 정한다.

R2 — MVP 범위 vs 비범위 / 성공 기준

  • R1 시나리오를 충족시키는 최소 기능 묶음과 의도적으로 미루는 것을 분리.
  • 측정 가능한 성공 기준 1~3개.

R3 — 핵심 가정 + 미결정 등재

  • R0~R2에서 사용자가 추측으로 답한 모든 항목을 가정으로 표시.
  • 가장 위험한 가정 1~3개에 검증 방법 1줄 + 위험도 판정(ADR-035#amend-3 / ADR-060 D5): 실패 시 다음 마일스톤 목표가 무효가 되는 핵심 가설인가, 실험 대상인가, 저위험인가. 실험·저위험이면 검증 방법·판정일·중단 기준 3필드를 채워 원장에 risk-accepted 후보로 올린다.
  • 미결정은 DISCOVERY.md에 남기지 않는다docs/10-charter/DECISION_REGISTER.md에 등재한다(아래 ## 결정 마감). DISCOVERY ## 11은 폐지됐다(ADR-060 D1).

R4 — DISCOVERY.md 정리(저장 단계)

  • 위 결과를 docs/10-charter/_templates/DISCOVERY_TEMPLATE.md 양식에 맞춰 docs/10-charter/DISCOVERY.md에 저장. ## 11은 폐지 섹션이므로 만들지 않는다.
  • 이 라운드에서 발생한 미결정·가설을 docs/10-charter/DECISION_REGISTER.md에 등재한다(아래 ## 결정 마감).
  • 이 skill은 charter/architecture를 만들지 않는다 — /bootstrap-project가 이어 수행한다(자동 호출 아님).

단계별 출구 보장: 어느 라운드에서 멈춰도 그때까지의 산출물이 DISCOVERY.md에 들어가 /bootstrap-project의 입력으로 의미가 있다.

다국어: 입력 언어를 따른다. 한국어 입력이면 산출물도 한국어, 영문 입력이면 영문.

마지막 출력:

  • DISCOVERY.md 경로
  • 핵심 가정 요약
  • 원장 요약: closed N건 / deferred M건 / open K건 (open이 있으면 그 항목의 authority와 필요 시점을 1줄씩)
  • 다음 권장 단계 (/bootstrap-project — DISCOVERY.md를 입력으로 사용)
  • (opt-in, ADR-044) 기획 품질 확신이 부족하면: 다른 세션·다른 LLM에서 /validate-discovery --reviewer-tag <tag> 1+회 → 원본 세션에서 /repair-discovery 회수. 건너뛰어도 정상.

--update 모드 (mid-project pivot, ADR-035#amend-2)

기존 DISCOVERY.md 있으면:

  • R-E (Evidence 회수): 지난 갱신 이후 추가된 §14 Evidence Log 신규 행 + docs/10-charter/insights/의 노트(/research-pack 산출 + /consult-expert 도메인 노트)를 읽어 §15 Insight Backlog를 갱신(새 insight는 새 I-N, evidence는 §14에 적재).
    • type: quant 행은 본 skill 이 직접 해석하지 않는다 (ADR-042#amend-2 결정 2) — 정량 해석과 confidence 판정은 analyst 소유다. (a) 그 quant 를 해석한 insights/<YYYY-MM-DD>-data-*.md 노트가 있으면 그 노트의 인사이트를 받아 적는다, (b) 없으면 해석하지 않고 출력에 Needs Quant Interpretation: <evidence ID> — /consult-expert data 권장 1줄만 보고한다(자동 위임하지 않는다 — 명시 호출만. ADR-062 D10). 정성(qual) 행은 기존대로 본 skill 이 직접 처리한다.
  • R0 (페르소나 재확인) → R1·R2 (opportunity backlog 갱신·새 pain 추가) → R3 (assumption tracker 갱신 — §14 evidence로 §12 검증 결과 갱신) → R4 저장.
  • --fast --update: §12 Assumption Tracker + §14 Evidence Log만 빠르게 갱신 (가장 빈번한 mid-project use case).

Read the full file on GitHub · 101 lines

Files

What ships with it

2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 9d ago First seen · 101 lines · 28 tokens per session scan A 7ef458d2e6f0

Subscribe to this mod's changes

discover-product is a skill published in the GitHub repository kohj1018/agentic-dev-harness (2 stars, last pushed 12d ago), licensed MIT. It adds 28 tokens to every session and 3,004 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

do-it-handbook

Use when repeated rediscovery of stable project knowledge makes a small shared handbook useful.

tdwhere123/do-it · 21 tokens

linear

Manage issues, projects & team workflows in Linear. Use when the user wants to read, create or updates tickets in Linear.

Hipson47/Hipson · 27 tokens

obsidian-project-kb-core

Use this as the main Claude Scholar skill for a vault-first, project-scoped Obsidian research knowledge base rooted at Research/{project-slug}/. It owns bootstrap, routing, daily logging, hub/plan/index maintenance, registry updates, lifecycle actions, and lint orchestration.

Galaxy-Dawn/claude-scholar · 64 tokens

sc-skill

Capture deterministic macOS screenshots for testing, docs, release notes, and marketing assets. Use when asked to automate app screenshots, batch-generate screenshot sets, standardize window sizing/composition, or choose between Peekaboo and native macOS screenshot tooling.

jazzyalex/agent-sessions · 55 tokens

handover

Use when wrapping up or capturing the current state of a coding session — writes a short, dated entry to the repo's RepoHandover.md so a future agent or you can resume without grepping archived sessions. Triggers on "handover", "hand off", "write handover", "capture state", "checkpoint this session".

jazzyalex/agent-sessions · 71 tokens

agent-session-format-check

Verify agent session format compatibility for Agent Sessions. Use when any agent CLI updates, when monitoring flags drift, or when bumping max verified versions (fixtures + docs + tests). Covers session schema, usage/limits tracking, storage backends, and discovery path contracts for all supported agents.

jazzyalex/agent-sessions · 62 tokens