---
type: Concept
title: product_slug Convention
description: The rules for product_slug — the stable lowercase identifier that scopes products across OKF namespaces, planning artifacts, and agent records.
tags: [identity, product, namespace, convention]
timestamp: 2026-06-28
---

# product_slug Convention

**Situating context:** PMOS is built to run many products through one control plane, so it needs a
stable way to say "this knowledge / this work belongs to *that* product." This concept fixes the
`product_slug` convention so paths and records resolve a product unambiguously. It pairs with the
[PM identity model](/okf/core/concepts/pm-identity.md): together `pm_slug` + `product_slug` fully
scope any unit of work — which PM, which product.

## What `product_slug` is

A **`product_slug`** is a stable, lowercase, URL-safe identifier for one product. It is the
canonical reference to that product everywhere PMOS records or routes work.

For this instance: **`product_slug: pmos`** (PMOS is the first product, building itself).

## Rules

1. **Lowercase only.** No uppercase, no spaces.
2. **URL- and path-safe.** Letters, digits, hyphens. No slashes, dots, or underscores that would
   collide with path or frontmatter parsing. Prefer hyphens for multi-word slugs.
3. **Stable.** Treat it as a primary key. Renaming a `product_slug` orphans every path and record
   that points at it, so it changes only by deliberate PM decision with a migration.
4. **Unique** within the PMOS instance.
5. **Short and recognizable.** It appears in paths constantly; favour the obvious short form.

## Where it appears

- **OKF namespace:** `/okf/products/<product_slug>/` holds knowledge scoped to one product
  (e.g. `/okf/products/pmos/`). Core, cross-product knowledge stays in `/okf/core/`; product-scoped
  knowledge lives under its slug.
- **Planning artifacts:** PRD, OKR, and eval instances under `/planning/` reference the product by
  its slug so each dated artifact resolves to a product.
- **Agent records:** `agent_runs` and initiative records carry the `product_slug` (P1) so the
  north-star metric can be sliced per product.

## Scoping with `pm_slug`

`product_slug` answers *which product*; `pm_slug` answers *which PM*. Together they scope work
completely:

- `pm_slug: wawan` + `product_slug: pmos` → Wawan's work on PMOS.
- This pairing is what lets PMOS attribute outcomes and isolate variant knowledge without ambiguity
  as more PMs and products come online.

## Core vs. product-scoped knowledge

A recurring authoring decision: does this concept go in `/okf/core/` or
`/okf/products/<product_slug>/`?

- **Core** — true across products; part of the PMOS method itself (e.g. the OKR tree, the eval gate
  model). Most P0 seed concepts are core.
- **Product-scoped** — true only for one product's domain or constraints. Place under the product's
  slug.

When unsure, default to core only if the knowledge would still be correct for a second, unrelated
product; otherwise scope it to the product.
