# lechithinh/ba-claude-skills architecture

> Architecture diagram of the GitHub repository lechithinh/ba-claude-skills, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-15). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/lechithinh/ba-claude-skills
- Repository: https://github.com/lechithinh/ba-claude-skills

## Overview

This repository packages Claude skills for Business Analysts rather than a single application. A BA prompts a method skill for a defined deliverable—such as requirements, user stories, diagrams, or an API contract—and can pair it with domain knowledge to add business rules and scenarios. The principal documented workflow is meeting transcript to requirements; separate skills review requirements, decompose functions, and produce downstream artifacts, but the README does not establish automatic handoffs between them. BPMN modeling also includes executable token-scenario review. Source excerpts show selected BPMN and decomposition tools; other skill internals are represented at their documented directories.

Main entry points: [`skills/functional-decomposition/SKILL.md`](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/functional-decomposition/SKILL.md) (Function Decomposition), [`skills/bpmn-modeling/SKILL.md`](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/bpmn-modeling/SKILL.md) (BPMN Modeling), [`skills/user-story-writer/SKILL.md`](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/user-story-writer/SKILL.md) (User Stories), [`skills/functional-decomposition/scripts/fdlib.py`](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/functional-decomposition/scripts/fdlib.py) (Decomposition Library)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_methods["Analysis Methods"]
  node_meeting["Meeting Analysis<br/>[SKILL.md]"]
  node_requirements["Requirements Review<br/>[SKILL.md]"]
  node_stories["User Stories<br/>[SKILL.md]"]
  node_edgecases["Edge Cases<br/>[SKILL.md]"]
  node_decisions["Decision Tables<br/>[SKILL.md]"]
  node_decisioncheck["Rule Checker<br/>[dt_check.py]"]
  node_apispec["API Contracts<br/>[SKILL.md]"]
  node_screens["Screen Specs<br/>[SKILL.md]"]
end

subgraph group_modeling["Modeling Tools"]
  node_decomposition["Function Decomposition<br/>[SKILL.md]"]
  node_fdlib["Decomposition Library<br/>[fdlib.py]"]
  node_outline["Outline Import<br/>[outline_to_spec.py]"]
  node_fdlint["Decomposition Linter<br/>[fd_lint.py]"]
  node_explorer["Decomposition Explorer"]
  node_fdoutputs["Tree Outputs"]
  node_diagrams["BA Diagrams<br/>[SKILL.md]"]
end

subgraph group_domains["Domain Knowledge"]
  node_domainbank["Banking Pack<br/>[SKILL.md]"]
  node_domainecom["E-commerce Pack<br/>[SKILL.md]"]
  node_otherdomains["Other Domain Packs"]
end

subgraph group_bpmn["BPMN Modeling"]
  node_bpmn["BPMN Modeling<br/>[SKILL.md]"]
  node_bpmnoutputs["BPMN Renderers<br/>[spec_to_bpmn.py]"]
  node_simulation["Token Simulation<br/>[simulate_tokens.py]"]
  node_tokenpage["Token Page"]
  node_tokendemo["Token Demo<br/>[make_token_demo.py]"]
end

node_ba(("Business Analyst"))

node_ba -->|"analyzes transcript"| node_meeting
node_ba -->|"reviews requirements"| node_requirements
node_ba -->|"writes stories"| node_stories
node_ba -->|"reviews scenarios"| node_edgecases
node_ba -->|"tables rules"| node_decisions
node_ba -->|"drafts contract"| node_apispec
node_ba -->|"specifies screens"| node_screens
node_ba -->|"decomposes functions"| node_decomposition
node_ba -->|"creates diagrams"| node_diagrams
node_ba -->|"models process"| node_bpmn
node_ba -->|"adds domain context"| node_domainbank
node_ba -->|"adds domain context"| node_domainecom
node_ba -->|"adds domain context"| node_otherdomains
node_decisions -->|"checks rule gaps"| node_decisioncheck
node_decomposition -->|"imports outline"| node_outline
node_outline -->|"uses"| node_fdlib
node_fdlint -->|"uses"| node_fdlib
node_explorer -->|"uses"| node_fdlib
node_decomposition -->|"validates decomposition"| node_fdlint
node_decomposition -->|"explores decomposition"| node_explorer
node_decomposition -->|"generates diagrams"| node_fdoutputs
node_bpmn -->|"runs scenarios"| node_simulation
node_bpmn -->|"exports diagrams"| node_bpmnoutputs
node_bpmn -->|"builds animation"| node_tokenpage
node_tokenpage -->|"uses traces"| node_simulation
node_tokendemo -->|"uses simulation"| node_simulation
node_bpmn -->|"renders demo"| node_tokendemo
node_domainbank -->|"enriches scenarios"| node_stories
node_domainecom -->|"enriches scenarios"| node_stories

