Frame situation
Skill eugenelim/agent-ready-repo/packs/product-engineering/.apm/skills/frame-situation
Use when holding a raw signal (market observation, OKR gap, user pain pattern, engineering finding, competitive signal) at initiative or capability level — turning it into a typed finding, a Wardley capability maturity assessment, and an anchor into the PE six-step shaping sequence. Triggers on "frame this situation", "what do we do with this signal", "is this an opportunity or a risk", "where should we start", "map this to the shaping sequence". Do NOT use for a feature-scoped request (use `frame-intent`), testing an assumption (use `de-risk-intent`), or breaking down a shaped intent (use `decompose-intent`).From its SKILL.md
npx -y skills add eugenelim/agent-ready-repo --skill frame-situationAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 15 stars15 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
4.0 KB, 866 tokens by cl100k_base, as published. Nobody here has run it
Skill: frame-situation
Classify a raw signal, assess relevant capability maturities, and anchor the situation to the PE shaping sequence — so the team knows what kind of thing this is and where to enter the six-step loop before any shaping work begins.
When to invoke
Confirm the signal is initiative or capability level (affects a whole
product area or initiative). If it is clearly a single screen or endpoint,
name the altitude mismatch and redirect: "This looks feature-scoped;
frame-intent is the right entry point."
If altitude is genuinely ambiguous, ask — never force one level.
If the signal is too thin to classify, elicit more context first.
Procedure
1. Intake. Read the signal. Confirm altitude in one sentence; proceed once confirmed.
2. Classify. Choose: opportunity | risk | gap | threat |
emergent-capability. State type + one-line rationale. If underdetermined,
name the ambiguity and elicit — do not force a type.
3. Wardley maturity. Identify up to three implicated capability areas. For each, place on the four stages — Genesis (novel/uncertain; explore); Custom-built (hand-crafted; invest to differentiate); Product (widely available; buy/adopt over build); Commodity (utility; competing here wastes energy) — with evidence and strategic implication. Mark unplaceable capabilities as residual assumptions. When zero can be placed, emit an all-residual table.
4. Recommend entry point. PE six-step sequence: frame-situation →
identify-opportunities → diverge-solutions → validate → place-bet →
map-capabilities. Recommend where to enter:
- Unknown problem → step 2 (
identify-opportunities, default). - Known problem, unknown options → step 3 (
diverge-solutions). - Known options, need committed bet → step 5 (
place-bet). State the entry point and one-sentence rationale so the PE can override.
5. Emit situation-framing.md. Resolve output_dir via the three-tier
config procedure (repo-scope agentbundle-layout.toml [product] → user-scope
→ two-branch elicitation). Realpath-expand; reject .. and symlinks that exit
the root; surface the resolved path before writing. Write to
<output_dir>/shaping/<slug>/situation-framing.md.
Step 2 readiness: if identify-opportunities is absent from available
skills, note this under a "Step 2 readiness" section and describe what step 2
provides. Do not block artifact emission. Apply the same degrade if
diverge-solutions or place-bet is the recommended entry and is also absent
— those skills are not yet shipped.
Artifact shape: frontmatter (type: situation-framing, slug, signal, date,
finding-type, shaping-entry), then sections — Signal, Finding, Wardley
Assessment table, Recommended Entry Point, Step 2 readiness (when absent),
Suggested workspace.toml entry (TOML snippet + direction to add via queue-add
or manually).
6. Suggest workspace.toml entry. Print the {slug = "<slug>", type = "shape"}
TOML snippet. Direct the user to add it to [ini-NNN.shaping_queue] backlog.
Do not write to workspace.toml.
Anti-patterns to refuse
- Writing to
workspace.tomlor a literal hardcoded path. - Producing a brief (that is
place-bet+author-brief's job). - Forcing a Wardley stage when evidence is insufficient — name it as a residual assumption instead.
- Forcing an altitude when it is genuinely ambiguous — ask instead.
What ships with it: 1 file
5.0 KB alongside SKILL.md
examples/
- signal-to-finding.md5.0 KB