Skip to main content

Generate and manage artifacts: self-contained HTML mini-sites that pair presentation with the research backing it.

Project description

artoo

Generate and manage artifacts — self-contained HTML mini-sites that pair presentation with the research backing it.

There's a burgeoning practice of getting explanations of systems out of LLMs as real pages — with navigation, diagrams, and provenance — instead of markdown dumps, and of composing reports from multiple assets. artoo is the tool layer for that practice:

  • Artifacts live anywhere. An artifact is a directory with an artifact.toml inside whatever repo owns it. A library's explainer lives in that library's repo. One repo can hold many artifacts.
  • Self-contained, with provenance. The publishable site/ renders from a file:// URL — vendored assets, no bundler, no CDN dependencies. Shared components come from versioned, hash-pinned site libraries you can upgrade deliberately.
  • Deployment-aware. artoo understands GitHub Pages (including whether your repo serves from /docs, a workflow, or a branch), ssh/rsync targets, and arbitrary publish commands. Secrets never enter the repo.
  • Research stays with the piece. Notebooks, working files, and anything _-prefixed sit next to the presentation but can never ship — the deploy path is deny-by-default.
  • Generators, not API keys. Model-powered generators (like the repo explainer) delegate to agent CLIs you already have — claude, codex — with cheap tiers for fan-out analysis and strong tiers for synthesis. artoo core makes no model calls and holds no keys.

Install

uv tool install artoo-artifacts   # or: pipx install artoo-artifacts
artoo --version                   # the command is `artoo`

Research-notebook support activates automatically when flip is installed alongside artoo.

Quickstart

# Scaffold an artifact inside any repo
artoo init site/my-report --kind report --title "Q3 systems report"

# See every artifact in the repo
artoo list

# Check health: manifest, firewall, library drift
artoo status site/my-report

# Publish (adapter chosen by the manifest's [deploy] table)
artoo deploy site/my-report

Generate a repo explainer

artoo generate explainer --repo . --out site/explainer
artoo deploy site/explainer

The explainer inventories the repo deterministically, fans out per-module analysis to a cheap worker (codex), synthesizes the narrative with a strong worker (claude), renders architecture diagrams, and assembles a multi-page site with the built-in design kit. The result is a dated snapshot with a colophon saying exactly how it was made.

Status

v0.1.0 — alpha. The manifest format, CLI surface, and plugin entry points are young and may change before 1.0. See DESIGN.md for the architecture and CHANGELOG.md for history.

Development

git clone https://github.com/lavallee/artoo && cd artoo
uv sync
uv run pytest -q
uv run ruff check src tests

MIT licensed. Contributions welcome — see CONTRIBUTING.md.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

artoo_artifacts-0.1.0.tar.gz (87.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

artoo_artifacts-0.1.0-py3-none-any.whl (48.1 kB view details)

Uploaded Python 3

File details

Details for the file artoo_artifacts-0.1.0.tar.gz.

File metadata

  • Download URL: artoo_artifacts-0.1.0.tar.gz
  • Upload date:
  • Size: 87.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for artoo_artifacts-0.1.0.tar.gz
Algorithm Hash digest
SHA256 15e410ac02696944364d2cd8734d7db382ba3d44a1367ac9e1a4ac99b0713b11
MD5 2432221953fb4ee94d7bd32f0da1827c
BLAKE2b-256 a19fa3b61c1defb926bf06d9edfb543bf5d9bac2b29d9b872fb63b443e4822ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for artoo_artifacts-0.1.0.tar.gz:

Publisher: publish.yml on lavallee/artoo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file artoo_artifacts-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: artoo_artifacts-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 48.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for artoo_artifacts-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1c47ca0d7f48f28f4c719c7c60fc82b69a2f390fdb07bdc6563dac6848442a07
MD5 e4a03c3d523dfa11f28f55910094b72c
BLAKE2b-256 904ccdfe38745cdcf34c90f0f036108c221ebd9386be1def521da8da3306e46d

See more details on using hashes here.

Provenance

The following attestation bundles were made for artoo_artifacts-0.1.0-py3-none-any.whl:

Publisher: publish.yml on lavallee/artoo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page