一键导入
product-line
Manage the portfolio of product paths — review, activate, archive, restore, promote, fork, and check revisit triggers across the product-path manifest
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Manage the portfolio of product paths — review, activate, archive, restore, promote, fork, and check revisit triggers across the product-path manifest
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Provision workflow orchestration and agent conventions into project CLAUDE.md and AGENTS.md
Provision workflow orchestration and agent conventions into project CLAUDE.md and AGENTS.md
Provision workflow orchestration and agent conventions into project CLAUDE.md and AGENTS.md
Provision workflow orchestration and agent conventions into project CLAUDE.md and AGENTS.md
Manage the portfolio of product paths — review, activate, archive, restore, promote, fork, and check revisit triggers across the product-path manifest
Manage the portfolio of product paths — review, activate, archive, restore, promote, fork, and check revisit triggers across the product-path manifest
| name | product-line |
| description | Manage the portfolio of product paths — review, activate, archive, restore, promote, fork, and check revisit triggers across the product-path manifest |
| type | ops |
| version | v0.7 |
| required_conventions | ["alignment-page"] |
| argument-hint | review | activate <path-id> | archive <path-id> | restore <path-id> | promote <path-id> | fork <label> [--from <skill>] | triggers |
| context_intake | artifact_only |
| visual_tier | visual |
When recommending a skill from another pack, verify the target pack is installed via .agents/project.json enabled_packs. If it is not enabled, recommend npx skillpacks install <pack> from the project shell. After install, tell Codex users to start a fresh Codex CLI session if the $ skill list remains stale. Only the currently running skill and skills verified available in the active session or project-local install state are directly recommendable. For unavailable pack skills, recommend npx skillpacks install <pack-or-skill>; for unavailable base skills, recommend npx skillpacks init before the skill.
Invoke as $product-line.
Manage product paths tracked in research/.progress.yaml. Product paths are research divergences — different products, apps, ICPs, expansion candidates, pivots, or competitive gaps — not git branches. Each path tracks its scope directory, status, evidence, pipeline stage, and revisit conditions.
Use activate when a deferred or revisit candidate path should become active research again. Use promote only when a research path graduates to an apps/{slug}/ code/app scope.
research/.progress.yaml must exist for all modes except fork (which can create it). If missing, tell the user: "No product-path manifest found. Run $idea-scope-brief or $customer-discovery first — they create the manifest when multiple product directions emerge."
The canonical manifest lives at research/.progress.yaml:
active_paths:
- "cost-intel"
max_concurrent: 1
product_paths:
- id: "cost-intel"
label: "Cost Intel"
scope_path: "research/cost-intel/"
status: active # active | deferred | archived | promoted | revisit_candidate
source_skill: "icp"
reason: "Why this path exists"
archive_reason: null
archived_at: null
promoted_at: null
evidence_refs: []
revisit_trigger: null
next_skill: "$competitive-analysis"
pipeline_stage: "icp"
last_touched: "YYYY-MM-DD"
active_path as active_paths: [<value>] when active_paths is absent.status: abandoned as status: archived.active_path, write plural active_paths, and prefer status: archived instead of abandoned.status: promoted as graduated to code/app scope, not reactivated research.research/_archive/ paths from active-path selection and directory suggestions.review — Portfolio DashboardInvocation: $product-line review
Present a dashboard comparing all paths:
| Path | Status | Scope | Pipeline Stage | Last Touched | Evidence Maturity | Revisit Trigger |
|---|
Group by active, deferred, revisit_candidate, archived, and promoted. For deferred and revisit_candidate paths, highlight the revisit trigger. For archived paths, show archive_reason and archived_at. For promoted paths, show promoted_at and the expected apps/{slug}/ scope.
Evidence maturity is derived from files under scope_path or evidence_refs:
When 3+ deferred or revisit-candidate paths exist with no recent activation, recommend $product-line triggers.
activate <path-id> — Reactivate ResearchInvocation: $product-line activate <path-id>
deferred or revisit_candidate.max_concurrent against the current active-path count. If at capacity, ask whether to deactivate another path or increase max_concurrent.scope_path is not under research/_archive/. If it is archived, tell the user to run $product-line restore <path-id> first.pipeline_stage.status: activeactive_pathslast_touched to todaypipeline_stage from the scan when clearer than the existing valuenext_skill or the inferred pipeline stage.archive <path-id> — Archive A Research PathInvocation: $product-line archive <path-id>
archived or legacy abandoned.scope_path is research/{slug}/ and the directory exists, create research/_archive/ as needed and move it to research/_archive/{slug}/.status: archivedactive_pathsscope_path to research/_archive/{slug}/ when the directory was movedarchive_reason, archived_at, and last_touchedrestore <path-id> — Restore An Archived PathInvocation: $product-line restore <path-id>
archived or legacy abandoned.scope_path is research/_archive/{slug}/ and the directory exists, move it back to research/{slug}/.deferred (default) or active. If active, enforce max_concurrent.status: deferred by default, or active only when approvedactive_paths only when restored as activescope_path back to research/{slug}/archived_at; keep the old archive rationale in reason or history, but set archive_reason: nulllast_touched to today$product-line activate <path-id> if restored as deferred.promote <path-id> — Graduate To App ScopeInvocation: $product-line promote <path-id>
Use this only when research is ready to become or connect to an app under apps/{slug}/.
archived or legacy abandoned.{slug} from the path ID or scope_path.apps/{slug}/ during the monorepo scaffolding flow. If scaffolding requires another skill, recommend $scaffold or the appropriate monorepo command instead of inventing app files here.research/{slug}/ as product evidence unless a separate scaffolder explicitly moves or links docs.status: promotedactive_pathspromoted_at and last_touched to todayscope_path pointing at the research evidence pathfork <label> [--from <skill>] — Create A New PathInvocation: $product-line fork "Enterprise vertical" --from competitive-analysis
active or deferred).research/.progress.yaml with the full schema fields.scope_path: research/{slug}/.active, enforce max_concurrent and create research/{slug}/.deferred, create the manifest entry without forcing downstream research.triggers — Check Revisit ConditionsInvocation: $product-line triggers
Scan paths with status: deferred or status: revisit_candidate and evaluate their revisit_trigger conditions:
Classify each trigger as fired, pending, or manual. For fired triggers, recommend $product-line activate <path-id>.
Update research/.progress.yaml. archive and restore may also move product-path directories between research/{slug}/ and research/_archive/{slug}/. promote may confirm or route creation of apps/{slug}/, but it does not move research docs.
promote to mean "make active"; use activate.archive without a documented rationale.max_concurrent for active paths.Follow the shared alignment-page convention via the packaged convention resolver; output path is alignment/product-line-{topic}.html. By default, report results inline and write only this skill's normal durable artifacts; create an alignment page only when explicitly requested or when a concrete clarification/review need cannot be handled cleanly inline.
Follow the shared shipping contract convention in CLAUDE.md.