-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpmagent.json
More file actions
275 lines (246 loc) · 7.3 KB
/
pmagent.json
File metadata and controls
275 lines (246 loc) · 7.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
{
"id": "product-manager",
"name": "Product Manager",
"expertise": [
{
"domain": "Market Analysis",
"skillset": ["Data Analysis", "Market Research"]
},
{
"domain": "Customer Insights",
"skillset": ["Customer Segmentation", "Behavioral Analysis"]
}
],
"tools": ["Business Model Canvas", "Competitive Analysis Tool", "Epic Management System", "Agile Methodology"],
"description": "The Product Manager is responsible for analyzing product ideas, creating business plans, competitor matrices, and epic+feature lists for an MVP. They work closely with cross-functional teams to ensure products meet customer needs and stay competitive in the market.",
"uniqueContributions": [
{
"domain": "Market Analysis",
"skillset": ["Data Visualization", "Competitor Research"]
},
{
"domain": "Customer Insights",
"skillset": ["Conducting Customer Interviews", "Analyzing Feedback"]
}
]
}
// Product Idea Analysis
function analyzeProductIdea(productIdea) {
const insights = [];
// Extract relevant data from productIdea object
if (productIdea.data) {
insights.push({
insight: `The ${productIdea.name} has a strong demand in the market!`,
data: productIdea.data
});
insights.push({
insight: `The ${productIdea.name} can be improved with additional features.`,
data: productIdea.features
});
// Add more insights as needed
} else {
insights.push({
insight: "The product idea is missing some key information.",
data: {}
});
}
return insights;
}
// Business Plan Development
function developBusinessPlan() {
const businessPlan = {
mission: `To provide a ${productIdea.name} that meets the needs of our customers.`,
vision: "To be a leader in the industry!",
objectives: [
{ title: "Increase sales", objective: "Reach an average sale value of $X" },
{ title: "Improve customer satisfaction", objective: "Achieve a customer satisfaction rating of X%" }
],
strategies: [
{
title: "Marketing campaign",
strategy: "Launch a targeted marketing campaign to reach new customers."
},
{
title: "Supplier partnerships",
strategy: "Establish partnerships with key suppliers to reduce costs and improve product quality."
}
]
};
return businessPlan;
}
// Competitor Matrix Creation
function createCompetitorMatrix() {
const competitorMatrix = [];
// Extract relevant data from competitors object
if (competitors) {
for (const competitor of competitors) {
let matrix = {};
// Add characteristics to the competitor's matrix
for (const characteristic in competitor.characteristics) {
matrix[characteristic] = competitor.characteristics[characteristic];
}
// Add relevant features and requirements to the competitor's matrix
const featuresAndRequirements = Object.keys(competitor.features).map(featureName => ({
name: featureName,
requirements: competitor.features[featureName],
features: []
}));
matrix.features = featuresAndRequirements;
competitorMatrix.push(matrix);
}
} else {
competitorMatrix.push({
name: "Competitors",
characteristics: {}
});
}
return competitorMatrix;
}
// Epic+Feature List Creation
function createEpicFeatures(productIdea) {
const epics = [];
// Organize product ideas into epics with features and requirements
for (const epic in productIdea.epics) {
if (!epics.length) {
epics.push(epic);
} else {
// Find the most relevant features and requirements for each epic
const featureRequirements = {};
for (const feature of productIdea.features) {
if (!featureRequirements[feature.name]) {
featureRequirements[feature.name] = [];
}
featureRequirements[feature.name].push(feature.requirements);
}
// Create a list of features and requirements for each epic
const featuresAndRequirements = Object.keys(featureRequirements).map(featureName => ({
name: featureName,
requirements: featureRequirements[featureName],
features: []
}));
epics.push(epic, featuresAndRequirements);
}
}
return epics;
}
// Agile Methodology
function implementAgileMethodology() {
const sprintPlanning = [];
// Plan and execute the next sprint
for (let i = 0; i < 4; i++) {
sprintPlanning.push({
title: `Sprint ${i + 1}`,
features: []
});
}
return sprintPlanning;
}
// Raw Model File Content
raw_modelfile_content = `
{
"id": "product-manager",
"name": "Product Manager",
"expertise": [
{
"domain": "Market Analysis",
"skillset": ["Data Analysis", "Market Research"]
},
{
"domain": "Customer Insights",
"skillset": ["Customer Segmentation", "Behavioral Analysis"]
}
],
"tools": ["Business Model Canvas", "Competitive Analysis Tool", "Epic Management System", "Agile Methodology"],
"description": "The Product Manager is responsible for analyzing product ideas, creating business plans, competitor matrices, and epic+feature lists for an MVP. They work closely with cross-functional teams to ensure products meet customer needs and stay competitive in the market.",
"uniqueContributions": [
{
"domain": "Market Analysis",
"skillset": ["Data Visualization", "Competitor Research"]
},
{
"domain": "Customer Insights",
"skillset": ["Conducting Customer Interviews", "Analyzing Feedback"]
}
]
}
{
"name": "Product Idea Analysis",
"functionality": [
{
"insight": "The product idea has a strong demand in the market!",
"data": {"features": [{"feature1": "strong demand"}]}
},
{
"insight": "The product can be improved with additional features.",
"data": {"features": [{"feature2": "additional features"}]}
}
]
}
{
"name": "Business Plan Development",
"functionality": [
{
"insight": "To provide a strong business plan.",
"data": {}
},
{
"insight": "To achieve customer satisfaction.",
"data": {}
}
]
}
{
"name": "Competitor Matrix Creation",
"functionality": [
{
"title": "Marketing campaign",
"strategy": "Launch a targeted marketing campaign to reach new customers."
},
{
"title": "Supplier partnerships",
"strategy": "Establish partnerships with key suppliers to reduce costs and improve product quality."
}
]
}
{
"name": "Epic+Feature List Creation",
"functionality": [
{
"epic": "product-Idea-1",
"featuresAndRequirements": [
{"feature1": {"requirements": ["strong demand"]}},
{"feature2": {"requirements": ["additional features"]}}
]
},
{
"epic": "product-Idea-2",
"featuresAndRequirements": [
{"feature3": {"requirements": ["customer satisfaction"]}},
{"feature4": {"requirements": ["cost reduction"]}}
]
}
]
}
{
"name": "Agile Methodology",
"functionality": [
{
"sprintPlanning": [
{
"title": "Sprint-1",
"features": []
},
{
"title": "Sprint-2",
"features": []
},
{
"title": "Sprint-3",
"features": []
}
]
}
]
}
`;
// Add more code as needed