A tiny CLI initializer for vibe coding projects that generates .memory and .harness scaffolding.
Project description
vibefree 🚀
vibefree 是一个轻量级 vibe coding 项目初始化工具,用于生成 .memory 和 .harness 上下文结构。
它的目标是帮助开发者在使用 opencode / coding agent / AI coding workflow 时,快速建立项目记忆、开发规则、架构上下文和任务交接入口。
GitHub: https://github.com/lemonmindyes/vibefree
作者: lemonmindyes
✨ 功能特性
- 一键生成
.memory - 一键生成
.harness - 默认不覆盖已有文件
- 适合 opencode / coding agent 工作流
- 轻量、可读、可手动维护
- 支持当前目录初始化
- 支持创建新项目目录并初始化
📦 安装
从 PyPI 安装:
pip install vibefree
⚡ 使用
在当前目录初始化:
vibefree init
创建并初始化一个新项目目录:
vibefree init my-project
如果 my-project 不存在,vibefree 会创建它;如果已存在,则会在其中补齐缺失的上下文文件。
已有文件不会被覆盖,适合在项目演进过程中重复运行。
🧠 .memory
.memory 用于保存长期有效的项目上下文,让 coding agent 能够快速恢复项目状态。
README.md: memory 入口说明、读取顺序和文件职责rules.md: memory 读取、更新和写作规则context.md: 当前项目目标、状态、常用命令、关注点和约束decisions.md: 长期技术决策、项目约定和需要避免的事项sessions.md: 最近会话交接记录archive/: 已归档但仍需保留的旧上下文
🧭 .harness
.harness 用于保存 coding agent 的协作入口、架构说明、工作流和质量规则。
AGENTS.md: agent 开始工作时的推荐读取顺序ARCHITECTURE.md: 系统结构和架构决策记录WORKFLOW.md: 开发流程和 memory 使用方式QUALITY.md: 测试、质量和安全规则plans/: 可选的任务计划目录
🗂️ 生成结构
.memory/
├── README.md
├── rules.md
├── context.md
├── decisions.md
├── sessions.md
└── archive/
└── .gitkeep
.harness/
├── AGENTS.md
├── ARCHITECTURE.md
├── WORKFLOW.md
├── QUALITY.md
└── plans/
├── active/
│ └── .gitkeep
└── completed/
└── .gitkeep
🛠️ 本地开发
创建虚拟环境:
python -m venv venv
安装本地开发版本:
pip install -e ".[dev]"
运行测试:
pytest
构建发布包:
python -m build
✅ CI
项目使用 GitHub Actions 运行 CI。
- Pull Request 会自动运行测试和构建检查。
- push 到
main或master会自动运行测试和构建检查。 - CI 会执行:
pip install -e .pytestpython -m buildtwine check dist/*
🚢 Release
项目通过 GitHub Actions 和 PyPI Trusted Publishing 发布到正式 PyPI。
0.2.0 是一次 memory scaffolding redesign,重点更新生成的 .memory 结构,并保持项目轻量。
发布流程:
- 确认
pyproject.toml中的version已更新。 - 确认测试通过。
- 创建并推送 tag:
git tag v0.2.0
git push origin v0.2.0
推送匹配 v* 的 tag 后,GitHub Actions 会构建包并发布到正式 PyPI。
发布使用 PyPI Trusted Publishing / OIDC,不推荐在仓库或 GitHub Secrets 中保存 PyPI API Token。
🔒 安全提示
- 不要把 token、API key、password、secret 或私有凭据写入
.memory或.harness。 - 提交前检查上下文文件,避免包含本地绝对路径、私有账号或临时调试信息。
vibefree init默认不会覆盖已有文件,但仍建议在重要项目中配合 Git 使用。
📄 License
Apache License 2.0. See LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vibefree-0.2.0.tar.gz.
File metadata
- Download URL: vibefree-0.2.0.tar.gz
- Upload date:
- Size: 11.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ee65444af5a913684500bb791b19fea5747383a49bc7a65660611c16cbc14fdb
|
|
| MD5 |
284d8fcb23562147946e4a2865373151
|
|
| BLAKE2b-256 |
92960e995ac9800310bdab40f29b78749cb0fde97494a5f8ccb5b51a3cdfe587
|
Provenance
The following attestation bundles were made for vibefree-0.2.0.tar.gz:
Publisher:
publish.yml on lemonmindyes/vibefree
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vibefree-0.2.0.tar.gz -
Subject digest:
ee65444af5a913684500bb791b19fea5747383a49bc7a65660611c16cbc14fdb - Sigstore transparency entry: 1401737491
- Sigstore integration time:
-
Permalink:
lemonmindyes/vibefree@d97423be9575602941328c86ed3041549a6202af -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/lemonmindyes
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@d97423be9575602941328c86ed3041549a6202af -
Trigger Event:
push
-
Statement type:
File details
Details for the file vibefree-0.2.0-py3-none-any.whl.
File metadata
- Download URL: vibefree-0.2.0-py3-none-any.whl
- Upload date:
- Size: 11.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
32a62bac15b1beedef1d421899dff8f4c303048681f32d199ece70b8082b2cdb
|
|
| MD5 |
adf0176d226297da2b6fe8259007afa3
|
|
| BLAKE2b-256 |
78b4c6484aac3a84a20dc066219e9a07a448ebc41827fa0973447ae1452da68f
|
Provenance
The following attestation bundles were made for vibefree-0.2.0-py3-none-any.whl:
Publisher:
publish.yml on lemonmindyes/vibefree
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vibefree-0.2.0-py3-none-any.whl -
Subject digest:
32a62bac15b1beedef1d421899dff8f4c303048681f32d199ece70b8082b2cdb - Sigstore transparency entry: 1401737601
- Sigstore integration time:
-
Permalink:
lemonmindyes/vibefree@d97423be9575602941328c86ed3041549a6202af -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/lemonmindyes
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@d97423be9575602941328c86ed3041549a6202af -
Trigger Event:
push
-
Statement type: