{"id":51381011,"url":"https://github.com/viggomeesters/minimal-ai-vault-starter","last_synced_at":"2026-07-03T16:09:29.226Z","repository":{"id":368406901,"uuid":"1284973715","full_name":"viggomeesters/minimal-ai-vault-starter","owner":"viggomeesters","description":"Public-safe starter for a minimal AI-enabled Obsidian/JSONL vault","archived":false,"fork":false,"pushed_at":"2026-06-30T11:27:10.000Z","size":17,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-30T13:18:24.328Z","etag":null,"topics":["ai-vault","jsonl","obsidian","personal-knowledge-management","starter-kit"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/viggomeesters.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-06-30T11:11:27.000Z","updated_at":"2026-06-30T11:27:14.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/viggomeesters/minimal-ai-vault-starter","commit_stats":null,"previous_names":["viggomeesters/minimal-ai-vault-starter"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/viggomeesters/minimal-ai-vault-starter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/viggomeesters%2Fminimal-ai-vault-starter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/viggomeesters%2Fminimal-ai-vault-starter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/viggomeesters%2Fminimal-ai-vault-starter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/viggomeesters%2Fminimal-ai-vault-starter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/viggomeesters","download_url":"https://codeload.github.com/viggomeesters/minimal-ai-vault-starter/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/viggomeesters%2Fminimal-ai-vault-starter/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35092330,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-03T02:00:05.635Z","response_time":110,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-vault","jsonl","obsidian","personal-knowledge-management","starter-kit"],"created_at":"2026-07-03T16:09:28.617Z","updated_at":"2026-07-03T16:09:29.185Z","avatar_url":"https://github.com/viggomeesters.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Minimal AI Vault Starter\n\nA public-safe starter kit for a minimal AI-enabled Obsidian/JSONL vault.\n\nWrite only daily notes and inbox notes. Deterministic no-LLM automation turns raw bullets into structured JSONL records, AI daily summaries, open loops, entities, decisions, tasks, and searchable context bundles — while never touching your original human notes.\n\n![Minimal AI Vault Starter hero](assets/hero.svg)\n\n## Highlights\n\n- Human-owned `vault/daily/` and `vault/inbox/` notes are treated as read-only evidence.\n- Canonical structured data lives in `records/*.jsonl` with schemas in `schema/*.schema.json`.\n- `extract --dry-run` previews generated records as JSON before writing anything.\n- Generated Markdown views, AI daily notes, SQLite, and bundles are rebuildable projections.\n- Attachments are referenced by SHA256 metadata and deterministic storage paths.\n- The repository contains synthetic demo data only, so it is safe to study and fork publicly.\n\n## Installation\n\n```bash\npython3 -m venv .venv\n. .venv/bin/activate\npip install -e '.[dev]'\nmake check\n```\n\nIf your environment already has Python, pytest, and jsonschema available, you can run:\n\n```bash\nmake check\n```\n\n## Usage\n\nRun the pipeline manually:\n\n```bash\npython3 scripts/vaultctx.py validate\npython3 scripts/vaultctx.py scan-daily\npython3 scripts/vaultctx.py extract --dry-run\npython3 scripts/vaultctx.py extract\npython3 scripts/vaultctx.py render-views\npython3 scripts/vaultctx.py bundle --goal \"plan the week\"\npython3 scripts/vaultctx.py query \"weekly planning\"\npython3 scripts/vaultctx.py build-sqlite\n```\n\nHash a local attachment and get a record stub:\n\n```bash\npython3 scripts/vaultctx.py hash-attachment vault/attachments/objects/sha256/*/*/weekly-plan-sketch.txt\n```\n\n## Development\n\nPrimary validation command:\n\n```bash\nmake check\n```\n\n`make check` compiles Python, validates schemas and references, runs tests, scans human notes into raw events, extracts deterministic records, renders views, builds SQLite, creates a demo bundle, and validates again.\n\nUseful development targets are intentionally plain Python scripts under `scripts/`; there is no external service or LLM dependency for the starter workflow.\n\n## Mental model\n\n- `vault/daily/` and `vault/inbox/` are human-owned evidence.\n- `records/*.jsonl` plus `schema/*.schema.json` are the canonical structured data layer.\n- `views/`, `vault/ai-daily/`, `vault/generated/`, and `dist/` are generated/rebuildable.\n- `dist/vaultctx.sqlite` is a runtime projection, not source of truth.\n- `docs/*.json` are machine-readable contracts/docs; Markdown is kept short for public onboarding.\n- Attachments are referenced by SHA256 metadata and deterministic storage paths.\n\n## Attachment contract\n\nAttachment records include `filename`, `media_type`, `size_bytes`, `sha256`, `storage_path`, `source_id`, and `created_at`. Validation checks that each file exists and that size/SHA256 match.\n\nStorage path pattern:\n\n```text\nvault/attachments/objects/sha256/\u003cfirst-two-sha-chars\u003e/\u003csha256\u003e/\u003cfilename\u003e\n```\n\nFor real personal use, keep private or large attachments local and out of Git unless you intentionally want to share them.\n\n## Privacy and security\n\nThis repo uses synthetic data only: Alex Example, Sam Example, and Example AI Vault Starter. Do not commit real daily notes, exports, screenshots, local paths, Telegram ids, API keys, customer data, or private attachments to a public starter repo.\n\nSee [SECURITY.md](SECURITY.md) for vulnerability reporting and supported security expectations.\n\n## License\n\nMIT. See [LICENSE](LICENSE).\n\n## What this is not\n\nThis is not a full personal operating system, not a complete Obsidian replacement, and not a cloud memory service. It is a small starter kit showing safe boundaries: human notes as evidence, JSONL as structured truth, generated views as rebuildable UI.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fviggomeesters%2Fminimal-ai-vault-starter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fviggomeesters%2Fminimal-ai-vault-starter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fviggomeesters%2Fminimal-ai-vault-starter/lists"}