click node_meeting "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/meeting-to-requirements/SKILL.md"
click node_requirements "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/requirements-linter/SKILL.md"
click node_stories "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/user-story-writer/SKILL.md"
click node_edgecases "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/edge-case-finder/SKILL.md"
click node_decisions "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/decision-table/SKILL.md"
click node_decisioncheck "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/decision-table/scripts/dt_check.py"
click node_apispec "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/api-spec/SKILL.md"
click node_screens "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/screen-spec/SKILL.md"
click node_decomposition "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/functional-decomposition/SKILL.md"
click node_fdlib "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/functional-decomposition/scripts/fdlib.py"
click node_outline "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/functional-decomposition/scripts/outline_to_spec.py"
click node_fdlint "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/functional-decomposition/scripts/fd_lint.py"
click node_explorer "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/functional-decomposition/scripts/build_explorer_page.py"
click node_fdoutputs "https://github.com/lechithinh/ba-claude-skills/tree/main/skills/functional-decomposition/scripts"
click node_diagrams "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/ba-diagrams/SKILL.md"
click node_bpmn "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/bpmn-modeling/SKILL.md"
click node_bpmnoutputs "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/bpmn-modeling/scripts/spec_to_bpmn.py"
click node_simulation "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/bpmn-modeling/scripts/simulate_tokens.py"
click node_tokenpage "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/bpmn-modeling/scripts/build_token_page.py"
click node_tokendemo "https://github.com/lechithinh/ba-claude-skills/blob/main/scripts/make_token_demo.py"
click node_domainbank "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/domain-banking/SKILL.md"
click node_domainecom "https://github.com/lechithinh/ba-claude-skills/blob/main/skills/domain-ecommerce/SKILL.md"
click node_otherdomains "https://github.com/lechithinh/ba-claude-skills/tree/main/skills/domain-payments"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_meeting,node_requirements,node_stories,node_edgecases,node_decisions,node_decisioncheck,node_apispec,node_screens toneBlue
class node_decomposition,node_fdlib,node_outline,node_fdlint,node_explorer,node_fdoutputs,node_diagrams toneAmber
class node_domainbank,node_domainecom,node_otherdomains toneMint
class node_bpmn,node_bpmnoutputs,node_simulation,node_tokenpage,node_tokendemo toneRose
class node_ba toneIndigo
```

## Components

### Analysis Methods

- [Meeting Analysis](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/meeting-to-requirements/SKILL.md): `skills/meeting-to-requirements/SKILL.md`
- [Requirements Review](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/requirements-linter/SKILL.md): `skills/requirements-linter/SKILL.md`
- [User Stories](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/user-story-writer/SKILL.md): `skills/user-story-writer/SKILL.md`
- [Edge Cases](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/edge-case-finder/SKILL.md): `skills/edge-case-finder/SKILL.md`
- [Decision Tables](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/decision-table/SKILL.md): `skills/decision-table/SKILL.md`
- [Rule Checker](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/decision-table/scripts/dt_check.py): `skills/decision-table/scripts/dt_check.py`
- [API Contracts](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/api-spec/SKILL.md): `skills/api-spec/SKILL.md`
- [Screen Specs](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/screen-spec/SKILL.md): `skills/screen-spec/SKILL.md`

### Modeling Tools

- [Function Decomposition](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/functional-decomposition/SKILL.md): `skills/functional-decomposition/SKILL.md`
- [Decomposition Library](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/functional-decomposition/scripts/fdlib.py): `skills/functional-decomposition/scripts/fdlib.py`
- [Outline Import](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/functional-decomposition/scripts/outline_to_spec.py): `skills/functional-decomposition/scripts/outline_to_spec.py`
- [Decomposition Linter](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/functional-decomposition/scripts/fd_lint.py): `skills/functional-decomposition/scripts/fd_lint.py`
- [Decomposition Explorer](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/functional-decomposition/scripts/build_explorer_page.py): `skills/functional-decomposition/scripts/build_explorer_page.py`
- [Tree Outputs](https://github.com/lechithinh/ba-claude-skills/tree/main/skills/functional-decomposition/scripts): `skills/functional-decomposition/scripts`
- [BA Diagrams](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/ba-diagrams/SKILL.md): `skills/ba-diagrams/SKILL.md`

### Domain Knowledge

- [Banking Pack](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/domain-banking/SKILL.md): `skills/domain-banking/SKILL.md`
- [E-commerce Pack](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/domain-ecommerce/SKILL.md): `skills/domain-ecommerce/SKILL.md`
- [Other Domain Packs](https://github.com/lechithinh/ba-claude-skills/tree/main/skills/domain-payments): `skills/domain-payments`

### BPMN Modeling

- [BPMN Modeling](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/bpmn-modeling/SKILL.md): `skills/bpmn-modeling/SKILL.md`
- [BPMN Renderers](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/bpmn-modeling/scripts/spec_to_bpmn.py): `skills/bpmn-modeling/scripts/spec_to_bpmn.py`
- [Token Simulation](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/bpmn-modeling/scripts/simulate_tokens.py): `skills/bpmn-modeling/scripts/simulate_tokens.py`
- [Token Page](https://github.com/lechithinh/ba-claude-skills/blob/main/skills/bpmn-modeling/scripts/build_token_page.py): `skills/bpmn-modeling/scripts/build_token_page.py`
- [Token Demo](https://github.com/lechithinh/ba-claude-skills/blob/main/scripts/make_token_demo.py): `scripts/make_token_demo.py`

### Other components

- **Business Analyst**

## Connections

- Business Analyst → Meeting Analysis: analyzes transcript (evidence: `README.md`)
- Business Analyst → Requirements Review: reviews requirements (evidence: `README.md`)
- Business Analyst → User Stories: writes stories (evidence: `README.md`)
- Business Analyst → Edge Cases: reviews scenarios (evidence: `README.md`)
- Business Analyst → Decision Tables: tables rules (evidence: `README.md`)
- Business Analyst → API Contracts: drafts contract (evidence: `README.md`)
- Business Analyst → Screen Specs: specifies screens (evidence: `README.md`)
- Business Analyst → Function Decomposition: decomposes functions (evidence: `README.md`)
- Business Analyst → BA Diagrams: creates diagrams (evidence: `README.md`)
- Business Analyst → BPMN Modeling: models process (evidence: `README.md`)
- Business Analyst → Banking Pack: adds domain context (evidence: `README.md`)
- Business Analyst → E-commerce Pack: adds domain context (evidence: `README.md`)
- Business Analyst → Other Domain Packs: adds domain context (evidence: `README.md`)
- Decision Tables → Rule Checker: checks rule gaps (evidence: `README.md`)
- Function Decomposition → Outline Import: imports outline (evidence: `skills/functional-decomposition/scripts/outline_to_spec.py`)
- Outline Import → Decomposition Library: uses (evidence: `skills/functional-decomposition/scripts/outline_to_spec.py`)
- Decomposition Linter → Decomposition Library: uses (evidence: `skills/functional-decomposition/scripts/fd_lint.py`)
- Decomposition Explorer → Decomposition Library: uses (evidence: `skills/functional-decomposition/scripts/build_explorer_page.py`)
- Function Decomposition → Decomposition Linter: validates decomposition (evidence: `README.md`)
- Function Decomposition → Decomposition Explorer: explores decomposition (evidence: `README.md`)
- Function Decomposition → Tree Outputs: generates diagrams (evidence: `README.md`)
- BPMN Modeling → Token Simulation: runs scenarios (evidence: `README.md`)
- BPMN Modeling → BPMN Renderers: exports diagrams (evidence: `README.md`)
- BPMN Modeling → Token Page: builds animation (evidence: `skills/bpmn-modeling/scripts/build_token_page.py`)
- Token Page → Token Simulation: uses traces (evidence: `skills/bpmn-modeling/scripts/build_token_page.py`)
- Token Demo → Token Simulation: uses simulation (evidence: `scripts/make_token_demo.py`)
- BPMN Modeling → Token Demo: renders demo (evidence: `README.md`)
- Banking Pack → User Stories: enriches scenarios (evidence: `README.md`)
- E-commerce Pack → User Stories: enriches scenarios (evidence: `README.md`)
