# Changelog

All notable changes to ThinkBank will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

---

## [1.0.0] - 2026-02-05

### Changed - Rebrand

**🏦 ThinkBank - Major Rebrand from Evergrow**

- **New Name:** Evergrow → ThinkBank
- **New Icon:** 🌱 (seedling) → 🏦 (bank)
- **New Tagline:** "Bank your thoughts, compound your intelligence"
- **New Chinese Name:** 思想银行 - 知识在此复利增长
- **Package Rename:** `evergrow` → `thinkbank`
- **All imports updated:** `from evergrow.core` → `from thinkbank.core`
- **CLI command:** `evergrow` → `thinkbank`

**Rationale:**
- Directly conveys compound interest concept (knowledge bank)
- Clear product positioning and stronger brand identity
- Better uniqueness in the market
- More intuitive metaphor (deposit knowledge, earn compound returns)

---

## [1.0.0] - 2026-02-05 (Initial Release)

### Added - Core Features

#### Knowledge Management System
- **KnowledgeManager** - Complete CRUD operations for knowledge items
- **6 Knowledge Types** - Skills, Rules, Patterns, Domain, User, Lessons
- **File-based storage** - YAML frontmatter + Markdown content
- **Auto-generated IDs** - Timestamp-based unique identifiers
- **Tag system** - Flexible categorization and filtering

#### AI Self-Aware Worthiness Filtering
- **WorthinessFilter** - AI decides what knowledge is worth storing
- **3 Decision Types** - STORE, SKIP, ASK_USER
- **Confidence scoring** - 0.0-1.0 confidence for each decision
- **Detailed reasoning** - AI explains why decision was made
- **Conversation context support** - Considers conversation history
- **10 AI Blind Spot categories** - Focus on gaps in training data
- **10 AI Common Sense categories** - Capture domain-specific knowledge

#### Value Assessment System
- **ValueAssessor** - 5-factor scoring system
- **Reusability** - How often knowledge will be useful (0.0-1.0)
- **Specificity** - How concrete and actionable (0.0-1.0)
- **AI Blind Spot** - How much it fills a knowledge gap (0.0-1.0)
- **Impact** - Conversation quality improvement (0.0-1.0)
- **Decay** - How long knowledge stays relevant (0.0-1.0)
- **Weighted scoring** - Configurable factor weights
- **Score interpretation** - High/Medium/Low value classification

#### Import/Export System
- **Knowledge Pack format (.khb)** - Compressed JSON/YAML bundles
- **Export filtering** - By type, score, tags, date range
- **Export preview** - See what will be exported before exporting
- **Import with conflict resolution** - Skip, overwrite, merge, rename, ask
- **Dry-run mode** - Preview imports without applying
- **Metadata tracking** - Author, version, creation date
- **Batch operations** - Import/export multiple items efficiently

#### AI Knowledge Taxonomy
- **AIBlindSpotsTaxonomy** - 10 categories of AI knowledge gaps
  - User preferences
  - Project context
  - Codebase specifics
  - Error patterns
  - Workflow optimization
  - Domain terminology
  - Organizational policies
  - Integration details
  - Performance tuning
  - Security practices
- **AICommonSenseTaxonomy** - 10 categories of domain knowledge
  - Technical concepts
  - Business logic
  - Best practices
  - Anti-patterns
  - Tools & utilities
  - Debugging techniques
  - Architecture patterns
  - Data structures
  - Algorithms
  - Communication patterns

#### CLI Interface
- **thinkbank hub** - Start on-demand web UI
- **thinkbank stop** - Stop web UI
- **thinkbank status** - Check server status
- **thinkbank export** - Export knowledge packs
- **thinkbank import** - Import knowledge packs
- **thinkbank list** - List knowledge items with filtering
- **thinkbank search** - Full-text search across knowledge base
- **Rich output** - Beautiful CLI formatting with emojis

#### Web UI (On-Demand)
- **FastAPI backend** - High-performance REST API
- **Auto-timeout** - Stops after 30 minutes idle
- **Health monitoring** - /health endpoint with uptime tracking
- **Browser auto-open** - Convenience feature for quick access
- **Process management** - PID tracking, graceful shutdown
- **Resource efficient** - Only runs when needed

