engineering-memory-bank


Nameengineering-memory-bank JSON
Version 0.0.1 PyPI version JSON
download
home_pageNone
SummaryAI-powered engineering decision documentation system with automatic git integration
upload_time2025-08-14 02:00:48
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseNone
keywords engineering documentation ai git decisions knowledge-management automation mcp claude
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # engineering-memory-bank

**AI-Powered Engineering Decision Documentation System**

An intelligent system for automatically capturing, organizing, and analyzing engineering design decisions with git integration. Transforms scattered documentation into structured knowledge that improves with every project.

## ๐Ÿš€ Key Features

- **๐Ÿง  Automatic Decision Capture**: Git hooks automatically document design decisions
- **๐Ÿค– AI-Powered Analysis**: Claude integration for decision insights and recommendations
- **๐Ÿ“Š Cross-Project Learning**: Knowledge sharing between projects and teams
- **โฐ Timeline Reconstruction**: Automatic timeline of design decisions
- **๐Ÿ” Decision Search**: Find relevant decisions across project history
- **๐Ÿ“‹ Template System**: Structured documentation templates
- **๐Ÿ”— Git Integration**: Seamless integration with existing development workflows

## ๐Ÿ†š vs. Existing Solutions

| Feature | engineering-memory-bank | Traditional Docs | Engineering Notebooks |
|---------|-------------|------------------|----------------------|
| **Automatic Capture** | โœ… Git hooks | โŒ Manual | โŒ Manual |
| **AI Analysis** | โœ… Claude integration | โŒ None | โŒ Limited |
| **Cross-Project** | โœ… Knowledge sharing | โŒ Isolated | โŒ Isolated |
| **Timeline Tracking** | โœ… Automatic | โŒ Manual | โš ๏ธ Basic |
| **Decision Search** | โœ… Intelligent | โš ๏ธ Text search | โš ๏ธ Basic |
| **Version Control** | โœ… Native git | โš ๏ธ External | โŒ Poor |

## ๐Ÿ“ฆ Installation

```bash
# Install from PyPI (coming soon)
pip install engineering-memory-bank

# Or install from source
git clone https://github.com/circuit-synth/engineering-memory-bank.git
cd engineering-memory-bank
pip install -e .
```

## ๐ŸŽฏ Quick Start

### Initialize in Project

```bash
# Initialize memory-bank in your project
cd my_engineering_project
memory-bank init

# Configure git hooks (automatic)
memory-bank setup-hooks
```

### Automatic Decision Capture

```bash
# Make changes and commit - decisions automatically captured
git add power_supply.py
git commit -m "Switch to buck converter for 90% efficiency vs 60% with linear reg"

# Memory bank automatically captures:
# - What changed (component selection)
# - Why it changed (efficiency improvement)
# - Context (power supply design)
# - Alternatives considered (linear regulator)
```

### Manual Decision Logging

```python
import engineering_memory_bank as emb

# Log design decisions programmatically
bank = emb.MemoryBank.current_project()

bank.log_decision(
    category='component_selection',
    decision='Selected STM32F407 over STM32F405',
    rationale='Need USB OTG and Ethernet for full feature set',
    alternatives=['STM32F405', 'STM32H7 series'],
    impact='high',
    tags=['mcu', 'connectivity', 'performance']
)

# Log test results
bank.log_test_result(
    test='power_consumption',
    result={'idle': '50mA', 'active': '120mA'},
    meets_spec=True,
    notes='Under 150mA budget with margin'
)
```

### AI-Powered Analysis

```python
# Get AI insights on decisions
insights = bank.analyze_decisions()
print(f"Decision confidence: {insights.confidence_score}")
print(f"Potential issues: {insights.risk_factors}")

# Get recommendations for current project
recommendations = bank.get_ai_recommendations()
for rec in recommendations:
    print(f"Recommendation: {rec.suggestion}")
    print(f"Based on: {rec.similar_projects}")

# Cross-project learning
similar = bank.find_similar_decisions(
    'microcontroller selection',
    across_projects=True
)
```

