Metadata-Version: 2.4
Name: vibefree
Version: 0.1.0
Summary: A tiny CLI initializer for vibe coding projects that generates .memory and .harness scaffolding.
Author: lemonmindyes
License-Expression: Apache-2.0
Project-URL: Homepage, https://github.com/lemonmindyes/vibefree
Project-URL: Repository, https://github.com/lemonmindyes/vibefree
Project-URL: Issues, https://github.com/lemonmindyes/vibefree/issues
Keywords: cli,agents,scaffolding,vibe-coding
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
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: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Build Tools
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Provides-Extra: dev
Requires-Dist: pytest>=8; extra == "dev"
Dynamic: license-file

# vibefree

`vibefree` is a tiny Python CLI initializer for vibe coding projects. It creates a lightweight `.memory` and `.harness` scaffold so coding agents have a consistent place to read project context, rules, workflow notes, and quality expectations.

The `0.1.0` release focuses on one reliable command: `vibefree init`.

## Features

- Creates `.memory` files for durable project knowledge.
- Creates `.harness` files for coding-agent instructions.
- Supports initializing the current directory or a named project directory.
- Fills missing files without overwriting existing files.
- Keeps the generated structure small, readable, and tool-agnostic.

## Installation

Install from PyPI:

```bash
pip install vibefree
```

## Usage

Initialize the current directory:

```bash
vibefree init
```

Initialize a named project directory:

```bash
vibefree init my-project
```

If `my-project` does not exist, it is created. If it already exists, it is reused.

Existing generated files are never overwritten. Missing files are added on later runs.

## Generated Structure

```text
.memory/
├── memory.md
├── rule.md
├── project.md
└── logs/
    └── .gitkeep

.harness/
├── AGENTS.md
├── ARCHITECTURE.md
├── WORKFLOW.md
├── QUALITY.md
└── plans/
    ├── active/
    │   └── .gitkeep
    └── completed/
        └── .gitkeep
```

## Generated Files

- `.memory/memory.md`: Long-term project memory for durable facts, decisions, and constraints.
- `.memory/rule.md`: Rules for when agents should read or update memory.
- `.memory/project.md`: Basic project information, including the project name.
- `.memory/logs/.gitkeep`: Keeps the logs directory in version control.
- `.harness/AGENTS.md`: Agent entry file with the recommended reading order.
- `.harness/ARCHITECTURE.md`: Architecture notes and design decisions.
- `.harness/WORKFLOW.md`: Development workflow guidance.
- `.harness/QUALITY.md`: Quality, testing, and safety rules.
- `.harness/plans/active/.gitkeep`: Keeps the active plans directory in version control.
- `.harness/plans/completed/.gitkeep`: Keeps the completed plans directory in version control.

## Development

Create a virtual environment:

```bash
python -m venv venv
```

Activate it on Windows PowerShell:

```powershell
.\venv\Scripts\Activate.ps1
```

Activate it on macOS or Linux:

```bash
source venv/bin/activate
```

Install locally:

```bash
pip install -e .
```

Install development dependencies and run tests:

```bash
pip install -e ".[dev]"
pytest
```

Build distributions locally:

```bash
python -m build
```

## Design Principles

- simple: keep the CLI and generated files easy to understand.
- agent-friendly: provide clear context files for coding agents and opencode-style workflows.
- no overwrite by default: preserve existing files and only create missing files.
- minimal first: start with the smallest useful structure and expand deliberately.

## License

Apache License 2.0. See [LICENSE](LICENSE).
