
Oma Pm
- 126 installs
- 41 repo stars
- Updated August 4, 2026
- gracefullight/stock-checker
Break stock-checker work into issues, prioritize cycles, track dependencies, and keep multi-agent tasks aligned with milestones and acceptance criteria.
About
Oma-pm skill structures stock-checker delivery for agents: decompose features into trackable issues, set priorities and acceptance criteria, manage dependencies, and maintain workflow state so multi-step financial app work stays coherent.
- Issue breakdown
- Cycle prioritization
- Acceptance criteria
- Dependency tracking
- Agent handoffs
Oma Pm by the numbers
- 126 all-time installs (skills.sh)
- Ranked #1,269 of 3,282 Productivity & Planning skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/gracefullight/stock-checker --skill oma-pmAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 126 |
|---|---|
| repo stars | ★ 41 |
| Last updated | August 4, 2026 |
| Repository | gracefullight/stock-checker ↗ |
What it does
Break stock-checker work into issues, prioritize cycles, track dependencies, and keep multi-agent tasks aligned with milestones and acceptance criteria.
Files
PM Agent - Product Manager
Scheduling
Goal
Turn ambiguous or complex product requests into actionable, dependency-aware plans with clear tasks, priorities, acceptance criteria, API contracts, and risk/governance notes.
Intent signature
- User asks for planning, requirements, specification, scope, prioritization, task breakdown, roadmap, or implementation plan.
- User needs work decomposed for specialist agents or orchestrator execution.
When to use
- Breaking down complex feature requests into tasks
- Determining technical feasibility and architecture
- Prioritizing work and planning sprints
- Defining API contracts and data models
When NOT to use
- Implementing actual code -> delegate to specialized agents
- Performing code reviews -> use QA Agent
Expected inputs
- User request, product goal, constraints, target users, and acceptance expectations
- Existing codebase context, architecture constraints, and integration points
- Optional standards, risk, governance, or orchestration requirements
Expected outputs
- JSON plan and
task-board.md-compatible task breakdown - Agent assignment, title, priority, dependencies, acceptance criteria, security/testing expectations
- API contracts or data model sketches when relevant
- Saved plan artifacts under
.agents/results/
outputs:
- name: plan
description: PM task breakdown JSON for orchestrator consumption
artifact: ".agents/results/plan-*.json"
required: trueDependencies
resources/execution-protocol.md, examples, task template, and ISO planning guide- Shared API contract references and project context-loading rules
- Downstream specialist skills for implementation
Control-flow features
- Branches by ambiguity, dependency structure, risk level, and whether standards/governance framing is needed
- Produces planning artifacts rather than code
- Optimizes for parallelizable specialist-agent execution
Structural Flow
Entry
1. Clarify the product goal, constraints, and target deliverables. 2. Identify technical domains and required contracts. 3. Decide whether ISO/risk/governance framing is relevant.
Scenes
1. PREPARE: Gather requirements, constraints, and context. 2. REASON: Decompose work, identify dependencies, risks, and API/data contracts. 3. ACT: Produce JSON plan and task-board-compatible output. 4. VERIFY: Check task atomicity, acceptance criteria, security/testing coverage, and dependency shape. 5. FINALIZE: Save plan artifacts and summarize execution path.
Transitions
- If requirements are ambiguous, clarify before decomposition.
- If tasks are tightly coupled, refine contracts or sequencing.
- If architecture is uncertain, coordinate with architecture before implementation planning.
- If the user needs automated execution, hand off to orchestrator after plan approval.
Failure and recovery
- If scope is too broad, split into phases.
- If acceptance criteria are vague, rewrite them into testable outcomes.
- If dependencies block parallel execution, surface sequencing explicitly.
Exit
- Success: plan is actionable, testable, prioritized, and compatible with orchestrator execution.
- Partial success: unresolved assumptions or dependencies are explicit.
Logical Operations
Actions
| Action | SSL primitive | Evidence |
|---|---|---|
| Read requirements/context | READ | User request and project context |
| Select planning structure | SELECT | Task template and workflow needs |
| Infer tasks and dependencies | INFER | Domain decomposition |
| Validate acceptance criteria | VALIDATE | Checklist and task schema |
| Write plan artifacts | WRITE | JSON plan and task-board markdown |
| Notify plan summary | NOTIFY | Final planning report |
Tools and instruments
- Task template, examples, ISO planning guide, shared API contracts
- Local filesystem for result artifacts
Canonical workflow path
1. Define API/data contracts.
2. Decompose tasks with agent, title, priority, dependencies, and acceptance criteria.
3. Save `.agents/results/plan-{sessionId}.json` and `.agents/results/result-pm.md`.Resource scope
| Scope | Resource target |
|---|---|
MEMORY | Requirements, assumptions, dependencies |
LOCAL_FS | .agents/results/plan-{sessionId}.json, .agents/results/result-pm.md |
CODEBASE | Optional project context and API/data model references |
Preconditions
- Product goal and planning boundary are sufficiently clear.
- Required implementation domains can be identified.
Effects and side effects
- Creates plan artifacts and task boards.
- Influences downstream agent assignments and execution order.
- Does not directly implement code.
Guardrails
1. API-first design: define contracts before implementation tasks 2. Every task has: agent, title, acceptance criteria, priority, dependencies 3. Minimize dependencies for maximum parallel execution 4. Security and testing are part of every task (not separate phases) 5. Tasks should be completable by a single agent 6. Output JSON plan + task-board.md for orchestrator compatibility 7. When relevant, structure plans using ISO 21500 concepts, risk prioritization using ISO 31000 thinking, and responsibility/governance suggestions inspired by ISO 38500
Common Pitfalls
- Too Granular: "Implement user auth API" is one task, not five
- Vague Tasks: "Make it better" -> "Add loading states to all forms"
- Tight Coupling: tasks should use public APIs, not internal state
- Deferred Quality: testing is part of every task, not a final phase
References
Follow resources/execution-protocol.md step by step. See resources/examples.md for input/output examples. Use resources/iso-planning.md when the user needs standards-based planning, risk framing, or governance-oriented recommendations. Save plan to .agents/results/plan-{sessionId}.json and .agents/results/result-pm.md. Vendor-specific execution protocols are injected automatically by oma agent:spawn. Source files live under ../_shared/runtime/execution-protocols/{vendor}.md.
- Execution steps:
resources/execution-protocol.md - Plan examples:
resources/examples.md - ISO planning guide:
resources/iso-planning.md - Error recovery:
resources/error-playbook.md - Task schema:
resources/task-template.json - Ultrawork PLAN phase protocol:
resources/plan-phase-protocol.md(used when this skill runs inside the ultrawork workflow) - API contracts:
../_shared/core/api-contracts/ - Context loading:
../_shared/core/context-loading.md - Reasoning templates:
../_shared/core/reasoning-templates.md - Clarification:
../_shared/core/clarification-protocol.md - Context budget:
../_shared/core/context-budget.md - Lessons learned:
../_shared/core/lessons-learned.md
PM Agent - Error Recovery Playbook
When you encounter a failure during planning, follow these recovery steps.
---
Requirements Ambiguous
Symptoms: User request is vague ("Make me a good app", "Make it better")
1. Break down what you DO understand 2. List specific assumptions you're making 3. Create plan based on reasonable assumptions 4. Mark assumptions clearly: Assumption: [description] 5. NEVER do this: Create tasks while still ambiguous (agents will lose direction)
---
Existing Codebase Unknown
Symptoms: Planning for an existing project but don't know the architecture
1. Use Serena: get_symbols_overview("src/") or get_symbols_overview("app/") 2. Look for framework indicators: package.json, pyproject.toml, pubspec.yaml 3. Check for existing patterns: search_for_pattern("@app.get|@app.post") (FastAPI) 4. If Serena unavailable: note in plan "architecture assumptions: verify before execution"
---
Task Decomposition Too Granular or Too Coarse
Self-check:
- Each task should take 1 agent, 10-20 turns
- If a task needs < 5 turns: merge with a related task
- If a task needs > 30 turns: split into sub-tasks
- If unsure: err on the side of fewer, larger tasks
---
Dependency Deadlock
Symptoms: Task A depends on B, B depends on A (circular)
1. Identify the cycle 2. Break it by defining an API contract or shared interface first 3. Create a priority-0 task: "Define API contracts" (no dependencies) 4. Both tasks then depend on the contract, not on each other
---
Tech Stack Decision Unclear
Symptoms: Multiple valid options, no clear winner
1. Check existing codebase first; consistency wins over "better" tech 2. If greenfield: use the project's default stack (see SKILL.md tech-stack references) 3. Default choices: refer to each domain skill's resources/tech-stack.md for current versions
- Frontend:
oma-frontend/resources/tech-stack.md - Backend:
oma-backend/resources/tech-stack.md - Mobile:
oma-mobile/resources/tech-stack.md
4. Note decision rationale in plan: tech_decision: { choice: "X", reason: "Y" }
---
Serena Memory / Quota Issues
Same as backend-agent playbook: See relevant sections.
---
General Principles
- Plans are not code: They don't need to be perfect. Agents can adjust during execution
- Blocked: If no progress after 5 turns, save current state,
Status: blocked - No code writing: PM only plans; delegate implementation to other agents
PM Agent - Examples
Example 1: Simple TODO App
Input: "Build a TODO app with JWT authentication"
Output:
{
"project_name": "TODO App with JWT Auth",
"tech_stack": "Resolve from each domain skill's resources/tech-stack.md at planning time",
"tasks": [
{
"id": "task-1",
"agent": "backend",
"title": "JWT authentication API",
"priority": 1,
"dependencies": [],
"estimated_complexity": "high",
"acceptance_criteria": [
"POST /api/auth/register with email + password",
"POST /api/auth/login returns access + refresh tokens",
"Password hashed with bcrypt",
"Rate limiting: 5/min on login"
]
},
{
"id": "task-2",
"agent": "backend",
"title": "TODO CRUD API",
"priority": 1,
"dependencies": [],
"acceptance_criteria": [
"CRUD endpoints for /api/todos",
"User-scoped (JWT required)",
"Pagination on list endpoint"
]
},
{
"id": "task-3",
"agent": "frontend",
"title": "Login + Register UI",
"priority": 1,
"dependencies": [],
"acceptance_criteria": [
"Login and register forms with validation",
"JWT token storage",
"Redirect to /todos after login"
]
},
{
"id": "task-4",
"agent": "frontend",
"title": "TODO List UI",
"priority": 2,
"dependencies": ["task-2", "task-3"],
"acceptance_criteria": [
"Add, toggle, delete todos",
"Loading and empty states",
"Responsive design"
]
},
{
"id": "task-5",
"agent": "qa",
"title": "Security & Performance Review",
"priority": 3,
"dependencies": ["task-1", "task-2", "task-3", "task-4"],
"acceptance_criteria": [
"OWASP Top 10 audit passed",
"Lighthouse > 90",
"No N+1 queries"
]
}
]
}Example 2: Feature Addition to Existing App
Input: "Add a comment system to the blog posts"
Output:
{
"project_name": "Blog Comments Feature",
"tasks": [
{
"id": "task-1",
"agent": "backend",
"title": "Comments API",
"priority": 1,
"dependencies": [],
"acceptance_criteria": [
"POST /api/posts/{id}/comments (auth required)",
"GET /api/posts/{id}/comments (public, paginated)",
"DELETE /api/comments/{id} (owner only)",
"Nested replies (1 level deep)"
]
},
{
"id": "task-2",
"agent": "frontend",
"title": "Comment Section UI",
"priority": 2,
"dependencies": ["task-1"],
"acceptance_criteria": [
"Comment list with pagination (load more)",
"Add comment form (auth required)",
"Reply to comment",
"Delete own comment",
"Real-time count update"
]
}
]
}Example 3: Standards-Aligned Delivery Plan
Input: "Plan this enterprise release with risk and governance considerations"
Output:
{
"project_name": "Enterprise Release Plan",
"architecture_decisions": [
{
"decision": "Use phased rollout with feature flags",
"rationale": "Reduces operational risk during release",
"alternatives_considered": ["big bang release", "tenant-by-tenant rollout"]
}
],
"project_controls": {
"iso_21500": {
"scope_defined": true,
"stakeholders_identified": ["product", "security", "operations"],
"dependencies_mapped": true
},
"iso_31000": {
"top_risks": [
"migration rollback failure",
"auth regression on legacy users"
],
"treatments": [
"pre-release restore drill",
"shadow auth validation"
]
},
"iso_38500": {
"decision_owner": "engineering manager",
"approval_required_for": ["prod migration", "feature-flag enablement"]
}
}
}PM Agent - Execution Protocol
Step 0: Prepare
1. Assess difficulty: see ../../_shared/core/difficulty-guide.md
- Simple: Lightweight plan, 3-5 tasks | Medium: Full 4 steps | Complex: Full + API contracts
2. Clarify requirements: follow ../../_shared/core/clarification-protocol.md (critical for PM)
- Check Uncertainty Triggers: business logic, security/auth, existing code conflicts?
- Determine level: LOW → proceed | MEDIUM → present options | HIGH → ask immediately
3. Use reasoning templates: for architecture decisions, use ../../_shared/core/reasoning-templates.md (decision matrix) 4. Check lessons: read cross-domain section in ../../_shared/core/lessons-learned.md 5. If governance, risk, or formal planning matters: read resources/iso-planning.md
Intelligent Escalation: When uncertain, escalate early. Don't blindly proceed.
Follow these steps in order (adjust depth by difficulty).
Step 1: Analyze Requirements
- Parse user request into concrete requirements
- Identify explicit and implicit features
- List edge cases and assumptions
- Ask clarifying questions if ambiguous
- Use Serena (if existing codebase):
get_symbols_overviewto understand current architecture - If risk or governance matters, identify:
- stakeholders
- constraints
- decision owners
- major delivery risks
Step 2: Design Architecture
- Select tech stack (frontend, backend, mobile, database, infra)
- Define API contracts (method, path, request/response schema)
- Design data models (tables, relationships, indexes)
- Identify security requirements (auth, validation, encryption)
- Plan infrastructure (hosting, caching, CDN, monitoring)
- When relevant:
- map plan structure to ISO 21500-style project management concepts
- record top risks and treatments using ISO 31000-style thinking
- note governance, responsibility, and approval needs using ISO 38500-style thinking
Step 3: Decompose Tasks
- Break into tasks completable by a single agent
- Each task has: agent, title, description, acceptance criteria, priority, dependencies, scope
scope: array of directory prefixes this agent is allowed to modify (e.g.,["src/api/", "migrations/"]). Used byverifyto detect cross-agent boundary violations in parallel execution.- Minimize dependencies for maximum parallel execution
- Priority tiers: 1 = independent (run first), 2 = depends on tier 1, etc.
- Complexity: Low / Medium / High / Very High
- Save to
.agents/results/plan-{sessionId}.jsonand.agents/results/result-pm.md
Step 4: Validate Plan
- Check: Can each task be done independently given its dependencies?
- Check: Are acceptance criteria measurable and testable?
- Check: Is security considered from the start (not deferred)?
- Check: Are API contracts defined before frontend/mobile tasks?
- Check: Are major risks, owners, and approval points explicit when needed?
- Output task-board.md format for orchestrator compatibility
On Error
See resources/error-playbook.md for recovery steps.
PM Agent - ISO 21500 / 31000 / 38500 Guide
Use this file when the user wants standards-based planning, enterprise delivery structure, risk-aware prioritization, or governance-oriented recommendations.
Positioning
- ISO 21500: project management structure and planning lens
- ISO 31000: risk management lens
- ISO 38500: governance, accountability, and decision-rights lens
Do not turn these into ceremony for simple tasks. Use them when they improve clarity, accountability, or delivery confidence.
1. ISO 21500 for PM Work
Use ISO 21500 thinking to strengthen:
- scope definition
- stakeholder identification
- dependency mapping
- schedule and sequencing
- roles and responsibilities
- deliverable clarity
Practical PM outputs:
- explicit scope and exclusions
- task decomposition with dependencies
- owner assignment
- milestone or phase structure
- acceptance criteria and deliverables
2. ISO 31000 for Risk-Aware Planning
Use ISO 31000 thinking to improve:
- risk identification
- impact/likelihood discussion
- prioritization
- treatment / mitigation planning
- residual risk visibility
Practical PM outputs:
- top risks list
- mitigation tasks
- contingency tasks
- release blockers vs monitored risks
- decision points for escalation
3. ISO 38500 for Governance
Use ISO 38500 lightly for:
- decision ownership
- approval boundaries
- accountability
- oversight expectations
- alignment between business intent and technical execution
Practical PM outputs:
- approver or decision owner
- who must be informed
- what needs explicit sign-off
- where governance review is needed
4. When to Apply
Apply these standards when:
- the project is enterprise or regulated
- many teams or stakeholders are involved
- risk is material
- decision rights are unclear
- the user asks for formal planning or governance
Avoid overusing them when:
- the task is a small feature or bug
- standards language would slow delivery without adding control
5. Output Pattern
When relevant, add a short section like:
## Standards-Aligned Planning Notes
### ISO 21500
- Scope:
- Stakeholders:
- Major dependencies:
### ISO 31000
- Top risks:
- Mitigations:
- Residual risks:
### ISO 38500
- Decision owner:
- Required approvals:
- Governance checkpoints:6. Guardrails
- Keep recommendations actionable, not ceremonial
- Do not claim formal compliance
- Tie each standards suggestion to planning, risk reduction, or decision clarity
- Keep technical execution delegated to specialist agents
PLAN Phase Protocol
Execution guide for PLAN Phase (Steps 1-4) in ultrawork workflow.
---
Step 1: Create Plan
Tasks
- Define scope, features, architecture
- Apply "Think Before Coding" principle
- Present alternatives, don't assume
Outputs
- Task decomposition (P0/P1/P2 priority)
- Agent assignments
- API contracts (if needed)
---
Step 2: Plan Review (Completeness)
Review Question
"Is anything missing?"
Checklist
- [ ] All requirements mapped to plan
- [ ] Dependencies specified
- [ ] Edge cases considered
---
Step 3: Review Verification (Meta Review)
Review Question
"Was the review done properly?"
Checklist
- [ ] Self-verify Step 2 review was sufficient
- [ ] No review gaps confirmed
- [ ] No circular logic
---
Step 4: Over-Engineering Check (Simplicity)
Review Question
"Is this over-engineered?"
Checklist
- [ ] Asked "Is this needed for MVP?" for each component
- [ ] Speculative features removed
- [ ] No "might need later" code
---
PLAN_GATE Checklist
Final verification before completing plan:
- [ ] Acceptance criteria defined
- [ ] Assumptions documented
- [ ] Alternatives considered (min 2 for major decisions)
- [ ] Over-engineering review completed
- [ ] Ready for user confirmation
Gate failure → Return to Step 1 to revise plan
{
"project_name": "",
"description": "",
"tech_stack": {
"frontend": "",
"backend": "",
"mobile": "",
"database": "",
"infrastructure": ""
},
"architecture_decisions": [
{
"decision": "",
"rationale": "",
"alternatives_considered": []
}
],
"tasks": [
{
"id": "task-1",
"agent": "backend|frontend|mobile|qa",
"title": "",
"description": "",
"priority": 1,
"dependencies": [],
"estimated_complexity": "low|medium|high|very-high",
"acceptance_criteria": [],
"artifacts_expected": [],
"scope": []
}
],
"api_contracts": [
{
"endpoint": "",
"method": "GET|POST|PUT|DELETE|PATCH",
"request": {},
"response": {},
"headers": {}
}
],
"data_models": [
{
"entity": "",
"fields": {}
}
],
"non_functional_requirements": {
"security": [],
"performance": [],
"scalability": []
},
"testing_strategy": {
"unit_tests": "",
"integration_tests": "",
"e2e_tests": "",
"performance_tests": ""
}
}