iopsystems/skills-mcp/frame-problem
Claude Code and agent skill by iopsystems/skills-mcp
- community
Checking that the SKILL.md file is still in the repository.
Draft a **problem brief** — the "what actually is the problem" half of the paired briefs convention in knowledge-iop. A problem brief is written before any solution is proposed. Use this whenever the user says things like "we need a problem brief", "let's frame the problem", "what are we even solving", "capture the constraints", "I want to document a problem we can't solve yet", or any time they're about to design something but the problem hasn't been stated in one place. A problem brief can be orphan-of-solution — it's valuable even without a design. After framing a problem, the natural next step is `propose-design` (which `frames:` this brief).
Install
npx vskill@latest install iopsystems/skills-mcp/frame-problemSKILL.md
Frame problem
You are drafting a problem brief in the knowledge-iop vault. A problem brief answers "what is actually going on here, and why does it resist easy solution?" — before anyone proposes a fix.
Before drafting — search first
- Invoke the
vault-searchskill (or callvault_searchdirectly)
with keywords from the user's topic to find any existing problem-brief on this subject.
- If a match exists with
status: draft, offer to continue editing
it instead of starting over — paired-brief convention favors amending a draft over proliferating near-duplicates.
- If a match exists with
status: accepted, ask the user whether
they mean to supersede it (new understanding of the same situation) or whether this is a different problem that just shares keywords. Accepted briefs are immutable; new ones supersede.
- If a match exists with
status: obsolete, warn the user — that
framing was already set aside; offer to supersede and surface the reason.
Frontmatter shape
Required: id, type, status, author, created. Recommended: scopes, and arc if one is open that this belongs to.
The id is the stable handle. Convention: <date>-<slug>-problem. slug is 2–4 hyphenated words, lowercase, no filler.
Filename
Write to briefs/<id>.md. The briefs/ directory is flat; don't nest.
Body — the 6 questions
A problem brief answers, in this order:
- What is the actual problem? State it before any solution is in
mind. If you can't say it without saying "so we should …", keep refining.
- Why does it matter now? What has changed that makes this worth
writing down today?
- What constraints are we operating under? Hard limits — budget,
compatibility, team capacity, deadlines. Soft limits — aesthetic, strategic, cultural.
- What have we tried or considered? Include dead ends. Documenting
a rejected alternative is as valuable as proposing a new one.
- What are we explicitly not trying to solve? Adjacent problems we
acknowledge but are setting aside. Name them so the scope doesn't drift.
- What would change our analysis? If the answer is "nothing", the
brief is over-claimed. Name the conditions that would reopen the question.
Write in complete sentences. No bullet-ridden skeletons. A future reader — human or agent — should be able to infer the situation without further context.
Drafting workflow
- Search the vault (above).
- Ask the user the 6 questions if answers aren't already in the
conversation. Don't ask all at once — work through them.
- Propose frontmatter + body as a diff. Show the filename you plan
to write.
- On user approval, write the file.
- Commit via
git add briefs/<id>.md && git commit -m "Frame: <one-line>". - Tell the user the next step: "invoke
propose-designnow to
propose a solution that frames: this brief." Mention that if no design is forthcoming, a standalone problem brief is still valuable.
After commit
- Do not run
vault_reindex— the index auto-refreshes on next
query.
- If the user wants to check downstream impact (are there drafts
elsewhere that relate?), invoke vault-search with the new id.
Do not
- Do not include a "proposed solution" section. That's what
propose-design is for. Keep the two halves separate.
- Do not write "TBD" fields. Either answer a question or drop the
frontmatter field.
- Do not edit an accepted problem brief — supersede it instead.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/vault/frame-problem/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/iopsystems/skills-mcp/frame-problem)