Skip to main contentvalue-stream-mapper
Value stream mapping skill for current state analysis, waste identification, and future state design.
الانتقال إلى التثبيت التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
يتجاوز الأمر المباشر Prompt المخصّص للمراجعة. افحص المصدر قبل تشغيله.
npx skills add https://github.com/a5c-ai/babysitter --skill value-stream-mapperيبقى الأمر في سطر واحد. مرّر أفقيًا لمراجعته كاملًا قبل النسخ.
تفضّل نسخة محلية؟ نزّل الملفات المتاحة حاليًا لدى SkillsMP.
المزيد من هذا المستودع
Reference for querying the Atlas knowledge graph through its MCP tools — the SECONDARY enrichment/comparison layer that adds best-practice context to systems you have ALREADY scanned from your real sources (`az`, repos, dirs). Use when you need to look up nodes, edges, kinds, clusters, stats, or wiki pages in Atlas to compare against your real inventory. (atlas graph, query atlas, atlas mcp, search the graph, graph neighbors, atlas record, atlas kinds, enrichment layer)
Atlas turns your STATED NEED into a real systems atlas by SCANNING your actual sources (Azure via `az`, git repos, local dirs) and process/data mining them, THEN enriching against the Atlas knowledge graph. Use this skill when asked to inventory/map your real systems, scan your cloud + repos + directories, mine the real processes or data they contain, or collect their real constraints/gotchas. (atlas, scan my systems, inventory our azure account, map my repos, real systems atlas, process mining, data mining, collect nuances, system discovery)
assimilate-popular-workflows This skill should be used when the user asks to "find skills in the wild", "assimilate popular workflows", "discover SKILL.md files in repos", "research external skills", "find workflow patterns", "survey the skill landscape", "what skills exist out there", or wants to investigate public repositories for extractable processes, babysitter plugins, and reusable procedural insights. Searches GitHub for SKILL.md files, classifies repos by archetype, and maintains structured research under docs/reference-repos/.
المهن ذات الصلةSOC
استنادا إلى تصنيف SOC المهني
| name | value-stream-mapper |
| description | Value stream mapping skill for current state analysis, waste identification, and future state design. |
| allowed-tools | Bash(*) Read Write Edit Glob Grep WebFetch |
| metadata | {"author":"babysitter-sdk","version":"1.0.0","category":"lean-manufacturing","backlog-id":"SK-IE-009"} |
| graph | {"domains":["domain:industrial-engineering"],"skillAreas":["skill-area:statistical-analysis","skill-area:organizational-design","skill-area:data-analysis"],"roles":["role:operations-analyst","role:research-engineer"]} |
value-stream-mapper
You are value-stream-mapper - a specialized skill for creating and analyzing value stream maps to identify waste and design improved future states.
Overview
This skill enables AI-powered value stream mapping including:
- Current state map generation
- Process box data collection (C/T, C/O, uptime, etc.)
- Material flow visualization
- Information flow mapping
- Timeline calculation (lead time, process time)
- Seven wastes (TIMWOODS) identification
- Future state design with kaizen bursts
- Implementation roadmap generation
Prerequisites
Understanding of lean manufacturing principlesAccess to process data (times, inventory, etc.)Diagramming tools (draw.io, Visio, Lucidchart)Capabilities
1. Current State Data Collection
class ProcessBox:
"""
Data structure for VSM process box
"""
def __init__(self, name):
self.name = name
self.cycle_time = None
self.changeover_time = None
self.uptime = None
self.operators = None
self.batch_size = None
self.available_time = None
self.shifts = None
self.scrap_rate = None
self.wip_before = None
self.wip_after = None
def calculate_metrics(self):
"""Calculate derived metrics"""
if self.uptime:
self.effective_ct = self.cycle_time / (self.uptime / 100)
if self.available_time and self.shifts:
self.daily_available = self.available_time * self.shifts
if self.daily_available and self.cycle_time:
self.daily_capacity = self.daily_available / self.cycle_time
return self
class ValueStreamMap:
"""
Complete value stream map data structure
"""
def __init__(self, product_family, customer_demand):
self.product_family = product_family
self.customer_demand = customer_demand
self.processes = []
self.suppliers = []
self.customer = None
self.information_flows = []
def add_process(self, process_box):
self.processes.append(process_box)
def calculate_takt_time(self, available_time_per_day):
"""Takt time = available time / customer demand"""
self.takt_time = available_time_per_day / self.customer_demand
return self.takt_time
2. Timeline Calculation
def calculate_timeline(vsm):
"""
Calculate lead time and process time from VSM
"""
process_time = 0
lead_time = 0
timeline = []
for process in vsm.processes:
pt = process.cycle_time
process_time += pt
wait_time = 0
if process.wip_before:
wait_time = process.wip_before / vsm.customer_demand
lead_time += wait_time + (pt / 3600 / 8)
timeline.append({
"process": process.name,
"process_time_sec": pt,
"wait_time_days": wait_time,
"cumulative_lead_time": lead_time
})
return {
"total_process_time_sec": process_time,
"total_lead_time_days": lead_time,
"pce": (process_time / 3600 / 8) / lead_time * 100,
"timeline": timeline
}
3. Waste Identification (TIMWOODS)
def identify_wastes(vsm, timeline):
"""
Identify seven wastes + skills underutilization
"""
wastes = {
"transportation": [],
"inventory": [],
"motion": [],
"waiting": [],
"overproduction": [],
"overprocessing": [],
"defects": [],
"skills_underutilization": []
}
for process in vsm.processes:
if process.wip_before and process.wip_before > vsm.customer_demand:
wastes["inventory"].append({
"location": f"Before {process.name}",
"amount": process.wip_before,
"days_supply": process.wip_before / vsm.customer_demand,
"impact": "Excess inventory ties up capital"
})
total_wait = sum(t['wait_time_days'] for t in timeline['timeline'])
if total_wait > timeline['total_lead_time_days'] * 0.5:
wastes["waiting"].append({
"description": "Significant waiting time",
"wait_percentage": total_wait / timeline['total_lead_time_days'] * 100,
"impact": "Low process cycle efficiency"
})
for process in vsm.processes:
if process.scrap_rate and process.scrap_rate > 1:
wastes["defects"].append({
"process": process.name,
"scrap_rate": process.scrap_rate,
"impact": f"Losing {process.scrap_rate}% of production"
})
for process in vsm.processes:
if process.daily_capacity and process.daily_capacity > vsm.customer_demand * 1.2:
wastes["overproduction"].append({
"process": process.name,
"capacity_vs_demand": process.daily_capacity / vsm.customer_demand,
"risk": "May produce excess inventory"
})
return wastes
4. Future State Design
class FutureStateDesign:
"""
Design future state value stream
"""
def __init__(self, current_vsm, target_improvements):
self.current = current_vsm
self.targets = target_improvements
self.kaizen_bursts = []
self.supermarket_locations = []
self.pacemaker_process = None
def design_pull_system(self):
"""Design supermarkets and pull signals"""
self.pacemaker_process = self.current.processes[-1]
for i, process in enumerate(self.current.processes[:-1]):
next_process = self.current.processes[i+1]
needs_supermarket = (
abs(process.cycle_time - next_process.cycle_time) / process.cycle_time > 0.2 or
(process.changeover_time and process.changeover_time > 10) or
(process.uptime and process.uptime < 90)
)
if needs_supermarket:
self.supermarket_locations.append({
"after_process": process.name,
"reason": "Decouple due to cycle time or reliability mismatch",
"kanban_quantity": self._calculate_kanban(process)
})
def _calculate_kanban(self, process):
"""Calculate kanban quantity for supermarket"""
daily_demand = self.current.customer_demand
lead_time_days = 1
safety_factor = 1.5
container_size = 50
kanban_qty = (daily_demand * lead_time_days * safety_factor) / container_size
return int(kanban_qty) + 1
def add_kaizen_burst(self, location, description, target_improvement):
"""Add improvement opportunity"""
self.kaizen_bursts.append({
"location": location,
"description": description,
"target": target_improvement,
"priority": None
})
5. Implementation Roadmap
def create_implementation_roadmap(future_state):
"""
Create phased implementation plan
"""
roadmap = {
"phase_1_foundation": {
"duration": "1-3 months",
"activities": [
"5S implementation at pacemaker",
"Standard work documentation",
"Basic visual management"
]
},
"phase_2_flow": {
"duration": "3-6 months",
"activities": [
"Implement supermarkets",
"Create kanban loops",
"Level production schedule"
]
},
"phase_3_pull": {
"duration": "6-12 months",
"activities": [
"Connect all pull signals",
"SMED on changeovers",
"TPM implementation"
]
}
}
for burst in future_state.kaizen_bursts:
if "changeover" in burst['description'].lower():
burst['priority'] = "phase_2_flow"
elif "quality" in burst['description'].lower():
burst['priority'] = "phase_1_foundation"
else:
burst['priority'] = "phase_3_pull"
roadmap['kaizen_events'] = future_state.kaizen_bursts
return roadmap
VSM Symbols Reference
Process Box: [========] Contains C/T, C/O, Uptime
| Name |
[========]
Inventory Triangle: /\ Shows quantity and days
/ \
/____\
Supermarket: [===] Pull inventory buffer
[===]
[===]
Kanban: [K] Pull signal
FIFO Lane: >>> First-in-first-out
Information Flow: ------> Electronic
~~~~~~> Manual
Push Arrow: ===> Push production
Kaizen Burst: *** Improvement opportunity
* K *
***
Process Integration
This skill integrates with the following processes:
value-stream-mapping-analysis.js
kaizen-event-facilitation.js
standard-work-development.js
Output Format
{
"vsm_summary": {
"product_family": "Widget A",
"customer_demand": 460,
"takt_time_sec": 62,
"total_processes": 5
},
"current_state": {
"lead_time_days": 23.5,
"process_time_min": 185,
"pce_percent": 0.55
},
"wastes_identified": {
"inventory": 3,
"waiting": 2,
"defects": 1
},
"future_state": {
"target_lead_time": 5,
"supermarkets": 2,
"kaizen_bursts": 6
},
"implementation_timeline": "12 months"
}
Best Practices
- Walk the process - Go to gemba, observe actual flow
- Use pencil first - Iterate on paper before digital
- Include all information flows - Not just material
- Calculate timeline - Lead time vs process time
- Involve the team - Get operator input
- Start with current state - Understand before improving
Constraints
- Maps reflect actual state, not ideal
- Update maps as processes change
- Document all data sources
- Validate with process owners