Toolipie — Code Snippet Toolbox
A local-first Python CLI/TUI platform that turns small one-off scripts into indexed, reusable tools with manifests, logs, and plugin boundaries.
Toolipie is less a gallery of snippets and more a small operating surface for personal utilities. The live repository frames it as a Python CLI platform for centralizing small one-off scripts so they stop being rewritten or forgotten.
That changes the article shape: the interesting part is the registry, manifest, CLI/TUI execution model, and the way tiny tools become dependable enough to reuse.
Use or Inspect the Project
Toolipie is public and can be reviewed from the website or source repository.
The Tool Registry Is the Center
Toolipie is built around discovery first: scan tools, write an index, then let CLI and TUI read the same registry.
$ toolipie scan ✓ refreshed .toolipie/index.json $ toolipie list md-to-docx Markdown to Word documents md-to-pdf Markdown to styled PDFs pdf-to-png Render PDFs into image folders png-prep-ocr Prepare PNGs for OCR pipelines
The registry means the interface does not need to import every tool just to show what exists. Discovery stays fast, and code can load lazily only when a run starts.
A Manifest Before a Tool
The core abstraction is not a folder of Python files. It is a declared interface that says what the tool is, what it needs, and how it should run.
Toolipie separates small utilities into core tools and plugin tools, but both use the same manifest shape. A tool declares a key, title, summary, default glob, options, and requirements. The index tracks whether it came from core or plugin space.
schema_version: 1
name: md-to-pdf
title: Markdown to PDF
summary: Render Markdown files into styled PDFs
default_glob: "*.md"
options:
- name: preset
type: string
default: a4_reportStable, lightweight utilities that live under the maintained platform tree.
Installable or packaged utilities that can be added without rewriting the platform.
Manifests are validated and plugin code is not imported during discovery.
Execution Feels Like a Terminal App
The TUI is not decoration. It gives small scripts a repeatable run surface with options, output, progress, and cancellation.
The repository describes a two-pane terminal UI: navigate tools, inspect descriptions, open options, run jobs, and watch output in an in-TUI console. Runs happen in a subprocess under a PTY, which keeps progress rendering consistent and gives cancellation a predictable path.
- Options from manifests: parameters are generated from each tool's schema plus common input/output fields.
- Run logs: individual tool runs can write structured logs such as `run.jsonl`.
- Packaging flow: plugins can be packaged into zip files and installed back into the repo.
- Cancel model: TUI runs can request termination and escalate if a process does not exit.
$ toolipie run pdf-to-png \ --input input/pdf-to-png \ --output output/pdf-to-png \ --param dpi=300 ✓ output/pdf-to-png/report/page-001.png
From Utility Shelf to AI-Callable Tools
The long-term direction is not more random scripts. It is a local tool platform that can be discovered by humans and, eventually, AI workflows.
Core tools, plugin folders, a registry, a CLI, and a TUI make local utilities easier to find and run.
Better scaffolding, installer flows, and docs would make adding a new personal utility less manual.
The repository's vision includes AI assistance for tool creation: scaffold code, configure options, generate docs, and potentially expose tools through MCP-like workflows.
Toolipie succeeds if a useful local action stops being a forgotten file and becomes a durable command.