makerlog-agent
Agent framework for makerlog.ai — project tracking, tools inventory, and build logs for makerspaces and hardware hackers.
Features
- Project Management — Track projects from idea to completion with status, budget, and tags
- Build Logs — Document every step with materials, tools, problems, and solutions
- Tools Inventory — Manage workshop equipment with condition tracking and maintenance alerts
- Budget Tracking — Estimated vs actual cost tracking
- Export/Import — JSON serialization for backup
Installation
pip install makerlog-agent
Quick Start
from makerlog_agent import (
MakerLogAgent,
Project,
ProjectStatus,
Tool,
ToolCategory,
BuildLog,
BuildStatus,
)
agent = MakerLogAgent()
# Register workshop tools
agent.register_tool(
name="Soldering Iron",
category=ToolCategory.Electronic,
location="Electronics bench",
condition=0.9,
)
agent.register_tool(
name="PLA Filament",
category=ToolCategory.Other,
consumable=True,
notes="1.75mm, various colors",
)
# Create a project
project = agent.create_project(
name="LED Matrix Display",
description="16x16 RGB LED matrix driven by ESP32",
status=ProjectStatus.InProgress,
budget=45.0,
tools_required=["Soldering Iron", "ESP32 Dev Board", "PLA Filament"],
materials=["WS2812B LEDs", "ESP32", "Power supply"],
)
# Log build steps
agent.add_build_log(
"LED Matrix Display",
title="Solder LED matrix",
description="Soldered 256 WS2812B LEDs in a 16x16 grid.",
status=BuildStatus.Success,
duration_minutes=120,
tools_used=["Soldering Iron"],
materials_used=["WS2812B LEDs", "Solder wire"],
problems="Some LEDs were polarity sensitive.",
solutions="Checked orientation before soldering each row.",
)
# Get tools needing maintenance
maintenance_needed = agent.get_tools_needing_maintenance()
# Stats
stats = agent.get_statistics()
print(f"Active projects: {stats['status_distribution'].get('in_progress', 0)}")
API Overview
Tools
tool = agent.register_tool(
name="3D Printer",
category=ToolCategory.3DPrinter,
location="Fab lab corner",
condition=0.95,
maintenance_due=date(2024, 6, 1),
)
Projects
project = agent.create_project(
name="Botanical Timer",
description="Automated plant watering system",
status=ProjectStatus.Planning,
target_date=date(2024, 12, 1),
tags=["electronics", "garden"],
budget=30.0,
)
Build Logs
agent.add_build_log(
"Botanical Timer",
title="Assembled relay circuit",
status=BuildStatus.Success,
duration_minutes=45,
materials_used=["Relay module", "Wires"],
tools_used=["Soldering Iron"],
problems="Relay triggered unexpectedly.",
solutions="Added flyback diode to suppress back-EMF.",
)
Development
pip install -e .
pytest tests/
License
MIT
Metadata
Release files for makerlog-agent 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| makerlog_agent-0.1.0.tar.gz | 7.1 kB | Without provenance | Details for makerlog_agent-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| makerlog_agent-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for makerlog_agent-0.1.0-py3-none-any.whl |
Total release size: 13.8 kB
Release files / makerlog_agent-0.1.0.tar.gz
| Download URL | makerlog_agent-0.1.0.tar.gz |
|---|---|
| Size | 7.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d1a71a0e9ed231b73a773f6ac79d1cbb20c194629d8131cb632dc63eef887c31
|
|
BLAKE2b-256 checksum How to use checksums |
37cfdeb7d775949212c53b39519fe54c9bfe4f47d163824d3e38772d3da007f7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.12
|
Release files / makerlog_agent-0.1.0-py3-none-any.whl
| Download URL | makerlog_agent-0.1.0-py3-none-any.whl |
|---|---|
| Size | 6.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8f7795a165180dac8bfb2e909d76db1a906317ada7053b75f5460096882acc4a
|
|
BLAKE2b-256 checksum How to use checksums |
1cf43029a4907505a2789b46a6591716cd39ae752707795f530965739cf69d52
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.12
|
Security for makerlog-agent 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.