buildlog 0.4.0__tar.gz → 0.8.0__tar.gz
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.
- {buildlog-0.4.0 → buildlog-0.8.0}/.gitignore +10 -0
- buildlog-0.8.0/PKG-INFO +151 -0
- buildlog-0.8.0/README.md +91 -0
- {buildlog-0.4.0 → buildlog-0.8.0}/copier.yml +0 -4
- {buildlog-0.4.0 → buildlog-0.8.0}/pyproject.toml +29 -1
- {buildlog-0.4.0 → buildlog-0.8.0}/src/buildlog/__init__.py +1 -1
- buildlog-0.8.0/src/buildlog/cli.py +1813 -0
- {buildlog-0.4.0 → buildlog-0.8.0}/src/buildlog/confidence.py +27 -0
- buildlog-0.8.0/src/buildlog/core/__init__.py +79 -0
- buildlog-0.8.0/src/buildlog/core/bandit.py +699 -0
- buildlog-0.8.0/src/buildlog/core/operations.py +2142 -0
- buildlog-0.8.0/src/buildlog/data/seeds/security_karen.yaml +162 -0
- buildlog-0.8.0/src/buildlog/data/seeds/test_terrorist.yaml +280 -0
- {buildlog-0.4.0 → buildlog-0.8.0}/src/buildlog/distill.py +80 -1
- buildlog-0.8.0/src/buildlog/engine/__init__.py +61 -0
- buildlog-0.8.0/src/buildlog/engine/bandit.py +23 -0
- buildlog-0.8.0/src/buildlog/engine/confidence.py +28 -0
- buildlog-0.8.0/src/buildlog/engine/embeddings.py +28 -0
- buildlog-0.8.0/src/buildlog/engine/experiments.py +619 -0
- buildlog-0.8.0/src/buildlog/engine/types.py +31 -0
- buildlog-0.8.0/src/buildlog/llm.py +461 -0
- buildlog-0.8.0/src/buildlog/mcp/server.py +53 -0
- buildlog-0.8.0/src/buildlog/mcp/tools.py +560 -0
- {buildlog-0.4.0 → buildlog-0.8.0}/src/buildlog/render/__init__.py +19 -2
- buildlog-0.8.0/src/buildlog/render/claude_md.py +133 -0
- buildlog-0.8.0/src/buildlog/render/continue_dev.py +102 -0
- buildlog-0.4.0/src/buildlog/render/claude_md.py → buildlog-0.8.0/src/buildlog/render/copilot.py +40 -25
- buildlog-0.8.0/src/buildlog/render/cursor.py +105 -0
- {buildlog-0.4.0 → buildlog-0.8.0}/src/buildlog/render/tracking.py +20 -1
- buildlog-0.8.0/src/buildlog/render/windsurf.py +95 -0
- buildlog-0.8.0/src/buildlog/seed_engine/__init__.py +74 -0
- buildlog-0.8.0/src/buildlog/seed_engine/categorizers.py +145 -0
- buildlog-0.8.0/src/buildlog/seed_engine/extractors.py +148 -0
- buildlog-0.8.0/src/buildlog/seed_engine/generators.py +144 -0
- buildlog-0.8.0/src/buildlog/seed_engine/models.py +113 -0
- buildlog-0.8.0/src/buildlog/seed_engine/pipeline.py +202 -0
- buildlog-0.8.0/src/buildlog/seed_engine/sources.py +362 -0
- buildlog-0.8.0/src/buildlog/seeds.py +302 -0
- {buildlog-0.4.0 → buildlog-0.8.0}/src/buildlog/skills.py +95 -9
- buildlog-0.8.0/template/buildlog/_TEMPLATE_QUICK.md +21 -0
- buildlog-0.8.0/template/buildlog/assets/.gitkeep +0 -0
- buildlog-0.4.0/PKG-INFO +0 -894
- buildlog-0.4.0/README.md +0 -846
- buildlog-0.4.0/src/buildlog/cli.py +0 -460
- buildlog-0.4.0/src/buildlog/core/__init__.py +0 -33
- buildlog-0.4.0/src/buildlog/core/operations.py +0 -729
- buildlog-0.4.0/src/buildlog/mcp/server.py +0 -31
- buildlog-0.4.0/src/buildlog/mcp/tools.py +0 -142
- {buildlog-0.4.0 → buildlog-0.8.0}/LICENSE +0 -0
- {buildlog-0.4.0 → buildlog-0.8.0}/post_gen.py +0 -0
- /buildlog-0.4.0/template/buildlog/.gitkeep → /buildlog-0.8.0/src/buildlog/data/__init__.py +0 -0
- {buildlog-0.4.0 → buildlog-0.8.0}/src/buildlog/embeddings.py +0 -0
- {buildlog-0.4.0 → buildlog-0.8.0}/src/buildlog/mcp/__init__.py +0 -0
- {buildlog-0.4.0 → buildlog-0.8.0}/src/buildlog/render/base.py +0 -0
- {buildlog-0.4.0 → buildlog-0.8.0}/src/buildlog/render/settings_json.py +0 -0
- {buildlog-0.4.0 → buildlog-0.8.0}/src/buildlog/render/skill.py +0 -0
- {buildlog-0.4.0 → buildlog-0.8.0}/src/buildlog/stats.py +0 -0
- {buildlog-0.4.0/template/buildlog/assets → buildlog-0.8.0/template/buildlog}/.gitkeep +0 -0
- {buildlog-0.4.0 → buildlog-0.8.0}/template/buildlog/2026-01-01-example.md +0 -0
- {buildlog-0.4.0 → buildlog-0.8.0}/template/buildlog/BUILDLOG_SYSTEM.md +0 -0
- {buildlog-0.4.0 → buildlog-0.8.0}/template/buildlog/_TEMPLATE.md +0 -0
buildlog-0.8.0/PKG-INFO
ADDED
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: buildlog
|
|
3
|
+
Version: 0.8.0
|
|
4
|
+
Summary: Engineering notebook for AI-assisted development
|
|
5
|
+
Project-URL: Homepage, https://github.com/Peleke/buildlog-template
|
|
6
|
+
Project-URL: Repository, https://github.com/Peleke/buildlog-template
|
|
7
|
+
Author: Peleke Sengstacke
|
|
8
|
+
License-Expression: MIT
|
|
9
|
+
License-File: LICENSE
|
|
10
|
+
Keywords: ai,buildlog,development,documentation,journal
|
|
11
|
+
Classifier: Development Status :: 4 - Beta
|
|
12
|
+
Classifier: Environment :: Console
|
|
13
|
+
Classifier: Intended Audience :: Developers
|
|
14
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
15
|
+
Classifier: Programming Language :: Python :: 3
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
20
|
+
Classifier: Topic :: Documentation
|
|
21
|
+
Classifier: Topic :: Software Development :: Documentation
|
|
22
|
+
Requires-Python: >=3.10
|
|
23
|
+
Requires-Dist: click>=8.0.0
|
|
24
|
+
Requires-Dist: copier>=9.0.0
|
|
25
|
+
Requires-Dist: numpy>=1.21.0
|
|
26
|
+
Requires-Dist: pymupdf>=1.26.7
|
|
27
|
+
Requires-Dist: pyyaml>=6.0.0
|
|
28
|
+
Provides-Extra: all
|
|
29
|
+
Requires-Dist: anthropic>=0.40.0; extra == 'all'
|
|
30
|
+
Requires-Dist: mcp>=1.0.0; extra == 'all'
|
|
31
|
+
Requires-Dist: ollama>=0.4.0; extra == 'all'
|
|
32
|
+
Requires-Dist: openai>=1.0.0; extra == 'all'
|
|
33
|
+
Requires-Dist: sentence-transformers>=2.2.0; extra == 'all'
|
|
34
|
+
Provides-Extra: anthropic
|
|
35
|
+
Requires-Dist: anthropic>=0.40.0; extra == 'anthropic'
|
|
36
|
+
Provides-Extra: dev
|
|
37
|
+
Requires-Dist: black>=24.0.0; extra == 'dev'
|
|
38
|
+
Requires-Dist: flake8>=7.0.0; extra == 'dev'
|
|
39
|
+
Requires-Dist: isort>=5.13.0; extra == 'dev'
|
|
40
|
+
Requires-Dist: mkdocs-material>=9.5.0; extra == 'dev'
|
|
41
|
+
Requires-Dist: mypy>=1.8.0; extra == 'dev'
|
|
42
|
+
Requires-Dist: pre-commit>=3.6.0; extra == 'dev'
|
|
43
|
+
Requires-Dist: pytest-asyncio>=0.21.0; extra == 'dev'
|
|
44
|
+
Requires-Dist: pytest-cov>=4.0.0; extra == 'dev'
|
|
45
|
+
Requires-Dist: pytest>=7.0.0; extra == 'dev'
|
|
46
|
+
Requires-Dist: types-pyyaml>=6.0.0; extra == 'dev'
|
|
47
|
+
Provides-Extra: embeddings
|
|
48
|
+
Requires-Dist: sentence-transformers>=2.2.0; extra == 'embeddings'
|
|
49
|
+
Provides-Extra: engine
|
|
50
|
+
Provides-Extra: llm
|
|
51
|
+
Requires-Dist: anthropic>=0.40.0; extra == 'llm'
|
|
52
|
+
Requires-Dist: ollama>=0.4.0; extra == 'llm'
|
|
53
|
+
Provides-Extra: mcp
|
|
54
|
+
Requires-Dist: mcp>=1.0.0; extra == 'mcp'
|
|
55
|
+
Provides-Extra: ollama
|
|
56
|
+
Requires-Dist: ollama>=0.4.0; extra == 'ollama'
|
|
57
|
+
Provides-Extra: openai
|
|
58
|
+
Requires-Dist: openai>=1.0.0; extra == 'openai'
|
|
59
|
+
Description-Content-Type: text/markdown
|
|
60
|
+
|
|
61
|
+
<div align="center">
|
|
62
|
+
|
|
63
|
+
# buildlog
|
|
64
|
+
|
|
65
|
+
### The Only Agent Learning System You Can Prove Works
|
|
66
|
+
|
|
67
|
+
[](https://pypi.org/project/buildlog/)
|
|
68
|
+
[](https://python.org/)
|
|
69
|
+
[](https://github.com/Peleke/buildlog-template/actions/workflows/ci.yml)
|
|
70
|
+
[](https://opensource.org/licenses/MIT)
|
|
71
|
+
[](https://peleke.github.io/buildlog-template/)
|
|
72
|
+
|
|
73
|
+
**Falsifiable claims. Measurable outcomes. No vibes.**
|
|
74
|
+
|
|
75
|
+
<img src="assets/hero-banner-perfectdeliberate.png" alt="buildlog - The Only Agent Learning System You Can Prove Works" width="800"/>
|
|
76
|
+
|
|
77
|
+
> **RE: The art** — Yes, it's AI-generated. Yes, that's hypocritical for a project about rigor over vibes. Looking for an actual artist to pay for a real logo. If you know someone good, [open an issue](https://github.com/Peleke/buildlog-template/issues) or DM me. Budget exists.
|
|
78
|
+
|
|
79
|
+
**[Read the full documentation](https://peleke.github.io/buildlog-template/)**
|
|
80
|
+
|
|
81
|
+
</div>
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
Everyone's building "agent memory." Blog posts announce breakthroughs. Products ship with "learning" in the tagline. Ask them one question: **How do you know it works?**
|
|
86
|
+
|
|
87
|
+
buildlog gives you the infrastructure to answer with data. It captures engineering knowledge from work sessions, extracts rules, selects which rules to surface using a Thompson Sampling bandit, and measures impact via Repeated Mistake Rate (RMR) across tracked experiments.
|
|
88
|
+
|
|
89
|
+
## Features
|
|
90
|
+
|
|
91
|
+
- **Structured capture** — Document work sessions as entries with mistakes, decisions, and outcomes
|
|
92
|
+
- **Rule extraction** — Distill and deduplicate patterns into actionable rules
|
|
93
|
+
- **Thompson Sampling bandit** — Automatic rule selection that balances exploration and exploitation
|
|
94
|
+
- **Experiment tracking** — Sessions, mistakes, RMR calculation with statistical rigor
|
|
95
|
+
- **Review gauntlet** — Curated reviewer personas (Security Karen, Test Terrorist) with HITL checkpoints
|
|
96
|
+
- **Multi-agent support** — Render rules to Claude Code, Cursor, GitHub Copilot, Windsurf, Continue.dev
|
|
97
|
+
- **MCP server** — Full Claude Code integration via `buildlog-mcp`
|
|
98
|
+
|
|
99
|
+
## Quick Start
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
uv pip install buildlog # or: pip install buildlog (inside a venv)
|
|
103
|
+
buildlog init
|
|
104
|
+
buildlog new my-feature
|
|
105
|
+
buildlog distill && buildlog skills
|
|
106
|
+
buildlog experiment start
|
|
107
|
+
# ... work ...
|
|
108
|
+
buildlog experiment end
|
|
109
|
+
buildlog experiment report
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
## Documentation
|
|
113
|
+
|
|
114
|
+
| Section | Description |
|
|
115
|
+
|---------|------------|
|
|
116
|
+
| [Installation](https://peleke.github.io/buildlog-template/getting-started/installation/) | Setup, extras, and initialization |
|
|
117
|
+
| [Quick Start](https://peleke.github.io/buildlog-template/getting-started/quick-start/) | Full pipeline walkthrough |
|
|
118
|
+
| [Core Concepts](https://peleke.github.io/buildlog-template/getting-started/concepts/) | The problem, the claim, and the metric |
|
|
119
|
+
| [CLI Reference](https://peleke.github.io/buildlog-template/guides/cli-reference/) | Every command documented |
|
|
120
|
+
| [MCP Integration](https://peleke.github.io/buildlog-template/guides/mcp-integration/) | Claude Code setup and available tools |
|
|
121
|
+
| [Experiments](https://peleke.github.io/buildlog-template/guides/experiments/) | Running and measuring experiments |
|
|
122
|
+
| [Review Gauntlet](https://peleke.github.io/buildlog-template/guides/review-gauntlet/) | Reviewer personas and the gauntlet loop |
|
|
123
|
+
| [Multi-Agent Setup](https://peleke.github.io/buildlog-template/guides/multi-agent/) | Render rules to any AI coding agent |
|
|
124
|
+
| [Theory](https://peleke.github.io/buildlog-template/theory/00-background/) | The math behind Thompson Sampling |
|
|
125
|
+
| [Philosophy](https://peleke.github.io/buildlog-template/philosophy/) | Principles and honest limitations |
|
|
126
|
+
|
|
127
|
+
## Contributing
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
git clone https://github.com/Peleke/buildlog-template
|
|
131
|
+
cd buildlog-template
|
|
132
|
+
uv venv && source .venv/bin/activate
|
|
133
|
+
uv pip install -e ".[dev]"
|
|
134
|
+
pytest
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
We're especially interested in better context representations, credit assignment approaches, statistical methodology improvements, and real-world experiment results (positive or negative).
|
|
138
|
+
|
|
139
|
+
## License
|
|
140
|
+
|
|
141
|
+
MIT License — see [LICENSE](./LICENSE)
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
<div align="center">
|
|
146
|
+
|
|
147
|
+
**"Agent learning" without measurement is just prompt engineering with extra steps.**
|
|
148
|
+
|
|
149
|
+
**buildlog is measurement.**
|
|
150
|
+
|
|
151
|
+
</div>
|
buildlog-0.8.0/README.md
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
<div align="center">
|
|
2
|
+
|
|
3
|
+
# buildlog
|
|
4
|
+
|
|
5
|
+
### The Only Agent Learning System You Can Prove Works
|
|
6
|
+
|
|
7
|
+
[](https://pypi.org/project/buildlog/)
|
|
8
|
+
[](https://python.org/)
|
|
9
|
+
[](https://github.com/Peleke/buildlog-template/actions/workflows/ci.yml)
|
|
10
|
+
[](https://opensource.org/licenses/MIT)
|
|
11
|
+
[](https://peleke.github.io/buildlog-template/)
|
|
12
|
+
|
|
13
|
+
**Falsifiable claims. Measurable outcomes. No vibes.**
|
|
14
|
+
|
|
15
|
+
<img src="assets/hero-banner-perfectdeliberate.png" alt="buildlog - The Only Agent Learning System You Can Prove Works" width="800"/>
|
|
16
|
+
|
|
17
|
+
> **RE: The art** — Yes, it's AI-generated. Yes, that's hypocritical for a project about rigor over vibes. Looking for an actual artist to pay for a real logo. If you know someone good, [open an issue](https://github.com/Peleke/buildlog-template/issues) or DM me. Budget exists.
|
|
18
|
+
|
|
19
|
+
**[Read the full documentation](https://peleke.github.io/buildlog-template/)**
|
|
20
|
+
|
|
21
|
+
</div>
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
Everyone's building "agent memory." Blog posts announce breakthroughs. Products ship with "learning" in the tagline. Ask them one question: **How do you know it works?**
|
|
26
|
+
|
|
27
|
+
buildlog gives you the infrastructure to answer with data. It captures engineering knowledge from work sessions, extracts rules, selects which rules to surface using a Thompson Sampling bandit, and measures impact via Repeated Mistake Rate (RMR) across tracked experiments.
|
|
28
|
+
|
|
29
|
+
## Features
|
|
30
|
+
|
|
31
|
+
- **Structured capture** — Document work sessions as entries with mistakes, decisions, and outcomes
|
|
32
|
+
- **Rule extraction** — Distill and deduplicate patterns into actionable rules
|
|
33
|
+
- **Thompson Sampling bandit** — Automatic rule selection that balances exploration and exploitation
|
|
34
|
+
- **Experiment tracking** — Sessions, mistakes, RMR calculation with statistical rigor
|
|
35
|
+
- **Review gauntlet** — Curated reviewer personas (Security Karen, Test Terrorist) with HITL checkpoints
|
|
36
|
+
- **Multi-agent support** — Render rules to Claude Code, Cursor, GitHub Copilot, Windsurf, Continue.dev
|
|
37
|
+
- **MCP server** — Full Claude Code integration via `buildlog-mcp`
|
|
38
|
+
|
|
39
|
+
## Quick Start
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
uv pip install buildlog # or: pip install buildlog (inside a venv)
|
|
43
|
+
buildlog init
|
|
44
|
+
buildlog new my-feature
|
|
45
|
+
buildlog distill && buildlog skills
|
|
46
|
+
buildlog experiment start
|
|
47
|
+
# ... work ...
|
|
48
|
+
buildlog experiment end
|
|
49
|
+
buildlog experiment report
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## Documentation
|
|
53
|
+
|
|
54
|
+
| Section | Description |
|
|
55
|
+
|---------|------------|
|
|
56
|
+
| [Installation](https://peleke.github.io/buildlog-template/getting-started/installation/) | Setup, extras, and initialization |
|
|
57
|
+
| [Quick Start](https://peleke.github.io/buildlog-template/getting-started/quick-start/) | Full pipeline walkthrough |
|
|
58
|
+
| [Core Concepts](https://peleke.github.io/buildlog-template/getting-started/concepts/) | The problem, the claim, and the metric |
|
|
59
|
+
| [CLI Reference](https://peleke.github.io/buildlog-template/guides/cli-reference/) | Every command documented |
|
|
60
|
+
| [MCP Integration](https://peleke.github.io/buildlog-template/guides/mcp-integration/) | Claude Code setup and available tools |
|
|
61
|
+
| [Experiments](https://peleke.github.io/buildlog-template/guides/experiments/) | Running and measuring experiments |
|
|
62
|
+
| [Review Gauntlet](https://peleke.github.io/buildlog-template/guides/review-gauntlet/) | Reviewer personas and the gauntlet loop |
|
|
63
|
+
| [Multi-Agent Setup](https://peleke.github.io/buildlog-template/guides/multi-agent/) | Render rules to any AI coding agent |
|
|
64
|
+
| [Theory](https://peleke.github.io/buildlog-template/theory/00-background/) | The math behind Thompson Sampling |
|
|
65
|
+
| [Philosophy](https://peleke.github.io/buildlog-template/philosophy/) | Principles and honest limitations |
|
|
66
|
+
|
|
67
|
+
## Contributing
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
git clone https://github.com/Peleke/buildlog-template
|
|
71
|
+
cd buildlog-template
|
|
72
|
+
uv venv && source .venv/bin/activate
|
|
73
|
+
uv pip install -e ".[dev]"
|
|
74
|
+
pytest
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
We're especially interested in better context representations, credit assignment approaches, statistical methodology improvements, and real-world experiment results (positive or negative).
|
|
78
|
+
|
|
79
|
+
## License
|
|
80
|
+
|
|
81
|
+
MIT License — see [LICENSE](./LICENSE)
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
<div align="center">
|
|
86
|
+
|
|
87
|
+
**"Agent learning" without measurement is just prompt engineering with extra steps.**
|
|
88
|
+
|
|
89
|
+
**buildlog is measurement.**
|
|
90
|
+
|
|
91
|
+
</div>
|
|
@@ -20,10 +20,6 @@ update_claude_md:
|
|
|
20
20
|
help: Add buildlog instructions to CLAUDE.md if it exists?
|
|
21
21
|
default: true
|
|
22
22
|
|
|
23
|
-
# Post-generation tasks
|
|
24
|
-
_tasks:
|
|
25
|
-
- "{{ 'python3 post_gen.py' if update_claude_md else 'echo Skipping CLAUDE.md update' }}"
|
|
26
|
-
|
|
27
23
|
_message_after_copy: |
|
|
28
24
|
Build journal installed!
|
|
29
25
|
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "buildlog"
|
|
7
|
-
version = "0.
|
|
7
|
+
version = "0.8.0"
|
|
8
8
|
description = "Engineering notebook for AI-assisted development"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = "MIT"
|
|
@@ -31,9 +31,14 @@ dependencies = [
|
|
|
31
31
|
"click>=8.0.0",
|
|
32
32
|
"pyyaml>=6.0.0",
|
|
33
33
|
"numpy>=1.21.0",
|
|
34
|
+
"pymupdf>=1.26.7",
|
|
34
35
|
]
|
|
35
36
|
|
|
36
37
|
[project.optional-dependencies]
|
|
38
|
+
# Engine-only: bandit, confidence, embeddings, experiment tracking.
|
|
39
|
+
# Zero extra deps — the engine is part of the base package.
|
|
40
|
+
# This extra documents the clean namespace: from buildlog.engine import X
|
|
41
|
+
engine = []
|
|
37
42
|
# Local embeddings for semantic deduplication (offline)
|
|
38
43
|
embeddings = [
|
|
39
44
|
"sentence-transformers>=2.2.0",
|
|
@@ -42,6 +47,19 @@ embeddings = [
|
|
|
42
47
|
openai = [
|
|
43
48
|
"openai>=1.0.0",
|
|
44
49
|
]
|
|
50
|
+
# Ollama for local LLM-backed extraction
|
|
51
|
+
ollama = [
|
|
52
|
+
"ollama>=0.4.0",
|
|
53
|
+
]
|
|
54
|
+
# Anthropic Claude for cloud LLM-backed extraction
|
|
55
|
+
anthropic = [
|
|
56
|
+
"anthropic>=0.40.0",
|
|
57
|
+
]
|
|
58
|
+
# Both LLM providers (convenience)
|
|
59
|
+
llm = [
|
|
60
|
+
"ollama>=0.4.0",
|
|
61
|
+
"anthropic>=0.40.0",
|
|
62
|
+
]
|
|
45
63
|
# MCP server for Claude Code integration
|
|
46
64
|
mcp = [
|
|
47
65
|
"mcp>=1.0.0",
|
|
@@ -51,6 +69,8 @@ all = [
|
|
|
51
69
|
"sentence-transformers>=2.2.0",
|
|
52
70
|
"openai>=1.0.0",
|
|
53
71
|
"mcp>=1.0.0",
|
|
72
|
+
"ollama>=0.4.0",
|
|
73
|
+
"anthropic>=0.40.0",
|
|
54
74
|
]
|
|
55
75
|
# Development dependencies
|
|
56
76
|
dev = [
|
|
@@ -63,6 +83,7 @@ dev = [
|
|
|
63
83
|
"flake8>=7.0.0",
|
|
64
84
|
"types-PyYAML>=6.0.0",
|
|
65
85
|
"pre-commit>=3.6.0",
|
|
86
|
+
"mkdocs-material>=9.5.0",
|
|
66
87
|
]
|
|
67
88
|
|
|
68
89
|
[project.urls]
|
|
@@ -122,3 +143,10 @@ disallow_untyped_defs = false
|
|
|
122
143
|
testpaths = ["tests"]
|
|
123
144
|
python_files = ["test_*.py"]
|
|
124
145
|
addopts = "-v --tb=short"
|
|
146
|
+
|
|
147
|
+
[dependency-groups]
|
|
148
|
+
dev = [
|
|
149
|
+
"marimo>=0.19.5",
|
|
150
|
+
"matplotlib>=3.10.8",
|
|
151
|
+
"scipy>=1.15.3",
|
|
152
|
+
]
|