@forwardimpact/pathway 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (227) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +104 -0
  3. package/app/commands/agent.js +430 -0
  4. package/app/commands/behaviour.js +61 -0
  5. package/app/commands/command-factory.js +211 -0
  6. package/app/commands/discipline.js +58 -0
  7. package/app/commands/driver.js +94 -0
  8. package/app/commands/grade.js +60 -0
  9. package/app/commands/index.js +20 -0
  10. package/app/commands/init.js +67 -0
  11. package/app/commands/interview.js +68 -0
  12. package/app/commands/job.js +157 -0
  13. package/app/commands/progress.js +77 -0
  14. package/app/commands/questions.js +179 -0
  15. package/app/commands/serve.js +143 -0
  16. package/app/commands/site.js +121 -0
  17. package/app/commands/skill.js +76 -0
  18. package/app/commands/stage.js +129 -0
  19. package/app/commands/track.js +70 -0
  20. package/app/components/action-buttons.js +66 -0
  21. package/app/components/behaviour-profile.js +53 -0
  22. package/app/components/builder.js +341 -0
  23. package/app/components/card.js +98 -0
  24. package/app/components/checklist.js +145 -0
  25. package/app/components/comparison-radar.js +237 -0
  26. package/app/components/detail.js +230 -0
  27. package/app/components/error-page.js +72 -0
  28. package/app/components/grid.js +109 -0
  29. package/app/components/list.js +120 -0
  30. package/app/components/modifier-table.js +142 -0
  31. package/app/components/nav.js +64 -0
  32. package/app/components/progression-table.js +320 -0
  33. package/app/components/radar-chart.js +102 -0
  34. package/app/components/skill-matrix.js +97 -0
  35. package/app/css/base.css +56 -0
  36. package/app/css/bundles/app.css +40 -0
  37. package/app/css/bundles/handout.css +43 -0
  38. package/app/css/bundles/slides.css +40 -0
  39. package/app/css/components/badges.css +215 -0
  40. package/app/css/components/buttons.css +101 -0
  41. package/app/css/components/forms.css +105 -0
  42. package/app/css/components/layout.css +209 -0
  43. package/app/css/components/nav.css +166 -0
  44. package/app/css/components/progress.css +166 -0
  45. package/app/css/components/states.css +82 -0
  46. package/app/css/components/surfaces.css +243 -0
  47. package/app/css/components/tables.css +362 -0
  48. package/app/css/components/typography.css +122 -0
  49. package/app/css/components/utilities.css +41 -0
  50. package/app/css/pages/agent-builder.css +391 -0
  51. package/app/css/pages/assessment-results.css +453 -0
  52. package/app/css/pages/detail.css +59 -0
  53. package/app/css/pages/interview-builder.css +148 -0
  54. package/app/css/pages/job-builder.css +134 -0
  55. package/app/css/pages/landing.css +92 -0
  56. package/app/css/pages/lifecycle.css +118 -0
  57. package/app/css/pages/progress-builder.css +274 -0
  58. package/app/css/pages/self-assessment.css +502 -0
  59. package/app/css/reset.css +50 -0
  60. package/app/css/tokens.css +153 -0
  61. package/app/css/views/handout.css +30 -0
  62. package/app/css/views/print.css +608 -0
  63. package/app/css/views/slide-animations.css +113 -0
  64. package/app/css/views/slide-base.css +330 -0
  65. package/app/css/views/slide-sections.css +597 -0
  66. package/app/css/views/slide-tables.css +275 -0
  67. package/app/formatters/agent/dom.js +540 -0
  68. package/app/formatters/agent/profile.js +133 -0
  69. package/app/formatters/agent/skill.js +58 -0
  70. package/app/formatters/behaviour/dom.js +91 -0
  71. package/app/formatters/behaviour/markdown.js +54 -0
  72. package/app/formatters/behaviour/shared.js +64 -0
  73. package/app/formatters/discipline/dom.js +187 -0
  74. package/app/formatters/discipline/markdown.js +87 -0
  75. package/app/formatters/discipline/shared.js +131 -0
  76. package/app/formatters/driver/dom.js +103 -0
  77. package/app/formatters/driver/shared.js +92 -0
  78. package/app/formatters/grade/dom.js +208 -0
  79. package/app/formatters/grade/markdown.js +94 -0
  80. package/app/formatters/grade/shared.js +86 -0
  81. package/app/formatters/index.js +50 -0
  82. package/app/formatters/interview/dom.js +97 -0
  83. package/app/formatters/interview/markdown.js +66 -0
  84. package/app/formatters/interview/shared.js +332 -0
  85. package/app/formatters/job/description.js +176 -0
  86. package/app/formatters/job/dom.js +411 -0
  87. package/app/formatters/job/markdown.js +102 -0
  88. package/app/formatters/progress/dom.js +135 -0
  89. package/app/formatters/progress/markdown.js +86 -0
  90. package/app/formatters/progress/shared.js +339 -0
  91. package/app/formatters/questions/json.js +43 -0
  92. package/app/formatters/questions/markdown.js +303 -0
  93. package/app/formatters/questions/shared.js +274 -0
  94. package/app/formatters/questions/yaml.js +76 -0
  95. package/app/formatters/shared.js +71 -0
  96. package/app/formatters/skill/dom.js +168 -0
  97. package/app/formatters/skill/markdown.js +109 -0
  98. package/app/formatters/skill/shared.js +125 -0
  99. package/app/formatters/stage/dom.js +135 -0
  100. package/app/formatters/stage/index.js +12 -0
  101. package/app/formatters/stage/shared.js +111 -0
  102. package/app/formatters/track/dom.js +128 -0
  103. package/app/formatters/track/markdown.js +105 -0
  104. package/app/formatters/track/shared.js +181 -0
  105. package/app/handout-main.js +421 -0
  106. package/app/handout.html +21 -0
  107. package/app/index.html +59 -0
  108. package/app/lib/card-mappers.js +173 -0
  109. package/app/lib/cli-output.js +270 -0
  110. package/app/lib/error-boundary.js +70 -0
  111. package/app/lib/errors.js +49 -0
  112. package/app/lib/form-controls.js +47 -0
  113. package/app/lib/job-cache.js +86 -0
  114. package/app/lib/markdown.js +114 -0
  115. package/app/lib/radar.js +866 -0
  116. package/app/lib/reactive.js +77 -0
  117. package/app/lib/render.js +212 -0
  118. package/app/lib/router-core.js +160 -0
  119. package/app/lib/router-pages.js +16 -0
  120. package/app/lib/router-slides.js +202 -0
  121. package/app/lib/state.js +148 -0
  122. package/app/lib/utils.js +14 -0
  123. package/app/lib/yaml-loader.js +327 -0
  124. package/app/main.js +213 -0
  125. package/app/model/agent.js +702 -0
  126. package/app/model/checklist.js +137 -0
  127. package/app/model/derivation.js +699 -0
  128. package/app/model/index-generator.js +71 -0
  129. package/app/model/interview.js +539 -0
  130. package/app/model/job.js +222 -0
  131. package/app/model/levels.js +591 -0
  132. package/app/model/loader.js +564 -0
  133. package/app/model/matching.js +858 -0
  134. package/app/model/modifiers.js +158 -0
  135. package/app/model/profile.js +266 -0
  136. package/app/model/progression.js +507 -0
  137. package/app/model/validation.js +1385 -0
  138. package/app/pages/agent-builder.js +823 -0
  139. package/app/pages/assessment-results.js +507 -0
  140. package/app/pages/behaviour.js +70 -0
  141. package/app/pages/discipline.js +71 -0
  142. package/app/pages/driver.js +106 -0
  143. package/app/pages/grade.js +117 -0
  144. package/app/pages/interview-builder.js +50 -0
  145. package/app/pages/interview.js +304 -0
  146. package/app/pages/job-builder.js +50 -0
  147. package/app/pages/job.js +58 -0
  148. package/app/pages/landing.js +305 -0
  149. package/app/pages/progress-builder.js +58 -0
  150. package/app/pages/progress.js +495 -0
  151. package/app/pages/self-assessment.js +729 -0
  152. package/app/pages/skill.js +113 -0
  153. package/app/pages/stage.js +231 -0
  154. package/app/pages/track.js +69 -0
  155. package/app/slide-main.js +360 -0
  156. package/app/slides/behaviour.js +38 -0
  157. package/app/slides/chapter.js +82 -0
  158. package/app/slides/discipline.js +40 -0
  159. package/app/slides/driver.js +39 -0
  160. package/app/slides/grade.js +32 -0
  161. package/app/slides/index.js +198 -0
  162. package/app/slides/interview.js +58 -0
  163. package/app/slides/job.js +55 -0
  164. package/app/slides/overview.js +126 -0
  165. package/app/slides/progress.js +83 -0
  166. package/app/slides/skill.js +40 -0
  167. package/app/slides/track.js +39 -0
  168. package/app/slides.html +56 -0
  169. package/app/types.js +147 -0
  170. package/bin/pathway.js +489 -0
  171. package/examples/agents/.claude/skills/architecture-design/SKILL.md +88 -0
  172. package/examples/agents/.claude/skills/cloud-platforms/SKILL.md +90 -0
  173. package/examples/agents/.claude/skills/code-quality-review/SKILL.md +67 -0
  174. package/examples/agents/.claude/skills/data-modeling/SKILL.md +99 -0
  175. package/examples/agents/.claude/skills/developer-experience/SKILL.md +99 -0
  176. package/examples/agents/.claude/skills/devops-cicd/SKILL.md +96 -0
  177. package/examples/agents/.claude/skills/full-stack-development/SKILL.md +90 -0
  178. package/examples/agents/.claude/skills/knowledge-management/SKILL.md +100 -0
  179. package/examples/agents/.claude/skills/pattern-generalization/SKILL.md +102 -0
  180. package/examples/agents/.claude/skills/sre-practices/SKILL.md +117 -0
  181. package/examples/agents/.claude/skills/technical-debt-management/SKILL.md +123 -0
  182. package/examples/agents/.claude/skills/technical-writing/SKILL.md +129 -0
  183. package/examples/agents/.github/agents/se-platform-code.agent.md +181 -0
  184. package/examples/agents/.github/agents/se-platform-plan.agent.md +178 -0
  185. package/examples/agents/.github/agents/se-platform-review.agent.md +113 -0
  186. package/examples/agents/.vscode/settings.json +8 -0
  187. package/examples/behaviours/_index.yaml +8 -0
  188. package/examples/behaviours/outcome_ownership.yaml +44 -0
  189. package/examples/behaviours/polymathic_knowledge.yaml +42 -0
  190. package/examples/behaviours/precise_communication.yaml +40 -0
  191. package/examples/behaviours/relentless_curiosity.yaml +38 -0
  192. package/examples/behaviours/systems_thinking.yaml +41 -0
  193. package/examples/capabilities/_index.yaml +8 -0
  194. package/examples/capabilities/business.yaml +251 -0
  195. package/examples/capabilities/delivery.yaml +352 -0
  196. package/examples/capabilities/people.yaml +100 -0
  197. package/examples/capabilities/reliability.yaml +318 -0
  198. package/examples/capabilities/scale.yaml +394 -0
  199. package/examples/disciplines/_index.yaml +5 -0
  200. package/examples/disciplines/data_engineering.yaml +76 -0
  201. package/examples/disciplines/software_engineering.yaml +76 -0
  202. package/examples/drivers.yaml +205 -0
  203. package/examples/framework.yaml +58 -0
  204. package/examples/grades.yaml +118 -0
  205. package/examples/questions/behaviours/outcome_ownership.yaml +52 -0
  206. package/examples/questions/behaviours/polymathic_knowledge.yaml +48 -0
  207. package/examples/questions/behaviours/precise_communication.yaml +55 -0
  208. package/examples/questions/behaviours/relentless_curiosity.yaml +51 -0
  209. package/examples/questions/behaviours/systems_thinking.yaml +53 -0
  210. package/examples/questions/skills/architecture_design.yaml +54 -0
  211. package/examples/questions/skills/cloud_platforms.yaml +48 -0
  212. package/examples/questions/skills/code_quality.yaml +49 -0
  213. package/examples/questions/skills/data_modeling.yaml +46 -0
  214. package/examples/questions/skills/devops.yaml +47 -0
  215. package/examples/questions/skills/full_stack_development.yaml +48 -0
  216. package/examples/questions/skills/sre_practices.yaml +44 -0
  217. package/examples/questions/skills/stakeholder_management.yaml +49 -0
  218. package/examples/questions/skills/team_collaboration.yaml +43 -0
  219. package/examples/questions/skills/technical_writing.yaml +43 -0
  220. package/examples/self-assessments.yaml +66 -0
  221. package/examples/stages.yaml +76 -0
  222. package/examples/tracks/_index.yaml +6 -0
  223. package/examples/tracks/manager.yaml +53 -0
  224. package/examples/tracks/platform.yaml +54 -0
  225. package/examples/tracks/sre.yaml +58 -0
  226. package/examples/vscode-settings.yaml +22 -0
  227. package/package.json +68 -0