### Decision Management

```python
# Search decision history
power_decisions = bank.search_decisions('power supply')
recent_decisions = bank.get_recent_decisions(days=30)

# Timeline analysis
timeline = bank.get_decision_timeline()
milestones = bank.get_project_milestones()

# Export and reporting
report = bank.generate_decision_report()
bank.export_decisions('project_decisions.json')
```

## ๐Ÿ—๏ธ Architecture

```
memory-bank/
โ”œโ”€โ”€ python/                          # Core Python library
โ”‚   โ”œโ”€โ”€ memory_bank/
โ”‚   โ”‚   โ”œโ”€โ”€ core/                   # Core decision engine
โ”‚   โ”‚   โ”œโ”€โ”€ ai/                     # AI integration (Claude, etc.)
โ”‚   โ”‚   โ”œโ”€โ”€ git/                    # Git hooks and integration
โ”‚   โ”‚   โ”œโ”€โ”€ templates/              # Documentation templates
โ”‚   โ”‚   โ”œโ”€โ”€ analysis/               # Decision analysis
โ”‚   โ”‚   โ””โ”€โ”€ utils/                  # Utilities
โ”‚   โ””โ”€โ”€ tests/                      # Test suite
โ”œโ”€โ”€ templates/                      # Project templates
โ””โ”€โ”€ examples/                       # Usage examples
```

## ๐Ÿงช Use Cases

### **Electronics Design**
- Component selection rationale
- Power supply design decisions  
- Layout and routing choices
- Test results and validation

### **Software Development**
- Architecture decisions
- Library/framework choices
- Performance optimization decisions
- Security design choices

### **Mechanical Engineering**
- Material selection rationale
- Manufacturing process decisions
- Design constraint trade-offs
- Testing and validation results

### **Research Projects**
- Experimental design decisions
- Parameter selection rationale
- Result interpretation
- Future work planning

## ๐Ÿค Contributing

We welcome contributions! See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.

## ๐Ÿ“„ License

MIT License - see [LICENSE](LICENSE) for details.

---

