Skip to content
Tools/Spec Introspection/get_lens

get_lens

Return the full `UPGLens` record by id (e.g. "product", "ux_design", "engineering", "full") plus the resolved entity types visible through that lens. Combines the lens record with `visible_types` in one response.

Spec Introspectionatomic (read-only)

Arguments

idstringrequired

Lens id (e.g. "product", "ux_design", "full").

Returns

Shape
{...UPGLens, visible_types: string[] }

Examples

Live call against the Notion example graph.

Input

{
  "id": "product"
}

Output

{
  "id": "product",
  "name": "Product",
  "description": "Full graph, PM vocabulary, outcome-driven workflow",
  "icon": "target",
  "framework_id": "ost",
  "label_overrides": {
    "experiment": "Experiment",
    "learning": "Validated Learning"
  },
  "visible_domains": [],
  "benchmark_domains": [
    "strategy",
    "user",
    "discovery",
    "validation",
    "market_intelligence",
    "product_spec",
    "growth"
  ],
  "intelligence_prompts": [
    {
      "condition": "outcomes.length === 0",
      "structured_condition": {
        "check": {
          "type": "entity_count",
          "entity_type": "outcome",
          "comparison": "zero"
        }
      },
      "message": "No outcomes defined yet. Start with what success looks like: what measurable result should this product drive?"
    },
    {
      "condition": "hypotheses.untested.length > 3",
      "structured_condition": {
        "check": {
          "type": "entity_count",
          "entity_type": "hypothesis",
          "filter": {
            "status": "untested"
          },
          "comparison": "gt",
          "threshold": 3
        }
      },
      "message": "You have untested hypotheses stacking up. Pick the riskiest one and design an experiment before adding more."
    },
    {
      "condition": "features.length > 0 && hypotheses.length === 0",
      "structured_condition": {
… (truncated)

See Also