@@ -0,0 +1,394 @@
1
+ name: Scale
2
+ emoji: 📐
3
+ displayOrder: 4
4
+ description: |
5
+ Building systems that grow gracefully.
6
+ Encompasses architecture, code quality, testing, performance,
7
+ and technical decision-making.
8
+ transitionChecklists:
9
+ plan_to_code:
10
+ foundational:
11
+ - Architectural patterns are identified
12
+ - Coding standards are understood
13
+ working:
14
+ - Technical approach considers scalability
15
+ - Design trade-offs are documented
16
+ - Testing strategy is defined
17
+ practitioner:
18
+ - Architecture aligns with cross-team systems
19
+ - Technical debt impact is assessed
20
+ - Performance requirements are specified
21
+ expert:
22
+ - Architecture follows enterprise patterns
23
+ - Strategic technical decisions are documented
24
+ - Long-term maintainability is considered
25
+ code_to_review:
26
+ foundational:
27
+ - Code follows team style guide
28
+ - Basic tests exist
29
+ - Code is readable and well-structured
30
+ working:
31
+ - Error handling is comprehensive
32
+ - Edge cases are tested
33
+ - Performance implications are considered
34
+ practitioner:
35
+ - Architectural patterns are documented
36
+ - Security review is completed
37
+ - Backward compatibility is verified
38
+ expert:
39
+ - Cross-cutting concerns are addressed
40
+ - Solution can scale to enterprise needs
41
+ - Technical decisions enable future evolution
42
+ professionalResponsibilities:
43
+ awareness:
44
+ Follow established architectural patterns and coding standards with guidance
45
+ from senior engineers
46
+ foundational:
47
+ Contribute to scalable designs, write quality code with appropriate tests,
48
+ and understand architectural trade-offs
49
+ working:
50
+ Design scalable components, make sound architectural decisions, ensure code
51
+ quality, and review others' designs
52
+ practitioner:
53
+ Lead architectural decisions for complex systems across teams, establish
54
+ quality standards for your area, mentor engineers on architecture, and own
55
+ technical debt strategy
56
+ expert:
57
+ Define technical standards across the business unit, guide enterprise
58
+ architecture, be recognized externally for architectural expertise, and
59
+ drive innovation
60
+ managementResponsibilities:
61
+ awareness:
62
+ Understand technical architecture decisions and their resource and timeline
63
+ implications
64
+ foundational:
65
+ Support team technical decisions, ensure alignment with architectural
66
+ standards, and escalate technical risks
67
+ working:
68
+ Facilitate architectural discussions, manage technical debt prioritization,
69
+ champion quality, and balance technical investment with delivery
70
+ practitioner:
71
+ Drive technical excellence across teams, establish quality standards for
72
+ your area, own cross-team technical direction, and advise on architecture
73
+ trade-offs
74
+ expert:
75
+ Shape technical strategy across the business unit, guide enterprise
76
+ architecture governance, and represent technical priorities at executive
77
+ level
78
+ skills:
79
+ - id: cloud_platforms
80
+ name: Cloud Platforms
81
+ human:
82
+ description:
83
+ Working effectively with cloud infrastructure (AWS, Azure, GCP)
84
+ levelDescriptions:
85
+ awareness:
86
+ You understand cloud computing concepts (IaaS, PaaS, SaaS) and can use
87
+ cloud services through consoles and defined interfaces with guidance.
88
+ foundational:
89
+ You deploy applications to cloud platforms and use common services
90
+ (compute, storage, databases, queues). You understand cloud pricing
91
+ and basic security configuration.
92
+ working:
93
+ You design cloud-native solutions, manage infrastructure as code,
94
+ implement security best practices, and make informed service
95
+ selections. You troubleshoot cloud-specific issues.
96
+ practitioner:
97
+ You architect multi-region, highly available solutions across teams.
98
+ You optimize for cost and performance, lead cloud migrations for your
99
+ area, and mentor engineers on cloud architecture patterns.
100
+ expert:
101
+ You shape cloud strategy across the business unit. You solve
102
+ large-scale cloud challenges, define cloud governance, and are
103
+ recognized as an authority on cloud architecture.
104
+ agent:
105
+ name: cloud-platforms
106
+ description: >
107
+ Guide for working with cloud infrastructure and services. Use when
108
+
109
+ deploying to cloud, selecting cloud services, configuring
110
+ infrastructure,
111
+
112
+ or solving cloud-specific challenges.
113
+ body: |
114
+ # Cloud Platforms
115
+
116
+ ## When to use this skill
117
+
118
+ Use this skill when:
119
+ - Deploying applications to cloud environments
120
+ - Selecting appropriate cloud services
121
+ - Configuring cloud infrastructure
122
+ - Optimizing cloud costs and performance
123
+ - Implementing cloud security best practices
124
+
125
+ ## Service Categories
126
+
127
+ ### Compute
128
+ - **VMs/EC2**: Full control, any workload
129
+ - **Containers/ECS/GKE**: Portable, scalable applications
130
+ - **Serverless/Lambda**: Event-driven, pay-per-use
131
+ - **Kubernetes**: Container orchestration at scale
132
+
133
+ ### Storage
134
+ - **Object Storage (S3/GCS)**: Unstructured data, backups, static assets
135
+ - **Block Storage (EBS)**: VM disks, databases
136
+ - **File Storage (EFS)**: Shared file systems
137
+ - **Archive (Glacier)**: Long-term, infrequent access
138
+
139
+ ### Databases
140
+ - **Managed SQL (RDS/Cloud SQL)**: Relational, ACID transactions
141
+ - **NoSQL (DynamoDB/Firestore)**: Flexible schema, high scale
142
+ - **Cache (ElastiCache/Memorystore)**: Low-latency data access
143
+ - **Data Warehouse (Redshift/BigQuery)**: Analytics at scale
144
+
145
+ ### Messaging
146
+ - **Queues (SQS/Cloud Tasks)**: Decoupled processing
147
+ - **Pub/Sub (SNS/Cloud Pub/Sub)**: Event distribution
148
+ - **Streaming (Kinesis/Dataflow)**: Real-time data processing
149
+
150
+ ## Cloud-Native Design
151
+
152
+ ### Principles
153
+ - Design for failure (everything fails eventually)
154
+ - Use managed services when possible
155
+ - Automate everything (infrastructure as code)
156
+ - Monitor and alert on all services
157
+
158
+ ### High Availability
159
+ - Deploy across multiple availability zones
160
+ - Use load balancers for traffic distribution
161
+ - Implement health checks and auto-healing
162
+ - Design for graceful degradation
163
+
164
+ ### Security
165
+ - Principle of least privilege for IAM
166
+ - Encrypt data at rest and in transit
167
+ - Use security groups and network policies
168
+ - Rotate credentials regularly
169
+
170
+ ## Cost Optimization
171
+
172
+ - Right-size instances based on actual usage
173
+ - Use reserved instances for predictable workloads
174
+ - Leverage spot/preemptible instances for fault-tolerant work
175
+ - Set up billing alerts and budgets
176
+ - Delete unused resources
177
+
178
+ ## Cloud Checklist
179
+
180
+ - [ ] Service selection matches requirements
181
+ - [ ] Multi-AZ deployment for availability
182
+ - [ ] Security groups properly configured
183
+ - [ ] IAM follows least privilege
184
+ - [ ] Data encrypted at rest and in transit
185
+ - [ ] Monitoring and alerting in place
186
+ - [ ] Cost controls established
187
+ - [ ] Infrastructure defined as code
188
+ - id: code_quality
189
+ name: Code Quality & Review
190
+ human:
191
+ description:
192
+ Writing and reviewing clean, maintainable, tested, and well-documented
193
+ code. In the AI era, code review becomes more important than code
194
+ generation—every line must be understood and verified regardless of its
195
+ source.
196
+ levelDescriptions:
197
+ awareness:
198
+ You follow team coding conventions and style guides with guidance. You
199
+ understand why code quality matters and can run linters and tests
200
+ others have written.
201
+ foundational:
202
+ You write readable, well-structured code. You use linting tools, write
203
+ basic unit tests, and participate constructively in code reviews—both
204
+ giving and receiving feedback.
205
+ working:
206
+ You produce consistently high-quality, well-tested code. You review
207
+ AI-generated code critically and never ship code you don't fully
208
+ understand. You identify edge cases and ensure adequate test coverage.
209
+ practitioner:
210
+ You establish and enforce quality standards across teams in your area.
211
+ You mentor engineers on effective code review, ensure verification
212
+ depth for AI-assisted development, and drive testing strategies.
213
+ expert:
214
+ You shape coding standards and quality practices across the business
215
+ unit. You champion code review as a critical engineering skill, define
216
+ AI-assisted development guidelines, and are recognized for quality
217
+ engineering.
218
+ agent:
219
+ name: code-quality-review
220
+ description: |
221
+ Guide for reviewing code quality, identifying issues, and suggesting
222
+ improvements. Use when asked to review code, check for best practices,
223
+ or conduct code reviews.
224
+ body: |
225
+ # Code Quality & Review
226
+
227
+ ## When to use this skill
228
+
229
+ Use this skill when:
230
+ - Reviewing code for quality issues
231
+ - Checking code against best practices
232
+ - Conducting or assisting with code reviews
233
+ - Verifying AI-generated code before committing
234
+
235
+ ## Review Process
236
+
237
+ ### 1. Correctness First
238
+
239
+ Before anything else, verify the code does what it claims:
240
+ - Does it implement the intended behavior?
241
+ - Are there logic errors or off-by-one bugs?
242
+ - Does it handle all specified requirements?
243
+ - Are error conditions handled appropriately?
244
+
245
+ ### 2. Test Coverage
246
+
247
+ Check that changes are properly tested:
248
+ - Unit tests for new functionality
249
+ - Edge cases and error conditions
250
+ - Integration tests where appropriate
251
+ - Tests are readable and maintainable
252
+
253
+ ### 3. Maintainability
254
+
255
+ Evaluate long-term code health:
256
+ - Clear naming (variables, functions, classes)
257
+ - Appropriate abstraction levels
258
+ - No unnecessary duplication (DRY)
259
+ - Single responsibility principle applied
260
+
261
+ ### 4. Code Style
262
+
263
+ Verify consistency with project standards:
264
+ - Follows project coding conventions
265
+ - Consistent formatting and indentation
266
+ - Appropriate comments for non-obvious logic
267
+ - Documentation updated if needed
268
+
269
+ ## Quality Checklist
270
+
271
+ - [ ] Code compiles and passes all tests
272
+ - [ ] Changes are covered by tests
273
+ - [ ] No obvious security vulnerabilities
274
+ - [ ] Error handling is appropriate
275
+ - [ ] Code follows project conventions
276
+ - [ ] No unnecessary complexity
277
+ - [ ] Documentation updated if needed
278
+ - [ ] No code you don't fully understand
279
+ - id: data_modeling
280
+ name: Data Modeling
281
+ human:
282
+ description:
283
+ Designing data structures and database schemas that support application
284
+ needs
285
+ levelDescriptions:
286
+ awareness:
287
+ You understand the difference between relational and non-relational
288
+ data stores. You can create basic schemas from specifications with
289
+ guidance.
290
+ foundational:
291
+ You design normalized schemas for straightforward use cases and
292
+ understand indexing basics. You write efficient queries for common
293
+ patterns.
294
+ working:
295
+ You create efficient data models that balance normalization with query
296
+ performance. You optimize queries, handle schema migrations safely,
297
+ and choose appropriate storage technologies.
298
+ practitioner:
299
+ You design complex data architectures spanning multiple systems across
300
+ teams. You make strategic trade-offs between consistency, performance,
301
+ and maintainability. You mentor engineers in your area on data
302
+ modeling best practices.
303
+ expert:
304
+ You define data modeling standards across the business unit. You
305
+ handle extreme scale and complex distributed data challenges, innovate
306
+ on approaches, and are recognized as a data architecture authority.
307
+ agent:
308
+ name: data-modeling
309
+ description: |
310
+ Guide for designing database schemas, data structures, and data
311
+ architectures. Use when designing tables, optimizing queries, or
312
+ making decisions about data storage technologies.
313
+ body: |
314
+ # Data Modeling
315
+
316
+ ## When to use this skill
317
+
318
+ Use this skill when:
319
+ - Designing database schemas
320
+ - Optimizing query performance
321
+ - Choosing storage technologies
322
+ - Planning schema migrations
323
+ - Balancing normalization with performance
324
+
325
+ ## Schema Design
326
+
327
+ ### Normalization
328
+ - **1NF**: Atomic values, no repeating groups
329
+ - **2NF**: No partial dependencies
330
+ - **3NF**: No transitive dependencies
331
+ - Normalize first, then denormalize strategically
332
+
333
+ ### Denormalization Trade-offs
334
+ - Improves read performance
335
+ - Complicates writes and updates
336
+ - Risk of data inconsistency
337
+ - Use for read-heavy workloads
338
+
339
+ ## Data Store Selection
340
+
341
+ ### Relational (SQL)
342
+ - Strong consistency requirements
343
+ - Complex queries and joins
344
+ - ACID transactions needed
345
+ - Well-defined schema
346
+
347
+ ### Document (NoSQL)
348
+ - Flexible, evolving schemas
349
+ - Hierarchical data
350
+ - Horizontal scaling priority
351
+ - Read-heavy workloads
352
+
353
+ ### Key-Value
354
+ - Simple lookup patterns
355
+ - Extreme performance needs
356
+ - Caching layer
357
+ - Session storage
358
+
359
+ ### Time Series
360
+ - Temporal data patterns
361
+ - High write throughput
362
+ - Time-based queries
363
+ - Sensor and metrics data
364
+
365
+ ## Indexing Strategy
366
+
367
+ ### When to Index
368
+ - Columns in WHERE clauses
369
+ - Join columns
370
+ - ORDER BY columns
371
+ - High-cardinality columns
372
+
373
+ ### Index Trade-offs
374
+ - Faster reads, slower writes
375
+ - Storage overhead
376
+ - Maintenance cost
377
+ - Query planner complexity
378
+
379
+ ## Schema Migrations
380
+
381
+ ### Safe Migration Practices
382
+ - Make changes backward compatible
383
+ - Add columns before using them
384
+ - Migrate data before dropping columns
385
+ - Test migrations on production-like data
386
+
387
+ ## Data Modeling Checklist
388
+
389
+ - [ ] Requirements understood
390
+ - [ ] Appropriate storage technology selected
391
+ - [ ] Schema normalized appropriately
392
+ - [ ] Indexes support query patterns
393
+ - [ ] Migration plan is safe
394
+ - [ ] Backward compatibility maintained
@@ -0,0 +1,5 @@
1
+ # Auto-generated index for browser loading
2
+ # Do not edit manually - regenerate with: npx pathway --generate-index
3
+ files:
4
+ - data_engineering
5
+ - software_engineering
@@ -0,0 +1,76 @@
1
+ # Discipline: Data Engineering
2
+ # Designs and builds data infrastructure
3
+
4
+ specialization: Data Engineering
5
+ roleTitle: Data Engineer
6
+
7
+ # Shared content (human and agent)
8
+ description:
9
+ Designs and builds data integration, storage systems, and data infrastructure
10
+ to enable analytics and AI. Masters the art of gaining access to enterprise
11
+ data and making it usable.
12
+
13
+ # Derivation inputs
14
+ coreSkills:
15
+ - data_modeling
16
+ - architecture_design
17
+ - cloud_platforms
18
+ supportingSkills:
19
+ - code_quality
20
+ - full_stack_development
21
+ - devops
22
+ - sre_practices
23
+ broadSkills:
24
+ - stakeholder_management
25
+ - technical_writing
26
+ - team_collaboration
27
+ behaviourModifiers:
28
+ systems_thinking: 1
29
+ outcome_ownership: 1
30
+ relentless_curiosity: 1
31
+
32
+ # Human-specific content
33
+ human:
34
+ professionalRoleSummary:
35
+ We are seeking a skilled {roleTitle} who will design and build data
36
+ integration, storage systems, and data infrastructure that enable analytics
37
+ and AI capabilities. In this role, you will master the art of gaining access
38
+ to enterprise data and making it usable for decision-making across the
39
+ organization.
40
+ managementRoleSummary:
41
+ We are seeking an experienced {specialization} leader to build and lead
42
+ high-performing data engineering teams. In this role, you will drive the
43
+ strategic direction of our data infrastructure while developing talent and
44
+ ensuring data capabilities meet business needs. You will champion data
45
+ quality, governance, and the democratization of data across the
46
+ organization.
47
+
48
+ # Agent-specific content
49
+ agent:
50
+ coreInstructions: |
51
+ You are a {roleTitle} agent. Your focus is designing and building
52
+ data integration, storage systems, and data infrastructure that enables
53
+ analytics and AI capabilities.
54
+
55
+ Before making changes:
56
+ 1. Understand the data sources and their quality characteristics
57
+ 2. Map data lineage and dependencies
58
+ 3. Consider performance implications for downstream consumers
59
+
60
+ Data quality is paramount. Always validate data at ingestion points and
61
+ document schema assumptions. Treat undocumented schemas with suspicion.
62
+
63
+ ## Delegation
64
+
65
+ When facing tasks outside your expertise, use `runSubagent` to delegate:
66
+ - Statistical analysis or model validation → data science subagent
67
+ - Application code changes → software engineering subagent
68
+ - Infrastructure or deployment → SRE subagent
69
+
70
+ Subagents run in isolated context. Provide clear task descriptions and
71
+ specify what information to return.
72
+ constraints:
73
+ - Ignoring data quality issues
74
+ - Creating pipelines without proper error handling
75
+ - Undocumented schema changes
76
+ - Tight coupling between data producers and consumers
@@ -0,0 +1,76 @@
1
+ # Discipline: Software Engineering
2
+ # Builds and maintains software systems
3
+
4
+ specialization: Software Engineering
5
+ roleTitle: Software Engineer
6
+
7
+ # Shared content (human and agent)
8
+ description:
9
+ Builds and maintains software systems, focusing on code quality, architecture,
10
+ and reliable delivery of business value. In the AI era, emphasizes
11
+ verification and review of AI-generated code.
12
+
13
+ # Derivation inputs
14
+ coreSkills:
15
+ - architecture_design
16
+ - code_quality
17
+ - full_stack_development
18
+ supportingSkills:
19
+ - devops
20
+ - cloud_platforms
21
+ - sre_practices
22
+ broadSkills:
23
+ - data_modeling
24
+ - stakeholder_management
25
+ - technical_writing
26
+ - team_collaboration
27
+ behaviourModifiers:
28
+ outcome_ownership: 1
29
+ systems_thinking: 1
30
+ relentless_curiosity: 1
31
+
32
+ # Human-specific content
33
+ human:
34
+ professionalRoleSummary:
35
+ We are seeking a skilled {roleTitle} who will design, build, and maintain
36
+ software systems that deliver business value. In this role, you will focus
37
+ on code quality, architecture decisions, and reliable delivery while
38
+ leveraging AI tools to enhance productivity. You will verify and review
39
+ AI-generated code to ensure it meets our quality standards.
40
+ managementRoleSummary:
41
+ We are seeking an experienced {specialization} leader to build and lead
42
+ high-performing software engineering teams. In this role, you will drive
43
+ technical excellence while developing talent and ensuring delivery of
44
+ business value. You will set technical direction, create space for
45
+ innovation, and model the ownership behaviors that define our engineering
46
+ culture.
47
+
48
+ # Agent-specific content
49
+ agent:
50
+ coreInstructions: |
51
+ You are a {roleTitle} agent. Your primary focus is writing
52
+ correct, maintainable, well-tested code.
53
+
54
+ Before making changes:
55
+ 1. Understand the existing architecture and patterns
56
+ 2. Identify test coverage requirements
57
+ 3. Consider backward compatibility implications
58
+
59
+ Code review is more important than code generation. Every line of code
60
+ you produce must be understood and verified. Never ship code without
61
+ comprehensive testing.
62
+
63
+ ## Delegation
64
+
65
+ When facing tasks outside your expertise, use `runSubagent` to delegate:
66
+ - Data modeling or statistical analysis → data science subagent
67
+ - Security assessment or threat modeling → research subagent
68
+ - Complex debugging across unfamiliar systems → research subagent
69
+
70
+ Subagents run in isolated context. Provide clear task descriptions and
71
+ specify what information to return.
72
+ constraints:
73
+ - Committing code without running tests
74
+ - Making changes without understanding the existing codebase
75
+ - Ignoring error handling and edge cases
76
+ - Over-engineering simple solutions