Metadata-Version: 2.4
Name: familiar-cli
Version: 0.0.1
Summary: compose and invoke ai agent prompts from reusable templates
Author-email: cyberwitchery labs <contact@cyberwitchery.com>
License-Expression: MIT
Project-URL: Homepage, https://github.com/cyberwitchery/familiar
Project-URL: Repository, https://github.com/cyberwitchery/familiar
Keywords: ai,agents,prompts,cli,codex,claude
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Code Generators
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Provides-Extra: dev
Requires-Dist: ruff; extra == "dev"
Requires-Dist: mypy; extra == "dev"
Requires-Dist: pytest; extra == "dev"
Dynamic: license-file

# familiar

compose and invoke ai agent prompts from reusable templates.

ships with a standard set of templates and invocations, or bring your own (mine are
very much wip).

## installation

```
pip install familiar-cli
```

## usage

conjure profiles to create system instructions for an agent:

```
familiar conjure codex rust infra sec
```

invoke an action prompt:

```
familiar invoke codex bootstrap-rust myapp lib 1.78 mit
```

## customization

add your own templates and invocations by creating files in `.familiar/` in your repo:

```
.familiar/
  templates/
    myprofile.md      # new profile
    rust.md           # override built-in
  invocations/
    my-task.md        # new invocation
```

local files take precedence over built-ins.

### placeholders

invocations support placeholders:
- `$1`, `$2`, ... - positional arguments
- `$ARGUMENTS` - all positional arguments joined
- `{{key}}` - named arguments passed via `--kv key=value`

## license

mit
