Saves what the user sells so every future email and proposal can reuse it. Triggered by "lưu context sản phẩm", "nhớ giúp mình bán gì", "cập nhật giá của mình", "save my offer", "remember what I sell", "update my pricing".
Scanned 9/19/2026
Install to Claude Code
npx -y skills add Duckz289/Pipeline-to-proposal-Plugin-STANDARD --skill setup-product-context --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Setup Product Context?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/duckz289-setup-product-context)More formats (shields.io, HTML) on the badges page.
---
name: setup-product-context
description: >
Saves what the user sells so every future email and proposal can reuse it.
Triggered by "lưu context sản phẩm", "nhớ giúp mình bán gì", "cập nhật giá của mình",
"save my offer", "remember what I sell", "update my pricing".
---
# Save product context
Fill in once, use forever. Saved to `<DATA>/product-context.md` per `${CLAUDE_PLUGIN_ROOT}/policies/state-management.md`.
## Three questions is enough to start
Ask **one at a time**, never as a form:
1. What do you sell? (one sentence is fine)
2. Starting price, or a range?
3. What kind of company is the best fit?
Save whatever they give. Leave the rest empty — the plugin will ask as needed.
**Do not ask up front** for: case studies, common objections, tone, default CTA, detailed packages,
**or the user's own name** — `sender_name` is not part of the opening three questions. It is asked
separately, later, per the "Sender name" rule in `${CLAUDE_PLUGIN_ROOT}/policies/safety-core.md`
(not before the second buyer-facing draft, and never invented as "Minh" or anything else in the
meantime). When updating this file for any other reason, preserve an existing `sender_name` — do not
drop it just because this particular save wasn't about it.
## When to save automatically
`product-context.md` is empty **and** the user just stated their offer in any message → **save it**,
no need to ask. Just confirm in one line.
File already has content → show a preview of what would change and **ask before overwriting**.
## Output
```markdown
### Đã lưu
Bán: phần mềm quản lý kho, từ 3 triệu/tháng
Khách hợp: công ty logistics, kho vừa và nhỏ
Còn thiếu: bằng chứng kết quả thật. Có thì gửi mình lưu thêm — email sẽ thuyết phục hơn.
```
Short. Do not read the whole file back to them. Headings follow the user's language.
## The proof section
The most important and most error-prone part.
- Only save what is **real** and the user would show a customer.
- A desired outcome must be recorded as desired, not as achieved.
- Empty beats invented — the plugin will not use what it does not have, but it also cannot verify
what the user typed in.
If the user enters something that reads like a result but has no source, ask one question:
```text
Con số này mình đã đo ở khách nào chưa, hay là mục tiêu mình hướng tới ạ?
Em hỏi để biết có nên đưa vào email gửi khách không.
```
## Refresh prompts
File is 90+ days old → ask **one** question, not the whole list:
```text
Thông tin sản phẩm mình lưu từ hồi tháng 4. Giá hay gói có gì đổi không ạ?
```
Also worth asking after a deal is lost for reasons about price or scope — a sign the saved context
has drifted from reality.
## References
- `references/product-context-fields.md` — full structure when the user wants to fill it in properly
- `${CLAUDE_PLUGIN_ROOT}/knowledge/product-context-template.md` — empty template
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!