{"_id":"@edenkollcinaku/vibe-log","_rev":"4-3b80493594d3b7f2e29e0eb9ed996013","name":"@edenkollcinaku/vibe-log","dist-tags":{"latest":"1.0.4"},"versions":{"1.0.0":{"name":"@edenkollcinaku/vibe-log","version":"1.0.0","keywords":["ai","vibe-coding","agentic-workflow","gemini","ledger","documentation"],"author":{"name":"Eden Kollçinaku"},"license":"MIT","_id":"@edenkollcinaku/vibe-log@1.0.0","maintainers":[{"name":"edenkollcinaku","email":"kollcinakueden@gmail.com"}],"homepage":"https://github.com/edenkollcinaku/vibe-log#readme","bugs":{"url":"https://github.com/edenkollcinaku/vibe-log/issues"},"bin":{"vibe-log":"dist/cli/index.js"},"dist":{"shasum":"ceaa3591e06b2e97a60e2fc684761ffff2173cf9","tarball":"https://registry.npmjs.org/@edenkollcinaku/vibe-log/-/vibe-log-1.0.0.tgz","fileCount":32,"integrity":"sha512-dfnIOfn0XtKxGpKXeg2uEDyajqEVAyXAlDxBu0/w+8tWnl4tXThdJN9w8++5g17PUSUMTEzH20EeXd0YnlQDig==","signatures":[{"sig":"MEQCIETSbrx9ed97BBt02RFpzRvDl+/wRwqKJTSE8+IXBKf3AiAKfy7UdpeJ2J9mWzU8W7JONrDOyzM1XDGnkzq/ySPlqA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36130},"main":"dist/cli/index.js","types":"./dist/cli/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"2d6d042642aab2cbc380f014620358ac0dd58d36","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"edenkollcinaku","email":"kollcinakueden@gmail.com"},"repository":{"url":"git+https://github.com/edenkollcinaku/vibe-log.git","type":"git"},"_npmVersion":"10.8.2","description":"The Universal Reasoning Ledger for Agentic Development","directories":{},"_nodeVersion":"20.19.4","dependencies":{"dotenv":"^17.4.2","commander":"^14.0.3","@google/genai":"^1.49.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-node":"^10.9.2","typescript":"^6.0.2","@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/vibe-log_1.0.0_1776077831682_0.6833258997184437","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@edenkollcinaku/vibe-log","version":"1.0.1","keywords":["ai","vibe-coding","agentic-workflow","gemini","ledger","documentation"],"author":{"name":"Eden Kollçinaku"},"license":"MIT","_id":"@edenkollcinaku/vibe-log@1.0.1","maintainers":[{"name":"edenkollcinaku","email":"kollcinakueden@gmail.com"}],"homepage":"https://github.com/edenkollcinaku/vibe-log#readme","bugs":{"url":"https://github.com/edenkollcinaku/vibe-log/issues"},"bin":{"vibe-log":"dist/cli/index.js"},"dist":{"shasum":"e474684ecc676e595e47a5ed57f6a3fd98f2a1b5","tarball":"https://registry.npmjs.org/@edenkollcinaku/vibe-log/-/vibe-log-1.0.1.tgz","fileCount":32,"integrity":"sha512-l4Vn+pRlu/KuX308Sy2thWmZUmQSrF6DSo7Xk+4tCW7l90QOKe76yy2Q97TOXizTRcz0waY1E3bWZgN2U7a8oQ==","signatures":[{"sig":"MEUCIQDbSeTQqCHRm0WYvoPiOUtYBzQoqCH9/F9rdMTuHnYlcwIgLp5izoSkrAvsN6Nk/L3zatZU5ErRJ1nnbJWbwzP02p8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36330},"main":"dist/cli/index.js","types":"./dist/cli/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"7856f625ea18010c8a1690fcb1ffcc6ac0427a73","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"edenkollcinaku","email":"kollcinakueden@gmail.com"},"repository":{"url":"git+https://github.com/edenkollcinaku/vibe-log.git","type":"git"},"_npmVersion":"10.8.2","description":"The Universal Reasoning Ledger for Agentic Development","directories":{},"_nodeVersion":"20.19.4","dependencies":{"dotenv":"^17.4.2","commander":"^14.0.3","@google/genai":"^1.49.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-node":"^10.9.2","typescript":"^6.0.2","@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/vibe-log_1.0.1_1776081890644_0.3649513408903524","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@edenkollcinaku/vibe-log","version":"1.0.2","keywords":["ai","vibe-coding","agentic-workflow","gemini","ledger","documentation"],"author":{"name":"Eden Kollçinaku"},"license":"MIT","_id":"@edenkollcinaku/vibe-log@1.0.2","maintainers":[{"name":"edenkollcinaku","email":"kollcinakueden@gmail.com"}],"homepage":"https://github.com/edenkollcinaku/vibe-log#readme","bugs":{"url":"https://github.com/edenkollcinaku/vibe-log/issues"},"bin":{"vibe-log":"dist/cli/index.js"},"dist":{"shasum":"718e3813499a99f400327a7dd21de532ce064d9b","tarball":"https://registry.npmjs.org/@edenkollcinaku/vibe-log/-/vibe-log-1.0.2.tgz","fileCount":32,"integrity":"sha512-5DtUpcFb6a0UN21B+O+LnRBmXTuAm/QkJ2QbP5C8O4TeGDvnayQcNMWdUrz0wPJbLSsza5U8KEc6ivbg98IjNg==","signatures":[{"sig":"MEUCIC50mHehDPp9Ltlbgk6U1/q9F+T+1o9rIsDz6bMz5UiWAiEAu9xbOQlwgk/rsC+v5klPBNd53nKRl7sc6BZSK+Zf9q4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36331},"main":"dist/cli/index.js","types":"./dist/cli/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"cc700202dc59bb5a6e4d65b856af807af2a25948","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"edenkollcinaku","email":"kollcinakueden@gmail.com"},"repository":{"url":"git+https://github.com/edenkollcinaku/vibe-log.git","type":"git"},"_npmVersion":"10.8.2","description":"The Universal Reasoning Ledger for Agentic Development","directories":{},"_nodeVersion":"20.19.4","dependencies":{"dotenv":"^17.4.2","commander":"^14.0.3","@google/genai":"^1.49.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-node":"^10.9.2","typescript":"^6.0.2","@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/vibe-log_1.0.2_1776082815406_0.6614048109477015","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@edenkollcinaku/vibe-log","version":"1.0.4","description":"The Universal Reasoning Ledger for Agentic Development","main":"dist/cli/index.js","bin":{"vibe-log":"dist/cli/index.js"},"scripts":{"build":"tsc","prepublishOnly":"npm run build","test":"npm run build && node --test tests"},"repository":{"type":"git","url":"git+https://github.com/edenkollcinaku/vibe-log.git"},"keywords":["ai","vibe-coding","agentic-workflow","gemini","ledger","documentation"],"author":{"name":"Eden Kollçinaku"},"license":"MIT","bugs":{"url":"https://github.com/edenkollcinaku/vibe-log/issues"},"homepage":"https://github.com/edenkollcinaku/vibe-log#readme","dependencies":{"@google/genai":"^1.49.0","commander":"^14.0.3","dotenv":"^17.4.2"},"devDependencies":{"@types/node":"^25.6.0","ts-node":"^10.9.2","typescript":"^6.0.2"},"engines":{"node":">=20.0.0"},"_id":"@edenkollcinaku/vibe-log@1.0.4","gitHead":"c00e77292f98a766a2a4df3ed4d174790d47f171","types":"./dist/cli/index.d.ts","_nodeVersion":"20.19.4","_npmVersion":"10.8.2","dist":{"integrity":"sha512-GXxjimBZ8Ldl2BEV/zAzm6QENtqFOI/SWk5jUCdnderr3UAgrkC2QlAxLVL6tx/CCjCK2WtFOvfS6Eo0f/xVrw==","shasum":"657e05d90705462540434e63a39e072ec3415d77","tarball":"https://registry.npmjs.org/@edenkollcinaku/vibe-log/-/vibe-log-1.0.4.tgz","fileCount":40,"unpackedSize":57551,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD03ZNxtz3QlpmwjtTassWvt22sw5T0FWvetH9S4fseyQIgG61aqV0CTH5dKF7c2XZR7qYxsT7A0nNriNKagwSb7DY="}]},"_npmUser":{"name":"edenkollcinaku","email":"kollcinakueden@gmail.com"},"directories":{},"maintainers":[{"name":"edenkollcinaku","email":"kollcinakueden@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/vibe-log_1.0.4_1777887045708_0.6211932278321983"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-13T10:57:11.561Z","modified":"2026-05-04T09:30:45.960Z","1.0.0":"2026-04-13T10:57:11.824Z","1.0.1":"2026-04-13T12:04:50.792Z","1.0.2":"2026-04-13T12:20:15.549Z","1.0.4":"2026-05-04T09:30:45.849Z"},"bugs":{"url":"https://github.com/edenkollcinaku/vibe-log/issues"},"author":{"name":"Eden Kollçinaku"},"license":"MIT","homepage":"https://github.com/edenkollcinaku/vibe-log#readme","keywords":["ai","vibe-coding","agentic-workflow","gemini","ledger","documentation"],"repository":{"type":"git","url":"git+https://github.com/edenkollcinaku/vibe-log.git"},"description":"The Universal Reasoning Ledger for Agentic Development","maintainers":[{"name":"edenkollcinaku","email":"kollcinakueden@gmail.com"}],"readme":"# Vibe-Log\r\n\r\n[![npm version](https://img.shields.io/npm/v/@edenkollcinaku/vibe-log.svg)](https://www.npmjs.com/package/@edenkollcinaku/vibe-log)\r\n\r\n**The Universal Reasoning Ledger for Agentic Development.**\r\n\r\nVibe-Log is a CLI tool that captures architectural intent and reasoning from AI-assisted coding sessions, then writes a condensed context capsule to your project's `VIBE.md`.\r\n\r\n## The Problem: Vibe Amnesia\r\n\r\nWhen pair-programming with AI tools like Cursor, Claude Code, Codex, or Antigravity, decisions are made quickly. Trade-offs are accepted, local patterns emerge, and implementation details move fast.\r\n\r\nStart a new AI session later, and that reasoning is often gone. The next agent may know what changed, but not why it changed.\r\n\r\n## The Solution: A Reasoning Ledger\r\n\r\nVibe-Log acts as a small adapter around your workflow:\r\n\r\n- Reads recent context from providers such as Git diffs and Antigravity files.\r\n- Includes safe untracked text files under 64 KB while skipping binary files.\r\n- Uses Gemini to distill noisy logs and diffs into architectural intent.\r\n- Appends the result to `VIBE.md` so future agents can recover the project's reasoning.\r\n\r\n## Requirements\r\n\r\n- Node.js `>=20.0.0`\r\n- A Gemini API key\r\n- Git, when using the Git provider or hook installation\r\n\r\n## Installation\r\n\r\nUse with `npx`:\r\n\r\n```bash\r\nnpx @edenkollcinaku/vibe-log --help\r\n```\r\n\r\nOr install globally:\r\n\r\n```bash\r\nnpm install -g @edenkollcinaku/vibe-log\r\n```\r\n\r\n## Configuration\r\n\r\nStore your Gemini API key in the global Vibe-Log config outside the project repo:\r\n\r\n```bash\r\nnpx @edenkollcinaku/vibe-log configure --key \"YOUR_GOOGLE_AI_API_KEY\"\r\n```\r\n\r\nThe default model is `gemini-3-flash-preview`. You can set a different default model globally:\r\n\r\n```bash\r\nnpx @edenkollcinaku/vibe-log configure --model gemini-3-flash-preview\r\n```\r\n\r\nYou can also override the model for a single handoff:\r\n\r\n```bash\r\nnpx @edenkollcinaku/vibe-log handoff --model gemini-3.1-pro-preview\r\n```\r\n\r\n### Silent Mode\r\n\r\nUse the `--silent` flag to run a handoff without printing the context capsule to stdout. This is useful for automated scripts or hooks:\r\n\r\n```bash\r\nnpx @edenkollcinaku/vibe-log handoff --silent\r\n```\r\n\r\n## Initialize a Project\r\n\r\nInitialize Vibe-Log in a repository:\r\n\r\n```bash\r\nnpx @edenkollcinaku/vibe-log init\r\n```\r\n\r\nThis creates `VIBE.md` if needed and installs a Git pre-commit hook. The hook uses a managed block so Vibe-Log can update its own hook logic without removing existing user hook content.\r\n\r\nWhen the hook captures a handoff successfully, it runs:\r\n\r\n```bash\r\ngit add VIBE.md\r\n```\r\n\r\nThat stages the new ledger entry so it can be included in the same commit.\r\n\r\n## Manual Handoff\r\n\r\nRun a handoff manually at any time to capture the current state of your project:\r\n\r\n```bash\r\nnpx @edenkollcinaku/vibe-log handoff\r\n```\r\n\r\nThe command prints the generated context capsule and appends it to `VIBE.md`.\r\n\r\n## AI Agent Integration\r\n\r\nVibe-Log is designed to work seamlessly with various AI coding assistants by providing them with long-term memory through `VIBE.md`. To ensure your agent follows the Vibe-Log protocol, the following rule files are provided:\r\n\r\n- **`.antigravity_rules`**: For Antigravity users.\r\n- **`.cursorrules`**: For Cursor users.\r\n- **`AGENTS.md` / `CLAUDE.md`**: General purpose and Claude-specific guidelines.\r\n\r\nThese files instruct the agent to read `VIBE.md` at the start of a session and perform a `handoff` after completing significant tasks.\r\n\r\n## Architecture\r\n\r\nVibe-Log follows an adapter-oriented structure:\r\n\r\n- **CLI:** Handles `configure`, `init`, and `handoff` commands.\r\n- **Config:** Loads local `.env` values quietly and global config from `~/.vibe-log/config.json`.\r\n- **Distiller:** Calls Gemini and validates the returned context capsule before writing it.\r\n- **Ledger:** Creates and appends to `VIBE.md`.\r\n- **Providers:** Gather raw context. The Git provider captures recent commits, tracked diffs, and safe untracked text files. The Antigravity provider reads known `.antigravity/` artifacts.\r\n- **Hooks:** Installs an idempotent pre-commit managed block and preserves existing hook content.\r\n\r\n## Safety Notes\r\n\r\n- Do not commit API keys. Prefer `vibe-log configure`, which stores keys outside the repo.\r\n- Review `VIBE.md` before committing if your untracked files may contain sensitive context.\r\n- Large untracked files and binary files are summarized or skipped instead of sent to Gemini.\r\n\r\n## Development\r\n\r\n```bash\r\nnpm install\r\nnpm run build\r\nnpm test\r\n```\r\n\r\n## License\r\n\r\nDistributed under the MIT License. See `LICENSE` for more information.\r\n","readmeFilename":"README.md"}