#### Python API
- **Simple imports** - `from thinkbank.core import KnowledgeManager`
- **Type hints** - Full typing support for IDE autocomplete
- **Comprehensive docstrings** - Clear documentation for all functions
- **Error handling** - Proper exceptions and error messages
- **Flexible configuration** - Support for custom paths and settings

### Features

#### Token Efficiency
- **Minimal overhead** - <500 tokens per operation
- **Structured storage** - YAML frontmatter for efficient parsing
- **Selective loading** - Load only what's needed
- **Caching support** - Ready for future caching layer

#### Conversation Quality Improvement (CQI)
- **Impact scoring** - Measure how knowledge improves conversations
- **Before/after metrics** - Track conversation quality over time
- **Worthiness correlation** - High-worth knowledge = high CQI impact

#### Extensibility
- **Plugin architecture** - Ready for extensions
- **Custom templates** - Add new knowledge types
- **Configurable weights** - Adjust scoring to your needs
- **Taxonomy expansion** - Add new categories as needed

### Documentation
- **README.md** - Comprehensive introduction with examples
- **QUICKSTART.md** - Get started in 5 minutes (in docs/)
- **API.md** - Complete API reference (in docs/)
- **PHILOSOPHY.md** - Design rationale and principles (in docs/)
- **INTEGRATION.md** - Squad integration guide (in docs/)
- **CONTRIBUTING.md** - Contribution guidelines
- **CHANGELOG.md** - This file

### Developer Experience
- **Black formatting** - Consistent code style
- **Pytest suite** - Comprehensive test coverage
- **Type checking** - MyPy support
- **Import sorting** - isort configuration
- **Git-friendly** - .gitignore with sensible defaults

### Packaging
- **setup.py** - Traditional setuptools packaging
- **pyproject.toml** - Modern Python packaging
- **requirements.txt** - Runtime dependencies
- **requirements-dev.txt** - Development dependencies
- **MANIFEST.in** - Package manifest for non-Python files
- **PyPI-ready** - Can be published with `twine upload`

### License
- **MIT License** - Most permissive open-source license
- **Commercial-friendly** - Use in proprietary projects
- **Attribution only** - No copyleft requirements

---

## [Unreleased]

### Planned for v1.1.0
- Vector search for semantic similarity
- Knowledge evolution tracking (version history)
- Web UI improvements (edit, bulk operations)
- Performance optimizations
- Additional export formats (Markdown, CSV)

### Planned for v2.0.0
- Machine learning for worthiness prediction
- Automatic knowledge synthesis
- Proactive knowledge suggestions
- Multi-user collaboration features
- Cloud sync support

---

## Version History

- **v1.0.0** (2026-02-05) - Initial release
  - Core features complete
  - Production-ready
  - MIT license
  - Independent repository created

---

## Migration Notes

### From ai-knowledge-plugin to ThinkBank

If you're migrating from the old `ai-knowledge-plugin`:

1. Update imports:
   ```python
   # Old:
   from ai_knowledge_plugin.core import KnowledgeManager

   # New:
   from thinkbank.core import KnowledgeManager
   ```

2. Knowledge files remain compatible (no changes needed)

3. Configuration path unchanged: `~/.thinkbank/knowledge/`

4. CLI command changed:
   ```bash
   # Old:
   knowledge hub

   # New:
   thinkbank hub
   ```

---

## Contributing

See [CONTRIBUTING.md](CONTRIBUTING.md) for how to contribute to this project.

---

## Links

- **Homepage:** https://github.com/dwHou/ThinkBank
- **Issues:** https://github.com/dwHou/ThinkBank/issues
- **PyPI:** https://pypi.org/project/thinkbank/ (coming soon)
- **Documentation:** https://github.com/dwHou/ThinkBank/blob/main/README.md

---

<p align="center">
  <sub>Built with ❤️ for the AI community</sub>
</p>
