Skip to main content

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)

Source distribution for makerlog-agent 0.1.0
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)

Table of built distributions (wheels) for makerlog-agent 0.1.0
File Interpreter ABI Platform Actions
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.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page