Llmtpl banner
ryokwkm ryokwkm

Llmtpl

AI community

Description

Turn AI agent config features on and off, one line at a time. Each feature — instructions, rules, hooks, and their registration — lives in one bundle directory, distributed across any number of repositories.

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

llmtpl

[![ci](https://github.com/ryokwkm/llmtpl/actions/workflows/ci.yml/badge.svg)](https://github.com/ryokwkm/llmtpl/actions/workflows/ci.yml) [![release](https://img.shields.io/github/v/release/ryokwkm/llmtpl)](https://github.com/ryokwkm/llmtpl/releases) [![license](https://img.shields.io/github/license/ryokwkm/llmtpl)](LICENSE)

**English** | [日本語](README.ja.md)

Turn AI agent config features on and off, one line at a time.

![One line in llmtpl.conf brings a feature's four config files into a project, and takes all of them back out.](assets/demo.gif)

llmtpl manages the config files an **AI coding agent** reads: the instructions file, the long rules it points at, hook scripts, and the settings that register them. It keeps everything one feature needs in **one directory**, and every repository turns that feature on or off with a single line.

logcheck = true

That line brings in the instructions, the rules, the script, and the registration. Flip it to `false` and all of it leaves — nothing to undo by hand.

Install

brew install ryokwkm/tap/llmtpl

Or download a binary from [Releases](https://github.com/ryokwkm/llmtpl/releases), or with Go:

go install github.com/ryokwkm/llmtpl@latest   # needs Go 1.24+

From source, `make build` writes `./llmtpl`. `make install` puts it in `~/.local/bin` and installs zsh completions (macOS/zsh assumed). `llmtpl completion zsh|bash|fish` prints them individually.

Try it

Everything below runs as written, and the output is real. This README covers getting started; the details of the spec, and the reasoning behind them, are in [docs/reference.md](docs/reference.md).

Put one feature in one directory

A one-feature directory is a **bundle**; a project that receives config is a **target**. Those are the only two words. The directory name — `logcheck` — becomes the flag name, so creating a directory creates a flag; there is no registry to update.

demo/
├── llm-tpl/