**Built with โค๏ธ by the Circuit-Synth team**

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "engineering-memory-bank",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": "Circuit-Synth <info@circuit-synth.com>",
    "keywords": "engineering, documentation, ai, git, decisions, knowledge-management, automation, mcp, claude",
    "author": null,
    "author_email": "Circuit-Synth <info@circuit-synth.com>",
    "download_url": "https://files.pythonhosted.org/packages/fb/90/d809891d01fd3fe0843e9d00c1212b164deb80e94a9fc8d2468421c6dd43/engineering_memory_bank-0.0.1.tar.gz",
    "platform": null,
    "description": "# engineering-memory-bank\n\n**AI-Powered Engineering Decision Documentation System**\n\nAn intelligent system for automatically capturing, organizing, and analyzing engineering design decisions with git integration. Transforms scattered documentation into structured knowledge that improves with every project.\n\n## \ud83d\ude80 Key Features\n\n- **\ud83e\udde0 Automatic Decision Capture**: Git hooks automatically document design decisions\n- **\ud83e\udd16 AI-Powered Analysis**: Claude integration for decision insights and recommendations\n- **\ud83d\udcca Cross-Project Learning**: Knowledge sharing between projects and teams\n- **\u23f0 Timeline Reconstruction**: Automatic timeline of design decisions\n- **\ud83d\udd0d Decision Search**: Find relevant decisions across project history\n- **\ud83d\udccb Template System**: Structured documentation templates\n- **\ud83d\udd17 Git Integration**: Seamless integration with existing development workflows\n\n## \ud83c\udd9a vs. Existing Solutions\n\n| Feature | engineering-memory-bank | Traditional Docs | Engineering Notebooks |\n|---------|-------------|------------------|----------------------|\n| **Automatic Capture** | \u2705 Git hooks | \u274c Manual | \u274c Manual |\n| **AI Analysis** | \u2705 Claude integration | \u274c None | \u274c Limited |\n| **Cross-Project** | \u2705 Knowledge sharing | \u274c Isolated | \u274c Isolated |\n| **Timeline Tracking** | \u2705 Automatic | \u274c Manual | \u26a0\ufe0f Basic |\n| **Decision Search** | \u2705 Intelligent | \u26a0\ufe0f Text search | \u26a0\ufe0f Basic |\n| **Version Control** | \u2705 Native git | \u26a0\ufe0f External | \u274c Poor |\n\n## \ud83d\udce6 Installation\n\n```bash\n# Install from PyPI (coming soon)\npip install engineering-memory-bank\n\n# Or install from source\ngit clone https://github.com/circuit-synth/engineering-memory-bank.git\ncd engineering-memory-bank\npip install -e .\n```\n\n## \ud83c\udfaf Quick Start\n\n### Initialize in Project\n\n```bash\n# Initialize memory-bank in your project\ncd my_engineering_project\nmemory-bank init\n\n# Configure git hooks (automatic)\nmemory-bank setup-hooks\n```\n\n### Automatic Decision Capture\n\n```bash\n# Make changes and commit - decisions automatically captured\ngit add power_supply.py\ngit commit -m \"Switch to buck converter for 90% efficiency vs 60% with linear reg\"\n\n# Memory bank automatically captures:\n# - What changed (component selection)\n# - Why it changed (efficiency improvement)\n# - Context (power supply design)\n# - Alternatives considered (linear regulator)\n```\n\n### Manual Decision Logging\n\n```python\nimport engineering_memory_bank as emb\n\n# Log design decisions programmatically\nbank = emb.MemoryBank.current_project()\n\nbank.log_decision(\n    category='component_selection',\n    decision='Selected STM32F407 over STM32F405',\n    rationale='Need USB OTG and Ethernet for full feature set',\n    alternatives=['STM32F405', 'STM32H7 series'],\n    impact='high',\n    tags=['mcu', 'connectivity', 'performance']\n)\n\n# Log test results\nbank.log_test_result(\n    test='power_consumption',\n    result={'idle': '50mA', 'active': '120mA'},\n    meets_spec=True,\n    notes='Under 150mA budget with margin'\n)\n```\n\n### AI-Powered Analysis\n\n```python\n# Get AI insights on decisions\ninsights = bank.analyze_decisions()\nprint(f\"Decision confidence: {insights.confidence_score}\")\nprint(f\"Potential issues: {insights.risk_factors}\")\n\n# Get recommendations for current project\nrecommendations = bank.get_ai_recommendations()\nfor rec in recommendations:\n    print(f\"Recommendation: {rec.suggestion}\")\n    print(f\"Based on: {rec.similar_projects}\")\n\n# Cross-project learning\nsimilar = bank.find_similar_decisions(\n    'microcontroller selection',\n    across_projects=True\n)\n```\n\n### Decision Management\n\n```python\n# Search decision history\npower_decisions = bank.search_decisions('power supply')\nrecent_decisions = bank.get_recent_decisions(days=30)\n\n# Timeline analysis\ntimeline = bank.get_decision_timeline()\nmilestones = bank.get_project_milestones()\n\n# Export and reporting\nreport = bank.generate_decision_report()\nbank.export_decisions('project_decisions.json')\n```\n\n## \ud83c\udfd7\ufe0f Architecture\n\n```\nmemory-bank/\n\u251c\u2500\u2500 python/                          # Core Python library\n\u2502   \u251c\u2500\u2500 memory_bank/\n\u2502   \u2502   \u251c\u2500\u2500 core/                   # Core decision engine\n\u2502   \u2502   \u251c\u2500\u2500 ai/                     # AI integration (Claude, etc.)\n\u2502   \u2502   \u251c\u2500\u2500 git/                    # Git hooks and integration\n\u2502   \u2502   \u251c\u2500\u2500 templates/              # Documentation templates\n\u2502   \u2502   \u251c\u2500\u2500 analysis/               # Decision analysis\n\u2502   \u2502   \u2514\u2500\u2500 utils/                  # Utilities\n\u2502   \u2514\u2500\u2500 tests/                      # Test suite\n\u251c\u2500\u2500 templates/                      # Project templates\n\u2514\u2500\u2500 examples/                       # Usage examples\n```\n\n## \ud83e\uddea Use Cases\n\n### **Electronics Design**\n- Component selection rationale\n- Power supply design decisions  \n- Layout and routing choices\n- Test results and validation\n\n### **Software Development**\n- Architecture decisions\n- Library/framework choices\n- Performance optimization decisions\n- Security design choices\n\n### **Mechanical Engineering**\n- Material selection rationale\n- Manufacturing process decisions\n- Design constraint trade-offs\n- Testing and validation results\n\n### **Research Projects**\n- Experimental design decisions\n- Parameter selection rationale\n- Result interpretation\n- Future work planning\n\n## \ud83e\udd1d Contributing\n\nWe welcome contributions! See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.\n\n## \ud83d\udcc4 License\n\nMIT License - see [LICENSE](LICENSE) for details.\n\n---\n\n**Built with \u2764\ufe0f by the Circuit-Synth team**\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "AI-powered engineering decision documentation system with automatic git integration",
    "version": "0.0.1",
    "project_urls": {
        "Bug Reports": "https://github.com/circuit-synth/engineering-memory-bank/issues",
        "Changelog": "https://github.com/circuit-synth/engineering-memory-bank/blob/main/CHANGELOG.md",
        "Documentation": "https://circuit-synth.github.io/engineering-memory-bank/",
        "Homepage": "https://github.com/circuit-synth/engineering-memory-bank",
        "Repository": "https://github.com/circuit-synth/engineering-memory-bank.git"
    },
    "split_keywords": [
        "engineering",
        " documentation",
        " ai",
        " git",
        " decisions",
        " knowledge-management",
        " automation",
        " mcp",
        " claude"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "11d39b80816204faf47d8118da12b0ed818bc0f4fca0aac5a4202b8775e703ea",
                "md5": "ef8cb96a64353718ce416af11d02be38",
                "sha256": "a9d532a7000313b66d5783f35faf040b851c17cae560ec9bfa6a12b655eff6ad"
            },
            "downloads": -1,
            "filename": "engineering_memory_bank-0.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "ef8cb96a64353718ce416af11d02be38",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 24316,
            "upload_time": "2025-08-14T02:00:47",
            "upload_time_iso_8601": "2025-08-14T02:00:47.565091Z",
            "url": "https://files.pythonhosted.org/packages/11/d3/9b80816204faf47d8118da12b0ed818bc0f4fca0aac5a4202b8775e703ea/engineering_memory_bank-0.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "fb90d809891d01fd3fe0843e9d00c1212b164deb80e94a9fc8d2468421c6dd43",
                "md5": "fe0cf61d58bf11aac8252a8a4d4d1de5",
                "sha256": "2b9e2e3e76e7e9738fb30596e004204f2a77a7aba2cd5ae54b92ccf9a46a9534"
            },
            "downloads": -1,
            "filename": "engineering_memory_bank-0.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "fe0cf61d58bf11aac8252a8a4d4d1de5",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 21350,
            "upload_time": "2025-08-14T02:00:48",
            "upload_time_iso_8601": "2025-08-14T02:00:48.696034Z",
            "url": "https://files.pythonhosted.org/packages/fb/90/d809891d01fd3fe0843e9d00c1212b164deb80e94a9fc8d2468421c6dd43/engineering_memory_bank-0.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-14 02:00:48",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "circuit-synth",
    "github_project": "engineering-memory-bank",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "engineering-memory-bank"
}
        
Elapsed time: 2.04870s