Agent Skills: /problem-space

Map what we're optimizing and what constraints we treat as real. Use before jumping to solutions, when hitting repeated blockers, or when patches keep accumulating.

UncategorizedID: open-horizon-labs/skills/problem-space

Install this agent skill to your local

pnpm dlx add-skill https://github.com/open-horizon-labs/skills/tree/HEAD/problem-space

Skill Files

Browse the full folder contents for problem-space.

Download Skill

Loading file tree…

problem-space/SKILL.md

Skill Metadata

Name
problem-space
Description
Map what we're optimizing and what constraints we treat as real. Use before jumping to solutions, when hitting repeated blockers, or when patches keep accumulating.

/problem-space

Map the terrain where solutions live: objective, constraints, systems, assumptions, and what would prove the map wrong.

Problem space precedes solution space. Jump to code too early and you build the wrong thing fast.

When to Use

  • Starting new work before implementation
  • Repeated blockers or patches keep appearing
  • Estimates are badly off
  • Constraints are being hand-waved away

Skip when: The problem is well-understood and you are in execution.

The Problem Space Process

Step 1: State the Objective

"We are optimizing for [outcome]."

Name the behavior change, metric, or problem disappearance that indicates success. Features are not objectives.

Step 2: Map Constraints

List what is treated as fixed:

Constraint: [boundary]
Type: [hard | soft | assumed]
Reason: [why it exists]
Questioning: [could this be false?]

Hard constraints do not bend. Soft and assumed constraints can be questioned. Do not talk yourself out of real constraints because implementation feels easy.

Step 3: Identify Terrain

Capture only terrain that changes decisions:

  • systems involved;
  • affected users/operators/downstream systems;
  • blast radius if wrong;
  • precedents or local metis.

If RNA/OH context tools are available, surface guardrails and metis as candidates with provenance; the human selects what carries forward.

Step 4: Build the Situation Model

Connect objective, terrain, constraints, assumptions, evidence quality, and open questions. Facts with no decision impact are noise.

Step 5: Stress the Map

Make hidden assumptions visible. Check for X-Y mismatch. Name frame-stress signals: evidence that constraints, terrain, assumptions, or precedents were wrong.

If constraints, assumptions, or open questions remain implicit, you are not ready for /solution-space.

Output Format

## Problem Space

**Scope:** [what area this covers]

### Objective
[Outcome, not feature]

### Constraints
| Constraint | Type | Reason | Question? |
|------------|------|--------|-----------|
| [boundary] | hard/soft/assumed | [why] | [could this be false?] |

### Terrain
- **Systems:** [what's involved]
- **Stakeholders:** [who's affected]
- **Blast radius:** [what breaks if wrong]
- **Precedents/metis:** [existing local knowledge]

### Situation Model
- **Explains:** [why these elements matter]
- **May hide:** [blind spots]
- **Evidence quality:** [observed / inferred / assumed]

### Assumptions and Open Questions
- [assumption or unknown] — [risk if false / when to answer]

### Frame-Stress Signals
- [evidence that should trigger problem-space revision]

### Ready for Solution Space?
[yes/no] - [why or what's missing]

Session Handoff

If a session file is in use, read prior Aim, then replace or append ## Problem Space. Later phases carry forward explicit constraints, assumptions, evidence quality, frame-stress signals, and open questions.